-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
SS - прост бьет при наведение на игрока
Код:
package dev.excellent.client.module.impl.combat;
import dev.excellent.api.event.impl.player.MotionEvent;
import dev.excellent.api.event.impl.player.UpdateEvent;
import dev.excellent.api.interfaces.event.Listener;
import dev.excellent.client.module.api.Category;
import dev.excellent.client.module.api.Module;
import dev.excellent.client.module.api.ModuleInfo;
import dev.excellent.client.rotation.Rotation;
import dev.excellent.client.rotation.RotationHandler;
import dev.excellent.client.target.TargetHandler;
import dev.excellent.impl.util.pattern.Singleton;
import dev.excellent.impl.util.player.RayTraceUtil;
import dev.excellent.impl.util.rotation.AuraUtil;
import dev.excellent.impl.util.time.TimerUtil;
import dev.excellent.impl.value.impl.BooleanValue;
import dev.excellent.impl.value.impl.NumberValue;
import dev.excellent.impl.value.impl.MultiBooleanValue;
import lombok.Getter;
import net.minecraft.entity.Entity;
import net.minecraft.entity.LivingEntity;
import net.minecraft.item.AxeItem;
import net.minecraft.network.play.client.CEntityActionPacket;
import net.minecraft.potion.Effects;
import net.minecraft.tags.FluidTags;
import net.minecraft.util.Hand;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.util.math.vector.Vector3d;
@Getter
@ModuleInfo(name = "TriggerBot", description = "Бьет при наведении на игрока.", category = Category.COMBAT)
public class TriggerBot extends Module {
public static Singleton<TriggerBot> singleton = Singleton.create(() -> Module.link(TriggerBot.class));
private final NumberValue attackRange = new NumberValue("Дистанция", this, 3, 3, 6, 0.1f);
private final BooleanValue critsOnly = new BooleanValue("Только криты", this, true);
public LivingEntity target;
private final TimerUtil timer = TimerUtil.create();
@Override
public void toggle() {
super.toggle();
target = null;
}
private final Listener<UpdateEvent> onUpdate = event -> {
target = TargetHandler.getTarget(attackRange.getValue().floatValue());
if (target != null && shouldAttack()) {
if (RayTraceUtil.rayTraceSingleEntity(mc.player.rotationYaw, mc.player.rotationPitch, Math.max(mc.playerController.extendedReach() ? 6 : 3, attackRange.getValue().floatValue()), target)) {
if (!critsOnly.getValue() || shouldCritical()) {
attackEntity(target);
}
}
}
};
private void attackEntity(Entity entity) {
mc.playerController.attackEntity(mc.player, entity);
mc.player.swingArm(Hand.MAIN_HAND);
timer.reset();
}
public boolean shouldAttack() {
return timer.hasReached(250) && mc.player.getCooledAttackStrength(1.5F) >= 1F;
}
private boolean shouldCritical() {
boolean isDeBuffed = mc.player.isPotionActive(Effects.LEVITATION) || mc.player.isPotionActive(Effects.BLINDNESS) || mc.player.isPotionActive(Effects.SLOW_FALLING);
boolean isInLiquid = mc.player.areEyesInFluid(FluidTags.WATER) || mc.player.areEyesInFluid(FluidTags.LAVA);
boolean isFlying = mc.player.abilities.isFlying || mc.player.isElytraFlying();
boolean isClimbing = mc.player.isOnLadder();
boolean isCantJump = mc.player.isPassenger();
return !(isDeBuffed || isInLiquid || isFlying || isClimbing || isCantJump);
}
private int getAxeSlot() {
for (int i = 0; i < 9; i++) {
if (mc.player.inventory.mainInventory.get(i).getItem() instanceof AxeItem) {
return i;
}
}
return -1;
}
}