• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

TriggerBot FT I 1.20.1 I expensive 4.0 ready

Забаненный
Забаненный
Статус
Оффлайн
Регистрация
5 Мар 2024
Сообщения
69
Реакции
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Доброй ночи, новый тригер под фт.
Пол часа тестов, после тестов бегал 15 минут меня не забанило.
ss - не нужен
UPD 14:20: я добавил проверку на меч в руке, и немного изменил систему деактивации и активации.
package ru.expensive.implement.features.modules.combat;

import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.registry.tag.FluidTags;
import net.minecraft.util.hit.EntityHitResult;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.BooleanSetting;

public class TriggerBot extends Module {

private final BooleanSetting onlyCrits = new BooleanSetting("Only crits", "Activated only crits");
private final MinecraftClient mc = MinecraftClient.getInstance();

private LivingEntity target;

public TriggerBot() {
super("TriggerBot", ModuleCategory.COMBAT);
setup(onlyCrits);
ClientTickEvents.END_CLIENT_TICK.register(client -> this.onTick());
}

public void onTick() {
if (mc.world == null || mc.player == null || mc.crosshairTarget == null) {
return;
}

if (mc.crosshairTarget instanceof EntityHitResult hitResult) {
if (hitResult.getEntity() instanceof LivingEntity target && target != mc.player && canAttack(target)) {
performAttack(target);
}
}
}

public boolean canAttack(LivingEntity target) {
if (target == null || target == mc.player || !target.isAttackable() || target.isDead()) {
return false;
}

if (!isSwordInHand()) {
return false;
}

if (mc.player.getAttackCooldownProgress(0.5F) < 0.93F) {
return false;
}

boolean reasonForAttack = mc.player.hasStatusEffect(StatusEffects.BLINDNESS)
|| mc.player.isClimbing()
|| (mc.player.isTouchingWater() && mc.player.isSubmergedIn(FluidTags.WATER))
|| mc.player.hasVehicle()
|| mc.player.getAbilities().flying
|| mc.player.isFallFlying();

if (!reasonForAttack && onlyCrits.get()) {
return !mc.player.isOnGround() && mc.player.fallDistance > 0.0F;
}

return !reasonForAttack;
}

private boolean isSwordInHand() {
ItemStack mainHandItem = mc.player.getMainHandStack();
return mainHandItem.getItem() == Items.WOODEN_SWORD || mainHandItem.getItem() == Items.STONE_SWORD
|| mainHandItem.getItem() == Items.IRON_SWORD || mainHandItem.getItem() == Items.GOLDEN_SWORD
|| mainHandItem.getItem() == Items.DIAMOND_SWORD || mainHandItem.getItem() == Items.NETHERITE_SWORD;
}

private void performAttack(LivingEntity target) {
if (mc.interactionManager != null && mc.player != null) {
mc.interactionManager.attackEntity(mc.player, target);
mc.player.swingHand(mc.player.getActiveHand());
}
}

@Override
public void deactivate() {
target = null;
super.deactivate();
}

@Override
public boolean isEnabled() {
target = mc.player;
return false;
}
}



Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
 
