From cc1bbbbd7b115de02fbb9c7ae3a9c7392f524aa7 Mon Sep 17 00:00:00 2001 From: Sollace Date: Sun, 2 Jun 2019 19:20:00 +0200 Subject: [PATCH] Update Kirin and HDSkins --- gradle.properties | 4 +- .../com/minelittlepony/client/FabMod.java | 41 +------------------ .../minelittlepony/client/IModUtilities.java | 29 ------------- .../minelittlepony/client/MineLPClient.java | 7 ++-- .../client/PonyRenderManager.java | 3 +- .../client/gui/hdskins/MineLPHDSkins.java | 8 +--- .../MixinBlockEntityRenderDispatcher.java | 17 -------- .../client/mixin/MixinRenderManager.java | 15 ------- src/main/resources/minelp.mixin.json | 2 - 9 files changed, 10 insertions(+), 116 deletions(-) delete mode 100644 src/main/java/com/minelittlepony/client/IModUtilities.java delete mode 100644 src/main/java/com/minelittlepony/client/mixin/MixinBlockEntityRenderDispatcher.java delete mode 100644 src/main/java/com/minelittlepony/client/mixin/MixinRenderManager.java diff --git a/gradle.properties b/gradle.properties index 53bed1fa..95e1bb75 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,5 +18,5 @@ org.gradle.daemon=false # Dependencies fabric_version=0.3.0+ - kirin_version=57995a8ac5 - hd_skins_version=26667716ca + kirin_version=b69d6643c8 + hd_skins_version=b4327b9cf9 diff --git a/src/main/java/com/minelittlepony/client/FabMod.java b/src/main/java/com/minelittlepony/client/FabMod.java index 89b24ce7..4afeeec6 100644 --- a/src/main/java/com/minelittlepony/client/FabMod.java +++ b/src/main/java/com/minelittlepony/client/FabMod.java @@ -5,28 +5,16 @@ import net.fabricmc.fabric.api.client.keybinding.FabricKeyBinding; import net.fabricmc.fabric.api.client.keybinding.KeyBindingRegistry; import net.fabricmc.fabric.api.event.client.ClientTickCallback; import net.fabricmc.loader.api.FabricLoader; -import net.minecraft.block.entity.BlockEntity; import net.minecraft.client.MinecraftClient; import net.minecraft.client.options.KeyBinding; -import net.minecraft.client.render.block.entity.BlockEntityRenderDispatcher; -import net.minecraft.client.render.block.entity.BlockEntityRenderer; -import net.minecraft.client.render.entity.EntityRenderDispatcher; -import net.minecraft.client.render.entity.EntityRenderer; import net.minecraft.client.util.InputUtil; -import net.minecraft.entity.Entity; import net.minecraft.util.Identifier; import com.minelittlepony.client.gui.hdskins.MineLPHDSkins; -import com.minelittlepony.client.mixin.MixinBlockEntityRenderDispatcher; -import com.minelittlepony.client.settings.ClientPonyConfig; -import com.minelittlepony.hdskins.mixin.MixinEntityRenderDispatcher; -import com.minelittlepony.settings.JsonConfig; +import com.minelittlepony.common.client.IModUtilities; import javax.annotation.Nullable; -import java.nio.file.Path; -import java.util.function.Function; - public class FabMod implements ClientModInitializer, ClientTickCallback, IModUtilities { @Nullable @@ -43,8 +31,6 @@ public class FabMod implements ClientModInitializer, ClientTickCallback, IModUti } else { mlp = new MineLPClient(this); } - - mlp.init(JsonConfig.of(getConfigDirectory().resolve("minelp.json"), ClientPonyConfig::new)); } @Override @@ -77,27 +63,4 @@ public class FabMod implements ClientModInitializer, ClientTickCallback, IModUti KeyBindingRegistry.INSTANCE.register(binding); return binding; } - - @Override - public void addRenderer(Class type, BlockEntityRenderer renderer) { - MixinBlockEntityRenderDispatcher mx = ((MixinBlockEntityRenderDispatcher)BlockEntityRenderDispatcher.INSTANCE); - mx.getRenderers().put(type, renderer); - renderer.setRenderManager(BlockEntityRenderDispatcher.INSTANCE); - } - - @Override - public void addRenderer(Class type, Function> renderer) { - EntityRenderDispatcher mx = MinecraftClient.getInstance().getEntityRenderManager(); - ((MixinEntityRenderDispatcher)mx).getRenderers().put(type, renderer.apply(mx)); - } - - @Override - public Path getConfigDirectory() { - return FabricLoader.getInstance().getConfigDirectory().toPath(); - } - - @Override - public Path getAssetsDirectory() { - return FabricLoader.getInstance().getGameDirectory().toPath().resolve("assets"); - } -} \ No newline at end of file +} diff --git a/src/main/java/com/minelittlepony/client/IModUtilities.java b/src/main/java/com/minelittlepony/client/IModUtilities.java deleted file mode 100644 index ae90ac2f..00000000 --- a/src/main/java/com/minelittlepony/client/IModUtilities.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.minelittlepony.client; - -import net.minecraft.block.entity.BlockEntity; -import net.minecraft.client.options.KeyBinding; -import net.minecraft.client.render.block.entity.BlockEntityRenderer; -import net.minecraft.client.render.entity.EntityRenderDispatcher; -import net.minecraft.client.render.entity.EntityRenderer; -import net.minecraft.entity.Entity; - -import java.nio.file.Path; -import java.util.function.Function; - -public interface IModUtilities { - void addRenderer(Class type, BlockEntityRenderer renderer); - - void addRenderer(Class type, Function> renderer); - - default boolean hasFml() { - return false; - } - - default KeyBinding registerKeybind(String category, int key, String bindName) { - return new KeyBinding(category, key, bindName); - } - - Path getConfigDirectory(); - - Path getAssetsDirectory(); -} diff --git a/src/main/java/com/minelittlepony/client/MineLPClient.java b/src/main/java/com/minelittlepony/client/MineLPClient.java index 87790772..23bbd787 100644 --- a/src/main/java/com/minelittlepony/client/MineLPClient.java +++ b/src/main/java/com/minelittlepony/client/MineLPClient.java @@ -4,6 +4,9 @@ import com.minelittlepony.MineLittlePony; import com.minelittlepony.client.gui.GuiPonySettings; import com.minelittlepony.client.pony.PonyManager; import com.minelittlepony.client.render.tileentities.skull.PonySkullRenderer; +import com.minelittlepony.client.settings.ClientPonyConfig; +import com.minelittlepony.common.client.IModUtilities; +import com.minelittlepony.settings.JsonConfig; import com.minelittlepony.settings.PonyConfig; import net.minecraft.ChatFormat; @@ -43,10 +46,8 @@ public class MineLPClient extends MineLittlePony { public MineLPClient(IModUtilities utils) { utilities = utils; - } - protected void init(PonyConfig newConfig) { - config = newConfig; + config = JsonConfig.of(utils.getConfigDirectory().resolve("minelp.json"), ClientPonyConfig::new); ponyManager = new PonyManager(config); keyBinding = utilities.registerKeybind("key.categories.misc", GLFW.GLFW_KEY_F9, "key.minelittlepony.settings"); } diff --git a/src/main/java/com/minelittlepony/client/PonyRenderManager.java b/src/main/java/com/minelittlepony/client/PonyRenderManager.java index ff07ebe0..725aa8e2 100644 --- a/src/main/java/com/minelittlepony/client/PonyRenderManager.java +++ b/src/main/java/com/minelittlepony/client/PonyRenderManager.java @@ -6,7 +6,6 @@ import java.util.function.Function; import com.google.common.collect.Maps; import com.minelittlepony.client.gui.hdskins.DummyPony; import com.minelittlepony.client.gui.hdskins.RenderDummyPony; -import com.minelittlepony.client.mixin.MixinRenderManager; import com.minelittlepony.client.model.races.PlayerModels; import com.minelittlepony.client.render.LevitatingItemRenderer; import com.minelittlepony.client.render.IPonyRender; @@ -68,7 +67,7 @@ public class PonyRenderManager { private void addPlayerSkin(EntityRenderDispatcher manager, boolean slimArms, PlayerModels playerModel) { RenderPonyPlayer renderer = playerModel.createRenderer(manager, slimArms); - ((MixinRenderManager)manager).getMutableSkinMap().put(playerModel.getId(slimArms), renderer); + MineLPClient.getInstance().getModUtilities().addRenderer(playerModel.getId(slimArms), renderer); } /** diff --git a/src/main/java/com/minelittlepony/client/gui/hdskins/MineLPHDSkins.java b/src/main/java/com/minelittlepony/client/gui/hdskins/MineLPHDSkins.java index fe6a7469..5ca36349 100644 --- a/src/main/java/com/minelittlepony/client/gui/hdskins/MineLPHDSkins.java +++ b/src/main/java/com/minelittlepony/client/gui/hdskins/MineLPHDSkins.java @@ -2,7 +2,7 @@ package com.minelittlepony.client.gui.hdskins; import net.minecraft.client.MinecraftClient; -import com.minelittlepony.client.IModUtilities; +import com.minelittlepony.common.client.IModUtilities; import com.minelittlepony.client.MineLPClient; import com.minelittlepony.client.PonySkinModifier; import com.minelittlepony.client.PonySkinParser; @@ -11,7 +11,6 @@ import com.minelittlepony.hdskins.HDSkins; import com.minelittlepony.hdskins.net.LegacySkinServer; import com.minelittlepony.hdskins.net.SkinServer; import com.minelittlepony.hdskins.net.ValhallaSkinServer; -import com.minelittlepony.settings.PonyConfig; /** * All the interactions with HD Skins. @@ -24,11 +23,6 @@ public class MineLPHDSkins extends MineLPClient { public MineLPHDSkins(IModUtilities utils) { super(utils); - } - - @Override - protected void init(PonyConfig newConfig) { - super.init(newConfig); // Register pony servers SkinServer.defaultServers.add(new LegacySkinServer(MINELP_LEGACY_SERVER, MINELP_LEGACY_GATEWAY)); diff --git a/src/main/java/com/minelittlepony/client/mixin/MixinBlockEntityRenderDispatcher.java b/src/main/java/com/minelittlepony/client/mixin/MixinBlockEntityRenderDispatcher.java deleted file mode 100644 index 87e52736..00000000 --- a/src/main/java/com/minelittlepony/client/mixin/MixinBlockEntityRenderDispatcher.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.minelittlepony.client.mixin; - -import net.minecraft.block.entity.BlockEntity; -import net.minecraft.client.render.block.entity.BlockEntityRenderDispatcher; -import net.minecraft.client.render.block.entity.BlockEntityRenderer; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -import java.util.Map; - -@Mixin(BlockEntityRenderDispatcher.class) -public interface MixinBlockEntityRenderDispatcher { - - @Accessor("renderers") - Map, BlockEntityRenderer> getRenderers(); -} diff --git a/src/main/java/com/minelittlepony/client/mixin/MixinRenderManager.java b/src/main/java/com/minelittlepony/client/mixin/MixinRenderManager.java deleted file mode 100644 index 34caf1cf..00000000 --- a/src/main/java/com/minelittlepony/client/mixin/MixinRenderManager.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.minelittlepony.client.mixin; - -import java.util.Map; - -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -import net.minecraft.client.render.entity.EntityRenderDispatcher; -import net.minecraft.client.render.entity.PlayerEntityRenderer; - -@Mixin(EntityRenderDispatcher.class) -public interface MixinRenderManager { - @Accessor("modelRenderers") - Map getMutableSkinMap(); -} diff --git a/src/main/resources/minelp.mixin.json b/src/main/resources/minelp.mixin.json index d44220f4..9b9526b7 100644 --- a/src/main/resources/minelp.mixin.json +++ b/src/main/resources/minelp.mixin.json @@ -6,12 +6,10 @@ "compatibilityLevel": "JAVA_8", "client": [ "IResizeable", - "MixinBlockEntityRenderDispatcher", "MixinDefaultPlayerSkin", "MixinFirstPersonRenderer", "MixinGlStateManager", "MixinItemRenderer", - "MixinRenderManager", "MixinThreadDownloadImageData" ] }