From 4d81b3b44941a914d343bfab6c45784ed9bb929d Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 11 Jul 2019 19:20:13 +0200 Subject: [PATCH] Update Kirin --- .../minelittlepony/client/MineLittlePony.java | 2 +- .../client/gui/GuiPonySettings.java | 12 +++--- .../client/mixin/MixinDefaultPlayerSkin.java | 6 +-- .../client/pony/PonyManager.java | 4 +- .../client/render/entities/MobRenderers.java | 8 ++-- .../skull/PlayerSkullRenderer.java | 2 +- .../client/settings/ClientPonyConfig.java | 15 +++---- .../com/minelittlepony/pony/meta/Size.java | 2 +- .../minelittlepony/settings/PonyConfig.java | 41 ++++++------------- .../minelittlepony/settings/PonySettings.java | 3 +- 10 files changed, 38 insertions(+), 57 deletions(-) diff --git a/src/main/java/com/minelittlepony/client/MineLittlePony.java b/src/main/java/com/minelittlepony/client/MineLittlePony.java index d6821388..aabef234 100644 --- a/src/main/java/com/minelittlepony/client/MineLittlePony.java +++ b/src/main/java/com/minelittlepony/client/MineLittlePony.java @@ -141,7 +141,7 @@ public class MineLittlePony implements ClientModInitializer { private void onScreenInit(Screen screen, ScreenInitCallback.ButtonList buttons) { if (screen instanceof TitleScreen) { - VisibilityMode mode = config.getHorseButtonMode(); + VisibilityMode mode = config.horseButton.get(); boolean show = mode == VisibilityMode.ON || (mode == VisibilityMode.AUTO && !(hasHdSkins || hasModMenu )); diff --git a/src/main/java/com/minelittlepony/client/gui/GuiPonySettings.java b/src/main/java/com/minelittlepony/client/gui/GuiPonySettings.java index 453bb66b..7ac904f0 100644 --- a/src/main/java/com/minelittlepony/client/gui/GuiPonySettings.java +++ b/src/main/java/com/minelittlepony/client/gui/GuiPonySettings.java @@ -76,10 +76,10 @@ public class GuiPonySettings extends GameGui { .setText("gui.done"); content.addButton(new Label(LEFT, row)).getStyle().setText(PONY_LEVEL); - content.addButton(new Slider(LEFT, row += 20, 0, 2, config.getPonyLevel().ordinal()) + content.addButton(new Slider(LEFT, row += 20, 0, 2, config.ponyLevel.get().ordinal()) .onChange(v -> { PonyLevel level = PonyLevel.valueFor(v); - config.setPonyLevel(level); + config.ponyLevel.set(level); return (float)level.ordinal(); }) .setFormatter(value -> I18n.translate(PONY_LEVEL + "." + PonyLevel.valueFor(value).name().toLowerCase()))); @@ -90,8 +90,8 @@ public class GuiPonySettings extends GameGui { .onChange(config::setGlobalScaleFactor) .setFormatter(value -> I18n.translate("minelp.debug.scale.value", I18n.translate(describeCurrentScale(value))))); content.addButton(new Label(LEFT, row += 30)).getStyle().setText("minelp.debug.size"); - content.addButton(new EnumSlider<>(LEFT, row += 15, config.getOverrideSize()) - .onChange(config::setSizeOverride)); + content.addButton(new EnumSlider<>(LEFT, row += 15, config.sizeOverride.get()) + .onChange(config.sizeOverride::set)); } row += 20; @@ -104,8 +104,8 @@ public class GuiPonySettings extends GameGui { content.addButton(new Label(LEFT, row += 20)).getStyle().setText(OPTIONS_PREFIX + "button"); - content.addButton(new EnumSlider<>(LEFT, row += 20, config.getHorseButtonMode()) - .onChange(config::setHorseButtonMode)); + content.addButton(new EnumSlider<>(LEFT, row += 20, config.horseButton.get()) + .onChange(config.horseButton::set)); if (RIGHT != LEFT) { row = 0; diff --git a/src/main/java/com/minelittlepony/client/mixin/MixinDefaultPlayerSkin.java b/src/main/java/com/minelittlepony/client/mixin/MixinDefaultPlayerSkin.java index 99fa07e5..edaf47ff 100644 --- a/src/main/java/com/minelittlepony/client/mixin/MixinDefaultPlayerSkin.java +++ b/src/main/java/com/minelittlepony/client/mixin/MixinDefaultPlayerSkin.java @@ -21,7 +21,7 @@ public abstract class MixinDefaultPlayerSkin { at = @At("HEAD"), cancellable = true) private static void legacySkin(CallbackInfoReturnable cir) { - if (MineLittlePony.getInstance().getConfig().getPonyLevel() == PonyLevel.PONIES) { + if (MineLittlePony.getInstance().getConfig().ponyLevel.get() == PonyLevel.PONIES) { cir.setReturnValue(IPonyManager.STEVE); } } @@ -30,7 +30,7 @@ public abstract class MixinDefaultPlayerSkin { at = @At("HEAD"), cancellable = true) private static void defaultSkin(UUID uuid, CallbackInfoReturnable cir) { - if (MineLittlePony.getInstance().getConfig().getPonyLevel() == PonyLevel.PONIES) { + if (MineLittlePony.getInstance().getConfig().ponyLevel.get() == PonyLevel.PONIES) { cir.setReturnValue(IPonyManager.getDefaultSkin(uuid)); } } @@ -39,7 +39,7 @@ public abstract class MixinDefaultPlayerSkin { at = @At("HEAD"), cancellable = true) private static void skinType(UUID uuid, CallbackInfoReturnable cir) { - if (MineLittlePony.getInstance().getConfig().getPonyLevel() == PonyLevel.PONIES) { + if (MineLittlePony.getInstance().getConfig().ponyLevel.get() == PonyLevel.PONIES) { cir.setReturnValue(PlayerModels.forRace(MineLittlePony.getInstance().getManager() .getPony(IPonyManager.getDefaultSkin(uuid), uuid) diff --git a/src/main/java/com/minelittlepony/client/pony/PonyManager.java b/src/main/java/com/minelittlepony/client/pony/PonyManager.java index b6e916bd..7b35f6cc 100644 --- a/src/main/java/com/minelittlepony/client/pony/PonyManager.java +++ b/src/main/java/com/minelittlepony/client/pony/PonyManager.java @@ -109,7 +109,7 @@ public class PonyManager implements IPonyManager, IdentifiableResourceReloadList public IPony getPony(Identifier resource, UUID uuid) { IPony pony = getPony(resource); - if (config.getPonyLevel() == PonyLevel.PONIES && pony.getMetadata().getRace().isHuman()) { + if (config.ponyLevel.get() == PonyLevel.PONIES && pony.getMetadata().getRace().isHuman()) { return getBackgroundPony(uuid); } @@ -118,7 +118,7 @@ public class PonyManager implements IPonyManager, IdentifiableResourceReloadList @Override public IPony getDefaultPony(UUID uuid) { - if (config.getPonyLevel() != PonyLevel.PONIES) { + if (config.ponyLevel.get() != PonyLevel.PONIES) { return getPony(DefaultSkinHelper.getTexture(uuid)); } diff --git a/src/main/java/com/minelittlepony/client/render/entities/MobRenderers.java b/src/main/java/com/minelittlepony/client/render/entities/MobRenderers.java index a2d55e22..b6f67203 100644 --- a/src/main/java/com/minelittlepony/client/render/entities/MobRenderers.java +++ b/src/main/java/com/minelittlepony/client/render/entities/MobRenderers.java @@ -4,6 +4,7 @@ import com.google.common.collect.Lists; import com.minelittlepony.client.MineLittlePony; import com.minelittlepony.client.PonyRenderManager; import com.minelittlepony.common.util.settings.Config; +import com.minelittlepony.common.util.settings.Setting; import java.util.List; @@ -13,7 +14,7 @@ import net.minecraft.entity.passive.*; /** * Central location where new entity renderers are registered and applied. */ -public enum MobRenderers implements Config.Setting { +public enum MobRenderers implements Setting { VILLAGERS { @Override void register(boolean state, PonyRenderManager pony) { @@ -78,9 +79,10 @@ public enum MobRenderers implements Config.Setting { } @Override - public void set(Boolean value) { - Config.Setting.super.set(value); + public Boolean set(Boolean value) { + value = Setting.super.set(value); apply(PonyRenderManager.getInstance()); + return value; } @Override diff --git a/src/main/java/com/minelittlepony/client/render/tileentities/skull/PlayerSkullRenderer.java b/src/main/java/com/minelittlepony/client/render/tileentities/skull/PlayerSkullRenderer.java index 141732ff..2d8f95ac 100644 --- a/src/main/java/com/minelittlepony/client/render/tileentities/skull/PlayerSkullRenderer.java +++ b/src/main/java/com/minelittlepony/client/render/tileentities/skull/PlayerSkullRenderer.java @@ -20,7 +20,7 @@ public class PlayerSkullRenderer extends PonySkull { @Override public boolean canRender(PonyConfig config) { - return config.getPonyLevel() != PonyLevel.HUMANS; + return config.ponyLevel.get() != PonyLevel.HUMANS; } @Override diff --git a/src/main/java/com/minelittlepony/client/settings/ClientPonyConfig.java b/src/main/java/com/minelittlepony/client/settings/ClientPonyConfig.java index 3256bde8..6b436530 100644 --- a/src/main/java/com/minelittlepony/client/settings/ClientPonyConfig.java +++ b/src/main/java/com/minelittlepony/client/settings/ClientPonyConfig.java @@ -5,11 +5,15 @@ import net.minecraft.entity.player.PlayerEntity; import com.minelittlepony.client.render.entities.MobRenderers; import com.minelittlepony.common.client.gui.VisibilityMode; +import com.minelittlepony.common.util.settings.Setting; import com.minelittlepony.settings.PonyConfig; public class ClientPonyConfig extends PonyConfig { - private final Setting buttonMode = new Value<>("horseButton", VisibilityMode.AUTO); + /** + * Visibility mode for the horse button. + */ + public final Setting horseButton = value("horseButton", VisibilityMode.AUTO); public ClientPonyConfig() { initWith(MobRenderers.values()); @@ -23,13 +27,4 @@ public class ClientPonyConfig extends PonyConfig { player.calculateDimensions(); } } - - public VisibilityMode getHorseButtonMode() { - return buttonMode.get(); - } - - public VisibilityMode setHorseButtonMode(VisibilityMode value) { - buttonMode.set(value); - return value; - } } diff --git a/src/main/java/com/minelittlepony/pony/meta/Size.java b/src/main/java/com/minelittlepony/pony/meta/Size.java index 7704582e..cbd86d93 100644 --- a/src/main/java/com/minelittlepony/pony/meta/Size.java +++ b/src/main/java/com/minelittlepony/pony/meta/Size.java @@ -56,7 +56,7 @@ public enum Size implements ITriggerPixelMapped { } public Size getEffectiveSize() { - Size sz = MineLittlePony.getInstance().getConfig().getOverrideSize(); + Size sz = MineLittlePony.getInstance().getConfig().sizeOverride.get(); if (sz != UNSET) { return sz; diff --git a/src/main/java/com/minelittlepony/settings/PonyConfig.java b/src/main/java/com/minelittlepony/settings/PonyConfig.java index b011a495..2d8e4cc4 100644 --- a/src/main/java/com/minelittlepony/settings/PonyConfig.java +++ b/src/main/java/com/minelittlepony/settings/PonyConfig.java @@ -3,6 +3,7 @@ package com.minelittlepony.settings; import net.minecraft.util.math.MathHelper; import com.minelittlepony.common.util.settings.JsonConfig; +import com.minelittlepony.common.util.settings.Setting; import com.minelittlepony.pony.meta.Size; /** @@ -10,9 +11,16 @@ import com.minelittlepony.pony.meta.Size; */ public class PonyConfig extends JsonConfig { - private final Setting ponyLevel = new Value<>("ponylevel", PonyLevel.PONIES); - private final Setting scaleFactor = new Value<>("globalScaleFactor", 0.9F); - private final Setting sizeOverride = new Value<>("sieOverride", Size.UNSET); + /** + * Sets the pony level. Want MOAR PONEHS? Well here you go. + */ + public final Setting ponyLevel = value("ponylevel", PonyLevel.PONIES); + private final Setting scaleFactor = value("globalScaleFactor", 0.9F); + + /** + * Debug override for pony sizes. + */ + public final Setting sizeOverride = value("sizeOverride", Size.UNSET); public PonyConfig() { initWith(PonySettings.values()); @@ -24,23 +32,7 @@ public class PonyConfig extends JsonConfig { * @param ignorePony true to ignore whatever value the setting has. */ public PonyLevel getEffectivePonyLevel(boolean ignorePony) { - return ignorePony ? PonyLevel.BOTH : getPonyLevel(); - } - - /** - * Actually gets the pony level value. No option to ignore reality here. - */ - public PonyLevel getPonyLevel() { - return ponyLevel.get(); - } - - /** - * Sets the pony level. Want MOAR PONEHS? Well here you go. - * - * @param ponylevel - */ - public void setPonyLevel(PonyLevel ponylevel) { - ponyLevel.set(ponylevel); + return ignorePony ? PonyLevel.BOTH : ponyLevel.get(); } public float setGlobalScaleFactor(float f) { @@ -58,13 +50,4 @@ public class PonyConfig extends JsonConfig { public float getGlobalScaleFactor() { return PonySettings.SHOWSCALE.get() ? scaleFactor.get() : 1; } - - public Size getOverrideSize() { - return sizeOverride.get(); - } - - public Size setSizeOverride(Size value) { - sizeOverride.set(value); - return value; - } } diff --git a/src/main/java/com/minelittlepony/settings/PonySettings.java b/src/main/java/com/minelittlepony/settings/PonySettings.java index 0e3cfb74..28e5ed2c 100644 --- a/src/main/java/com/minelittlepony/settings/PonySettings.java +++ b/src/main/java/com/minelittlepony/settings/PonySettings.java @@ -2,11 +2,12 @@ package com.minelittlepony.settings; import com.minelittlepony.client.MineLittlePony; import com.minelittlepony.common.util.settings.Config; +import com.minelittlepony.common.util.settings.Setting; /** * Mod settings. */ -public enum PonySettings implements Config.Setting { +public enum PonySettings implements Setting { SIZES, SNUZZLES, FILLYCAM,