Последнее редактирование:
Норм код:
Expand Collapse Copy
package ru.expensive.implement.features.modules.combat;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.registry.tag.FluidTags;
import net.minecraft.util.hit.EntityHitResult;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.BooleanSetting;
public class TriggerBot extends Module {
private final BooleanSetting onlyCrits = new BooleanSetting("Only crits", "Activated only crits");
private final MinecraftClient mc = MinecraftClient.getInstance();
private boolean toggled;
public TriggerBot() {
super("TriggerBot", ModuleCategory.COMBAT);
setup(onlyCrits);
ClientTickEvents.END_CLIENT_TICK.register(client -> this.onTick());
}
public void onTick() {
if (mc.world == null || mc.player == null || mc.crosshairTarget == null) {
return;
}
if (mc.crosshairTarget instanceof EntityHitResult hitResult) {
if (hitResult.getEntity() instanceof LivingEntity target && target != mc.player && canAttack(target)) {
performAttack(target);
}
}
}
public boolean canAttack(LivingEntity target) {
if (target == null || target == mc.player || !target.isAttackable() || target.isDead()) {
return false;
}
if (mc.player.getAttackCooldownProgress(0.5F) < 0.93F) {
return false;
}
boolean reasonForAttack = mc.player.hasStatusEffect(StatusEffects.BLINDNESS)
|| mc.player.isClimbing()
|| (mc.player.isTouchingWater() && mc.player.isSubmergedIn(FluidTags.WATER))
|| mc.player.hasVehicle()
|| mc.player.getAbilities().flying
|| mc.player.isFallFlying();
if (!reasonForAttack && onlyCrits.get()) {
return !mc.player.isOnGround() && mc.player.fallDistance > 0.0F;
}
return !reasonForAttack;
}
private void performAttack(LivingEntity target) {
if (mc.interactionManager != null && mc.player != null) {
mc.interactionManager.attackEntity(mc.player, target);
mc.player.swingHand(mc.player.getActiveHand());
}
}
@Override
public boolean isEnabled() {
return this.toggled;
}
public void toggle() {
this.toggled = !this.toggled;
}
}
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Норм код:
Expand Collapse Copy
package ru.expensive.implement.features.modules.combat;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.registry.tag.FluidTags;
import net.minecraft.util.hit.EntityHitResult;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.BooleanSetting;
public class TriggerBot extends Module {
private final BooleanSetting onlyCrits = new BooleanSetting("Only crits", "Activated only crits");
private final MinecraftClient mc = MinecraftClient.getInstance();
private boolean toggled;
public TriggerBot() {
super("TriggerBot", ModuleCategory.COMBAT);
setup(onlyCrits);
ClientTickEvents.END_CLIENT_TICK.register(client -> this.onTick());
}
public void onTick() {
if (mc.world == null || mc.player == null || mc.crosshairTarget == null) {
return;
}
if (mc.crosshairTarget instanceof EntityHitResult hitResult) {
if (hitResult.getEntity() instanceof LivingEntity target && target != mc.player && canAttack(target)) {
performAttack(target);
}
}
}
public boolean canAttack(LivingEntity target) {
if (target == null || target == mc.player || !target.isAttackable() || target.isDead()) {
return false;
}
if (mc.player.getAttackCooldownProgress(0.5F) < 0.93F) {
return false;
}
boolean reasonForAttack = mc.player.hasStatusEffect(StatusEffects.BLINDNESS)
|| mc.player.isClimbing()
|| (mc.player.isTouchingWater() && mc.player.isSubmergedIn(FluidTags.WATER))
|| mc.player.hasVehicle()
|| mc.player.getAbilities().flying
|| mc.player.isFallFlying();
if (!reasonForAttack && onlyCrits.get()) {
return !mc.player.isOnGround() && mc.player.fallDistance > 0.0F;
}
return !reasonForAttack;
}
private void performAttack(LivingEntity target) {
if (mc.interactionManager != null && mc.player != null) {
mc.interactionManager.attackEntity(mc.player, target);
mc.player.swingHand(mc.player.getActiveHand());
}
}
@Override
public boolean isEnabled() {
return this.toggled;
}
public void toggle() {
this.toggled = !this.toggled;
}
}
спасибо
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
С каких пор триггер бот банится?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Доброй ночи, новый тригер под фт.
Пол часа тестов, после тестов бегал 15 минут меня не забанило.
ss - не нужен

package ru.expensive.implement.features.modules.combat;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.registry.tag.FluidTags;
import net.minecraft.util.hit.EntityHitResult;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.BooleanSetting;
public class TriggerBot extends Module {
private final BooleanSetting onlyCrits = new BooleanSetting("Only crits", "Activated only crits");
private final MinecraftClient mc = MinecraftClient.getInstance();
private boolean toggled;
public TriggerBot() {
super("TriggerBot", ModuleCategory.COMBAT);
setup(onlyCrits);
ClientTickEvents.END_CLIENT_TICK.register(client -> this.onTick());
}
public void onTick() {
if (mc.world == null || mc.player == null || mc.crosshairTarget == null) {
return;
}
if (mc.crosshairTarget instanceof EntityHitResult hitResult) {
if (hitResult.getEntity() instanceof LivingEntity target && target != mc.player && canAttack(target)) {
performAttack(target);
}
}
}
public boolean canAttack(LivingEntity target) {
if (target == null || target == mc.player || !target.isAttackable() || target.isDead()) {
return false;
}
if (mc.player.getAttackCooldownProgress(0.5F) < 0.93F) {
return false;
}
boolean reasonForAttack = mc.player.hasStatusEffect(StatusEffects.BLINDNESS)
|| mc.player.isClimbing()
|| (mc.player.isTouchingWater() && mc.player.isSubmergedIn(FluidTags.WATER))
|| mc.player.hasVehicle()
|| mc.player.getAbilities().flying
|| mc.player.isFallFlying();
if (!reasonForAttack && onlyCrits.get()) {
return !mc.player.isOnGround() && mc.player.fallDistance > 0.0F;
}
return !reasonForAttack;
}
private void performAttack(LivingEntity target) {
if (mc.interactionManager != null && mc.player != null) {
mc.interactionManager.attackEntity(mc.player, target);
mc.player.swingHand(mc.player.getActiveHand());
}
}
@Override
public boolean isEnabled() {
return this.toggled;
}
public void toggle() {
this.toggled = !this.toggled;
}
}

Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Годно + rep
 
