- Статус
- Оффлайн
- Регистрация
- 5 Мар 2024
- Сообщения
- 69
- Реакции
- 0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
- Выберите загрузчик игры
- Vanilla
- OptiFine
Данное чудо скорее всего не работает на фантайме, так как там анти-чит спуфает полученные игроком эффекты, но для того же spookytime
пойдёт
ss -
code:

ss -
Пожалуйста, авторизуйтесь для просмотра ссылки.
code:
code:
package cheat.client.modules.impl.misc;
import com.google.common.eventbus.Subscribe;
import cheat.client.Cheat;
import cheat.client.events.EventUpdate;
import cheat.client.modules.api.Module;
import cheat.client.modules.api.ModuleRegister;
import cheat.client.modules.api.Type;
import cheat.client.modules.settings.impl.BooleanSetting;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.potion.Effect;
import net.minecraft.potion.EffectInstance;
import net.minecraft.potion.Effects;
import net.minecraft.util.text.TextFormatting;
import java.util.HashMap;
import java.util.Map;
@ModuleRegister(name = "Potion Helper", type = Type.Misc, desc = "Выводит в чат полученые игроком эффекты")
public class PotionHelper extends Module {
private static final Map<Effect, String> EFFECT_TRANSLATIONS = new HashMap<>() {{
put(Effects.SPEED, "Speed");
put(Effects.STRENGTH, "Strength");
put(Effects.INSTANT_HEALTH, "Instant health");
put(Effects.RESISTANCE, "Resistance");
put(Effects.HASTE, "Haste");
put(Effects.REGENERATION, "Regeneration");
put(Effects.WITHER, "Wither");
put(Effects.POISON, "Poison");
}};
private final BooleanSetting friend = new BooleanSetting("Пропускать друзей", true);
//хуйня ненужная
private final BooleanSetting speedSetting = new BooleanSetting("Скорость", true);
private final BooleanSetting strengthSetting = new BooleanSetting("Сила", true);
private final BooleanSetting instantHealthSetting = new BooleanSetting("Прилив Здоровья", true);
private final BooleanSetting resistanceSetting = new BooleanSetting("Сопротивление", true);
private final BooleanSetting hasteSetting = new BooleanSetting("Спешка", true);
private final BooleanSetting regenerationSetting = new BooleanSetting("Регенерация", true);
private final BooleanSetting witherSetting = new BooleanSetting("Иссушение", true);
private final BooleanSetting poisonSetting = new BooleanSetting("Отравление", true);
private final BooleanSetting allEffectsSetting = new BooleanSetting("Все Эффекты", false);
private final Map<String, Map<Effect, Integer>> playerPotionEffects = new HashMap<>();
public PotionHelper() {
allEffectsSetting.setVisible(() -> {
if (allEffectsSetting.get()) {
speedSetting.set(true);
strengthSetting.set(true);
instantHealthSetting.set(true);
resistanceSetting.set(true);
hasteSetting.set(true);
regenerationSetting.set(true);
witherSetting.set(true);
poisonSetting.set(true);
}
return true;
});
addSettings(friend);
}
[USER=1474073]@Subscribe[/USER]
public void onUpdate(EventUpdate event) {
if (mc.world == null || mc.player == null) return;
for (PlayerEntity player : mc.world.getPlayers()) {
String playerName = player.getName().getString();
if (player == mc.player || (friend.get() && Cheat.getInstance().friendManager.isFriend(playerName))) continue;
Map<Effect, Integer> effects = new HashMap<>();
StringBuilder effectList = new StringBuilder();
for (EffectInstance activeEffect : player.getActivePotionEffects()) {
Effect effect = activeEffect.getPotion();
int amplifier = activeEffect.getAmplifier() + 1;
effects.put(effect, amplifier);
if (isEffectActive(effect) && !playerPotionEffects.getOrDefault(playerName, new HashMap<>()).containsKey(effect)) {
String effectName = EFFECT_TRANSLATIONS.getOrDefault(effect, effect.getName());
String duration = formatDuration(activeEffect.getDuration());
effectList.append(String.format("%s- %s %d (%s)\n",
TextFormatting.GRAY,
effectName,
amplifier,
duration
));
}
}
if (effectList.length() > 0) {
String message = String.format("%s[%s] Получил эффекты:\n%s",
TextFormatting.RED,
playerName,
effectList.toString().trim()
);
print(message);
}
playerPotionEffects.put(playerName, effects);
}
}
private boolean isEffectActive(Effect effect) {
if (allEffectsSetting.get()) return true;
if (effect == Effects.SPEED) return speedSetting.get();
if (effect == Effects.STRENGTH) return strengthSetting.get();
if (effect == Effects.INSTANT_HEALTH) return instantHealthSetting.get();
if (effect == Effects.RESISTANCE) return resistanceSetting.get();
if (effect == Effects.HASTE) return hasteSetting.get();
if (effect == Effects.REGENERATION) return regenerationSetting.get();
if (effect == Effects.WITHER) return witherSetting.get();
if (effect == Effects.POISON) return poisonSetting.get();
return false;
}
private String formatDuration(int ticks) {
int seconds = ticks / 20;
int minutes = seconds / 60;
seconds %= 60;
if (minutes > 0) {
return String.format("%dм %02dс", minutes, seconds);
} else {
return String.format("%dс", seconds);
}
}
}