Strafe elytra boost SunRise [Rich Ready]

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
8 Янв 2023
Сообщения
43
Реакции
1
Ну типо с экспенсива взял, тем кто не мог перенести от туда на рич базу, ловите

strafe:
Expand Collapse Copy
package toffifree.toffi.game.module.impl.Movement;

import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.MobEffects;
import net.minecraft.item.ItemStack;
import toffifree.toffi.game.event.EventTarget;
import toffifree.toffi.game.event.events.impl.player.EventMove;
import toffifree.toffi.game.event.events.impl.player.EventPreMotion;
import toffifree.toffi.game.event.events.impl.player.EventUpdate;
import toffifree.toffi.game.module.Module;
import toffifree.toffi.game.ui.settings.impl.BooleanSetting;
import toffifree.toffi.game.ui.settings.impl.ListSetting;
import toffifree.toffi.game.ui.settings.impl.NumberSetting;
import toffifree.toffi.game.utils.Helper;
import toffifree.toffi.game.utils.math.TimerHelper;
import toffifree.toffi.game.utils.movement.MoveUtility;
import toffifree.toffi.game.utils.movement.MovementUtils;
import toffifree.toffi.game.utils.otherutils.EventMotion;
import toffifree.toffi.game.module.impl.ModuleCategory;
import net.minecraft.init.Items;
import net.minecraft.inventory.ClickType;
import net.minecraft.network.play.client.CPacketEntityAction;

import java.util.Random;

public class Strafe extends Module {
    public ListSetting mode = new ListSetting("Обход:", "Matrix", "Matrix");
    private float waterTicks = 0;
    public BooleanSetting elytra = new BooleanSetting("Ускорение с элитрой", false);
    public NumberSetting speed2 = new NumberSetting("Скорость", 0.8f, 0.3f, 0.9f, 0.1f, () -> elytra.getCurrentValue());

    TimerHelper timerUtility = new TimerHelper();
    public static double oldSpeed, contextFriction;
    public static boolean needSwap, prevSprint, needSprintState;
    public static int counter, noSlowTicks;
    private int ticks;
    public Strafe() {
        super("Strafe", ModuleCategory.Movement);
        addSettings(mode, elytra, speed2);
    }

    @EventTarget
    public void e(EventMotion e) {
        if (mode.currentMode.equals("Matrix")) {
            if (waterTicks > 0) return;
            if (MoveUtility.isMoving() && MoveUtility.getMotion() <= 0.239385188) {
                if (!e.isOnGround()) {
                    MoveUtility.setStrafe(MoveUtility.reason(false) || mc.player.isHandActive()
                            ? MoveUtility.getMotion() - 0.00001f : 0.245f - (new Random().nextFloat() * 0.000001f));
                }
            }
        }
    }

        @EventTarget
    public void f(EventUpdate f) {
            if (!elytra.getCurrentValue()) return;
            int elytra = getHotbarSlotOfItem();

            if (Helper.mc.player.isInWater() || Helper.mc.player.isInLava() || waterTicks > 0 || elytra == -1 || Helper.mc.player.isInWeb)
                return;
            if (Helper.mc.player.fallDistance != 0 && Helper.mc.player.fallDistance < 0.1 && Helper.mc.player.motionY < -0.1) {
                if (elytra != -2) {
                    Helper.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, Helper.mc.player);
                    Helper.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, Helper.mc.player);
                }
                Helper.mc.getConnection().sendPacket(new CPacketEntityAction(Helper.mc.player, CPacketEntityAction.Action.START_FALL_FLYING));
                Helper.mc.getConnection().sendPacket(new CPacketEntityAction(Helper.mc.player, CPacketEntityAction.Action.START_FALL_FLYING));

