-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Код:
package fun.rich.client.feature.impl.movement;
import fun.rich.client.event.EventTarget;
import fun.rich.client.event.events.impl.player.EventPreMotion;
import fun.rich.client.event.events.impl.player.EventUpdate;
import fun.rich.client.feature.Feature;
import fun.rich.client.feature.impl.FeatureCategory;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import org.lwjgl.input.Keyboard;
import java.util.Arrays;
public class AirJump extends Feature {
public AirJump() {
super("AirJump", "��������� ������� �� �������", FeatureCategory.Movement);
}
@EventTarget
public void onPreUpdate(EventPreMotion event) {
final float ex2 = 1.0f;
final float ex3 = 1.0f;
if ((this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX, Minecraft.player.posY - ex3, Minecraft.player.posZ)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX, Minecraft.player.posY - ex3, Minecraft.player.posZ)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX - ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ - ex2)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX + ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ + ex2)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX - ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ + ex2)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX + ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ - ex2)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX + ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX - ex2, Minecraft.player.posY - ex3, Minecraft.player.posZ)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX, Minecraft.player.posY - ex3, Minecraft.player.posZ + ex2)).getBlock()) || this.isBlockValid(Minecraft.world.getBlockState(new BlockPos(Minecraft.player.posX, Minecraft.player.posY - ex3, Minecraft.player.posZ - ex2)).getBlock())) && Minecraft.player.ticksExisted % 2 == 0 && AirJump.mc.gameSettings.keyBindJump.isKeyDown()) {
Minecraft.player.jumpTicks = 0;
Minecraft.player.fallDistance = 0.0f;
event.setOnGround(true);
Minecraft.player.onGround = true;
}
}
public boolean isBlockValid(final Block block) {
return block != Blocks.AIR && !Arrays.asList(6, 27, 28, 31, 32, 37, 38, 39, 40, 44, 77, 143, 175).contains(Block.getIdFromBlock(block));
}
}