Начинающий
- Статус
- Оффлайн
- Регистрация
- 9 Мар 2025
- Сообщения
- 106
- Реакции
- 5
- Выберите загрузчик игры
- Fabric
Объясняю, как работает функция: при использовании обычного трезубца с зачарованием „ТягyH III“ вы взлетаете максимум на 18+ блоков, а с Trident Fly он подкидывает ещё выше примерно на 40–50 блоков. {pan4ur, тебе понравится обходик}

Пожалуйста, авторизуйтесь для просмотра ссылки.

tridentfly module:
package sweetie.evaware.client.features.modules.combat;
import lombok.Getter;
import net.minecraft.item.Items;
import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Direction;
import sweetie.evaware.api.event.EventListener;
import sweetie.evaware.api.event.Listener;
import sweetie.evaware.api.event.events.client.TickEvent;
import sweetie.evaware.api.module.Category;
import sweetie.evaware.api.module.Module;
import sweetie.evaware.api.module.ModuleRegister;
import sweetie.evaware.api.module.setting.BooleanSetting;
import sweetie.evaware.api.module.setting.SliderSetting;
import sweetie.evaware.api.system.backend.SharedClass;
/**
* bludnov pasta
*
* @author nekro team
* @since 2.0
*/
@ModuleRegister(name = "Trident Fly", category = Category.COMBAT)
public class TridentFlyModule extends Module {
@Getter private static final TridentFlyModule instance = new TridentFlyModule();
private final BooleanSetting allowNoWater = new BooleanSetting("Allow No Water").value(true);
private final BooleanSetting instant = new BooleanSetting("Instant").value(true);
private final BooleanSetting spam = new BooleanSetting("Spam").value(false);
private final SliderSetting ticks = new SliderSetting("Ticks").value(3f).range(0f, 20f).step(1f).setVisible(spam::getValue);
private boolean wasUsingTrident = false;
public TridentFlyModule() {
addSettings(allowNoWater, instant, spam, ticks);
}
@Override
public void onEvent() {
EventListener tickEvent = TickEvent.getInstance().subscribe(new Listener<>(event -> {
handleTridentSpam();
}));
addEvents(tickEvent);
}
private void handleTridentSpam() {
if (!spam.getValue() || mc.player == null) return;
boolean isUsingTrident = mc.player.isUsingItem() && mc.player.getMainHandStack().getItem() == Items.TRIDENT;
if (isUsingTrident && !wasUsingTrident) {
wasUsingTrident = true;
} else if (wasUsingTrident && !isUsingTrident) {
wasUsingTrident = false;
} else if (isUsingTrident && mc.player.getItemUseTime() >= ticks.getValue()) {
sendPacket(new PlayerActionC2SPacket(PlayerActionC2SPacket.Action.RELEASE_USE_ITEM, BlockPos.ORIGIN, Direction.DOWN));
mc.player.stopUsingItem();
wasUsingTrident = false;
}
}
public boolean shouldAllowNoWater() {
return isEnabled() && allowNoWater.getValue();
}
public boolean shouldInstantPullback() {
return isEnabled() && instant.getValue();
}
private void sendPacket(PlayerActionC2SPacket packet) {
if (mc.getNetworkHandler() != null) {
mc.getNetworkHandler().sendPacket(packet);
}
}
}