diff --git a/src/main/java/net/ccbluex/liquidbounce/event/Events.kt b/src/main/java/net/ccbluex/liquidbounce/event/Events.kt index ad2d590..658939b 100644 --- a/src/main/java/net/ccbluex/liquidbounce/event/Events.kt +++ b/src/main/java/net/ccbluex/liquidbounce/event/Events.kt @@ -201,6 +201,6 @@ class ClickWindowEvent(val windowId: Int, val slotId: Int, val mouseButtonClicke object ClickUpdateEvent : CancellableEvent() { fun reInit() { - isCancelled = false; + isCancelled = false } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/client/HUDModule.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/client/HUDModule.kt index 9470899..3488356 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/client/HUDModule.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/client/HUDModule.kt @@ -87,12 +87,12 @@ object HUDModule : Module() { else -> {} } if (eatbar.get()) { - if (mc.thePlayer.heldItem.item != null && (mc.thePlayer.heldItem?.item is ItemFood || mc.thePlayer.heldItem - ?.item is ItemPotion) + val heldItem = mc.thePlayer.heldItem ?: return + if (heldItem.item != null && (heldItem.item is ItemFood || heldItem.item is ItemPotion) ) { - val scaledResolution = StaticStorage.scaledResolution + val scaledResolution = StaticStorage.scaledResolution ?: return val math: Double - val height: Double = scaledResolution?.scaledHeight!!.toDouble() + val height: Double = scaledResolution.scaledHeight.toDouble() val width: Double = scaledResolution.scaledWidth.toDouble() if (!(tick <= 0)) { idk = (1f - (tick / 32)) @@ -203,7 +203,8 @@ object HUDModule : Module() { fun onUpdate(event: UpdateEvent) { FDPClient.hud.update() if (eatbar.get()) { - if (mc.thePlayer.heldItem.item is ItemFood || mc.thePlayer.heldItem.item is ItemPotion + val helditem = mc.thePlayer.heldItem ?: return + if (helditem.item is ItemFood || helditem.item is ItemPotion ) { if (tick < 0) { tick = 0.0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/BackTrack.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/BackTrack.kt index f1ee4b7..d99105a 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/BackTrack.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/BackTrack.kt @@ -133,8 +133,8 @@ class BackTrack : Module() { private var attacked : Entity? = null private var smoothPointer = System.nanoTime() - var needFreeze = false - var reversing = false + private var needFreeze = false + private var reversing = false // @EventTarget // for safety, see in met.minecraft.network.NetworkManager @@ -558,7 +558,7 @@ class BackTrack : Module() { else releasePacket(bestTimeStamp) } - fun stopReverse() { + private fun stopReverse() { if (storageSendPackets.isEmpty()) return while (storageSendPackets.isNotEmpty()) { storageSendPackets.removeAt(0).let { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Criticals.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Criticals.kt index 49bc7b8..212c239 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Criticals.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Criticals.kt @@ -139,7 +139,7 @@ object Criticals : Module() { */ } - if (packet is C03PacketPlayer && (MovementUtils.isMoving() || syncTimer.hasTimePassed(1000L) || msTimer.hasTimePassed( + if (packet is C03PacketPlayer && (MovementUtils.isMoving || syncTimer.hasTimePassed(1000L) || msTimer.hasTimePassed( ((delayValue.get() / 5) + 75).toLong() )) ) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/FakeLag.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/FakeLag.kt index 273a07c..f7657b6 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/FakeLag.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/FakeLag.kt @@ -1,3 +1,8 @@ +/* + * LiquidBounce Hacked Client + * A free open source mixin-based injection hacked client for Minecraft using Minecraft Forge. + * https://github.com/CCBlueX/LiquidBounce/ + */ package net.ccbluex.liquidbounce.features.module.modules.combat import kevin.utils.component1 @@ -10,19 +15,19 @@ import net.ccbluex.liquidbounce.features.module.Module import net.ccbluex.liquidbounce.features.module.ModuleCategory import net.ccbluex.liquidbounce.features.module.ModuleInfo import net.ccbluex.liquidbounce.features.module.modules.player.Blink +import net.ccbluex.liquidbounce.features.module.modules.world.scaffold.Scaffold +import net.ccbluex.liquidbounce.features.module.modules.world.scaffold.Scaffold2 import net.ccbluex.liquidbounce.features.value.BoolValue import net.ccbluex.liquidbounce.features.value.FloatValue import net.ccbluex.liquidbounce.features.value.IntegerValue import net.ccbluex.liquidbounce.injection.implementations.IMixinEntity -import net.ccbluex.liquidbounce.utils.PacketUtils +import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket -import net.ccbluex.liquidbounce.utils.Rotation -import net.ccbluex.liquidbounce.utils.RotationUtils -import net.ccbluex.liquidbounce.utils.extensions.getNearestPointBB -import net.ccbluex.liquidbounce.utils.extensions.hitBox -import net.ccbluex.liquidbounce.utils.render.ColorUtils +import net.ccbluex.liquidbounce.utils.extensions.* +import net.ccbluex.liquidbounce.utils.render.ColorUtils.rainbow import net.ccbluex.liquidbounce.utils.render.RenderUtils.glColor import net.ccbluex.liquidbounce.utils.timer.MSTimer +import net.minecraft.client.gui.inventory.GuiContainer import net.minecraft.entity.player.EntityPlayer import net.minecraft.network.Packet import net.minecraft.network.handshake.client.C00Handshake @@ -37,14 +42,30 @@ import net.minecraft.util.Vec3 import org.lwjgl.opengl.GL11.* import java.awt.Color -@ModuleInfo("FakeLag", category = ModuleCategory.COMBAT) +@ModuleInfo("FakeLag",category = ModuleCategory.COMBAT) object FakeLag : Module() { + private val delay = IntegerValue("Delay", 550, 0,1000) private val recoilTime = IntegerValue("RecoilTime", 750, 0,2000) - private val distanceToPlayers = FloatValue("AllowedDistanceToPlayers", 3.5f, 0.0f,6.0f) + + private val maxAllowedDistToEnemy: FloatValue = object : FloatValue("MaxAllowedDistToEnemy", 3.5f, 0f,6f) { + override fun onChanged(oldValue: Float, newValue: Float) { + val i = minAllowedDistToEnemy.get() + if (i > newValue) set(i) + } + } + private val minAllowedDistToEnemy: FloatValue = object : FloatValue("MinAllowedDistToEnemy", 1.5f, 0f,6f) { + override fun onChanged(oldValue: Float, newValue: Float) { + val i = maxAllowedDistToEnemy.get() + if (i < newValue) set(i) + } + } private val blinkOnAction = BoolValue("BlinkOnAction", true) + private val pauseOnNoMove = BoolValue("PauseOnNoMove", true) + private val pauseOnChest = BoolValue("PauseOnChest", false) + private val line = BoolValue("Line", true) private val rainbow = BoolValue("Rainbow", false).displayable { line.get() } private val red = IntegerValue("R", @@ -63,7 +84,7 @@ object FakeLag : Module() { private val packetQueue = LinkedHashMap, Long>() private val positions = LinkedHashMap() private val resetTimer = MSTimer() - private var wasNearPlayer = false + private var wasNearEnemy = false private var ignoreWholeTick = false override fun onDisable() { @@ -87,12 +108,17 @@ object FakeLag : Module() { if (event.isCancelled) return - if (distanceToPlayers.get() > 0.0 && wasNearPlayer) + if (maxAllowedDistToEnemy.get() > 0.0 && wasNearEnemy) return if (ignoreWholeTick) return + if (pauseOnNoMove.get() && !isMoving) { + blink() + return + } + // Flush on damaged received if (player.health < player.maxHealth) { if (player.hurtTime != 0) { @@ -101,12 +127,23 @@ object FakeLag : Module() { } } + // Flush on scaffold/tower usage + if (FDPClient.moduleManager[Scaffold::class.java]!!.state || FDPClient.moduleManager[Scaffold2::class.java]!!.state) { + blink() + return + } + // Flush on attack/interact if (blinkOnAction.get() && packet is C02PacketUseEntity) { blink() return } + if (pauseOnChest.get() && mc.currentScreen is GuiContainer) { + blink() + return + } + when (packet) { is C00Handshake, is C00PacketServerQuery, is C01PacketPing, is C01PacketChatMessage, is S01PacketPong -> return @@ -148,9 +185,6 @@ object FakeLag : Module() { synchronized(positions) { positions[packetPos] = System.currentTimeMillis() } - if (packet.rotating) { - RotationUtils.serverRotation = Rotation(packet.yaw, packet.pitch) - } } synchronized(packetQueue) { packetQueue[packet] = System.currentTimeMillis() @@ -165,16 +199,16 @@ object FakeLag : Module() { blink(false) } - private fun getTruePositionEyes(player: EntityPlayer): Vec3 { - val mixinPlayer = player as? IMixinEntity - return Vec3(mixinPlayer!!.trueX, mixinPlayer.trueY + player.getEyeHeight().toDouble(), mixinPlayer.trueZ) + private fun getTruePositionEyes(player: EntityPlayer): Vec3? { + val mixinPlayer = player as? IMixinEntity ?: return null + return Vec3(mixinPlayer.trueX, mixinPlayer.trueY + player.getEyeHeight().toDouble(), mixinPlayer.trueZ) } @EventTarget fun onGameLoop(event: GameLoopEvent) { val player = mc.thePlayer ?: return - if (distanceToPlayers.get() > 0) { + if (maxAllowedDistToEnemy.get() > 0) { val playerPos = player.positionVector val serverPos = positions.keys.firstOrNull() ?: playerPos @@ -183,15 +217,15 @@ object FakeLag : Module() { val (dx, dy, dz) = serverPos - playerPos val playerBox = player.hitBox.offset(dx, dy, dz) - wasNearPlayer = false + wasNearEnemy = false for (otherPlayer in otherPlayers) { val entityMixin = otherPlayer as? IMixinEntity if (entityMixin != null) { - val eyes = getTruePositionEyes(otherPlayer) - if (eyes.distanceTo(getNearestPointBB(eyes, playerBox)) <= distanceToPlayers.get().toDouble()) { + val eyes = getTruePositionEyes(otherPlayer) ?: return + if (eyes.distanceTo(getNearestPointBB(eyes, playerBox)) in minAllowedDistToEnemy.get()..maxAllowedDistToEnemy.get()) { blink() - wasNearPlayer = true + wasNearEnemy = true return } } @@ -214,7 +248,7 @@ object FakeLag : Module() { fun onRender3D(event: Render3DEvent) { if (!line.get()) return - val color = if (rainbow.get()) ColorUtils.rainbow() else Color(red.get(), green.get(), blue.get()) + val color = if (rainbow.get()) rainbow() else Color(red.get(), green.get(), blue.get()) if (FDPClient.moduleManager[Blink::class.java]!!.state) return @@ -278,4 +312,5 @@ object FakeLag : Module() { positions.entries.removeAll { (_, timestamp) -> timestamp <= System.currentTimeMillis() - delay.get() } } } -} \ No newline at end of file + +} diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/KillAura.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/KillAura.kt index 4a98df3..a7281d9 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/KillAura.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/KillAura.kt @@ -94,7 +94,7 @@ object KillAura : Module() { private val attackTimingValue = ListValue("AttackTiming", arrayOf("All", "Pre", "Post"), "All").displayable { attackDisplay.get() } - val sprintmode = ListValue("SprintMode", arrayOf("KeepSprint","Ground","StopSprint","StopMotion","AttackSlow"),"KeepSprint").displayable { attackDisplay.get() } + val sprintmode = ListValue("SprintMode", arrayOf("KeepSprint","Ground","StopSprint","StopMotion"),"KeepSprint").displayable { attackDisplay.get() } private val hitselectValue = BoolValue("HitSelect", false).displayable { attackDisplay.get() } private val hitselectRangeValue = FloatValue( @@ -654,6 +654,7 @@ object KillAura : Module() { mc.netHandler.addToSendQueue(C09PacketHeldItemChange(curritem)) } + if (reachMode.equals("Air")) { if (mc.thePlayer.onGround) { rangeValue.set(groundRangeValue.get()) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/LagRange.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/LagRange.kt index a28bdda..6c5b0a0 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/LagRange.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/LagRange.kt @@ -47,7 +47,7 @@ class LagRange : Module() { private fun shouldStart(): Boolean { if (mc.thePlayer == null || mc.theWorld == null) return false if (onGround.get() && !mc.thePlayer.onGround) return false - if (!MovementUtils.isMoving()) return false + if (!MovementUtils.isMoving) return false if (fov.get() == 0) return false if (System.currentTimeMillis() - lastLagTime < delay.get()) return false diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/SuperKnockback.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/SuperKnockback.kt index 92a3294..9acbe86 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/SuperKnockback.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/SuperKnockback.kt @@ -52,7 +52,7 @@ class SuperKnockback : Module() { val angleDifferenceToPlayer = getAngleDifference(rotationToPlayer, target.rotationYaw) if (angleDifferenceToPlayer > minEnemyRotDiffToIgnore.get() && !target.hitBox.isVecInside(player.eyes)) return if (event.targetEntity.hurtTime > hurtTimeValue.get() || !timer.hasTimePassed(delayValue.get().toLong()) || - (!MovementUtils.isMoving() && onlyMoveValue.get()) || (!mc.thePlayer.onGround && onlyGroundValue.get())) { + (!MovementUtils.isMoving && onlyMoveValue.get()) || (!mc.thePlayer.onGround && onlyGroundValue.get())) { return } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Velocity.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Velocity.kt index 34be965..a85e220 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Velocity.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/Velocity.kt @@ -281,7 +281,7 @@ object Velocity : Module() { private var intaveDamageTick = 0 @EventTarget(priority = -1) - private fun onPacket(event: PacketEvent) { + fun onPacket(event: PacketEvent) { val packet = event.packet val thePlayer = mc.thePlayer ?: return diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/criticals/normal/FakeCollideCritical.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/criticals/normal/FakeCollideCritical.kt index 407625d..e2b92e2 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/criticals/normal/FakeCollideCritical.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/combat/criticals/normal/FakeCollideCritical.kt @@ -9,7 +9,7 @@ class FakeCollideCritical : CriticalMode("FakeCollide") { override fun onAttack(event: AttackEvent) { val motionX: Double val motionZ: Double - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { motionX = mc.thePlayer.motionX motionZ = mc.thePlayer.motionZ } else { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/matrix/MatrixDisabler.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/matrix/MatrixDisabler.kt index fb98f7c..d51eb5e 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/matrix/MatrixDisabler.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/matrix/MatrixDisabler.kt @@ -53,7 +53,7 @@ class MatrixDisabler : DisablerMode("Matrix") { @Override fun onPostMotion(event: PostMotionEvent) { - if (!matrixMoveOnly.get() || isMoving()) + if (!matrixMoveOnly.get() || isMoving) if (matrixNoCheck.get() || FDPClient.moduleManager[Flight::class.java]!!.state || FDPClient.moduleManager[Speed::class.java]!!.state) { var changed = false if (matrixHotbarChange.get()) for (i in 0..8) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/other/BasicDisabler.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/other/BasicDisabler.kt index f4e9bd2..3a19bfa 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/other/BasicDisabler.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/other/BasicDisabler.kt @@ -67,7 +67,7 @@ class BasicDisabler : DisablerMode("Basic") { disabler.debugMessage("Cancel C13-Abilities") } if (packet is C03PacketPlayer && !(packet is C04PacketPlayerPosition || packet is C05PacketPlayerLook || packet is C06PacketPlayerPosLook) && cancelC03Value.get()) { - if (c03NoMoveValue.get() && MovementUtils.isMoving()) + if (c03NoMoveValue.get() && MovementUtils.isMoving) return event.cancelEvent() disabler.debugMessage("Cancel C03-Flying") diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/vulcan/VulcanScaffoldDisabler.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/vulcan/VulcanScaffoldDisabler.kt index f4ba61e..402510a 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/vulcan/VulcanScaffoldDisabler.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/exploit/disablers/vulcan/VulcanScaffoldDisabler.kt @@ -10,7 +10,7 @@ class VulcanScaffold : DisablerMode("VulcanScaffold") { override fun onUpdate(event: UpdateEvent) { mc.netHandler.addToSendQueue(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.START_SPRINTING)) mc.netHandler.addToSendQueue(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.STOP_SPRINTING)) - if (MovementUtils.isMoving() && mc.thePlayer.ticksExisted % 10 == 0 && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.ticksExisted % 10 == 0 && mc.thePlayer.onGround) { mc.netHandler.addToSendQueue(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.START_SNEAKING)) mc.netHandler.addToSendQueue(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.STOP_SNEAKING)) } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/InvMove.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/InvMove.kt index 065cf8b..6453389 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/InvMove.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/InvMove.kt @@ -89,7 +89,7 @@ object InvMove : Module() { @EventTarget fun onClick(event: ClickWindowEvent) { - if (noMoveClicksValue.get() && MovementUtils.isMoving()) { + if (noMoveClicksValue.get() && MovementUtils.isMoving) { event.cancelEvent() } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/LongJump.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/LongJump.kt index c9af760..fe2f36f 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/LongJump.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/LongJump.kt @@ -78,7 +78,7 @@ object LongJump : Module() { } } mode.onUpdate(event) - if (autoJumpValue.get() && mc.thePlayer.onGround && MovementUtils.isMoving() && airTick < 2) { + if (autoJumpValue.get() && mc.thePlayer.onGround && MovementUtils.isMoving && airTick < 2) { mode.onAttemptJump() } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/NoSlow.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/NoSlow.kt index 8bfdd35..f55efc1 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/NoSlow.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/NoSlow.kt @@ -312,7 +312,7 @@ object NoSlow : Module() { if (mc.thePlayer == null || mc.theWorld == null) return - if ((!MovementUtils.isMoving() && onlyMove.get()) || (onlyGround.get() && !mc.thePlayer.onGround)) { + if ((!MovementUtils.isMoving && onlyMove.get()) || (onlyGround.get() && !mc.thePlayer.onGround)) { return } @@ -745,7 +745,7 @@ object NoSlow : Module() { } "custom" -> { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { MovementUtils.strafe(teleportCustomSpeedValue.get()) } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Parkour.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Parkour.kt index 2602f32..9b46ddd 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Parkour.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Parkour.kt @@ -17,7 +17,7 @@ object Parkour : Module() { @EventTarget fun onUpdate(event: UpdateEvent) { - if (MovementUtils.isMoving() && mc.thePlayer.onGround && !mc.thePlayer.isSneaking && !mc.gameSettings.keyBindSneak.isKeyDown && !mc.gameSettings.keyBindJump.isKeyDown && + if (MovementUtils.isMoving && mc.thePlayer.onGround && !mc.thePlayer.isSneaking && !mc.gameSettings.keyBindSneak.isKeyDown && !mc.gameSettings.keyBindJump.isKeyDown && mc.theWorld.getCollidingBoundingBoxes(mc.thePlayer, mc.thePlayer.entityBoundingBox .offset(0.0, -0.5, 0.0).expand(-0.001, 0.0, -0.001)).isEmpty()) { mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Speed.kt index abd0c14..dfaf956 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Speed.kt @@ -45,14 +45,14 @@ object Speed : Module() { @EventTarget fun onUpdate(event: UpdateEvent) { if (mc.thePlayer.isSneaking || (mc.thePlayer.isInWater && noWater.get())) return - if (MovementUtils.isMoving() && forceSprint.get()) mc.thePlayer.isSprinting = true + if (MovementUtils.isMoving && forceSprint.get()) mc.thePlayer.isSprinting = true mode.onUpdate() } @EventTarget fun onMotion(event: MotionEvent) { - if (MovementUtils.isMoving() && forceSprint.get()) { + if (MovementUtils.isMoving && forceSprint.get()) { mc.thePlayer.isSprinting = true } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Spider.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Spider.kt index 6ab7a4f..58c4631 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Spider.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/Spider.kt @@ -38,8 +38,8 @@ object Spider : Module() { mc.timer.timerSpeed = 1.0f } - if (!mc.thePlayer.isCollidedHorizontally || !MovementUtils.isMoving()) { - if (!collideBlockIntersects(mc.thePlayer.entityBoundingBox) { block: Block? -> block !is BlockAir } || !MovementUtils.isMoving()) { + if (!mc.thePlayer.isCollidedHorizontally || !MovementUtils.isMoving) { + if (!collideBlockIntersects(mc.thePlayer.entityBoundingBox) { block: Block? -> block !is BlockAir } || !MovementUtils.isMoving) { ticks = 0 return } @@ -159,7 +159,7 @@ object Spider : Module() { 0.0, 0.0, 0.0) } - if (!mc.thePlayer.isCollidedHorizontally || !MovementUtils.isMoving()) { + if (!mc.thePlayer.isCollidedHorizontally || !MovementUtils.isMoving) { return } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/buzz/BuzzFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/buzz/BuzzFly.kt index a227045..15f545c 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/buzz/BuzzFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/buzz/BuzzFly.kt @@ -71,7 +71,7 @@ class BuzzFly : FlyMode("Buzz") { fly.antiDesync = true MovementUtils.strafe((0.96 + Math.random() / 50).toFloat()) mc.thePlayer.motionY = 0.0 - if(!MovementUtils.isMoving()) { + if(!MovementUtils.isMoving) { MovementUtils.resetMotion(false) } }else if (started) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/GodseyeFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/GodseyeFly.kt index 78facf0..9f83351 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/GodseyeFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/GodseyeFly.kt @@ -39,10 +39,10 @@ class GodseyeFly : FlyMode("Godseye") { } else { mc.thePlayer.motionY = 0.0 } - if(!MovementUtils.isMoving()) { + if(!MovementUtils.isMoving) { MovementUtils.resetMotion(false) } - if(timer.hasTimePassed((150 + Math.random() * 50).toLong()) && MovementUtils.isMoving()) { + if(timer.hasTimePassed((150 + Math.random() * 50).toLong()) && MovementUtils.isMoving) { timer.reset() PacketUtils.sendPacketNoEvent(C04PacketPlayerPosition(mc.thePlayer.posX , mc.thePlayer.posY , mc.thePlayer.posZ , true)) } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/MinemoraFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/MinemoraFly.kt index 4998865..9926817 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/MinemoraFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/other/MinemoraFly.kt @@ -82,7 +82,7 @@ class MinemoraFly : FlyMode("Minemora") { mc.netHandler.addToSendQueue(C04PacketPlayerPosition(mc.thePlayer.posX, mc.thePlayer.posY, mc.thePlayer.posZ, true)) mc.thePlayer.jump() } else { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { MovementUtils.strafe(1.7f) } else { MovementUtils.resetMotion(false) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusCustomFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusCustomFly.kt index d0bdcc6..9574496 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusCustomFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusCustomFly.kt @@ -28,7 +28,7 @@ class VerusCustomFly : FlyMode("VerusCustom") { } override fun onMove(event: MoveEvent) { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { MovementUtils.strafe(groundSpeedValue.get()) waitTicks++ diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusJumpFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusJumpFly.kt index df90f86..c3ab464 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusJumpFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/verus/VerusJumpFly.kt @@ -56,7 +56,7 @@ class VerusJumpFly : FlyMode("VerusJump") { } } else { mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() MovementUtils.strafe(0.48F) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/vulcan/VulcanGhostFly.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/vulcan/VulcanGhostFly.kt index dc644db..aa7d1a0 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/vulcan/VulcanGhostFly.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/flys/vulcan/VulcanGhostFly.kt @@ -58,7 +58,7 @@ class VulcanGhostFly : FlyMode("VulcanGhost") { mc.thePlayer.setPosition(mc.thePlayer.posX, mc.thePlayer.posY+0.5, mc.thePlayer.posZ) modifyTicks = 0 } - if(!MovementUtils.isMoving() && ticks == 1 && (GameSettings.isKeyDown(mc.gameSettings.keyBindSneak) || GameSettings.isKeyDown(mc.gameSettings.keyBindJump)) && modifyTicks>=5) { + if(!MovementUtils.isMoving && ticks == 1 && (GameSettings.isKeyDown(mc.gameSettings.keyBindSneak) || GameSettings.isKeyDown(mc.gameSettings.keyBindJump)) && modifyTicks>=5) { val playerYaw = mc.thePlayer.rotationYaw * Math.PI / 180 mc.thePlayer.setPosition(mc.thePlayer.posX + 0.05 * -sin(playerYaw) , mc.thePlayer.posY diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/jesus/other/Horizon146Jesus.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/jesus/other/Horizon146Jesus.kt index 31d5f0b..cd8fbd9 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/jesus/other/Horizon146Jesus.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/jesus/other/Horizon146Jesus.kt @@ -10,7 +10,7 @@ class Horizon146Jesus : JesusMode("Horizon1.4.6") { mc.gameSettings.keyBindJump.pressed = mc.thePlayer.isInWater if (mc.thePlayer.isInWater) { MovementUtils.strafe() - if (MovementUtils.isMoving() && !mc.thePlayer.onGround) { + if (MovementUtils.isMoving && !mc.thePlayer.onGround) { mc.thePlayer.motionY += 0.13 } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/longjumps/other/VerusDamageLongjump.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/longjumps/other/VerusDamageLongjump.kt index 66b7aec..9430b05 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/longjumps/other/VerusDamageLongjump.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/longjumps/other/VerusDamageLongjump.kt @@ -16,7 +16,7 @@ class VerusDamageLongjump : LongJumpMode("VerusDamage") { override fun onEnable() { val player = mc.thePlayer ?: return - if (!MovementUtils.isMoving()) { + if (!MovementUtils.isMoving) { Chat.alert("Pls move while toggling LongJump. Using AutoJump option is recommended.") return } @@ -53,7 +53,7 @@ class VerusDamageLongjump : LongJumpMode("VerusDamage") { /** * You can long jump up to 13-14+ blocks */ - if (damaged && MovementUtils.isMoving()) { + if (damaged && MovementUtils.isMoving) { player.jumpMovementFactor = 0.15f player.motionY += 0.015f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/nowebs/intave/Intave.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/nowebs/intave/Intave.kt index 21e9d8f..8707557 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/nowebs/intave/Intave.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/nowebs/intave/Intave.kt @@ -9,7 +9,7 @@ class Intave : NoWebMode("Intave") { @EventTarget override fun onUpdate() { val thePlayer = mc.thePlayer ?: return - if (MovementUtils.isMoving() && thePlayer.moveStrafing == 0.0f) { + if (MovementUtils.isMoving && thePlayer.moveStrafing == 0.0f) { if (thePlayer.onGround) { if (mc.thePlayer.ticksExisted % 3 == 0) { strafe(0.734f) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACBHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACBHopSpeed.kt index 98a30de..2d12533 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACBHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACBHopSpeed.kt @@ -28,7 +28,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { when (bypassMode.get().lowercase()) { "aac" -> { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.timer.timerSpeed = 1.08f if (mc.thePlayer.onGround) { mc.thePlayer.motionY = 0.399 @@ -49,7 +49,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { } "aac2" -> { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() mc.thePlayer.motionX *= 1.02 @@ -65,7 +65,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { } } "aac4" -> { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (legitHop) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() @@ -89,7 +89,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { "aac6" -> { mc.timer.timerSpeed = 1f - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { if (legitHop) { mc.thePlayer.motionY = 0.4 @@ -129,7 +129,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { "lowhop2" -> { mc.timer.timerSpeed = 1f - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.timer.timerSpeed = 1.09f if (mc.thePlayer.onGround) { if (legitHop) { @@ -147,7 +147,7 @@ class AACBHopSpeed : SpeedMode("AACBHop") { } } "lowhop3" -> { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.hurtTime <= 0) { if (mc.thePlayer.onGround) { waitForGround = false diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACGroundSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACGroundSpeed.kt index c559eda..4885802 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACGroundSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACGroundSpeed.kt @@ -17,7 +17,7 @@ class AACGroundSpeed : SpeedMode("AACGround") { private val extraValue = BoolValue("${valuePrefix}ExtraPacket", true) override fun onUpdate() { - if (!MovementUtils.isMoving() || !mc.thePlayer.onGround) return + if (!MovementUtils.isMoving || !mc.thePlayer.onGround) return mc.timer.timerSpeed = timerValue.get() MovementUtils.strafe(speedValue.get()) if (extraValue.get()) mc.netHandler.addToSendQueue(C04PacketPlayerPosition(mc.thePlayer.posX, mc.thePlayer.posY, mc.thePlayer.posZ, true)) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop3313Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop3313Speed.kt index cfe3999..bf0c55a 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop3313Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop3313Speed.kt @@ -16,7 +16,7 @@ import net.minecraft.util.MathHelper class AACHop3313Speed : SpeedMode("AACHop3.3.13") { override fun onUpdate() { - if (!MovementUtils.isMoving() || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isOnLadder || mc.thePlayer.isRiding || mc.thePlayer.hurtTime > 0) return + if (!MovementUtils.isMoving || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isOnLadder || mc.thePlayer.isRiding || mc.thePlayer.hurtTime > 0) return when { (mc.thePlayer.onGround && mc.thePlayer.isCollidedVertically) -> { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop350Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop350Speed.kt index cc2dc56..31898c5 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop350Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACHop350Speed.kt @@ -12,7 +12,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class AACHop350Speed : SpeedMode("AACHop3.5.0") { override fun onMotion(event: MotionEvent) { - if (event.eventState === EventState.POST && MovementUtils.isMoving() && !mc.thePlayer.isInWater && !mc.thePlayer.isInLava) { + if (event.eventState === EventState.POST && MovementUtils.isMoving && !mc.thePlayer.isInWater && !mc.thePlayer.isInLava) { mc.thePlayer.jumpMovementFactor += 0.00208f if (mc.thePlayer.fallDistance <= 1f) { if (mc.thePlayer.onGround) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACPortSpeed.kt index 61e18e1..81cc048 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACPortSpeed.kt @@ -18,7 +18,7 @@ class AACPortSpeed : SpeedMode("AACPort") { private val length = FloatValue("${valuePrefix}Length", 1F, 1F, 20F) override fun onUpdate() { - if (!MovementUtils.isMoving()) return + if (!MovementUtils.isMoving) return val f = mc.thePlayer.rotationYaw * 0.017453292f var d = 0.2 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPort2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPort2Speed.kt index 3817df7..aa5dab4 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPort2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPort2Speed.kt @@ -10,7 +10,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class AACYPort2Speed : SpeedMode("AACYPort2") { override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.thePlayer.cameraPitch = 0f if (mc.thePlayer.onGround) { mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPortSpeed.kt index 8eb0eb8..acafb3c 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/aac/AACYPortSpeed.kt @@ -10,7 +10,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class AACYPortSpeed : SpeedMode("AACYPort") { override fun onPreMotion() { - if (MovementUtils.isMoving() && !mc.thePlayer.isSneaking) { + if (MovementUtils.isMoving && !mc.thePlayer.isSneaking) { mc.thePlayer.cameraPitch = 0f if (mc.thePlayer.onGround) { mc.thePlayer.motionY = 0.3425 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveHopSpeed.kt index f2bc9a0..4113749 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveHopSpeed.kt @@ -10,7 +10,7 @@ class IntaveHopSpeed : SpeedMode("IntaveHop") { override fun onUpdate() { mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.gameSettings.keyBindJump.pressed = false mc.timer.timerSpeed = 1.0f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveSpeed.kt index 7a735f2..f842a38 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/intave/IntaveSpeed.kt @@ -7,7 +7,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class IntaveSpeed : SpeedMode("Intave") { override fun onUpdate(){ - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/kauri/KauriLowHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/kauri/KauriLowHopSpeed.kt index b759a31..bda3c42 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/kauri/KauriLowHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/kauri/KauriLowHopSpeed.kt @@ -13,7 +13,7 @@ class KauriLowHopSpeed : SpeedMode("KauriLowHop") { mc.thePlayer.motionY = 0.00 } mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() mc.thePlayer.motionY = 0.3001145141919810 @@ -23,7 +23,7 @@ class KauriLowHopSpeed : SpeedMode("KauriLowHop") { MovementUtils.strafe(0.48f) } } - if (!MovementUtils.isMoving()) { + if (!MovementUtils.isMoving) { mc.thePlayer.motionX = 0.0 mc.thePlayer.motionZ = 0.0 } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix661Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix661Speed.kt index ed42d9e..9e67445 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix661Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix661Speed.kt @@ -37,14 +37,14 @@ class Matrix661Speed : SpeedMode("Matrix6.6.1") { } else { timer(0.95f) } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false timer(1.03f) mc.thePlayer.jump() if (mc.thePlayer.movementInput.moveStrafe <= 0.01 && mc.thePlayer.movementInput.moveStrafe >= -0.01) { MovementUtils.strafe((MovementUtils.getSpeed() * 1.0071).toFloat()) } - } else if (!MovementUtils.isMoving()) { + } else if (!MovementUtils.isMoving) { timer(1.0f) } if (MovementUtils.getSpeed() < 0.22) @@ -68,14 +68,14 @@ class Matrix661Speed : SpeedMode("Matrix6.6.1") { } else { timer(0.95f) } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false timer(1.03f) mc.thePlayer.jump() if (mc.thePlayer.movementInput.moveStrafe <= 0.01 && mc.thePlayer.movementInput.moveStrafe >= -0.01) { MovementUtils.strafe((MovementUtils.getSpeed() * 1.0071).toFloat()) } - } else if (!MovementUtils.isMoving()) { + } else if (!MovementUtils.isMoving) { timer(1.0f) } if (MovementUtils.getSpeed() < 0.22) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix670Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix670Speed.kt index 7fd7583..a4e2557 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix670Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix670Speed.kt @@ -36,7 +36,7 @@ class Matrix670Speed : SpeedMode("Matrix6.7.0") { }else{ mc.thePlayer.jumpMovementFactor = 0.0247f } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() mc.thePlayer.motionY = 0.4105000114514192 @@ -44,7 +44,7 @@ class Matrix670Speed : SpeedMode("Matrix6.7.0") { MovementUtils.strafe() } } - if (!MovementUtils.isMoving()) { + if (!MovementUtils.isMoving) { mc.thePlayer.motionX = 0.0 mc.thePlayer.motionZ = 0.0 } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix692Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix692Speed.kt index 0a99bf7..c8810a2 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix692Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix692Speed.kt @@ -21,7 +21,7 @@ class Matrix692Speed : SpeedMode("Matrix6.9.2") { mc.thePlayer.motionY -= 0.00348 mc.thePlayer.jumpMovementFactor = 0.026f mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) - if (MovementUtils.isMoving() && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.onGround) { mc.gameSettings.keyBindJump.pressed = false mc.timer.timerSpeed = 1.35f wasTimer = true diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix7Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix7Speed.kt index d759f43..a1102f4 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix7Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/Matrix7Speed.kt @@ -19,7 +19,7 @@ class Matrix7Speed : SpeedMode("Matrix7") { mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) if (mc.thePlayer.onGround) { mc.gameSettings.keyBindJump.pressed = false - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.thePlayer.jump() if (timer.get()) { mc.timer.timerSpeed = 1.35f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/MatrixHop2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/MatrixHop2Speed.kt index 03e1785..7b653b1 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/MatrixHop2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/matrix/MatrixHop2Speed.kt @@ -15,7 +15,7 @@ class MatrixHop2Speed : SpeedMode("MatrixHop2") { override fun onUpdate() { mc.gameSettings.keyBindJump.pressed = GameSettings.isKeyDown(mc.gameSettings.keyBindJump) - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.gameSettings.keyBindJump.pressed = false mc.timer.timerSpeed = 1.0f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/BlocksMCSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/BlocksMCSpeed.kt index 7f8c854..0692618 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/BlocksMCSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/BlocksMCSpeed.kt @@ -14,7 +14,7 @@ class BlocksMCSpeed : SpeedMode("BlocksMC") { private val strafe = BoolValue("DamageStrafe",true) override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.fallDistance > 0) { mc.thePlayer.motionY -= 0.004f } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/KarhuSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/KarhuSpeed.kt index 6fb7431..b08c7ef 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/KarhuSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/KarhuSpeed.kt @@ -6,7 +6,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class KarhuSpeed : SpeedMode("Karhu") { override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() if (mc.gameSettings.keyBindForward.isKeyDown && !mc.gameSettings.keyBindRight.isKeyDown && !mc.gameSettings.keyBindLeft.isKeyDown) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/LNCPHop.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/LNCPHop.kt index 1cafdca..e78a244 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/LNCPHop.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/LNCPHop.kt @@ -26,7 +26,7 @@ class LNCPHopSpeed : SpeedMode("LNCPHop") { } override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() mspeed = MovementUtils.defaultSpeed().toDouble() * 1.73 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/MiJumpSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/MiJumpSpeed.kt index 36f12b6..b1ff7ea 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/MiJumpSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/MiJumpSpeed.kt @@ -12,7 +12,7 @@ import kotlin.math.sqrt class MiJumpSpeed : SpeedMode("MiJump") { override fun onPreMotion() { - if (!MovementUtils.isMoving()) return + if (!MovementUtils.isMoving) return if (mc.thePlayer.onGround && !mc.thePlayer.movementInput.jump) { mc.thePlayer.motionY += 0.1 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPBHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPBHopSpeed.kt index 252c074..5e7068a 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPBHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPBHopSpeed.kt @@ -49,15 +49,15 @@ class NCPBHopSpeed : SpeedMode("NCPBHop") { if (timerDelay != 0) { mc.timer.timerSpeed = 1f } else { - if (MovementUtils.isMoving()) mc.timer.timerSpeed = 32767f - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) mc.timer.timerSpeed = 32767f + if (MovementUtils.isMoving) { mc.timer.timerSpeed = 1.3f mc.thePlayer.motionX *= 1.0199999809265137 mc.thePlayer.motionZ *= 1.0199999809265137 } } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) level = 2 + if (mc.thePlayer.onGround && MovementUtils.isMoving) level = 2 if (round(mc.thePlayer.posY - mc.thePlayer.posY.toInt().toDouble()) == round(0.138)) { val thePlayer = mc.thePlayer diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPHopSpeed.kt index 6378e8b..692838e 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPHopSpeed.kt @@ -21,7 +21,7 @@ class NCPHopSpeed : SpeedMode("NCPHop") { } override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() mc.thePlayer.speedInAir = 0.0223f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPLatestSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPLatestSpeed.kt index 96057c3..c63a090 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPLatestSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPLatestSpeed.kt @@ -27,7 +27,7 @@ class NCPLatestSpeed : SpeedMode("NCPLatest") { mc.timer.timerSpeed = 0.98f } - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { wasSlow = false mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPStableSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPStableSpeed.kt index 62d726a..5657b64 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPStableSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPStableSpeed.kt @@ -35,7 +35,7 @@ class NCPStableSpeed : SpeedMode("NCPStable") { } override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.thePlayer.jumpMovementFactor = jumpMovementFactorValue.get() if (mc.thePlayer.onGround) { mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPort2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPort2Speed.kt index 66daaae..f3a532e 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPort2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPort2Speed.kt @@ -25,7 +25,7 @@ class NCPYPort2Speed : SpeedMode("NCPYPort2") { } override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { if (jumps <= 4) { mc.timer.timerSpeed = launchTimer.get() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPortSpeed.kt index 10c0d1b..6ff372f 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/NCPYPortSpeed.kt @@ -13,7 +13,7 @@ class NCPYPortSpeed : SpeedMode("NCPYPort") { private var jumps = 0 override fun onPreMotion() { - if (mc.thePlayer.isOnLadder || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isInWeb || !MovementUtils.isMoving() || mc.thePlayer.isInWater) return + if (mc.thePlayer.isOnLadder || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isInWeb || !MovementUtils.isMoving || mc.thePlayer.isInWater) return if (jumps >= 4 && mc.thePlayer.onGround) jumps = 0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/OnGroundSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/OnGroundSpeed.kt index 8124a77..053cf37 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/OnGroundSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/OnGroundSpeed.kt @@ -10,7 +10,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class OnGroundSpeed : SpeedMode("OnGround") { override fun onPreMotion() { - if (!MovementUtils.isMoving()) return + if (!MovementUtils.isMoving) return if (mc.thePlayer.fallDistance > 3.994) return diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/UNCPLowJumpSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/UNCPLowJumpSpeed.kt index 9dfd53b..59153b2 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/UNCPLowJumpSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/UNCPLowJumpSpeed.kt @@ -11,7 +11,7 @@ class UNCPLowJumpSpeed : SpeedMode("UNCPLowJump") { val player = mc.thePlayer ?: return if (player.isInWater || player.isInLava || player.isInWeb || player.isOnLadder) return - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (player.onGround) { player.jump() airtick = 0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPort2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPort2Speed.kt index 349affe..5c59d03 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPort2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPort2Speed.kt @@ -10,7 +10,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class YPort2Speed : SpeedMode("YPort2") { override fun onPreMotion() { - if (mc.thePlayer.isOnLadder || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isInWeb || !MovementUtils.isMoving()) return + if (mc.thePlayer.isOnLadder || mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isInWeb || !MovementUtils.isMoving) return if (mc.thePlayer.onGround) mc.thePlayer.jump() else mc.thePlayer.motionY = -1.0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPortSpeed.kt index f60a35f..3c147f2 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/ncp/YPortSpeed.kt @@ -40,7 +40,7 @@ class YPortSpeed : SpeedMode("YPort") { val zDist = mc.thePlayer.posZ - mc.thePlayer.prevPosZ lastDist = sqrt(xDist * xDist + zDist * zDist) - if (!MovementUtils.isMoving()) safeJump = true else if (mc.thePlayer.onGround) safeJump = false + if (!MovementUtils.isMoving) safeJump = true else if (mc.thePlayer.onGround) safeJump = false } override fun onMove(event: MoveEvent) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/CustomSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/CustomSpeed.kt index 46930a6..2ced66f 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/CustomSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/CustomSpeed.kt @@ -48,7 +48,7 @@ class CustomSpeed : SpeedMode("Custom") { override fun onPreMotion() { if (!usePreMotion.get()) return - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.timer.timerSpeed = if (mc.thePlayer.motionY> 0) { upTimerValue.get() } else { downTimerValue.get() } when { @@ -151,7 +151,7 @@ class CustomSpeed : SpeedMode("Custom") { override fun onUpdate() { if (usePreMotion.get()) return - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.timer.timerSpeed = if (mc.thePlayer.motionY> 0) { upTimerValue.get() } else { downTimerValue.get() } when { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/GroundStrafeHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/GroundStrafeHopSpeed.kt index 1edc3ad..acec1e8 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/GroundStrafeHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/GroundStrafeHopSpeed.kt @@ -5,7 +5,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class GroundStrafeHopSpeed : SpeedMode("GroundStrafeHop") { override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() MovementUtils.strafe() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HiveHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HiveHopSpeed.kt index 3eef0e6..0e7aa5f 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HiveHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HiveHopSpeed.kt @@ -20,7 +20,7 @@ class HiveHopSpeed : SpeedMode("HiveHop") { } override fun onUpdate() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) mc.thePlayer.motionY = 0.3 mc.thePlayer.speedInAir = 0.0425f mc.timer.timerSpeed = 1.04f diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelBhopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelBhopSpeed.kt index d4089b9..e072ac1 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelBhopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelBhopSpeed.kt @@ -16,7 +16,7 @@ class HypixelBhop : SpeedMode("HypixelBhop") { if ((mc.thePlayer.isInWater || mc.thePlayer.isInLava || mc.thePlayer.isSneaking)) { return } - if (mc.thePlayer.fallDistance <= 0 && MovementUtils.isMoving() && mc.currentScreen == null) { + if (mc.thePlayer.fallDistance <= 0 && MovementUtils.isMoving && mc.currentScreen == null) { if (!mc.thePlayer.onGround) { return } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelHopSpeed.kt index cfdcd11..648793e 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelHopSpeed.kt @@ -35,7 +35,7 @@ class HypixelHopSpeed : SpeedMode("HypixelHop") { private var groundTick = 0 override fun onUpdate() { - if (!MovementUtils.isMoving()) { + if (!MovementUtils.isMoving) { mc.thePlayer.motionX = 0.0 mc.thePlayer.motionZ = 0.0 } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelNewHop.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelNewHop.kt index a01a1df..8778865 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelNewHop.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/HypixelNewHop.kt @@ -11,7 +11,7 @@ class HypixelNewHop : SpeedMode("NewHypixelHop") { @EventTarget override fun onUpdate() { val player = mc.thePlayer - if (player.onGround && MovementUtils.isMoving()) { + if (player.onGround && MovementUtils.isMoving) { if (player.isUsingItem) { player.jump() } else { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/LegitSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/LegitSpeed.kt index 0cc0d5e..6e8cae5 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/LegitSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/LegitSpeed.kt @@ -16,7 +16,7 @@ class LegitSpeed : SpeedMode("Legit") { override fun onUpdate() { if (cpuSPEED.get()) mc.timer.timerSpeed = 1.004f if (mc.thePlayer.isInWater) return - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) mc.thePlayer.jump() } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemenHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemenHopSpeed.kt index 350481e..2d7917d 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemenHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemenHopSpeed.kt @@ -14,7 +14,7 @@ class MinemenHopSpeed : SpeedMode("MinemenHop") { private val veloAbuseValue = BoolValue("KnockbackAbuse", false) override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.hurtTime < 6 || veloAbuseValue.get()) { MovementUtils.strafe() } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemoraHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemoraHopSpeed.kt index bbaf053..c7ce909 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemoraHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MinemoraHopSpeed.kt @@ -11,7 +11,7 @@ class MinemoraHopSpeed : SpeedMode("MinemoraHop") { } override fun onPreMotion() { if (mc.thePlayer.isInWater) return - if (MovementUtils.isMoving() || mc.gameSettings.keyBindForward.pressed || mc.gameSettings.keyBindBack.pressed || mc.gameSettings.keyBindLeft.pressed || mc.gameSettings.keyBindRight.pressed) { + if (MovementUtils.isMoving || mc.gameSettings.keyBindForward.pressed || mc.gameSettings.keyBindBack.pressed || mc.gameSettings.keyBindLeft.pressed || mc.gameSettings.keyBindRight.pressed) { if (mc.thePlayer.onGround) { mc.thePlayer.jump() movetick = 0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MoraLowHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MoraLowHopSpeed.kt index bc7c75f..1dc2c49 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MoraLowHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/MoraLowHopSpeed.kt @@ -12,7 +12,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class MoraLowHopSpeed : SpeedMode("MoraLowHop") { override fun onMotion(event: MotionEvent) { - if (event.eventState === EventState.POST && MovementUtils.isMoving() && !mc.thePlayer.isInWater && !mc.thePlayer.isInLava) { + if (event.eventState === EventState.POST && MovementUtils.isMoving && !mc.thePlayer.isInWater && !mc.thePlayer.isInLava) { mc.thePlayer.jumpMovementFactor += 0.00222f if (mc.thePlayer.fallDistance <= 1f) { if (mc.thePlayer.onGround) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/SlowHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/SlowHopSpeed.kt index 7f83236..22e39f1 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/SlowHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/SlowHopSpeed.kt @@ -11,7 +11,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class SlowHopSpeed : SpeedMode("SlowHop") { override fun onPreMotion() { if (mc.thePlayer.isInWater) return - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (mc.thePlayer.onGround) mc.thePlayer.jump() else MovementUtils.strafe(MovementUtils.getSpeed() * 1.011f) } else { mc.thePlayer.motionX = 0.0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/StrafeHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/StrafeHopSpeed.kt index 32ae9c5..bac6824 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/StrafeHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/StrafeHopSpeed.kt @@ -10,7 +10,7 @@ import net.ccbluex.liquidbounce.utils.MovementUtils class StrafeHopSpeed : SpeedMode("StrafeHop") { override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { MovementUtils.strafe() if (mc.thePlayer.onGround) { mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/TeleportCubeCraftSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/TeleportCubeCraftSpeed.kt index 14667c6..47c3c68 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/TeleportCubeCraftSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/other/TeleportCubeCraftSpeed.kt @@ -19,7 +19,7 @@ class TeleportCubeCraftSpeed : SpeedMode("TeleportCubeCraft") { private val timer = MSTimer() override fun onMove(event: MoveEvent) { - if (MovementUtils.isMoving() && mc.thePlayer.onGround && timer.hasTimePassed(300L)) { + if (MovementUtils.isMoving && mc.thePlayer.onGround && timer.hasTimePassed(300L)) { val yaw = MovementUtils.direction event.x = -sin(yaw) * portLengthValue.get() event.z = cos(yaw) * portLengthValue.get() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/spartan/SpartanLowHop.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/spartan/SpartanLowHop.kt index b1cb1b5..f34ba20 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/spartan/SpartanLowHop.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/spartan/SpartanLowHop.kt @@ -10,7 +10,7 @@ class SpartanLowHopSpeed : SpeedMode("SpartanLowHop") { override fun onUpdate() { ticks++ - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.thePlayer.jump() ticks = 0 MovementUtils.strafe(0.48f) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusHopSpeed.kt index d0df54a..de8fe43 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusHopSpeed.kt @@ -37,7 +37,7 @@ class VerusHopSpeed : SpeedMode("VerusHop") { override fun onPreMotion() { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { if (timerBoost.get() && (jumps >= 1) && !modeValue.equals("Ground")) { mc.timer.timerSpeed = if (mc.thePlayer.motionY < 0) { 0.88f } else { 1.25f } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPort2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPort2Speed.kt index fc55992..c36496c 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPort2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPort2Speed.kt @@ -9,7 +9,7 @@ class VerusYPort2Speed : SpeedMode("VerusYPort2") { private val speedValue = FloatValue("${valuePrefix}Speed", 0.61f, 0.1f, 1f) override fun onMove(event: MoveEvent) { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false if (mc.thePlayer.onGround) { MovementUtils.strafe(speedValue.get()) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPortSpeed.kt index 83a0b08..a0c06a7 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/verus/VerusYPortSpeed.kt @@ -9,7 +9,7 @@ class VerusYPortSpeed : SpeedMode("VerusYPort") { private val speedValue = FloatValue("${valuePrefix}Speed", 0.61f, 0.1f, 1f) override fun onMove(event: MoveEvent) { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false if (mc.thePlayer.onGround) { mc.thePlayer.jump() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanGroundSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanGroundSpeed.kt index e4b160f..5dfb924 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanGroundSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanGroundSpeed.kt @@ -34,7 +34,7 @@ class VulcanGroundSpeed : SpeedMode("VulcanGround") { yMotion = 0.0 } mc.thePlayer.jumpMovementFactor = 0.025f - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { if (mc.thePlayer.isCollidedHorizontally || mc.gameSettings.keyBindJump.pressed) { if (!mc.gameSettings.keyBindJump.pressed) { mc.thePlayer.jump() @@ -47,7 +47,7 @@ class VulcanGroundSpeed : SpeedMode("VulcanGround") { MovementUtils.strafe(0.48f + jumpCount * 0.001f) jumpCount++ jumped = true - } else if (MovementUtils.isMoving()) { + } else if (MovementUtils.isMoving) { MovementUtils.strafe(0.27f + jumpCount * 0.0018f) } else { MovementUtils.resetMotion(false) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanHopSpeed.kt index 101bc5d..bd72e19 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanHopSpeed.kt @@ -25,7 +25,7 @@ class VulcanHopSpeed : SpeedMode("VulcanHop") { if (MovementUtils.getSpeed() < 0.215f && !mc.thePlayer.onGround) { MovementUtils.strafe(0.215f) } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() if (!mc.thePlayer.isAirBorne) { @@ -37,7 +37,7 @@ class VulcanHopSpeed : SpeedMode("VulcanHop") { if(MovementUtils.getSpeed() < 0.5f) { MovementUtils.strafe(0.4849f) } - }else if (!MovementUtils.isMoving()) { + }else if (!MovementUtils.isMoving) { mc.timer.timerSpeed = 1.00f mc.thePlayer.motionX = 0.0 mc.thePlayer.motionZ = 0.0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanLowHopSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanLowHopSpeed.kt index fbcf029..8d7c6c5 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanLowHopSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanLowHopSpeed.kt @@ -10,7 +10,7 @@ class VulcanLowHopSpeed : SpeedMode("VulcanLowHop") { override fun onUpdate() { ticks++ mc.thePlayer.jumpMovementFactor = 0.0245f - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.thePlayer.jump() ticks = 0 MovementUtils.strafe() diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPort2Speed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPort2Speed.kt index 35f380a..43ce534 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPort2Speed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPort2Speed.kt @@ -34,7 +34,7 @@ class VulcanYPort2Speed : SpeedMode("VulcanYPort2") { portSwitcher = 0 } } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { mc.thePlayer.jump() MovementUtils.strafe() if(portSwitcher >= 1) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPortSpeed.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPortSpeed.kt index aa7b58b..d90918c 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPortSpeed.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/speeds/vulcan/VulcanYPortSpeed.kt @@ -24,7 +24,7 @@ class VulcanYPortSpeed : SpeedMode("VulcanYPort") { if (MovementUtils.getSpeed() < 0.215f && !mc.thePlayer.onGround) { MovementUtils.strafe(0.215f) } - if (mc.thePlayer.onGround && MovementUtils.isMoving()) { + if (mc.thePlayer.onGround && MovementUtils.isMoving) { ticks = 0 mc.gameSettings.keyBindJump.pressed = false mc.thePlayer.jump() @@ -38,7 +38,7 @@ class VulcanYPortSpeed : SpeedMode("VulcanYPort") { }else{ MovementUtils.strafe((MovementUtils.getSpeed()*0.985).toFloat()) } - }else if (!MovementUtils.isMoving()) { + }else if (!MovementUtils.isMoving) { mc.timer.timerSpeed = 1.00f mc.thePlayer.motionX = 0.0 mc.thePlayer.motionZ = 0.0 diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/steps/server/Hypixel.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/steps/server/Hypixel.kt index 349d545..938e23d 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/steps/server/Hypixel.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/movement/steps/server/Hypixel.kt @@ -25,7 +25,7 @@ class Hypixel : StepMode("Hypixel") { Step.doncheck = true if (event.eventState == EventState.PRE) { val time = System.currentTimeMillis() - if (mc.thePlayer.onGround && mc.thePlayer.isCollidedHorizontally && MovementUtils.isMoving() && time - lastStep >= Step.delayValue.get()) { + if (mc.thePlayer.onGround && mc.thePlayer.isCollidedHorizontally && MovementUtils.isMoving && time - lastStep >= Step.delayValue.get()) { stepping = true lastStep = time } @@ -41,7 +41,7 @@ class Hypixel : StepMode("Hypixel") { } if (stepping) { - if (!MovementUtils.isMoving() || !mc.thePlayer.isCollidedHorizontally) { + if (!MovementUtils.isMoving || !mc.thePlayer.isCollidedHorizontally) { stepping = false return } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/other/AntiBot.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/other/AntiBot.kt index e041739..71b4851 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/other/AntiBot.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/other/AntiBot.kt @@ -16,27 +16,17 @@ import net.ccbluex.liquidbounce.features.value.ListValue import net.ccbluex.liquidbounce.script.api.global.Chat import net.ccbluex.liquidbounce.ui.client.hud.element.elements.Notification import net.ccbluex.liquidbounce.ui.client.hud.element.elements.NotifyType -import net.ccbluex.liquidbounce.ui.font.GameFontRenderer.Companion.getColorIndex -import net.ccbluex.liquidbounce.utils.EntityUtils.speed -import net.ccbluex.liquidbounce.utils.MovementUtils import net.ccbluex.liquidbounce.utils.RotationUtils -import net.ccbluex.liquidbounce.utils.extensions.getDistanceToEntityBox -import net.ccbluex.liquidbounce.utils.extensions.ping -import net.ccbluex.liquidbounce.utils.render.ColorUtils import net.ccbluex.liquidbounce.utils.render.ColorUtils.stripColor -import net.ccbluex.liquidbounce.utils.rotation import net.minecraft.client.network.NetworkPlayerInfo import net.minecraft.entity.Entity import net.minecraft.entity.EntityLivingBase import net.minecraft.entity.player.EntityPlayer import net.minecraft.item.ItemArmor -import net.minecraft.network.play.client.C03PacketPlayer import net.minecraft.network.play.server.* import net.minecraft.world.WorldSettings -import java.awt.Color import java.util.* import java.util.concurrent.CopyOnWriteArrayList -import java.util.regex.Pattern import kotlin.math.abs @ModuleInfo("AntiBot","Prevents KillAura from attacking AntiCheat bots.", category = ModuleCategory.OTHER) @@ -522,7 +512,16 @@ object AntiBot : Module() { } } - if (matrix7.get()) { + if (matrix7.get() && modeValue.get() == "Custom") { +// val player = mc.thePlayer ?: return +// val world = mc.theWorld ?: return +// for (entity in world.playerEntities) { +// val profile = entity.gameProfile ?: continue +// +// if (entity.getPing() < 2 || profile.properties?.isEmpty == false) { +// continue +// } +// } mc.theWorld.playerEntities.forEach { entity -> if (entity.inventory.armorInventory.all { it != null } && entity.heldItem != null) { @@ -538,25 +537,22 @@ object AntiBot : Module() { val rotDiff = abs(entityRot - playerPreRot) val utilDiff = abs(entityRot - RotationUtils.serverRotation?.yaw!!) - if ((rotDiff <= 10 || utilDiff <= 10) && matrix.contains(entity.entityId)) { + if ((rotDiff <= 10 || utilDiff <= 10) && !matrix.contains(entity.entityId)) { // if (debugValue.get()) Chat.alert("§7[§a§lAnti Bot/§6Matrix§7] §fPrevented §r${entity.gameProfile.name} §ffrom spawning.") // world.removeEntityFromWorld(entity.entityId) matrix.add(entity.entityId) if (debugValue.get()) Chat.alert("AntiBot + ${entity.gameProfile.name}") } - if (entity.isSprinting && entity.moveForward == 0f && matrix.contains(entity.entityId)) { + if (entity.isSprinting && entity.moveForward == 0f && !matrix.contains(entity.entityId)) { // if (debugValue.get()) Chat.alert("§7[§a§lAnti Bot/§6Matrix§7] §fPrevented §r${entity.gameProfile.name} §ffrom spawning.") // world.removeEntityFromWorld(entity.entityId) matrix.add(entity.entityId) if (debugValue.get()) Chat.alert("AntiBot + ${entity.gameProfile.name}") } if (matrix.contains(entity.entityId)) { - if (player.getDistanceToEntity(entity) <= 10) { - if (packet is S38PacketPlayerListItem && packet.action == S38PacketPlayerListItem.Action.REMOVE_PLAYER) { - matrix.remove(entity.entityId) - if (debugValue.get()) Chat.alert("AntiBot - ${entity.gameProfile.name}") - } + if (packet is S38PacketPlayerListItem && packet.action == S38PacketPlayerListItem.Action.REMOVE_PLAYER) { + if (player.getDistanceToEntity(entity) < 10) matrix.remove(entity.entityId) } } } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/AntiVoid.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/AntiVoid.kt index 24dbfcd..bdc5486 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/AntiVoid.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/AntiVoid.kt @@ -356,18 +356,19 @@ object AntiVoid : Module() { } private fun checkVoid(): Boolean { - return (FallingPlayer(mc.thePlayer).findCollision(60) == null) + return (FallingPlayer(mc.thePlayer ?: return false).findCollision(60) == null) } @EventTarget fun onMove(event: MoveEvent) { if (modeValue.equals("searchpearl")) { + val player = mc.thePlayer ?: return if (mc.currentScreen != null || mc.playerController.currentGameType == WorldSettings.GameType.SPECTATOR || mc.playerController.currentGameType == WorldSettings.GameType.CREATIVE ) return if (!voidOnlyValue.get() || checkVoid()) { - if (mc.thePlayer.fallDistance > maxFallDistValue.get()) { - if (mc.thePlayer.heldItem?.item is ItemEnderPearl && mc.thePlayer.heldItem.item != null) { + if (player.fallDistance > maxFallDistValue.get()) { + if (player.heldItem?.item is ItemEnderPearl && player.heldItem.item != null) { if (freezeValue.equals("Cancel")) { event.cancelEvent() } else { @@ -400,12 +401,13 @@ object AntiVoid : Module() { } "searchpearl" -> { + val player = mc.thePlayer ?: return if (mc.currentScreen != null || mc.playerController.currentGameType == WorldSettings.GameType.SPECTATOR || mc.playerController.currentGameType == WorldSettings.GameType.CREATIVE) return if (!voidOnlyValue.get() || checkVoid()) { - if (mc.thePlayer.fallDistance > maxFallDistValue.get()) { + if (player.fallDistance > maxFallDistValue.get()) { if (freezeValue.equals("Cancel")) { - if (mc.thePlayer.heldItem!!.item is ItemEnderPearl) { + if (player.heldItem?.item is ItemEnderPearl) { if (packet is C03PacketPlayer && packet !is C05PacketPlayerLook) { event.cancelEvent() } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/InvManager.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/InvManager.kt index 88ca7c4..d6a4814 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/InvManager.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/InvManager.kt @@ -22,6 +22,7 @@ import net.ccbluex.liquidbounce.utils.PacketUtils import net.ccbluex.liquidbounce.utils.item.ArmorComparator.getBestArmorSet import net.ccbluex.liquidbounce.utils.item.ArmorPiece import net.ccbluex.liquidbounce.utils.item.ItemUtils +import net.ccbluex.liquidbounce.utils.item.ItemUtils.isSplashPotion import net.ccbluex.liquidbounce.utils.misc.RandomUtils import net.ccbluex.liquidbounce.utils.timer.MSTimer import net.ccbluex.liquidbounce.utils.timer.TimeUtils @@ -34,6 +35,7 @@ import net.minecraft.network.play.client.C08PacketPlayerBlockPlacement import net.minecraft.network.play.client.C09PacketHeldItemChange import net.minecraft.network.play.client.C0EPacketClickWindow import net.minecraft.network.play.client.C16PacketClientStatus +import net.minecraft.potion.Potion @ModuleInfo(name = "InvManager", category = ModuleCategory.PLAYER) object InvManager : Module() { @@ -74,13 +76,10 @@ object InvManager : Module() { private val swingValue = BoolValue("Swing", true) private val nbtGoalValue = ListValue("NBTGoal", ItemUtils.EnumNBTPriorityType.entries.map { it.toString() }.toTypedArray(), "NONE") - private val nbtItemNotGarbage = BoolValue("NBTItemNotGarbage", true).displayable { !nbtGoalValue.equals("NONE") } - private val nbtArmorPriority = - FloatValue("NBTArmorPriority", 0f, 0f, 5f).displayable { !nbtGoalValue.equals("NONE") } private val nbtWeaponPriority = FloatValue("NBTWeaponPriority", 0f, 0f, 5f).displayable { !nbtGoalValue.equals("NONE") } private val ignoreVehiclesValue = BoolValue("IgnoreVehicles", false) - private val onlyPositivePotionValue = BoolValue("OnlyPositivePotion", false) + private val onlyGoodPotions = BoolValue("OnlyGoodPotion", false) // private val ignoreDurabilityUnder = FloatValue("IgnoreDurabilityUnder", 0.3f, 0f, 1f) private val items = arrayOf( @@ -186,11 +185,13 @@ object InvManager : Module() { C08PacketPlayerBlockPlacement(stack) ) } else { - PacketUtils.sendPackets( - C09PacketHeldItemChange(hotbarIndex), - C08PacketPlayerBlockPlacement(stack), - C09PacketHeldItemChange(mc.thePlayer.inventory.currentItem) - ) + if (hotbarIndex in 0..8) { + PacketUtils.sendPackets( + C09PacketHeldItemChange(hotbarIndex), + C08PacketPlayerBlockPlacement(stack), + C09PacketHeldItemChange(mc.thePlayer.inventory.currentItem) + ) + } } mc.thePlayer.inventory.armorInventory[armorPos] = stack @@ -203,7 +204,7 @@ object InvManager : Module() { } } } - if (noMoveValue.get() && isMoving() || + if (noMoveValue.get() && isMoving || mc.thePlayer.openContainer != null && mc.thePlayer.openContainer.windowId != 0 || (FDPClient.combatManager.inCombat && noCombatValue.get()) ) { @@ -311,10 +312,10 @@ object InvManager : Module() { } } - private fun Int.toHotbarIndex(stacksSize: Int): Int? { + private fun Int.toHotbarIndex(stacksSize: Int): Int { val parsed = this - stacksSize + 9 - return if (parsed in 0..8) parsed else null + return if (parsed in 0..8) parsed else -1 } @@ -392,10 +393,7 @@ object InvManager : Module() { is ItemSnowball, is ItemEgg -> return amount[0] <= maxmiss.get() is ItemFood -> return amount[3] <= maxfood.get() is ItemBlock -> return !InventoryUtils.isBlockListBlock(item) && amount[1] <= maxblock.get() - is ItemPotion -> return !onlyPositivePotionValue.get() || InventoryUtils.isPositivePotion( - item, - itemStack - ) + is ItemPotion -> return isUsefulPotion(itemStack) is ItemBoat,is ItemMinecart -> return ignoreVehiclesValue.get() is ItemBed, is ItemEnderPearl,is ItemBucket -> return true } @@ -413,6 +411,22 @@ object InvManager : Module() { } } + private fun isUsefulPotion(stack: ItemStack?): Boolean { + val NEGATIVE_EFFECT_IDS = intArrayOf( + Potion.moveSlowdown.id, Potion.digSlowdown.id, Potion.harm.id, Potion.confusion.id, Potion.blindness.id, + Potion.hunger.id, Potion.weakness.id, Potion.poison.id, Potion.wither.id, + ) + val item = stack?.item ?: return false + + if (item !is ItemPotion) return false + + val isSplash = stack.isSplashPotion() + val isHarmful = item.getEffects(stack)?.any { it.potionID in NEGATIVE_EFFECT_IDS } ?: return false + + // Only keep helpful potions and, if 'onlyGoodPotions' is disabled, also splash harmful potions + return !isHarmful || (!onlyGoodPotions.get() && isSplash) + } + private fun findBetterItem(targetSlot: Int, slotStack: ItemStack?): Int? { val type = type(targetSlot) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Refill.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Refill.kt index aef378e..56f127e 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Refill.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Refill.kt @@ -52,7 +52,7 @@ object Refill : Module() { if (invOpenValue.get() && mc.currentScreen !is GuiInventory) return - if (noMoveValue.get() && MovementUtils.isMoving() && if (mc.thePlayer.onGround) noMoveGroundValue.get() else noMoveAirValue.get()) + if (noMoveValue.get() && MovementUtils.isMoving && if (mc.thePlayer.onGround) noMoveGroundValue.get() else noMoveAirValue.get()) return for (slot in 36..44) { diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Regen.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Regen.kt index 619b170..b543d9b 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Regen.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/player/Regen.kt @@ -80,12 +80,12 @@ object Regen : Module() { mc.netHandler.addToSendQueue(C03PacketPlayer(true)) } } else { - if (MovementUtils.isMoving()) mc.netHandler.addToSendQueue(C03PacketPlayer(mc.thePlayer.onGround)) + if (MovementUtils.isMoving) mc.netHandler.addToSendQueue(C03PacketPlayer(mc.thePlayer.onGround)) } } "oldspartan" -> { - if (MovementUtils.isMoving() || !mc.thePlayer.onGround) { + if (MovementUtils.isMoving || !mc.thePlayer.onGround) { return } diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/BlueArchiveHalos.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/BlueArchiveHalos.kt new file mode 100644 index 0000000..6afd917 --- /dev/null +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/BlueArchiveHalos.kt @@ -0,0 +1,728 @@ +package net.ccbluex.liquidbounce.features.module.modules.visual + +import net.ccbluex.liquidbounce.event.EventTarget +import net.ccbluex.liquidbounce.event.Render3DEvent +import net.ccbluex.liquidbounce.features.module.Module +import net.ccbluex.liquidbounce.features.module.ModuleCategory +import net.ccbluex.liquidbounce.features.module.ModuleInfo +import net.ccbluex.liquidbounce.features.value.BoolValue +import net.ccbluex.liquidbounce.features.value.ListValue +import net.ccbluex.liquidbounce.utils.Animation +import net.ccbluex.liquidbounce.utils.Easing +import net.ccbluex.liquidbounce.utils.render.RenderUtils.color +import net.minecraft.client.renderer.GlStateManager +import org.lwjgl.opengl.GL11 +import java.awt.Color +import kotlin.math.cos +import kotlin.math.sin + + +@ModuleInfo("BlueArchiveHalos", category = ModuleCategory.VISUAL) +class BlueArchiveHalos : Module() { + private val mode = ListValue("Mode", arrayOf("Shiroko", "Hoshino", "Aris", "Yuuka", "Natsu", "Reisa", "Shiroko*Terror"),"Shiroko") + private val showInFirstPerson = BoolValue("FirstPerson",true) + + private var animations: Animation = Animation(Easing.LINEAR, 2000) + private var isReversing = false + + @EventTarget + fun onRender3D(event: Render3DEvent) { + if (mc.gameSettings.thirdPersonView == 0 && !showInFirstPerson.get()) return + + when (mode.get().lowercase()) { + "shiroko" -> drawShirokoHalo() + "hoshino" -> drawHoshinoHalo() + "aris" -> drawArisHalo() + "yuuka" -> drawYuukaHalo() + "natsu" -> drawNatsuHalo() + "reisa" -> drawReisaHalo() + "shiroko*terror" -> drawShiroko_TerrorHalo() + } + } + + + private fun drawShirokoHalo() { + val player = mc.thePlayer ?: return + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = player.height + 0.25f + animations.value + + GL11.glPushMatrix() + GL11.glTranslated( + player.lastTickPosX + (player.posX - player.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + player.lastTickPosY + (player.posY - player.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GlStateManager.enableBlend() + GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + color( + Color( + 0 + (animations.value * 1800).toInt(), + (230 + animations.value * 200).toInt(), 250, 220 + ).rgb + ) + + val yaw = player.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + // 绘制内圈 + GL11.glLineWidth(2.5f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.18f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.18f + ) + i += 5 + } + } + GL11.glEnd() + + // 绘制外圈 + GL11.glTranslated(0.0, 0.0, -0.02) + GL11.glLineWidth(3.7f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + var i = 0 + while (i <= 360) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.3f + val y = sin(angle.toDouble()).toFloat() * 0.3f + + GL11.glVertex2f(x, y) + + // 在每个四等分点上添加突出效果 + if (i % 90 == 0) { // 四等分点 + val offset = 0.1f + val inwardOffset = 0.03f + + // 向外突出顶点 + GL11.glVertex2f( + x + cos(angle.toDouble()).toFloat() * offset, y + sin(angle.toDouble()) + .toFloat() * offset + ) + // 回到原始顶点 + GL11.glVertex2f(x, y) + // 向内突出顶点 + GL11.glVertex2f( + x - cos(angle.toDouble()).toFloat() * inwardOffset, y - sin(angle.toDouble()) + .toFloat() * inwardOffset + ) + // 回到原始顶点 + GL11.glVertex2f(x, y) + } + i += 5 + } + GL11.glEnd() + + GL11.glDisable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + + GL11.glPopMatrix() + } + + private fun drawHoshinoHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + val extraHeight = 0.035f + val extensionLength = 0.18f + val smallExtensionLength = 0.08f + + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GlStateManager.enableBlend() + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + color(Color(237, 110 + (animations.value * 600).toInt(), 183, 220).rgb) // RGB for pink + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + // 绘制内圈 + GL11.glLineWidth(4.0f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.13f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.13f + ) + i += 5 + } + } + GL11.glEnd() + + // 绘制中间圈 + GL11.glTranslated(0.0, 0.0, -extraHeight.toDouble()) + GL11.glLineWidth(2.5f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.20f + val y = sin(angle.toDouble()).toFloat() * 0.20f + + GL11.glVertex2f(x, y) + i += 5 + } + } + GL11.glEnd() + + // 绘制外圈 + GL11.glTranslated(0.0, 0.0, -extraHeight.toDouble()) + GL11.glLineWidth(4.0f * getExtraWidth()) + + // 绘制外圈的第一半 + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 15 + while (i <= 165) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.27f + val y = sin(angle.toDouble()).toFloat() * 0.27f + GL11.glVertex2f(x, y) + i += 5 + } + } + GL11.glEnd() + + // 绘制外圈的第二半 + GL11.glBegin(GL11.GL_LINE_STRIP) + var i = 195 + while (i <= 345) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.27f + val y = sin(angle.toDouble()).toFloat() * 0.27f + GL11.glVertex2f(x, y) + i += 5 + } + GL11.glEnd() + + // 绘制缺口位置的延伸线条 + GL11.glLineWidth(4.0f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINES) + + // 0度位置线条 + GL11.glVertex3f( + cos(Math.toRadians(0.0)).toFloat() * 0.27f, sin(Math.toRadians(0.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(0.0)).toFloat() * (0.27f + extensionLength), sin(Math.toRadians(0.0)) + .toFloat() * (0.27f + extensionLength), 0.0f + ) + + // 180度位置线条 + GL11.glVertex3f( + cos(Math.toRadians(180.0)).toFloat() * 0.27f, sin(Math.toRadians(180.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(180.0)).toFloat() * (0.27f + extensionLength), sin(Math.toRadians(180.0)) + .toFloat() * (0.27f + extensionLength), 0.0f + ) + + GL11.glEnd() + + // 绘制缺口边缘的短线 + GL11.glLineWidth(4.0f * getExtraWidth()) // 短线条的粗细 + GL11.glBegin(GL11.GL_LINES) + + // 15度位置的短线 + GL11.glVertex3f( + cos(Math.toRadians(15.0)).toFloat() * 0.268f, sin(Math.toRadians(15.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(15.0)).toFloat() * (0.27f + smallExtensionLength), sin(Math.toRadians(12.0)) + .toFloat() * (0.27f + smallExtensionLength), 0.0f + ) + + // 165度位置的短线 + GL11.glVertex3f( + cos(Math.toRadians(165.0)).toFloat() * 0.268f, sin(Math.toRadians(165.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(165.0)).toFloat() * (0.27f + smallExtensionLength), sin(Math.toRadians(168.0)) + .toFloat() * (0.27f + smallExtensionLength), 0.0f + ) + + // 195度位置的短线 + GL11.glVertex3f( + cos(Math.toRadians(195.0)).toFloat() * 0.268f, sin(Math.toRadians(195.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(195.0)).toFloat() * (0.27f + smallExtensionLength), sin(Math.toRadians(192.0)) + .toFloat() * (0.27f + smallExtensionLength), 0.0f + ) + + // 345度位置的短线 + GL11.glVertex3f( + cos(Math.toRadians(345.0)).toFloat() * 0.268f, sin(Math.toRadians(345.0)) + .toFloat() * 0.27f, 0.0f + ) + GL11.glVertex3f( + cos(Math.toRadians(345.0)).toFloat() * (0.27f + smallExtensionLength), sin(Math.toRadians(348.0)) + .toFloat() * (0.27f + smallExtensionLength), 0.0f + ) + + GL11.glEnd() + + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + GL11.glDisable(GL11.GL_LINE_SMOOTH) + + GL11.glPopMatrix() + } + + private fun drawArisHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GlStateManager.enableBlend() + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + color(Color(161, 253, 228, 220).rgb) + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + drawRectangle(0.20f, 0.02f, 0.26f, 0.26f, 4f, false) + drawRectangle(0.2f, 0.3f, 0.4f, 0.4f, 6f, false) + drawRectangle(-0.09f, 0.21f, 0.35f, 0.35f, 5f, false) + drawRectangle(-0.13f, 0.45f, 0.15f, 0.05f, 4f, false) + drawRectangle(0.12f, 0.49f, 0.1f, 0f, 6f, false) + + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + GL11.glDisable(GL11.GL_LINE_SMOOTH) + + GL11.glPopMatrix() + } + + private fun drawRectangle(x: Float, y: Float, width: Float, height: Float, lineWidth: Float, filled: Boolean) { + GL11.glPushMatrix() + GL11.glTranslatef(x - 0.05f, y - 0.15f, 0.0f) + + // 绘制长方形的边缘 + if (filled) { + GL11.glLineWidth(lineWidth * getExtraWidth()) + GL11.glBegin(GL11.GL_TRIANGLE_FAN) + GL11.glVertex2f(-width / 2, -height / 2) + GL11.glVertex2f(width / 2, -height / 2) + GL11.glVertex2f(width / 2, height / 2) + GL11.glVertex2f(-width / 2, height / 2) + GL11.glEnd() + } else { + GL11.glLineWidth(lineWidth * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_LOOP) + GL11.glVertex2f(-width / 2, -height / 2) + GL11.glVertex2f(width / 2, -height / 2) + GL11.glVertex2f(width / 2, height / 2) + GL11.glVertex2f(-width / 2, height / 2) + GL11.glEnd() + } + GL11.glPopMatrix() + } + + private fun drawStar(x: Float, y: Float, radius: Float) { + val POINTS = 5 // 五角星的5个外顶点 + val angles = FloatArray(POINTS * 2) + + // 计算每个点的角度(逆时针计算) + for (i in 0 until POINTS * 2) { + angles[i] = Math.toRadians((i * 360.0f / (POINTS * 2) - 90.0f).toDouble()).toFloat() // 从 -90 度开始使第一个点位于正上方 + } + + // 计算外层和内层的顶点 + val vertices = FloatArray(POINTS * 4) + val innerRadius = radius * 0.6f // 调整内半径的比例(使边更短) + + for (i in 0 until POINTS * 2) { + val angle = angles[i] + val currentRadius = if ((i % 2 == 0)) radius else innerRadius + vertices[i * 2] = x + cos(angle.toDouble()).toFloat() * currentRadius + vertices[i * 2 + 1] = y + sin(angle.toDouble()).toFloat() * currentRadius + } + + // 绘制五角星的边框(按顺序连接每一个点) + GL11.glBegin(GL11.GL_LINE_LOOP) + for (i in 0 until POINTS * 2) { + GL11.glVertex2f(vertices[i * 2], vertices[i * 2 + 1]) + } + GL11.glEnd() + } + + private fun drawTriangle(x: Float, y: Float, base: Float, height: Float, rotationAngle: Float) { + // 三角形的3个顶点 + val vertices = FloatArray(6) + + // 计算三角形的3个顶点坐标 + // 顶点1:底边的左端点 + vertices[0] = -base / 2 + vertices[1] = 0f + + // 顶点2:底边的右端点 + vertices[2] = base / 2 + vertices[3] = 0f + + // 顶点3:三角形的顶点(在底边的正上方,定义的高度) + vertices[4] = 0f + vertices[5] = height + + GL11.glPushMatrix() + + // 移动到三角形的中心 + GL11.glTranslatef(x, y, 0f) + + // 旋转三角形 + GL11.glRotatef(rotationAngle, 0f, 0f, 1f) + + // 绘制三角形的边框(按顺序连接每一个点) + GL11.glBegin(GL11.GL_LINE_LOOP) + for (i in 0..2) { + GL11.glVertex2f(vertices[i * 2], vertices[i * 2 + 1]) + } + GL11.glEnd() + + GL11.glPopMatrix() + } + + private fun getExtraWidth(): Float { + return 1f + } + + private fun drawShiroko_TerrorHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GlStateManager.enableBlend() + GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + color(Color(79, 112, 117, 255).rgb) + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + // 绘制内圈 + GL11.glLineWidth(2.2f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.2f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.2f + ) + i += 5 + } + } + GL11.glEnd() + + // 绘制外圈 + GL11.glTranslated(0.0, 0.0, -0.02) + GL11.glLineWidth(5f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.3f + val y = sin(angle.toDouble()).toFloat() * 0.3f + + GL11.glVertex2f(x, y) + i += 5 + } + } + GL11.glEnd() + + var i = 0 + while (i < 360) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.3f + val y = sin(angle.toDouble()).toFloat() * 0.3f + + // 在每个四等分点上添加突出效果 + if (i % 90 == 0) { // 四等分点 + val offset = 0.1f + val triangleX = x + cos(angle.toDouble()).toFloat() * offset + val triangleY = y + sin(angle.toDouble()).toFloat() * offset + + // 计算旋转角度,使底边朝向圆心 + val rotationAngle = (i - 90).toFloat() // 使底边朝向圆心 + + GL11.glLineWidth(5f * getExtraWidth()) + drawTriangle(triangleX / 1.35f, triangleY / 1.35f, 0.012f, 0.1f, rotationAngle) + } + i += 90 + } + + GL11.glDisable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + + GL11.glPopMatrix() + } + + private fun drawReisaHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + + GlStateManager.enableBlend() + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + color(Color(200, 200, 250, 220).rgb) + + // 绘制大五角星 + GL11.glLineWidth(3.0f * getExtraWidth()) + drawStar(0.0f, 0.0f, 0.3f) // 半径为0.3的五角星 + + // 绘制小五角星 + GL11.glPushMatrix() + GL11.glRotatef(36f, 0f, 0f, 1f) // 旋转角度,使小五角星的尖端对准外部五角星的凹陷部分 + drawStar(0.0f, 0.0f, 0.14f) // 半径为0.15的五角星 + GL11.glPopMatrix() + + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + GL11.glDisable(GL11.GL_LINE_SMOOTH) + + GL11.glPopMatrix() + } + + private fun drawNatsuHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GlStateManager.enableBlend() + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + color(Color(254, 200, 200, 240).rgb) + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + // 绘制外圈 + GL11.glLineWidth(3.5f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.3f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.3f + ) + i += 5 + } + } + GL11.glEnd() + + // 绘制内圈 + GL11.glBegin(GL11.GL_LINE_STRIP) + var i = 0 + while (i <= 360) { + val angle = Math.toRadians(i.toDouble()).toFloat() + val x = cos(angle.toDouble()).toFloat() * 0.15f + val y = sin(angle.toDouble()).toFloat() * 0.15f + + // 绘制外圈的线条 + GL11.glVertex2f(x, y) + + // 在每个四等分点上添加突出效果 + if (i % 90 == 0) { + val offset = 0.05f + val inwardOffset = 0.05f + + // 向外突出顶点 + GL11.glVertex2f( + x + cos(angle.toDouble()).toFloat() * offset, y + sin(angle.toDouble()) + .toFloat() * offset + ) + // 回到原始顶点 + GL11.glVertex2f(x, y) + // 向内突出顶点 + GL11.glVertex2f( + x - cos(angle.toDouble()).toFloat() * inwardOffset, y - sin(angle.toDouble()) + .toFloat() * inwardOffset + ) + // 回到原始顶点 + GL11.glVertex2f(x, y) + } + i += 5 + } + GL11.glEnd() + + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + GL11.glDisable(GL11.GL_LINE_SMOOTH) + + GL11.glPopMatrix() + } + + private fun drawYuukaHalo() { + animations.run(if (isReversing) 0.0 else 0.1) + + if (animations.value == 0.0) isReversing = false + if (animations.value == 0.1) isReversing = true + + val height = mc.thePlayer.height + 0.25f + animations.value + + GL11.glPushMatrix() + GL11.glTranslated( + mc.thePlayer.lastTickPosX + (mc.thePlayer.posX - mc.thePlayer.lastTickPosX) * mc.timer.renderPartialTicks - mc.renderManager.renderPosX, + mc.thePlayer.lastTickPosY + (mc.thePlayer.posY - mc.thePlayer.lastTickPosY) * mc.timer.renderPartialTicks - mc.renderManager.renderPosY + height, + mc.thePlayer.lastTickPosZ + (mc.thePlayer.posZ - mc.thePlayer.lastTickPosZ) * mc.timer.renderPartialTicks - mc.renderManager.renderPosZ + ) + GlStateManager.enableBlend() + GL11.glEnable(GL11.GL_LINE_SMOOTH) + GlStateManager.disableTexture2D() + GlStateManager.disableDepth() + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA) + + val yaw = mc.thePlayer.rotationYaw + + // 使光环中心随玩家朝向旋转 + GL11.glRotatef(-yaw, 0f, 1f, 0f) + GL11.glRotatef(90f, 1f, 0f, 0f) + + // 绘制圆1 + color(Color(80, 150, 180, 250).rgb) + GL11.glLineWidth(2f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + run { + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.292f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.292f + ) + i += 5 + } + } + GL11.glEnd() + + // 绘制圆2 + color(Color(30, 30, 30, 200).rgb) + GL11.glLineWidth(6f * getExtraWidth()) + GL11.glBegin(GL11.GL_LINE_STRIP) + var i = 0 + while (i <= 360) { + GL11.glVertex2f( + cos(Math.toRadians(i.toDouble())).toFloat() * 0.3f, + sin(Math.toRadians(i.toDouble())).toFloat() * 0.3f + ) + i += 5 + } + GL11.glEnd() + + GlStateManager.disableBlend() + GlStateManager.enableTexture2D() + GlStateManager.enableDepth() + GL11.glDisable(GL11.GL_LINE_SMOOTH) + + GL11.glPopMatrix() + } +} \ No newline at end of file diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Crosshair.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Crosshair.kt index 63d1a6e..8991196 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Crosshair.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Crosshair.kt @@ -48,7 +48,7 @@ object Crosshair : Module() { val width = widthValue.get() val size = sizeValue.get() val gap = gapValue.get() - val isMoving = dynamicValue.get() && MovementUtils.isMoving() + val isMoving = dynamicValue.get() && MovementUtils.isMoving GL11.glPushMatrix() RenderUtils.drawBorderedRect(sr.scaledWidth / 2f - width, sr.scaledHeight / 2f - gap - size - if (isMoving) 2 else 0, sr.scaledWidth / 2f + 1.0f + width, sr.scaledHeight / 2f - gap - if (isMoving) 2 else 0, 0.5f, Color(0, 0, 0).rgb, crosshairColor.rgb) RenderUtils.drawBorderedRect(sr.scaledWidth / 2f - width, sr.scaledHeight / 2f + gap + 1 + (if (isMoving) 2 else 0) - 0.15f, sr.scaledWidth / 2f + 1.0f + width, sr.scaledHeight / 2f + 1 + gap + size + (if (isMoving) 2 else 0) - 0.15f, 0.5f, Color(0, 0, 0).rgb, crosshairColor.rgb) diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Trails.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Trails.kt index bf64d4d..a0ce208 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Trails.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/visual/Trails.kt @@ -173,7 +173,7 @@ object Trails : Module() { fun onUpdate(event: UpdateEvent) { val a1in8chance = (1..8).random() var ifrender: Boolean - if (a1in8chance == 1 && MovementUtils.isMoving() && mc.gameSettings.thirdPersonView != 0){ + if (a1in8chance == 1 && MovementUtils.isMoving && mc.gameSettings.thirdPersonView != 0){ ifrender = true } else { ifrender = false diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Breaker.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Breaker.kt index 0b0e433..5f43ca5 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Breaker.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Breaker.kt @@ -179,7 +179,7 @@ object Breaker : Module() { if (!onClickMouse.get() || mc.gameSettings.keyBindAttack.isKeyDown) { if (noMoveValue.get()) { - if (MovementUtils.isMoving()) { + if (MovementUtils.isMoving) { firstPos = null firstPosBed = null facing = null diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Timer.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Timer.kt index 212874a..7527606 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Timer.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/Timer.kt @@ -38,11 +38,11 @@ object Timer : Module() { @EventTarget fun onUpdate(event: UpdateEvent) { - if (mode.get() == "Always" || mode.get() == "OnMove" && isMoving() || mode.get() == "NoMove" && !isMoving()) { + if (mode.get() == "Always" || mode.get() == "OnMove" && isMoving || mode.get() == "NoMove" && !isMoving) { if (bypass.equals("Normal")) { mc.timer.timerSpeed = speed.get() } else { - if (isMoving()) { + if (isMoving) { if (!start) { mc.timer.timerSpeed = 0.1f ticks++ diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold.kt index 6fdda83..93c1b71 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold.kt @@ -323,24 +323,24 @@ class Scaffold : Module() { } "telly", "tellyup" -> { canSameY = sameYValue.equals("Telly") - if (MovementUtils.isMoving() && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.onGround) { mc.thePlayer.isSprinting = true mc.thePlayer.jump() } } "autojump" -> { canSameY = true - if (MovementUtils.isMoving() && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.onGround) { mc.thePlayer.jump() } } "motiony" -> { canSameY = true - if (MovementUtils.isMoving() && mc.thePlayer.onGround) mc.thePlayer.motionY = 0.42 + if (MovementUtils.isMoving && mc.thePlayer.onGround) mc.thePlayer.motionY = 0.42 } "jumpupy" -> { canSameY = false - if (MovementUtils.isMoving() && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.onGround) { mc.thePlayer.jump() } } @@ -349,7 +349,7 @@ class Scaffold : Module() { } "hypixel" -> { canSameY = true - if (MovementUtils.isMoving() && mc.thePlayer.onGround) { + if (MovementUtils.isMoving && mc.thePlayer.onGround) { hypixelPlaceTicks = false mc.thePlayer.jump() } else { @@ -598,7 +598,7 @@ class Scaffold : Module() { mc.gameSettings.keyBindBack.isKeyDown) && mc.gameSettings.keyBindJump.isKeyDown } "onlymove" -> { - towerStatus = MovementUtils.isMoving() && mc.gameSettings.keyBindJump.isKeyDown + towerStatus = MovementUtils.isMoving && mc.gameSettings.keyBindJump.isKeyDown } } } @@ -901,7 +901,7 @@ class Scaffold : Module() { jumpGround = mc.thePlayer.posY mc.thePlayer.motionY = 0.41999998688698 } - if (mc.thePlayer.posY > jumpGround + 1.04 && MovementUtils.isMoving()) { + if (mc.thePlayer.posY > jumpGround + 1.04 && MovementUtils.isMoving) { fakeJump() mc.thePlayer.setPosition(mc.thePlayer.posX, mc.thePlayer.posY, mc.thePlayer.posZ) mc.thePlayer.motionY = 0.45 @@ -1457,7 +1457,7 @@ class Scaffold : Module() { } val canSprint: Boolean - get() = MovementUtils.isMoving() && when (sprintValue.get().lowercase()) { + get() = MovementUtils.isMoving && when (sprintValue.get().lowercase()) { "always", "dynamic", "vulcan", "hypixelfast", "hypixelskywars" -> true "onground" -> mc.thePlayer.onGround "offground" -> !mc.thePlayer.onGround diff --git a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold2.kt b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold2.kt index d053b2e..0a528a6 100644 --- a/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold2.kt +++ b/src/main/java/net/ccbluex/liquidbounce/features/module/modules/world/scaffold/Scaffold2.kt @@ -127,7 +127,7 @@ class Scaffold2 : Module() { ListValue("Sprint", arrayOf("Always", "Dynamic", "Smart", "OnGround", "OffGround", "OFF"), "Always") private val towerNoSprintSwitch = BoolValue("TowerNoSprintSwitch", false) val canSprint: Boolean - get() = MovementUtils.isMoving() && when (sprintValue.get().lowercase()) { + get() = MovementUtils.isMoving && when (sprintValue.get().lowercase()) { "always", "dynamic" -> true "smart" -> { if (mc.thePlayer != null && RotationUtils.targetRotation != null) { @@ -175,7 +175,7 @@ class Scaffold2 : Module() { private val expandLengthValue = IntegerValue("ExpandLength", 0, 0, 6) private val shouldExpand - get() = expandLengthValue.get() != 0 && !(jumpCheckValue.get() && mc.gameSettings.keyBindJump.isKeyDown) && !(downCheckValue.get() && shouldGoDown) && (!expandOnlyMove.get() || (MovementUtils.isMoving() || (expandOnlyMoveOnlyGround.get() && !mc.thePlayer.onGround))) + get() = expandLengthValue.get() != 0 && !(jumpCheckValue.get() && mc.gameSettings.keyBindJump.isKeyDown) && !(downCheckValue.get() && shouldGoDown) && (!expandOnlyMove.get() || (MovementUtils.isMoving || (expandOnlyMoveOnlyGround.get() && !mc.thePlayer.onGround))) // Rotation Options private val rotationValues = arrayOf("Off", "Normal", "AAC", "GodBridge", "MoveDirection", "Custom") @@ -566,7 +566,7 @@ class Scaffold2 : Module() { } // AutoJump if (mc.thePlayer.onGround - && MovementUtils.isMoving() + && MovementUtils.isMoving && !mc.thePlayer.isInLava && !mc.thePlayer.isInWater && !mc.thePlayer.isInWeb diff --git a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayer.java b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayer.java index fddca07..66c6340 100644 --- a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayer.java +++ b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayer.java @@ -12,6 +12,7 @@ import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.entity.player.PlayerCapabilities; import net.minecraft.item.ItemStack; +import net.minecraft.stats.StatBase; import net.minecraft.util.FoodStats; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -62,6 +63,9 @@ public abstract class MixinEntityPlayer extends MixinEntityLivingBase { @Shadow public abstract void fall(float p_fall_1_, float p_fall_2_); @Shadow public float cameraYaw; + + @Shadow public abstract void func_175145_a(StatBase p_175145_1_); + @Unique private ItemStack fDP1$cooldownStack; @Unique diff --git a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayerSP.java b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayerSP.java index 17b12a2..3891f6c 100644 --- a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayerSP.java +++ b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/entity/MixinEntityPlayerSP.java @@ -419,21 +419,9 @@ public void onLivingUpdate() { if (Objects.requireNonNull(scaffold).getState()) { this.setSprinting(scaffold.getCanSprint()); } - if (killAura != null && killAura.getCurrentTarget() != null) { - switch (killAura.getSprintmode().toString()) { - case "Ground": - if (MovementUtils.INSTANCE.isMoving()) { - this.setSprinting(mc.thePlayer.onGround); - } - break; - case "StopSprint": - if (MovementUtils.INSTANCE.isMoving()) { - this.setSprinting(false); - } - break; - case "AttackSlow": - mc.thePlayer.attackTargetEntityWithCurrentItem(killAura.getCurrentTarget()); - break; + if (killAura != null && killAura.getCurrentTarget() != null && KillAura.INSTANCE.getSprintmode().get().equals("StopSprint") && killAura.getState()) { + if (MovementUtils.INSTANCE.isMoving()) { + this.setSprinting(false); } } diff --git a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/network/MixinNetworkManager.java b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/network/MixinNetworkManager.java index d10af85..9c1af90 100644 --- a/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/network/MixinNetworkManager.java +++ b/src/main/java/net/ccbluex/liquidbounce/injection/forge/mixins/network/MixinNetworkManager.java @@ -39,8 +39,8 @@ public class MixinNetworkManager { * @reason BackTrackFix */ @Overwrite - protected void channelRead0(ChannelHandlerContext p_channelRead0_1_, Packet p_channelRead0_2_) throws Exception { - final PacketEvent event = new PacketEvent(p_channelRead0_2_,EventState.RECEIVE); + protected void channelRead0(ChannelHandlerContext p_channelRead0_1_, Packet p_channelRead0_2_) { + final PacketEvent event = new PacketEvent(p_channelRead0_2_, EventState.RECEIVE); BackTrack backTrack = FDPClient.moduleManager.getModule(BackTrack.class); assert backTrack != null; if (backTrack.getState()) { @@ -52,7 +52,7 @@ protected void channelRead0(ChannelHandlerContext p_channelRead0_1_, Packet p_ch } FDPClient.eventManager.callEvent(event); - if(event.isCancelled()) + if (event.isCancelled()) return; if (this.channel.isOpen()) { try { @@ -78,7 +78,7 @@ private void send(Packet packet, CallbackInfo callback) { } FDPClient.eventManager.callEvent(event); - if(event.isCancelled()) { + if (event.isCancelled()) { callback.cancel(); } } @@ -88,9 +88,8 @@ private void send(Packet packet, CallbackInfo callback) { */ @Inject(method = "getIsencrypted", at = @At("HEAD"), cancellable = true) private void getIsencrypted(CallbackInfoReturnable cir) { - if(Animations.INSTANCE.getFlagRenderTabOverlay()) { + if (Animations.INSTANCE.getFlagRenderTabOverlay()) { cir.setReturnValue(true); } } - } diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/CapeImageBuffer.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/CapeImageBuffer.kt deleted file mode 100644 index becd8f5..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/CapeImageBuffer.kt +++ /dev/null @@ -1,44 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// -package net.ccbluex.liquidbounce.memoryfix - -import net.minecraft.client.entity.AbstractClientPlayer -import net.minecraft.client.renderer.IImageBuffer -import net.minecraft.client.renderer.ImageBufferDownload -import net.minecraft.util.ResourceLocation -import java.awt.image.BufferedImage -import java.lang.ref.WeakReference - -class CapeImageBuffer(player: AbstractClientPlayer?, private val resourceLocation: ResourceLocation) : IImageBuffer { - var imageBufferDownload: ImageBufferDownload = ImageBufferDownload() - private val playerRef: WeakReference = WeakReference(player) - - fun func_78432_a(image: BufferedImage): BufferedImage? { - return parseCape(image) - } - - fun func_152634_a() { - val player = playerRef.get() - if (player != null) { - setLocationOfCape(player, this.resourceLocation) - } - } - - override fun parseUserSkin(bufferedImage: BufferedImage): BufferedImage? { - return null - } - - override fun skinAvailable() { - } - - companion object { - private fun parseCape(image: BufferedImage): BufferedImage? { - return null - } - - private fun setLocationOfCape(player: AbstractClientPlayer, resourceLocation: ResourceLocation) { - } - } -} \ No newline at end of file diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/ClassTransformer.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/ClassTransformer.kt deleted file mode 100644 index e2bb51a..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/ClassTransformer.kt +++ /dev/null @@ -1,126 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// -package net.ccbluex.liquidbounce.memoryfix - -import net.minecraft.launchwrapper.IClassTransformer -import org.objectweb.asm.ClassReader -import org.objectweb.asm.ClassWriter -import org.objectweb.asm.commons.Remapper -import org.objectweb.asm.commons.RemappingClassAdapter -import org.objectweb.asm.tree.AbstractInsnNode -import org.objectweb.asm.tree.ClassNode -import org.objectweb.asm.tree.MethodInsnNode -import org.objectweb.asm.tree.MethodNode -import java.util.function.BiConsumer -import java.util.function.Consumer - -class ClassTransformer : IClassTransformer { - override fun transform(name: String, transformedName: String, bytes: ByteArray): ByteArray { - return if (name == "CapeUtils") { - transformCapeUtils(bytes) - } else if (name == "io.prplz.net.ccbluex.liquidbounce.memoryfix.CapeImageBuffer") { - transformMethods(bytes) { clazz: ClassNode, method: MethodNode -> - this.transformCapeImageBuffer( - clazz, - method - ) - } - } else if (transformedName == "net.minecraft.client.resources.AbstractResourcePack") { - transformMethods(bytes) { clazz: ClassNode, method: MethodNode -> - this.transformAbstractResourcePack( - clazz, - method - ) - } - } else { - if (transformedName == "net.minecraft.client.Minecraft") this.transformMethods(bytes) { clazz: ClassNode, method: MethodNode -> - this.transformMinecraft( - clazz, - method - ) - } else bytes - } - } - - private fun transformMethods(bytes: ByteArray, transformer: BiConsumer): ByteArray { - val classReader = ClassReader(bytes) - val classNode = ClassNode() - classReader.accept(classNode, 0) - classNode.methods.forEach(Consumer { m: MethodNode -> - transformer.accept(classNode, m) - }) - val classWriter = ClassWriter(0) - classNode.accept(classWriter) - return classWriter.toByteArray() - } - - private fun transformCapeUtils(bytes: ByteArray): ByteArray { - val classWriter = ClassWriter(2) - val adapter = RemappingClassAdapter(classWriter, object : Remapper() { - override fun map(typeName: String): String { - return if (typeName == "CapeUtils$1") "io.prplz.net.ccbluex.liquidbounce.memoryfix.CapeImageBuffer".replace( - '.', - '/' - ) else typeName - } - }) - val classReader = ClassReader(bytes) - classReader.accept(adapter, 8) - return classWriter.toByteArray() - } - - private fun transformCapeImageBuffer(clazz: ClassNode, method: MethodNode) { - val iter: ListIterator<*> = method.instructions.iterator() - - while (iter.hasNext()) { - val insn = iter.next() as AbstractInsnNode - if (insn is MethodInsnNode) { - if (insn.name == "parseCape") { - insn.owner = "CapeUtils" - } else if (insn.name == "setLocationOfCape") { - insn.opcode = 182 - insn.owner = "net/minecraft/client/entity/AbstractClientPlayer" - insn.desc = "(Lnet/minecraft/util/ResourceLocation;)V" - } - } - } - } - - private fun transformAbstractResourcePack(clazz: ClassNode, method: MethodNode) { - if ((method.name == "getPackImage" || method.name == "func_110586_a") && (method.desc == "()Ljava/awt/image/BufferedImage;")) { - val iter: ListIterator<*> = method.instructions.iterator() - - while (iter.hasNext()) { - val insn = iter.next() as AbstractInsnNode - if (insn.opcode == 176) { - method.instructions.insertBefore( - insn, - MethodInsnNode( - 184, - "io.prplz.net.ccbluex.liquidbounce.memoryfix.ResourcePackImageScaler".replace('.', '/'), - "scalePackImage", - "(Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;", - false - ) - ) - } - } - } - } - - private fun transformMinecraft(clazz: ClassNode, method: MethodNode) { - val iter: MutableListIterator<*> = method.instructions.iterator() - - while (iter.hasNext()) { - val insn = iter.next() as AbstractInsnNode - if (insn.opcode == 184) { - val methodInsn = insn as MethodInsnNode - if (methodInsn.owner == "java/lang/System" && methodInsn.name == "gc") { - iter.remove() - } - } - } - } -} diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/FMLLoadingPlugin.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/FMLLoadingPlugin.kt deleted file mode 100644 index 196ac10..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/FMLLoadingPlugin.kt +++ /dev/null @@ -1,30 +0,0 @@ -package net.ccbluex.liquidbounce.memoryfix - -import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin -import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin.MCVersion -import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin.SortingIndex - -@MCVersion("1.8.9") -@SortingIndex(1001) -class FMLLoadingPlugin : IFMLLoadingPlugin { - override fun getASMTransformerClass(): Array { - return arrayOf( - ClassTransformer::class.java.name - ) - } - - override fun getModContainerClass(): String? { - return null - } - - override fun getSetupClass(): String? { - return null - } - - override fun injectData(data: Map) { - } - - override fun getAccessTransformerClass(): String? { - return null - } -} \ No newline at end of file diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/MemoryFix.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/MemoryFix.kt deleted file mode 100644 index 660b825..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/MemoryFix.kt +++ /dev/null @@ -1,41 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// -package net.ccbluex.liquidbounce.memoryfix - -import net.ccbluex.liquidbounce.memoryfix.UpdateChecker.UpdateResponse -import net.minecraft.client.Minecraft -import net.minecraft.util.IChatComponent -import net.minecraftforge.common.MinecraftForge -import net.minecraftforge.fml.common.Mod -import net.minecraftforge.fml.common.event.FMLInitializationEvent -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent -import net.minecraftforge.fml.common.gameevent.TickEvent.ClientTickEvent - -@Mod(modid = "memoryfix", useMetadata = true, acceptedMinecraftVersions = "[1.8.9]") -class MemoryFix { - private var messageDelay = 0 - private var updateMessage: IChatComponent? = null - - @Mod.EventHandler - fun init(event: FMLInitializationEvent?) { - MinecraftForge.EVENT_BUS.register(this) - val updateUrl = System.getProperty( - "net.ccbluex.liquidbounce.memoryfix.updateurl", - "https://mods.purple.services/update/check/MemoryFix/0.3" - ) - val updater = UpdateChecker(updateUrl) { res: UpdateResponse -> - this.updateMessage = res.updateMessage - } - updater.start() - } - - @SubscribeEvent - fun onTick(event: ClientTickEvent?) { - if (this.updateMessage != null && (Minecraft.getMinecraft().thePlayer != null) && (++this.messageDelay == 80)) { - Minecraft.getMinecraft().thePlayer.addChatMessage(this.updateMessage) - this.updateMessage = null - } - } -} \ No newline at end of file diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/ResourcePackImageScaler.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/ResourcePackImageScaler.kt deleted file mode 100644 index 0dfb721..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/ResourcePackImageScaler.kt +++ /dev/null @@ -1,27 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// -package net.ccbluex.liquidbounce.memoryfix - -import java.awt.image.BufferedImage -import java.awt.image.ImageObserver -import java.io.IOException - -object ResourcePackImageScaler { - const val SIZE: Int = 64 - - @Throws(IOException::class) - fun scalePackImage(image: BufferedImage?): BufferedImage? { - if (image == null) { - return null - } else { - println("Scaling resource pack icon from " + image.width + " to " + 64) - val smallImage = BufferedImage(64, 64, 2) - val graphics = smallImage.graphics - graphics.drawImage(image, 0, 0, 64, 64, null as ImageObserver?) - graphics.dispose() - return smallImage - } - } -} diff --git a/src/main/java/net/ccbluex/liquidbounce/memoryfix/UpdateChecker.kt b/src/main/java/net/ccbluex/liquidbounce/memoryfix/UpdateChecker.kt deleted file mode 100644 index 7789ff1..0000000 --- a/src/main/java/net/ccbluex/liquidbounce/memoryfix/UpdateChecker.kt +++ /dev/null @@ -1,102 +0,0 @@ -// -// Source code recreated from a .class file by IntelliJ IDEA -// (powered by FernFlower decompiler) -// -package net.ccbluex.liquidbounce.memoryfix - -import com.google.gson.FieldNamingPolicy -import com.google.gson.Gson -import com.google.gson.GsonBuilder -import net.minecraft.util.ChatStyle -import net.minecraft.util.EnumTypeAdapterFactory -import net.minecraft.util.IChatComponent -import net.minecraftforge.common.ForgeVersion -import java.io.IOException -import java.io.InputStreamReader -import java.net.HttpURLConnection -import java.net.URL -import java.util.function.Consumer - -class UpdateChecker(private val url: String, private val callback: Consumer) : Thread() { - private val gson: Gson = GsonBuilder().registerTypeHierarchyAdapter( - IChatComponent::class.java, IChatComponent.Serializer() - ).registerTypeHierarchyAdapter(ChatStyle::class.java, ChatStyle.Serializer()) - .registerTypeAdapterFactory(EnumTypeAdapterFactory()).setFieldNamingPolicy( - FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES - ).create() - - override fun run() { - var retry = 0 - - while (retry < 3) { - try { - val response = this.check(this.url) - - try { - callback.accept(response) - } catch (var5: Exception) { - var5.printStackTrace() - } - - return - } catch (var6: Exception) { - println("GET " + this.url + " failed:") - println(var6.toString()) - - try { - sleep(10000L) - } catch (var4: InterruptedException) { - return - } - - ++retry - } - } - } - - @Throws(IOException::class) - private fun check(url: String): UpdateResponse { - var con: HttpURLConnection? = null - - val var7: Any - try { - con = URL(url).openConnection() as HttpURLConnection - con.requestMethod = "GET" - val agent = - "Java/" + System.getProperty("java.version") + " " + "Forge/" + ForgeVersion.getVersion() + " " + System.getProperty( - "os.name" - ) + " " + System.getProperty("os.arch") + " " - con.setRequestProperty("User-Agent", agent) - val response = con.responseCode - if (response != 200) { - throw IOException("HTTP $response") - } - - val `in` = InputStreamReader(con.inputStream, "UTF-8") - var var6: Throwable? = null - - try { - var7 = gson.fromJson(`in`, UpdateResponse::class.java) as UpdateResponse - } catch (var23: Throwable) { - var6 = var23 - throw var23 - } finally { - if (var6 != null) { - try { - `in`.close() - } catch (var22: Throwable) { - var6.addSuppressed(var22) - } - } else { - `in`.close() - } - } - } finally { - con?.disconnect() - } - - return var7 as UpdateResponse - } - - class UpdateResponse(@JvmField val updateMessage: IChatComponent) -} diff --git a/src/main/java/net/ccbluex/liquidbounce/rawinput/RawInput.kt b/src/main/java/net/ccbluex/liquidbounce/rawinput/RawInput.kt index 7807de2..46038a3 100644 --- a/src/main/java/net/ccbluex/liquidbounce/rawinput/RawInput.kt +++ b/src/main/java/net/ccbluex/liquidbounce/rawinput/RawInput.kt @@ -54,7 +54,8 @@ class RawInput { // check if mouse is moving if (px < -eps || px > eps || py < -eps || py > eps) { mouse = controller - Minecraft.getMinecraft().thePlayer.addChatMessage( + val player = Minecraft.getMinecraft().thePlayer ?: return@Thread + player.addChatMessage( ChatComponentText( EnumChatFormatting.GREEN.toString() + "[RawInput] Found mouse" ) diff --git a/src/main/java/net/ccbluex/liquidbounce/script/api/ScriptModule.kt b/src/main/java/net/ccbluex/liquidbounce/script/api/ScriptModule.kt index 5718520..3304f93 100644 --- a/src/main/java/net/ccbluex/liquidbounce/script/api/ScriptModule.kt +++ b/src/main/java/net/ccbluex/liquidbounce/script/api/ScriptModule.kt @@ -138,6 +138,9 @@ class ScriptModule(private val moduleObject: JSObject) : Module() { @EventTarget fun onWorld(worldEvent: WorldEvent) = callEvent("world", worldEvent) + @EventTarget + fun onGameLoop(gameLoopEvent: GameLoopEvent) = callEvent("gameloop",gameLoopEvent) + @EventTarget fun onSession(sessionEvent: SessionEvent) = callEvent("session") diff --git a/src/main/java/net/ccbluex/liquidbounce/utils/Animation.java b/src/main/java/net/ccbluex/liquidbounce/utils/Animation.java new file mode 100644 index 0000000..d942a43 --- /dev/null +++ b/src/main/java/net/ccbluex/liquidbounce/utils/Animation.java @@ -0,0 +1,69 @@ +package net.ccbluex.liquidbounce.utils; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class Animation { + + private Easing easing; + private long duration; + private long millis; + private long startTime; + + private double startValue; + private double destinationValue; + public double value; + private boolean finished; + + public Animation(final Easing easing, final long duration) { + this.easing = easing; + this.startTime = System.currentTimeMillis(); + this.duration = duration; + } + + /** + * Updates the animation by using the easing function and time + * + * @param destinationValue the value that the animation is going to reach + */ + public void run(final double destinationValue) { + this.millis = System.currentTimeMillis(); + if (this.destinationValue != destinationValue) { + this.destinationValue = destinationValue; + this.reset(); + } else { + this.finished = this.millis - this.duration > this.startTime; + if (this.finished) { + this.value = destinationValue; + return; + } + } + + final double result = this.easing.getFunction().apply(this.getProgress()); + if (this.value > destinationValue) { + this.value = this.startValue - (this.startValue - destinationValue) * result; + } else { + this.value = this.startValue + (destinationValue - this.startValue) * result; + } + } + + /** + * Returns the progress of the animation + * + * @return value between 0 and 1 + */ + public double getProgress() { + return (double) (System.currentTimeMillis() - this.startTime) / (double) this.duration; + } + + /** + * Resets the animation to the start value + */ + public void reset() { + this.startTime = System.currentTimeMillis(); + this.startValue = value; + this.finished = false; + } +} diff --git a/src/main/java/net/ccbluex/liquidbounce/utils/Easing.java b/src/main/java/net/ccbluex/liquidbounce/utils/Easing.java new file mode 100644 index 0000000..c414359 --- /dev/null +++ b/src/main/java/net/ccbluex/liquidbounce/utils/Easing.java @@ -0,0 +1,58 @@ +package net.ccbluex.liquidbounce.utils; + +import org.apache.commons.lang3.StringUtils; + +import java.util.function.Function; + +import static java.lang.Math.pow; +import static java.lang.Math.sin; + +/** + * This is the easing class which is used to manage the different easing functions. + * Each function is supposed to return a value between 0 and 1. + * More easing functions can be found here: ... + * + * @author Patrick + */ +public enum Easing { + LINEAR(x -> x), + EASE_IN_QUAD(x -> x * x), + EASE_OUT_QUAD(x -> x * (2 - x)), + EASE_IN_OUT_QUAD(x -> x < 0.5 ? 2 * x * x : -1 + (4 - 2 * x) * x), + EASE_IN_CUBIC(x -> x * x * x), + EASE_OUT_CUBIC(x -> (--x) * x * x + 1), + EASE_IN_OUT_CUBIC(x -> x < 0.5 ? 4 * x * x * x : (x - 1) * (2 * x - 2) * (2 * x - 2) + 1), + EASE_IN_QUART(x -> x * x * x * x), + EASE_OUT_QUART(x -> 1 - (--x) * x * x * x), + EASE_IN_OUT_QUART(x -> x < 0.5 ? 8 * x * x * x * x : 1 - 8 * (--x) * x * x * x), + EASE_IN_QUINT(x -> x * x * x * x * x), + EASE_OUT_QUINT(x -> 1 + (--x) * x * x * x * x), + EASE_IN_OUT_QUINT(x -> x < 0.5 ? 16 * x * x * x * x * x : 1 + 16 * (--x) * x * x * x * x), + EASE_IN_SINE(x -> 1 - Math.cos(x * Math.PI / 2)), + EASE_OUT_SINE(x -> sin(x * Math.PI / 2)), + EASE_IN_OUT_SINE(x -> 1 - Math.cos(Math.PI * x / 2)), + EASE_IN_EXPO(x -> x == 0 ? 0 : pow(2, 10 * x - 10)), + EASE_OUT_EXPO(x -> x == 1 ? 1 : 1 - pow(2, -10 * x)), + EASE_IN_OUT_EXPO(x -> x == 0 ? 0 : x == 1 ? 1 : x < 0.5 ? pow(2, 20 * x - 10) / 2 : (2 - pow(2, -20 * x + 10)) / 2), + EASE_IN_CIRC(x -> 1 - Math.sqrt(1 - x * x)), + EASE_OUT_CIRC(x -> Math.sqrt(1 - (--x) * x)), + EASE_IN_OUT_CIRC(x -> x < 0.5 ? (1 - Math.sqrt(1 - 4 * x * x)) / 2 : (Math.sqrt(1 - 4 * (x - 1) * x) + 1) / 2), + SIGMOID(x -> 1 / (1 + Math.exp(-x))), + EASE_OUT_ELASTIC(x -> x == 0 ? 0 : x == 1 ? 1 : pow(2, -10 * x) * sin((x * 10 - 0.75) * ((2 * Math.PI) / 3)) * 0.5 + 1), + EASE_IN_BACK(x -> (1.70158 + 1) * x * x * x - 1.70158 * x * x); + + private final Function function; + + Easing(final Function function) { + this.function = function; + } + + public Function getFunction() { + return function; + } + + @Override + public String toString() { + return StringUtils.capitalize(super.toString().toLowerCase().replace("_"," ")); + } +} diff --git a/src/main/java/net/ccbluex/liquidbounce/utils/MovementUtils.kt b/src/main/java/net/ccbluex/liquidbounce/utils/MovementUtils.kt index 1dfbd05..8966420 100644 --- a/src/main/java/net/ccbluex/liquidbounce/utils/MovementUtils.kt +++ b/src/main/java/net/ccbluex/liquidbounce/utils/MovementUtils.kt @@ -48,16 +48,15 @@ object MovementUtils : MinecraftInstance() { move(getSpeed()) } - fun isMoving(): Boolean { - return mc.thePlayer != null && (mc.thePlayer.movementInput.moveForward != 0f || mc.thePlayer.movementInput.moveStrafe != 0f) - } + val isMoving + get() = mc.thePlayer?.movementInput?.run { moveForward != 0f || moveStrafe != 0f } ?: false fun hasMotion(): Boolean { return mc.thePlayer.motionX != 0.0 && mc.thePlayer.motionZ != 0.0 && mc.thePlayer.motionY != 0.0 } fun strafe(speed: Float) { - if (!isMoving()) return + if (!isMoving) return mc.thePlayer.motionX = -sin(direction) * speed mc.thePlayer.motionZ = cos(direction) * speed } @@ -76,7 +75,7 @@ object MovementUtils : MinecraftInstance() { fun doTargetStrafe(curTarget: EntityLivingBase, direction_: Float, radius: Float, moveEvent: MoveEvent, mathRadius: Int = 0) { - if(!isMoving()) return + if(!isMoving) return var forward_: Double var strafe_ = 0.0 @@ -129,7 +128,7 @@ object MovementUtils : MinecraftInstance() { } fun move(speed: Float) { - if (!isMoving()) return + if (!isMoving) return val yaw = direction mc.thePlayer.motionX += -sin(yaw) * speed mc.thePlayer.motionZ += cos(yaw) * speed diff --git a/src/main/java/net/ccbluex/liquidbounce/utils/PacketUtils.kt b/src/main/java/net/ccbluex/liquidbounce/utils/PacketUtils.kt index 8145783..3a61c07 100644 --- a/src/main/java/net/ccbluex/liquidbounce/utils/PacketUtils.kt +++ b/src/main/java/net/ccbluex/liquidbounce/utils/PacketUtils.kt @@ -178,12 +178,22 @@ object PacketUtils : MinecraftInstance(), Listenable { handlePacket(it) val packetEvent = PacketEvent(it, EventState.RECEIVE) FakeLag.onPacket(packetEvent) + Velocity.onPacket(packetEvent) } queuedPackets.clear() } } + @EventTarget(priority = -1) + fun onDisconnect(event: WorldEvent) { + if (event.worldClient == null) { + synchronized(queuedPackets) { + queuedPackets.clear() + } + } + } + fun getPacketType(packet: Packet<*>): PacketType { val className = packet.javaClass.simpleName if (className.startsWith("C", ignoreCase = true)) { diff --git a/src/main/java/net/ccbluex/liquidbounce/utils/item/ItemUtils.kt b/src/main/java/net/ccbluex/liquidbounce/utils/item/ItemUtils.kt index 4fc8bce..1e440e6 100644 --- a/src/main/java/net/ccbluex/liquidbounce/utils/item/ItemUtils.kt +++ b/src/main/java/net/ccbluex/liquidbounce/utils/item/ItemUtils.kt @@ -8,6 +8,7 @@ package net.ccbluex.liquidbounce.utils.item import net.ccbluex.liquidbounce.utils.RegexUtils import net.minecraft.enchantment.Enchantment import net.minecraft.item.ItemArmor +import net.minecraft.item.ItemPotion import net.minecraft.item.ItemStack import kotlin.math.roundToInt @@ -181,4 +182,6 @@ object ItemUtils { HAS_DISPLAY_TAG, NONE // for default } + + fun ItemStack.isSplashPotion() = item is ItemPotion && ItemPotion.isSplash(metadata) } \ No newline at end of file