Доброй ночи, новый тригер под фт.
Пол часа тестов, после тестов бегал 15 минут меня не забанило.
ss - не нужен
UPD 14:20: я добавил проверку на меч в руке, и немного изменил систему деактивации и активации.
package ru.expensive.implement.features.modules.combat;

import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.registry.tag.FluidTags;
import net.minecraft.util.hit.EntityHitResult;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import ru.expensive.api.feature.module.Module;
import ru.expensive.api.feature.module.ModuleCategory;
import ru.expensive.api.feature.module.setting.implement.BooleanSetting;

public class TriggerBot extends Module {

private final BooleanSetting onlyCrits = new BooleanSetting("Only crits", "Activated only crits");
private final MinecraftClient mc = MinecraftClient.getInstance();

private LivingEntity target;

public TriggerBot() {
super("TriggerBot", ModuleCategory.COMBAT);
setup(onlyCrits);
ClientTickEvents.END_CLIENT_TICK.register(client -> this.onTick());
}

public void onTick() {
if (mc.world == null || mc.player == null || mc.crosshairTarget == null) {
return;
}

if (mc.crosshairTarget instanceof EntityHitResult hitResult) {
if (hitResult.getEntity() instanceof LivingEntity target && target != mc.player && canAttack(target)) {
performAttack(target);
}
}
}

public boolean canAttack(LivingEntity target) {
if (target == null || target == mc.player || !target.isAttackable() || target.isDead()) {
return false;
}

if (!isSwordInHand()) {
return false;
}

if (mc.player.getAttackCooldownProgress(0.5F) < 0.93F) {
return false;
}

boolean reasonForAttack = mc.player.hasStatusEffect(StatusEffects.BLINDNESS)
|| mc.player.isClimbing()
|| (mc.player.isTouchingWater() && mc.player.isSubmergedIn(FluidTags.WATER))
|| mc.player.hasVehicle()
|| mc.player.getAbilities().flying
|| mc.player.isFallFlying();

if (!reasonForAttack && onlyCrits.get()) {
return !mc.player.isOnGround() && mc.player.fallDistance > 0.0F;
}

return !reasonForAttack;
}

private boolean isSwordInHand() {
ItemStack mainHandItem = mc.player.getMainHandStack();
return mainHandItem.getItem() == Items.WOODEN_SWORD || mainHandItem.getItem() == Items.STONE_SWORD
|| mainHandItem.getItem() == Items.IRON_SWORD || mainHandItem.getItem() == Items.GOLDEN_SWORD
|| mainHandItem.getItem() == Items.DIAMOND_SWORD || mainHandItem.getItem() == Items.NETHERITE_SWORD;
}

private void performAttack(LivingEntity target) {
if (mc.interactionManager != null && mc.player != null) {
mc.interactionManager.attackEntity(mc.player, target);
mc.player.swingHand(mc.player.getActiveHand());
}
}

@Override
public void deactivate() {
target = null;
super.deactivate();
}

@Override
public boolean isEnabled() {
target = mc.player;
return false;
}
}



Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Я ИСКРЕННЕ ИЗВИНЯЮСЬ ЗА ТАКОЙ КАЛИЧНЫЙ КОД(ТИПО ЕГО НЕЛЬЗЯ СКОПИРОВАТЬ, Я НЕ ЗНАЮ КАК ЭТО СДЕЛАТЬ!)
Либо я тупой, либо я не понимаю.
1730901923029.png
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу