Skip to content

Commit

Permalink
works now
Browse files Browse the repository at this point in the history
  • Loading branch information
Nxyi committed Aug 6, 2024
1 parent d424471 commit 42e5292
Showing 1 changed file with 16 additions and 20 deletions.
36 changes: 16 additions & 20 deletions src/main/java/com/dark/zewo2/modules/Fling.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import com.dark.zewo2.Addon;
import com.dark.zewo2.Utils.JinxUtils;
import com.dark.zewo2.Utils.Utils;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.settings.DoubleSetting;
import meteordevelopment.meteorclient.settings.Setting;
Expand All @@ -15,69 +14,66 @@
import net.minecraft.util.Hand;
import net.minecraft.util.math.Vec3d;

import java.util.concurrent.CompletableFuture;

public class Fling extends Module {
private final SettingGroup sgGeneral = settings.getDefaultGroup();
boolean listening = true;


private final Setting<Double> delay = sgGeneral.add(new DoubleSetting.Builder()
private final Setting<Double> power = sgGeneral.add(new DoubleSetting.Builder()
.name("Power")
.description("The power of the fling")
.defaultValue(3)
.sliderRange(1, 3)
.decimalPlaces(0)
.build());

private final Setting<Double> updist = sgGeneral.add(new DoubleSetting.Builder()
.name("Delay")
.description("The delay before going back down")
.defaultValue(250)
.sliderRange(1, 500)
.decimalPlaces(0)
.build());
boolean not = true;

public Fling() {
super(Addon.CATEGORY, "Fling", "Fling players in the air");
}

@Override
public void onActivate() {
listening = true;
}

@EventHandler
public void onPacket(PacketEvent.Send event){
if (event.packet instanceof PlayerInteractItemC2SPacket) {
if (!listening) return;
if (mc.player.getMainHandStack().getItem() != Items.FISHING_ROD || mc.player.fishHook == null || mc.player.fishHook.getHookedEntity() == null) return;

if (mc.player.fishHook.isRemoved()) return;
event.cancel();

double eDistance2Player = mc.player.distanceTo(mc.player.fishHook.getHookedEntity());
double distance = (11 * updist.get()) - (eDistance2Player > 2 ? eDistance2Player : 0);
double distance = (11 * power.get()) - (eDistance2Player > 2 ? eDistance2Player : 0);

int packetsRequired = (int) Math.ceil(Math.abs(distance / 10));

new Thread(() -> {
buildTpRange(packetsRequired);
buildTpRange(packetsRequired, mc.player.getPos());

Vec3d pos = mc.player.getPos();
moveTo(pos.add(0, distance, 0));

JinxUtils.sleep(250);

toggle(); // i cannot be bothered to find if meteor has an eventLess packet util.
listening = false;
mc.player.networkHandler.sendPacket(new PlayerInteractItemC2SPacket(Hand.MAIN_HAND, 0, 0, 0));
toggle();
listening = true;

JinxUtils.sleep(250);

buildTpRange(packetsRequired); // "minecraft resets your movement charge like every tick"
buildTpRange(packetsRequired, pos.add(0, distance, 0)); // "minecraft resets your movement charge like every tick"
mc.player.setVelocity(Vec3d.ZERO);
moveTo(pos.add(0, 0.01, 0));
}).start();

}
}

private void buildTpRange(int amount){
Vec3d p = mc.player.getPos();
private void buildTpRange(int amount, Vec3d currentPos){
Vec3d p = currentPos;

for (int i = 0; i < amount; i++){
mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(p.x, p.y, p.z, true));
Expand Down

0 comments on commit 42e5292

Please sign in to comment.