Начинающий
Начинающий
- Статус
- Оффлайн
- Регистрация
- 24 Сен 2024
- Сообщения
- 122
- Реакции
- 0
я кароче пытался сделать спайдер по комманд блоке как в целке, но меня выебал ач, помогите че не так
JavaScript:
package zenith.zov.client.modules.impl.movement;
import com.darkmagician6.eventapi.EventTarget;
import net.minecraft.item.Items;
import net.minecraft.network.packet.c2s.play.PlayerInteractBlockC2SPacket;
import net.minecraft.util.Hand;
import net.minecraft.util.hit.BlockHitResult;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Direction;
import net.minecraft.util.math.Vec3d;
import zenith.zov.base.events.impl.player.EventUpdate;
import zenith.zov.client.modules.api.Category;
import zenith.zov.client.modules.api.Module;
import zenith.zov.client.modules.api.ModuleAnnotation;
import zenith.zov.utility.game.player.PlayerIntersectionUtil;
import zenith.zov.utility.game.player.PlayerInventoryUtil;
import zenith.zov.utility.game.player.rotation.Rotation;
@ModuleAnnotation(name = "Spider", category = Category.MOVEMENT, description = "Поднимает вверх")
public final class Spider extends Module {
public static final Spider INSTANCE = new Spider();
private Spider() {}
@Override
public void onEnable() {
super.onEnable();
if (mc.player != null) {
rotationManager.setSilentRotation(new Rotation(mc.player.getYaw(), 75f));
mc.player.jump();
}
}
@EventTarget
public void onTick(EventUpdate e) {
if (mc.player == null || mc.world == null) return;
rotationManager.setSilentRotation(new Rotation(mc.player.getYaw(), 75f));
mc.player.jump();
trySwapAndPlace(Items.COMMAND_BLOCK);
trySwapAndPlace(Items.REPEATING_COMMAND_BLOCK);
trySwapAndPlace(Items.CHAIN_COMMAND_BLOCK);
}
private boolean trySwapAndPlace(net.minecraft.item.Item item) {
var slot = PlayerInventoryUtil.getSlot(item);
if (slot == null) return false;
PlayerInventoryUtil.swapHand(slot, Hand.MAIN_HAND, false);
BlockPos support = mc.player.getBlockPos().down();
BlockHitResult hit = new BlockHitResult(
new Vec3d(support.getX() + 0.5, support.getY() + 1.0, support.getZ() + 0.5),
Direction.UP,
support,
false
);
PlayerIntersectionUtil.sendSequencedPacket(seq -> new PlayerInteractBlockC2SPacket(Hand.MAIN_HAND, hit, seq));
mc.player.swingHand(Hand.MAIN_HAND);
return true;
}
}