Skip to content

Commit

Permalink
Added IceSpeed mode to TerrainSpeed module. (CCBlueX#638)
Browse files Browse the repository at this point in the history
  • Loading branch information
mems01 authored Oct 17, 2021
1 parent 1e1dd6c commit 7161fa9
Showing 1 changed file with 30 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,15 @@ package net.ccbluex.liquidbounce.features.module.modules.movement
import net.ccbluex.liquidbounce.config.Choice
import net.ccbluex.liquidbounce.config.ChoiceConfigurable
import net.ccbluex.liquidbounce.config.ToggleableConfigurable
import net.ccbluex.liquidbounce.event.BlockSlipperinessMultiplierEvent
import net.ccbluex.liquidbounce.event.PlayerMoveEvent
import net.ccbluex.liquidbounce.event.handler
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.modules.movement.ModuleTerrainSpeed.IceSpeed.Motion.motion
import net.ccbluex.liquidbounce.utils.block.getBlock
import net.minecraft.block.Block
import net.minecraft.block.Blocks
import net.minecraft.block.LadderBlock
import net.minecraft.block.VineBlock
import net.minecraft.util.math.BlockPos
Expand Down Expand Up @@ -104,10 +108,35 @@ object ModuleTerrainSpeed : Module("TerrainSpeed", Category.MOVEMENT) {

}

// todo: add other terrain speed options
/**
* Ice Speed allows you to manipulate slipperiness speed
*/

private object IceSpeed : ToggleableConfigurable(this, "IceSpeed", true) {

val slipperiness by float("Slipperiness", 0.6f, 0.3f..1f)

object Motion : ToggleableConfigurable(ModuleTerrainSpeed, "Motion", false) {
val motion by float("Motion", 0.5f, 0.2f..1.5f)
}

val iceBlocks = hashSetOf<Block>(Blocks.ICE, Blocks.BLUE_ICE, Blocks.FROSTED_ICE, Blocks.PACKED_ICE)

val blockSlipperinessMultiplierHandler = handler<BlockSlipperinessMultiplierEvent> { event ->
if (event.block in iceBlocks) {
if (Motion.enabled) {
player.velocity.x *= motion
player.velocity.z *= motion
}
event.slipperiness = slipperiness
}
}
}

init {
tree(FastClimb)
tree(IceSpeed)
tree(IceSpeed.Motion)
}

}

0 comments on commit 7161fa9

Please sign in to comment.