                if (elytra != -2) {
                    Helper.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, Helper.mc.player);
                    Helper.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, Helper.mc.player);
                }
            }
        }

    @EventTarget
    public void h(EventPreMotion eventPreMotion) {
        int elytraSlot = getHotbarSlotOfItem();


        if (elytra.getCurrentValue() && elytraSlot != -1) {

            if (MoveUtility.isMoving() && !Helper.mc.player.onGround && Helper.mc.player.fallDistance >= 0.1) {
                MoveUtility.setMotion(speed2.getCurrentValue());
            }
        }
    }

    @Override
    public void onEnable() {
        oldSpeed = 0;
        super.onEnable();
    }

    public boolean strafes() {

        if (Helper.mc.player == null)
            return false;
        if (Helper.mc.player.isSneaking()) {
            return false;
        }
        if (Helper.mc.player.isInLava()) {
            return false;
        }
        if (Helper.mc.player.capabilities.isFlying) {
            return false;
        }
        return true;
    }

    public static double calculateSpeed(EventMove move) {
        Minecraft mc = Minecraft.getMinecraft();
        boolean fromGround = mc.player.onGround;
        boolean toGround = mc.player.onGround;
        boolean jump = mc.player.motionZ > 0;
        float speedAttributes = getAIMoveSpeed(mc.player);
        float n6 = mc.player.isPotionActive(MobEffects.JUMP_BOOST) && mc.player.isHandActive() ? 0.88f : (float) (oldSpeed > 0.32 && mc.player.isHandActive() ? 0.88 : 0.91F);
        float n7 = (float) (0.16277135908603668 / Math.pow(n6, 3.01));
        float n8;
        if (fromGround) {
            n8 = speedAttributes * n7;
            if (jump) {
                n8 += 0.2f;
            }
        } else {
            n8 = 0.0255f;
        }
        boolean noslow = false;
        double max2 = oldSpeed + n8;
        double max = 0.0;
        if (mc.player.isHandActive() && !jump) {
            double n10 = oldSpeed + n8 * 0.25;
            double motionY2 = mc.player.motionY;
            if (motionY2 != 0.0 && Math.abs(motionY2) < 0.08) {
                n10 += 0.055;
            }
            if (max2 > (max = Math.max(0.043, n10))) {
                noslow = true;
                ++noSlowTicks;
            } else {
                noSlowTicks = Math.max(noSlowTicks - 1, 0);
            }
        } else {
            noSlowTicks = 0;
        }
        if (noSlowTicks > 3) {
            max2 = max - 0.019;
        } else {
            max2 = Math.max(noslow ? 0 : 0.25, max2) - (counter++ % 2 == 0 ? 0.001 : 0.002);
        }
        contextFriction = n6;
        if (!toGround && !fromGround) {
            needSwap = true;
        } else {
            prevSprint = false;
        }
        if (toGround && fromGround) {
            needSprintState = false;
        }
        return max2;
    }

    public static void postMove(double horizontal) {
        oldSpeed = horizontal * contextFriction;
    }

    public static float getAIMoveSpeed(EntityPlayer contextPlayer) {
        boolean prevSprinting = contextPlayer.isSprinting();
        contextPlayer.setSprinting(false);
        float speed = contextPlayer.getAIMoveSpeed() * 1.3f;
        contextPlayer.setSprinting(prevSprinting);
        return speed;
    }

    private int getHotbarSlotOfItem() {
        for (ItemStack stack : Helper.mc.player.getArmorInventoryList()) {
            if (stack.getItem() == Items.ELYTRA) {
                return -2;
            }
        }
        int slot = -1;
        for (int i = 0; i < 36; i++) {
            ItemStack s = Helper.mc.player.inventory.getStackInSlot(i);
            if (s.getItem() == Items.ELYTRA) {
                slot = i;
                break;
            }
        }
        if (slot < 9 && slot != -1) {
            slot = slot + 36;
        }
        return slot;
    }
}

После этого заходим в утилки и делаем класс 'MoveUtility'

MoveUtility:
Expand Collapse Copy
package toffifree.toffi.game.utils.movement;

import net.minecraft.block.BlockAir;
import net.minecraft.block.BlockLiquid;
import net.minecraft.init.MobEffects;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import toffifree.toffi.game.event.EventTarget;
import toffifree.toffi.game.event.events.impl.player.EventPreMotion;
import toffifree.toffi.game.utils.Helper;
import toffifree.toffi.game.module.impl.Movement.Strafe;

public class MoveUtility implements Helper {
    public static double getDifferenceOf(final float num1,final float num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }
    public static double getDifferenceOf(final double num1,final double num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }
    public static double getDifferenceOf(final int num1,final int num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }

    @EventTarget
    public void e(EventPreMotion move, float speed) {
        float yaw = mc.player.rotationYaw;
        float forward = mc.player.movementInput.moveForward;
        float strafe = mc.player.movementInput.moveStrafe;
        if (forward != 0) {
            if (strafe > 0) {
                yaw += (forward > 0 ? -45 : 45);
            } else if (strafe < 0) {
                yaw += (forward > 0 ? 45 : -45);
            }
            strafe = 0;
            if (forward > 0) {
                forward = 1;
            } else if (forward < 0) {
                forward = -1;
            }
        }
        mc.player.motionX = ((forward * speed * Math.cos(Math.toRadians(yaw + 90))
                + strafe * speed * Math.sin(Math.toRadians(yaw + 90))));
        mc.player.motionZ = ((forward * speed * Math.sin(Math.toRadians(yaw + 90))
                - strafe * speed * Math.cos(Math.toRadians(yaw + 90))));
    }
    public static void setMotion(double motion) {
        double forward = mc.player.movementInput.moveForward;
        double strafe = mc.player.movementInput.moveStrafe;
        float yaw = mc.player.rotationYaw;
        if (forward == 0 && strafe == 0) {
            mc.player.motionX = 0;
            mc.player.motionZ = 0;
            Strafe.oldSpeed = 0;
        } else {
            if (forward != 0) {
                if (strafe > 0) {
                    yaw += (float) (forward > 0 ? -45 : 45);
                } else if (strafe < 0) {
                    yaw += (float) (forward > 0 ? 45 : -45);
                }
                strafe = 0;
                if (forward > 0) {
                    forward = 1;
                } else if (forward < 0) {
                    forward = -1;
                }
            }
            mc.player.motionX = forward * motion * Math.cos(Math.toRadians(yaw + 90.0f))
                    + strafe * motion * Math.sin(Math.toRadians(yaw + 90.0f));
            mc.player.motionZ = forward * motion * Math.sin(Math.toRadians(yaw + 90.0f))
                    - strafe * motion * Math.cos(Math.toRadians(yaw + 90.0f));
        }
    }

    public static boolean reason(boolean water) {
        boolean critWater = water && mc.world.getBlockState(new BlockPos(mc.player.posX, mc.player.posY, mc.player.posZ)).getBlock()
                instanceof BlockLiquid && mc.world.getBlockState(new BlockPos(mc.player.posX, mc.player.posY + 1,
                mc.player.posZ)).getBlock() instanceof BlockAir;
        return mc.player.isPotionActive(MobEffects.BLINDNESS) || mc.player.isOnLadder()
                || mc.player.isInWater() && !critWater || mc.player.isInWeb || mc.player.capabilities.isFlying;
    }
    public static boolean isBlockAboveHead() {
        AxisAlignedBB axisAlignedBB = new AxisAlignedBB(mc.player.posX - 0.3, mc.player.posY + mc.player.getEyeHeight(),
                mc.player.posZ + 0.3, mc.player.posX + 0.3, mc.player.posY + (!mc.player.onGround ? 1.5 : 2.5),
                mc.player.posZ - 0.3);
        return !mc.world.getCollisionBoxes(mc.player, axisAlignedBB).isEmpty();
    }
    public static boolean isMoving() {
        return mc.player.movementInput.moveStrafe != 0.0 || mc.player.movementInput.moveForward != 0.0;
    }
    public static float getDirection() {
        float rotationYaw = mc.player.rotationYaw;

        float strafeFactor = 0f;

        if (mc.player.movementInput.moveForward > 0)
            strafeFactor = 1;
        if (mc.player.movementInput.moveForward < 0)
            strafeFactor = -1;

        if (strafeFactor == 0) {
            if (mc.player.movementInput.moveStrafe > 0)
                rotationYaw -= 90;

            if (mc.player.movementInput.moveStrafe < 0)
                rotationYaw += 90;
        } else {
            if (mc.player.movementInput.moveStrafe > 0)
                rotationYaw -= 45 * strafeFactor;

            if (mc.player.movementInput.moveStrafe < 0)
                rotationYaw += 45 * strafeFactor;
        }

        if (strafeFactor < 0)
            rotationYaw -= 180;

        return (float) Math.toRadians(rotationYaw);
    }

    public static void setStrafe(double motion) {
        if (!isMoving()) return;
        double radians = getDirection();
        mc.player.motionX = -Math.sin(radians) * motion;
        mc.player.motionZ = Math.cos(radians) * motion;
    }
    public static float getMotion() {
        return (float) Math.sqrt(mc.player.motionX * mc.player.motionX + mc.player.motionZ * mc.player.motionZ);
    }
}
 
cntrl c + cntrl v пофиксить пару ошибок не rich ready?
Даже если пофиксить там ошибки и перенести все в рич, не будет ничего работать, я сам не разобрался почему, но попробуй это сделать, допустим спасти с експы елитра флай, ошибок то у тебя не будет, но и работать не будет ничего в игре)
 
Даже если пофиксить там ошибки и перенести все в рич, не будет ничего работать, я сам не разобрался почему, но попробуй это сделать, допустим спасти с експы елитра флай, ошибок то у тебя не будет, но и работать не будет ничего в игре)
оно не будет работать, там все на eventmove сделано, а тут его нет
флай у меня свой, зачем мне пастить
 
Ну типо с экспенсива взял, тем кто не мог перенести от туда на рич базу, ловите

strafe:
Expand Collapse Copy
package toffifree.toffi.game.module.impl.Movement;

import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.MobEffects;
import net.minecraft.item.ItemStack;
import toffifree.toffi.game.event.EventTarget;
import toffifree.toffi.game.event.events.impl.player.EventMove;
import toffifree.toffi.game.event.events.impl.player.EventPreMotion;
import toffifree.toffi.game.event.events.impl.player.EventUpdate;
import toffifree.toffi.game.module.Module;
import toffifree.toffi.game.ui.settings.impl.BooleanSetting;
import toffifree.toffi.game.ui.settings.impl.ListSetting;
import toffifree.toffi.game.ui.settings.impl.NumberSetting;
import toffifree.toffi.game.utils.Helper;
import toffifree.toffi.game.utils.math.TimerHelper;
import toffifree.toffi.game.utils.movement.MoveUtility;
import toffifree.toffi.game.utils.movement.MovementUtils;
import toffifree.toffi.game.utils.otherutils.EventMotion;
import toffifree.toffi.game.module.impl.ModuleCategory;
import net.minecraft.init.Items;
import net.minecraft.inventory.ClickType;
import net.minecraft.network.play.client.CPacketEntityAction;

import java.util.Random;

public class Strafe extends Module {
    public ListSetting mode = new ListSetting("Обход:", "Matrix", "Matrix");
    private float waterTicks = 0;
    public BooleanSetting elytra = new BooleanSetting("Ускорение с элитрой", false);
    public NumberSetting speed2 = new NumberSetting("Скорость", 0.8f, 0.3f, 0.9f, 0.1f, () -> elytra.getCurrentValue());

    TimerHelper timerUtility = new TimerHelper();
    public static double oldSpeed, contextFriction;
    public static boolean needSwap, prevSprint, needSprintState;
    public static int counter, noSlowTicks;
    private int ticks;
    public Strafe() {
        super("Strafe", ModuleCategory.Movement);
        addSettings(mode, elytra, speed2);
    }

    @EventTarget
    public void e(EventMotion e) {
        if (mode.currentMode.equals("Matrix")) {
            if (waterTicks > 0) return;
            if (MoveUtility.isMoving() && MoveUtility.getMotion() <= 0.239385188) {
                if (!e.isOnGround()) {
                    MoveUtility.setStrafe(MoveUtility.reason(false) || mc.player.isHandActive()
                            ? MoveUtility.getMotion() - 0.00001f : 0.245f - (new Random().nextFloat() * 0.000001f));
                }
            }
        }
    }

