First draft of 1.6 update

This commit is contained in:
Christian 2013-06-29 13:33:14 -04:00
parent 70b1dcfbac
commit 5b5f05859c
64 changed files with 444 additions and 536 deletions

View file

@ -213,16 +213,21 @@
<copy todir="build-tmp-deobf"> <copy todir="build-tmp-deobf">
<mappedresources> <mappedresources>
<fileset dir="${mcp.home}/conf" includes="packaged.srg" /> <fileset dir="${mcp.home}/conf" includes="packaged.srg" />
<globmapper from="packaged.srg" to="joined.srg" /> <globmapper from="packaged.srg" to="deobfuscation_data-${version.minecraft}" />
</mappedresources> </mappedresources>
</copy> </copy>
<touch millis="0" file="build-tmp-deobf/joined.srg" /> <exec executable="lzma">
<zip file="deobfuscation_data_${version.minecraft}.zip" encoding="UTF-8"> <arg line="build-tmp-deobf/deobfuscation_data-${version.minecraft}"/>
<fileset dir="build-tmp-deobf" includes="joined.srg" /> <arg line="-v"/>
</zip> </exec>
<checksum algorithm="SHA1" property="deobf.checksum" file="deobfuscation_data_${version.minecraft}.zip" /> <copy todir="${basedir}">
<fileset dir="build-tmp-deobf" includes="*.lzma" />
</copy>
<antcall target="writeversion" /> <antcall target="writeversion" />
<delete dir="build-tmp-deobf" /> <delete dir="build-tmp-deobf" />
<zip destfile="deobfuscation_data-${version.minecraft}.jar" basedir="${basedir}">
<include name="deobfuscation_data-${version.minecraft}.lzma"/>
</zip>
</target> </target>
<target name="build" depends="buildenvsetup,merge-client,merge-common,build-deobf-data,build-universal,build-source-pack" /> <target name="build" depends="buildenvsetup,merge-client,merge-common,build-deobf-data,build-universal,build-source-pack" />
@ -384,7 +389,7 @@
</classpath> </classpath>
<arg path="${mcp.home}/jars/versions/${version.minecraft}/${version.minecraft}.jar.backup"/> <arg path="${mcp.home}/jars/versions/${version.minecraft}/${version.minecraft}.jar.backup"/>
<arg path="${mcp.obfoutput}/minecraft"/> <arg path="${mcp.obfoutput}/minecraft"/>
<arg path="${basedir}/deobfuscation_data_${version.minecraft}.zip"/> <arg path="${basedir}/deobfuscation_data-${version.minecraft}.lzma"/>
<arg path="${basedir}/binpatch/client"/> <arg path="${basedir}/binpatch/client"/>
<arg value="false"/> <arg value="false"/>
</java> </java>
@ -395,7 +400,7 @@
</classpath> </classpath>
<arg path="${mcp.home}/jars/minecraft_server.${version.minecraft}.jar.backup"/> <arg path="${mcp.home}/jars/minecraft_server.${version.minecraft}.jar.backup"/>
<arg path="${mcp.obfoutput}/minecraft"/> <arg path="${mcp.obfoutput}/minecraft"/>
<arg path="${basedir}/deobfuscation_data_${version.minecraft}.zip"/> <arg path="${basedir}/deobfuscation_data-${version.minecraft}.lzma"/>
<arg path="${basedir}/binpatch/server"/> <arg path="${basedir}/binpatch/server"/>
<arg value="true"/> <arg value="true"/>
</java> </java>

View file

@ -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
}
}

View file

@ -255,7 +255,7 @@ public class FMLClientHandler implements IFMLSidedHandler
else else
{ {
// Force renderengine to reload and re-initialize all textures // 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()); // TextureFXManager.instance().loadTextures(client.field_71418_C.func_77292_e());
} }
} }

View file

@ -17,6 +17,7 @@ import java.util.Map.Entry;
import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiYesNo; import net.minecraft.client.gui.GuiYesNo;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.StringTranslate; import net.minecraft.util.StringTranslate;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
@ -99,7 +100,7 @@ public class GuiIdMismatchScreen extends GuiYesNo {
if (!allowContinue) if (!allowContinue)
{ {
var5.field_73746_c = this.field_73880_f / 2 - 75; 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_); var5.func_73737_a(this.field_73882_e, p_73863_1_, p_73863_2_);
} }

View file

@ -23,6 +23,7 @@ import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.GuiSmallButton; import net.minecraft.client.gui.GuiSmallButton;
import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.StringTranslate; import net.minecraft.util.StringTranslate;
import org.lwjgl.opengl.GL11; 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.max(listWidth,getFontRenderer().func_78256_a(mod.getVersion()) + 10);
} }
listWidth=Math.min(listWidth, 150); 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, I18n.func_135053_a("gui.done")));
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.modList=new GuiSlotModList(this, mods, listWidth); this.modList=new GuiSlotModList(this, mods, listWidth);
this.modList.registerScrollButtons(this.field_73887_h, 7, 8); this.modList.registerScrollButtons(this.field_73887_h, 7, 8);
} }
@ -120,7 +120,8 @@ public class GuiModList extends GuiScreen
if (!logoFile.isEmpty()) if (!logoFile.isEmpty())
{ {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); 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); Dimension dim = TextureFXManager.instance().getTextureDimensions(logoFile);
double scaleX = dim.width / 200.0; double scaleX = dim.width / 200.0;
double scaleY = dim.height / 65.0; double scaleY = dim.height / 65.0;

View file

@ -15,6 +15,7 @@ package cpw.mods.fml.client;
import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.GuiSmallButton; import net.minecraft.client.gui.GuiSmallButton;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.StringTranslate; import net.minecraft.util.StringTranslate;
import cpw.mods.fml.common.network.ModMissingPacket; import cpw.mods.fml.common.network.ModMissingPacket;
import cpw.mods.fml.common.versioning.ArtifactVersion; import cpw.mods.fml.common.versioning.ArtifactVersion;
@ -31,8 +32,7 @@ public class GuiModsMissingForServer extends GuiScreen
@Override @Override
public void func_73866_w_() 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, I18n.func_135053_a("gui.done")));
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")));
} }
@Override @Override

View file

@ -15,6 +15,7 @@ package cpw.mods.fml.client;
import java.util.List; import java.util.List;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.Tessellator;
@ -264,7 +265,7 @@ public abstract class GuiScrollingList
GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_FOG); GL11.glDisable(GL11.GL_FOG);
Tessellator var18 = Tessellator.field_78398_a; 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); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
float var17 = 32.0F; float var17 = 32.0F;
var18.func_78382_b(); 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_) 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; 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); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
float var6 = 32.0F; float var6 = 32.0F;
var5.func_78382_b(); var5.func_78382_b();

View file

@ -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();
}

View file

@ -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();
}
}

View file

