1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
package net.justlearning.arslaan3102.arslaansmagichax.modules.impl;
import net.justlearning.arslaan3102.arslaansmagichax.modules.Category;
import net.justlearning.arslaan3102.arslaansmagichax.modules.Module;
import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.BooleanSetting;
import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.NumberSetting;
import net.minecraft.text.Text;
public class Speed extends Module {
private final NumberSetting speed = new NumberSetting("Speed", 0.1, 2.0, 0.4, 0.05);
private final BooleanSetting enableWhileSneaking = new BooleanSetting("Enable while Sneaking", true);
private final BooleanSetting enableInWater = new BooleanSetting("Enable in Water", true);
private final BooleanSetting enableInLava = new BooleanSetting("Enable in Lava", true);
public Speed() {
super("Speed", "Makes you faster.", -1, Category.MOVEMENT);
addSetting(speed);
addSetting(enableWhileSneaking);
addSetting(enableInWater);
addSetting(enableInLava);
}
@Override
protected void onEnable() {
if (mc.player == null) return;
mc.player.sendMessage(Text.literal("[Speed] It is recommended to use this hack in combination with NoFall."), false);
}
@Override
public void tick() {
if (!isEnabled() || mc.player == null) return;
if (!enableWhileSneaking.isEnabled() && mc.player.isSneaking()) return;
if (!enableInLava.isEnabled() && mc.player.isInLava()) return;
if (!enableInWater.isEnabled() && mc.player.isTouchingWater()) return;
float forward = mc.player.forwardSpeed;
float strafe = mc.player.sidewaysSpeed;
float yaw = mc.player.getYaw();
if (forward == 0 && strafe == 0) return;
if (forward != 0) {
if (strafe > 0) yaw += (forward > 0 ? -45 : 45);
else if (strafe < 0) yaw += (forward > 0 ? 45 : -45);
strafe = 0;
forward = forward > 0 ? 1 : -1;
}
double rad = Math.toRadians(yaw);
double sin = Math.sin(rad);
double cos = Math.cos(rad);
double x = (forward * -sin + strafe * cos) * speed.getValue();
double z = (forward * cos - strafe * -sin) * speed.getValue();
mc.player.setVelocity(x, mc.player.getVelocity().y, z);
}
}
|