        @EventTarget
    public void f(EventUpdate f) {
            if (!elytra.getCurrentValue()) return;
            int elytra = getHotbarSlotOfItem();

            if (Helper.mc.player.isInWater() || Helper.mc.player.isInLava() || waterTicks > 0 || elytra == -1 || Helper.mc.player.isInWeb)
                return;
            if (Helper.mc.player.fallDistance != 0 && Helper.mc.player.fallDistance < 0.1 && Helper.mc.player.motionY < -0.1) {
                if (elytra != -2) {
                    Helper.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, Helper.mc.player);
                    Helper.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, Helper.mc.player);
                }
                Helper.mc.getConnection().sendPacket(new CPacketEntityAction(Helper.mc.player, CPacketEntityAction.Action.START_FALL_FLYING));
                Helper.mc.getConnection().sendPacket(new CPacketEntityAction(Helper.mc.player, CPacketEntityAction.Action.START_FALL_FLYING));

                if (elytra != -2) {
                    Helper.mc.playerController.windowClick(0, 6, 1, ClickType.PICKUP, Helper.mc.player);
                    Helper.mc.playerController.windowClick(0, elytra, 1, ClickType.PICKUP, Helper.mc.player);
                }
            }
        }

    @EventTarget
    public void h(EventPreMotion eventPreMotion) {
        int elytraSlot = getHotbarSlotOfItem();


        if (elytra.getCurrentValue() && elytraSlot != -1) {

            if (MoveUtility.isMoving() && !Helper.mc.player.onGround && Helper.mc.player.fallDistance >= 0.1) {
                MoveUtility.setMotion(speed2.getCurrentValue());
            }
        }
    }

    @Override
    public void onEnable() {
        oldSpeed = 0;
        super.onEnable();
    }

    public boolean strafes() {

        if (Helper.mc.player == null)
            return false;
        if (Helper.mc.player.isSneaking()) {
            return false;
        }
        if (Helper.mc.player.isInLava()) {
            return false;
        }
        if (Helper.mc.player.capabilities.isFlying) {
            return false;
        }
        return true;
    }

    public static double calculateSpeed(EventMove move) {
        Minecraft mc = Minecraft.getMinecraft();
        boolean fromGround = mc.player.onGround;
        boolean toGround = mc.player.onGround;
        boolean jump = mc.player.motionZ > 0;
        float speedAttributes = getAIMoveSpeed(mc.player);
        float n6 = mc.player.isPotionActive(MobEffects.JUMP_BOOST) && mc.player.isHandActive() ? 0.88f : (float) (oldSpeed > 0.32 && mc.player.isHandActive() ? 0.88 : 0.91F);
        float n7 = (float) (0.16277135908603668 / Math.pow(n6, 3.01));
        float n8;
        if (fromGround) {
            n8 = speedAttributes * n7;
            if (jump) {
                n8 += 0.2f;
            }
        } else {
            n8 = 0.0255f;
        }
        boolean noslow = false;
        double max2 = oldSpeed + n8;
        double max = 0.0;
        if (mc.player.isHandActive() && !jump) {
            double n10 = oldSpeed + n8 * 0.25;
            double motionY2 = mc.player.motionY;
            if (motionY2 != 0.0 && Math.abs(motionY2) < 0.08) {
                n10 += 0.055;
            }
            if (max2 > (max = Math.max(0.043, n10))) {
                noslow = true;
                ++noSlowTicks;
            } else {
                noSlowTicks = Math.max(noSlowTicks - 1, 0);
            }
        } else {
            noSlowTicks = 0;
        }
        if (noSlowTicks > 3) {
            max2 = max - 0.019;
        } else {
            max2 = Math.max(noslow ? 0 : 0.25, max2) - (counter++ % 2 == 0 ? 0.001 : 0.002);
        }
        contextFriction = n6;
        if (!toGround && !fromGround) {
            needSwap = true;
        } else {
            prevSprint = false;
        }
        if (toGround && fromGround) {
            needSprintState = false;
        }
        return max2;
    }

    public static void postMove(double horizontal) {
        oldSpeed = horizontal * contextFriction;
    }

    public static float getAIMoveSpeed(EntityPlayer contextPlayer) {
        boolean prevSprinting = contextPlayer.isSprinting();
        contextPlayer.setSprinting(false);
        float speed = contextPlayer.getAIMoveSpeed() * 1.3f;
        contextPlayer.setSprinting(prevSprinting);
        return speed;
    }

    private int getHotbarSlotOfItem() {
        for (ItemStack stack : Helper.mc.player.getArmorInventoryList()) {
            if (stack.getItem() == Items.ELYTRA) {
                return -2;
            }
        }
        int slot = -1;
        for (int i = 0; i < 36; i++) {
            ItemStack s = Helper.mc.player.inventory.getStackInSlot(i);
            if (s.getItem() == Items.ELYTRA) {
                slot = i;
                break;
            }
        }
        if (slot < 9 && slot != -1) {
            slot = slot + 36;
        }
        return slot;
    }
}