@ -28,7 +28,6 @@ import com.google.common.collect.Maps;
import cpw.mods.fml.common.FMLLog; import cpw.mods.fml.common.FMLLog;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.RenderEngine;
public class TextureFXManager public class TextureFXManager
{ {
@ -39,26 +38,26 @@ public class TextureFXManager
private Map<Integer,TextureHolder> texturesById = Maps.newHashMap(); private Map<Integer,TextureHolder> texturesById = Maps.newHashMap();
private Map<String, TextureHolder> texturesByName = Maps.newHashMap(); private Map<String, TextureHolder> texturesByName = Maps.newHashMap();
private TextureHelper helper; // private TextureHelper helper;
void setClient(Minecraft client) void setClient(Minecraft client)
{ {
this.client = client; this.client = client;
} }
public BufferedImage loadImageFromTexturePack(RenderEngine renderEngine, String path) throws IOException // public BufferedImage loadImageFromTexturePack(RenderEngine renderEngine, String path) throws IOException
{ // {
InputStream image=client.field_71418_C.func_77292_e().func_77532_a(path); // InputStream image=client.field_71418_C.func_77292_e().func_77532_a(path);
if (image==null) { // if (image==null) {
throw new RuntimeException(String.format("The requested image path %s is not found",path)); // throw new RuntimeException(String.format("The requested image path %s is not found",path));
} // }
BufferedImage result=ImageIO.read(image); // BufferedImage result=ImageIO.read(image);
if (result==null) // if (result==null)
{ // {
throw new RuntimeException(String.format("The requested image path %s appears to be corrupted",path)); // throw new RuntimeException(String.format("The requested image path %s appears to be corrupted",path));
} // }
return result; // return result;
} // }
//
public static TextureFXManager instance() public static TextureFXManager instance()
{ {
return INSTANCE; return INSTANCE;
@ -111,33 +110,33 @@ public class TextureFXManager
} }
public TextureHelper getHelper() // 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")))
// { // {
// FMLLog.info("Using the new OpenGL 4.3 advanced capability for animations"); // if (helper == null)
// helper = new OpenGL43TextureHelper(); // {
// 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")))
//// {
//// 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;
// } // }
// 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;
}
} }

View file

@ -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);
}
}

View file

