@@ -35,16 +35,13 @@ import com.lambda.util.player.MovementUtils.addSpeed
3535import com.lambda.util.player.MovementUtils.calcMoveYaw
3636import com.lambda.util.player.MovementUtils.handledByBaritone
3737import com.lambda.util.player.MovementUtils.isInputting
38- import com.lambda.util.player.MovementUtils.jumping
3938import com.lambda.util.player.MovementUtils.motionY
4039import com.lambda.util.player.MovementUtils.moveDelta
4140import com.lambda.util.player.MovementUtils.newMovementInput
4241import com.lambda.util.player.MovementUtils.roundedForward
4342import com.lambda.util.player.MovementUtils.roundedStrafing
4443import com.lambda.util.player.MovementUtils.setSpeed
4544import com.lambda.util.world.entitySearch
46- import net.minecraft.entity.LivingEntity
47- import net.minecraft.entity.decoration.ArmorStandEntity
4845import net.minecraft.entity.vehicle.BoatEntity
4946
5047object Speed : Module(
@@ -56,13 +53,14 @@ object Speed : Module(
5653 val mode by setting(" Mode" , Mode .GRIM_STRAFE ).onValueChange { _, _ -> reset() }
5754
5855 // Grim
59- private val diagonal by setting(" Diagonal" , true ) { mode == Mode .GRIM_STRAFE }
56+ private val diagonal by setting(" Diagonal" , true ).group(Mode .GRIM_STRAFE )
57+ private val grimBoatBoost by setting(" Boat Boost" , 0.4 , 0.0 .. 1.7 , 0.01 ).group(Mode .GRIM_STRAFE )
6058
6159 // NCP
62- private val strict by setting(" Strict" , true ) { mode == Mode .NCP_STRAFE }
63- private val lowerJump by setting(" Lower Jump" , true ) { mode == Mode .NCP_STRAFE }
64- private val ncpAutoJump by setting(" Auto Jump" , false ) { mode == Mode .NCP_STRAFE }
65- private val ncpTimerBoost by setting(" Timer Boost" , 1.08 , 1.0 .. 1.1 , 0.01 ) { mode == Mode .NCP_STRAFE }
60+ private val strict by setting(" Strict" , true ).group( Mode .NCP_STRAFE )
61+ private val lowerJump by setting(" Lower Jump" , true ).group( Mode .NCP_STRAFE )
62+ private val ncpAutoJump by setting(" Auto Jump" , false ).group( Mode .NCP_STRAFE )
63+ private val ncpTimerBoost by setting(" Timer Boost" , 1.08 , 1.0 .. 1.1 , 0.01 ).group( Mode .NCP_STRAFE )
6664
6765 private val rotationConfig = RotationConfig .Instant (RotationMode .Sync )
6866
@@ -91,8 +89,9 @@ object Speed : Module(
9189 return @listen
9290 }
9391
94- if (mode == Mode .NCP_STRAFE ) {
95- handleStrafe()
92+ when (mode) {
93+ Mode .NCP_STRAFE -> handleStrafe()
94+ Mode .GRIM_STRAFE -> handleGrim()
9695 }
9796 }
9897
@@ -131,6 +130,20 @@ object Speed : Module(
131130 }
132131 }
133132
133+ private fun SafeContext.handleGrim () {
134+ var grimSpeed = 0.0
135+
136+ if (grimBoatBoost > 0.0 ) {
137+ grimSpeed + = entitySearch<BoatEntity >(4.0 ) {
138+ player.boundingBox in it.boundingBox.expand(0.01 )
139+ }.sumOf { grimBoatBoost }
140+ }
141+
142+ addSpeed(
143+ if (isInputting) grimSpeed else 0.0
144+ )
145+ }
146+
134147 private fun SafeContext.handleStrafe () {
135148 val shouldJump = player.input.playerInput.jump || (ncpAutoJump && isInputting)
136149
@@ -162,9 +175,7 @@ object Speed : Module(
162175 ncpSpeed = NCP_BASE_SPEED
163176 }
164177
165- ncpSpeed = ncpSpeed
166- .coerceAtMost(1.0 )
167- .coerceAtLeast(NCP_BASE_SPEED )
178+ ncpSpeed = ncpSpeed.coerceIn(1.0 .. NCP_BASE_SPEED )
168179
169180 val moveSpeed = if (isInputting) ncpSpeed else {
170181 ncpSpeed = NCP_BASE_SPEED
@@ -187,4 +198,4 @@ object Speed : Module(
187198 ncpPhase = NCPPhase .SLOWDOWN
188199 ncpSpeed = NCP_BASE_SPEED
189200 }
190- }
201+ }
0 commit comments