После этого заходим в утилки и делаем класс 'MoveUtility'

MoveUtility:
Expand Collapse Copy
package toffifree.toffi.game.utils.movement;

import net.minecraft.block.BlockAir;
import net.minecraft.block.BlockLiquid;
import net.minecraft.init.MobEffects;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import toffifree.toffi.game.event.EventTarget;
import toffifree.toffi.game.event.events.impl.player.EventPreMotion;
import toffifree.toffi.game.utils.Helper;
import toffifree.toffi.game.module.impl.Movement.Strafe;

public class MoveUtility implements Helper {
    public static double getDifferenceOf(final float num1,final float num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }
    public static double getDifferenceOf(final double num1,final double num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }
    public static double getDifferenceOf(final int num1,final int num2) {
        return Math.abs(num2-num1) > Math.abs(num1-num2) ? Math.abs(num1-num2) : Math.abs(num2-num1);
    }

    @EventTarget
    public void e(EventPreMotion move, float speed) {
        float yaw = mc.player.rotationYaw;
        float forward = mc.player.movementInput.moveForward;
        float strafe = mc.player.movementInput.moveStrafe;
        if (forward != 0) {
            if (strafe > 0) {
                yaw += (forward > 0 ? -45 : 45);
            } else if (strafe < 0) {
                yaw += (forward > 0 ? 45 : -45);
            }
            strafe = 0;
            if (forward > 0) {
                forward = 1;
            } else if (forward < 0) {
                forward = -1;
            }
        }
        mc.player.motionX = ((forward * speed * Math.cos(Math.toRadians(yaw + 90))
                + strafe * speed * Math.sin(Math.toRadians(yaw + 90))));
        mc.player.motionZ = ((forward * speed * Math.sin(Math.toRadians(yaw + 90))
                - strafe * speed * Math.cos(Math.toRadians(yaw + 90))));
    }
    public static void setMotion(double motion) {
        double forward = mc.player.movementInput.moveForward;
        double strafe = mc.player.movementInput.moveStrafe;
        float yaw = mc.player.rotationYaw;
        if (forward == 0 && strafe == 0) {
            mc.player.motionX = 0;
            mc.player.motionZ = 0;
            Strafe.oldSpeed = 0;
        } else {
            if (forward != 0) {
                if (strafe > 0) {
                    yaw += (float) (forward > 0 ? -45 : 45);
                } else if (strafe < 0) {
                    yaw += (float) (forward > 0 ? 45 : -45);
                }
                strafe = 0;
                if (forward > 0) {
                    forward = 1;
                } else if (forward < 0) {
                    forward = -1;
                }
            }
            mc.player.motionX = forward * motion * Math.cos(Math.toRadians(yaw + 90.0f))
                    + strafe * motion * Math.sin(Math.toRadians(yaw + 90.0f));
            mc.player.motionZ = forward * motion * Math.sin(Math.toRadians(yaw + 90.0f))
                    - strafe * motion * Math.cos(Math.toRadians(yaw + 90.0f));
        }
    }