@ -48,9 +48,8 @@ public class RenderingRegistry
*/ */
public static int addNewArmourRendererPrefix(String armor) public static int addNewArmourRendererPrefix(String armor)
{ {
RenderPlayer.field_77110_j = ObjectArrays.concat(RenderPlayer.field_77110_j, armor); RenderBiped.field_82424_k = ObjectArrays.concat(RenderBiped.field_82424_k, armor);
RenderBiped.field_82424_k = RenderPlayer.field_77110_j; return RenderBiped.field_82424_k.length - 1;
return RenderPlayer.field_77110_j.length - 1;
} }
/** /**

View file

@ -19,9 +19,6 @@ import java.util.logging.Logger;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks; 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 net.minecraft.world.IBlockAccess;
import cpw.mods.fml.client.TextureFXManager; import cpw.mods.fml.client.TextureFXManager;
@ -72,8 +69,8 @@ public class FMLRenderAccessLibrary
return RenderingRegistry.instance().renderItemAsFull3DBlock(modelId); return RenderingRegistry.instance().renderItemAsFull3DBlock(modelId);
} }
public static void doTextureCopy(Texture atlas, Texture source, int targetX, int targetY) // public static void doTextureCopy(Texture atlas, Texture source, int targetX, int targetY)
{ // {
TextureFXManager.instance().getHelper().doTextureCopy(atlas, source, targetX, targetY); // TextureFXManager.instance().getHelper().doTextureCopy(atlas, source, targetX, targetY);
} // }
} }

View file

@ -26,7 +26,6 @@ import net.minecraft.client.*;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.multiplayer.NetClientHandler; import net.minecraft.client.multiplayer.NetClientHandler;
import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.RenderEngine;
import net.minecraft.client.renderer.entity.Render; import net.minecraft.client.renderer.entity.Render;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.client.settings.KeyBinding; import net.minecraft.client.settings.KeyBinding;
@ -564,11 +563,11 @@ public class ModLoader
{ {
} }
@SideOnly(CLIENT) // @SideOnly(CLIENT)
public static BufferedImage loadImage(RenderEngine renderEngine, String path) throws Exception // public static BufferedImage loadImage(RenderEngine renderEngine, String path) throws Exception
{ // {
return TextureFXManager.instance().loadImageFromTexturePack(renderEngine, path); // return TextureFXManager.instance().loadImageFromTexturePack(renderEngine, path);
} // }
/** /**
* Call in from elsewhere. Unimplemented here. * Call in from elsewhere. Unimplemented here.
@ -616,11 +615,11 @@ public class ModLoader
return keys; return keys;
} }
@Deprecated // @Deprecated
@SideOnly(CLIENT) // @SideOnly(CLIENT)
public static void registerAllTextureOverrides(RenderEngine cache) // public static void registerAllTextureOverrides(RenderEngine cache)
{ // {
} // }
/** /**
* Register a new block * Register a new block

View file

@ -13,6 +13,7 @@
package cpw.mods.fml.common.asm.transformers.deobf; package cpw.mods.fml.common.asm.transformers.deobf;
import java.io.File; import java.io.File;
import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
@ -81,10 +82,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
try try
{ {
File mapData = new File(deobfFileName); File mapData = new File(deobfFileName);
mapData = mapData.getCanonicalFile(); LZMAInputSupplier zis = new LZMAInputSupplier(new FileInputStream(mapData));
ZipFile mapZip = new ZipFile(mapData);
ZipEntry classData = mapZip.getEntry("joined.srg");
ZipInputSupplier zis = new ZipInputSupplier(mapZip, classData);
InputSupplier<InputStreamReader> srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8); InputSupplier<InputStreamReader> srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8);
List<String> srgList = CharStreams.readLines(srgSupplier); List<String> srgList = CharStreams.readLines(srgSupplier);
rawMethodMaps = Maps.newHashMap(); rawMethodMaps = Maps.newHashMap();
@ -132,12 +130,8 @@ public class FMLDeobfuscatingRemapper extends Remapper {
this.classLoader = classLoader; this.classLoader = classLoader;
try try
{ {
File libDir = new File(mcDir, "lib"); InputStream classData = getClass().getResourceAsStream(deobfFileName);
File mapData = new File(libDir, deobfFileName); LZMAInputSupplier zis = new LZMAInputSupplier(classData);
mapData = mapData.getCanonicalFile();
ZipFile mapZip = new ZipFile(mapData);
ZipEntry classData = mapZip.getEntry("joined.srg");
ZipInputSupplier zis = new ZipInputSupplier(mapZip, classData);
InputSupplier<InputStreamReader> srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8); InputSupplier<InputStreamReader> srgSupplier = CharStreams.newReaderSupplier(zis,Charsets.UTF_8);
List<String> srgList = CharStreams.readLines(srgSupplier); List<String> srgList = CharStreams.readLines(srgSupplier);
rawMethodMaps = Maps.newHashMap(); rawMethodMaps = Maps.newHashMap();

View file

@ -17,22 +17,22 @@ import java.io.InputStream;
import java.util.zip.ZipEntry; import java.util.zip.ZipEntry;
import java.util.zip.ZipFile; import java.util.zip.ZipFile;
import LZMA.LzmaInputStream;
import com.google.common.io.InputSupplier; import com.google.common.io.InputSupplier;
public class ZipInputSupplier implements InputSupplier<InputStream> { public class LZMAInputSupplier implements InputSupplier<InputStream> {
private ZipFile zipFile; private InputStream compressedData;
private ZipEntry zipEntry;
public ZipInputSupplier(ZipFile zip, ZipEntry entry) public LZMAInputSupplier(InputStream compressedData)
{ {
this.zipFile = zip; this.compressedData = compressedData;
this.zipEntry = entry;
} }
@Override @Override
public InputStream getInput() throws IOException public InputStream getInput() throws IOException
{ {
return zipFile.getInputStream(zipEntry); return new LzmaInputStream(this.compressedData);
} }
} }

View file

@ -8,6 +8,7 @@ import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import com.google.common.base.Throwables; import com.google.common.base.Throwables;
import com.google.common.collect.ObjectArrays;
import cpw.mods.fml.relauncher.FMLLaunchHandler; import cpw.mods.fml.relauncher.FMLLaunchHandler;
@ -20,12 +21,13 @@ public class FMLTweaker implements ITweaker {
private File assetsDir; private File assetsDir;
private String profile; private String profile;
private static URI jarLocation; private static URI jarLocation;
private String[] array;
@Override @Override
public void acceptOptions(List<String> args, File gameDir, File assetsDir, String profile) public void acceptOptions(List<String> args, File gameDir, File assetsDir, String profile)
{ {
this.args = args; this.args = args;
this.gameDir = gameDir; this.gameDir = (gameDir == null ? new File(".") : gameDir);
this.assetsDir = assetsDir; this.assetsDir = assetsDir;
this.profile = profile; this.profile = profile;
try try
@ -51,13 +53,36 @@ public class FMLTweaker implements ITweaker {
@Override @Override
public String getLaunchTarget() public String getLaunchTarget()
{ {
return "net.minecraft.client.Minecraft"; return "net.minecraft.client.main.Main";
} }
@Override @Override
public String[] getLaunchArguments() 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() public File getGameDir()

View file

@ -88,6 +88,12 @@ public class ClassPatchManager {
{ {
FMLRelaunchLog.fine("FML URI is %s", FMLTweaker.getJarLocation()); FMLRelaunchLog.fine("FML URI is %s", FMLTweaker.getJarLocation());
File fmlJarFile = new File(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); fmlJar = new JarFile(fmlJarFile);
} }
catch (Exception e) catch (Exception e)

View file

@ -28,6 +28,7 @@ import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.ModContainer; import cpw.mods.fml.common.ModContainer;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.StringTranslate; import net.minecraft.util.StringTranslate;
@ -45,7 +46,7 @@ public class LanguageRegistry
public String getStringLocalization(String key) 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) public String getStringLocalization(String key, String lang)
@ -93,9 +94,9 @@ public class LanguageRegistry
public static void reloadLanguageTable() public static void reloadLanguageTable()
{ {
// reload language table by forcing lang to null and reloading the properties file // // reload language table by forcing lang to null and reloading the properties file
String lang = StringTranslate.func_74808_a().func_74811_c(); // String lang = StringTranslate.func_74808_a().func_74811_c();
StringTranslate.func_74808_a().func_74810_a(lang, true); // StringTranslate.func_74808_a().func_74810_a(lang, true);
} }
@ -120,17 +121,17 @@ public class LanguageRegistry
instance().addNameForObject(objectToName, "en_US", name); 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"); Properties usPack=modLanguageData.get("en_US");
if (usPack!=null) { if (usPack!=null) {
languagePack.putAll(usPack); field_135032_a.putAll(usPack);
} }
Properties langPack=modLanguageData.get(lang); Properties langPack=modLanguageData.get(lang);
if (langPack==null) { if (langPack==null) {
return; return;
} }
languagePack.putAll(langPack); field_135032_a.putAll(langPack);
} }
public void loadLocalization(String localizationFile, String lang, boolean isXML) public void loadLocalization(String localizationFile, String lang, boolean isXML)

View file

@ -19,6 +19,7 @@ import java.util.Random;
import java.util.Collection; import java.util.Collection;
import java.util.Collections; import java.util.Collections;
import net.minecraft.client.resources.ResourceLocation;
import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.passive.EntityVillager;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.util.Tuple; import net.minecraft.util.Tuple;
@ -32,6 +33,8 @@ import com.google.common.collect.Maps;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import cpw.mods.fml.common.FMLLog; import cpw.mods.fml.common.FMLLog;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
/** /**
* Registry for villager trading control * Registry for villager trading control
@ -45,8 +48,9 @@ public class VillagerRegistry
private Multimap<Integer, IVillageTradeHandler> tradeHandlers = ArrayListMultimap.create(); private Multimap<Integer, IVillageTradeHandler> tradeHandlers = ArrayListMultimap.create();
private Map<Class<?>, IVillageCreationHandler> villageCreationHandlers = Maps.newHashMap(); private Map<Class<?>, IVillageCreationHandler> villageCreationHandlers = Maps.newHashMap();
private Map<Integer, String> newVillagers = Maps.newHashMap();
private List<Integer> newVillagerIds = Lists.newArrayList(); private List<Integer> newVillagerIds = Lists.newArrayList();
@SideOnly(Side.CLIENT)
private Map<Integer, ResourceLocation> newVillagers;
/** /**
* Allow access to the {@link net.minecraft.world.gen.structure.StructureVillagePieces} array controlling new village * Allow access to the {@link net.minecraft.world.gen.structure.StructureVillagePieces} array controlling new village
@ -110,21 +114,33 @@ public class VillagerRegistry
return INSTANCE; 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 * Register a new skin for a villager type
* *
* @param villagerId * @param villagerId
* @param villagerSkin * @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); newVillagers = Maps.newHashMap();
throw new RuntimeException();
} }
newVillagers.put(villagerId, villagerSkin); newVillagers.put(villagerId, villagerSkin);
newVillagerIds.add(villagerId);
} }
/** /**
@ -154,7 +170,8 @@ public class VillagerRegistry
* @param villagerType * @param villagerType
* @param defaultSkin * @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)) if (instance().newVillagers.containsKey(villagerType))
{ {

View file

@ -64,7 +64,7 @@ public class FMLInjectionData
static String debfuscationDataName() static String debfuscationDataName()
{ {
return "deobfuscation_data_"+mccversion+".zip"; return "/deobfuscation_data-"+mccversion+".lzma";
} }
public static Object[] data() public static Object[] data()
{ {

View file

@ -105,6 +105,7 @@ public class FMLLaunchHandler
} }
catch (Throwable t) 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()); 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); throw Throwables.propagate(t);
} }

View file

@ -1,73 +1,76 @@
#Main FML Access Transformer configuration file #Main FML Access Transformer configuration file
# TileEntity addMapping # 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 # EntityList addMappings
public mv.a(Ljava/lang/Class;Ljava/lang/String;I)V #MD:EntityList/func_75618_a public np.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 np.a(Ljava/lang/Class;Ljava/lang/String;III)V #MD:EntityList/func_75614_a
public mv.b #FD:EntityList/field_75625_b #nameToClassMap public np.b #FD:EntityList/field_75625_b #nameToClassMap
public mv.c #FD:EntityList/field_75626_c #classToNameMap public np.c #FD:EntityList/field_75626_c #classToNameMap
public mv.d #FD:EntityList/field_75623_d #idToClassMap public np.d #FD:EntityList/field_75623_d #idToClassMap
# RenderEngine # RenderEngine
#public bba.h #FD:RenderEngine/field_78367_h #textureList # -- MISSING MAPPING # -- MISSING MAPPING #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 # RenderManager
public bgy.q #FD:RenderManager/field_78729_o #renderers public bfx.q #FD:RenderManager/field_78729_o #renderers
# RenderBlocks - everything # RenderBlocks - everything
public bgf.* #FD:RenderBlocks/* public bfd.* #FD:RenderBlocks/*
public bgf.*() #MD:RenderBlocks/* public bfd.*() #MD:RenderBlocks/*
#RenderPlayer #RenderPlayer
public-f bht.h #FD:RenderPlayer/field_77110_j #armorlist #public-f bht.h #FD:RenderPlayer/field_77110_j #armorlist # -- MISSING MAPPING
#RenderBiped #RenderBiped
public-f bhg.k #FD:RenderBiped/field_82424_k #armorlist public-f bgg.l #FD:RenderBiped/field_82424_k #armorlist
#StringTranslate #StringTranslate
public bp.b #FD:StringTranslate/field_74815_b #public bp.b #FD:StringTranslate/field_74815_b # -- MISSING MAPPING
public bp.e #FD:StringTranslate/field_74813_d #public bp.e #FD:StringTranslate/field_74813_d # -- MISSING MAPPING
# TileEntityRenderer # TileEntityRenderer
public bjd.m #FD:TileEntityRenderer/field_76966_m public bip.m #FD:TileEntityRenderer/field_76966_m
# CraftingManager - make the add recipe methods public # CraftingManager - make the add recipe methods public
public yk.a(Lwm;[Ljava/lang/Object;)Lyn; #MD:CraftingManager/func_92103_a public zz.a(Lxy;[Ljava/lang/Object;)Laac; #MD:CraftingManager/func_92103_a
public yk.b(Lwm;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b public zz.b(Lxy;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b
# WeightedRandomItem # WeightedRandomItem
public lo.a #FD:WeightedRandomItem/field_76292_a #probability public mf.a #FD:WeightedRandomItem/field_76292_a #probability
# ItemStack # ItemStack
#public+f tv.c #FD:ItemStack/field_77993_c #itemId #public+f tv.c #FD:ItemStack/field_77993_c #itemId
# StatBase # StatBase
public ka.a #FD:StatBase/field_75978_a #statName public kq.a #FD:StatBase/field_75978_a #statName
# NetLoginHandler # NetLoginHandler
public jf.a(Ljf;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection' public ju.a(Lju;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection'
public jf.g #FD:NetLoginHandler/field_72543_h #userName public ju.g #FD:NetLoginHandler/field_72543_h #userName
# EntityPlayerMP getNextWindowId # EntityPlayerMP getNextWindowId
public jc.ct()V #MD:EntityPlayerMP/func_71117_bO public jr.bJ()V #MD:EntityPlayerMP/func_71117_bO
public jc.cu #FD:EntityPlayerMP/field_71139_cq public jr.bX #FD:EntityPlayerMP/field_71139_cq
# EntityAITaskEntry # EntityAITaskEntry
public oo #CL:EntityAITaskEntry public pq #CL:EntityAITaskEntry
# EntityAITasks # EntityAITasks
public on.a #FD:EntityAITasks/field_75782_a #taskList public pp.a #FD:EntityAITasks/field_75782_a #taskList
# BlockChest # 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 # EntityLiving
public ng.aU #FD:EntityLiving/field_70736_aM #carryoverDamage #public ng.aU #FD:EntityLiving/field_70736_aM #carryoverDamage # -- MISSING MAPPING
public ng.bo #FD:EntityLiving/field_70714_bg #tasks public oc.c #FD:EntityLiving/field_70714_bg #tasks
public ng.bG #FD:EntityLiving/field_70703_bu #isJumping #public ng.bG #FD:EntityLiving/field_70703_bu #isJumping # -- MISSING MAPPING
# EntityAIOcelotSit # EntityAIOcelotSit
protected pa.a(Laab;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock protected qc.a(Labq;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock
protected pa.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable protected qc.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable
# CallableMinecraftVersion - sanity check the MC version # CallableMinecraftVersion - sanity check the MC version
public c #CL:CallableMinecraftVersion public c #CL:CallableMinecraftVersion
public c.<init>(Lb;)V #MD:CallableMinecraftVersion/<init>(Lnet/minecraft/src/CrashReport;) #constructor public c.<init>(Lb;)V #MD:CallableMinecraftVersion/<init>(Lnet/minecraft/src/CrashReport;) #constructor
# EntityAnimal # EntityAnimal
public qh.d #FD:EntityAnimal/field_70881_d #inLove public rl.bp #FD:EntityAnimal/field_70881_d #inLove
# WorldType # WorldType
public aal.<init>(ILjava/lang/String;)V #MD:WorldType/<init>(ILjava/lang/String;) public aca.<init>(ILjava/lang/String;)V #MD:WorldType/<init>(ILjava/lang/String;)
public aal.<init>(ILjava/lang/String;I)V #MD:WorldType/<init>(ILjava/lang/String;I) public aca.<init>(ILjava/lang/String;I)V #MD:WorldType/<init>(ILjava/lang/String;I)
# ComponentVillage # ComponentVillage
public ahp #CL:ComponentVillage public aje #CL:ComponentVillage
# EntityVillager - minmax lists # EntityVillager - minmax lists
public sm.a(Lzr;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy public tv.a(Labg;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 tv.b(Labg;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell
public sm.bP #FD:EntityVillager/field_70958_bB public tv.bB #FD:EntityVillager/field_70958_bB
public sm.bQ #FD:EntityVillager/field_70960_bC public tv.bC #FD:EntityVillager/field_70960_bC
# GuiButtonMerchant # 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

View file

@ -22,6 +22,9 @@
"children" : ["sources"], "children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2" "url" : "http://repo.maven.apache.org/maven2"
}, },
{
"name": "lzma:lzma:0.0.1"
},
{ {
"name": "com.paulscode:codecjorbis:20101023" "name": "com.paulscode:codecjorbis:20101023"
}, },

View file

@ -1,52 +1,60 @@
--- ../src-base/minecraft/net/minecraft/client/Minecraft.java --- ../src-base/minecraft/net/minecraft/client/Minecraft.java
+++ ../src-work/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; package net.minecraft.client;
import com.google.common.collect.Lists;
+
+import cpw.mods.fml.client.FMLClientHandler; +import cpw.mods.fml.client.FMLClientHandler;
+import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.registry.GameData; +import cpw.mods.fml.common.registry.GameData;
+import cpw.mods.fml.common.registry.ItemData; +import cpw.mods.fml.common.registry.ItemData;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.awt.BorderLayout; import java.awt.image.BufferedImage;
@@ -115,6 +119,8 @@ @@ -129,6 +134,8 @@
import org.lwjgl.opengl.PixelFormat; import org.lwjgl.opengl.PixelFormat;
import org.lwjgl.util.glu.GLU; import org.lwjgl.util.glu.GLU;
+import com.google.common.collect.MapDifference; +import com.google.common.collect.MapDifference;
+ +
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public abstract class Minecraft implements Runnable, IPlayerUsage public class Minecraft implements IPlayerUsage
{ {
@@ -299,6 +305,8 @@ @@ -364,6 +371,8 @@
this.field_71466_p = new FontRenderer(this.field_71474_y, "/font/default.png", this.field_71446_o, false); this.func_71357_I();
this.field_71464_q = new FontRenderer(this.field_71474_y, "/font/alternate.png", this.field_71446_o, false); 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); + FMLClientHandler.instance().beginMinecraftLoading(this);
+ +
if (this.field_71474_y.field_74363_ab != null) if (this.field_71474_y.field_74363_ab != null)
{ {
StringTranslate.func_74808_a().func_74810_a(this.field_71474_y.field_74363_ab, false); this.field_71466_p.func_78264_a(this.field_135017_as.func_135042_a());
@@ -334,6 +342,8 @@ @@ -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); 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); this.field_71452_i = new EffectRenderer(this.field_71441_e, this.field_71446_o);
+ FMLClientHandler.instance().finishMinecraftLoading(); + FMLClientHandler.instance().finishMinecraftLoading();
+ this.func_71361_d("Post startup");
try this.field_71456_v = new GuiIngame(this);
{
this.field_71430_V = new ThreadDownloadResources(this.field_71412_D, this); @@ -414,6 +424,7 @@
@@ -362,6 +372,8 @@
{ {
this.func_71352_k(); this.func_71352_k();
} }
+
+ FMLClientHandler.instance().onInitializationComplete(); + FMLClientHandler.instance().onInitializationComplete();
} }
private void func_71357_I() throws LWJGLException public void func_110436_a()
@@ -723,9 +735,11 @@ @@ -725,6 +736,7 @@
{
this.func_71405_e();
}
+
}
private void func_71411_J()
@@ -793,9 +805,11 @@
if (!this.field_71454_w) if (!this.field_71454_w)
{ {
@ -58,7 +66,7 @@
} }
GL11.glFlush(); GL11.glFlush();
@@ -1255,10 +1269,14 @@ @@ -1317,10 +1331,14 @@
public void func_71407_l() public void func_71407_l()
{ {
@ -73,7 +81,7 @@
this.field_71424_I.func_76320_a("stats"); this.field_71424_I.func_76320_a("stats");
this.field_71413_E.func_77449_e(); this.field_71413_E.func_77449_e();
@@ -1716,6 +1734,8 @@ @@ -1771,6 +1789,8 @@
this.field_71453_ak.func_74428_b(); this.field_71453_ak.func_74428_b();
} }
@ -82,7 +90,7 @@
this.field_71424_I.func_76319_b(); this.field_71424_I.func_76319_b();
this.field_71423_H = func_71386_F(); 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); this.field_71413_E.func_77450_a(StatList.field_75936_f, 1);
@ -108,5 +116,5 @@
+ public void continueWorldLoading() + public void continueWorldLoading()
+ { + {
this.field_71455_al = true; 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"));

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiCreateWorld.java --- ../src-base/minecraft/net/minecraft/client/gui/GuiCreateWorld.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiCreateWorld.java +++ ../src-work/minecraft/net/minecraft/client/gui/GuiCreateWorld.java
@@ -214,6 +214,8 @@ @@ -212,6 +212,8 @@
} }
} }

View file

@ -1,7 +1,7 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiErrorScreen.java --- ../src-base/minecraft/net/minecraft/client/gui/GuiErrorScreen.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiErrorScreen.java +++ ../src-work/minecraft/net/minecraft/client/gui/GuiErrorScreen.java
@@ -22,6 +22,8 @@ @@ -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(){} + public GuiErrorScreen(){}

View file

@ -7,53 +7,59 @@
+import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.awt.image.BufferedImage; import java.io.BufferedReader;
@@ -24,6 +26,9 @@ @@ -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.opengl.GL11;
import org.lwjgl.util.glu.GLU; import org.lwjgl.util.glu.Project;
+
+import com.google.common.base.Strings; +import com.google.common.base.Strings;
+import com.google.common.collect.Lists; +import com.google.common.collect.Lists;
+
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public class GuiMainMenu extends GuiScreen public class GuiMainMenu extends GuiScreen
{ @@ -52,6 +58,8 @@
@@ -48,6 +53,8 @@ private ResourceLocation field_110351_G;
private int field_92020_v; private GuiButton field_130023_H;
private int field_92019_w;
+ private GuiButton fmlModButton = null; + private GuiButton fmlModButton = null;
+ +
public GuiMainMenu() public GuiMainMenu()
{ {
BufferedReader bufferedreader = null; BufferedReader bufferedreader = null;
@@ -165,6 +172,9 @@ @@ -203,13 +211,22 @@
private void func_130022_h()
{ {
this.func_73969_a(i, 24, stringtranslate); this.field_130023_H.field_73748_h = true;
}
+
+ 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_)
{
- 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.
+ fmlModButton.field_73747_a = 98; + fmlModButton.field_73747_a = 98;
+ fmlModButton.field_73746_c = this.field_73880_f / 2 + 2; + 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_) private void func_73969_a(int p_73969_1_, int p_73969_2_)
@@ -263,6 +280,11 @@ {
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) if (p_73875_1_.field_73741_f == 4)
{ {
this.field_73882_e.func_71400_g(); this.field_73882_e.func_71400_g();
@ -65,7 +71,7 @@
} }
if (p_73875_1_.field_73741_f == 11) if (p_73875_1_.field_73741_f == 11)
@@ -501,7 +523,16 @@ @@ -492,7 +514,16 @@
s = s + " Demo"; s = s + " Demo";
} }

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java --- ../src-base/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java
+++ ../src-work/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; return p_98096_0_.field_73882_e;
} }

View file

@ -7,8 +7,8 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader; import java.io.BufferedReader;
@@ -191,11 +192,14 @@ @@ -201,11 +202,14 @@
private GuiScreen field_98183_l = null; private GuiScreen field_98183_l;
Random field_72557_e = new Random(); Random field_72557_e = new Random();
+ private static byte connectionCompatibilityLevel; + 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 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_; this.field_98183_l = p_i11012_4_;
Socket socket = new Socket(InetAddress.getByName(p_i11012_2_), p_i11012_3_); 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); 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 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_72563_h = p_i3104_1_;
this.field_72555_g = new MemoryConnection(p_i3104_1_.func_98033_al(), this); 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); + FMLNetworkHandler.onClientConnectionToIntegratedServer(this, p_i3104_2_, this.field_72555_g);
} }
public void func_72547_c() public void func_72547_c()
@@ -281,6 +287,7 @@ @@ -292,6 +298,7 @@
public void func_72513_a(Packet252SharedKey p_72513_1_) public void func_72513_a(Packet252SharedKey p_72513_1_)
{ {
@ -46,7 +46,7 @@
this.func_72552_c(new Packet205ClientCommand(0)); 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_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_72556_d = p_72455_1_.field_73562_h;
this.field_72563_h.field_71442_b.func_78746_a(p_72455_1_.field_73557_d); 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(); 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_74429_a(p_72546_1_);
this.field_72555_g.func_74423_d(); 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_) public void func_72481_a(Packet3Chat p_72481_1_)
{ {
+ p_72481_1_ = FMLNetworkHandler.handleChatMessage(this, 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_) public void func_72494_a(Packet131MapData p_72494_1_)
{ {
@ -82,7 +82,7 @@
if (p_72494_1_.field_73438_a == Item.field_77744_bd.field_77779_bT) 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); 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_) public void func_72501_a(Packet250CustomPayload p_72501_1_)
{ {
@ -91,10 +91,10 @@
+ +
+ public void handleVanilla250Packet(Packet250CustomPayload p_72501_1_) + 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"); DataInputStream datainputstream = new DataInputStream(new ByteArrayInputStream(p_72501_1_.field_73629_c));
@@ -1606,4 +1626,20 @@ @@ -1670,4 +1690,20 @@
{ {
return this.field_72555_g; return this.field_72555_g;
} }

View file

@ -1,14 +1,14 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/RenderBlocks.java --- ../src-base/minecraft/net/minecraft/client/renderer/RenderBlocks.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/RenderBlocks.java +++ ../src-work/minecraft/net/minecraft/client/renderer/RenderBlocks.java
@@ -34,6 +34,7 @@ @@ -35,6 +35,7 @@
import net.minecraft.block.BlockWall;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.texture.TextureMap;
+import net.minecraft.src.FMLRenderAccessLibrary; +import net.minecraft.src.FMLRenderAccessLibrary;
import net.minecraft.util.Direction; import net.minecraft.util.Direction;
import net.minecraft.util.Icon; import net.minecraft.util.Icon;
import net.minecraft.util.MathHelper; 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_); 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_); 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); this.func_96447_a((BlockHopper)p_78600_1_, 0, 0, 0, 0, true);
GL11.glTranslatef(0.5F, 0.5F, 0.5F); GL11.glTranslatef(0.5F, 0.5F, 0.5F);
} }
@ -72,7 +72,7 @@
} }
else else
{ {
@@ -7676,7 +7725,25 @@ @@ -7694,7 +7743,25 @@
public static boolean func_78597_b(int p_78597_0_) public static boolean func_78597_b(int p_78597_0_)
{ {

View file

@ -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);
}
}

View file

@ -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.
}
}
}

View file

@ -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.
}
}
}

View file

@ -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);
}

View file

@ -7,7 +7,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader; import java.io.BufferedReader;
@@ -691,6 +692,7 @@ @@ -705,6 +706,7 @@
public void func_74303_b() public void func_74303_b()
{ {

View file

@ -1,10 +1,17 @@
--- ../src-base/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java --- ../src-base/minecraft/net/minecraft/crash/CallableSuspiciousClasses.java
+++ ../src-work/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() public Object call()
{ {
- try
- {
- return this.func_85085_a(); - return this.func_85085_a();
- }
- catch (Exception e)
- {
- return null;
- }
+ return "FML is installed"; + return "FML is installed";
} }
} }

View file

@ -10,7 +10,7 @@
import net.minecraft.entity.ai.EntityMinecartMobSpawner; import net.minecraft.entity.ai.EntityMinecartMobSpawner;
import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.boss.EntityWither; import net.minecraft.entity.boss.EntityWither;
@@ -125,9 +128,10 @@ @@ -126,9 +129,10 @@
p_75615_0_.func_82580_o("Type"); p_75615_0_.func_82580_o("Type");
} }
@ -22,7 +22,7 @@
if (oclass != null) if (oclass != null)
{ {
@@ -141,7 +145,17 @@ @@ -142,7 +146,17 @@
if (entity != null) if (entity != null)
{ {

View file

@ -9,7 +9,7 @@
import net.minecraft.crash.CrashReport; import net.minecraft.crash.CrashReport;
import net.minecraft.crash.CrashReportCategory; import net.minecraft.crash.CrashReportCategory;
import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.boss.EntityDragon;
@@ -53,6 +55,11 @@ @@ -51,6 +53,11 @@
public void func_72786_a(Entity p_72786_1_) public void func_72786_a(Entity p_72786_1_)
{ {

View file

@ -1,15 +1,15 @@
--- ../src-base/minecraft/net/minecraft/entity/EntityTrackerEntry.java --- ../src-base/minecraft/net/minecraft/entity/EntityTrackerEntry.java
+++ ../src-work/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.Iterator;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
+ +
+import cpw.mods.fml.common.network.FMLNetworkHandler; +import cpw.mods.fml.common.network.FMLNetworkHandler;
import net.minecraft.entity.ai.attributes.ServersideAttributeMap;
import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.item.EntityBoat; import net.minecraft.entity.item.EntityBoat;
import net.minecraft.entity.item.EntityEnderCrystal; @@ -378,6 +380,14 @@
@@ -357,6 +359,14 @@
this.field_73138_k = this.field_73132_a.field_70181_x; this.field_73138_k = this.field_73132_a.field_70181_x;
this.field_73135_l = this.field_73132_a.field_70179_y; this.field_73135_l = this.field_73132_a.field_70179_y;
@ -24,7 +24,7 @@
if (this.field_73143_t && !(packet instanceof Packet24MobSpawn)) 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)); 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) 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"); this.field_73132_a.field_70170_p.func_98180_V().func_98236_b("Fetching addPacket for removed entity");

View file

@ -9,4 +9,4 @@
-@SideOnly(Side.CLIENT) -@SideOnly(Side.CLIENT)
public interface IBossDisplayData public interface IBossDisplayData
{ {
int func_70667_aM(); float func_70667_aM();

View file

@ -9,7 +9,7 @@
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
@@ -279,6 +281,8 @@ @@ -277,6 +279,8 @@
p_70100_1_.func_71029_a(AchievementList.field_76027_z); p_70100_1_.func_71029_a(AchievementList.field_76027_z);
} }

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/entity/monster/EntitySlime.java --- ../src-base/minecraft/net/minecraft/entity/monster/EntitySlime.java
+++ ../src-work/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)); 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));

View file

@ -7,16 +7,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.util.Collections; import java.util.Collections;
@@ -242,7 +243,7 @@ @@ -420,6 +421,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 @@
MerchantRecipeList merchantrecipelist; MerchantRecipeList merchantrecipelist;
merchantrecipelist = new MerchantRecipeList(); merchantrecipelist = new MerchantRecipeList();
@ -24,12 +15,12 @@
int j; int j;
label50: label50:
@@ -638,7 +640,7 @@ @@ -624,7 +626,7 @@
public EntityLivingData func_110161_a(EntityLivingData p_110161_1_)
public void func_82163_bD()
{ {
p_110161_1_ = super.func_110161_a(p_110161_1_);
- this.func_70938_b(this.field_70170_p.field_73012_v.nextInt(5)); - this.func_70938_b(this.field_70170_p.field_73012_v.nextInt(5));
+ VillagerRegistry.applyRandomTrade(this, field_70170_p.field_73012_v); + VillagerRegistry.applyRandomTrade(this, field_70170_p.field_73012_v);
return p_110161_1_;
} }
public void func_82187_q()

View file

@ -8,7 +8,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.util.Collection; import java.util.Collection;
@@ -182,6 +184,7 @@ @@ -183,6 +185,7 @@
public void func_70071_h_() public void func_70071_h_()
{ {
@ -16,7 +16,7 @@
if (this.field_71074_e != null) if (this.field_71074_e != null)
{ {
ItemStack itemstack = this.field_71071_by.func_70448_g(); 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); this.field_71100_bB.func_75118_a(this);
} }
@ -24,9 +24,9 @@
} }
public int func_82145_z() 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) + public void openGui(Object mod, int modGuiId, World world, int x, int y, int z)

View file

@ -1,13 +1,15 @@
--- ../src-base/minecraft/net/minecraft/item/Item.java --- ../src-base/minecraft/net/minecraft/item/Item.java
+++ ../src-work/minecraft/net/minecraft/item/Item.java +++ ../src-work/minecraft/net/minecraft/item/Item.java
@@ -1,5 +1,6 @@ @@ -2,6 +2,8 @@
package net.minecraft.item;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
+
+import cpw.mods.fml.common.registry.GameData; +import cpw.mods.fml.common.registry.GameData;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.util.List; import java.util.List;
@@ -215,6 +216,8 @@ @@ -224,6 +226,8 @@
} }
field_77698_e[256 + p_i3659_1_] = this; field_77698_e[256 + p_i3659_1_] = this;

View file

@ -16,14 +16,13 @@
Handler[] ahandler = this.field_98242_a.getHandlers(); Handler[] ahandler = this.field_98242_a.getHandlers();
int i = ahandler.length; 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 consolehandler = new ConsoleHandler();
- consolehandler.setFormatter(logformatter); - consolehandler.setFormatter(logformatter);
- this.field_98242_a.addHandler(consolehandler); - this.field_98242_a.addHandler(consolehandler);
-
try try
{ {
FileHandler filehandler = new FileHandler(this.field_98240_b, true);

View file

@ -9,7 +9,7 @@
import net.minecraft.crash.CrashReport; import net.minecraft.crash.CrashReport;
import net.minecraft.crash.CrashReportCategory; import net.minecraft.crash.CrashReportCategory;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
@@ -33,6 +35,7 @@ @@ -34,6 +36,7 @@
import net.minecraft.network.packet.Packet108EnchantItem; import net.minecraft.network.packet.Packet108EnchantItem;
import net.minecraft.network.packet.Packet10Flying; import net.minecraft.network.packet.Packet10Flying;
import net.minecraft.network.packet.Packet130UpdateSign; import net.minecraft.network.packet.Packet130UpdateSign;
@ -17,15 +17,15 @@
import net.minecraft.network.packet.Packet13PlayerLookMove; import net.minecraft.network.packet.Packet13PlayerLookMove;
import net.minecraft.network.packet.Packet14BlockDig; import net.minecraft.network.packet.Packet14BlockDig;
import net.minecraft.network.packet.Packet15Place; import net.minecraft.network.packet.Packet15Place;
@@ -616,6 +619,7 @@ @@ -634,6 +637,7 @@
public void func_72481_a(Packet3Chat p_72481_1_) public void func_72481_a(Packet3Chat p_72481_1_)
{ {
+ p_72481_1_ = FMLNetworkHandler.handleChatMessage(this, p_72481_1_); + p_72481_1_ = FMLNetworkHandler.handleChatMessage(this, p_72481_1_);
if (this.field_72574_e.func_71126_v() == 2) if (this.field_72574_e.func_71126_v() == 2)
{ {
this.func_72567_b(new Packet3Chat("Cannot send chat message.")); this.func_72567_b(new Packet3Chat(ChatMessageComponent.func_111077_e("chat.cannotSend").func_111059_a(EnumChatFormatting.RED)));
@@ -981,6 +985,11 @@ @@ -1009,6 +1013,11 @@
} }
public void func_72501_a(Packet250CustomPayload p_72501_1_) public void func_72501_a(Packet250CustomPayload p_72501_1_)
@ -37,7 +37,7 @@
{ {
DataInputStream datainputstream; DataInputStream datainputstream;
ItemStack itemstack; ItemStack itemstack;
@@ -1145,4 +1154,18 @@ @@ -1173,4 +1182,18 @@
} }
} }
} }

View file

@ -8,9 +8,9 @@
+ +
+import cpw.mods.fml.common.FMLLog; +import cpw.mods.fml.common.FMLLog;
import net.minecraft.crash.CrashReport; import net.minecraft.crash.CrashReport;
import net.minecraft.crash.CrashReportCategory;
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
import net.minecraft.util.ReportedException; @@ -51,6 +54,7 @@
@@ -48,6 +51,7 @@
throw new ReportedException(crashreport); throw new ReportedException(crashreport);
} }

View file

@ -7,7 +7,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedOutputStream; import java.io.BufferedOutputStream;
@@ -394,6 +395,7 @@ @@ -386,6 +387,7 @@
if (this.field_74472_n && this.field_74473_o.isEmpty()) 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); this.field_74485_r.func_72515_a(this.field_74481_v, this.field_74480_w);

View file

@ -7,9 +7,9 @@
public abstract class NetHandler 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); + public abstract void handleVanilla250Packet(Packet250CustomPayload payload);

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/network/packet/Packet.java --- ../src-base/minecraft/net/minecraft/network/packet/Packet.java
+++ ../src-work/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(107, true, true, Packet107CreativeSetSlot.class);
func_73285_a(108, false, true, Packet108EnchantItem.class); func_73285_a(108, false, true, Packet108EnchantItem.class);
func_73285_a(130, true, true, Packet130UpdateSign.class); func_73285_a(130, true, true, Packet130UpdateSign.class);

View file

@ -1,8 +1,8 @@
--- ../src-base/minecraft/net/minecraft/network/packet/Packet1Login.java --- ../src-base/minecraft/net/minecraft/network/packet/Packet1Login.java
+++ ../src-work/minecraft/net/minecraft/network/packet/Packet1Login.java +++ ../src-work/minecraft/net/minecraft/network/packet/Packet1Login.java
@@ -3,6 +3,8 @@ @@ -3,6 +3,8 @@
import java.io.DataInputStream; import java.io.DataInput;
import java.io.DataOutputStream; import java.io.DataOutput;
import java.io.IOException; import java.io.IOException;
+ +
+import cpw.mods.fml.common.network.FMLNetworkHandler; +import cpw.mods.fml.common.network.FMLNetworkHandler;
@ -30,7 +30,7 @@
+ this.vanillaCompatible = false; + 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 @@ @@ -46,7 +54,16 @@
this.field_73560_c = (b0 & 8) == 8; this.field_73560_c = (b0 & 8) == 8;
int i = b0 & -9; int i = b0 & -9;

View file

@ -7,19 +7,19 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.awt.GraphicsEnvironment; import java.awt.GraphicsEnvironment;
@@ -352,7 +353,11 @@ @@ -366,7 +367,11 @@
{ {
if (this.func_71197_b()) if (this.func_71197_b())
{ {
+ FMLCommonHandler.instance().handleServerStarted(); + FMLCommonHandler.instance().handleServerStarted();
+ +
long i = System.currentTimeMillis(); long i = func_130071_aq();
+ +
+ FMLCommonHandler.instance().onWorldLoadTick(field_71305_c); + FMLCommonHandler.instance().onWorldLoadTick(field_71305_c);
for (long j = 0L; this.field_71317_u; this.field_71296_Q = true) for (long j = 0L; this.field_71317_u; this.field_71296_Q = true)
{ {
@@ -391,6 +396,7 @@ @@ -405,6 +410,7 @@
Thread.sleep(1L); Thread.sleep(1L);
} }
@ -27,7 +27,7 @@
} }
else else
{ {
@@ -399,6 +405,10 @@ @@ -413,6 +419,10 @@
} }
catch (Throwable throwable) catch (Throwable throwable)
{ {
@ -38,7 +38,7 @@
throwable.printStackTrace(); throwable.printStackTrace();
this.func_98033_al().func_98234_c("Encountered an unexpected exception " + throwable.getClass().getSimpleName(), throwable); this.func_98033_al().func_98234_c("Encountered an unexpected exception " + throwable.getClass().getSimpleName(), throwable);
CrashReport crashreport = null; CrashReport crashreport = null;
@@ -429,6 +439,10 @@ @@ -443,6 +453,10 @@
{ {
try try
{ {
@ -49,7 +49,7 @@
this.func_71260_j(); this.func_71260_j();
this.field_71316_v = true; this.field_71316_v = true;
} }
@@ -438,6 +452,8 @@ @@ -452,6 +466,8 @@
} }
finally finally
{ {
@ -58,7 +58,7 @@
this.func_71240_o(); this.func_71240_o();
} }
} }
@@ -454,8 +470,10 @@ @@ -468,8 +484,10 @@
public void func_71217_p() public void func_71217_p()
{ {
@ -69,7 +69,7 @@
++this.field_71315_w; ++this.field_71315_w;
if (this.field_71295_T) 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();
this.field_71304_b.func_76319_b(); this.field_71304_b.func_76319_b();
@ -77,7 +77,7 @@
} }
public void func_71190_q() public void func_71190_q()
@@ -528,6 +547,7 @@ @@ -542,6 +561,7 @@
} }
this.field_71304_b.func_76320_a("tick"); this.field_71304_b.func_76320_a("tick");
@ -85,7 +85,7 @@
CrashReport crashreport; CrashReport crashreport;
try try
@@ -552,6 +572,7 @@ @@ -566,6 +586,7 @@
throw new ReportedException(crashreport); throw new ReportedException(crashreport);
} }
@ -93,7 +93,7 @@
this.field_71304_b.func_76319_b(); this.field_71304_b.func_76319_b();
this.field_71304_b.func_76320_a("tracker"); this.field_71304_b.func_76320_a("tracker");
worldserver.func_73039_n().func_72788_a(); worldserver.func_73039_n().func_72788_a();
@@ -679,7 +700,7 @@ @@ -693,7 +714,7 @@
public String getServerModName() public String getServerModName()
{ {

View file

@ -7,7 +7,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.File; import java.io.File;
@@ -111,9 +112,10 @@ @@ -113,9 +114,10 @@
this.func_71245_h(true); this.func_71245_h(true);
this.field_98130_m.func_98233_a("Generating keypair"); this.field_98130_m.func_98233_a("Generating keypair");
this.func_71253_a(CryptManager.func_75891_b()); this.func_71253_a(CryptManager.func_75891_b());

View file

@ -7,12 +7,3 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.IOException; 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()

View file

@ -8,7 +8,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.File; import java.io.File;
@@ -119,6 +121,8 @@ @@ -120,6 +122,8 @@
p_72355_2_.func_71116_b(); p_72355_2_.func_71116_b();
@ -17,7 +17,7 @@
if (nbttagcompound != null && nbttagcompound.func_74764_b("Riding")) if (nbttagcompound != null && nbttagcompound.func_74764_b("Riding"))
{ {
Entity entity = EntityList.func_75615_a(nbttagcompound.func_74775_l("Riding"), worldserver); 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_) public void func_72367_e(EntityPlayerMP p_72367_1_)
{ {
@ -25,15 +25,15 @@
this.func_72391_b(p_72367_1_); this.func_72391_b(p_72367_1_);
WorldServer worldserver = p_72367_1_.func_71121_q(); WorldServer worldserver = p_72367_1_.func_71121_q();
@@ -390,6 +395,7 @@ @@ -391,6 +396,7 @@
this.field_72404_b.add(entityplayermp1); this.field_72404_b.add(entityplayermp1);
entityplayermp1.func_71116_b(); entityplayermp1.func_71116_b();
entityplayermp1.func_70606_j(entityplayermp1.func_70630_aN()); entityplayermp1.func_70606_j(entityplayermp1.func_110143_aJ());
+ GameRegistry.onPlayerRespawn(entityplayermp1); + GameRegistry.onPlayerRespawn(entityplayermp1);
return entityplayermp1; return entityplayermp1;
} }
@@ -415,6 +421,8 @@ @@ -416,6 +422,8 @@
PotionEffect potioneffect = (PotionEffect)iterator.next(); PotionEffect potioneffect = (PotionEffect)iterator.next();
p_72356_1_.field_71135_a.func_72567_b(new Packet41EntityEffect(p_72356_1_.field_70157_k, potioneffect)); p_72356_1_.field_71135_a.func_72567_b(new Packet41EntityEffect(p_72356_1_.field_70157_k, potioneffect));
} }

View file

@ -7,7 +7,7 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block; import net.minecraft.block.Block;
@@ -311,7 +312,15 @@ @@ -316,7 +317,15 @@
} }
} }

View file

@ -7,11 +7,11 @@
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.InputStream; import java.io.InputStream;
@@ -36,6 +37,7 @@ @@ -35,6 +36,7 @@
import org.bouncycastle.crypto.params.ParametersWithIV; import org.bouncycastle.crypto.params.ParametersWithIV;
import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.jce.provider.BouncyCastleProvider;
+@ReobfuscationMarker +@ReobfuscationMarker
public class CryptManager public class CryptManager
{ {
public static final Charset field_75898_a = Charset.forName("ISO_8859_1"); @SideOnly(Side.CLIENT)

View file

@ -1,25 +1,20 @@
--- ../src-base/minecraft/net/minecraft/util/StringTranslate.java --- ../src-base/minecraft/net/minecraft/util/StringTranslate.java
+++ ../src-work/minecraft/net/minecraft/util/StringTranslate.java +++ ../src-work/minecraft/net/minecraft/util/StringTranslate.java
@@ -1,5 +1,6 @@ @@ -3,6 +3,8 @@
package net.minecraft.util; 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.common.registry.LanguageRegistry;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader; import java.io.IOException;
@@ -92,6 +93,7 @@ @@ -45,7 +47,7 @@
} }
} }
} }
+ LanguageRegistry.instance().loadLanguageTable(p_74812_1_, p_74812_2_); - catch (IOException ioexception)
} + catch (Exception ioexception)
public synchronized void func_74810_a(String p_74810_1_, boolean p_74810_2_)
@@ -169,7 +171,6 @@
}
}
- @SideOnly(Side.CLIENT)
public String func_74811_c()
{ {
return this.field_74813_d; ;
}

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/world/World.java --- ../src-base/minecraft/net/minecraft/world/World.java
+++ ../src-work/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"); this.field_72984_F.func_76318_c("pendingTileEntities");
@@ -3640,7 +3641,7 @@ @@ -3645,7 +3646,7 @@
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public double func_72919_O() public double func_72919_O()
{ {

View file

@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/world/WorldProvider.java --- ../src-base/minecraft/net/minecraft/world/WorldProvider.java
+++ ../src-work/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() protected void func_76572_b()
{ {
@ -23,7 +23,7 @@
} }
public boolean func_76566_a(int p_76566_1_, int p_76566_2_) 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() public int func_76557_i()
{ {

View file

@ -11,7 +11,7 @@
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList; import net.minecraft.entity.EntityList;
import net.minecraft.nbt.CompressedStreamTools; import net.minecraft.nbt.CompressedStreamTools;
@@ -252,10 +256,19 @@ @@ -253,10 +257,19 @@
Entity entity = (Entity)iterator.next(); Entity entity = (Entity)iterator.next();
nbttagcompound1 = new NBTTagCompound(); nbttagcompound1 = new NBTTagCompound();
@ -35,7 +35,7 @@
} }
} }
} }
@@ -268,8 +281,17 @@ @@ -269,8 +282,17 @@
{ {
TileEntity tileentity = (TileEntity)iterator.next(); TileEntity tileentity = (TileEntity)iterator.next();
nbttagcompound1 = new NBTTagCompound(); nbttagcompound1 = new NBTTagCompound();

View file

@ -10,9 +10,9 @@
import net.minecraft.crash.CrashReportCategory; import net.minecraft.crash.CrashReportCategory;
+import net.minecraft.nbt.NBTBase; +import net.minecraft.nbt.NBTBase;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.EnumGameType; import net.minecraft.world.EnumGameType;
import net.minecraft.world.GameRules; @@ -36,6 +39,7 @@
@@ -35,6 +38,7 @@
private boolean field_76110_t; private boolean field_76110_t;
private boolean field_76109_u; private boolean field_76109_u;
private GameRules field_82577_x; private GameRules field_82577_x;
@ -20,7 +20,7 @@
protected WorldInfo() protected WorldInfo()
{ {
@@ -534,4 +538,24 @@ @@ -535,4 +539,24 @@
{ {
return p_85131_0_.field_76110_t; return p_85131_0_.field_76110_t;
} }