-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Здравствуйте пользователи форума
я хотел бы вам показать мой код на автопилот под фантайм.
работает хорошо и прошу не кидать дилдо в мою сторону так как это моя первая работа
работает хорошо и прошу не кидать дилдо в мою сторону так как это моя первая работа

Пожалуйста, авторизуйтесь для просмотра ссылки.
sigmo:
package me.yanesvinogoida3000;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayNetworkHandler;
import net.minecraft.client.network.ClientPlayerEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.util.Hand;
import net.minecraft.util.math.Vec3d;
import net.minecraft.screen.slot.SlotActionType;
import net.minecraft.network.packet.c2s.play.PlayerInteractItemC2SPacket;
import com.mojang.brigadier.arguments.DoubleArgumentType;
public class AutoPilot implements ModInitializer {
private Vec3d targetCoords;
private boolean hasJumpedOnce = false;
private boolean elytraJustEquipped = false;
private long lastJumpTime = 0;
private long lastFireworkTime = 0;
private static final long JUMP_DELAY = 300;
private static final long FIREWORK_DELAY = 3000;
private boolean fireworkMessageShown = false;
private boolean elytraMessageShown = false;
[USER=1367676]@override[/USER]
public void onInitialize() {
ClientCommandRegistrationCallback.EVENT.register((dispatcher, registryAccess) ->
dispatcher.register(ClientCommandManager.literal("coordinates")
.then(ClientCommandManager.argument("x", DoubleArgumentType.doubleArg())
.then(ClientCommandManager.argument("y", DoubleArgumentType.doubleArg())
.then(ClientCommandManager.argument("z", DoubleArgumentType.doubleArg())
.executes(context -> {
targetCoords = new Vec3d(
DoubleArgumentType.getDouble(context, "x"),
DoubleArgumentType.getDouble(context, "y"),
DoubleArgumentType.getDouble(context, "z")
);
return 1;
})
)
)
)
)
);
ClientTickEvents.END_CLIENT_TICK.register(client -> {
if (targetCoords != null) tick();
});
}
private void tick() {
MinecraftClient client = MinecraftClient.getInstance();
if (client.player == null) return;
ClientPlayerEntity player = client.player;
if (!hasElytraEquipped()) {
if (getElytraSlot(player) == -1) {
if (!elytraMessageShown) {
sendMessage("§cУ вас нету элитр!");
elytraMessageShown = true;
}
targetCoords = null;
return;
}
equipElytra();
} else {
elytraMessageShown = false;
}
int fireworkSlot = getFireworkSlot(player);
if (fireworkSlot == -1) {
if (getFireworkInInventory(player).isEmpty()) {
if (!fireworkMessageShown) {
sendMessage("§cУ вас нету фейерверков!");
fireworkMessageShown = true;
}
} else {
if (!fireworkMessageShown) {
sendMessage("§6Положите фейерверки в хотбар!");
fireworkMessageShown = true;
}
}
targetCoords = null;
return;
} else {
fireworkMessageShown = false;
}
Vec3d playerPos = player.getEyePos();
Vec3d direction = targetCoords.subtract(playerPos).normalize();
float yaw = (float) Math.toDegrees(Math.atan2(direction.z, direction.x)) - 90;
float pitch = (float) -Math.toDegrees(Math.atan2(direction.y, Math.sqrt(direction.x * direction.x + direction.z * direction.z)));
player.setYaw(yaw);
player.headYaw = yaw;
player.setPitch(pitch);
if (elytraJustEquipped) {
elytraJustEquipped = false;
return;
}
if (player.isOnGround()) hasJumpedOnce = false;
if (!player.isOnGround() && !player.isFallFlying() && System.currentTimeMillis() - lastJumpTime >= JUMP_DELAY) {
client.options.jumpKey.setPressed(true);
lastJumpTime = System.currentTimeMillis();
} else {
client.options.jumpKey.setPressed(false);
}
if (player.isFallFlying() && (System.currentTimeMillis() - lastFireworkTime) >= FIREWORK_DELAY) {
player.getInventory().selectedSlot = fireworkSlot;
useFirework(client, Hand.MAIN_HAND);
lastFireworkTime = System.currentTimeMillis();
}
if (playerPos.squaredDistanceTo(targetCoords) < 2) {
targetCoords = null;
hasJumpedOnce = false;
}
}
private boolean hasElytraEquipped() {
return MinecraftClient.getInstance().player.getInventory().getArmorStack(2).getItem() == Items.ELYTRA;
}
private void equipElytra() {
MinecraftClient client = MinecraftClient.getInstance();
ClientPlayerEntity player = client.player;
if (player == null) return;
int elytraSlot = getElytraSlot(player);
if (elytraSlot != -1) {
client.interactionManager.clickSlot(0, elytraSlot, 1, SlotActionType.PICKUP, player);
client.interactionManager.clickSlot(0, 6, 1, SlotActionType.PICKUP, player);
client.interactionManager.clickSlot(0, elytraSlot, 1, SlotActionType.PICKUP, player);
elytraJustEquipped = true;
}
}
private int getElytraSlot(ClientPlayerEntity player) {
for (int i = 0; i < player.getInventory().size(); i++) {
if (player.getInventory().getStack(i).getItem() == Items.ELYTRA) {
return i;
}
}
return -1;
}
private int getFireworkSlot(ClientPlayerEntity player) {
for (int i = 0; i < 9; i++) {
if (player.getInventory().getStack(i).getItem() == Items.FIREWORK_ROCKET) {
return i;
}
}
return -1;
}
private void useFirework(MinecraftClient client, Hand hand) {
ClientPlayNetworkHandler networkHandler = client.getNetworkHandler();
if (networkHandler != null) {
networkHandler.sendPacket(new PlayerInteractItemC2SPacket(hand, 0));
}
}
private ItemStack getFireworkInInventory(ClientPlayerEntity player) {
for (int i = 0; i < player.getInventory().size(); i++) {
if (player.getInventory().getStack(i).getItem() == Items.FIREWORK_ROCKET) {
return player.getInventory().getStack(i);
}
}
return ItemStack.EMPTY;
}
private void sendMessage(String message) {
MinecraftClient client = MinecraftClient.getInstance();
if (client.player != null) {
client.player.sendMessage(net.minecraft.text.Text.literal(message), false);
}
}
}