    public static boolean reason(boolean water) {
        boolean critWater = water && mc.world.getBlockState(new BlockPos(mc.player.posX, mc.player.posY, mc.player.posZ)).getBlock()
                instanceof BlockLiquid && mc.world.getBlockState(new BlockPos(mc.player.posX, mc.player.posY + 1,
                mc.player.posZ)).getBlock() instanceof BlockAir;
        return mc.player.isPotionActive(MobEffects.BLINDNESS) || mc.player.isOnLadder()
                || mc.player.isInWater() && !critWater || mc.player.isInWeb || mc.player.capabilities.isFlying;
    }
    public static boolean isBlockAboveHead() {
        AxisAlignedBB axisAlignedBB = new AxisAlignedBB(mc.player.posX - 0.3, mc.player.posY + mc.player.getEyeHeight(),
                mc.player.posZ + 0.3, mc.player.posX + 0.3, mc.player.posY + (!mc.player.onGround ? 1.5 : 2.5),
                mc.player.posZ - 0.3);
        return !mc.world.getCollisionBoxes(mc.player, axisAlignedBB).isEmpty();
    }
    public static boolean isMoving() {
        return mc.player.movementInput.moveStrafe != 0.0 || mc.player.movementInput.moveForward != 0.0;
    }
    public static float getDirection() {
        float rotationYaw = mc.player.rotationYaw;

        float strafeFactor = 0f;

        if (mc.player.movementInput.moveForward > 0)
            strafeFactor = 1;
        if (mc.player.movementInput.moveForward < 0)
            strafeFactor = -1;

        if (strafeFactor == 0) {
            if (mc.player.movementInput.moveStrafe > 0)
                rotationYaw -= 90;

            if (mc.player.movementInput.moveStrafe < 0)
                rotationYaw += 90;
        } else {
            if (mc.player.movementInput.moveStrafe > 0)
                rotationYaw -= 45 * strafeFactor;

            if (mc.player.movementInput.moveStrafe < 0)
                rotationYaw += 45 * strafeFactor;
        }

        if (strafeFactor < 0)
            rotationYaw -= 180;

        return (float) Math.toRadians(rotationYaw);
    }

    public static void setStrafe(double motion) {
        if (!isMoving()) return;
        double radians = getDirection();
        mc.player.motionX = -Math.sin(radians) * motion;
        mc.player.motionZ = Math.cos(radians) * motion;
    }
    public static float getMotion() {
        return (float) Math.sqrt(mc.player.motionX * mc.player.motionX + mc.player.motionZ * mc.player.motionZ);
    }
}
?Слив от лучшего кодера тоффи клиента вот это да
 
Даже если пофиксить там ошибки и перенести все в рич, не будет ничего работать, я сам не разобрался почему, но попробуй это сделать, допустим спасти с експы елитра флай, ошибок то у тебя не будет, но и работать не будет ничего в игре)
если правильно спастить всё будет
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Даже если пофиксить там ошибки и перенести все в рич, не будет ничего работать, я сам не разобрался почему, но попробуй это сделать, допустим спасти с експы елитра флай, ошибок то у тебя не будет, но и работать не будет ничего в игре)
ДА ПОТОМУ ЧТО В КЛАССАХ ЕНТИТИ ГДЕ НА ЕЛИТРЕ ПОЛЕТ НАДО НАВЕРНО ВСТАВИТЬ ХУЙНЮ ОДНУ ЛИБО ваш iq меньше 50
 
нет тоффи сделан на сурсах ебливого минседа ака хуеты и пасты юг
lmao
по факту он даже ротейшен хелпер не переписал потому и тофи даже рич фри вивезти не может
ДА ПОТОМУ ЧТО В КЛАССАХ ЕНТИТИ ГДЕ НА ЕЛИТРЕ ПОЛЕТ НАДО НАВЕРНО ВСТАВИТЬ ХУЙНЮ ОДНУ ЛИБО ваш iq меньше 50
++++
 
ДА ПОТОМУ ЧТО В КЛАССАХ ЕНТИТИ ГДЕ НА ЕЛИТРЕ ПОЛЕТ НАДО НАВЕРНО ВСТАВИТЬ ХУЙНЮ ОДНУ ЛИБО ваш iq меньше 50
ничего не надо, он не взлетает на элитре поэтому прописывать ненадо, в коде посмотри
iq?
он без eventmove, toground(), не будет работать
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ничего не надо, он не взлетает на элитре поэтому прописывать ненадо, в коде посмотри
iq?
он без eventmove, toground(), не будет работать
iq bro? я выдвинул варик
ничего не надо, он не взлетает на элитре поэтому прописывать ненадо, в коде посмотри
iq?
он без eventmove, toground(), не будет работать
слили пойду дальши калестун рекод пастить
 
Назад
Сверху Снизу