Начинающий
- Статус
- Оффлайн
- Регистрация
- 18 Авг 2023
- Сообщения
- 488
- Реакции
- 12
Для лучшего эффекта - заходим в класс "AbstractOption", идем на 208 строчку, там заменяем 1 ? 100 на 1 ? 1 (
Пожалуйста, авторизуйтесь для просмотра ссылки.
)
Пожалуйста, авторизуйтесь для просмотра ссылки.
капец ваще имба фул брайт пенит:
package eva.ware.modules.impl.render;
import com.google.common.eventbus.Subscribe;
import eva.ware.events.EventUpdate;
import eva.ware.modules.api.Category;
import eva.ware.modules.api.Module;
import eva.ware.modules.api.ModuleRegister;
import eva.ware.modules.settings.impl.BooleanSetting;
import eva.ware.modules.settings.impl.ModeSetting;
import eva.ware.modules.settings.impl.SliderSetting;
import eva.ware.utils.animations.easing.AnimationEasing;
import eva.ware.utils.animations.easing.Easing;
import net.minecraft.potion.EffectInstance;
import net.minecraft.potion.Effects;
@ModuleRegister(name = "FullBright", type = Category.Render)
public class FullBright extends Module {
private final ModeSetting mode = new ModeSetting("Мод", "Gamma", "Gamma", "Potion");
private final AnimationEasing animation = new AnimationEasing(Easing.EASE_OUT_QUART, 500);
private final BooleanSetting dynamic = new BooleanSetting("Динамический", false).setVisible(() -> mode.is("Gamma"));
private final SliderSetting bright = new SliderSetting("Яркость", 2.5f, 1, 5, 0.1f).setVisible(() -> !dynamic.get() && mode.is("Gamma"));
private float originalGamma;
private boolean isGammaChanged = false;
public FullBright() {
addSettings(mode, dynamic, bright);
}
@Override
public void onEnable() {
super.onEnable();
saveGamma();
}
@Override
public void onDisable() {
super.onDisable();
restoreGamma();
mc.player.removeActivePotionEffect(new EffectInstance(Effects.NIGHT_VISION).getPotion());
}
@Subscribe
public void onUpdate(EventUpdate e) {
if (mode.is("Gamma")) {
if (dynamic.get()) {
float lightLevel = mc.player.getBrightness();
animation.run(calculateGamma(lightLevel)); // TODO: анимация яркости для плавности
float gamma = (float) animation.getValue();
setGamma(gamma);
} else {
setGamma(bright.get());
}
} else {
// if (!mc.player.isPotionActive(Effects.NIGHT_VISION)) // TODO: можно еще проверку накинуть типа
mc.player.addPotionEffect(new EffectInstance(Effects.NIGHT_VISION, 16360, 0));
}
}
private float calculateGamma(float lightLevel) {
float minGamma = 1f;
float maxGamma = 5.0f;
float gammaRange = maxGamma - minGamma;
float lightRange = 1.0f - 0.0f;
float gamma = minGamma + (gammaRange * (1.0f - lightLevel / lightRange));
return gamma;
}
public void saveGamma() {
originalGamma = (float) mc.gameSettings.gamma;
}
public void setGamma(float newGamma) {
saveGamma();
mc.gameSettings.gamma = newGamma;
isGammaChanged = true;
}
public void restoreGamma() {
if (isGammaChanged) {
mc.gameSettings.gamma = originalGamma;
isGammaChanged = false;
}
}
}
А в твоём видимо много идей, поведай нам бездарным что в кубах та и в целом в мире можно сделать.