- Статус
- Оффлайн
- Регистрация
- 20 Апр 2025
- Сообщения
- 322
- Реакции
- 1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
- Выберите загрузчик игры
- Vanilla
ss;
Java:
package im.expensive.functions.impl.movement;
import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import net.minecraft.block.Blocks;
import net.minecraft.util.math.BlockPos;
@FunctionRegister(name = "SafeWalk", type = Category.Movement)
public class SafeWalk extends Function {
@Subscribe
private void onUpdate(EventUpdate e) {
if (mc.player == null || mc.world == null) return;
BlockPos pos = new BlockPos(mc.player.getPosX(), mc.player.getPosY() - 1, mc.player.getPosZ());
mc.gameSettings.keyBindSneak.setPressed((isBlockUnder(0.005F) || mc.world.getBlockState(pos).getBlock() == Blocks.AIR)
&& !mc.player.isInWater() && !mc.player.isInLava());
}
private boolean isBlockUnder(float under) {
if (mc.player.getPosY() < 0) return false;
return mc.world.getCollisionShapes(mc.player, mc.player.getBoundingBox().offset(0, -under, 0)).toList().isEmpty();
}
}