-
Notifications
You must be signed in to change notification settings - Fork 2
/
HitboxDesyncModule.java
37 lines (31 loc) · 1.41 KB
/
HitboxDesyncModule.java
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
package me.mioclient.impl.modules.exploit;
import me.mioclient.api.module.Category;
import me.mioclient.api.module.Module;
import me.mioclient.impl.events.TickEvent;
import me.mioclient.api.events.Subscribe;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.math.Direction;
import net.minecraft.util.math.Vec3d;
public class HitboxDesyncModule extends Module {
private static final double MAGIC_OFFSET = .200009968835369999878673424677777777777761;
public HitboxDesyncModule() {
super("HitboxDesync", "Crashes chinese crystal auras.", Category.EXPLOIT);
}
//china code
@Subscribe private void onTick(TickEvent event) {
if (mc.world == null) return;
Direction f = mc.player.getHorizontalFacing();
Box bb = mc.player.getBoundingBox();
Vec3d center = bb.getCenter();
Vec3d offset = new Vec3d(f.getUnitVector());
Vec3d fin = merge(Vec3d.of(BlockPos.ofFloored(center)).add(.5, 0, .5).add(offset.multiply(MAGIC_OFFSET)), f);
mc.player.setPosition(fin.x == 0 ? mc.player.getX() : fin.x,
mc.player.getY(),
fin.z == 0 ? mc.player.getZ() : fin.z);
disable();
}
private Vec3d merge(Vec3d a, Direction facing) {
return new Vec3d(a.x * abs(facing.getUnitVector().x()), a.y * abs(facing.getUnitVector().y()), a.z * abs(facing.getUnitVector().z()));
}
}