Начинающий
- Статус
- Оффлайн
- Регистрация
- 6 Окт 2024
- Сообщения
- 39
- Реакции
- 0
- Выберите загрузчик игры
- Прочие моды
Ну кароче просто переделал хай джамп с шалкером ( он ес че работает от угла шалкера ) кто захочет - доделает
( в начале чутка рв пролагал )
Не бейте пж
Пожалуйста, авторизуйтесь для просмотра ссылки.
Код:
private final Minecraft mc = Minecraft.getInstance();
private boolean wasNearShulker = false;
private boolean wasOpen = false;
@Override
public boolean onEvent(Event event) {
if (event instanceof EventUpdate) {
if (mc.world == null || mc.player == null)
return false;
boolean isNearShulker = false;
boolean isOpen = false;
for (TileEntity tile : mc.world.loadedTileEntityList) {
if (tile instanceof ShulkerBoxTileEntity) {
double dx = mc.player.getPosX() - (tile.getPos().getX() + 0.5);
double dz = mc.player.getPosZ() - (tile.getPos().getZ() + 0.5);
double dy = Math.abs(mc.player.getPosY() - tile.getPos().getY());
if (Math.sqrt(dx * dx + dz * dz) <= 1.5 && dy <= 2.5) {
ShulkerBoxTileEntity shulker = (ShulkerBoxTileEntity) tile;
float progress = shulker.getProgress(1.0f);
if (progress > 0.0f && progress < 1.0f) {
isOpen = true;
}
isNearShulker = true;
break;
}
}
}
if (wasNearShulker && wasOpen && !isNearShulker && mc.player.isOnGround()) {
applyLongJumpBoost();
}
wasNearShulker = isNearShulker;
wasOpen = isOpen;
}
return false;
}
private void applyLongJumpBoost() {
if (mc.player == null) return;
float yaw = (float) Math.toRadians(mc.player.rotationYaw);
double motionX = -Math.sin(yaw) * 1.8;
double motionZ = Math.cos(yaw) * 1.8;
mc.player.setMotion(
motionX,
0.8,
motionZ
);
}
@Override
public void onDisable() {
wasNearShulker = false;
wasOpen = false;
super.onDisable();
}
}
( в начале чутка рв пролагал )
Не бейте пж