Skip to content

Commit

Permalink
SuperUpdate
Browse files Browse the repository at this point in the history
  • Loading branch information
XeContrast committed Dec 6, 2024
1 parent 3a0377d commit 702bfb2
Show file tree
Hide file tree
Showing 173 changed files with 1,549 additions and 420 deletions.
3 changes: 3 additions & 0 deletions src/main/java/net/ccbluex/liquidbounce/FDPClient.kt
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ import net.ccbluex.liquidbounce.ui.i18n.LanguageManager
import net.ccbluex.liquidbounce.ui.sound.TipSoundManager
import net.ccbluex.liquidbounce.utils.*
import net.ccbluex.liquidbounce.utils.misc.HttpUtils
import net.ccbluex.liquidbounce.utils.timing.WaitTickUtils
import net.minecraft.client.Minecraft
import net.minecraft.client.gui.GuiScreen
import net.minecraft.util.ResourceLocation
Expand Down Expand Up @@ -136,10 +137,12 @@ object FDPClient {
eventManager.registerListener(InventoryUtils)
eventManager.registerListener(BungeeCordSpoof())
eventManager.registerListener(ServerSpoof)
eventManager.registerListener(WaitTickUtils)
eventManager.registerListener(SessionUtils())
eventManager.registerListener(StatisticsUtils())
eventManager.registerListener(LocationCache())
eventManager.registerListener(PacketUtils)
eventManager.registerListener(MiniMapRegister)
eventManager.registerListener(macroManager)
eventManager.registerListener(combatManager)

Expand Down
7 changes: 4 additions & 3 deletions src/main/java/net/ccbluex/liquidbounce/event/EventManager.kt
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,10 @@ class EventManager : MinecraftInstance() {
val eventClass = method.parameterTypes[0] as Class<out Event>
val eventTarget = method.getAnnotation(EventTarget::class.java)

val invokableEventTargets = registry.getOrDefault(eventClass, ArrayList())
invokableEventTargets += EventHook(listener, method, eventTarget)
registry[eventClass] = invokableEventTargets.sortedByDescending { it.priority }.toMutableList()
with(registry.getOrPut(eventClass, ::ArrayList)) {
this += EventHook(listener, method, eventTarget)
this.sortByDescending { it.priority }
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,14 @@ import java.util.ArrayList

open class Module : MinecraftInstance(), Listenable {
// Module information

// List to register additional options from classes
private val configurables = mutableListOf<Class<*>>()

fun addConfigurable(provider: Any) {
configurables += provider::class.java
}

var slideStep = 0F
val translate = Translate(0F,0F)
val tab = Translate(0f , 0f)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,13 @@ 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.features.value.ListValue
import net.ccbluex.liquidbounce.script.api.global.Chat
import net.ccbluex.liquidbounce.utils.*
import net.ccbluex.liquidbounce.utils.EntityUtils.isLookingOnEntities
import net.ccbluex.liquidbounce.utils.EntityUtils.isSelected
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.RaycastUtils.runWithModifiedRaycastResult
import net.ccbluex.liquidbounce.utils.extensions.getDistanceToEntityBox
import net.ccbluex.liquidbounce.utils.misc.RandomUtils
import net.ccbluex.liquidbounce.utils.misc.RandomUtils.nextInt
import net.ccbluex.liquidbounce.utils.particles.Vec3
import net.ccbluex.liquidbounce.utils.timer.MSTimer
Expand All @@ -46,29 +48,29 @@ import kotlin.math.atan2
import kotlin.math.floor
import kotlin.math.sqrt

@ModuleInfo(name = "Velocity", category = ModuleCategory.COMBAT)
object Velocity : Module() {
@ModuleInfo(name = "AntiKB", category = ModuleCategory.COMBAT)
object AntiKB : Module() {
private val mainMode =
ListValue("MainMode", arrayOf("Vanilla", "Cancel", "AAC", "Matrix","GrimAC", "Reverse", "Other"), "Vanilla")
ListValue("MainMode", arrayOf("Vanilla", "Cancel", "AAC", "Matrix","GrimAC", "Reverse", "Other").sortedArray(), "Vanilla")
private val vanillaMode =
ListValue(
"VanillaMode",
arrayOf("Jump", "Simple", "Glitch"),
arrayOf("Jump", "Simple", "Glitch").sortedArray(),
"Jump"
).displayable { mainMode.get() == "Vanilla" }
private val grimMode =
ListValue(
"GrimACMode",
arrayOf("GrimReduce","GrimVertical"),
arrayOf("GrimReduce","GrimVertical","GrimClick").sortedArray(),
"GrimReduce"
).displayable { mainMode.get() == "GrimAC" }
private val cancelMode = ListValue(
"CancelMode",
arrayOf("S12Cancel", "S32Cancel", "SendC0F", "HighVersion", "GrimS32Cancel", "GrimC07", "Spoof"),
arrayOf("S12Cancel", "S32Cancel", "SendC0F", "HighVersion", "GrimS32Cancel", "GrimC07", "Spoof").sortedArray(),
"S12Cancel"
).displayable { mainMode.get() in arrayOf("Cancel") }
private val matrixMode = ListValue(
"Mode", arrayOf(
).displayable { mainMode.get() == "Cancel" }
private val matMode = ListValue(
"MatrixMode", arrayOf(
"Ground",
"Attack",
"Reduce",
Expand All @@ -77,21 +79,21 @@ object Velocity : Module() {
"Simple",
"Spoof",
"Clip"
), "Ground"
).sortedArray(), "Ground"
).displayable { mainMode.get() == "Matrix" }
private val aacMode = ListValue(
"AACMode",
arrayOf("AAC4Reduce", "AAC5Reduce","AAC5.2Reduce", "AAC5.2.0", "AAC5Vertical", "AAC5.2.0Combat", "AACPush", "AACZero"),
arrayOf("AAC4Reduce", "AAC5Reduce","AAC5.2Reduce", "AAC5.2.0", "AAC5Vertical", "AAC5.2.0Combat", "AACPush", "AACZero").sortedArray(),
"AAC4Reduce"
).displayable { mainMode.get() == "AAC" }
private val reverseMode = ListValue(
"ReverseMode",
arrayOf("Reverse", "SmoothReverse"),
arrayOf("Reverse", "SmoothReverse").sortedArray(),
"Reverse"
).displayable { mainMode.get() == "Reverse" }
private val otherMode = ListValue(
"OtherMode",
arrayOf("AttackReduce", "IntaveReduce", "Karhu", "Delay", "Phase"),
arrayOf("AttackReduce","BlocksMC", "IntaveReduce", "Karhu", "Delay", "Phase").sortedArray(),
"AttackReduce"
).displayable { mainMode.get() == "Other" }

Expand Down Expand Up @@ -293,6 +295,14 @@ object Velocity : Module() {
private val reduceCount = IntegerValue("ReduceCount",4,1,10).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimReduce" }
private val reduceTimes = IntegerValue("ReduceTimes",1,1,5).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimReduce" }

private val minClick = IntegerValue("MinClicks",3,1,20).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val maxClick = IntegerValue("MaxClicks",3,1,20).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val hurtTimeToClick = IntegerValue("HurtTimeToClick", 10, 0,10).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val whenFacingEnemyOnly = BoolValue("WhenFacingEnemyOnly", true).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val ignoreBlocking = BoolValue("IgnoreBlocking", false).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val clickRange = FloatValue("ClickRange", 3f, 1f,6f).displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}
private val swingMode = ListValue("SwingMode", arrayOf("Off", "Normal", "Packet"), "Normal").displayable { mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick"}

//
private var hasReceivedVelocity = false
private val velocityTimer = MSTimer()
Expand Down Expand Up @@ -496,7 +506,7 @@ object Velocity : Module() {

"matrix" -> {
if (packet is S12PacketEntityVelocity) {
when (matrixMode.get().lowercase()) {
when (matMode.get().lowercase()) {
"spoof" -> {
event.cancelEvent()
mc.netHandler.addToSendQueue(
Expand Down Expand Up @@ -576,6 +586,18 @@ object Velocity : Module() {
}
}

"blocksmc" -> {
if (packet is S12PacketEntityVelocity && packet.entityID == mc.thePlayer.entityId) {
event.cancelEvent()
hasReceivedVelocity = true

PacketUtils.sendPackets(
C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.START_SNEAKING),
C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.STOP_SNEAKING)
)
}
}

"intavereduce", "attackreduce" -> hasReceivedVelocity = true
"phase" -> {
if (packet is S12PacketEntityVelocity) {
Expand Down Expand Up @@ -782,6 +804,13 @@ object Velocity : Module() {
}
}
}

"blocksmc" -> if (hasReceivedVelocity) {
if (packet is C0BPacketEntityAction) {
hasReceivedVelocity = false
event.cancelEvent()
}
}
}
}
}
Expand Down Expand Up @@ -833,6 +862,10 @@ object Velocity : Module() {

@EventTarget
fun onTick(event: GameTickEvent) {
val thePlayer = mc.thePlayer ?: return

mc.theWorld ?: return

if (mainMode.get() == "Cancel" && cancelMode.get() == "GrimC07") {
if (hasReceivedVelocity || alwaysValue.get()) { // packet processed event pls
val pos = BlockPos(mc.thePlayer.posX, mc.thePlayer.posY, mc.thePlayer.posZ)
Expand All @@ -841,13 +874,50 @@ object Velocity : Module() {
}
}
}

if (mainMode.get() == "GrimAC" && grimMode.get() == "GrimClick") {
if (thePlayer.hurtTime != hurtTimeToClick.get() || ignoreBlocking.get() && (thePlayer.isBlocking || KillAura.blockingStatus))
return

var entity = mc.objectMouseOver?.entityHit

if (entity == null) {
if (whenFacingEnemyOnly.get()) {
var result: Entity? = null

runWithModifiedRaycastResult(
RotationUtils.targetRotation ?: thePlayer.rotation,
clickRange.get().toDouble(),
0.0
) { it ->
result = it.entityHit?.takeIf { isSelected(it, true) }
}

entity = result!!
} else getNearestEntityInRange(clickRange.get())?.takeIf { isSelected(it, true) }
}

entity ?: return

val swingHand = {
when (swingMode.get().lowercase()) {
"normal" -> thePlayer.swingItem()
"packet" -> sendPacket(C0APacketAnimation())
}
}
val clicks = nextInt(minClick.get(), maxClick.get())

repeat(clicks) {
thePlayer.attackEntityWithModifiedSprint(entity, true) { swingHand() }
}
}
}

@EventTarget
fun onAttack(event: AttackEvent) {
val player = mc.thePlayer ?: return
when (mainMode.get().lowercase()) {
"matrix" -> when (matrixMode.get().lowercase()) {
"matrix" -> when (matMode.get().lowercase()) {
"attack" -> {
if (hasReceivedVelocity) {
if (player.isSprinting) {
Expand Down Expand Up @@ -949,16 +1019,16 @@ object Velocity : Module() {
when (grimMode.get().lowercase()) {
"grimreduce" -> {
val objectMouseOver = mc.objectMouseOver ?: return
if (unReduceTimes > 0 && mc.thePlayer.hurtTime > 0 && objectMouseOver.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY && objectMouseOver.entityHit is EntityPlayer) {
if (unReduceTimes > 0 && mc.thePlayer.hurtTime > 0 && (objectMouseOver.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY && objectMouseOver.entityHit is EntityPlayer) || (KillAura.handleEvents() && KillAura.currentTarget != null)) {
if (!mc.thePlayer.serverSprintState) {
PacketUtils.sendPacket(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.START_SPRINTING))
sendPacket(C0BPacketEntityAction(mc.thePlayer, C0BPacketEntityAction.Action.START_SPRINTING))
mc.thePlayer.serverSprintState = true
mc.thePlayer.isSprinting = true
}

for (i in 0 until reduceCount.get()) {
mc.thePlayer.swingItem()
PacketUtils.sendPacket(C02PacketUseEntity(mc.objectMouseOver.entityHit,C02PacketUseEntity.Action.ATTACK))
sendPacket(C02PacketUseEntity(mc.objectMouseOver.entityHit,C02PacketUseEntity.Action.ATTACK))

mc.thePlayer.motionX *= 0.6
mc.thePlayer.motionZ *= 0.6
Expand Down Expand Up @@ -1188,7 +1258,7 @@ object Velocity : Module() {
}

"matrix" -> {
when (matrixMode.get().lowercase()) {
when (matMode.get().lowercase()) {
"ground" -> isMatrixOnGround = player.onGround && !mc.gameSettings.keyBindJump.isKeyDown
"clip" -> {
if (player.hurtTime in 1..4 && player.fallDistance > 0) {
Expand Down Expand Up @@ -1462,10 +1532,18 @@ object Velocity : Module() {
return motionNoXZ
}

private fun getNearestEntityInRange(range: Float = this.range.get()): Entity? {
val player = mc.thePlayer ?: return null

return mc.theWorld.loadedEntityList.asSequence().filter {
isSelected(it, true) && player.getDistanceToEntityBox(it) <= range
}.minByOrNull { player.getDistanceToEntityBox(it) }
}

override val tag: String
get() = when (mainMode.get().lowercase()) {
"cancel" -> cancelMode.get()
"matrix" -> matrixMode.get()
"matrix" -> matMode.get()
"other" -> otherMode.get()
"vanilla" -> vanillaMode.get()
"aac" -> aacMode.get()
Expand Down
Loading

0 comments on commit 702bfb2

Please sign in to comment.