-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Сливаю вам байпасс спайдера aka FenceFly в дельте
Вам нужно:
1. Держать забор любого материала в хотбаре( с инвентаря будет в хаб кикать)
2. Поставить столб 2 забора в высоту
3. Встать в упор к заборам
4. Включить функцию и зажать W
Иногда может подфлагивать когда у вас заканчивается стак заборов и начинают ставиться новые
Так же иногда когда ставит последний забор может дать запрыгнуть на верх и не упасть, но вероятнее всего вы начнете падать, можете поставить под себя блок либо
улучшить чтоб последний забор оно ставило под игроком
SS =
Жду попкорна и данного обхода в каждом yougame client
Вам нужно:
1. Держать забор любого материала в хотбаре( с инвентаря будет в хаб кикать)
2. Поставить столб 2 забора в высоту
3. Встать в упор к заборам
4. Включить функцию и зажать W
Иногда может подфлагивать когда у вас заканчивается стак заборов и начинают ставиться новые
Так же иногда когда ставит последний забор может дать запрыгнуть на верх и не упасть, но вероятнее всего вы начнете падать, можете поставить под себя блок либо
улучшить чтоб последний забор оно ставило под игроком
SS =
FenceFly:
package im.expensive.functions.impl.movement;
import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventMotion;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.utils.math.StopWatch;
import im.expensive.utils.player.MouseUtil;
import net.minecraft.client.entity.player.ClientPlayerEntity;
import net.minecraft.client.multiplayer.PlayerController;
import net.minecraft.client.world.ClientWorld;
import net.minecraft.item.BlockItem;
import net.minecraft.item.Items;
import net.minecraft.util.Direction;
import net.minecraft.util.Hand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.BlockRayTraceResult;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.vector.Vector3d;
import net.minecraft.world.World;
@FunctionRegister(name = "Spider", type = Category.Movement)
public class Spider extends Function {
public ModeSetting mode = new ModeSetting("Mode", "Grim", "Grim", "Matrix", "Funtime Fence");
private final SliderSetting spiderSpeed = new SliderSetting(
"Speed",
2.0f,
1.0f,
10.0f,
0.05f
).setVisible(() -> !mode.is("Grim") && !mode.is("Funtime Fence"));
StopWatch stopWatch = new StopWatch();
public Spider() {
addSettings(spiderSpeed, mode);
}
/**
* author moyten
* wonderful boost yoo
*/
@Subscribe
private void onMotion(EventMotion motion) {
switch (mode.get()) {
case "Matrix" -> {
if (!mc.player.collidedHorizontally) {
return;
}
long speed = MathHelper.clamp(500 - (spiderSpeed.get().longValue() / 2 * 100), 0, 500);
if (stopWatch.isReached(speed)) {
motion.setOnGround(true);
mc.player.setOnGround(true);
mc.player.collidedVertically = true;
mc.player.collidedHorizontally = true;
mc.player.isAirBorne = true;
mc.player.jump();
stopWatch.reset();
}
}
case "Grim" -> {
int slotInHotBar = getSlotInInventoryOrHotbar(true);
if (slotInHotBar == -1) {
print("Блоки не найдены!");
toggle();
return;
}
if (!mc.player.collidedHorizontally) {
return;
}
if (mc.player.isOnGround()) {
motion.setOnGround(true);
mc.player.setOnGround(true);
mc.player.jump();
}
if (mc.player.fallDistance > 0 && mc.player.fallDistance < 2) {
placeBlocks(motion, slotInHotBar);
}
}
case "Funtime Fence" -> {
if (!mc.player.collidedHorizontally) {
return;
}
long speed = 200;
if (stopWatch.isReached(speed)) {
motion.setOnGround(true);
mc.player.setOnGround(true);
mc.player.collidedVertically = true;
mc.player.collidedHorizontally = true;
mc.player.isAirBorne = true;
mc.player.jump();
placeFenceStack(motion);
stopWatch.reset();
}
}
}
}
private void placeFenceStack(EventMotion motion) {
int slotFence = getSlotForFence();
if (slotFence == -1) {
print("Заборы не найдены!");
toggle();
return;
}
int lastSlot = mc.player.inventory.currentItem;
mc.player.inventory.currentItem = slotFence;
BlockPos playerPos = mc.player.getPosition();
for (int i = 1; i <= 2; i++) {
BlockPos fencePos = playerPos.up(i);
if (mc.world.getBlockState(fencePos).isAir()) {
placeFenceBlock(fencePos, Hand.MAIN_HAND, mc.playerController, mc.world, mc.player);
}
}
mc.player.inventory.currentItem = lastSlot;
}
private void placeFenceBlock(BlockPos pos, Hand hand, PlayerController playerController, World world, ClientPlayerEntity player) {
if (!world.getBlockState(pos).isAir()) {
return;
}
Direction direction = Direction.UP;
BlockPos tPos = pos.down();
BlockRayTraceResult traceResult = new BlockRayTraceResult(
new Vector3d(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5),
direction, tPos, false);
playerController.processRightClickBlock(player, (ClientWorld) world, hand, traceResult);
player.swingArm(hand);
}
private int getSlotForFence() {
for (int i = 0; i < 36; i++) {
if (mc.player.inventory.getStackInSlot(i).getItem() == Items.OAK_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.BIRCH_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.SPRUCE_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.ACACIA_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.DARK_OAK_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.JUNGLE_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.CRIMSON_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.WARPED_FENCE
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.NETHER_BRICK_FENCE) {
return i;
}
}
return -1;
}
public int getSlotInInventoryOrHotbar(boolean inHotBar) {
int firstSlot = inHotBar ? 0 : 9;
int lastSlot = inHotBar ? 9 : 36;
int finalSlot = -1;
for (int i = firstSlot; i < lastSlot; i++) {
if (mc.player.inventory.getStackInSlot(i).getItem() == Items.TORCH) {
continue;
}
if (mc.player.inventory.getStackInSlot(i).getItem() instanceof BlockItem
|| mc.player.inventory.getStackInSlot(i).getItem() == Items.WATER_BUCKET) {
finalSlot = i;
}
}
return finalSlot;
}
private void placeBlocks(EventMotion motion, int block) {
int last = mc.player.inventory.currentItem;
mc.player.inventory.currentItem = block;
motion.setPitch(80);
motion.setYaw(mc.player.getHorizontalFacing().getHorizontalAngle());
BlockRayTraceResult r = (BlockRayTraceResult) MouseUtil.rayTrace(4, motion.getYaw(), motion.getPitch(), mc.player);
mc.player.swingArm(Hand.MAIN_HAND);
mc.playerController.processRightClickBlock(mc.player, mc.world, Hand.MAIN_HAND, r);
mc.player.inventory.currentItem = last;
mc.player.fallDistance = 0;
}
}