From 5b5f05859ce8c0dbb568e64c244d51987e1d284c Mon Sep 17 00:00:00 2001 From: Christian Date: Sat, 29 Jun 2013 13:33:14 -0400 Subject: [PATCH] First draft of 1.6 update --- fml/build.xml | 21 +++-- .../fml/client/CopySubimageTextureHelper.java | 30 ------- .../cpw/mods/fml/client/FMLClientHandler.java | 2 +- .../mods/fml/client/GuiIdMismatchScreen.java | 3 +- .../cpw/mods/fml/client/GuiModList.java | 7 +- .../fml/client/GuiModsMissingForServer.java | 6 +- .../cpw/mods/fml/client/GuiScrollingList.java | 7 +- .../cpw/mods/fml/client/ITextureFX.java | 29 ------- .../fml/client/OpenGL43TextureHelper.java | 29 ------- .../cpw/mods/fml/client/TextureFXManager.java | 85 +++++++++---------- .../cpw/mods/fml/client/TextureHelper.java | 70 --------------- .../client/registry/RenderingRegistry.java | 7 +- .../minecraft/src/FMLRenderAccessLibrary.java | 13 ++- fml/client/net/minecraft/src/ModLoader.java | 21 +++-- .../deobf/FMLDeobfuscatingRemapper.java | 14 +-- ...utSupplier.java => LZMAInputSupplier.java} | 16 ++-- .../mods/fml/common/launcher/FMLTweaker.java | 31 ++++++- .../fml/common/patcher/ClassPatchManager.java | 6 ++ .../fml/common/registry/LanguageRegistry.java | 17 ++-- .../fml/common/registry/VillagerRegistry.java | 33 +++++-- .../mods/fml/relauncher/FMLInjectionData.java | 2 +- .../mods/fml/relauncher/FMLLaunchHandler.java | 1 + fml/common/fml_at.cfg | 85 ++++++++++--------- fml/jsons/1.6-dev.json | 5 +- .../net/minecraft/client/Minecraft.java.patch | 66 +++++++------- .../client/gui/GuiCreateWorld.java.patch | 2 +- .../client/gui/GuiErrorScreen.java.patch | 2 +- .../client/gui/GuiMainMenu.java.patch | 70 ++++++++------- .../multiplayer/GuiConnecting.java.patch | 2 +- .../multiplayer/NetClientHandler.java.patch | 32 +++---- .../client/renderer/RenderBlocks.java.patch | 10 +-- .../renderer/entity/RenderVillager.java.patch | 18 ++++ .../renderer/texture/TextureClock.java.patch | 11 --- .../texture/TextureCompass.java.patch | 11 --- .../resources/LanguageManager.java.patch | 19 +++++ .../client/settings/GameSettings.java.patch | 2 +- .../CallableSuspiciousClasses.java.patch | 11 ++- .../minecraft/entity/EntityList.java.patch | 4 +- .../minecraft/entity/EntityTracker.java.patch | 2 +- .../entity/EntityTrackerEntry.java.patch | 8 +- .../entity/boss/IBossDisplayData.java.patch | 2 +- .../entity/item/EntityItem.java.patch | 2 +- .../entity/monster/EntitySlime.java.patch | 2 +- .../entity/passive/EntityVillager.java.patch | 19 ++--- .../entity/player/EntityPlayer.java.patch | 8 +- .../net/minecraft/item/Item.java.patch | 8 +- .../net/minecraft/logging/LogAgent.java.patch | 7 +- .../network/NetServerHandler.java.patch | 10 +-- .../network/NetworkListenThread.java.patch | 4 +- .../network/TcpConnection.java.patch | 2 +- .../network/packet/NetHandler.java.patch | 4 +- .../network/packet/Packet.java.patch | 2 +- .../network/packet/Packet1Login.java.patch | 6 +- .../server/MinecraftServer.java.patch | 22 ++--- .../integrated/IntegratedServer.java.patch | 2 +- .../IntegratedServerListenThread.java.patch | 9 -- .../ServerConfigurationManager.java.patch | 10 +-- .../tileentity/TileEntityFurnace.java.patch | 2 +- .../minecraft/util/CryptManager.java.patch | 4 +- .../minecraft/util/StringTranslate.java.patch | 27 +++--- .../net/minecraft/world/World.java.patch | 4 +- .../minecraft/world/WorldProvider.java.patch | 4 +- .../chunk/storage/AnvilChunkLoader.java.patch | 4 +- .../world/storage/WorldInfo.java.patch | 6 +- 64 files changed, 444 insertions(+), 536 deletions(-) delete mode 100644 fml/client/cpw/mods/fml/client/CopySubimageTextureHelper.java delete mode 100644 fml/client/cpw/mods/fml/client/ITextureFX.java delete mode 100644 fml/client/cpw/mods/fml/client/OpenGL43TextureHelper.java delete mode 100644 fml/client/cpw/mods/fml/client/TextureHelper.java rename fml/common/cpw/mods/fml/common/asm/transformers/deobf/{ZipInputSupplier.java => LZMAInputSupplier.java} (69%) create mode 100644 fml/patches/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java.patch delete mode 100644 fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureClock.java.patch delete mode 100644 fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java.patch create mode 100644 fml/patches/minecraft/net/minecraft/client/resources/LanguageManager.java.patch diff --git a/fml/build.xml b/fml/build.xml index 9de1b4567..0cdc0ff8d 100644 --- a/fml/build.xml +++ b/fml/build.xml @@ -213,16 +213,21 @@ - + - - - - - + + + + + + + + + + @@ -384,7 +389,7 @@ - + @@ -395,7 +400,7 @@ - + diff --git a/fml/client/cpw/mods/fml/client/CopySubimageTextureHelper.java b/fml/client/cpw/mods/fml/client/CopySubimageTextureHelper.java deleted file mode 100644 index e64513ba0..000000000 --- a/fml/client/cpw/mods/fml/client/CopySubimageTextureHelper.java +++ /dev/null @@ -1,30 +0,0 @@ -package cpw.mods.fml.client; - -import java.nio.ByteBuffer; - -import org.lwjgl.opengl.GL11; - -import net.minecraft.client.renderer.texture.Texture; -import net.minecraft.client.renderer.texture.TextureStitched; - -public class CopySubimageTextureHelper extends TextureHelper { - @Override - public void doTextureCopy(Texture atlas, Texture source, int atlasX, int atlasY) - { - if (atlas.func_94282_c() == -1) - { - return; - } - atlas.func_94277_a(0); - ByteBuffer buffer = source.func_94273_h(); - buffer.position(0); - GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, atlasX, atlasY, source.func_94275_d(), source.func_94276_e(), GL11.GL_RGBA, GL11.GL_UNSIGNED_BYTE, buffer); - } - - @Override - public void doTextureUpload(TextureStitched source) - { - // NO OP for copysubimage - } - -} diff --git a/fml/client/cpw/mods/fml/client/FMLClientHandler.java b/fml/client/cpw/mods/fml/client/FMLClientHandler.java index 375c3cd8e..09b25d4f8 100644 --- a/fml/client/cpw/mods/fml/client/FMLClientHandler.java +++ b/fml/client/cpw/mods/fml/client/FMLClientHandler.java @@ -255,7 +255,7 @@ public class FMLClientHandler implements IFMLSidedHandler else { // Force renderengine to reload and re-initialize all textures - client.field_71446_o.func_78352_b(); +// client.field_71446_o.func_78352_b(); // TextureFXManager.instance().loadTextures(client.field_71418_C.func_77292_e()); } } diff --git a/fml/client/cpw/mods/fml/client/GuiIdMismatchScreen.java b/fml/client/cpw/mods/fml/client/GuiIdMismatchScreen.java index f5bb2d002..6994f08a9 100644 --- a/fml/client/cpw/mods/fml/client/GuiIdMismatchScreen.java +++ b/fml/client/cpw/mods/fml/client/GuiIdMismatchScreen.java @@ -17,6 +17,7 @@ import java.util.Map.Entry; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiYesNo; +import net.minecraft.client.resources.I18n; import net.minecraft.util.StringTranslate; import com.google.common.collect.Lists; @@ -99,7 +100,7 @@ public class GuiIdMismatchScreen extends GuiYesNo { if (!allowContinue) { var5.field_73746_c = this.field_73880_f / 2 - 75; - var5.field_73744_e = StringTranslate.func_74808_a().func_74805_b("gui.done"); + var5.field_73744_e = I18n.func_135053_a("gui.done"); } var5.func_73737_a(this.field_73882_e, p_73863_1_, p_73863_2_); } diff --git a/fml/client/cpw/mods/fml/client/GuiModList.java b/fml/client/cpw/mods/fml/client/GuiModList.java index 093a00d11..ca0e0195d 100644 --- a/fml/client/cpw/mods/fml/client/GuiModList.java +++ b/fml/client/cpw/mods/fml/client/GuiModList.java @@ -23,6 +23,7 @@ import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiSmallButton; import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.resources.I18n; import net.minecraft.util.StringTranslate; import org.lwjgl.opengl.GL11; @@ -80,8 +81,7 @@ public class GuiModList extends GuiScreen listWidth=Math.max(listWidth,getFontRenderer().func_78256_a(mod.getVersion()) + 10); } listWidth=Math.min(listWidth, 150); - StringTranslate translations = StringTranslate.func_74808_a(); - this.field_73887_h.add(new GuiSmallButton(6, this.field_73880_f / 2 - 75, this.field_73881_g - 38, translations.func_74805_b("gui.done"))); + this.field_73887_h.add(new GuiSmallButton(6, this.field_73880_f / 2 - 75, this.field_73881_g - 38, I18n.func_135053_a("gui.done"))); this.modList=new GuiSlotModList(this, mods, listWidth); this.modList.registerScrollButtons(this.field_73887_h, 7, 8); } @@ -120,7 +120,8 @@ public class GuiModList extends GuiScreen if (!logoFile.isEmpty()) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - this.field_73882_e.field_71446_o.func_98187_b(logoFile); + // TODO +// this.field_73882_e.field_71446_o.func_98187_b(logoFile); Dimension dim = TextureFXManager.instance().getTextureDimensions(logoFile); double scaleX = dim.width / 200.0; double scaleY = dim.height / 65.0; diff --git a/fml/client/cpw/mods/fml/client/GuiModsMissingForServer.java b/fml/client/cpw/mods/fml/client/GuiModsMissingForServer.java index 88f0fa96c..23944626f 100644 --- a/fml/client/cpw/mods/fml/client/GuiModsMissingForServer.java +++ b/fml/client/cpw/mods/fml/client/GuiModsMissingForServer.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -15,6 +15,7 @@ package cpw.mods.fml.client; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiSmallButton; +import net.minecraft.client.resources.I18n; import net.minecraft.util.StringTranslate; import cpw.mods.fml.common.network.ModMissingPacket; import cpw.mods.fml.common.versioning.ArtifactVersion; @@ -31,8 +32,7 @@ public class GuiModsMissingForServer extends GuiScreen @Override public void func_73866_w_() { - StringTranslate translations = StringTranslate.func_74808_a(); - this.field_73887_h.add(new GuiSmallButton(1, this.field_73880_f / 2 - 75, this.field_73881_g - 38, translations.func_74805_b("gui.done"))); + this.field_73887_h.add(new GuiSmallButton(1, this.field_73880_f / 2 - 75, this.field_73881_g - 38, I18n.func_135053_a("gui.done"))); } @Override diff --git a/fml/client/cpw/mods/fml/client/GuiScrollingList.java b/fml/client/cpw/mods/fml/client/GuiScrollingList.java index 6c758cffc..f3dd62151 100644 --- a/fml/client/cpw/mods/fml/client/GuiScrollingList.java +++ b/fml/client/cpw/mods/fml/client/GuiScrollingList.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -15,6 +15,7 @@ package cpw.mods.fml.client; import java.util.List; import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Gui; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.renderer.Tessellator; @@ -264,7 +265,7 @@ public abstract class GuiScrollingList GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_FOG); Tessellator var18 = Tessellator.field_78398_a; - this.client.field_71446_o.func_98187_b("/gui/background.png"); + this.client.field_71446_o.func_110577_a(Gui.field_110325_k); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); float var17 = 32.0F; var18.func_78382_b(); @@ -397,7 +398,7 @@ public abstract class GuiScrollingList private void overlayBackground(int p_22239_1_, int p_22239_2_, int p_22239_3_, int p_22239_4_) { Tessellator var5 = Tessellator.field_78398_a; - this.client.field_71446_o.func_98187_b("/gui/background.png"); + this.client.field_71446_o.func_110577_a(Gui.field_110325_k); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); float var6 = 32.0F; var5.func_78382_b(); diff --git a/fml/client/cpw/mods/fml/client/ITextureFX.java b/fml/client/cpw/mods/fml/client/ITextureFX.java deleted file mode 100644 index 41692b1a5..000000000 --- a/fml/client/cpw/mods/fml/client/ITextureFX.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Forge Mod Loader - * Copyright (c) 2012-2013 cpw. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the GNU Lesser Public License v2.1 - * which accompanies this distribution, and is available at - * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * - * Contributors: - * cpw - implementation - */ - -package cpw.mods.fml.client; - -import java.awt.Dimension; - -import net.minecraft.client.renderer.RenderEngine; -import net.minecraft.client.texturepacks.ITexturePack; - -public interface ITextureFX -{ - public void onTexturePackChanged(RenderEngine engine, ITexturePack texturepack, Dimension dimensions); - - public void onTextureDimensionsUpdate(int width, int height); - - public void setErrored(boolean errored); - - public boolean getErrored(); -} diff --git a/fml/client/cpw/mods/fml/client/OpenGL43TextureHelper.java b/fml/client/cpw/mods/fml/client/OpenGL43TextureHelper.java deleted file mode 100644 index 994dc34cf..000000000 --- a/fml/client/cpw/mods/fml/client/OpenGL43TextureHelper.java +++ /dev/null @@ -1,29 +0,0 @@ -package cpw.mods.fml.client; - -import org.lwjgl.opengl.GL11; - -import net.minecraft.client.renderer.texture.Texture; -import net.minecraft.client.renderer.texture.TextureStitched; - -public class OpenGL43TextureHelper extends TextureHelper { - - public OpenGL43TextureHelper() - { -// GL43. -// glCopyMethod = Class.forName("org.lwjgl.OpenGL") - } - @Override - public void doTextureCopy(Texture atlas, Texture source, int atlasX, int atlasY) - { -// System.out.printf("Src: %d Targ: %d, Coords %d %d %d %d\n", source.func_94282_c(), atlas.func_94282_c(), atlasX, atlasY, source.func_94275_d(), source.func_94276_e()); -// GL43.glCopyImageSubData(source.func_94282_c(), GL11.GL_TEXTURE_2D, 0, 0, 0, 0, atlas.func_94282_c(), GL11.GL_TEXTURE_2D, 0, atlasX, atlasY, 0, source.func_94275_d(), source.func_94276_e(), 1); -// System.out.printf("Err: %x\n", GL11.glGetError()); - } - - @Override - public void doTextureUpload(TextureStitched source) - { -// source.createAndUploadTextures(); - } - -} diff --git a/fml/client/cpw/mods/fml/client/TextureFXManager.java b/fml/client/cpw/mods/fml/client/TextureFXManager.java index 510347a23..e613b4f38 100644 --- a/fml/client/cpw/mods/fml/client/TextureFXManager.java +++ b/fml/client/cpw/mods/fml/client/TextureFXManager.java @@ -28,7 +28,6 @@ import com.google.common.collect.Maps; import cpw.mods.fml.common.FMLLog; import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.RenderEngine; public class TextureFXManager { @@ -39,26 +38,26 @@ public class TextureFXManager private Map texturesById = Maps.newHashMap(); private Map texturesByName = Maps.newHashMap(); - private TextureHelper helper; +// private TextureHelper helper; void setClient(Minecraft client) { this.client = client; } - public BufferedImage loadImageFromTexturePack(RenderEngine renderEngine, String path) throws IOException - { - InputStream image=client.field_71418_C.func_77292_e().func_77532_a(path); - if (image==null) { - throw new RuntimeException(String.format("The requested image path %s is not found",path)); - } - BufferedImage result=ImageIO.read(image); - if (result==null) - { - throw new RuntimeException(String.format("The requested image path %s appears to be corrupted",path)); - } - return result; - } - +// public BufferedImage loadImageFromTexturePack(RenderEngine renderEngine, String path) throws IOException +// { +// InputStream image=client.field_71418_C.func_77292_e().func_77532_a(path); +// if (image==null) { +// throw new RuntimeException(String.format("The requested image path %s is not found",path)); +// } +// BufferedImage result=ImageIO.read(image); +// if (result==null) +// { +// throw new RuntimeException(String.format("The requested image path %s appears to be corrupted",path)); +// } +// return result; +// } +// public static TextureFXManager instance() { return INSTANCE; @@ -111,33 +110,33 @@ public class TextureFXManager } - public TextureHelper getHelper() - { - if (helper == null) - { - ContextCapabilities capabilities = GLContext.getCapabilities(); - boolean has43 = false; - try - { - has43 = capabilities.getClass().getField("GL_ARB_copy_image").getBoolean(capabilities); - } - catch (Exception e) - { - //e.printStackTrace(); - // NOOP - LWJGL needs updating - FMLLog.info("Forge Mod Loader has detected an older LWJGL version, new advanced texture animation features are disabled"); - } -// if (has43 && Boolean.parseBoolean(System.getProperty("fml.useGL43","true"))) +// public TextureHelper getHelper() +// { +// if (helper == null) +// { +// ContextCapabilities capabilities = GLContext.getCapabilities(); +// boolean has43 = false; +// try // { -// FMLLog.info("Using the new OpenGL 4.3 advanced capability for animations"); -// helper = new OpenGL43TextureHelper(); +// has43 = capabilities.getClass().getField("GL_ARB_copy_image").getBoolean(capabilities); // } -// else - { - FMLLog.info("Not using advanced OpenGL 4.3 advanced capability for animations : OpenGL 4.3 is %s", has43 ? "available" : "not available"); - helper = new CopySubimageTextureHelper(); - } - } - return helper; - } +// catch (Exception e) +// { +// //e.printStackTrace(); +// // NOOP - LWJGL needs updating +// FMLLog.info("Forge Mod Loader has detected an older LWJGL version, new advanced texture animation features are disabled"); +// } +//// if (has43 && Boolean.parseBoolean(System.getProperty("fml.useGL43","true"))) +//// { +//// FMLLog.info("Using the new OpenGL 4.3 advanced capability for animations"); +//// helper = new OpenGL43TextureHelper(); +//// } +//// else +// { +// FMLLog.info("Not using advanced OpenGL 4.3 advanced capability for animations : OpenGL 4.3 is %s", has43 ? "available" : "not available"); +//// helper = new CopySubimageTextureHelper(); +// } +// } +// return helper; +// } } diff --git a/fml/client/cpw/mods/fml/client/TextureHelper.java b/fml/client/cpw/mods/fml/client/TextureHelper.java deleted file mode 100644 index 358b965f2..000000000 --- a/fml/client/cpw/mods/fml/client/TextureHelper.java +++ /dev/null @@ -1,70 +0,0 @@ -package cpw.mods.fml.client; - -import java.nio.ByteBuffer; -import java.util.List; - -import net.minecraft.client.renderer.texture.Texture; -import net.minecraft.client.renderer.texture.TextureStitched; - -public abstract class TextureHelper { - - /** - * Copy the texture from the source to the atlas at the specified position - * - * This will use the devised GL helper to do either GL-side copy or a subimage upload - * - * @param atlas The atlas texture we're copying into - * @param source The source texture we're copying from (complete) - * @param atlasX The X position on the atlas - * @param atlasY The Y position on the atlas - */ - public abstract void doTextureCopy(Texture atlas, Texture source, int atlasX, int atlasY); - - /** - * Upload the texture to the GPU for GL side copying operations - * This may be a no-op depending on the active implementation. - * - * @param source The texture to upload - */ - public abstract void doTextureUpload(TextureStitched source); - - /** - * Rotate the texture so that it doesn't need a rotational transform applied each tick - * - * @param texture The texture to rotate - * @param buffer The buffer for the texture - */ - public void rotateTexture(Texture texture, ByteBuffer buffer) - { - ByteBuffer bytebuffer = buffer; - buffer.position(0); - ByteBuffer other = ByteBuffer.allocateDirect(buffer.capacity()); - other.position(0); - - int texHeight = texture.func_94276_e(); - int texWidth = texture.func_94275_d(); - - for (int row = 0; row < texHeight; ++row) - { - int targCol = texHeight - row - 1; - int srcRowOffset = row * texWidth; - - for (int col = 0; col < texWidth; ++col) - { - int targIndex = col * texHeight + targCol; - int srcIndex = srcRowOffset + col; - - srcIndex <<=2; - targIndex <<=2; - - other.put(targIndex + 0, bytebuffer.get(srcIndex + 0)); - other.put(targIndex + 1, bytebuffer.get(srcIndex + 1)); - other.put(targIndex + 2, bytebuffer.get(srcIndex + 2)); - other.put(targIndex + 3, bytebuffer.get(srcIndex + 3)); - } - } - buffer.position(0); - buffer.put(other); - } - -} diff --git a/fml/client/cpw/mods/fml/client/registry/RenderingRegistry.java b/fml/client/cpw/mods/fml/client/registry/RenderingRegistry.java index df146a1ed..10421c575 100644 --- a/fml/client/cpw/mods/fml/client/registry/RenderingRegistry.java +++ b/fml/client/cpw/mods/fml/client/registry/RenderingRegistry.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -48,9 +48,8 @@ public class RenderingRegistry */ public static int addNewArmourRendererPrefix(String armor) { - RenderPlayer.field_77110_j = ObjectArrays.concat(RenderPlayer.field_77110_j, armor); - RenderBiped.field_82424_k = RenderPlayer.field_77110_j; - return RenderPlayer.field_77110_j.length - 1; + RenderBiped.field_82424_k = ObjectArrays.concat(RenderBiped.field_82424_k, armor); + return RenderBiped.field_82424_k.length - 1; } /** diff --git a/fml/client/net/minecraft/src/FMLRenderAccessLibrary.java b/fml/client/net/minecraft/src/FMLRenderAccessLibrary.java index 7e7ce94b8..7b9a9fed7 100644 --- a/fml/client/net/minecraft/src/FMLRenderAccessLibrary.java +++ b/fml/client/net/minecraft/src/FMLRenderAccessLibrary.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -19,9 +19,6 @@ import java.util.logging.Logger; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.RenderEngine; -import net.minecraft.client.renderer.texture.Texture; -import net.minecraft.client.texturepacks.ITexturePack; import net.minecraft.world.IBlockAccess; import cpw.mods.fml.client.TextureFXManager; @@ -72,8 +69,8 @@ public class FMLRenderAccessLibrary return RenderingRegistry.instance().renderItemAsFull3DBlock(modelId); } - public static void doTextureCopy(Texture atlas, Texture source, int targetX, int targetY) - { - TextureFXManager.instance().getHelper().doTextureCopy(atlas, source, targetX, targetY); - } +// public static void doTextureCopy(Texture atlas, Texture source, int targetX, int targetY) +// { +// TextureFXManager.instance().getHelper().doTextureCopy(atlas, source, targetX, targetY); +// } } diff --git a/fml/client/net/minecraft/src/ModLoader.java b/fml/client/net/minecraft/src/ModLoader.java index 4a0fb57d3..477c94e3a 100644 --- a/fml/client/net/minecraft/src/ModLoader.java +++ b/fml/client/net/minecraft/src/ModLoader.java @@ -26,7 +26,6 @@ import net.minecraft.client.*; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.multiplayer.NetClientHandler; import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.RenderEngine; import net.minecraft.client.renderer.entity.Render; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.settings.KeyBinding; @@ -564,11 +563,11 @@ public class ModLoader { } - @SideOnly(CLIENT) - public static BufferedImage loadImage(RenderEngine renderEngine, String path) throws Exception - { - return TextureFXManager.instance().loadImageFromTexturePack(renderEngine, path); - } +// @SideOnly(CLIENT) +// public static BufferedImage loadImage(RenderEngine renderEngine, String path) throws Exception +// { +// return TextureFXManager.instance().loadImageFromTexturePack(renderEngine, path); +// } /** * Call in from elsewhere. Unimplemented here. @@ -616,11 +615,11 @@ public class ModLoader return keys; } - @Deprecated - @SideOnly(CLIENT) - public static void registerAllTextureOverrides(RenderEngine cache) - { - } +// @Deprecated +// @SideOnly(CLIENT) +// public static void registerAllTextureOverrides(RenderEngine cache) +// { +// } /** * Register a new block diff --git a/fml/common/cpw/mods/fml/common/asm/transformers/deobf/FMLDeobfuscatingRemapper.java b/fml/common/cpw/mods/fml/common/asm/transformers/deobf/FMLDeobfuscatingRemapper.java index 2fee95497..d1088743c 100644 --- a/fml/common/cpw/mods/fml/common/asm/transformers/deobf/FMLDeobfuscatingRemapper.java +++ b/fml/common/cpw/mods/fml/common/asm/transformers/deobf/FMLDeobfuscatingRemapper.java @@ -13,6 +13,7 @@ package cpw.mods.fml.common.asm.transformers.deobf; import java.io.File; +import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; @@ -81,10 +82,7 @@ public class FMLDeobfuscatingRemapper extends Remapper { try { File mapData = new File(deobfFileName); - mapData = mapData.getCanonicalFile(); - ZipFile mapZip = new ZipFile(mapData); - ZipEntry classData = mapZip.getEntry("joined.srg"); - ZipInputSupplier zis = new ZipInputSupplier(mapZip, classData); + LZMAInputSupplier zis = new LZMAInputSupplier(new FileInputStream(mapData)); InputSupplier srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8); List srgList = CharStreams.readLines(srgSupplier); rawMethodMaps = Maps.newHashMap(); @@ -132,12 +130,8 @@ public class FMLDeobfuscatingRemapper extends Remapper { this.classLoader = classLoader; try { - File libDir = new File(mcDir, "lib"); - File mapData = new File(libDir, deobfFileName); - mapData = mapData.getCanonicalFile(); - ZipFile mapZip = new ZipFile(mapData); - ZipEntry classData = mapZip.getEntry("joined.srg"); - ZipInputSupplier zis = new ZipInputSupplier(mapZip, classData); + InputStream classData = getClass().getResourceAsStream(deobfFileName); + LZMAInputSupplier zis = new LZMAInputSupplier(classData); InputSupplier srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8); List srgList = CharStreams.readLines(srgSupplier); rawMethodMaps = Maps.newHashMap(); diff --git a/fml/common/cpw/mods/fml/common/asm/transformers/deobf/ZipInputSupplier.java b/fml/common/cpw/mods/fml/common/asm/transformers/deobf/LZMAInputSupplier.java similarity index 69% rename from fml/common/cpw/mods/fml/common/asm/transformers/deobf/ZipInputSupplier.java rename to fml/common/cpw/mods/fml/common/asm/transformers/deobf/LZMAInputSupplier.java index 366871d37..85c83ea6d 100644 --- a/fml/common/cpw/mods/fml/common/asm/transformers/deobf/ZipInputSupplier.java +++ b/fml/common/cpw/mods/fml/common/asm/transformers/deobf/LZMAInputSupplier.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -17,22 +17,22 @@ import java.io.InputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; +import LZMA.LzmaInputStream; + import com.google.common.io.InputSupplier; -public class ZipInputSupplier implements InputSupplier { - private ZipFile zipFile; - private ZipEntry zipEntry; +public class LZMAInputSupplier implements InputSupplier { + private InputStream compressedData; - public ZipInputSupplier(ZipFile zip, ZipEntry entry) + public LZMAInputSupplier(InputStream compressedData) { - this.zipFile = zip; - this.zipEntry = entry; + this.compressedData = compressedData; } @Override public InputStream getInput() throws IOException { - return zipFile.getInputStream(zipEntry); + return new LzmaInputStream(this.compressedData); } } diff --git a/fml/common/cpw/mods/fml/common/launcher/FMLTweaker.java b/fml/common/cpw/mods/fml/common/launcher/FMLTweaker.java index aa38215c0..4c4d132b2 100644 --- a/fml/common/cpw/mods/fml/common/launcher/FMLTweaker.java +++ b/fml/common/cpw/mods/fml/common/launcher/FMLTweaker.java @@ -8,6 +8,7 @@ import java.util.logging.Level; import java.util.logging.Logger; import com.google.common.base.Throwables; +import com.google.common.collect.ObjectArrays; import cpw.mods.fml.relauncher.FMLLaunchHandler; @@ -20,12 +21,13 @@ public class FMLTweaker implements ITweaker { private File assetsDir; private String profile; private static URI jarLocation; + private String[] array; @Override public void acceptOptions(List args, File gameDir, File assetsDir, String profile) { this.args = args; - this.gameDir = gameDir; + this.gameDir = (gameDir == null ? new File(".") : gameDir); this.assetsDir = assetsDir; this.profile = profile; try @@ -51,13 +53,36 @@ public class FMLTweaker implements ITweaker { @Override public String getLaunchTarget() { - return "net.minecraft.client.Minecraft"; + return "net.minecraft.client.main.Main"; } @Override public String[] getLaunchArguments() { - return args.toArray(new String[args.size()]); + String[] array = args.toArray(new String[args.size()]); + + if (gameDir != null) + { + array = ObjectArrays.concat(gameDir.getAbsolutePath(),array); + array = ObjectArrays.concat("--gameDir",array); + } + + if (assetsDir != null) + { + array = ObjectArrays.concat(assetsDir.getAbsolutePath(),array); + array = ObjectArrays.concat("--assetsDir",array); + } + if (profile != null) + { + array = ObjectArrays.concat(profile,array); + array = ObjectArrays.concat("--version",array); + } + else + { + array = ObjectArrays.concat("UnknownFMLProfile",array); + array = ObjectArrays.concat("--version",array); + } + return array; } public File getGameDir() diff --git a/fml/common/cpw/mods/fml/common/patcher/ClassPatchManager.java b/fml/common/cpw/mods/fml/common/patcher/ClassPatchManager.java index 9cc4e03a8..656092751 100644 --- a/fml/common/cpw/mods/fml/common/patcher/ClassPatchManager.java +++ b/fml/common/cpw/mods/fml/common/patcher/ClassPatchManager.java @@ -88,6 +88,12 @@ public class ClassPatchManager { { FMLRelaunchLog.fine("FML URI is %s", FMLTweaker.getJarLocation()); File fmlJarFile = new File(FMLTweaker.getJarLocation()); + if (!fmlJarFile.exists() || !fmlJarFile.isFile()) + { + FMLRelaunchLog.log(Level.INFO, "Not found an FML jar, I assume you're developing FML. Hi cpw or Lex!"); + patches = ArrayListMultimap.create(); + return; + } fmlJar = new JarFile(fmlJarFile); } catch (Exception e) diff --git a/fml/common/cpw/mods/fml/common/registry/LanguageRegistry.java b/fml/common/cpw/mods/fml/common/registry/LanguageRegistry.java index c150c2fd5..54bd3f645 100644 --- a/fml/common/cpw/mods/fml/common/registry/LanguageRegistry.java +++ b/fml/common/cpw/mods/fml/common/registry/LanguageRegistry.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -28,6 +28,7 @@ import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.ModContainer; import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.StringTranslate; @@ -45,7 +46,7 @@ public class LanguageRegistry public String getStringLocalization(String key) { - return getStringLocalization(key, StringTranslate.func_74808_a().func_74811_c()); + return getStringLocalization(key, Minecraft.func_71410_x().func_135016_M().func_135041_c().func_135034_a()); } public String getStringLocalization(String key, String lang) @@ -93,9 +94,9 @@ public class LanguageRegistry public static void reloadLanguageTable() { - // reload language table by forcing lang to null and reloading the properties file - String lang = StringTranslate.func_74808_a().func_74811_c(); - StringTranslate.func_74808_a().func_74810_a(lang, true); +// // reload language table by forcing lang to null and reloading the properties file +// String lang = StringTranslate.func_74808_a().func_74811_c(); +// StringTranslate.func_74808_a().func_74810_a(lang, true); } @@ -120,17 +121,17 @@ public class LanguageRegistry instance().addNameForObject(objectToName, "en_US", name); } - public void loadLanguageTable(Properties languagePack, String lang) + public void loadLanguageTable(Map field_135032_a, String lang) { Properties usPack=modLanguageData.get("en_US"); if (usPack!=null) { - languagePack.putAll(usPack); + field_135032_a.putAll(usPack); } Properties langPack=modLanguageData.get(lang); if (langPack==null) { return; } - languagePack.putAll(langPack); + field_135032_a.putAll(langPack); } public void loadLocalization(String localizationFile, String lang, boolean isXML) diff --git a/fml/common/cpw/mods/fml/common/registry/VillagerRegistry.java b/fml/common/cpw/mods/fml/common/registry/VillagerRegistry.java index 460757c0b..4c778ade5 100644 --- a/fml/common/cpw/mods/fml/common/registry/VillagerRegistry.java +++ b/fml/common/cpw/mods/fml/common/registry/VillagerRegistry.java @@ -5,7 +5,7 @@ * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html - * + * * Contributors: * cpw - implementation */ @@ -19,6 +19,7 @@ import java.util.Random; import java.util.Collection; import java.util.Collections; +import net.minecraft.client.resources.ResourceLocation; import net.minecraft.entity.passive.EntityVillager; import net.minecraft.item.Item; import net.minecraft.util.Tuple; @@ -32,6 +33,8 @@ import com.google.common.collect.Maps; import com.google.common.collect.Multimap; import cpw.mods.fml.common.FMLLog; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; /** * Registry for villager trading control @@ -45,8 +48,9 @@ public class VillagerRegistry private Multimap tradeHandlers = ArrayListMultimap.create(); private Map, IVillageCreationHandler> villageCreationHandlers = Maps.newHashMap(); - private Map newVillagers = Maps.newHashMap(); private List newVillagerIds = Lists.newArrayList(); + @SideOnly(Side.CLIENT) + private Map newVillagers; /** * Allow access to the {@link net.minecraft.world.gen.structure.StructureVillagePieces} array controlling new village @@ -110,21 +114,33 @@ public class VillagerRegistry return INSTANCE; } + /** + * Register your villager id + * @param id + */ + public void registerVillagerId(int id) + { + if (newVillagerIds.contains(id)) + { + FMLLog.severe("Attempt to register duplicate villager id %d", id); + throw new RuntimeException(); + } + newVillagerIds.add(id); + } /** * Register a new skin for a villager type * * @param villagerId * @param villagerSkin */ - public void registerVillagerType(int villagerId, String villagerSkin) + @SideOnly(Side.CLIENT) + public void registerVillagerSkin(int villagerId, ResourceLocation villagerSkin) { - if (newVillagers.containsKey(villagerId)) + if (newVillagers == null) { - FMLLog.severe("Attempt to register duplicate villager id %d", villagerId); - throw new RuntimeException(); + newVillagers = Maps.newHashMap(); } newVillagers.put(villagerId, villagerSkin); - newVillagerIds.add(villagerId); } /** @@ -154,7 +170,8 @@ public class VillagerRegistry * @param villagerType * @param defaultSkin */ - public static String getVillagerSkin(int villagerType, String defaultSkin) + @SideOnly(Side.CLIENT) + public static ResourceLocation getVillagerSkin(int villagerType, ResourceLocation defaultSkin) { if (instance().newVillagers.containsKey(villagerType)) { diff --git a/fml/common/cpw/mods/fml/relauncher/FMLInjectionData.java b/fml/common/cpw/mods/fml/relauncher/FMLInjectionData.java index 582d9e496..1dc0bd8d3 100644 --- a/fml/common/cpw/mods/fml/relauncher/FMLInjectionData.java +++ b/fml/common/cpw/mods/fml/relauncher/FMLInjectionData.java @@ -64,7 +64,7 @@ public class FMLInjectionData static String debfuscationDataName() { - return "deobfuscation_data_"+mccversion+".zip"; + return "/deobfuscation_data-"+mccversion+".lzma"; } public static Object[] data() { diff --git a/fml/common/cpw/mods/fml/relauncher/FMLLaunchHandler.java b/fml/common/cpw/mods/fml/relauncher/FMLLaunchHandler.java index 3cdc884bc..ef5e089ee 100644 --- a/fml/common/cpw/mods/fml/relauncher/FMLLaunchHandler.java +++ b/fml/common/cpw/mods/fml/relauncher/FMLLaunchHandler.java @@ -105,6 +105,7 @@ public class FMLLaunchHandler } catch (Throwable t) { + t.printStackTrace(); FMLRelaunchLog.log(Level.SEVERE, t, "An error occurred trying to configure the minecraft home at %s for Forge Mod Loader", minecraftHome.getAbsolutePath()); throw Throwables.propagate(t); } diff --git a/fml/common/fml_at.cfg b/fml/common/fml_at.cfg index f3b6db648..c55d61f67 100644 --- a/fml/common/fml_at.cfg +++ b/fml/common/fml_at.cfg @@ -1,73 +1,76 @@ #Main FML Access Transformer configuration file # TileEntity addMapping -public aqp.a(Ljava/lang/Class;Ljava/lang/String;)V #MD:TileEntity/func_70306_a +public ash.a(Ljava/lang/Class;Ljava/lang/String;)V #MD:TileEntity/func_70306_a # EntityList addMappings -public mv.a(Ljava/lang/Class;Ljava/lang/String;I)V #MD:EntityList/func_75618_a -public mv.a(Ljava/lang/Class;Ljava/lang/String;III)V #MD:EntityList/func_75614_a -public mv.b #FD:EntityList/field_75625_b #nameToClassMap -public mv.c #FD:EntityList/field_75626_c #classToNameMap -public mv.d #FD:EntityList/field_75623_d #idToClassMap +public np.a(Ljava/lang/Class;Ljava/lang/String;I)V #MD:EntityList/func_75618_a +public np.a(Ljava/lang/Class;Ljava/lang/String;III)V #MD:EntityList/func_75614_a +public np.b #FD:EntityList/field_75625_b #nameToClassMap +public np.c #FD:EntityList/field_75626_c #classToNameMap +public np.d #FD:EntityList/field_75623_d #idToClassMap # RenderEngine #public bba.h #FD:RenderEngine/field_78367_h #textureList # -- MISSING MAPPING # -- MISSING MAPPING -public bge.g #FD:RenderEngine/field_78366_k #texturePack +#public bge.g #FD:RenderEngine/field_78366_k #texturePack # -- MISSING MAPPING # RenderManager -public bgy.q #FD:RenderManager/field_78729_o #renderers +public bfx.q #FD:RenderManager/field_78729_o #renderers # RenderBlocks - everything -public bgf.* #FD:RenderBlocks/* -public bgf.*() #MD:RenderBlocks/* +public bfd.* #FD:RenderBlocks/* +public bfd.*() #MD:RenderBlocks/* #RenderPlayer -public-f bht.h #FD:RenderPlayer/field_77110_j #armorlist +#public-f bht.h #FD:RenderPlayer/field_77110_j #armorlist # -- MISSING MAPPING #RenderBiped -public-f bhg.k #FD:RenderBiped/field_82424_k #armorlist +public-f bgg.l #FD:RenderBiped/field_82424_k #armorlist #StringTranslate -public bp.b #FD:StringTranslate/field_74815_b -public bp.e #FD:StringTranslate/field_74813_d +#public bp.b #FD:StringTranslate/field_74815_b # -- MISSING MAPPING +#public bp.e #FD:StringTranslate/field_74813_d # -- MISSING MAPPING # TileEntityRenderer -public bjd.m #FD:TileEntityRenderer/field_76966_m +public bip.m #FD:TileEntityRenderer/field_76966_m # CraftingManager - make the add recipe methods public -public yk.a(Lwm;[Ljava/lang/Object;)Lyn; #MD:CraftingManager/func_92103_a -public yk.b(Lwm;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b +public zz.a(Lxy;[Ljava/lang/Object;)Laac; #MD:CraftingManager/func_92103_a +public zz.b(Lxy;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b # WeightedRandomItem -public lo.a #FD:WeightedRandomItem/field_76292_a #probability +public mf.a #FD:WeightedRandomItem/field_76292_a #probability # ItemStack #public+f tv.c #FD:ItemStack/field_77993_c #itemId # StatBase -public ka.a #FD:StatBase/field_75978_a #statName +public kq.a #FD:StatBase/field_75978_a #statName # NetLoginHandler -public jf.a(Ljf;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection' -public jf.g #FD:NetLoginHandler/field_72543_h #userName +public ju.a(Lju;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection' +public ju.g #FD:NetLoginHandler/field_72543_h #userName # EntityPlayerMP getNextWindowId -public jc.ct()V #MD:EntityPlayerMP/func_71117_bO -public jc.cu #FD:EntityPlayerMP/field_71139_cq +public jr.bJ()V #MD:EntityPlayerMP/func_71117_bO +public jr.bX #FD:EntityPlayerMP/field_71139_cq # EntityAITaskEntry -public oo #CL:EntityAITaskEntry +public pq #CL:EntityAITaskEntry # EntityAITasks -public on.a #FD:EntityAITasks/field_75782_a #taskList +public pp.a #FD:EntityAITasks/field_75782_a #taskList # BlockChest -public aln.m(Laab;III)Z #MD:BlockChest/func_72292_n #isOcelotBlockingChest +public anc.m(Labq;III)Z #MD:BlockChest/func_72292_n #isOcelotBlockingChest # EntityLiving -public ng.aU #FD:EntityLiving/field_70736_aM #carryoverDamage -public ng.bo #FD:EntityLiving/field_70714_bg #tasks -public ng.bG #FD:EntityLiving/field_70703_bu #isJumping +#public ng.aU #FD:EntityLiving/field_70736_aM #carryoverDamage # -- MISSING MAPPING +public oc.c #FD:EntityLiving/field_70714_bg #tasks +#public ng.bG #FD:EntityLiving/field_70703_bu #isJumping # -- MISSING MAPPING # EntityAIOcelotSit -protected pa.a(Laab;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock -protected pa.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable +protected qc.a(Labq;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock +protected qc.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable # CallableMinecraftVersion - sanity check the MC version public c #CL:CallableMinecraftVersion public c.(Lb;)V #MD:CallableMinecraftVersion/(Lnet/minecraft/src/CrashReport;) #constructor # EntityAnimal -public qh.d #FD:EntityAnimal/field_70881_d #inLove +public rl.bp #FD:EntityAnimal/field_70881_d #inLove # WorldType -public aal.(ILjava/lang/String;)V #MD:WorldType/(ILjava/lang/String;) -public aal.(ILjava/lang/String;I)V #MD:WorldType/(ILjava/lang/String;I) +public aca.(ILjava/lang/String;)V #MD:WorldType/(ILjava/lang/String;) +public aca.(ILjava/lang/String;I)V #MD:WorldType/(ILjava/lang/String;I) # ComponentVillage -public ahp #CL:ComponentVillage +public aje #CL:ComponentVillage # EntityVillager - minmax lists -public sm.a(Lzr;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy -public sm.b(Lzr;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell -public sm.bP #FD:EntityVillager/field_70958_bB -public sm.bQ #FD:EntityVillager/field_70960_bC +public tv.a(Labg;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy +public tv.b(Labg;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell +public tv.bB #FD:EntityVillager/field_70958_bB +public tv.bC #FD:EntityVillager/field_70960_bC # GuiButtonMerchant -public azi #CL:GuiButtonMerchant +public axn #CL:GuiButtonMerchant -protected awk.a #FD:GuiYesNo/field_73942_a #guiScreen +protected aun.a #FD:GuiYesNo/field_73942_a #guiScreen +# Minecraft +public atm.C #FD:Minecraft/field_71425_J #running +public atm.M #FD:Minecraft/field_71446_o # textureManager diff --git a/fml/jsons/1.6-dev.json b/fml/jsons/1.6-dev.json index 2852eeef2..170853d67 100644 --- a/fml/jsons/1.6-dev.json +++ b/fml/jsons/1.6-dev.json @@ -22,6 +22,9 @@ "children" : ["sources"], "url" : "http://repo.maven.apache.org/maven2" }, + { + "name": "lzma:lzma:0.0.1" + }, { "name": "com.paulscode:codecjorbis:20101023" }, @@ -119,4 +122,4 @@ } ], "mainClass": "net.minecraft.client.main.Main" -} \ No newline at end of file +} diff --git a/fml/patches/minecraft/net/minecraft/client/Minecraft.java.patch b/fml/patches/minecraft/net/minecraft/client/Minecraft.java.patch index ad5b9e182..1eb5257ec 100644 --- a/fml/patches/minecraft/net/minecraft/client/Minecraft.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/Minecraft.java.patch @@ -1,64 +1,72 @@ --- ../src-base/minecraft/net/minecraft/client/Minecraft.java +++ ../src-work/minecraft/net/minecraft/client/Minecraft.java -@@ -1,5 +1,9 @@ +@@ -1,6 +1,11 @@ package net.minecraft.client; + import com.google.common.collect.Lists; ++ +import cpw.mods.fml.client.FMLClientHandler; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.registry.GameData; +import cpw.mods.fml.common.registry.ItemData; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - import java.awt.BorderLayout; -@@ -115,6 +119,8 @@ + import java.awt.image.BufferedImage; +@@ -129,6 +134,8 @@ import org.lwjgl.opengl.PixelFormat; import org.lwjgl.util.glu.GLU; +import com.google.common.collect.MapDifference; + @SideOnly(Side.CLIENT) - public abstract class Minecraft implements Runnable, IPlayerUsage + public class Minecraft implements IPlayerUsage { -@@ -299,6 +305,8 @@ - this.field_71466_p = new FontRenderer(this.field_71474_y, "/font/default.png", this.field_71446_o, false); - this.field_71464_q = new FontRenderer(this.field_71474_y, "/font/alternate.png", this.field_71446_o, false); +@@ -364,6 +371,8 @@ + this.func_71357_I(); + this.field_71466_p = new FontRenderer(this.field_71474_y, new ResourceLocation("textures/font/ascii.png"), this.field_71446_o, false); + FMLClientHandler.instance().beginMinecraftLoading(this); + if (this.field_71474_y.field_74363_ab != null) { - StringTranslate.func_74808_a().func_74810_a(this.field_71474_y.field_74363_ab, false); -@@ -334,6 +342,8 @@ + this.field_71466_p.func_78264_a(this.field_135017_as.func_135042_a()); +@@ -396,6 +405,7 @@ + this.field_71446_o.func_130088_a(TextureMap.field_110576_c, new TextureMap(1, "textures/items/")); GL11.glViewport(0, 0, this.field_71443_c, this.field_71440_d); this.field_71452_i = new EffectRenderer(this.field_71441_e, this.field_71446_o); - + FMLClientHandler.instance().finishMinecraftLoading(); -+ - try - { - this.field_71430_V = new ThreadDownloadResources(this.field_71412_D, this); -@@ -362,6 +372,8 @@ + this.func_71361_d("Post startup"); + this.field_71456_v = new GuiIngame(this); + +@@ -414,6 +424,7 @@ { this.func_71352_k(); } -+ + FMLClientHandler.instance().onInitializationComplete(); } - private void func_71357_I() throws LWJGLException -@@ -723,9 +735,11 @@ + public void func_110436_a() +@@ -725,6 +736,7 @@ + { + this.func_71405_e(); + } ++ + } - if (!this.field_71454_w) - { + private void func_71411_J() +@@ -793,9 +805,11 @@ + + if (!this.field_71454_w) + { + FMLCommonHandler.instance().onRenderTickStart(this.field_71428_T.field_74281_c); - this.field_71424_I.func_76318_c("gameRenderer"); - this.field_71460_t.func_78480_b(this.field_71428_T.field_74281_c); - this.field_71424_I.func_76319_b(); + this.field_71424_I.func_76318_c("gameRenderer"); + this.field_71460_t.func_78480_b(this.field_71428_T.field_74281_c); + this.field_71424_I.func_76319_b(); + FMLCommonHandler.instance().onRenderTickEnd(this.field_71428_T.field_74281_c); - } + } - GL11.glFlush(); -@@ -1255,10 +1269,14 @@ + GL11.glFlush(); +@@ -1317,10 +1331,14 @@ public void func_71407_l() { @@ -73,7 +81,7 @@ this.field_71424_I.func_76320_a("stats"); this.field_71413_E.func_77449_e(); -@@ -1716,6 +1734,8 @@ +@@ -1771,6 +1789,8 @@ this.field_71453_ak.func_74428_b(); } @@ -82,7 +90,7 @@ this.field_71424_I.func_76319_b(); this.field_71423_H = func_71386_F(); } -@@ -1754,8 +1774,27 @@ +@@ -1794,8 +1814,27 @@ } this.field_71413_E.func_77450_a(StatList.field_75936_f, 1); @@ -108,5 +116,5 @@ + public void continueWorldLoading() + { this.field_71455_al = true; - this.field_71461_s.func_73720_a(StatCollector.func_74838_a("menu.loadingLevel")); + this.field_71461_s.func_73720_a(I18n.func_135053_a("menu.loadingLevel")); diff --git a/fml/patches/minecraft/net/minecraft/client/gui/GuiCreateWorld.java.patch b/fml/patches/minecraft/net/minecraft/client/gui/GuiCreateWorld.java.patch index 14a853e7e..a7610fa31 100644 --- a/fml/patches/minecraft/net/minecraft/client/gui/GuiCreateWorld.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/gui/GuiCreateWorld.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/client/gui/GuiCreateWorld.java +++ ../src-work/minecraft/net/minecraft/client/gui/GuiCreateWorld.java -@@ -214,6 +214,8 @@ +@@ -212,6 +212,8 @@ } } diff --git a/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch b/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch index ac05ef319..ed520448b 100644 --- a/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch @@ -1,7 +1,7 @@ --- ../src-base/minecraft/net/minecraft/client/gui/GuiErrorScreen.java +++ ../src-work/minecraft/net/minecraft/client/gui/GuiErrorScreen.java @@ -22,6 +22,8 @@ - this.field_73887_h.add(new GuiButton(0, this.field_73880_f / 2 - 100, 140, StatCollector.func_74838_a("gui.cancel"))); + this.field_73887_h.add(new GuiButton(0, this.field_73880_f / 2 - 100, 140, I18n.func_135053_a("gui.cancel"))); } + public GuiErrorScreen(){} diff --git a/fml/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch b/fml/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch index 3d7b2389c..f2fda6b01 100644 --- a/fml/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/gui/GuiMainMenu.java.patch @@ -7,53 +7,59 @@ +import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - import java.awt.image.BufferedImage; -@@ -24,6 +26,9 @@ + import java.io.BufferedReader; +@@ -9,6 +11,7 @@ + import java.util.ArrayList; + import java.util.Calendar; + import java.util.Date; ++import java.util.List; + import java.util.Random; + import net.minecraft.client.Minecraft; + import net.minecraft.client.renderer.Tessellator; +@@ -23,6 +26,9 @@ + import org.apache.commons.io.Charsets; import org.lwjgl.opengl.GL11; - import org.lwjgl.util.glu.GLU; - + import org.lwjgl.util.glu.Project; ++ +import com.google.common.base.Strings; +import com.google.common.collect.Lists; -+ + @SideOnly(Side.CLIENT) public class GuiMainMenu extends GuiScreen - { -@@ -48,6 +53,8 @@ - private int field_92020_v; - private int field_92019_w; +@@ -52,6 +58,8 @@ + private ResourceLocation field_110351_G; + private GuiButton field_130023_H; + private GuiButton fmlModButton = null; + public GuiMainMenu() { BufferedReader bufferedreader = null; -@@ -165,6 +172,9 @@ - { - this.func_73969_a(i, 24, stringtranslate); - } -+ -+ fmlModButton = new GuiButton(6, this.field_73880_f / 2 - 100, i + 48, "Mods"); -+ this.field_73887_h.add(fmlModButton); - - this.func_96137_a(stringtranslate, i, 24); - -@@ -211,7 +221,14 @@ - - private void func_98060_b(StringTranslate p_98060_1_, int p_98060_2_, int p_98060_3_) +@@ -203,13 +211,22 @@ + private void func_130022_h() { -- this.field_73887_h.add(new GuiButton(3, this.field_73880_f / 2 - 100, p_98060_2_ + p_98060_3_ * 2, p_98060_1_.func_74805_b("menu.online"))); -+ //If Minecraft Realms is enabled, halve the size of both buttons and set them next to eachother. + this.field_130023_H.field_73748_h = true; + fmlModButton.field_73747_a = 98; + fmlModButton.field_73746_c = this.field_73880_f / 2 + 2; -+ -+ GuiButton realmButton = new GuiButton(3, this.field_73880_f / 2 - 100, p_98060_2_ + p_98060_3_ * 2, p_98060_1_.func_74805_b("menu.online")); -+ realmButton.field_73747_a = 98; -+ realmButton.field_73746_c = this.field_73880_f / 2 - 100; -+ this.field_73887_h.add(realmButton); } - private void func_73969_a(int p_73969_1_, int p_73969_2_, StringTranslate p_73969_3_) -@@ -263,6 +280,11 @@ + private void func_73969_a(int p_73969_1_, int p_73969_2_) + { + this.field_73887_h.add(new GuiButton(1, this.field_73880_f / 2 - 100, p_73969_1_, I18n.func_135053_a("menu.singleplayer"))); + this.field_73887_h.add(new GuiButton(2, this.field_73880_f / 2 - 100, p_73969_1_ + p_73969_2_ * 1, I18n.func_135053_a("menu.multiplayer"))); +- this.field_73887_h.add(this.field_130023_H = new GuiButton(14, this.field_73880_f / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135053_a("menu.online"))); ++ //If Minecraft Realms is enabled, halve the size of both buttons and set them next to eachother. ++ fmlModButton = new GuiButton(6, this.field_73880_f / 2 - 100, p_73969_1_ + p_73969_2_ * 2, "Mods"); ++ this.field_73887_h.add(fmlModButton); ++ ++ field_130023_H = new GuiButton(14, this.field_73880_f / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135053_a("menu.online")); ++ field_130023_H.field_73747_a = 98; ++ field_130023_H.field_73746_c = this.field_73880_f / 2 - 100; ++ this.field_73887_h.add(field_130023_H); + this.field_130023_H.field_73748_h = false; + } + +@@ -256,6 +273,11 @@ if (p_73875_1_.field_73741_f == 4) { this.field_73882_e.func_71400_g(); @@ -65,7 +71,7 @@ } if (p_73875_1_.field_73741_f == 11) -@@ -501,7 +523,16 @@ +@@ -492,7 +514,16 @@ s = s + " Demo"; } diff --git a/fml/patches/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java.patch b/fml/patches/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java.patch index cf20ec51a..d3cbcd248 100644 --- a/fml/patches/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java +++ ../src-work/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java -@@ -133,4 +133,10 @@ +@@ -131,4 +131,10 @@ { return p_98096_0_.field_73882_e; } diff --git a/fml/patches/minecraft/net/minecraft/client/multiplayer/NetClientHandler.java.patch b/fml/patches/minecraft/net/minecraft/client/multiplayer/NetClientHandler.java.patch index c9f68e26c..59f4bfd4f 100644 --- a/fml/patches/minecraft/net/minecraft/client/multiplayer/NetClientHandler.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/multiplayer/NetClientHandler.java.patch @@ -7,8 +7,8 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.BufferedReader; -@@ -191,11 +192,14 @@ - private GuiScreen field_98183_l = null; +@@ -201,11 +202,14 @@ + private GuiScreen field_98183_l; Random field_72557_e = new Random(); + private static byte connectionCompatibilityLevel; @@ -22,7 +22,7 @@ } public NetClientHandler(Minecraft p_i11012_1_, String p_i11012_2_, int p_i11012_3_, GuiScreen p_i11012_4_) throws IOException -@@ -204,6 +208,7 @@ +@@ -214,6 +218,7 @@ this.field_98183_l = p_i11012_4_; Socket socket = new Socket(InetAddress.getByName(p_i11012_2_), p_i11012_3_); this.field_72555_g = new TcpConnection(p_i11012_1_.func_98033_al(), socket, "Client", this); @@ -30,15 +30,15 @@ } public NetClientHandler(Minecraft p_i3104_1_, IntegratedServer p_i3104_2_) throws IOException -@@ -211,6 +216,7 @@ +@@ -221,6 +226,7 @@ this.field_72563_h = p_i3104_1_; this.field_72555_g = new MemoryConnection(p_i3104_1_.func_98033_al(), this); - p_i3104_2_.func_71343_a().func_71754_a((MemoryConnection)this.field_72555_g, p_i3104_1_.field_71449_j.field_74286_b); + p_i3104_2_.func_71343_a().func_71754_a((MemoryConnection)this.field_72555_g, p_i3104_1_.func_110432_I().func_111285_a()); + FMLNetworkHandler.onClientConnectionToIntegratedServer(this, p_i3104_2_, this.field_72555_g); } public void func_72547_c() -@@ -281,6 +287,7 @@ +@@ -292,6 +298,7 @@ public void func_72513_a(Packet252SharedKey p_72513_1_) { @@ -46,7 +46,7 @@ this.func_72552_c(new Packet205ClientCommand(0)); } -@@ -296,6 +303,7 @@ +@@ -307,6 +314,7 @@ this.field_72563_h.field_71439_g.field_70157_k = p_72455_1_.field_73561_a; this.field_72556_d = p_72455_1_.field_73562_h; this.field_72563_h.field_71442_b.func_78746_a(p_72455_1_.field_73557_d); @@ -54,7 +54,7 @@ this.field_72563_h.field_71474_y.func_82879_c(); } -@@ -744,6 +752,7 @@ +@@ -760,6 +768,7 @@ { this.field_72555_g.func_74429_a(p_72546_1_); this.field_72555_g.func_74423_d(); @@ -62,15 +62,15 @@ } } -@@ -783,6 +792,7 @@ +@@ -799,6 +808,7 @@ public void func_72481_a(Packet3Chat p_72481_1_) { + p_72481_1_ = FMLNetworkHandler.handleChatMessage(this, p_72481_1_); - this.field_72563_h.field_71456_v.func_73827_b().func_73765_a(p_72481_1_.field_73476_b); + this.field_72563_h.field_71456_v.func_73827_b().func_73765_a(ChatMessageComponent.func_111078_c(p_72481_1_.field_73476_b).func_111068_a(true)); } -@@ -1328,6 +1338,11 @@ +@@ -1379,6 +1389,11 @@ public void func_72494_a(Packet131MapData p_72494_1_) { @@ -82,19 +82,19 @@ if (p_72494_1_.field_73438_a == Item.field_77744_bd.field_77779_bT) { ItemMap.func_77874_a(p_72494_1_.field_73436_b, this.field_72563_h.field_71441_e).func_76192_a(p_72494_1_.field_73437_c); -@@ -1439,6 +1454,11 @@ +@@ -1490,6 +1505,11 @@ public void func_72501_a(Packet250CustomPayload p_72501_1_) { -+ FMLNetworkHandler.handlePacket250Packet(p_72501_1_, field_72555_g, this); ++ FMLNetworkHandler.handlePacket250Packet(p_72501_1_, field_72555_g, this); + } + + public void handleVanilla250Packet(Packet250CustomPayload p_72501_1_) + { - if ("MC|TPack".equals(p_72501_1_.field_73630_a)) + if ("MC|TrList".equals(p_72501_1_.field_73630_a)) { - String[] astring = (new String(p_72501_1_.field_73629_c)).split("\u0000"); -@@ -1606,4 +1626,20 @@ + DataInputStream datainputstream = new DataInputStream(new ByteArrayInputStream(p_72501_1_.field_73629_c)); +@@ -1670,4 +1690,20 @@ { return this.field_72555_g; } diff --git a/fml/patches/minecraft/net/minecraft/client/renderer/RenderBlocks.java.patch b/fml/patches/minecraft/net/minecraft/client/renderer/RenderBlocks.java.patch index 8251c425a..b4bf31909 100644 --- a/fml/patches/minecraft/net/minecraft/client/renderer/RenderBlocks.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/renderer/RenderBlocks.java.patch @@ -1,14 +1,14 @@ --- ../src-base/minecraft/net/minecraft/client/renderer/RenderBlocks.java +++ ../src-work/minecraft/net/minecraft/client/renderer/RenderBlocks.java -@@ -34,6 +34,7 @@ - import net.minecraft.block.BlockWall; +@@ -35,6 +35,7 @@ import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; + import net.minecraft.client.renderer.texture.TextureMap; +import net.minecraft.src.FMLRenderAccessLibrary; import net.minecraft.util.Direction; import net.minecraft.util.Icon; import net.minecraft.util.MathHelper; -@@ -222,7 +223,51 @@ +@@ -223,7 +224,51 @@ { p_78612_1_.func_71902_a(this.field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_); this.func_83018_a(p_78612_1_); @@ -61,7 +61,7 @@ } } -@@ -7618,6 +7663,10 @@ +@@ -7636,6 +7681,10 @@ this.func_96447_a((BlockHopper)p_78600_1_, 0, 0, 0, 0, true); GL11.glTranslatef(0.5F, 0.5F, 0.5F); } @@ -72,7 +72,7 @@ } else { -@@ -7676,7 +7725,25 @@ +@@ -7694,7 +7743,25 @@ public static boolean func_78597_b(int p_78597_0_) { diff --git a/fml/patches/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java.patch b/fml/patches/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java.patch new file mode 100644 index 000000000..32b9bfefc --- /dev/null +++ b/fml/patches/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java.patch @@ -0,0 +1,18 @@ +--- ../src-base/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java ++++ ../src-work/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java +@@ -1,5 +1,6 @@ + package net.minecraft.client.renderer.entity; + ++import cpw.mods.fml.common.registry.VillagerRegistry; + import cpw.mods.fml.relauncher.Side; + import cpw.mods.fml.relauncher.SideOnly; + import net.minecraft.client.model.ModelVillager; +@@ -52,7 +53,7 @@ + case 4: + return field_110906_m; + default: +- return field_110903_f; ++ return VillagerRegistry.getVillagerSkin(p_110902_1_.func_70946_n(), field_110903_f); + } + } + diff --git a/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureClock.java.patch b/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureClock.java.patch deleted file mode 100644 index d7716a38b..000000000 --- a/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureClock.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureClock.java -+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureClock.java -@@ -66,7 +66,7 @@ - if (i != this.field_94222_f) - { - this.field_94222_f = i; -- this.field_94228_a.func_94281_a(this.field_94224_d, this.field_94225_e, (Texture)this.field_94226_b.get(this.field_94222_f), this.field_94227_c); -+ this.field_94228_a.func_94281_a(this.field_94224_d, this.field_94225_e, (Texture)this.field_94226_b.get(this.field_94222_f), false); //FML: We rotate the textures in init. - } - } - } diff --git a/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java.patch b/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java.patch deleted file mode 100644 index 9ba4dc009..000000000 --- a/fml/patches/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java -+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureCompass.java -@@ -94,7 +94,7 @@ - if (i != this.field_94222_f) - { - this.field_94222_f = i; -- this.field_94228_a.func_94281_a(this.field_94224_d, this.field_94225_e, (Texture)this.field_94226_b.get(this.field_94222_f), this.field_94227_c); -+ this.field_94228_a.func_94281_a(this.field_94224_d, this.field_94225_e, (Texture)this.field_94226_b.get(this.field_94222_f), false); //FML: We rotate the textures in init. - } - } - } diff --git a/fml/patches/minecraft/net/minecraft/client/resources/LanguageManager.java.patch b/fml/patches/minecraft/net/minecraft/client/resources/LanguageManager.java.patch new file mode 100644 index 000000000..6cceaa0b0 --- /dev/null +++ b/fml/patches/minecraft/net/minecraft/client/resources/LanguageManager.java.patch @@ -0,0 +1,19 @@ +--- ../src-base/minecraft/net/minecraft/client/resources/LanguageManager.java ++++ ../src-work/minecraft/net/minecraft/client/resources/LanguageManager.java +@@ -3,6 +3,8 @@ + import com.google.common.collect.Lists; + import com.google.common.collect.Maps; + import com.google.common.collect.Sets; ++ ++import cpw.mods.fml.common.registry.LanguageRegistry; + import cpw.mods.fml.relauncher.Side; + import cpw.mods.fml.relauncher.SideOnly; + import java.io.IOException; +@@ -80,6 +82,7 @@ + } + + field_135049_a.func_135022_a(p_110549_1_, arraylist); ++ LanguageRegistry.instance().loadLanguageTable(field_135049_a.field_135032_a, this.field_135048_c); + StringTranslate.func_135063_a(field_135049_a.field_135032_a); + } + diff --git a/fml/patches/minecraft/net/minecraft/client/settings/GameSettings.java.patch b/fml/patches/minecraft/net/minecraft/client/settings/GameSettings.java.patch index 46678f44b..15922f5aa 100644 --- a/fml/patches/minecraft/net/minecraft/client/settings/GameSettings.java.patch +++ b/fml/patches/minecraft/net/minecraft/client/settings/GameSettings.java.patch @@ -7,7 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.BufferedReader; -@@ -691,6 +692,7 @@ +@@ -705,6 +706,7 @@ public void func_74303_b() { diff --git a/fml/patches/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java.patch b/fml/patches/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java.patch index 7db5c9549..ac6722a7a 100644 --- a/fml/patches/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java.patch +++ b/fml/patches/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java.patch @@ -1,10 +1,17 @@ --- ../src-base/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java +++ ../src-work/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java -@@ -130,6 +130,6 @@ +@@ -130,13 +130,6 @@ public Object call() { -- return this.func_85085_a(); +- try +- { +- return this.func_85085_a(); +- } +- catch (Exception e) +- { +- return null; +- } + return "FML is installed"; } } diff --git a/fml/patches/minecraft/net/minecraft/entity/EntityList.java.patch b/fml/patches/minecraft/net/minecraft/entity/EntityList.java.patch index f94dacad4..9545a5892 100644 --- a/fml/patches/minecraft/net/minecraft/entity/EntityList.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/EntityList.java.patch @@ -10,7 +10,7 @@ import net.minecraft.entity.ai.EntityMinecartMobSpawner; import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.boss.EntityWither; -@@ -125,9 +128,10 @@ +@@ -126,9 +129,10 @@ p_75615_0_.func_82580_o("Type"); } @@ -22,7 +22,7 @@ if (oclass != null) { -@@ -141,7 +145,17 @@ +@@ -142,7 +146,17 @@ if (entity != null) { diff --git a/fml/patches/minecraft/net/minecraft/entity/EntityTracker.java.patch b/fml/patches/minecraft/net/minecraft/entity/EntityTracker.java.patch index 7c3d793d2..743956012 100644 --- a/fml/patches/minecraft/net/minecraft/entity/EntityTracker.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/EntityTracker.java.patch @@ -9,7 +9,7 @@ import net.minecraft.crash.CrashReport; import net.minecraft.crash.CrashReportCategory; import net.minecraft.entity.boss.EntityDragon; -@@ -53,6 +55,11 @@ +@@ -51,6 +53,11 @@ public void func_72786_a(Entity p_72786_1_) { diff --git a/fml/patches/minecraft/net/minecraft/entity/EntityTrackerEntry.java.patch b/fml/patches/minecraft/net/minecraft/entity/EntityTrackerEntry.java.patch index d5550b7ae..19e1d88a6 100644 --- a/fml/patches/minecraft/net/minecraft/entity/EntityTrackerEntry.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/EntityTrackerEntry.java.patch @@ -1,15 +1,15 @@ --- ../src-base/minecraft/net/minecraft/entity/EntityTrackerEntry.java +++ ../src-work/minecraft/net/minecraft/entity/EntityTrackerEntry.java -@@ -4,6 +4,8 @@ +@@ -5,6 +5,8 @@ import java.util.Iterator; import java.util.List; import java.util.Set; + +import cpw.mods.fml.common.network.FMLNetworkHandler; + import net.minecraft.entity.ai.attributes.ServersideAttributeMap; import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.item.EntityBoat; - import net.minecraft.entity.item.EntityEnderCrystal; -@@ -357,6 +359,14 @@ +@@ -378,6 +380,14 @@ this.field_73138_k = this.field_73132_a.field_70181_x; this.field_73135_l = this.field_73132_a.field_70179_y; @@ -24,7 +24,7 @@ if (this.field_73143_t && !(packet instanceof Packet24MobSpawn)) { p_73117_1_.field_71135_a.func_72567_b(new Packet28EntityVelocity(this.field_73132_a.field_70157_k, this.field_73132_a.field_70159_w, this.field_73132_a.field_70181_x, this.field_73132_a.field_70179_y)); -@@ -429,6 +439,13 @@ +@@ -455,6 +465,13 @@ if (this.field_73132_a.field_70128_L) { this.field_73132_a.field_70170_p.func_98180_V().func_98236_b("Fetching addPacket for removed entity"); diff --git a/fml/patches/minecraft/net/minecraft/entity/boss/IBossDisplayData.java.patch b/fml/patches/minecraft/net/minecraft/entity/boss/IBossDisplayData.java.patch index 39cdc47c7..8a984e788 100644 --- a/fml/patches/minecraft/net/minecraft/entity/boss/IBossDisplayData.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/boss/IBossDisplayData.java.patch @@ -9,4 +9,4 @@ -@SideOnly(Side.CLIENT) public interface IBossDisplayData { - int func_70667_aM(); + float func_70667_aM(); diff --git a/fml/patches/minecraft/net/minecraft/entity/item/EntityItem.java.patch b/fml/patches/minecraft/net/minecraft/entity/item/EntityItem.java.patch index 82995c56a..2e6801e2b 100644 --- a/fml/patches/minecraft/net/minecraft/entity/item/EntityItem.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/item/EntityItem.java.patch @@ -9,7 +9,7 @@ import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; -@@ -279,6 +281,8 @@ +@@ -277,6 +279,8 @@ p_70100_1_.func_71029_a(AchievementList.field_76027_z); } diff --git a/fml/patches/minecraft/net/minecraft/entity/monster/EntitySlime.java.patch b/fml/patches/minecraft/net/minecraft/entity/monster/EntitySlime.java.patch index 97b55a30a..0928e996c 100644 --- a/fml/patches/minecraft/net/minecraft/entity/monster/EntitySlime.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/monster/EntitySlime.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/entity/monster/EntitySlime.java +++ ../src-work/minecraft/net/minecraft/entity/monster/EntitySlime.java -@@ -243,7 +243,7 @@ +@@ -237,7 +237,7 @@ { Chunk chunk = this.field_70170_p.func_72938_d(MathHelper.func_76128_c(this.field_70165_t), MathHelper.func_76128_c(this.field_70161_v)); diff --git a/fml/patches/minecraft/net/minecraft/entity/passive/EntityVillager.java.patch b/fml/patches/minecraft/net/minecraft/entity/passive/EntityVillager.java.patch index 09cdb05f0..6222a156c 100644 --- a/fml/patches/minecraft/net/minecraft/entity/passive/EntityVillager.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/passive/EntityVillager.java.patch @@ -7,16 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.Collections; -@@ -242,7 +243,7 @@ - case 4: - return "/mob/villager/butcher.png"; - default: -- return super.func_70073_O(); -+ return VillagerRegistry.getVillagerSkin(this.func_70946_n(), super.func_70073_O()); - } - } - -@@ -423,6 +424,7 @@ +@@ -420,6 +421,7 @@ MerchantRecipeList merchantrecipelist; merchantrecipelist = new MerchantRecipeList(); @@ -24,12 +15,12 @@ int j; label50: -@@ -638,7 +640,7 @@ - - public void func_82163_bD() +@@ -624,7 +626,7 @@ + public EntityLivingData func_110161_a(EntityLivingData p_110161_1_) { + p_110161_1_ = super.func_110161_a(p_110161_1_); - this.func_70938_b(this.field_70170_p.field_73012_v.nextInt(5)); + VillagerRegistry.applyRandomTrade(this, field_70170_p.field_73012_v); + return p_110161_1_; } - public void func_82187_q() diff --git a/fml/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch b/fml/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch index eea0b02ea..e6aba607e 100644 --- a/fml/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch +++ b/fml/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch @@ -8,7 +8,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.Collection; -@@ -182,6 +184,7 @@ +@@ -183,6 +185,7 @@ public void func_70071_h_() { @@ -16,7 +16,7 @@ if (this.field_71074_e != null) { ItemStack itemstack = this.field_71071_by.func_70448_g(); -@@ -305,6 +308,7 @@ +@@ -306,6 +309,7 @@ { this.field_71100_bB.func_75118_a(this); } @@ -24,9 +24,9 @@ } public int func_82145_z() -@@ -1905,4 +1909,9 @@ +@@ -1954,4 +1958,9 @@ { - return ScorePlayerTeam.func_96667_a(this.func_96124_cp(), this.field_71092_bJ); + return this.func_70096_w().func_111145_d(17); } + + public void openGui(Object mod, int modGuiId, World world, int x, int y, int z) diff --git a/fml/patches/minecraft/net/minecraft/item/Item.java.patch b/fml/patches/minecraft/net/minecraft/item/Item.java.patch index 9e1822617..c7e82de4d 100644 --- a/fml/patches/minecraft/net/minecraft/item/Item.java.patch +++ b/fml/patches/minecraft/net/minecraft/item/Item.java.patch @@ -1,13 +1,15 @@ --- ../src-base/minecraft/net/minecraft/item/Item.java +++ ../src-work/minecraft/net/minecraft/item/Item.java -@@ -1,5 +1,6 @@ - package net.minecraft.item; +@@ -2,6 +2,8 @@ + import com.google.common.collect.HashMultimap; + import com.google.common.collect.Multimap; ++ +import cpw.mods.fml.common.registry.GameData; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.List; -@@ -215,6 +216,8 @@ +@@ -224,6 +226,8 @@ } field_77698_e[256 + p_i3659_1_] = this; diff --git a/fml/patches/minecraft/net/minecraft/logging/LogAgent.java.patch b/fml/patches/minecraft/net/minecraft/logging/LogAgent.java.patch index ff09cd643..0639be696 100644 --- a/fml/patches/minecraft/net/minecraft/logging/LogAgent.java.patch +++ b/fml/patches/minecraft/net/minecraft/logging/LogAgent.java.patch @@ -16,14 +16,13 @@ Handler[] ahandler = this.field_98242_a.getHandlers(); int i = ahandler.length; -@@ -37,10 +38,6 @@ +@@ -37,9 +38,6 @@ } - LogFormatter logformatter = new LogFormatter(this, (LogAgentINNER1)null); + LogFormatter logformatter = new LogFormatter(this, (LogAgentEmptyAnon)null); - ConsoleHandler consolehandler = new ConsoleHandler(); - consolehandler.setFormatter(logformatter); - this.field_98242_a.addHandler(consolehandler); -- + try { - FileHandler filehandler = new FileHandler(this.field_98240_b, true); diff --git a/fml/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch b/fml/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch index 7664f4e83..aa3a2ffae 100644 --- a/fml/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch @@ -9,7 +9,7 @@ import net.minecraft.crash.CrashReport; import net.minecraft.crash.CrashReportCategory; import net.minecraft.entity.Entity; -@@ -33,6 +35,7 @@ +@@ -34,6 +36,7 @@ import net.minecraft.network.packet.Packet108EnchantItem; import net.minecraft.network.packet.Packet10Flying; import net.minecraft.network.packet.Packet130UpdateSign; @@ -17,15 +17,15 @@ import net.minecraft.network.packet.Packet13PlayerLookMove; import net.minecraft.network.packet.Packet14BlockDig; import net.minecraft.network.packet.Packet15Place; -@@ -616,6 +619,7 @@ +@@ -634,6 +637,7 @@ public void func_72481_a(Packet3Chat p_72481_1_) { + p_72481_1_ = FMLNetworkHandler.handleChatMessage(this, p_72481_1_); if (this.field_72574_e.func_71126_v() == 2) { - this.func_72567_b(new Packet3Chat("Cannot send chat message.")); -@@ -981,6 +985,11 @@ + this.func_72567_b(new Packet3Chat(ChatMessageComponent.func_111077_e("chat.cannotSend").func_111059_a(EnumChatFormatting.RED))); +@@ -1009,6 +1013,11 @@ } public void func_72501_a(Packet250CustomPayload p_72501_1_) @@ -37,7 +37,7 @@ { DataInputStream datainputstream; ItemStack itemstack; -@@ -1145,4 +1154,18 @@ +@@ -1173,4 +1182,18 @@ } } } diff --git a/fml/patches/minecraft/net/minecraft/network/NetworkListenThread.java.patch b/fml/patches/minecraft/net/minecraft/network/NetworkListenThread.java.patch index e9a3070de..1ef0bd43f 100644 --- a/fml/patches/minecraft/net/minecraft/network/NetworkListenThread.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/NetworkListenThread.java.patch @@ -8,9 +8,9 @@ + +import cpw.mods.fml.common.FMLLog; import net.minecraft.crash.CrashReport; + import net.minecraft.crash.CrashReportCategory; import net.minecraft.server.MinecraftServer; - import net.minecraft.util.ReportedException; -@@ -48,6 +51,7 @@ +@@ -51,6 +54,7 @@ throw new ReportedException(crashreport); } diff --git a/fml/patches/minecraft/net/minecraft/network/TcpConnection.java.patch b/fml/patches/minecraft/net/minecraft/network/TcpConnection.java.patch index 8a6d9072b..c752a1b72 100644 --- a/fml/patches/minecraft/net/minecraft/network/TcpConnection.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/TcpConnection.java.patch @@ -7,7 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.BufferedOutputStream; -@@ -394,6 +395,7 @@ +@@ -386,6 +387,7 @@ if (this.field_74472_n && this.field_74473_o.isEmpty()) { this.field_74485_r.func_72515_a(this.field_74481_v, this.field_74480_w); diff --git a/fml/patches/minecraft/net/minecraft/network/packet/NetHandler.java.patch b/fml/patches/minecraft/net/minecraft/network/packet/NetHandler.java.patch index 6f28e30cf..d110dbfb3 100644 --- a/fml/patches/minecraft/net/minecraft/network/packet/NetHandler.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/packet/NetHandler.java.patch @@ -7,9 +7,9 @@ public abstract class NetHandler { -@@ -365,4 +367,8 @@ +@@ -375,4 +377,8 @@ { - this.func_72509_a(p_98182_1_); + this.func_72509_a(p_110773_1_); } + + public abstract void handleVanilla250Packet(Packet250CustomPayload payload); diff --git a/fml/patches/minecraft/net/minecraft/network/packet/Packet.java.patch b/fml/patches/minecraft/net/minecraft/network/packet/Packet.java.patch index 2eba5b57e..acebe6fcb 100644 --- a/fml/patches/minecraft/net/minecraft/network/packet/Packet.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/packet/Packet.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/network/packet/Packet.java +++ ../src-work/minecraft/net/minecraft/network/packet/Packet.java -@@ -357,7 +357,7 @@ +@@ -355,7 +355,7 @@ func_73285_a(107, true, true, Packet107CreativeSetSlot.class); func_73285_a(108, false, true, Packet108EnchantItem.class); func_73285_a(130, true, true, Packet130UpdateSign.class); diff --git a/fml/patches/minecraft/net/minecraft/network/packet/Packet1Login.java.patch b/fml/patches/minecraft/net/minecraft/network/packet/Packet1Login.java.patch index cb118cb06..27b1a70f2 100644 --- a/fml/patches/minecraft/net/minecraft/network/packet/Packet1Login.java.patch +++ b/fml/patches/minecraft/net/minecraft/network/packet/Packet1Login.java.patch @@ -1,8 +1,8 @@ --- ../src-base/minecraft/net/minecraft/network/packet/Packet1Login.java +++ ../src-work/minecraft/net/minecraft/network/packet/Packet1Login.java @@ -3,6 +3,8 @@ - import java.io.DataInputStream; - import java.io.DataOutputStream; + import java.io.DataInput; + import java.io.DataOutput; import java.io.IOException; + +import cpw.mods.fml.common.network.FMLNetworkHandler; @@ -30,7 +30,7 @@ + this.vanillaCompatible = false; } - public void func_73267_a(DataInputStream p_73267_1_) throws IOException + public void func_73267_a(DataInput p_73267_1_) throws IOException @@ -46,7 +54,16 @@ this.field_73560_c = (b0 & 8) == 8; int i = b0 & -9; diff --git a/fml/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch b/fml/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch index 5dce5d643..8cb7e5e41 100644 --- a/fml/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch +++ b/fml/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch @@ -7,19 +7,19 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.awt.GraphicsEnvironment; -@@ -352,7 +353,11 @@ +@@ -366,7 +367,11 @@ { if (this.func_71197_b()) { + FMLCommonHandler.instance().handleServerStarted(); + - long i = System.currentTimeMillis(); + long i = func_130071_aq(); + + FMLCommonHandler.instance().onWorldLoadTick(field_71305_c); for (long j = 0L; this.field_71317_u; this.field_71296_Q = true) { -@@ -391,6 +396,7 @@ +@@ -405,6 +410,7 @@ Thread.sleep(1L); } @@ -27,7 +27,7 @@ } else { -@@ -399,6 +405,10 @@ +@@ -413,6 +419,10 @@ } catch (Throwable throwable) { @@ -38,7 +38,7 @@ throwable.printStackTrace(); this.func_98033_al().func_98234_c("Encountered an unexpected exception " + throwable.getClass().getSimpleName(), throwable); CrashReport crashreport = null; -@@ -429,6 +439,10 @@ +@@ -443,6 +453,10 @@ { try { @@ -49,7 +49,7 @@ this.func_71260_j(); this.field_71316_v = true; } -@@ -438,6 +452,8 @@ +@@ -452,6 +466,8 @@ } finally { @@ -58,7 +58,7 @@ this.func_71240_o(); } } -@@ -454,8 +470,10 @@ +@@ -468,8 +484,10 @@ public void func_71217_p() { @@ -69,7 +69,7 @@ ++this.field_71315_w; if (this.field_71295_T) -@@ -501,6 +519,7 @@ +@@ -515,6 +533,7 @@ this.field_71304_b.func_76319_b(); this.field_71304_b.func_76319_b(); @@ -77,7 +77,7 @@ } public void func_71190_q() -@@ -528,6 +547,7 @@ +@@ -542,6 +561,7 @@ } this.field_71304_b.func_76320_a("tick"); @@ -85,7 +85,7 @@ CrashReport crashreport; try -@@ -552,6 +572,7 @@ +@@ -566,6 +586,7 @@ throw new ReportedException(crashreport); } @@ -93,7 +93,7 @@ this.field_71304_b.func_76319_b(); this.field_71304_b.func_76320_a("tracker"); worldserver.func_73039_n().func_72788_a(); -@@ -679,7 +700,7 @@ +@@ -693,7 +714,7 @@ public String getServerModName() { diff --git a/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServer.java.patch b/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServer.java.patch index f7d7c0349..10dea5bde 100644 --- a/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServer.java.patch +++ b/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServer.java.patch @@ -7,7 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.File; -@@ -111,9 +112,10 @@ +@@ -113,9 +114,10 @@ this.func_71245_h(true); this.field_98130_m.func_98233_a("Generating keypair"); this.func_71253_a(CryptManager.func_75891_b()); diff --git a/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServerListenThread.java.patch b/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServerListenThread.java.patch index 77c520677..643c9efc5 100644 --- a/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServerListenThread.java.patch +++ b/fml/patches/minecraft/net/minecraft/server/integrated/IntegratedServerListenThread.java.patch @@ -7,12 +7,3 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.IOException; -@@ -64,7 +65,7 @@ - } - } - -- return this.field_71757_g.func_71767_c().getHostAddress() + ":" + this.field_71757_g.func_71765_d(); -+ return FMLNetworkHandler.computeLocalHost().getHostAddress() + ":" + this.field_71757_g.func_71765_d(); - } - - public void func_71744_a() diff --git a/fml/patches/minecraft/net/minecraft/server/management/ServerConfigurationManager.java.patch b/fml/patches/minecraft/net/minecraft/server/management/ServerConfigurationManager.java.patch index d44d9e866..0b88215e8 100644 --- a/fml/patches/minecraft/net/minecraft/server/management/ServerConfigurationManager.java.patch +++ b/fml/patches/minecraft/net/minecraft/server/management/ServerConfigurationManager.java.patch @@ -8,7 +8,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.File; -@@ -119,6 +121,8 @@ +@@ -120,6 +122,8 @@ p_72355_2_.func_71116_b(); @@ -17,7 +17,7 @@ if (nbttagcompound != null && nbttagcompound.func_74764_b("Riding")) { Entity entity = EntityList.func_75615_a(nbttagcompound.func_74775_l("Riding"), worldserver); -@@ -233,6 +237,7 @@ +@@ -234,6 +238,7 @@ public void func_72367_e(EntityPlayerMP p_72367_1_) { @@ -25,15 +25,15 @@ this.func_72391_b(p_72367_1_); WorldServer worldserver = p_72367_1_.func_71121_q(); -@@ -390,6 +395,7 @@ +@@ -391,6 +396,7 @@ this.field_72404_b.add(entityplayermp1); entityplayermp1.func_71116_b(); - entityplayermp1.func_70606_j(entityplayermp1.func_70630_aN()); + entityplayermp1.func_70606_j(entityplayermp1.func_110143_aJ()); + GameRegistry.onPlayerRespawn(entityplayermp1); return entityplayermp1; } -@@ -415,6 +421,8 @@ +@@ -416,6 +422,8 @@ PotionEffect potioneffect = (PotionEffect)iterator.next(); p_72356_1_.field_71135_a.func_72567_b(new Packet41EntityEffect(p_72356_1_.field_70157_k, potioneffect)); } diff --git a/fml/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch b/fml/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch index 45b25bf62..21d093287 100644 --- a/fml/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch +++ b/fml/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch @@ -7,7 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; -@@ -311,7 +312,15 @@ +@@ -316,7 +317,15 @@ } } diff --git a/fml/patches/minecraft/net/minecraft/util/CryptManager.java.patch b/fml/patches/minecraft/net/minecraft/util/CryptManager.java.patch index 86d7fba9c..4446314b3 100644 --- a/fml/patches/minecraft/net/minecraft/util/CryptManager.java.patch +++ b/fml/patches/minecraft/net/minecraft/util/CryptManager.java.patch @@ -7,11 +7,11 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.io.InputStream; -@@ -36,6 +37,7 @@ +@@ -35,6 +36,7 @@ import org.bouncycastle.crypto.params.ParametersWithIV; import org.bouncycastle.jce.provider.BouncyCastleProvider; +@ReobfuscationMarker public class CryptManager { - public static final Charset field_75898_a = Charset.forName("ISO_8859_1"); + @SideOnly(Side.CLIENT) diff --git a/fml/patches/minecraft/net/minecraft/util/StringTranslate.java.patch b/fml/patches/minecraft/net/minecraft/util/StringTranslate.java.patch index ddc27745a..d7c87e5e9 100644 --- a/fml/patches/minecraft/net/minecraft/util/StringTranslate.java.patch +++ b/fml/patches/minecraft/net/minecraft/util/StringTranslate.java.patch @@ -1,25 +1,20 @@ --- ../src-base/minecraft/net/minecraft/util/StringTranslate.java +++ ../src-work/minecraft/net/minecraft/util/StringTranslate.java -@@ -1,5 +1,6 @@ - package net.minecraft.util; - +@@ -3,6 +3,8 @@ + import com.google.common.base.Splitter; + import com.google.common.collect.Iterables; + import com.google.common.collect.Maps; ++ +import cpw.mods.fml.common.registry.LanguageRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - import java.io.BufferedReader; -@@ -92,6 +93,7 @@ + import java.io.IOException; +@@ -45,7 +47,7 @@ } } } -+ LanguageRegistry.instance().loadLanguageTable(p_74812_1_, p_74812_2_); - } - - public synchronized void func_74810_a(String p_74810_1_, boolean p_74810_2_) -@@ -169,7 +171,6 @@ +- catch (IOException ioexception) ++ catch (Exception ioexception) + { + ; } - } - -- @SideOnly(Side.CLIENT) - public String func_74811_c() - { - return this.field_74813_d; diff --git a/fml/patches/minecraft/net/minecraft/world/World.java.patch b/fml/patches/minecraft/net/minecraft/world/World.java.patch index 6c7a00fcd..e2bb1e876 100644 --- a/fml/patches/minecraft/net/minecraft/world/World.java.patch +++ b/fml/patches/minecraft/net/minecraft/world/World.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/world/World.java +++ ../src-work/minecraft/net/minecraft/world/World.java -@@ -1806,13 +1806,14 @@ +@@ -1811,13 +1811,14 @@ } } @@ -16,7 +16,7 @@ this.field_72984_F.func_76318_c("pendingTileEntities"); -@@ -3640,7 +3641,7 @@ +@@ -3645,7 +3646,7 @@ @SideOnly(Side.CLIENT) public double func_72919_O() { diff --git a/fml/patches/minecraft/net/minecraft/world/WorldProvider.java.patch b/fml/patches/minecraft/net/minecraft/world/WorldProvider.java.patch index e8b2ab021..110332931 100644 --- a/fml/patches/minecraft/net/minecraft/world/WorldProvider.java.patch +++ b/fml/patches/minecraft/net/minecraft/world/WorldProvider.java.patch @@ -1,6 +1,6 @@ --- ../src-base/minecraft/net/minecraft/world/WorldProvider.java +++ ../src-work/minecraft/net/minecraft/world/WorldProvider.java -@@ -48,20 +48,12 @@ +@@ -49,20 +49,12 @@ protected void func_76572_b() { @@ -23,7 +23,7 @@ } public boolean func_76566_a(int p_76566_1_, int p_76566_2_) -@@ -178,19 +170,19 @@ +@@ -179,19 +171,19 @@ public int func_76557_i() { diff --git a/fml/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch b/fml/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch index fe76ac42e..86375f934 100644 --- a/fml/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch +++ b/fml/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch @@ -11,7 +11,7 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; import net.minecraft.nbt.CompressedStreamTools; -@@ -252,10 +256,19 @@ +@@ -253,10 +257,19 @@ Entity entity = (Entity)iterator.next(); nbttagcompound1 = new NBTTagCompound(); @@ -35,7 +35,7 @@ } } } -@@ -268,8 +281,17 @@ +@@ -269,8 +282,17 @@ { TileEntity tileentity = (TileEntity)iterator.next(); nbttagcompound1 = new NBTTagCompound(); diff --git a/fml/patches/minecraft/net/minecraft/world/storage/WorldInfo.java.patch b/fml/patches/minecraft/net/minecraft/world/storage/WorldInfo.java.patch index 696122130..54089d401 100644 --- a/fml/patches/minecraft/net/minecraft/world/storage/WorldInfo.java.patch +++ b/fml/patches/minecraft/net/minecraft/world/storage/WorldInfo.java.patch @@ -10,9 +10,9 @@ import net.minecraft.crash.CrashReportCategory; +import net.minecraft.nbt.NBTBase; import net.minecraft.nbt.NBTTagCompound; + import net.minecraft.server.MinecraftServer; import net.minecraft.world.EnumGameType; - import net.minecraft.world.GameRules; -@@ -35,6 +38,7 @@ +@@ -36,6 +39,7 @@ private boolean field_76110_t; private boolean field_76109_u; private GameRules field_82577_x; @@ -20,7 +20,7 @@ protected WorldInfo() { -@@ -534,4 +538,24 @@ +@@ -535,4 +539,24 @@ { return p_85131_0_.field_76110_t; }