From 1a6c816baccc71d7cf8253029b7256e32d5b944c Mon Sep 17 00:00:00 2001 From: cpw Date: Sun, 8 Nov 2015 23:09:33 -0500 Subject: [PATCH] Test of mcp patching --- build.gradle | 1 + .../client/gui/GuiMainMenu.java.patch | 44 +++++++++++++++++++ .../minecraftforge/common/ForgeVersion.java | 1 + .../fml/common/launcher/FMLDeobfTweaker.java | 2 +- 4 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch diff --git a/build.gradle b/build.gradle index 2973a331d..162d318f9 100644 --- a/build.gradle +++ b/build.gradle @@ -51,6 +51,7 @@ minecraft { patchAfter "clean" genPatchesFrom "clean" genMcpPatches = true + applyMcpPatches = true with common } } diff --git a/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch b/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch new file mode 100644 index 000000000..67d02e78a --- /dev/null +++ b/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch @@ -0,0 +1,44 @@ +--- ../src-base/minecraft/net/minecraft/client/gui/GuiMainMenu.java ++++ ../src-work/minecraft/net/minecraft/client/gui/GuiMainMenu.java +@@ -198,6 +198,11 @@ + this.buttonList.add(new GuiButton(1, this.width / 2 - 100, p_73969_1_, I18n.format("menu.singleplayer", new Object[0]))); + this.buttonList.add(new GuiButton(2, this.width / 2 - 100, p_73969_1_ + p_73969_2_ * 1, I18n.format("menu.multiplayer", new Object[0]))); + this.buttonList.add(this.realmsButton = new GuiButton(14, this.width / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.format("menu.online", new Object[0]))); ++ GuiButton fmlModButton = new GuiButton(6, this.width / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.format("fml.menu.mods")); ++ fmlModButton.xPosition = this.width / 2 + 2; ++ realmsButton.width = 98; ++ fmlModButton.width = 98; ++ this.buttonList.add(fmlModButton); + } + + private void addDemoButtons(int p_73972_1_, int p_73972_2_) +@@ -245,6 +250,11 @@ + this.mc.shutdown(); + } + ++ if (button.id == 6) ++ { ++ this.mc.displayGuiScreen(new net.minecraftforge.fml.client.GuiModList(this)); ++ } ++ + if (button.id == 11) + { + this.mc.launchIntegratedServer("Demo_World", "Demo_World", DemoWorldServer.demoWorldSettings); +@@ -490,7 +500,16 @@ + s = s + " Demo"; + } + +- this.drawString(this.fontRendererObj, s, 2, this.height - 10, -1); ++ java.util.List brandings = com.google.common.collect.Lists.reverse(net.minecraftforge.fml.common.FMLCommonHandler.instance().getBrandings(true)); ++ for (int brdline = 0; i < brandings.size(); i++) ++ { ++ String brd = brandings.get(brdline); ++ if (!com.google.common.base.Strings.isNullOrEmpty(brd)) ++ { ++ this.drawString(this.fontRendererObj, brd, 2, this.height - ( 10 + brdline * (this.fontRendererObj.FONT_HEIGHT + 1)), 16777215); ++ } ++ } ++ net.minecraftforge.client.ForgeHooksClient.renderMainMenu(this, this.fontRendererObj, this.width, this.height); + String s1 = "Copyright Mojang AB. Do not distribute!"; + this.drawString(this.fontRendererObj, s1, this.width - this.fontRendererObj.getStringWidth(s1) - 2, this.height - 10, -1); + diff --git a/src/main/java/net/minecraftforge/common/ForgeVersion.java b/src/main/java/net/minecraftforge/common/ForgeVersion.java index 71d594c54..fcc8796b2 100644 --- a/src/main/java/net/minecraftforge/common/ForgeVersion.java +++ b/src/main/java/net/minecraftforge/common/ForgeVersion.java @@ -255,6 +255,7 @@ public class ForgeVersion public static CheckResult getResult(ModContainer mod) { + if (mod == null) return PENDING_CHECK; if (mod instanceof InjectedModContainer) mod = ((InjectedModContainer)mod).wrappedContainer; CheckResult ret = results.get(mod); diff --git a/src/main/java/net/minecraftforge/fml/common/launcher/FMLDeobfTweaker.java b/src/main/java/net/minecraftforge/fml/common/launcher/FMLDeobfTweaker.java index e8fa78753..8079fe4c8 100644 --- a/src/main/java/net/minecraftforge/fml/common/launcher/FMLDeobfTweaker.java +++ b/src/main/java/net/minecraftforge/fml/common/launcher/FMLDeobfTweaker.java @@ -31,7 +31,7 @@ public class FMLDeobfTweaker implements ITweaker { classLoader.registerTransformer(transformer); } classLoader.registerTransformer("net.minecraftforge.fml.common.asm.transformers.ModAccessTransformer"); - classLoader.registerTransformer("net.minecraftforge.fml.common.asm.transformers.ItemStackTransformer"); +// classLoader.registerTransformer("net.minecraftforge.fml.common.asm.transformers.ItemStackTransformer"); try { FMLRelaunchLog.fine("Validating minecraft");