Compare commits

...
85 Commits
Author SHA1 Message Date
Christian f0bba74a47 Update for minecraft 1.5.2 2013-04-27 01:24:06 -04:00
Christian cf9b5b445b Don't leave scala running in interactive mode. 2013-04-23 22:56:18 -04:00
LexManos aa200923f0 Fix patch derp. 2013-04-23 19:47:43 -07:00
Christian ddadf93ca1 Fix when an old scalac is present on the system to not fail the build 2013-04-23 22:43:51 -04:00
Christian 781c681216 Some fixups for scala compilation in MCP. Scala should now be compilable and reobfuscatable with srgnames in MCP. 2013-04-23 07:40:49 -04:00
Christian cfda7fc738 Fix URL for MCP 2013-04-23 07:22:25 -04:00
Christian 58ba24add2 Fix possible NPEs in GameData 2013-04-22 21:14:34 -04:00
Christian dcf069ca52 Attempt to reduce lines on the screen for id mismatch. Hopefully prevents game crashes. 2013-04-22 21:14:34 -04:00
cpw c3fda11d10 Merge pull request #225 from MarcinSc/master
Suggested fix for issue 221
2013-04-21 11:32:51 -07:00
Marcin Sciesinski 11ac46daeb Fixing the GameRegistry. Now it is possible to register a Block with a BlockItem using following code:
MyBlock myBlock = new MyBlock();
GameRegistry.registerBlock(myBlock, MyBlockItem.class, "myBlock");
where MyBlockItem class has one constructor with signature:
public MyBlockItem(int id, Block block)
2013-04-21 19:01:18 +01:00
Christian 2dcabe0123 Add a to string to fmlmodcontainer: should mean less derpy cyclic dependency data 2013-04-21 13:58:18 -04:00
cpw 42f1d87955 Merge pull request #224 from Glought/master
Fix for  Issue #223
2013-04-21 08:13:54 -07:00
Glought 334a76de75 Update FMLDeobfuscatingRemapper.java
Fixes a "Type mismath:cannot convert from element type Object to FieldNode" error at line 176.
2013-04-21 05:09:19 -07:00
Christian 677a6e578e Fix scala supporting SidedProxy. It should work now. 2013-04-20 23:31:22 -04:00
Christian a3b5eaacfd Fix a small modloader compatibility derp: closes #222 2013-04-20 22:55:56 -04:00
Christian b3d4ea05ec Fix possible NPE in findItemStack, closes #218 2013-04-17 07:55:33 -04:00
Christian 8f35adca7a Use more expressive language when a version specifier is a simple unbounded above condition 2013-04-16 13:46:55 -04:00
Christian 394f424185 Fix to output versions in crash logs 2013-04-16 13:46:55 -04:00
cpw ada52078c7 Merge pull request #216 from agaricusb/add-srgname
Add srgname to registerTileEntityWithAlternatives
2013-04-15 15:50:47 -07:00
Christian 0daf1a6df4 Merge branch 'agaricusb-fix-deobf-field' 2013-04-15 17:31:09 -04:00
Christian edffd04ed2 Add in some caching of the read field descriptions for efficiency 2013-04-15 17:30:35 -04:00
Agaricus 7aea09f4ca Add type info to properly deobfuscate overloaded fields. Fixes #210. 2013-04-14 16:54:11 -07:00
Agaricus 5673c1dd29 Add srgname to registerTileEntityWithAlternatives 2013-04-14 14:11:37 -07:00
Christian 1774e2bf30 MCP names update 2013-04-10 12:28:20 -04:00
LexManos 4836b3272a Re-worked the Texture patches, optifine helper function, and re-added support for dynamically rotating the texture for mod authors who do things horribly wrong. 2013-04-09 20:06:41 -07:00
Christian a31607ae7d Fix compilation derp, and clean up rotation helper. 2013-04-09 21:20:31 -04:00
Christian 57ad221cc6 And add the patches *sigh* 2013-04-09 20:26:10 -04:00
Christian 00c7883088 Very significant improvement in performance by using glSubImage to upload data. Inspired by frequent complaints about performance of hires
texture packs. They probably still need a beefy system but should work. Hopefully I can figure out why the subImage GL side copy isn't working
properly for an even more significant speed boost. But this gets things started.
2013-04-09 20:15:14 -04:00
LexManos 1de89525cc Fixed issue with instalation when java/javac commands had quotes. 2013-04-05 10:26:33 -07:00
LexManos 704a70902f Sanitize input to isRemappedClass to use '/' as a package seperator like the srg files. 2013-04-04 23:30:10 -07:00
LexManos 570faeb790 Added the ability to save transformed classes to disc for debugging. 2013-04-04 10:32:48 -07:00
Christian 8b8837c9ff Fix NPE when branding isn't present 2013-03-31 10:01:46 -04:00
Christian eff464cf0e And the core patches for that 2013-03-30 12:13:53 -04:00
Christian 26ccb9106e Change snooper/crash report brand handling. fmlbranding now loads another string! 2013-03-30 12:12:54 -04:00
Christian 0d84487412 Fix up derp in access transformer 2013-03-27 19:23:10 -04:00
Christian 2bc6a0666f Attempt to make any "default package" class public. This might fix problems with certain modloader mods that ship changes to vanilla classes. 2013-03-27 16:54:26 -04:00
Christian 82bc9f1b35 Add some information, and a log message letting you know it worked 2013-03-23 16:01:20 -04:00
Christian d73ac867df Add a mechanism to dump the registry- useful for mod developers. 2013-03-23 15:39:34 -04:00
Christian ede93d438f Validate supplied stack size 2013-03-23 15:10:13 -04:00
Christian 5e1949eb0e Clone the itemstack, and allow for passing in a stacksize 2013-03-23 14:58:25 -04:00
Christian 2d368c4c2e Itemstacks in the GameRegistry (manual registration by mods) 2013-03-23 14:48:57 -04:00
Christian d9db27275e Fix mismatch screen a bit. Should render more correctly now and
at least not be blank in a lot of circumstances..
2013-03-22 10:20:53 -04:00
cpw 591a25722b Merge pull request #208 from jrtc27/patch-1
Fixed FMLRelaunchLog's Newline Handling
2013-03-22 05:44:38 -07:00
James Clarke d1ff1967b5 Fixed FMLRelaunchLog's Newline Handling
System.out.println("\n") causes currentMessage to start with a newline character, which means idx will always be 0 from then on. Therefore if idx is 0 messages must still be logged, otherwise no more messages sent to stdout will be logged and they will just accumulate in currentMessage.
2013-03-22 09:19:39 +00:00
Christian 012a755bb9 Fix up patch properly. Also, fix md5s for the jars. 2013-03-22 01:48:21 -04:00
cpw 748eece456 Merge pull request #206 from mDiyo/patch-1
Fix missing block world rendering
2013-03-21 07:41:35 -07:00
mDiyo f709ce7579 Fix missing block world rendering 2013-03-21 07:10:55 -07:00
LexManos 33efc35b60 Merge MC 1.5.1 branch to master. 2013-03-21 04:10:30 -07:00
LexManos 687d3c059d Merge pull request #204 from agaricusb/fix-mcpdir
Fix install.py --mcp-dir option
2013-03-20 10:24:27 -07:00
LexManos aaf02ea2ac Updated for new PR client jar. 2013-03-20 08:59:25 -07:00
Agaricus 625da6492d Fix install.py --mcp-dir option. Fixes #204. 2013-03-19 21:42:04 -07:00
LexManos a573faf92d Someone derped up this function bad, revert name. 2013-03-19 17:54:06 -07:00
LexManos 9565529baf Updated to latest MCP and Minecraft 1.5.1 Pre-release. 2013-03-19 15:48:42 -07:00
LexManos 3c346247e1 Fix NPE with CoreMods who do not have the new MCVersion annotation. 2013-03-19 13:48:18 -07:00
Christian ce949e6099 Support simple mc version test in coremods, only effective through
jar loading.
Also, log some more data about the environment.
2013-03-17 23:40:12 -04:00
Christian 5e3af8ac0e Use the relaunch log, for class circularity safety. 2013-03-17 23:19:39 -04:00
Christian 5cc90f060c Fix the logger to treat newlines better, hopefully. Closes #199 2013-03-17 23:15:18 -04:00
LexManos 577b19c1cf Fix potential NPE in class loading and add extra debug information. 2013-03-17 11:54:26 -07:00
cpw 8905237306 Merge pull request #200 from bspkrs/patch-2
Added comments to note FML-only methods
2013-03-14 18:37:08 -07:00
Christian c5d5f4e516 Fix AllPublic access transformer not affecting methods. Should fix modloader
compatibility
2013-03-14 15:53:19 -04:00
bspkrs 24022ab6ba Added comments to note FML-only methods 2013-03-14 01:29:36 -03:00
LexManos 6370c242f0 OS X's python 2.6.1 has a bug in zipfile.extractall that makes it unzip directories as regular files. So switch to extract 2013-03-13 13:11:43 -07:00
LexManos 4762d4d8ef Allocate more ram {typically 256 is defailt} to fermflower, should fix decomplication issues on OSX 2013-03-13 13:11:10 -07:00
Christian 8f2dbf7046 Fix up stupid derp in IMC code: actually reset the IMC list after
each delivery. Fixes a bunch of mods. Sorry everyone.
2013-03-13 15:09:50 -04:00
Christian 23ea835fa7 Pass obfuscation status to coremods 2013-03-12 21:06:37 -04:00
Christian d88db6c0cf Fix up deep tree deobfuscation 2013-03-12 20:33:19 -04:00
LexManos c6dab815f4 Missed joined.exc, must fix scripts. 2013-03-12 15:12:49 -07:00
LexManos 7b722bfcd6 Update MCP for latest PR silent update. 2013-03-12 15:02:58 -07:00
LexManos a90504315e Readjust size of mods button when Minecraft Realms button is enabled. 2013-03-11 16:20:56 -07:00
Christian 3765ceb02d Update MCP, fixes the "broken texture packs" problem. 2013-03-11 16:31:26 -04:00
Christian dab22f5b74 Fix "0 mods" display when installed in forge. 2013-03-10 12:12:22 -04:00
Christian b301e8e4c1 Change type of connection queue to a concurrent linked queue. Much more efficient, hopefully. Closes #189 2013-03-10 01:25:36 -05:00
Christian f647929993 Merge branch 'master' of github.com:Uristqwerty/FML 2013-03-10 01:22:24 -05:00
Christian 984291cee9 Fix supertype parsing to handle null superclass (Hi Object!). Closes #160 2013-03-10 01:20:08 -05:00
Christian ac16845fc4 Fix demo mode crash. Closes #187 2013-03-10 01:15:16 -05:00
Christian 29edd242cd Fix coremods without a manifest crashing the game. Closes #181 2013-03-10 01:05:31 -05:00
Christian ca2d8bd834 Fix reflection helper: it needs to unmap the classname to find the field maps. 2013-03-09 17:58:18 -05:00
Christian 2a779ec328 Try a different way of remapping the fields. Should work because it's userspace, not relauncher space 2013-03-09 17:36:31 -05:00
Christian 591e65fa1a Revert "Use the reobfuscation maps in the reflection helper for field lookups: should help some reflection cases with the deobf."
This reverts commit 485db6be2e.
2013-03-09 17:32:11 -05:00
Christian 485db6be2e Use the reobfuscation maps in the reflection helper for field lookups: should help some reflection cases with the deobf. 2013-03-09 17:19:48 -05:00
Christian 25f3fcad46 Fix up some relauncher stuff: the vanilla applet works now, as do other applets. Deobf data is resolveable for them too. 2013-03-09 15:25:58 -05:00
LexManos 6bf7c9878c Fixed srg name of minecraftDir for runtime deobf. 2013-03-09 11:52:40 -08:00
Christian 95d0ff18cd Fix runtime deobfuscation for remapped inner classes 2013-03-09 14:06:39 -05:00
LexManos 1642bad402 Fix Multi-part entity children ID issue, mobs with custom spawning must deal with child ids themselves. 2013-03-09 10:07:41 -08:00
Uristqwerty 179c504746 Simplify logic in tick start/end
Change the EnumSet equivalent of "A &= ~ new(~B)" to "A &= B".
This eliminates the need for one temporary object in a frequently called loop, and reduces the number of methods that need to be invoked.
2012-12-14 04:14:17 -05:00
67 changed files with 16423 additions and 14758 deletions

No files matched your search

@@ -0,0 +1,30 @@
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
}
}
@@ -130,6 +130,7 @@ public class FMLClientHandler implements IFMLSidedHandler
*/
public void beginMinecraftLoading(Minecraft minecraft)
{
client = minecraft;
if (minecraft.func_71355_q())
{
FMLLog.severe("DEMO MODE DETECTED, FML will not work. Finishing now.");
@@ -138,8 +139,6 @@ public class FMLClientHandler implements IFMLSidedHandler
}
loading = true;
client = minecraft;
ObfuscationReflectionHelper.detectObfuscation(World.class);
// TextureFXManager.instance().setClient(client);
FMLCommonHandler.instance().beginLoading(this);
new ModLoaderClientHelper(client);
@@ -341,6 +340,7 @@ public class FMLClientHandler implements IFMLSidedHandler
else
{
entity = (Entity)(cls.getConstructor(World.class).newInstance(wc));
int offset = packet.entityId - entity.field_70157_k;
entity.field_70157_k = packet.entityId;
entity.func_70012_b(packet.scaledX, packet.scaledY, packet.scaledZ, packet.scaledYaw, packet.scaledPitch);
if (entity instanceof EntityLiving)
@@ -348,6 +348,14 @@ public class FMLClientHandler implements IFMLSidedHandler
((EntityLiving)entity).field_70759_as = packet.scaledHeadYaw;
}
Entity parts[] = entity.func_70021_al();
if (parts != null)
{
for (int j = 0; j < parts.length; j++)
{
parts[j].field_70157_k += offset;
}
}
}
entity.field_70118_ct = packet.rawX;
@@ -360,18 +368,6 @@ public class FMLClientHandler implements IFMLSidedHandler
((IThrowableEntity)entity).setThrower(thrower);
}
Entity parts[] = entity.func_70021_al();
if (parts != null)
{
int i = packet.entityId - entity.field_70157_k;
for (int j = 0; j < parts.length; j++)
{
parts[j].field_70157_k += i;
}
}
if (packet.metadata != null)
{
entity.func_70096_w().func_75687_a((List)packet.metadata);
@@ -532,4 +528,15 @@ public class FMLClientHandler implements IFMLSidedHandler
// Show error screen
warnIDMismatch(s, false);
}
/**
* Is this GUI type open?
*
* @param gui The type of GUI to test for
* @return if a GUI of this type is open
*/
public boolean isGUIOpen(Class<? extends GuiScreen> gui)
{
return client.field_71462_r != null && client.field_71462_r.getClass().equals(gui);
}
}
@@ -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
*/
@@ -37,13 +37,13 @@ public class GuiIdMismatchScreen extends GuiYesNo {
field_73942_a = this;
for (Entry<Integer, ItemData> entry : idDifferences.entriesOnlyOnLeft().entrySet())
{
missingIds.add(String.format("ID %d (ModID: %s, type %s) is missing", entry.getValue().getItemId(), entry.getValue().getModId(), entry.getValue().getItemType()));
missingIds.add(String.format("ID %d from Mod %s is missing", entry.getValue().getItemId(), entry.getValue().getModId(), entry.getValue().getItemType()));
}
for (Entry<Integer, ValueDifference<ItemData>> entry : idDifferences.entriesDiffering().entrySet())
{
ItemData world = entry.getValue().leftValue();
ItemData game = entry.getValue().rightValue();
mismatchedIds.add(String.format("ID %d is mismatched. World: (ModID: %s, type %s, ordinal %d) Game (ModID: %s, type %s, ordinal %d)", world.getItemId(), world.getModId(), world.getItemType(), world.getOrdinal(), game.getModId(), game.getItemType(), game.getOrdinal()));
mismatchedIds.add(String.format("ID %d is mismatched between world and game", world.getItemId()));
}
this.allowContinue = allowContinue;
}
@@ -62,33 +62,40 @@ public class GuiIdMismatchScreen extends GuiYesNo {
{
field_73887_h.remove(0);
}
int offset = Math.max(85 - missingIds.size() * 10 + mismatchedIds.size() * 30, 10);
this.func_73732_a(this.field_73886_k, "Forge Mod Loader has found world ID mismatches", this.field_73880_f / 2, offset, 0xFFFFFF);
offset += 10;
int offset = Math.max(85 - (missingIds.size() + mismatchedIds.size()) * 10, 30);
this.func_73732_a(this.field_73886_k, "Forge Mod Loader has found ID mismatches", this.field_73880_f / 2, 10, 0xFFFFFF);
this.func_73732_a(this.field_73886_k, "Complete details are in the log file", this.field_73880_f / 2, 20, 0xFFFFFF);
int maxLines = 20;
for (String s: missingIds) {
this.func_73732_a(this.field_73886_k, s, this.field_73880_f / 2, offset, 0xEEEEEE);
offset += 10;
maxLines --;
if (maxLines < 0) break;
if (offset >= this.field_73881_g - 30) break;
}
for (String s: mismatchedIds) {
this.func_73732_a(this.field_73886_k, s, this.field_73880_f / 2, offset, 0xEEEEEE);
offset += 10;
if (maxLines > 0 && offset < this.field_73881_g - 30)
{
for (String s: mismatchedIds) {
this.func_73732_a(this.field_73886_k, s, this.field_73880_f / 2, offset, 0xEEEEEE);
offset += 10;
maxLines --;
if (maxLines < 0) break;
if (offset >= this.field_73881_g - 30) break;
}
}
offset += 10;
if (allowContinue)
{
this.func_73732_a(this.field_73886_k, "Do you wish to continue loading?", this.field_73880_f / 2, offset, 0xFFFFFF);
offset += 10;
this.func_73732_a(this.field_73886_k, "Do you wish to continue loading?", this.field_73880_f / 2, this.field_73881_g - 30, 0xFFFFFF);
}
else
{
this.func_73732_a(this.field_73886_k, "You cannot connect to this server", this.field_73880_f / 2, offset, 0xFFFFFF);
offset += 10;
this.func_73732_a(this.field_73886_k, "You cannot connect to this server", this.field_73880_f / 2, this.field_73881_g - 30, 0xFFFFFF);
}
// super.super. Grrr
for (int var4 = 0; var4 < this.field_73887_h.size(); ++var4)
{
GuiButton var5 = (GuiButton)this.field_73887_h.get(var4);
var5.field_73743_d = Math.min(offset + 10, this.field_73881_g - 20);
var5.field_73743_d = this.field_73881_g - 20;
if (!allowContinue)
{
var5.field_73746_c = this.field_73880_f / 2 - 75;
+11 -1
View File
@@ -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.GuiErrorScreen;
import cpw.mods.fml.common.MissingModsException;
import cpw.mods.fml.common.versioning.ArtifactVersion;
import cpw.mods.fml.common.versioning.DefaultArtifactVersion;
public class GuiModsMissing extends GuiErrorScreen
{
@@ -43,6 +44,15 @@ public class GuiModsMissing extends GuiErrorScreen
for (ArtifactVersion v : modsMissing.missingMods)
{
offset+=10;
if (v instanceof DefaultArtifactVersion)
{
DefaultArtifactVersion dav = (DefaultArtifactVersion)v;
if (dav.getRange() != null && dav.getRange().isUnboundedAbove())
{
this.func_73732_a(this.field_73886_k, String.format("%s : minimum version required is %s", v.getLabel(), dav.getRange().getLowerBoundString()), this.field_73880_f / 2, offset, 0xEEEEEE);
continue;
}
}
this.func_73732_a(this.field_73886_k, String.format("%s : %s", v.getLabel(), v.getRangeString()), this.field_73880_f / 2, offset, 0xEEEEEE);
}
offset+=20;
@@ -0,0 +1,29 @@
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();
}
}
@@ -20,8 +20,13 @@ import java.util.Map;
import javax.imageio.ImageIO;
import org.lwjgl.opengl.ContextCapabilities;
import org.lwjgl.opengl.GLContext;
import com.google.common.collect.Maps;
import cpw.mods.fml.common.FMLLog;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.RenderEngine;
@@ -34,6 +39,8 @@ public class TextureFXManager
private Map<Integer,TextureHolder> texturesById = Maps.newHashMap();
private Map<String, TextureHolder> texturesByName = Maps.newHashMap();
private TextureHelper helper;
void setClient(Minecraft client)
{
this.client = client;
@@ -102,4 +109,35 @@ public class TextureFXManager
{
return texturesByName.containsKey(texture) ? new Dimension(texturesByName.get(texture).x, texturesByName.get(texture).y) : new Dimension(1,1);
}
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");
// 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;
}
}
@@ -0,0 +1,70 @@
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);
}
}
+12 -1
View File
@@ -330,6 +330,8 @@ public abstract class BaseMod implements cpw.mods.fml.common.modloader.BaseModPr
}
/**
* Called client side to receive a custom payload for this mod
*
* NOTE: this method is not provided in Risugami's implementation of BaseMod!
*
* @param packet
*/
@@ -356,7 +358,9 @@ public abstract class BaseMod implements cpw.mods.fml.common.modloader.BaseModPr
return false;
}
/*
* NOTE: this method is not provided in Risugami's implementation of BaseMod!
*/
@Override
public void serverConnect(NetHandler handler) {
@@ -368,6 +372,9 @@ public abstract class BaseMod implements cpw.mods.fml.common.modloader.BaseModPr
}
/*
* NOTE: this method is not provided in Risugami's implementation of BaseMod!
*/
@Override
public void serverDisconnect() {
@@ -411,6 +418,8 @@ public abstract class BaseMod implements cpw.mods.fml.common.modloader.BaseModPr
}
/**
* Called when a new client logs in.
*
* NOTE: this method is not provided in Risugami's implementation of BaseMod!
*
* @param player
*/
@@ -421,6 +430,8 @@ public abstract class BaseMod implements cpw.mods.fml.common.modloader.BaseModPr
/**
* Called when a client logs out of the server.
*
* NOTE: this method is not provided in Risugami's implementation of BaseMod!
*/
@Override
public void onClientLogout(INetworkManager mgr)
@@ -20,6 +20,7 @@ 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;
@@ -70,4 +71,9 @@ 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);
}
}
+1 -3
View File
@@ -541,7 +541,7 @@ public class ModLoader
@SideOnly(CLIENT)
public static boolean isGUIOpen(Class<? extends GuiScreen> gui)
{
return FMLClientHandler.instance().getClient().field_71462_r != null && FMLClientHandler.instance().getClient().field_71462_r.equals(gui);
return FMLClientHandler.instance().isGUIOpen(gui);
}
/**
@@ -810,14 +810,12 @@ public class ModLoader
@Deprecated
public static void serverChat(String text)
{
//TODO
}
@Deprecated
@SideOnly(CLIENT)
public static void serverLogin(NetClientHandler handler, Packet1Login loginPacket)
{
//TODO
}
public static void serverSendPacket(NetServerHandler handler, Packet packet)
+117 -15
View File
@@ -18,7 +18,70 @@
class Commands(object):
"""Contains the commands and initialisation for a full mcp run"""
@@ -796,6 +800,8 @@
@@ -194,6 +198,7 @@
sys.exit(1)
self.checkjava()
+ self.checkscala()
self.readcommands(verify, no_patch=no_patch)
def checkcommand(self, name, command, java=False, single_line=False, check_return=True, error=True):
@@ -230,6 +235,8 @@
self.checkcommand('java', '%s -version' % self.cmdjava)
self.checkcommand('javac', '%s -version' % self.cmdjavac)
self.checkcommand('javac runtime', '%s -J-version' % self.cmdjavac)
+ if self.cmdscalac: self.checkcommand('scalac', '%s -version' % self.cmdscalac)
+ if self.cmdscalac: self.checkcommand('scalac runtime', '%s -J-version' % self.cmdscalac)
self.checkcommand('retroguard', '%s --version' % self.retroguard, java=True)
self.exceptor = os.path.normpath(self.config.get('COMMANDS', 'Exceptor'))
@@ -350,6 +357,8 @@
self.cmdfernflower = self.config.get('COMMANDS', 'CmdFernflower', raw=1) % (self.cmdjava, self.fernflower)
self.cmdexceptor = self.config.get('COMMANDS', 'CmdExceptor', raw=1) % (self.cmdjava, self.exceptor)
self.cmdrecomp = self.config.get('COMMANDS', 'CmdRecomp', raw=1) % self.cmdjavac
+ if self.cmdscalac: self.cmdrecompscalac = self.config.get('COMMANDS', 'CmdRecompScalac', raw=1) % self.cmdscalac
+ else: self.cmdrecompscalac = None
self.cmdstartsrv = self.config.get('COMMANDS', 'CmdStartSrv', raw=1) % self.cmdjava
self.cmdstartclt = self.config.get('COMMANDS', 'CmdStartClt', raw=1) % self.cmdjava
@@ -753,6 +762,36 @@
self.cmdjavac = '"%s"' % os.path.join(results[0], 'javac')
self.cmdjava = '"%s"' % os.path.join(results[0], 'java')
+ def checkscala(self):
+ results = []
+ if not results:
+ try:
+ # TODO: Verify at least version 2.10
+ self.runcmd('scalac -version', quiet=True)
+ results.append('')
+ except (CalledProcessError, OSError):
+ pass
+ if not results: # Stupid windows...
+ try:
+ # TODO: Verify at least version 2.10
+ self.runcmd('scalac.bat -version', quiet=True)
+ results.append('')
+ except (CalledProcessError, OSError):
+ pass
+ try:
+ self.runcmd('scala -target:jvm-1.6 -version', quiet=True)
+ results.append('')
+ except (CalledProcessError, OSError):
+ self.logger.info('"scala" does not support jvm-1.6 target, it is out of date. Ignoring')
+ results = []
+ self.cmdscalac = None
+ else:
+ if not results:
+ self.logger.warning('"scalac" is not found on the PATH. Scala files will not be recompiled')
+ self.cmdscalac = None
+ else:
+ self.cmdscalac = '"%s"' % os.path.join(results[0], 'scalac')
+
def checkjars(self, side):
jarlk = {CLIENT: self.jarclient, SERVER: self.jarserver}
md5jarlk = {CLIENT: self.md5jarclt, SERVER: self.md5jarsrv}
@@ -798,6 +837,8 @@
binlk = {CLIENT: self.binclient, SERVER: self.binserver}
testlk = {CLIENT: self.testclient, SERVER: self.testserver}
@@ -27,17 +90,56 @@
if not os.path.exists(os.path.join(binlk[side], os.path.normpath(testlk[side] + '.class'))):
return False
return True
@@ -1037,6 +1043,9 @@
@@ -1038,6 +1079,9 @@
pathbinlk = {CLIENT: self.binclient, SERVER: self.binserver}
pathsrclk = {CLIENT: self.srcclient, SERVER: self.srcserver}
pathlog = {CLIENT: self.clientrecomplog, SERVER: self.serverrecomplog}
+
+ if side == SERVER: #Warn about server because FML recombines it into client
+ self.logger.info('Server side recompiling might be skipped, this is normal, do not complain to FML/Forge team about server side.')
+
if not os.path.exists(pathbinlk[side]):
os.makedirs(pathbinlk[side])
@@ -1070,7 +1079,7 @@
@@ -1051,6 +1095,29 @@
all_files = True
append_pattern = False
pkglist = filterdirs(pathsrclk[side], '*.java', append_pattern=append_pattern, all_files=all_files)
+ if self.cmdrecompscalac: # Compile scala before java as scala scans java files, but not vice-versa
+ pkglistscala = pkglist[:]
+ pkglistscala.extend(filterdirs(pathsrclk[side], '*.scala', append_pattern=append_pattern, all_files=all_files))
+ dirs = ' '.join(pkglistscala)
+ classpath = os.pathsep.join(cplk[side])
+ forkcmd = self.cmdrecompscalac.format(classpath=classpath, sourcepath=pathsrclk[side], outpath=pathbinlk[side], pkgs=dirs)
+ try:
+ self.runcmd(forkcmd, log_file=pathlog[side])
+ except CalledProcessError as ex:
+ self.logger.error('')
+ self.logger.error('== ERRORS FOUND in SCALA CODE ==')
+ self.logger.error('')
+ for line in ex.output.splitlines():
+ if line.strip():
+ if line.find("jvm-1.6") != -1:
+ self.logger.error(' === Your scala version is out of date, update to at least 2.10.0 ===')
+ if line[0] != '[' and line[0:4] != 'Note':
+ self.logger.error(line)
+ if '^' in line:
+ self.logger.error('')
+ self.logger.error('================================')
+ self.logger.error('')
+ raise
dirs = ' '.join(pkglist)
classpath = os.pathsep.join(cplk[side])
forkcmd = self.cmdrecomp.format(classpath=classpath, sourcepath=pathsrclk[side], outpath=pathbinlk[side],
@@ -1059,7 +1126,7 @@
self.runcmd(forkcmd, log_file=pathlog[side])
except CalledProcessError as ex:
self.logger.error('')
- self.logger.error('== ERRORS FOUND ==')
+ self.logger.error('== ERRORS FOUND in JAVA CODE ==')
self.logger.error('')
for line in ex.output.splitlines():
if line.strip():
@@ -1072,7 +1139,7 @@
raise
def startserver(self):
@@ -46,7 +148,7 @@
classpath = [os.path.join('..', p) for p in classpath]
classpath = os.pathsep.join(classpath)
os.chdir(self.dirjars)
@@ -1078,7 +1087,7 @@
@@ -1080,7 +1147,7 @@
self.runmc(forkcmd)
def startclient(self):
@@ -55,7 +157,7 @@
classpath = [os.path.join('..', p) for p in classpath]
classpath = os.pathsep.join(classpath)
natives = os.path.join('..', self.dirnatives)
@@ -1205,20 +1214,20 @@
@@ -1207,20 +1274,20 @@
with open(self.csvmethods, 'rb') as fh:
methodsreader = csv.DictReader(fh)
for row in methodsreader:
@@ -79,7 +181,7 @@
names['params'][row['param']] = row['name']
regexps = {
@@ -1352,13 +1361,13 @@
@@ -1354,13 +1421,13 @@
methods = {}
for row in methodsreader:
#HINT: Only include methods that have a non-empty description
@@ -95,7 +197,7 @@
fields[row['searge']] = row['desc'].replace('*/', '* /')
regexps = {
@@ -1435,7 +1444,7 @@
@@ -1437,7 +1504,7 @@
self.runcmd(forkcmd)
return True
@@ -104,7 +206,7 @@
if not reobf:
md5lk = {CLIENT: self.md5client, SERVER: self.md5server}
else:
@@ -1450,6 +1459,9 @@
@@ -1452,6 +1519,9 @@
class_path = ''
else:
class_path += '/'
@@ -114,7 +216,7 @@
for class_file in fnmatch.filter(filelist, '*.class'):
class_name = class_path + os.path.splitext(class_file)[0]
bin_file = os.path.normpath(os.path.join(path, class_file))
@@ -1546,6 +1558,8 @@
@@ -1548,6 +1618,8 @@
if not os.path.exists(outpathlk[side]):
os.makedirs(outpathlk[side])
@@ -123,7 +225,7 @@
# HINT: We extract the modified class files
with closing(zipfile.ZipFile(jarlk[side])) as zipjar:
for in_class in trgclasses:
@@ -1559,6 +1573,23 @@
@@ -1561,6 +1633,23 @@
out_class = out_class.replace(self.nullpkg, '')
if out_class[0] == '/':
out_class = out_class[1:]
@@ -147,7 +249,7 @@
try:
zipjar.extract(out_class, outpathlk[side])
self.logger.info('> Outputted %s to %s as %s', in_class.ljust(35), outpathlk[side], out_class)
@@ -1605,6 +1636,9 @@
@@ -1607,6 +1696,9 @@
sys.exit(1)
for entry in newfiles:
@@ -157,7 +259,7 @@
if entry[3] == 'U':
self.logger.info('Retrieving file from server : %s', entry[0])
cur_file = os.path.normpath(entry[0])
@@ -1625,6 +1659,9 @@
@@ -1627,6 +1719,9 @@
md5reoblk = {CLIENT: self.md5reobfclient, SERVER: self.md5reobfserver}
outpathlk = {CLIENT: self.srcmodclient, SERVER: self.srcmodserver}
src = {CLIENT: self.srcclient, SERVER: self.srcserver}
@@ -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
*/
@@ -38,6 +38,7 @@ import net.minecraft.world.World;
import net.minecraft.world.storage.SaveHandler;
import net.minecraft.world.storage.WorldInfo;
import com.google.common.base.Joiner;
import com.google.common.base.Objects;
import com.google.common.base.Strings;
import com.google.common.collect.ImmutableList;
@@ -115,7 +116,7 @@ public class FMLCommonHandler
for (IScheduledTickHandler ticker : scheduledTicks)
{
EnumSet<TickType> ticksToRun = EnumSet.copyOf(Objects.firstNonNull(ticker.ticks(), EnumSet.noneOf(TickType.class)));
ticksToRun.removeAll(EnumSet.complementOf(ticks));
ticksToRun.retainAll(ticks);
if (!ticksToRun.isEmpty())
{
ticker.tickStart(ticksToRun, data);
@@ -134,7 +135,7 @@ public class FMLCommonHandler
for (IScheduledTickHandler ticker : scheduledTicks)
{
EnumSet<TickType> ticksToRun = EnumSet.copyOf(Objects.firstNonNull(ticker.ticks(), EnumSet.noneOf(TickType.class)));
ticksToRun.removeAll(EnumSet.complementOf(ticks));
ticksToRun.retainAll(ticks);
if (!ticksToRun.isEmpty())
{
ticker.tickEnd(ticksToRun, data);
@@ -244,12 +245,9 @@ public class FMLCommonHandler
{
brd.addAll(sidedDelegate.getAdditionalBrandingInformation());
}
try {
Properties props=new Properties();
props.load(getClass().getClassLoader().getResourceAsStream("fmlbranding.properties"));
brd.add(props.getProperty("fmlbranding"));
} catch (Exception ex) {
// Ignore - no branding file found
if (Loader.instance().getFMLBrandingProperties().containsKey("fmlbranding"))
{
brd.add(Loader.instance().getFMLBrandingProperties().get("fmlbranding"));
}
int tModCount = Loader.instance().getModList().size();
int aModCount = Loader.instance().getActiveModList().size();
@@ -469,4 +467,20 @@ public class FMLCommonHandler
{
Loader.instance().serverStopped();
}
public String getModName()
{
List<String> modNames = Lists.newArrayListWithExpectedSize(3);
modNames.add("fml");
if (!noForge)
{
modNames.add("forge");
}
if (Loader.instance().getFMLBrandingProperties().containsKey("snooperbranding"))
{
modNames.add(Loader.instance().getFMLBrandingProperties().get("snooperbranding"));
}
return Joiner.on(',').join(modNames);
}
}
@@ -108,34 +108,13 @@ public class FMLModContainer implements ModContainer
private String modLanguage;
private ILanguageAdapter languageAdapter;
public static interface ILanguageAdapter {
public Object getNewInstance(FMLModContainer container, Class<?> objectClass, ClassLoader classLoader) throws Exception;
}
public static class ScalaAdapter implements ILanguageAdapter {
@Override
public Object getNewInstance(FMLModContainer container, Class<?> scalaObjectClass, ClassLoader classLoader) throws Exception
{
System.out.println("Scala class : "+ scalaObjectClass);
Class<?> sObjectClass = Class.forName(scalaObjectClass.getName()+"$",true,classLoader);
return sObjectClass.getField("MODULE$").get(null);
}
}
public static class JavaAdapter implements ILanguageAdapter {
@Override
public Object getNewInstance(FMLModContainer container, Class<?> objectClass, ClassLoader classLoader) throws Exception
{
return objectClass.newInstance();
}
}
public FMLModContainer(String className, File modSource, Map<String,Object> modDescriptor)
{
this.className = className;
this.source = modSource;
this.descriptor = modDescriptor;
this.modLanguage = (String) modDescriptor.get("modLanguage");
this.languageAdapter = "scala".equals(modLanguage) ? new ScalaAdapter() : new JavaAdapter();
this.languageAdapter = "scala".equals(modLanguage) ? new ILanguageAdapter.ScalaAdapter() : new ILanguageAdapter.JavaAdapter();
}
private ILanguageAdapter getLanguageAdapter()
@@ -489,7 +468,7 @@ public class FMLModContainer implements ModContainer
{
eventBus.post(new FMLFingerprintViolationEvent(source.isDirectory(), source, ImmutableSet.copyOf(this.sourceFingerprints), expectedFingerprint));
}
ProxyInjector.inject(this, event.getASMHarvestedData(), FMLCommonHandler.instance().getSide());
ProxyInjector.inject(this, event.getASMHarvestedData(), FMLCommonHandler.instance().getSide(), getLanguageAdapter());
processFieldAnnotations(event.getASMHarvestedData());
}
catch (Throwable e)
@@ -560,4 +539,10 @@ public class FMLModContainer implements ModContainer
{
return certificate;
}
@Override
public String toString()
{
return "FMLMod:"+getModId()+"{"+getVersion()+"}";
}
}
@@ -0,0 +1,52 @@
package cpw.mods.fml.common;
import java.lang.reflect.Field;
public interface ILanguageAdapter {
public Object getNewInstance(FMLModContainer container, Class<?> objectClass, ClassLoader classLoader) throws Exception;
public boolean supportsStatics();
public void setProxy(Field target, Class<?> proxyTarget, Object proxy) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException;
public static class ScalaAdapter implements ILanguageAdapter {
@Override
public Object getNewInstance(FMLModContainer container, Class<?> scalaObjectClass, ClassLoader classLoader) throws Exception
{
Class<?> sObjectClass = Class.forName(scalaObjectClass.getName()+"$",true,classLoader);
return sObjectClass.getField("MODULE$").get(null);
}
@Override
public boolean supportsStatics()
{
return false;
}
@Override
public void setProxy(Field target, Class<?> proxyTarget, Object proxy) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException
{
Field field = proxyTarget.getField("INSTANCE");
Object scalaObject = field.get(null);
target.set(scalaObject, proxy);
}
}
public static class JavaAdapter implements ILanguageAdapter {
@Override
public Object getNewInstance(FMLModContainer container, Class<?> objectClass, ClassLoader classLoader) throws Exception
{
return objectClass.newInstance();
}
@Override
public boolean supportsStatics()
{
return true;
}
@Override
public void setProxy(Field target, Class<?> proxyTarget, Object proxy) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException,
SecurityException
{
target.set(null, proxy);
}
}
}
@@ -216,7 +216,7 @@ public class LoadController
{
for (ModContainer mc : loader.getModList())
{
ret.append("\n\t").append(mc.getModId()).append(" [").append(mc.getName()).append("] (").append(mc.getSource().getName()).append(") ");
ret.append("\n\t").append(mc.getModId()).append("{").append(mc.getVersion()).append("} [").append(mc.getName()).append("] (").append(mc.getSource().getName()).append(") ");
Joiner.on("->"). appendTo(ret, modStates.get(mc.getModId()));
}
}
+34
View File
@@ -13,6 +13,7 @@
package cpw.mods.fml.common;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.net.MalformedURLException;
@@ -26,15 +27,20 @@ import java.util.concurrent.Callable;
import java.util.logging.Level;
import net.minecraft.crash.CallableMinecraftVersion;
import net.minecraft.item.ItemStack;
import com.google.common.base.CharMatcher;
import com.google.common.base.Charsets;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.common.base.Joiner.MapJoiner;
import com.google.common.base.Splitter;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableListMultimap;
import com.google.common.collect.ImmutableListMultimap.Builder;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMultiset;
import com.google.common.collect.Iterables;
@@ -47,7 +53,9 @@ import com.google.common.collect.Multiset.Entry;
import com.google.common.collect.Multisets;
import com.google.common.collect.Ordering;
import com.google.common.collect.Sets.SetView;
import com.google.common.collect.Table;
import com.google.common.collect.TreeMultimap;
import com.google.common.io.Files;
import cpw.mods.fml.common.LoaderState.ModState;
import cpw.mods.fml.common.discovery.ModDiscoverer;
@@ -144,6 +152,7 @@ public class Loader
private static File minecraftDir;
private static List<String> injectedContainers;
private File loggingProperties;
private ImmutableMap<String, String> fmlBrandingProperties;
public static Loader instance()
{
@@ -571,6 +580,11 @@ public class Loader
public String getCrashInformation()
{
// Handle being called before we've begun setup
if (modController == null)
{
return "";
}
StringBuilder ret = new StringBuilder();
List<String> branding = FMLCommonHandler.instance().getBrandings();
@@ -681,6 +695,8 @@ public class Loader
modController.distributeStateMessage(LoaderState.POSTINITIALIZATION);
modController.transition(LoaderState.AVAILABLE);
modController.distributeStateMessage(LoaderState.AVAILABLE);
// Dump the custom registry data map, if necessary
GameData.dumpRegistry(minecraftDir);
FMLLog.info("Forge Mod Loader has successfully loaded %d mod%s", mods.size(), mods.size()==1 ? "" : "s");
}
@@ -805,4 +821,22 @@ public class Loader
}
return true;
}
public Map<String,String> getFMLBrandingProperties()
{
if (fmlBrandingProperties == null)
{
Properties loaded = new Properties();
try
{
loaded.load(getClass().getClassLoader().getResourceAsStream("fmlbranding.properties"));
}
catch (Exception e)
{
// File not found - ignore
}
fmlBrandingProperties = Maps.fromProperties(loaded);
}
return fmlBrandingProperties;
}
}
@@ -15,6 +15,7 @@ package cpw.mods.fml.common;
import java.util.Arrays;
import java.util.logging.Level;
import cpw.mods.fml.common.asm.transformers.deobf.FMLDeobfuscatingRemapper;
import cpw.mods.fml.relauncher.ReflectionHelper;
import cpw.mods.fml.relauncher.ReflectionHelper.UnableToAccessFieldException;
import cpw.mods.fml.relauncher.ReflectionHelper.UnableToFindFieldException;
@@ -27,8 +28,6 @@ import cpw.mods.fml.relauncher.ReflectionHelper.UnableToFindFieldException;
*/
public class ObfuscationReflectionHelper
{
public static boolean obfuscation;
@SuppressWarnings("unchecked")
public static <T, E> T getPrivateValue(Class<? super E> classToAccess, E instance, int fieldIndex)
{
@@ -43,12 +42,23 @@ public class ObfuscationReflectionHelper
}
}
public static String[] remapFieldNames(String className, String... fieldNames)
{
String internalClassName = FMLDeobfuscatingRemapper.INSTANCE.unmap(className.replace('.', '/'));
String[] mappedNames = new String[fieldNames.length];
int i = 0;
for (String fName : fieldNames)
{
mappedNames[i++] = FMLDeobfuscatingRemapper.INSTANCE.mapFieldName(internalClassName, fName, null);
}
return mappedNames;
}
@SuppressWarnings("unchecked")
public static <T, E> T getPrivateValue(Class<? super E> classToAccess, E instance, String... fieldNames)
{
try
{
return ReflectionHelper.getPrivateValue(classToAccess, instance, fieldNames);
return ReflectionHelper.getPrivateValue(classToAccess, instance, remapFieldNames(classToAccess.getName(),fieldNames));
}
catch (UnableToFindFieldException e)
{
@@ -91,7 +101,7 @@ public class ObfuscationReflectionHelper
{
try
{
ReflectionHelper.setPrivateValue(classToAccess, instance, value, fieldNames);
ReflectionHelper.setPrivateValue(classToAccess, instance, value, remapFieldNames(classToAccess.getName(), fieldNames));
}
catch (UnableToFindFieldException e)
{
@@ -104,13 +114,4 @@ public class ObfuscationReflectionHelper
throw e;
}
}
/**
*
*/
public static void detectObfuscation(Class<?> clazz)
{
obfuscation = !clazz.getSimpleName().equals("World");
}
}
@@ -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
*/
@@ -27,7 +27,7 @@ import cpw.mods.fml.relauncher.Side;
*/
public class ProxyInjector
{
public static void inject(ModContainer mod, ASMDataTable data, Side side)
public static void inject(ModContainer mod, ASMDataTable data, Side side, ILanguageAdapter languageAdapter)
{
FMLLog.fine("Attempting to inject @SidedProxy classes into %s", mod.getModId());
Set<ASMData> targets = data.getAnnotationsFor(mod).get(SidedProxy.class.getName());
@@ -49,7 +49,7 @@ public class ProxyInjector
String targetType = side.isClient() ? target.getAnnotation(SidedProxy.class).clientSide() : target.getAnnotation(SidedProxy.class).serverSide();
Object proxy=Class.forName(targetType, true, mcl).newInstance();
if ((target.getModifiers() & Modifier.STATIC) == 0 )
if (languageAdapter.supportsStatics() && (target.getModifiers() & Modifier.STATIC) == 0 )
{
FMLLog.severe("Attempted to load a proxy type %s into %s.%s, but the field is not static", targetType, targ.getClassName(), targ.getObjectName());
throw new LoaderException();
@@ -59,7 +59,7 @@ public class ProxyInjector
FMLLog.severe("Attempted to load a proxy type %s into %s.%s, but the types don't match", targetType, targ.getClassName(), targ.getObjectName());
throw new LoaderException();
}
target.set(null, proxy);
languageAdapter.setProxy(target, proxyTarget, proxy);
}
catch (Exception e)
{
@@ -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
*/
@@ -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
*/
@@ -161,6 +161,10 @@ public class AccessTransformer implements IClassTransformer
if (bytes == null) { return null; }
boolean makeAllPublic = FMLDeobfuscatingRemapper.INSTANCE.isRemappedClass(name);
if (DEBUG)
{
System.out.printf("Considering all methods and fields on %s (%s): %b\n", name, transformedName, makeAllPublic);
}
if (!makeAllPublic && !modifiers.containsKey(name)) { return bytes; }
ClassNode classNode = new ClassNode();
@@ -183,8 +187,12 @@ public class AccessTransformer implements IClassTransformer
m = new Modifier();
m.targetAccess = ACC_PUBLIC;
m.name = "*";
m.desc = "";
m.desc = "<dummy>";
modifiers.put(name,m);
if (DEBUG)
{
System.out.printf("Injected all public modifiers for %s (%s)\n", name, transformedName);
}
}
Collection<Modifier> mods = modifiers.get(name);
@@ -32,12 +32,14 @@ import org.objectweb.asm.commons.Remapper;
import com.google.common.base.CharMatcher;
import com.google.common.base.Charsets;
import com.google.common.base.Splitter;
import com.google.common.base.Strings;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import com.google.common.collect.ImmutableBiMap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Iterables;
import com.google.common.collect.ListMultimap;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
@@ -48,6 +50,8 @@ import com.google.common.io.InputSupplier;
import cpw.mods.fml.common.FMLLog;
import cpw.mods.fml.relauncher.FMLRelaunchLog;
import cpw.mods.fml.relauncher.RelaunchClassLoader;
import org.objectweb.asm.tree.ClassNode;
import org.objectweb.asm.tree.FieldNode;
public class FMLDeobfuscatingRemapper extends Remapper {
public static final FMLDeobfuscatingRemapper INSTANCE = new FMLDeobfuscatingRemapper();
@@ -76,6 +80,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
{
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);
@@ -123,7 +128,8 @@ public class FMLDeobfuscatingRemapper extends Remapper {
public boolean isRemappedClass(String className)
{
return classNameBiMap.containsKey(className) || mcpNameBiMap.containsKey(className);
className = className.replace('.', '/');
return classNameBiMap.containsKey(className) || mcpNameBiMap.containsKey(className) || (!classNameBiMap.isEmpty() && className.indexOf('/') == -1);
}
private void parseField(String[] parts)
@@ -139,7 +145,46 @@ public class FMLDeobfuscatingRemapper extends Remapper {
{
rawFieldMaps.put(cl, Maps.<String,String>newHashMap());
}
rawFieldMaps.get(cl).put(oldName, newName);
rawFieldMaps.get(cl).put(oldName + ":" + getFieldType(cl, oldName), newName);
rawFieldMaps.get(cl).put(oldName + ":null", newName);
}
/*
* Cache the field descriptions for classes so we don't repeatedly reload the same data again and again
*/
private Map<String,Map<String,String>> fieldDescriptions = Maps.newHashMap();
private String getFieldType(String owner, String name)
{
if (fieldDescriptions.containsKey(owner))
{
return fieldDescriptions.get(owner).get(name);
}
synchronized (fieldDescriptions)
{
try
{
byte[] classBytes = classLoader.getClassBytes(owner);
if (classBytes == null)
{
return null;
}
ClassReader cr = new ClassReader(classBytes);
ClassNode classNode = new ClassNode();
cr.accept(classNode, ClassReader.SKIP_CODE | ClassReader.SKIP_DEBUG | ClassReader.SKIP_FRAMES);
Map<String,String> resMap = Maps.newHashMap();
for (FieldNode fieldNode : (List<FieldNode>) classNode.fields) {
resMap.put(fieldNode.name, fieldNode.desc);
}
fieldDescriptions.put(owner, resMap);
return resMap.get(name);
}
catch (IOException e)
{
FMLLog.log(Level.SEVERE,e, "A critical exception occured reading a class file %s", owner);
}
return null;
}
}
private void parseClass(Builder<String, String> builder, String[] parts)
@@ -178,7 +223,7 @@ public class FMLDeobfuscatingRemapper extends Remapper {
return name;
}
Map<String, String> fieldMap = getFieldMap(owner);
return fieldMap!=null && fieldMap.containsKey(name) ? fieldMap.get(name) : name;
return fieldMap!=null && fieldMap.containsKey(name+":"+desc) ? fieldMap.get(name+":"+desc) : name;
}
@Override
@@ -189,18 +234,29 @@ public class FMLDeobfuscatingRemapper extends Remapper {
return typeName;
}
String result = classNameBiMap.containsKey(typeName) ? classNameBiMap.get(typeName) : mcpNameBiMap.containsKey(typeName) ? mcpNameBiMap.get(typeName) : typeName;
int dollarIdx = typeName.indexOf('$');
String realType = dollarIdx > -1 ? typeName.substring(0, dollarIdx) : typeName;
String subType = dollarIdx > -1 ? typeName.substring(dollarIdx+1) : "";
String result = classNameBiMap.containsKey(realType) ? classNameBiMap.get(realType) : mcpNameBiMap.containsKey(realType) ? mcpNameBiMap.get(realType) : realType;
result = dollarIdx > -1 ? result+"$"+subType : result;
// System.out.printf("Mapping %s=>%s\n",typeName,result);
return result;
}
public String unmap(String typeName)
{
if (classNameBiMap == null)
if (classNameBiMap == null || classNameBiMap.isEmpty())
{
return typeName;
}
String result = classNameBiMap.containsValue(typeName) ? classNameBiMap.inverse().get(typeName) : mcpNameBiMap.containsValue(typeName) ? mcpNameBiMap.inverse().get(typeName) : typeName;
int dollarIdx = typeName.indexOf('$');
String realType = dollarIdx > -1 ? typeName.substring(0, dollarIdx) : typeName;
String subType = dollarIdx > -1 ? typeName.substring(dollarIdx+1) : "";
String result = classNameBiMap.containsValue(realType) ? classNameBiMap.inverse().get(realType) : mcpNameBiMap.containsValue(realType) ? mcpNameBiMap.inverse().get(realType) : realType;
result = dollarIdx > -1 ? result+"$"+subType : result;
// System.out.printf("Unmapping %s=>%s\n",typeName,result);
return result;
}
@@ -261,16 +317,24 @@ public class FMLDeobfuscatingRemapper extends Remapper {
}
public void mergeSuperMaps(String name, String superName, String[] interfaces)
{
// System.out.printf("Computing super maps for %s: %s %s\n", name, superName, Arrays.asList(interfaces));
if (classNameBiMap == null || classNameBiMap.isEmpty())
{
return;
}
// Skip Object
if (Strings.isNullOrEmpty(superName))
{
return;
}
List<String> allParents = ImmutableList.<String>builder().add(superName).addAll(Arrays.asList(interfaces)).build();
// generate maps for all parent objects
for (String parentThing : allParents)
{
if (superName != null && classNameBiMap.containsKey(superName) && !methodNameMaps.containsKey(superName))
if (!methodNameMaps.containsKey(parentThing))
{
findAndMergeSuperMaps(superName);
findAndMergeSuperMaps(parentThing);
}
}
Map<String, String> methodMap = Maps.<String,String>newHashMap();
@@ -296,5 +360,6 @@ public class FMLDeobfuscatingRemapper extends Remapper {
}
methodNameMaps.put(name, ImmutableMap.copyOf(methodMap));
fieldNameMaps.put(name, ImmutableMap.copyOf(fieldMap));
// System.out.printf("Maps: %s %s\n", name, methodMap);
}
}
@@ -25,6 +25,7 @@ import org.objectweb.asm.ClassReader;
import org.objectweb.asm.Type;
import com.google.common.base.Objects;
import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import cpw.mods.fml.common.FMLLog;
@@ -64,7 +65,7 @@ public class ASMModParser
{
this.asmType = Type.getObjectType(typeQName);
this.classVersion = classVersion;
this.asmSuperType = Type.getObjectType(superClassQName);
this.asmSuperType = !Strings.isNullOrEmpty(superClassQName) ? Type.getObjectType(superClassQName) : null;
}
public void startClassAnnotation(String annotationName)
@@ -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
*/
@@ -62,6 +62,7 @@ public class FMLInterModComms {
public void applyModContainer(ModContainer activeContainer)
{
this.activeContainer = activeContainer;
this.currentList = null;
FMLLog.finest("Attempting to deliver %d IMC messages to mod %s", modMessages.get(activeContainer.getModId()).size(), activeContainer.getModId());
}
@@ -40,6 +40,7 @@ import com.google.common.eventbus.Subscribe;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.FMLLog;
import cpw.mods.fml.common.ILanguageAdapter;
import cpw.mods.fml.common.LoadController;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.LoaderException;
@@ -496,7 +497,7 @@ public class ModLoaderModContainer implements ModContainer
{
dummyHandler.setBaseMod(mod);
}
ProxyInjector.inject(this, event.getASMHarvestedData(), FMLCommonHandler.instance().getSide());
ProxyInjector.inject(this, event.getASMHarvestedData(), FMLCommonHandler.instance().getSide(), new ILanguageAdapter.JavaAdapter());
}
catch (Exception e)
{
@@ -25,11 +25,17 @@ import java.util.logging.Level;
import net.minecraft.block.Block;
import net.minecraft.block.BlockSand;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import com.google.common.base.Charsets;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.common.base.Throwables;
import com.google.common.base.Joiner.MapJoiner;
import com.google.common.collect.HashBasedTable;
import com.google.common.collect.ImmutableListMultimap;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableTable;
import com.google.common.collect.ImmutableTable.Builder;
@@ -40,6 +46,7 @@ import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.google.common.collect.Table;
import com.google.common.collect.Table.Cell;
import com.google.common.io.Files;
import cpw.mods.fml.common.FMLLog;
import cpw.mods.fml.common.Loader;
@@ -54,6 +61,7 @@ public class GameData {
private static boolean shouldContinue = true;
private static boolean isSaveValid = true;
private static ImmutableTable<String, String, Integer> modObjectTable;
private static Table<String, String, ItemStack> customItemStacks = HashBasedTable.create();
private static Map<String,String> ignoredMods;
private static boolean isModIgnoredForIdValidation(String modId)
@@ -277,7 +285,7 @@ public class GameData {
}
static Item findItem(String modId, String name)
{
if (modObjectTable == null)
if (modObjectTable == null || !modObjectTable.contains(modId, name))
{
return null;
}
@@ -293,10 +301,65 @@ public class GameData {
}
Integer blockId = modObjectTable.get(modId, name);
if (blockId >= Block.field_71973_m.length)
if (blockId == null || blockId >= Block.field_71973_m.length)
{
return null;
}
return Block.field_71973_m[blockId];
}
static ItemStack findItemStack(String modId, String name)
{
ItemStack is = customItemStacks.get(modId, name);
if (is == null)
{
Item i = findItem(modId, name);
if (i != null)
{
is = new ItemStack(i, 0 ,0);
}
}
if (is == null)
{
Block b = findBlock(modId, name);
if (b != null)
{
is = new ItemStack(b, 0, Short.MAX_VALUE);
}
}
return is;
}
static void registerCustomItemStack(String name, ItemStack itemStack)
{
customItemStacks.put(Loader.instance().activeModContainer().getModId(), name, itemStack);
}
public static void dumpRegistry(File minecraftDir)
{
if (customItemStacks == null)
{
return;
}
if (Boolean.valueOf(System.getProperty("fml.dumpRegistry", "false")).booleanValue())
{
ImmutableListMultimap.Builder<String, String> builder = ImmutableListMultimap.builder();
for (String modId : customItemStacks.rowKeySet())
{
builder.putAll(modId, customItemStacks.row(modId).keySet());
}
File f = new File(minecraftDir, "itemStackRegistry.csv");
MapJoiner mapJoiner = Joiner.on("\n").withKeyValueSeparator(",");
try
{
Files.write(mapJoiner.join(builder.build().entries()), f, Charsets.UTF_8);
FMLLog.log(Level.INFO, "Dumped item registry data to %s", f.getAbsolutePath());
}
catch (IOException e)
{
FMLLog.log(Level.SEVERE, e, "Failed to write registry data to %s", f.getAbsolutePath());
}
}
}
}
@@ -221,7 +221,7 @@ public class GameRegistry
}
catch (NoSuchMethodException e)
{
itemCtor = itemclass.getConstructor(int.class, Block.class);
itemCtor = itemclass.getConstructor(int.class, net.minecraft.block.Block.class);
i = itemCtor.newInstance(blockItemId, block);
}
GameRegistry.registerItem(i,name, modId);
@@ -275,7 +275,7 @@ public class GameRegistry
public static void registerTileEntityWithAlternatives(Class<? extends TileEntity> tileEntityClass, String id, String... alternatives)
{
TileEntity.func_70306_a(tileEntityClass, id);
Map<String,Class> teMappings = ObfuscationReflectionHelper.getPrivateValue(TileEntity.class, null, "field_70326_a", "a");
Map<String,Class> teMappings = ObfuscationReflectionHelper.getPrivateValue(TileEntity.class, null, "field_" + "70326_a", "field_70326_a", "a");
for (String s: alternatives)
{
if (!teMappings.containsKey(s))
@@ -394,4 +394,40 @@ public class GameRegistry
{
return GameData.findItem(modId, name);
}
/**
* Manually register a custom item stack with FML for later tracking. It is automatically scoped with the active modid
*
* @param name The name to register it under
* @param itemStack The itemstack to register
*/
public static void registerCustomItemStack(String name, ItemStack itemStack)
{
GameData.registerCustomItemStack(name, itemStack);
}
/**
* Lookup an itemstack based on mod and name. It will create "default" itemstacks from blocks and items if no
* explicit itemstack is found.
*
* If it is built from a block, the metadata is by default the "wildcard" value.
*
* Custom itemstacks can be dumped from minecraft by setting the system property fml.dumpRegistry to true
* (-Dfml.dumpRegistry=true on the command line will work)
*
* @param modId The modid of the stack owner
* @param name The name of the stack
* @param stackSize The size of the stack returned
* @return The custom itemstack or null if no such itemstack was found
*/
public static ItemStack findItemStack(String modId, String name, int stackSize)
{
ItemStack foundStack = GameData.findItemStack(modId, name);
if (foundStack != null)
{
ItemStack is = foundStack.func_77946_l();
is.field_77994_a = Math.min(stackSize, is.func_77976_d());
return is;
}
return null;
}
}
@@ -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
*/
@@ -98,4 +98,9 @@ public class DefaultArtifactVersion implements ArtifactVersion
{
return label == null ? comparableVersion.toString() : label + ( unbounded ? "" : "@" + range);
}
public VersionRange getRange()
{
return range;
}
}
@@ -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
*/
@@ -549,4 +549,15 @@ public class VersionRange
hash = 31 * hash + ( restrictions == null ? 0 : restrictions.hashCode() );
return hash;
}
public boolean isUnboundedAbove()
{
return restrictions.size() == 1 && restrictions.get(0).getUpperBound() == null && !restrictions.get(0).isUpperBoundInclusive();
}
public String getLowerBoundString()
{
return restrictions.size() == 1 ? restrictions.get(0).getLowerBound().getVersionString() : "";
}
}
@@ -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
*/
@@ -110,15 +110,17 @@ public class FMLRelaunchLog
super.reset();
currentMessage.append(record.replace(FMLLogFormatter.LINE_SEPARATOR, "\n"));
if (currentMessage.lastIndexOf("\n")>=0)
// Are we longer than just the line separator?
int lastIdx = -1;
int idx = currentMessage.indexOf("\n",lastIdx+1);
while (idx >= 0)
{
log.log(Level.INFO, currentMessage.substring(lastIdx+1,idx));
lastIdx = idx;
idx = currentMessage.indexOf("\n",lastIdx+1);
}
if (lastIdx >= 0)
{
// Are we longer than just the line separator?
if (currentMessage.length()>1)
{
// Trim the line separator
currentMessage.setLength(currentMessage.length()-1);
log.log(Level.INFO, currentMessage.toString());
}
currentMessage.setLength(0);
}
}
@@ -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
*/
@@ -132,7 +132,9 @@ public class FMLRelauncher
private Class<? super Object> setupNewClientHome(File minecraftHome)
{
Class<? super Object> client = ReflectionHelper.getClass(classLoader, "net.minecraft.client.Minecraft");
ReflectionHelper.setPrivateValue(client, null, minecraftHome, "field_71463_am", "an", "minecraftDir");
ReflectionHelper.setPrivateValue(client, null, minecraftHome,
"field_" + "71463_am" /*Separate that so that MCP's updatenames does not replace it*/,
"an", "minecraftDir");
return client;
}
@@ -161,6 +163,9 @@ public class FMLRelauncher
FMLRelaunchLog.minecraftHome = minecraftHome;
FMLRelaunchLog.info("Forge Mod Loader version %s.%s.%s.%s for Minecraft %s loading", FMLInjectionData.major, FMLInjectionData.minor,
FMLInjectionData.rev, FMLInjectionData.build, FMLInjectionData.mccversion, FMLInjectionData.mcpversion);
FMLRelaunchLog.info("Java is %s, version %s, running on %s:%s:%s, installed at %s", System.getProperty("java.vm.name"), System.getProperty("java.version"), System.getProperty("os.name"), System.getProperty("os.arch"), System.getProperty("os.version"), System.getProperty("java.home"));
FMLRelaunchLog.fine("Java classpath at launch is %s", System.getProperty("java.class.path"));
FMLRelaunchLog.fine("Java library path at launch is %s", System.getProperty("java.library.path"));
try
{
@@ -228,7 +233,6 @@ public class FMLRelauncher
{
showWindow(true);
appletClass = ReflectionHelper.getClass(classLoader, "net.minecraft.client.MinecraftApplet");
if (minecraftApplet.getClass().getClassLoader() == classLoader)
{
if (popupWindow != null)
@@ -239,6 +243,7 @@ public class FMLRelauncher
try
{
newApplet = minecraftApplet;
appletClass = ReflectionHelper.getClass(classLoader, "net.minecraft.client.MinecraftApplet");
ReflectionHelper.findMethod(appletClass, newApplet, new String[] { "fmlInitReentry" }).invoke(newApplet);
return;
}
@@ -258,6 +263,7 @@ public class FMLRelauncher
try
{
appletClass = ReflectionHelper.getClass(classLoader, "net.minecraft.client.MinecraftApplet");
newApplet = appletClass.newInstance();
Object appletContainer = ReflectionHelper.getPrivateValue(ReflectionHelper.getClass(getClass().getClassLoader(), "java.awt.Component"),
minecraftApplet, "parent");
@@ -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
*/
@@ -87,4 +87,18 @@ public interface IFMLLoadingPlugin
{
public String[] value() default "";
}
/**
* Use this to target a specific minecraft version for your coremod. It will refuse to load with an error if
* minecraft is not this exact version.
*
* @author cpw
*
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MCVersion
{
public String value() default "";
}
}
@@ -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
*/
@@ -13,8 +13,11 @@
package cpw.mods.fml.relauncher;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.JarURLConnection;
import java.net.URL;
import java.net.URLClassLoader;
@@ -60,6 +63,9 @@ public class RelaunchClassLoader extends URLClassLoader
private static final String[] RESERVED = {"CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9"};
private static final boolean DEBUG_CLASSLOADING = Boolean.parseBoolean(System.getProperty("fml.debugClassLoading", "false"));
private static final boolean DEBUG_CLASSLOADING_FINER = DEBUG_CLASSLOADING && Boolean.parseBoolean(System.getProperty("fml.debugClassLoadingFiner", "false"));
private static final boolean DEBUG_CLASSLOADING_SAVE = DEBUG_CLASSLOADING && Boolean.parseBoolean(System.getProperty("fml.debugClassLoadingSave", "false"));
private static File temp_folder = null;
public RelaunchClassLoader(URL[] sources)
{
@@ -86,6 +92,27 @@ public class RelaunchClassLoader extends URLClassLoader
addTransformerExclusion("com.google.common.");
addTransformerExclusion("org.bouncycastle.");
addTransformerExclusion("cpw.mods.fml.common.asm.transformers.deobf.");
if (DEBUG_CLASSLOADING_SAVE)
{
int x = 1;
temp_folder = new File(FMLRelaunchLog.minecraftHome, "CLASSLOADER_TEMP");
while(temp_folder.exists() && x <= 10)
{
temp_folder = new File(FMLRelaunchLog.minecraftHome, "CLASSLOADER_TEMP" + x++);
}
if (temp_folder.exists())
{
FMLRelaunchLog.info("DEBUG_CLASSLOADING_SAVE enabled, but 10 temp directories already exist, clean them and try again.");
temp_folder = null;
}
else
{
FMLRelaunchLog.info("DEBUG_CLASSLOADING_SAVE Enabled, saving all classes to \"%s\"", temp_folder.getAbsolutePath().replace('\\', '/'));
temp_folder.mkdirs();
}
}
}
public void registerTransformer(String transformerClassName)
@@ -196,7 +223,8 @@ public class RelaunchClassLoader extends URLClassLoader
}
byte[] basicClass = getClassBytes(untransformedName);
byte[] transformedClass = runTransformers(untransformedName, transformedName, basicClass);
Class<?> cl = defineClass(transformedName, transformedClass, 0, transformedClass.length, new CodeSource(urlConnection.getURL(), signers));
saveTransformedClass(transformedClass, transformedName);
Class<?> cl = defineClass(transformedName, transformedClass, 0, transformedClass.length, (urlConnection == null ? null : new CodeSource(urlConnection.getURL(), signers)));
cachedClasses.put(transformedName, cl);
return cl;
}
@@ -211,6 +239,39 @@ public class RelaunchClassLoader extends URLClassLoader
}
}
private void saveTransformedClass(byte[] data, String transformedName)
{
if (!DEBUG_CLASSLOADING_SAVE || temp_folder == null)
{
return;
}
File outFile = new File(temp_folder, transformedName.replace('.', File.separatorChar) + ".class");
File outDir = outFile.getParentFile();
if (!outDir.exists())
{
outDir.mkdirs();
}
if (outFile.exists())
{
outFile.delete();
}
try
{
FMLRelaunchLog.fine("Saving transformed class \"%s\" to \"%s\"", transformedName, outFile.getAbsolutePath().replace('\\', '/'));
OutputStream output = new FileOutputStream(outFile);
output.write(data);
output.close();
}
catch(IOException ex)
{
FMLRelaunchLog.log(Level.WARNING, ex, "Could not save transformed class \"%s\"", transformedName);
}
}
private String untransformName(String name)
{
if (renameTransformer != null)
@@ -272,9 +333,24 @@ public class RelaunchClassLoader extends URLClassLoader
private byte[] runTransformers(String name, String transformedName, byte[] basicClass)
{
for (IClassTransformer transformer : transformers)
if (DEBUG_CLASSLOADING_FINER)
{
basicClass = transformer.transform(name, transformedName, basicClass);
FMLRelaunchLog.finest("Beginning transform of %s (%s) Start Length: %d", name, transformedName, (basicClass == null ? 0 : basicClass.length));
for (IClassTransformer transformer : transformers)
{
String transName = transformer.getClass().getName();
FMLRelaunchLog.finest("Before Transformer %s: %d", transName, (basicClass == null ? 0 : basicClass.length));
basicClass = transformer.transform(name, transformedName, basicClass);
FMLRelaunchLog.finest("After Transformer %s: %d", transName, (basicClass == null ? 0 : basicClass.length));
}
FMLRelaunchLog.finest("Ending transform of %s (%s) Start Length: %d", name, transformedName, (basicClass == null ? 0 : basicClass.length));
}
else
{
for (IClassTransformer transformer : transformers)
{
basicClass = transformer.transform(name, transformedName, basicClass);
}
}
return basicClass;
}
@@ -38,6 +38,7 @@ import java.util.jar.JarFile;
import java.util.logging.Level;
import cpw.mods.fml.common.CertificateHelper;
import cpw.mods.fml.relauncher.IFMLLoadingPlugin.MCVersion;
import cpw.mods.fml.relauncher.IFMLLoadingPlugin.TransformerExclusions;
public class RelaunchLibraryManager
@@ -280,6 +281,7 @@ public class RelaunchLibraryManager
Map<String,Object> data = new HashMap<String,Object>();
data.put("mcLocation", mcDir);
data.put("coremodList", loadPlugins);
data.put("runtimeDeobfuscationEnabled", !deobfuscatedEnvironment);
for (IFMLLoadingPlugin plugin : loadPlugins)
{
downloadMonitor.updateProgressString("Running coremod plugin %s", plugin.getClass().getSimpleName());
@@ -292,7 +294,9 @@ public class RelaunchLibraryManager
{
IFMLCallHook call = (IFMLCallHook) Class.forName(setupClass, true, actualClassLoader).newInstance();
Map<String,Object> callData = new HashMap<String, Object>();
callData.put("mcLocation", mcDir);
callData.put("classLoader", actualClassLoader);
callData.put("coremodLocation", pluginLocations.get(plugin));
callData.put("deobfuscationFileName", FMLInjectionData.debfuscationDataName());
call.injectData(callData);
call.call();
@@ -352,6 +356,11 @@ public class RelaunchLibraryManager
try
{
jar = new JarFile(coreMod);
if (jar.getManifest() == null)
{
FMLRelaunchLog.warning("Found an un-manifested jar file in the coremods folder : %s, it will be ignored.", coreMod.getName());
continue;
}
mfAttributes = jar.getManifest().getMainAttributes();
}
catch (IOException ioe)
@@ -398,6 +407,25 @@ public class RelaunchLibraryManager
downloadMonitor.updateProgressString("Loading coremod %s", coreMod.getName());
classLoader.addTransformerExclusion(fmlCorePlugin);
Class<?> coreModClass = Class.forName(fmlCorePlugin, true, classLoader);
MCVersion requiredMCVersion = coreModClass.getAnnotation(IFMLLoadingPlugin.MCVersion.class);
String version = "";
if (requiredMCVersion == null)
{
FMLRelaunchLog.log(Level.WARNING, "The coremod %s does not have a MCVersion annotation, it may cause issues with this version of Minecraft", fmlCorePlugin);
}
else
{
version = requiredMCVersion.value();
}
if (!"".equals(version) && !FMLInjectionData.mccversion.equals(version))
{
FMLRelaunchLog.log(Level.SEVERE, "The coremod %s is requesting minecraft version %s and minecraft is %s. It will be ignored.", fmlCorePlugin, version, FMLInjectionData.mccversion);
continue;
}
else if (!"".equals(version))
{
FMLRelaunchLog.log(Level.FINE, "The coremod %s requested minecraft version %s and minecraft is %s. It will be loaded.", fmlCorePlugin, version, FMLInjectionData.mccversion);
}
TransformerExclusions trExclusions = coreModClass.getAnnotation(IFMLLoadingPlugin.TransformerExclusions.class);
if (trExclusions!=null)
{
@@ -82,7 +82,6 @@ public class FMLServerHandler implements IFMLSidedHandler
public void beginServerLoading(MinecraftServer minecraftServer)
{
server = minecraftServer;
ObfuscationReflectionHelper.detectObfuscation(World.class);
Loader.instance().loadMods();
}
+26 -26
View File
@@ -1,6 +1,6 @@
#Main FML Access Transformer configuration file
# TileEntity addMapping
public aqj.a(Ljava/lang/Class;Ljava/lang/String;)V #MD:TileEntity/func_70306_a
public aqp.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
@@ -9,24 +9,24 @@ public mv.c #FD:EntityList/field_75626_c #classToNameMap
public mv.d #FD:EntityList/field_75623_d #idToClassMap
# RenderEngine
#public bba.h #FD:RenderEngine/field_78367_h #textureList # -- MISSING MAPPING # -- MISSING MAPPING
public bfy.g #FD:RenderEngine/field_78366_k #texturePack
public bge.g #FD:RenderEngine/field_78366_k #texturePack
# RenderManager
public bgs.q #FD:RenderManager/field_78729_o #renderers
public bgy.q #FD:RenderManager/field_78729_o #renderers
# RenderBlocks - everything
public bfz.* #FD:RenderBlocks/*
public bfz.*() #MD:RenderBlocks/*
public bgf.* #FD:RenderBlocks/*
public bgf.*() #MD:RenderBlocks/*
#RenderPlayer
public-f bhn.h #FD:RenderPlayer/field_77110_j #armorlist
public-f bht.h #FD:RenderPlayer/field_77110_j #armorlist
#RenderBiped
public-f bha.k #FD:RenderBiped/field_82424_k #armorlist
public-f bhg.k #FD:RenderBiped/field_82424_k #armorlist
#StringTranslate
public bp.b #FD:StringTranslate/field_74815_b
public bp.e #FD:StringTranslate/field_74813_d
# TileEntityRenderer
public bix.m #FD:TileEntityRenderer/field_76966_m
public bjd.m #FD:TileEntityRenderer/field_76966_m
# CraftingManager - make the add recipe methods public
public ye.a(Lwg;[Ljava/lang/Object;)Lyh; #MD:CraftingManager/func_92103_a
public ye.b(Lwg;[Ljava/lang/Object;)V #MD:CraftingManager/func_77596_b
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
# WeightedRandomItem
public lo.a #FD:WeightedRandomItem/field_76292_a #probability
# ItemStack
@@ -37,37 +37,37 @@ public ka.a #FD:StatBase/field_75978_a #statName
public jf.a(Ljf;Z)Z #MD:NetLoginHandler/func_72531_a #'complete connection'
public jf.g #FD:NetLoginHandler/field_72543_h #userName
# EntityPlayerMP getNextWindowId
public jc.cr()V #MD:EntityPlayerMP/func_71117_bO
public jc.ct()V #MD:EntityPlayerMP/func_71117_bO
public jc.cu #FD:EntityPlayerMP/field_71139_cq
# EntityAITaskEntry
public oi #CL:EntityAITaskEntry
public oo #CL:EntityAITaskEntry
# EntityAITasks
public oh.a #FD:EntityAITasks/field_75782_a #taskList
public on.a #FD:EntityAITasks/field_75782_a #taskList
# BlockChest
public alh.m(Lzv;III)Z #MD:BlockChest/func_72292_n #isOcelotBlockingChest
public aln.m(Laab;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
# EntityAIOcelotSit
protected ou.a(Lzv;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock
protected ou.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable
protected pa.a(Laab;III)Z #MD:EntityAIOcelotSit/func_75398_a #nearestSittableBlock
protected pa.f()Z #MD:EntityAIOcelotSit/func_75399_f #isblocksittable
# CallableMinecraftVersion - sanity check the MC version
public c #CL:CallableMinecraftVersion
public c.<init>(Lb;)V #MD:CallableMinecraftVersion/<init>(Lnet/minecraft/src/CrashReport;) #constructor
# EntityAnimal
public qb.d #FD:EntityAnimal/field_70881_d #inLove
public qh.d #FD:EntityAnimal/field_70881_d #inLove
# WorldType
public aaf.<init>(ILjava/lang/String;)V #MD:WorldType/<init>(ILjava/lang/String;)
public aaf.<init>(ILjava/lang/String;I)V #MD:WorldType/<init>(ILjava/lang/String;I)
public aal.<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)
# ComponentVillage
public ahj #CL:ComponentVillage
public ahp #CL:ComponentVillage
# EntityVillager - minmax lists
public sg.a(Lzl;ILjava/util/Random;F)V #MD:EntityVillager/func_70948_a #addBuy
public sg.b(Lzl;ILjava/util/Random;F)V #MD:EntityVillager/func_70949_b #addSell
public sg.bP #FD:EntityVillager/field_70958_bB
public sg.bQ #FD:EntityVillager/field_70960_bC
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
# GuiButtonMerchant
public azc #CL:GuiButtonMerchant
public azi #CL:GuiButtonMerchant
protected awe.a #FD:GuiYesNo/field_73942_a #guiScreen
protected awk.a #FD:GuiYesNo/field_73942_a #guiScreen
+3 -3
View File
@@ -2,11 +2,11 @@
# Only runs at runtime because it's not necessary at compile time
# has deobf and obf mappings so it runs OK in mcp
# entityplayer -> network/player
sk cpw/mods/fml/common/network/Player
sq cpw/mods/fml/common/network/Player
net.minecraft.entity.player.EntityPlayer cpw/mods/fml/common/network/Player
# block -> blockproxy
aou cpw/mods/fml/common/registry/BlockProxy
apa cpw/mods/fml/common/registry/BlockProxy
net.minecraft.block.Block cpw/mods/fml/common/registry/BlockProxy
# item -> itemproxy
we cpw/mods/fml/common/registry/ItemProxy
wk cpw/mods/fml/common/registry/ItemProxy
net.minecraft.item.Item cpw/mods/fml/common/registry/ItemProxy
+2 -2
View File
@@ -3,8 +3,8 @@
"modid": "mcp",
"name": "Minecraft Coder Pack",
"description": "Modding toolkit to decompile and deobfuscate the Minecraft client and server files.",
"version": "7.42",
"mcversion": "1.5",
"version": "7.44",
"mcversion": "1.5.1",
"logoFile": "/mcp.png",
"url": "http://mcp.ocean-labs.de/",
"updateUrl": "",
+382 -150
View File
File diff suppressed because it is too large. Load diff
+93 -61
View File
@@ -167,6 +167,7 @@ net/minecraft/client/Minecraft.func_71404_a(Lnet/minecraft/src/CrashReport;)V=|p
net/minecraft/client/Minecraft.func_71409_c(Ljava/lang/String;)Z=|p_71409_1_
net/minecraft/client/Minecraft.main([Ljava/lang/String;)V=|p_main_0_
net/minecraft/server/MinecraftServer.<init>(Ljava/io/File;)V=|p_i3375_1_
net/minecraft/server/MinecraftServer.func_104055_i(Z)V=|p_104055_1_
net/minecraft/server/MinecraftServer.func_70000_a(Lnet/minecraft/src/PlayerUsageSnooper;)V=|p_70000_1_
net/minecraft/server/MinecraftServer.func_70001_b(Lnet/minecraft/src/PlayerUsageSnooper;)V=|p_70001_1_
net/minecraft/server/MinecraftServer.func_70003_b(ILjava/lang/String;)Z=|p_70003_1_,p_70003_2_
@@ -666,7 +667,6 @@ net/minecraft/src/BlockDirectional.<init>(ILnet/minecraft/src/Material;)V=|p_i39
net/minecraft/src/BlockDirectional.func_72217_d(I)I=|p_72217_0_
net/minecraft/src/BlockDirt.<init>(I)V=|p_i9052_1_
net/minecraft/src/BlockDispenser.<init>(I)V=|p_i3938_1_
net/minecraft/src/BlockDispenser.func_100001_j_(I)Lnet/minecraft/src/EnumFacing;=|p_100001_0_
net/minecraft/src/BlockDispenser.func_100009_j_(I)Lnet/minecraft/src/EnumFacing;=|p_100009_0_
net/minecraft/src/BlockDispenser.func_71847_b(Lnet/minecraft/src/World;IIILjava/util/Random;)V=|p_71847_1_,p_71847_2_,p_71847_3_,p_71847_4_,p_71847_5_
net/minecraft/src/BlockDispenser.func_71852_a(Lnet/minecraft/src/World;IIIII)V=|p_71852_1_,p_71852_2_,p_71852_3_,p_71852_4_,p_71852_5_,p_71852_6_
@@ -868,6 +868,7 @@ net/minecraft/src/BlockFurnace.func_71861_g(Lnet/minecraft/src/World;III)V=|p_71
net/minecraft/src/BlockFurnace.func_71862_a(Lnet/minecraft/src/World;IIILjava/util/Random;)V=|p_71862_1_,p_71862_2_,p_71862_3_,p_71862_4_,p_71862_5_
net/minecraft/src/BlockFurnace.func_71885_a(ILjava/util/Random;I)I=|p_71885_1_,p_71885_2_,p_71885_3_
net/minecraft/src/BlockFurnace.func_71903_a(Lnet/minecraft/src/World;IIILnet/minecraft/src/EntityPlayer;IFFF)Z=|p_71903_1_,p_71903_2_,p_71903_3_,p_71903_4_,p_71903_5_,p_71903_6_,p_71903_7_,p_71903_8_,p_71903_9_
net/minecraft/src/BlockFurnace.func_71922_a(Lnet/minecraft/src/World;III)I=|p_71922_1_,p_71922_2_,p_71922_3_,p_71922_4_
net/minecraft/src/BlockFurnace.func_72274_a(Lnet/minecraft/src/World;)Lnet/minecraft/src/TileEntity;=|p_72274_1_
net/minecraft/src/BlockFurnace.func_72285_l(Lnet/minecraft/src/World;III)V=|p_72285_1_,p_72285_2_,p_72285_3_,p_72285_4_
net/minecraft/src/BlockFurnace.func_72286_a(ZLnet/minecraft/src/World;III)V=|p_72286_0_,p_72286_1_,p_72286_2_,p_72286_3_,p_72286_4_
@@ -1559,6 +1560,12 @@ net/minecraft/src/CallableChunkPosHash.<init>(Lnet/minecraft/src/MapGenStructure
net/minecraft/src/CallableClientMemoryStats.<init>(Lnet/minecraft/client/Minecraft;)V=|p_i5000_1_
net/minecraft/src/CallableClientProfiler.<init>(Lnet/minecraft/client/Minecraft;)V=|p_i3017_1_
net/minecraft/src/CallableCrashMemoryReport.<init>(Lnet/minecraft/src/CrashReport;)V=|p_i6000_1_
net/minecraft/src/CallableEffectAmplifier.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22006_1_,p_i22006_2_
net/minecraft/src/CallableEffectDuration.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22005_1_,p_i22005_2_
net/minecraft/src/CallableEffectID.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22004_1_,p_i22004_2_
net/minecraft/src/CallableEffectIsAmbient.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22008_1_,p_i22008_2_
net/minecraft/src/CallableEffectIsSplash.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22007_1_,p_i22007_2_
net/minecraft/src/CallableEffectName.<init>(Lnet/minecraft/src/EntityLiving;Lnet/minecraft/src/PotionEffect;)V=|p_i22003_1_,p_i22003_2_
net/minecraft/src/CallableEntityName.<init>(Lnet/minecraft/src/Entity;)V=|p_i10048_1_
net/minecraft/src/CallableEntityTracker.<init>(Lnet/minecraft/src/EntityTracker;I)V=|p_i10045_1_,p_i10045_2_
net/minecraft/src/CallableEntityType.<init>(Lnet/minecraft/src/Entity;)V=|p_i6811_1_
@@ -1656,7 +1663,7 @@ net/minecraft/src/Chunk.func_76627_f(III)V=|p_76627_1_,p_76627_2_,p_76627_3_
net/minecraft/src/Chunk.func_76628_c(III)I=|p_76628_1_,p_76628_2_,p_76628_3_
net/minecraft/src/Chunk.func_76629_c(IIII)I=|p_76629_1_,p_76629_2_,p_76629_3_,p_76629_4_
net/minecraft/src/Chunk.func_76633_a(Lnet/minecraft/src/EnumSkyBlock;IIII)V=|p_76633_1_,p_76633_2_,p_76633_3_,p_76633_4_,p_76633_5_
net/minecraft/src/ChunkCache.<init>(Lnet/minecraft/src/World;IIIIII)V=|p_i3740_1_,p_i3740_2_,p_i3740_3_,p_i3740_4_,p_i3740_5_,p_i3740_6_,p_i3740_7_
net/minecraft/src/ChunkCache.<init>(Lnet/minecraft/src/World;IIIIIII)V=|p_i22009_1_,p_i22009_2_,p_i22009_3_,p_i22009_4_,p_i22009_5_,p_i22009_6_,p_i22009_7_,p_i22009_8_
net/minecraft/src/ChunkCache.func_72796_p(III)Lnet/minecraft/src/TileEntity;=|p_72796_1_,p_72796_2_,p_72796_3_
net/minecraft/src/ChunkCache.func_72797_t(III)Z=|p_72797_1_,p_72797_2_,p_72797_3_
net/minecraft/src/ChunkCache.func_72798_a(III)I=|p_72798_1_,p_72798_2_,p_72798_3_
@@ -3869,7 +3876,7 @@ net/minecraft/src/GuiCommandBlock.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73
net/minecraft/src/GuiCommandBlock.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiCommandBlock.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiCommandBlock.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiConfirmOpenLink.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String;I)V=|p_i3102_1_,p_i3102_2_,p_i3102_3_
net/minecraft/src/GuiConfirmOpenLink.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String;IZ)V=|p_i23004_1_,p_i23004_2_,p_i23004_3_,p_i23004_4_
net/minecraft/src/GuiConfirmOpenLink.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiConfirmOpenLink.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiConnecting.<init>(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/client/Minecraft;Ljava/lang/String;I)V=|p_i11014_1_,p_i11014_2_,p_i11014_3_,p_i11014_4_
@@ -3888,6 +3895,7 @@ net/minecraft/src/GuiConnecting.func_74257_b(Lnet/minecraft/src/GuiConnecting;)Z
net/minecraft/src/GuiConnecting.func_98096_h(Lnet/minecraft/src/GuiConnecting;)Lnet/minecraft/client/Minecraft;=|p_98096_0_
net/minecraft/src/GuiConnecting.func_98097_e(Lnet/minecraft/src/GuiConnecting;)Lnet/minecraft/src/GuiScreen;=|p_98097_0_
net/minecraft/src/GuiContainer.<init>(Lnet/minecraft/src/Container;)V=|p_i3079_1_
net/minecraft/src/GuiContainer.func_102021_a(Ljava/util/List;II)V=|p_102021_1_,p_102021_2_,p_102021_3_
net/minecraft/src/GuiContainer.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiContainer.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiContainer.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
@@ -4019,6 +4027,26 @@ net/minecraft/src/GuiLogOutputHandler.<init>(Ljavax/swing/JTextArea;)V=|p_i4102_
net/minecraft/src/GuiLogOutputHandler.close()V=|
net/minecraft/src/GuiLogOutputHandler.flush()V=|
net/minecraft/src/GuiLogOutputHandler.publish(Ljava/util/logging/LogRecord;)V=|p_publish_1_
net/minecraft/src/GuiMainMenu.func_104004_a(Lnet/minecraft/src/GuiMainMenu;)Ljava/lang/Object;=|p_104004_0_
net/minecraft/src/GuiMainMenu.func_104005_a(Lnet/minecraft/src/GuiMainMenu;Ljava/lang/String;)Ljava/lang/String;=|p_104005_0_,p_104005_1_
net/minecraft/src/GuiMainMenu.func_104006_a(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104006_0_,p_104006_1_
net/minecraft/src/GuiMainMenu.func_104007_d(Lnet/minecraft/src/GuiMainMenu;)Lnet/minecraft/src/FontRenderer;=|p_104007_0_
net/minecraft/src/GuiMainMenu.func_104008_c(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104008_0_,p_104008_1_
net/minecraft/src/GuiMainMenu.func_104009_d(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104009_0_,p_104009_1_
net/minecraft/src/GuiMainMenu.func_98059_a(Z)Z=|p_98059_0_
net/minecraft/src/GuiMainMenu.func_104011_e(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104011_0_,p_104011_1_
net/minecraft/src/GuiMainMenu.func_104012_f(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104012_0_,p_104012_1_
net/minecraft/src/GuiMainMenu.func_104013_b(Lnet/minecraft/src/GuiMainMenu;Ljava/lang/String;)Ljava/lang/String;=|p_104013_0_,p_104013_1_
net/minecraft/src/GuiMainMenu.func_104014_b(Lnet/minecraft/src/GuiMainMenu;I)I=|p_104014_0_,p_104014_1_
net/minecraft/src/GuiMainMenu.func_104015_f(Lnet/minecraft/src/GuiMainMenu;)I=|p_104015_0_
net/minecraft/src/GuiMainMenu.func_104016_e(Lnet/minecraft/src/GuiMainMenu;)I=|p_104016_0_
net/minecraft/src/GuiMainMenu.func_98058_a(Lnet/minecraft/src/GuiMainMenu;)Lnet/minecraft/client/Minecraft;=|p_98058_0_
net/minecraft/src/GuiMainMenu.func_104018_h(Lnet/minecraft/src/GuiMainMenu;)I=|p_104018_0_
net/minecraft/src/GuiMainMenu.func_104019_g(Lnet/minecraft/src/GuiMainMenu;)Ljava/util/List;=|p_104019_0_
net/minecraft/src/GuiMainMenu.func_104020_i(Lnet/minecraft/src/GuiMainMenu;)I=|p_104020_0_
net/minecraft/src/GuiMainMenu.func_98061_a(Lnet/minecraft/src/GuiMainMenu;Lnet/minecraft/src/StringTranslate;II)V=|p_98061_0_,p_98061_1_,p_98061_2_,p_98061_3_
net/minecraft/src/GuiMainMenu.func_104022_c(Lnet/minecraft/src/GuiMainMenu;)Lnet/minecraft/src/FontRenderer;=|p_104022_0_
net/minecraft/src/GuiMainMenu.func_104023_b(Lnet/minecraft/src/GuiMainMenu;)Ljava/lang/String;=|p_104023_0_
net/minecraft/src/GuiMainMenu.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiMainMenu.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiMainMenu.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
@@ -4030,10 +4058,7 @@ net/minecraft/src/GuiMainMenu.func_73970_b(IIF)V=|p_73970_1_,p_73970_2_,p_73970_
net/minecraft/src/GuiMainMenu.func_73971_c(IIF)V=|p_73971_1_,p_73971_2_,p_73971_3_
net/minecraft/src/GuiMainMenu.func_73972_b(IILnet/minecraft/src/StringTranslate;)V=|p_73972_1_,p_73972_2_,p_73972_3_
net/minecraft/src/GuiMainMenu.func_96137_a(Lnet/minecraft/src/StringTranslate;II)V=|p_96137_1_,p_96137_2_,p_96137_3_
net/minecraft/src/GuiMainMenu.func_98058_a(Lnet/minecraft/src/GuiMainMenu;)Lnet/minecraft/client/Minecraft;=|p_98058_0_
net/minecraft/src/GuiMainMenu.func_98059_a(Z)Z=|p_98059_0_
net/minecraft/src/GuiMainMenu.func_98060_b(Lnet/minecraft/src/StringTranslate;II)V=|p_98060_1_,p_98060_2_,p_98060_3_
net/minecraft/src/GuiMainMenu.func_98061_a(Lnet/minecraft/src/GuiMainMenu;Lnet/minecraft/src/StringTranslate;II)V=|p_98061_0_,p_98061_1_,p_98061_2_,p_98061_3_
net/minecraft/src/GuiMemoryErrorScreen.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiMemoryErrorScreen.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiMemoryErrorScreen.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
@@ -4143,19 +4168,13 @@ net/minecraft/src/GuiScreenConfigureWorld.func_96274_a(Lnet/minecraft/src/GuiScr
net/minecraft/src/GuiScreenConfirmation.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V=|p_i10019_1_,p_i10019_2_,p_i10019_3_,p_i10019_4_,p_i10019_5_
net/minecraft/src/GuiScreenConfirmation.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenCreateOnlineWorld.<init>(Lnet/minecraft/src/GuiScreen;)V=|p_i10010_1_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96246_c(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/client/Minecraft;=|p_96246_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96247_b(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/src/GuiScreen;=|p_96247_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96246_c(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/client/Minecraft;=|p_96246_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96247_b(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/src/GuiScreen;=|p_96247_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96248_a(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/client/Minecraft;=|p_96248_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_96251_a(Lnet/minecraft/src/Location;Ljava/lang/String;Ljava/lang/String;)V=|p_96251_1_,p_96251_2_,p_96251_3_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_98099_d(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/client/Minecraft;=|p_98099_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_98100_a(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;Lnet/minecraft/src/Location;)Lnet/minecraft/src/Location;=|p_98100_0_,p_98100_1_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_98101_b(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Lnet/minecraft/src/Location;=|p_98101_0_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_98102_a(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;Ljava/util/List;)Ljava/util/List;=|p_98102_0_,p_98102_1_
net/minecraft/src/GuiScreenCreateOnlineWorld.func_98103_c(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)Ljava/util/List;=|p_98103_0_
net/minecraft/src/GuiScreenDemo.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenDemo.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenDisconnectedOnline.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V=|p_i11007_1_,p_i11007_2_,p_i11007_3_,p_i11007_4_
@@ -4167,7 +4186,8 @@ net/minecraft/src/GuiScreenEditOnlineWorld.func_73863_a(IIF)V=|p_73863_1_,p_7386
net/minecraft/src/GuiScreenEditOnlineWorld.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiScreenEditOnlineWorld.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiScreenEditOnlineWorld.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenInvite.<init>(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/McoServer;)V=|p_i10015_1_,p_i10015_2_,p_i10015_3_
net/minecraft/src/GuiScreenInvite.<init>(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/GuiScreenConfigureWorld;Lnet/minecraft/src/McoServer;)V=|p_i22002_1_,p_i22002_2_,p_i22002_3_
net/minecraft/src/GuiScreenInvite.func_101015_a(Ljava/lang/String;)V=|p_101015_1_
net/minecraft/src/GuiScreenInvite.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenInvite.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
net/minecraft/src/GuiScreenInvite.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
@@ -4179,38 +4199,47 @@ net/minecraft/src/GuiScreenLongRunningTask.func_73875_a(Lnet/minecraft/src/GuiBu
net/minecraft/src/GuiScreenLongRunningTask.func_96209_a(Ljava/lang/String;)V=|p_96209_1_
net/minecraft/src/GuiScreenLongRunningTask.func_96210_b(Ljava/lang/String;)V=|p_96210_1_
net/minecraft/src/GuiScreenOnlineServers.<init>(Lnet/minecraft/src/GuiScreen;)V=|p_i10007_1_
net/minecraft/src/GuiScreenOnlineServers.func_98079_k(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98079_0_
net/minecraft/src/GuiScreenOnlineServers.func_101001_e(IIII)V=|p_101001_1_,p_101001_2_,p_101001_3_,p_101001_4_
net/minecraft/src/GuiScreenOnlineServers.func_101006_d(IIII)V=|p_101006_1_,p_101006_2_,p_101006_3_,p_101006_4_
net/minecraft/src/GuiScreenOnlineServers.func_101008_c(IIII)V=|p_101008_1_,p_101008_2_,p_101008_3_,p_101008_4_
net/minecraft/src/GuiScreenOnlineServers.func_101009_c(Lnet/minecraft/src/GuiScreenOnlineServers;IIII)V=|p_101009_0_,p_101009_1_,p_101009_2_,p_101009_3_,p_101009_4_
net/minecraft/src/GuiScreenOnlineServers.func_101012_b(Lnet/minecraft/src/GuiScreenOnlineServers;IIII)V=|p_101012_0_,p_101012_1_,p_101012_2_,p_101012_3_,p_101012_4_
net/minecraft/src/GuiScreenOnlineServers.func_102018_a(J)V=|p_102018_1_
net/minecraft/src/GuiScreenOnlineServers.func_101011_a(Lnet/minecraft/src/GuiScreenOnlineServers;Ljava/lang/String;)Ljava/lang/String;=|p_101011_0_,p_101011_1_
net/minecraft/src/GuiScreenOnlineServers.func_98074_m(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98074_0_
net/minecraft/src/GuiScreenOnlineServers.func_98087_l(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98087_0_
net/minecraft/src/GuiScreenOnlineServers.func_101004_o(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_101004_0_
net/minecraft/src/GuiScreenOnlineServers.func_104030_a(Lnet/minecraft/src/GuiScreenOnlineServers;IIIII)V=|p_104030_0_,p_104030_1_,p_104030_2_,p_104030_3_,p_104030_4_,p_104030_5_
net/minecraft/src/GuiScreenOnlineServers.func_104031_c(Lnet/minecraft/src/GuiScreenOnlineServers;IIII)V=|p_104031_0_,p_104031_1_,p_104031_2_,p_104031_3_,p_104031_4_
net/minecraft/src/GuiScreenOnlineServers.func_104032_j(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_104032_0_
net/minecraft/src/GuiScreenOnlineServers.func_101000_n(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_101000_0_
net/minecraft/src/GuiScreenOnlineServers.func_101002_a(Lnet/minecraft/src/GuiScreenOnlineServers;Lnet/minecraft/src/McoServer;)V=java/io/IOException|p_101002_0_,p_101002_1_
net/minecraft/src/GuiScreenOnlineServers.func_98091_h(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_98091_0_
net/minecraft/src/GuiScreenOnlineServers.func_104038_i(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_104038_0_
net/minecraft/src/GuiScreenOnlineServers.func_104039_b(IIIII)V=|p_104039_1_,p_104039_2_,p_104039_3_,p_104039_4_,p_104039_5_
net/minecraft/src/GuiScreenOnlineServers.func_98084_i(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98084_0_
net/minecraft/src/GuiScreenOnlineServers.func_101005_j(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_101005_0_
net/minecraft/src/GuiScreenOnlineServers.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenOnlineServers.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiScreenOnlineServers.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenOnlineServers.func_96159_a(I)V=|p_96159_1_
net/minecraft/src/GuiScreenOnlineServers.func_96161_f(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/GuiButton;=|p_96161_0_
net/minecraft/src/GuiScreenOnlineServers.func_96165_a(Ljava/lang/String;II)V=|p_96165_1_,p_96165_2_,p_96165_3_
net/minecraft/src/GuiScreenOnlineServers.func_96168_c(II)V=|p_96168_1_,p_96168_2_
net/minecraft/src/GuiScreenOnlineServers.func_96174_a(Lnet/minecraft/src/McoServer;)V=java/io/IOException|p_96174_1_
net/minecraft/src/GuiScreenOnlineServers.func_96175_b(II)V=|p_96175_1_,p_96175_2_
net/minecraft/src/GuiScreenOnlineServers.func_96177_a(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_96177_0_
net/minecraft/src/GuiScreenOnlineServers.func_96179_a(Lnet/minecraft/src/GuiScreenOnlineServers;Lnet/minecraft/src/McoServer;)V=java/io/IOException|p_96179_0_,p_96179_1_
net/minecraft/src/GuiScreenOnlineServers.func_96182_l(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_96182_0_
net/minecraft/src/GuiScreenOnlineServers.func_98070_a(Lnet/minecraft/src/GuiScreenOnlineServers;II)V=|p_98070_0_,p_98070_1_,p_98070_2_
net/minecraft/src/GuiScreenOnlineServers.func_98071_n(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_98071_0_
net/minecraft/src/GuiScreenOnlineServers.func_98072_d(Lnet/minecraft/src/GuiScreenOnlineServers;)I=|p_98072_0_
net/minecraft/src/GuiScreenOnlineServers.func_98074_m(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98074_0_
net/minecraft/src/GuiScreenOnlineServers.func_98075_b(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_98075_0_
net/minecraft/src/GuiScreenOnlineServers.func_98076_f(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/client/Minecraft;=|p_98076_0_
net/minecraft/src/GuiScreenOnlineServers.func_98077_c(Lnet/minecraft/src/GuiScreenOnlineServers;II)V=|p_98077_0_,p_98077_1_,p_98077_2_
net/minecraft/src/GuiScreenOnlineServers.func_98078_c(Lnet/minecraft/src/GuiScreenOnlineServers;I)V=|p_98078_0_,p_98078_1_
net/minecraft/src/GuiScreenOnlineServers.func_98079_k(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98079_0_
net/minecraft/src/GuiScreenOnlineServers.func_98081_a(Lnet/minecraft/src/GuiScreenOnlineServers;I)I=|p_98081_0_,p_98081_1_
net/minecraft/src/GuiScreenOnlineServers.func_98083_b(Lnet/minecraft/src/GuiScreenOnlineServers;II)V=|p_98083_0_,p_98083_1_,p_98083_2_
net/minecraft/src/GuiScreenOnlineServers.func_98084_i(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98084_0_
net/minecraft/src/GuiScreenOnlineServers.func_98085_a(Lnet/minecraft/src/GuiScreenOnlineServers;Ljava/lang/String;)Ljava/lang/String;=|p_98085_0_,p_98085_1_
net/minecraft/src/GuiScreenOnlineServers.func_98086_a(J)Lnet/minecraft/src/McoServer;=|p_98086_1_
net/minecraft/src/GuiScreenOnlineServers.func_98087_l(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98087_0_
net/minecraft/src/GuiScreenOnlineServers.func_98088_b(II)V=|p_98088_1_,p_98088_2_
net/minecraft/src/GuiScreenOnlineServers.func_98089_b(Lnet/minecraft/src/GuiScreenOnlineServers;I)I=|p_98089_0_,p_98089_1_
net/minecraft/src/GuiScreenOnlineServers.func_98091_h(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/FontRenderer;=|p_98091_0_
net/minecraft/src/GuiScreenOnlineServers.func_98092_g(Lnet/minecraft/src/GuiScreenOnlineServers;)Lnet/minecraft/src/GuiButton;=|p_98092_0_
net/minecraft/src/GuiScreenOnlineServers.func_98094_c(Lnet/minecraft/src/GuiScreenOnlineServers;)Ljava/util/List;=|p_98094_0_
net/minecraft/src/GuiScreenOnlineServersSubscreen.<init>(IIII)V=|p_i23000_1_,p_i23000_2_,p_i23000_3_,p_i23000_4_
net/minecraft/src/GuiScreenOnlineServersSubscreen.func_104069_a(Lnet/minecraft/src/GuiButton;)V=|p_104069_1_
net/minecraft/src/GuiScreenOnlineServersSubscreen.func_104071_a(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/FontRenderer;)V=|p_104071_1_,p_104071_2_
net/minecraft/src/GuiScreenResetWorld.<init>(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/McoServer;)V=|p_i10003_1_,p_i10003_2_
net/minecraft/src/GuiScreenResetWorld.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenResetWorld.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
@@ -4218,16 +4247,14 @@ net/minecraft/src/GuiScreenResetWorld.func_73869_a(CI)V=|p_73869_1_,p_73869_2_
net/minecraft/src/GuiScreenResetWorld.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenResetWorld.func_96147_b(Lnet/minecraft/src/GuiScreenResetWorld;)Lnet/minecraft/client/Minecraft;=|p_96147_0_
net/minecraft/src/GuiScreenResetWorld.func_96148_a(Lnet/minecraft/src/GuiScreenResetWorld;)Lnet/minecraft/src/GuiScreen;=|p_96148_0_
net/minecraft/src/GuiScreenSelectLocation.<init>(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;Ljava/util/List;Lnet/minecraft/src/Location;Ljava/lang/String;Ljava/lang/String;)V=|p_i10005_1_,p_i10005_2_,p_i10005_3_,p_i10005_4_,p_i10005_5_
net/minecraft/src/GuiScreenSelectLocation.<init>(Lnet/minecraft/client/Minecraft;IIIII)V=|p_i23001_1_,p_i23001_2_,p_i23001_3_,p_i23001_4_,p_i23001_5_,p_i23001_6_
net/minecraft/src/GuiScreenSelectLocation.func_104083_b(IIII)V=|p_104083_1_,p_104083_2_,p_104083_3_,p_104083_4_
net/minecraft/src/GuiScreenSelectLocation.func_104084_a(IIII)V=|p_104084_1_,p_104084_2_,p_104084_3_,p_104084_4_
net/minecraft/src/GuiScreenSelectLocation.func_104087_b(II)V=|p_104087_1_,p_104087_2_
net/minecraft/src/GuiScreenSelectLocation.func_104088_a(IILnet/minecraft/src/Tessellator;)V=|p_104088_1_,p_104088_2_,p_104088_3_
net/minecraft/src/GuiScreenSelectLocation.func_104089_a(II)V=|p_104089_1_,p_104089_2_
net/minecraft/src/GuiScreenSelectLocation.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenSelectLocation.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/GuiScreenSelectLocation.func_96230_c(Lnet/minecraft/src/GuiScreenSelectLocation;)Lnet/minecraft/src/GuiSmallButton;=|p_96230_0_
net/minecraft/src/GuiScreenSelectLocation.func_96231_e(Lnet/minecraft/src/GuiScreenSelectLocation;)Lnet/minecraft/src/FontRenderer;=|p_96231_0_
net/minecraft/src/GuiScreenSelectLocation.func_96232_a(Lnet/minecraft/src/GuiScreenSelectLocation;)Lnet/minecraft/client/Minecraft;=|p_96232_0_
net/minecraft/src/GuiScreenSelectLocation.func_96233_d(Lnet/minecraft/src/GuiScreenSelectLocation;)Lnet/minecraft/src/Location;=|p_96233_0_
net/minecraft/src/GuiScreenSelectLocation.func_96234_a(Lnet/minecraft/src/GuiScreenSelectLocation;Lnet/minecraft/src/Location;)Lnet/minecraft/src/Location;=|p_96234_0_,p_96234_1_
net/minecraft/src/GuiScreenSelectLocation.func_96235_f(Lnet/minecraft/src/GuiScreenSelectLocation;)Lnet/minecraft/src/FontRenderer;=|p_96235_0_
net/minecraft/src/GuiScreenSelectLocation.func_96236_b(Lnet/minecraft/src/GuiScreenSelectLocation;)Ljava/util/List;=|p_96236_0_
net/minecraft/src/GuiScreenServerList.<init>(Lnet/minecraft/src/GuiScreen;Lnet/minecraft/src/ServerData;)V=|p_i3066_1_,p_i3066_2_
net/minecraft/src/GuiScreenServerList.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiScreenServerList.func_73864_a(III)V=|p_73864_1_,p_73864_2_,p_73864_3_
@@ -4288,6 +4315,7 @@ net/minecraft/src/GuiSlotLanguage.func_77213_a(IZ)V=|p_77213_1_,p_77213_2_
net/minecraft/src/GuiSlotLanguage.func_77214_a(IIIILnet/minecraft/src/Tessellator;)V=|p_77214_1_,p_77214_2_,p_77214_3_,p_77214_4_,p_77214_5_
net/minecraft/src/GuiSlotLanguage.func_77218_a(I)Z=|p_77218_1_
net/minecraft/src/GuiSlotOnlineServerList.<init>(Lnet/minecraft/src/GuiScreenOnlineServers;)V=|p_i10004_1_
net/minecraft/src/GuiSlotOnlineServerList.func_104086_b(I)Z=|p_104086_1_
net/minecraft/src/GuiSlotOnlineServerList.func_77213_a(IZ)V=|p_77213_1_,p_77213_2_
net/minecraft/src/GuiSlotOnlineServerList.func_77214_a(IIIILnet/minecraft/src/Tessellator;)V=|p_77214_1_,p_77214_2_,p_77214_3_,p_77214_4_,p_77214_5_
net/minecraft/src/GuiSlotOnlineServerList.func_77218_a(I)Z=|p_77218_1_
@@ -4427,6 +4455,7 @@ net/minecraft/src/GuiYesNo.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String
net/minecraft/src/GuiYesNo.<init>(Lnet/minecraft/src/GuiScreen;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V=|p_i3048_1_,p_i3048_2_,p_i3048_3_,p_i3048_4_,p_i3048_5_,p_i3048_6_
net/minecraft/src/GuiYesNo.func_73863_a(IIF)V=|p_73863_1_,p_73863_2_,p_73863_3_
net/minecraft/src/GuiYesNo.func_73875_a(Lnet/minecraft/src/GuiButton;)V=|p_73875_1_
net/minecraft/src/HttpUtil.func_104145_a(Ljava/net/URL;)Ljava/lang/String;=java/io/IOException|p_104145_0_
net/minecraft/src/HttpUtil.func_76179_a(Ljava/util/Map;)Ljava/lang/String;=|p_76179_0_
net/minecraft/src/HttpUtil.func_76180_a(Lnet/minecraft/src/ILogAgent;Ljava/net/URL;Ljava/lang/String;Z)Ljava/lang/String;=|p_76180_0_,p_76180_1_,p_76180_2_,p_76180_3_
net/minecraft/src/HttpUtil.func_76181_a()I=java/io/IOException|
@@ -4927,9 +4956,6 @@ net/minecraft/src/LoadingScreenRenderer.func_73719_c(Ljava/lang/String;)V=|p_737
net/minecraft/src/LoadingScreenRenderer.func_73720_a(Ljava/lang/String;)V=|p_73720_1_
net/minecraft/src/LoadingScreenRenderer.func_73721_b(Ljava/lang/String;)V=|p_73721_1_
net/minecraft/src/LoadingScreenRenderer.func_73722_d(Ljava/lang/String;)V=|p_73722_1_
net/minecraft/src/Location.func_98167_a(Largo/jdom/JsonNode;)Lnet/minecraft/src/Location;=|p_98167_0_
net/minecraft/src/Location.func_98168_a(Largo/jdom/JsonNode;Ljava/lang/String;)Lnet/minecraft/src/Location;=|p_98168_0_,p_98168_1_
net/minecraft/src/Locations.func_98174_a(Ljava/lang/String;)Lnet/minecraft/src/Locations;=|p_98174_0_
net/minecraft/src/LogAgent.<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V=|p_i11036_1_,p_i11036_2_,p_i11036_3_
net/minecraft/src/LogAgent.func_98076_a()Ljava/util/logging/Logger;=|
net/minecraft/src/LogAgent.func_98230_d(Ljava/lang/String;)V=|p_98230_1_
@@ -5050,7 +5076,7 @@ net/minecraft/src/MathHelper.func_82716_a(Ljava/util/Random;DD)D=|p_82716_0_,p_8
net/minecraft/src/McoClient.<init>(Lnet/minecraft/src/Session;)V=|p_i20001_1_
net/minecraft/src/McoClient.func_96374_a(J)Lnet/minecraft/src/McoServerAddress;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_96374_1_
net/minecraft/src/McoClient.func_96375_b()Ljava/lang/Boolean;=net/minecraft/src/ExceptionMcoService,java/io/IOException|
net/minecraft/src/McoClient.func_96376_d(J)Ljava/lang/Boolean;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_96376_1_
net/minecraft/src/McoClient.func_96376_d(JLjava/lang/String;)Ljava/lang/Boolean;=net/minecraft/src/ExceptionMcoService,java/io/UnsupportedEncodingException|p_96376_1_,p_96376_3_
net/minecraft/src/McoClient.func_96377_a(Lnet/minecraft/src/Request;)Ljava/lang/String;=net/minecraft/src/ExceptionMcoService|p_96377_1_
net/minecraft/src/McoClient.func_96378_c(J)Ljava/lang/Boolean;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_96378_1_
net/minecraft/src/McoClient.func_96379_c()I=net/minecraft/src/ExceptionMcoService|
@@ -5058,9 +5084,8 @@ net/minecraft/src/McoClient.func_96380_a(Ljava/lang/String;)Ljava/lang/String;=j
net/minecraft/src/McoClient.func_96381_a(JLjava/lang/String;)V=net/minecraft/src/ExceptionMcoService|p_96381_1_,p_96381_3_
net/minecraft/src/McoClient.func_96382_a()Lnet/minecraft/src/ValueObjectList;=net/minecraft/src/ExceptionMcoService|
net/minecraft/src/McoClient.func_96383_b(J)Ljava/lang/Boolean;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_96383_1_
net/minecraft/src/McoClient.func_96384_a(JLjava/lang/String;Ljava/lang/String;)V=net/minecraft/src/ExceptionMcoService,java/io/UnsupportedEncodingException|p_96384_1_,p_96384_3_,p_96384_4_
net/minecraft/src/McoClient.func_96385_d()Lnet/minecraft/src/Locations;=net/minecraft/src/ExceptionMcoService,java/io/IOException|
net/minecraft/src/McoClient.func_96386_a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V=java/io/IOException,net/minecraft/src/ExceptionMcoService,java/io/UnsupportedEncodingException|p_96386_1_,p_96386_2_,p_96386_3_
net/minecraft/src/McoClient.func_96384_a(JLjava/lang/String;Ljava/lang/String;II)V=net/minecraft/src/ExceptionMcoService,java/io/UnsupportedEncodingException|p_96384_1_,p_96384_3_,p_96384_4_,p_96384_5_,p_96384_6_
net/minecraft/src/McoClient.func_96386_a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V=net/minecraft/src/ExceptionMcoService,java/io/UnsupportedEncodingException|p_96386_1_,p_96386_2_,p_96386_3_,p_96386_4_
net/minecraft/src/McoClient.func_96387_b(JLjava/lang/String;)Lnet/minecraft/src/McoServer;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_96387_1_,p_96387_3_
net/minecraft/src/McoClient.func_98176_a(J)Lnet/minecraft/src/McoServer;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_98176_1_
net/minecraft/src/McoClient.func_98177_f(J)Lnet/minecraft/src/ValueObjectSubscription;=net/minecraft/src/ExceptionMcoService,java/io/IOException|p_98177_1_
@@ -6189,6 +6214,7 @@ net/minecraft/src/RenderBlaze.func_76986_a(Lnet/minecraft/src/Entity;DDDFF)V=|p_
net/minecraft/src/RenderBlaze.func_77031_a(Lnet/minecraft/src/EntityLiving;DDDFF)V=|p_77031_1_,p_77031_2_,p_77031_4_,p_77031_6_,p_77031_8_,p_77031_9_
net/minecraft/src/RenderBlaze.func_77067_a(Lnet/minecraft/src/EntityBlaze;DDDFF)V=|p_77067_1_,p_77067_2_,p_77067_4_,p_77067_6_,p_77067_8_,p_77067_9_
net/minecraft/src/RenderBlocks.<init>(Lnet/minecraft/src/IBlockAccess;)V=|p_i3187_1_
net/minecraft/src/RenderBlocks.func_102027_b(Lnet/minecraft/src/Block;IIIFFF)Z=|p_102027_1_,p_102027_2_,p_102027_3_,p_102027_4_,p_102027_5_,p_102027_6_,p_102027_7_
net/minecraft/src/RenderBlocks.func_78565_t(Lnet/minecraft/src/BlockStairs;III)Z=|p_78565_1_,p_78565_2_,p_78565_3_,p_78565_4_
net/minecraft/src/RenderBlocks.func_78566_o(Lnet/minecraft/src/Block;III)Z=|p_78566_1_,p_78566_2_,p_78566_3_,p_78566_4_
net/minecraft/src/RenderBlocks.func_78567_v(Lnet/minecraft/src/BlockEndPortalFrame;III)Z=|p_78567_1_,p_78567_2_,p_78567_3_,p_78567_4_
@@ -6584,6 +6610,7 @@ net/minecraft/src/RenderZombie.func_82430_a(Lnet/minecraft/src/EntityZombie;FFF)
net/minecraft/src/ReportedException.<init>(Lnet/minecraft/src/CrashReport;)V=|p_i3253_1_
net/minecraft/src/Request.<init>(Ljava/lang/String;II)V=|p_i10026_1_,p_i10026_2_,p_i10026_3_
net/minecraft/src/Request.func_100006_a(Ljava/lang/String;Ljava/lang/String;)V=|p_100006_1_,p_100006_2_
net/minecraft/src/Request.func_104064_a(Ljava/lang/String;Ljava/lang/String;II)Lnet/minecraft/src/Request;=|p_104064_0_,p_104064_1_,p_104064_2_,p_104064_3_
net/minecraft/src/Request.func_96352_a(Ljava/io/InputStream;)Ljava/lang/String;=java/io/IOException|p_96352_1_
net/minecraft/src/Request.func_96353_a(Ljava/lang/String;Ljava/lang/String;II)Lnet/minecraft/src/Request;=|p_96353_0_,p_96353_1_,p_96353_2_,p_96353_3_
net/minecraft/src/Request.func_96355_b(Ljava/lang/String;)Lnet/minecraft/src/Request;=|p_96355_0_
@@ -6594,6 +6621,7 @@ net/minecraft/src/RequestDelete.<init>(Ljava/lang/String;II)V=|p_i10031_1_,p_i10
net/minecraft/src/RequestGet.<init>(Ljava/lang/String;II)V=|p_i10030_1_,p_i10030_2_,p_i10030_3_
net/minecraft/src/RequestPost.<init>(Ljava/lang/String;[BII)V=|p_i10027_1_,p_i10027_2_,p_i10027_3_,p_i10027_4_
net/minecraft/src/RequestPut.<init>(Ljava/lang/String;[BII)V=|p_i10029_1_,p_i10029_2_,p_i10029_3_,p_i10029_4_
net/minecraft/src/RunnableTitleScreen.<init>(Lnet/minecraft/src/GuiMainMenu;)V=|p_i23005_1_
net/minecraft/src/SaveFormatComparator.<init>(Ljava/lang/String;Ljava/lang/String;JJLnet/minecraft/src/EnumGameType;ZZZ)V=|p_i3917_1_,p_i3917_2_,p_i3917_3_,p_i3917_5_,p_i3917_7_,p_i3917_8_,p_i3917_9_,p_i3917_10_
net/minecraft/src/SaveFormatComparator.compareTo(Ljava/lang/Object;)I=|p_compareTo_1_
net/minecraft/src/SaveFormatComparator.func_75787_a(Lnet/minecraft/src/SaveFormatComparator;)I=|p_75787_1_
@@ -6695,10 +6723,6 @@ net/minecraft/src/SelectionListInvited.func_96609_a(I)Z=|p_96609_1_
net/minecraft/src/SelectionListInvited.func_96610_a(IIIILnet/minecraft/src/Tessellator;)V=|p_96610_1_,p_96610_2_,p_96610_3_,p_96610_4_,p_96610_5_
net/minecraft/src/SelectionListInvited.func_96615_a(IZ)V=|p_96615_1_,p_96615_2_
net/minecraft/src/SelectionListInvited.func_98263_b(IIIILnet/minecraft/src/Tessellator;)V=|p_98263_1_,p_98263_2_,p_98263_3_,p_98263_4_,p_98263_5_
net/minecraft/src/SelectionListLocation.<init>(Lnet/minecraft/src/GuiScreenSelectLocation;)V=|p_i10002_1_
net/minecraft/src/SelectionListLocation.func_77213_a(IZ)V=|p_77213_1_,p_77213_2_
net/minecraft/src/SelectionListLocation.func_77214_a(IIIILnet/minecraft/src/Tessellator;)V=|p_77214_1_,p_77214_2_,p_77214_3_,p_77214_4_,p_77214_5_
net/minecraft/src/SelectionListLocation.func_77218_a(I)Z=|p_77218_1_
net/minecraft/src/ServerAddress.<init>(Ljava/lang/String;I)V=|p_i3096_1_,p_i3096_2_
net/minecraft/src/ServerAddress.func_78860_a(Ljava/lang/String;)Lnet/minecraft/src/ServerAddress;=|p_78860_0_
net/minecraft/src/ServerAddress.func_78862_a(Ljava/lang/String;I)I=|p_78862_0_,p_78862_1_
@@ -6788,7 +6812,6 @@ net/minecraft/src/ServerList.func_78857_a(II)V=|p_78857_1_,p_78857_2_
net/minecraft/src/ServerListenThread.<init>(Lnet/minecraft/src/NetworkListenThread;Ljava/net/InetAddress;I)V=java/io/IOException|p_i3384_1_,p_i3384_2_,p_i3384_3_
net/minecraft/src/ServerListenThread.func_71764_a(Lnet/minecraft/src/NetLoginHandler;)V=|p_71764_1_
net/minecraft/src/ServerListenThread.func_71769_a(Ljava/net/InetAddress;)V=|p_71769_1_
net/minecraft/src/ServerListenThread.func_71770_b(Ljava/net/InetAddress;)Z=|p_71770_0_
net/minecraft/src/ServerScoreboard.<init>(Lnet/minecraft/server/MinecraftServer;)V=|p_i10044_1_
net/minecraft/src/ServerScoreboard.func_96512_b(Ljava/lang/String;Lnet/minecraft/src/ScorePlayerTeam;)V=|p_96512_1_,p_96512_2_
net/minecraft/src/ServerScoreboard.func_96513_c(Lnet/minecraft/src/ScorePlayerTeam;)V=|p_96513_1_
@@ -7065,8 +7088,8 @@ net/minecraft/src/TaskOnlineConnect.func_96580_a(Lnet/minecraft/src/TaskOnlineCo
net/minecraft/src/TaskOnlineConnect.func_96582_a(Ljava/lang/String;I)V=|p_96582_1_,p_96582_2_
net/minecraft/src/TaskOnlineConnect.func_96583_a(Lnet/minecraft/src/TaskOnlineConnect;Lnet/minecraft/src/NetClientHandler;)Lnet/minecraft/src/NetClientHandler;=|p_96583_0_,p_96583_1_
net/minecraft/src/TaskOnlineConnect.func_98172_a(Lnet/minecraft/src/TaskOnlineConnect;)Lnet/minecraft/src/GuiScreen;=|p_98172_0_
net/minecraft/src/TaskResetWorld.<init>(Lnet/minecraft/src/GuiScreenResetWorld;J)V=|p_i10011_1_,p_i10011_2_
net/minecraft/src/TaskWorldCreation.<init>(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V=|p_i10017_1_,p_i10017_2_,p_i10017_3_,p_i10017_4_
net/minecraft/src/TaskResetWorld.<init>(Lnet/minecraft/src/GuiScreenResetWorld;JLjava/lang/String;)V=|p_i23002_1_,p_i23002_2_,p_i23002_4_
net/minecraft/src/TaskWorldCreation.<init>(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V=|p_i23003_1_,p_i23003_2_,p_i23003_3_,p_i23003_4_,p_i23003_5_
net/minecraft/src/TcpConnection.<init>(Lnet/minecraft/src/ILogAgent;Ljava/net/Socket;Ljava/lang/String;Lnet/minecraft/src/NetHandler;)V=java/io/IOException|p_i11026_1_,p_i11026_2_,p_i11026_3_,p_i11026_4_
net/minecraft/src/TcpConnection.<init>(Lnet/minecraft/src/ILogAgent;Ljava/net/Socket;Ljava/lang/String;Lnet/minecraft/src/NetHandler;Ljava/security/PrivateKey;)V=java/io/IOException|p_i11027_1_,p_i11027_2_,p_i11027_3_,p_i11027_4_,p_i11027_5_
net/minecraft/src/TcpConnection.func_74424_a(Ljava/lang/String;[Ljava/lang/Object;)V=|p_74424_1_,p_74424_2_
@@ -7113,6 +7136,7 @@ net/minecraft/src/Tessellator.func_78386_a(FFF)V=|p_78386_1_,p_78386_2_,p_78386_
net/minecraft/src/Texture.<init>(Ljava/lang/String;IIIIIIII)V=|p_i11021_1_,p_i11021_2_,p_i11021_3_,p_i11021_4_,p_i11021_5_,p_i11021_6_,p_i11021_7_,p_i11021_8_,p_i11021_9_
net/minecraft/src/Texture.<init>(Ljava/lang/String;IIIIIIIILjava/awt/image/BufferedImage;)V=|p_i11023_1_,p_i11023_2_,p_i11023_3_,p_i11023_4_,p_i11023_5_,p_i11023_6_,p_i11023_7_,p_i11023_8_,p_i11023_9_,p_i11023_10_
net/minecraft/src/Texture.<init>(Ljava/lang/String;IIIIIIILjava/awt/image/BufferedImage;)V=|p_i11022_1_,p_i11022_2_,p_i11022_3_,p_i11022_4_,p_i11022_5_,p_i11022_6_,p_i11022_7_,p_i11022_8_,p_i11022_9_
net/minecraft/src/Texture.func_104062_b(IILnet/minecraft/src/Texture;)V=|p_104062_1_,p_104062_2_,p_104062_3_
net/minecraft/src/Texture.func_94272_a(Lnet/minecraft/src/Rect2i;I)V=|p_94272_1_,p_94272_2_
net/minecraft/src/Texture.func_94277_a(I)V=|p_94277_1_
net/minecraft/src/Texture.func_94278_a(Ljava/awt/image/BufferedImage;)V=|p_94278_1_
@@ -7172,7 +7196,6 @@ net/minecraft/src/TexturedQuad.func_78236_a(Lnet/minecraft/src/Tessellator;F)V=|
net/minecraft/src/ThreadClientSleep.<init>(Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V=|p_i3019_1_,p_i3019_2_
net/minecraft/src/ThreadConnectToOnlineServer.<init>(Lnet/minecraft/src/GuiSlotOnlineServerList;Lnet/minecraft/src/McoServer;)V=|p_i10009_1_,p_i10009_2_
net/minecraft/src/ThreadConnectToServer.<init>(Lnet/minecraft/src/GuiConnecting;Ljava/lang/String;I)V=|p_i3110_1_,p_i3110_2_,p_i3110_3_
net/minecraft/src/ThreadCreateOnlineWorldScreen.<init>(Lnet/minecraft/src/GuiScreenCreateOnlineWorld;)V=|p_i11008_1_
net/minecraft/src/ThreadDedicatedServer.<init>(Lnet/minecraft/src/DedicatedServer;)V=|p_i11000_1_
net/minecraft/src/ThreadDedicatedServer.run()V=|
net/minecraft/src/ThreadDownloadImage.<init>(Lnet/minecraft/src/ThreadDownloadImageData;Ljava/lang/String;Lnet/minecraft/src/IImageBuffer;)V=|p_i5000_1_,p_i5000_2_,p_i5000_3_
@@ -7218,6 +7241,8 @@ net/minecraft/src/TileEntityBeacon.func_94041_b(ILnet/minecraft/src/ItemStack;)Z
net/minecraft/src/TileEntityBeacon.func_94047_a(Ljava/lang/String;)V=|p_94047_1_
net/minecraft/src/TileEntityBeaconRenderer.func_76894_a(Lnet/minecraft/src/TileEntity;DDDF)V=|p_76894_1_,p_76894_2_,p_76894_4_,p_76894_6_,p_76894_8_
net/minecraft/src/TileEntityBeaconRenderer.func_82398_a(Lnet/minecraft/src/TileEntityBeacon;DDDF)V=|p_82398_1_,p_82398_2_,p_82398_4_,p_82398_6_,p_82398_8_
net/minecraft/src/TileEntityBrewingStand.func_102007_a(ILnet/minecraft/src/ItemStack;I)Z=|p_102007_1_,p_102007_2_,p_102007_3_
net/minecraft/src/TileEntityBrewingStand.func_102008_b(ILnet/minecraft/src/ItemStack;I)Z=|p_102008_1_,p_102008_2_,p_102008_3_
net/minecraft/src/TileEntityBrewingStand.func_70298_a(II)Lnet/minecraft/src/ItemStack;=|p_70298_1_,p_70298_2_
net/minecraft/src/TileEntityBrewingStand.func_70299_a(ILnet/minecraft/src/ItemStack;)V=|p_70299_1_,p_70299_2_
net/minecraft/src/TileEntityBrewingStand.func_70300_a(Lnet/minecraft/src/EntityPlayer;)Z=|p_70300_1_
@@ -7228,8 +7253,7 @@ net/minecraft/src/TileEntityBrewingStand.func_70310_b(Lnet/minecraft/src/NBTTagC
net/minecraft/src/TileEntityBrewingStand.func_70352_b(ILnet/minecraft/src/ItemStack;)I=|p_70352_1_,p_70352_2_
net/minecraft/src/TileEntityBrewingStand.func_70354_c(I)V=|p_70354_1_
net/minecraft/src/TileEntityBrewingStand.func_94041_b(ILnet/minecraft/src/ItemStack;)Z=|p_94041_1_,p_94041_2_
net/minecraft/src/TileEntityBrewingStand.func_94127_c(I)I=|p_94127_1_
net/minecraft/src/TileEntityBrewingStand.func_94128_d(I)I=|p_94128_1_
net/minecraft/src/TileEntityBrewingStand.func_94128_d(I)[I=|p_94128_1_
net/minecraft/src/TileEntityBrewingStand.func_94131_a(Ljava/lang/String;)V=|p_94131_1_
net/minecraft/src/TileEntityChest.func_70298_a(II)Lnet/minecraft/src/ItemStack;=|p_70298_1_,p_70298_2_
net/minecraft/src/TileEntityChest.func_70299_a(ILnet/minecraft/src/ItemStack;)V=|p_70299_1_,p_70299_2_
@@ -7274,6 +7298,8 @@ net/minecraft/src/TileEntityEnderChest.func_70315_b(II)Z=|p_70315_1_,p_70315_2_
net/minecraft/src/TileEntityEnderChest.func_70365_a(Lnet/minecraft/src/EntityPlayer;)Z=|p_70365_1_
net/minecraft/src/TileEntityEnderChestRenderer.func_76894_a(Lnet/minecraft/src/TileEntity;DDDF)V=|p_76894_1_,p_76894_2_,p_76894_4_,p_76894_6_,p_76894_8_
net/minecraft/src/TileEntityEnderChestRenderer.func_76899_a(Lnet/minecraft/src/TileEntityEnderChest;DDDF)V=|p_76899_1_,p_76899_2_,p_76899_4_,p_76899_6_,p_76899_8_
net/minecraft/src/TileEntityFurnace.func_102007_a(ILnet/minecraft/src/ItemStack;I)Z=|p_102007_1_,p_102007_2_,p_102007_3_
net/minecraft/src/TileEntityFurnace.func_102008_b(ILnet/minecraft/src/ItemStack;I)Z=|p_102008_1_,p_102008_2_,p_102008_3_
net/minecraft/src/TileEntityFurnace.func_70298_a(II)Lnet/minecraft/src/ItemStack;=|p_70298_1_,p_70298_2_
net/minecraft/src/TileEntityFurnace.func_70299_a(ILnet/minecraft/src/ItemStack;)V=|p_70299_1_,p_70299_2_
net/minecraft/src/TileEntityFurnace.func_70300_a(Lnet/minecraft/src/EntityPlayer;)Z=|p_70300_1_
@@ -7286,9 +7312,12 @@ net/minecraft/src/TileEntityFurnace.func_70398_a(Lnet/minecraft/src/ItemStack;)I
net/minecraft/src/TileEntityFurnace.func_70401_b(Lnet/minecraft/src/ItemStack;)Z=|p_70401_0_
net/minecraft/src/TileEntityFurnace.func_70403_d(I)I=|p_70403_1_
net/minecraft/src/TileEntityFurnace.func_94041_b(ILnet/minecraft/src/ItemStack;)Z=|p_94041_1_,p_94041_2_
net/minecraft/src/TileEntityFurnace.func_94127_c(I)I=|p_94127_1_
net/minecraft/src/TileEntityFurnace.func_94128_d(I)I=|p_94128_1_
net/minecraft/src/TileEntityFurnace.func_94128_d(I)[I=|p_94128_1_
net/minecraft/src/TileEntityFurnace.func_94129_a(Ljava/lang/String;)V=|p_94129_1_
net/minecraft/src/TileEntityHopper.func_102012_a(Lnet/minecraft/src/Hopper;Lnet/minecraft/src/IInventory;II)Z=|p_102012_0_,p_102012_1_,p_102012_2_,p_102012_3_
net/minecraft/src/TileEntityHopper.func_102013_b(Lnet/minecraft/src/IInventory;Lnet/minecraft/src/ItemStack;II)Z=|p_102013_0_,p_102013_1_,p_102013_2_,p_102013_3_
net/minecraft/src/TileEntityHopper.func_102014_c(Lnet/minecraft/src/IInventory;Lnet/minecraft/src/ItemStack;II)Lnet/minecraft/src/ItemStack;=|p_102014_0_,p_102014_1_,p_102014_2_,p_102014_3_
net/minecraft/src/TileEntityHopper.func_102015_a(Lnet/minecraft/src/IInventory;Lnet/minecraft/src/ItemStack;II)Z=|p_102015_0_,p_102015_1_,p_102015_2_,p_102015_3_
net/minecraft/src/TileEntityHopper.func_70298_a(II)Lnet/minecraft/src/ItemStack;=|p_70298_1_,p_70298_2_
net/minecraft/src/TileEntityHopper.func_70299_a(ILnet/minecraft/src/ItemStack;)V=|p_70299_1_,p_70299_2_
net/minecraft/src/TileEntityHopper.func_70300_a(Lnet/minecraft/src/EntityPlayer;)Z=|p_70300_1_
@@ -7298,7 +7327,6 @@ net/minecraft/src/TileEntityHopper.func_70307_a(Lnet/minecraft/src/NBTTagCompoun
net/minecraft/src/TileEntityHopper.func_70310_b(Lnet/minecraft/src/NBTTagCompound;)V=|p_70310_1_
net/minecraft/src/TileEntityHopper.func_94041_b(ILnet/minecraft/src/ItemStack;)Z=|p_94041_1_,p_94041_2_
net/minecraft/src/TileEntityHopper.func_94114_a(Lnet/minecraft/src/ItemStack;Lnet/minecraft/src/ItemStack;)Z=|p_94114_1_,p_94114_2_
net/minecraft/src/TileEntityHopper.func_94115_a(Lnet/minecraft/src/IInventory;I)I=|p_94115_1_,p_94115_2_
net/minecraft/src/TileEntityHopper.func_94117_a(Lnet/minecraft/src/IInventory;Lnet/minecraft/src/ItemStack;I)Lnet/minecraft/src/ItemStack;=|p_94117_1_,p_94117_2_,p_94117_3_
net/minecraft/src/TileEntityHopper.func_96114_a(Lnet/minecraft/src/IInventory;Lnet/minecraft/src/EntityItem;)Z=|p_96114_0_,p_96114_1_
net/minecraft/src/TileEntityHopper.func_96115_a(Ljava/lang/String;)V=|p_96115_1_
@@ -7360,6 +7388,11 @@ net/minecraft/src/TileEntitySpecialRenderer.func_82392_a(Ljava/lang/String;Ljava
net/minecraft/src/Timer.<init>(F)V=|p_i3005_1_
net/minecraft/src/TimerTaskMcoServerListUpdate.<init>(Lnet/minecraft/src/McoServerList;)V=|p_i11000_1_
net/minecraft/src/TimerTaskMcoServerListUpdate.<init>(Lnet/minecraft/src/McoServerList;Lnet/minecraft/src/McoServerListINNER1;)V=|p_i11001_1_,p_i11001_2_
net/minecraft/src/TimerTaskMcoServerListUpdate.func_101018_a(Ljava/util/List;)V=|p_101018_1_
net/minecraft/src/TimerTaskMcoServerListUpdateComparator.<init>(Lnet/minecraft/src/TimerTaskMcoServerListUpdate;Ljava/lang/String;)V=|p_i22000_1_,p_i22000_2_
net/minecraft/src/TimerTaskMcoServerListUpdateComparator.<init>(Lnet/minecraft/src/TimerTaskMcoServerListUpdate;Ljava/lang/String;Lnet/minecraft/src/McoServerListINNER1;)V=|p_i22001_1_,p_i22001_2_,p_i22001_3_
net/minecraft/src/TimerTaskMcoServerListUpdateComparator.compare(Ljava/lang/Object;Ljava/lang/Object;)I=|p_compare_1_,p_compare_2_
net/minecraft/src/TimerTaskMcoServerListUpdateComparator.func_102023_a(Lnet/minecraft/src/McoServer;Lnet/minecraft/src/McoServer;)I=|p_102023_1_,p_102023_2_
net/minecraft/src/Tuple.<init>(Ljava/lang/Object;Ljava/lang/Object;)V=|p_i3422_1_,p_i3422_2_
net/minecraft/src/ValueObject.func_96394_a(Ljava/lang/reflect/Field;)Z=|p_96394_0_
net/minecraft/src/ValueObjectList.func_98161_a(Ljava/lang/String;)Lnet/minecraft/src/ValueObjectList;=|p_98161_0_
@@ -7441,7 +7474,7 @@ net/minecraft/src/WeightedRandomMinecart.<init>(Lnet/minecraft/src/MobSpawnerBas
net/minecraft/src/WeightedRandomMinecart.<init>(Lnet/minecraft/src/MobSpawnerBaseLogic;Lnet/minecraft/src/NBTTagCompound;Ljava/lang/String;)V=|p_i11042_1_,p_i11042_2_,p_i11042_3_
net/minecraft/src/World.<init>(Lnet/minecraft/src/ISaveHandler;Ljava/lang/String;Lnet/minecraft/src/WorldProvider;Lnet/minecraft/src/WorldSettings;Lnet/minecraft/src/Profiler;Lnet/minecraft/src/ILogAgent;)V=|p_i11043_1_,p_i11043_2_,p_i11043_3_,p_i11043_4_,p_i11043_5_,p_i11043_6_
net/minecraft/src/World.<init>(Lnet/minecraft/src/ISaveHandler;Ljava/lang/String;Lnet/minecraft/src/WorldSettings;Lnet/minecraft/src/WorldProvider;Lnet/minecraft/src/Profiler;Lnet/minecraft/src/ILogAgent;)V=|p_i11044_1_,p_i11044_2_,p_i11044_3_,p_i11044_4_,p_i11044_5_,p_i11044_6_
net/minecraft/src/World.func_100002_v()I=|
net/minecraft/src/World.func_102026_a(Lnet/minecraft/src/Block;I)Z=|p_102026_1_,p_102026_2_
net/minecraft/src/World.func_72796_p(III)Lnet/minecraft/src/TileEntity;=|p_72796_1_,p_72796_2_,p_72796_3_
net/minecraft/src/World.func_72797_t(III)Z=|p_72797_1_,p_72797_2_,p_72797_3_
net/minecraft/src/World.func_72798_a(III)I=|p_72798_1_,p_72798_2_,p_72798_3_
@@ -7522,7 +7555,6 @@ net/minecraft/src/World.func_72900_e(Lnet/minecraft/src/Entity;)V=|p_72900_1_
net/minecraft/src/World.func_72901_a(Lnet/minecraft/src/Vec3;Lnet/minecraft/src/Vec3;Z)Lnet/minecraft/src/MovingObjectPosition;=|p_72901_1_,p_72901_2_,p_72901_3_
net/minecraft/src/World.func_72902_n(III)V=|p_72902_1_,p_72902_2_,p_72902_3_
net/minecraft/src/World.func_72904_c(IIIIII)Z=|p_72904_1_,p_72904_2_,p_72904_3_,p_72904_4_,p_72904_5_,p_72904_6_
net/minecraft/src/World.func_72906_B()V=net/minecraft/src/MinecraftException|
net/minecraft/src/World.func_72907_a(Ljava/lang/Class;)I=|p_72907_1_
net/minecraft/src/World.func_72908_a(DDDLjava/lang/String;FF)V=|p_72908_1_,p_72908_3_,p_72908_5_,p_72908_7_,p_72908_8_,p_72908_9_
net/minecraft/src/World.func_72909_d(IIIIII)V=|p_72909_1_,p_72909_2_,p_72909_3_,p_72909_4_,p_72909_5_,p_72909_6_
@@ -7581,6 +7613,7 @@ net/minecraft/src/World.func_72980_b(DDDLjava/lang/String;FFZ)V=|p_72980_1_,p_72
net/minecraft/src/World.func_82733_a(Ljava/lang/Class;Lnet/minecraft/src/AxisAlignedBB;Lnet/minecraft/src/IEntitySelector;)Ljava/util/List;=|p_82733_1_,p_82733_2_,p_82733_3_
net/minecraft/src/World.func_82734_g(II)I=|p_82734_1_,p_82734_2_
net/minecraft/src/World.func_82735_a(Lnet/minecraft/src/EntityMinecart;)Lnet/minecraft/src/IUpdatePlayerListBox;=|p_82735_1_
net/minecraft/src/World.func_72906_B()V=net/minecraft/src/MinecraftException|
net/minecraft/src/World.func_82738_a(J)V=|p_82738_1_
net/minecraft/src/World.func_82739_e(IIIII)V=|p_82739_1_,p_82739_2_,p_82739_3_,p_82739_4_,p_82739_5_
net/minecraft/src/World.func_82740_a(IIIIII)V=|p_82740_1_,p_82740_2_,p_82740_3_,p_82740_4_,p_82740_5_,p_82740_6_
@@ -7756,7 +7789,6 @@ net/minecraft/src/WorldManager.func_72710_a(III)V=|p_72710_1_,p_72710_2_,p_72710
net/minecraft/src/WorldManager.func_72711_b(III)V=|p_72711_1_,p_72711_2_,p_72711_3_
net/minecraft/src/WorldManager.func_82746_a(IIIII)V=|p_82746_1_,p_82746_2_,p_82746_3_,p_82746_4_,p_82746_5_
net/minecraft/src/WorldManager.func_85102_a(Lnet/minecraft/src/EntityPlayer;Ljava/lang/String;DDDFF)V=|p_85102_1_,p_85102_2_,p_85102_3_,p_85102_5_,p_85102_7_,p_85102_9_,p_85102_10_
net/minecraft/src/WorldProvider.func_100003_a(J)I=|p_100003_1_
net/minecraft/src/WorldProvider.func_76558_a(Lnet/minecraft/src/World;)V=|p_76558_1_
net/minecraft/src/WorldProvider.func_76559_b(J)I=|p_76559_1_
net/minecraft/src/WorldProvider.func_76560_a(FF)[F=|p_76560_1_,p_76560_2_
+14084 -13995
View File
File diff suppressed because it is too large. Load diff
+6 -5
View File
@@ -38,8 +38,8 @@ DirNatives = %(DirJars)s/bin/natives
Client = %(DirJars)s/bin/minecraft.jar
Server = %(DirJars)s/minecraft_server.jar
LWJGL = %(DirJars)s/bin/jinput.jar,%(DirJars)s/bin/lwjgl.jar,%(DirJars)s/bin/lwjgl_util.jar
MD5Client = d39baadeeb124a29b2542d778713493f
MD5Server = 22223b1d00b72cc51fdb8b7cdd45f9c1
MD5Client = 6897c3287fb971c9f362eb3ab20f5ddd
MD5Server = c4e1bf89e834bd3670c7bf8f13874bc6
[RETROGUARD]
Location = %(DirRuntime)s/bin/retroguard.jar
@@ -125,8 +125,8 @@ LogFile = %(DirLogs)s/mcp.log
LogFileErr = %(DirLogs)s/mcperr.log
UpdateUrl =
IgnoreUpdate = %(DirBin)s,%(DirLib)s,%(DirLogs)s,%(DirModSrc)s,%(DirReobf)s,%(DirSrc)s,%(DirTemp)s,%(DirEclipse)s/Client/bin,%(DirEclipse)s/Server/bin,%(DirJars)s/world,%(DirJars)s/saves,%(DirJars)s/resources
RGIndex = 100000
ParamIndex = 20000
RGIndex = 104000
ParamIndex = 23000
[ASTYLE]
AstyleConfig = %(DirConf)s/astyle.cfg
@@ -150,8 +150,9 @@ CmdAStyle = %s --suffix=none --quiet --options={conffile} {classes}
CmdRG = %s -cp "{classpath}" RetroGuard -searge {conffile}
CmdRGReobf = %s -cp "{classpath}" RetroGuard -notch {conffile}
CmdJadretro = %s -jar %s {targetdir}
CmdFernflower = %s -jar %s -din=0 -rbr=0 -dgs=1 -asc=1 -log=WARN {indir} {outdir}
CmdFernflower = %s -Xmx512M -jar %s -din=0 -rbr=0 -dgs=1 -asc=1 -log=WARN {indir} {outdir}
CmdExceptor = %s -jar %s {input} {output} {conf} {log}
CmdRecomp = %s -encoding UTF-8 -Xlint:-options -deprecation -g -source 1.6 -target 1.6 -classpath "{classpath}" -sourcepath {sourcepath} -d {outpath} {pkgs}
CmdRecompScalac = %s -encoding UTF-8 -deprecation -target:jvm-1.6 -classpath "{classpath}" -sourcepath {sourcepath} -d {outpath} {pkgs}
CmdStartSrv = %s -Xincgc -Xms1024M -Xmx1024M -cp "{classpath}" net.minecraft.server.MinecraftServer
CmdStartClt = %s -Xincgc -Xms1024M -Xmx1024M -cp "{classpath}" -Djava.library.path={natives} Start
+396 -83
View File
@@ -1,4 +1,14 @@
searge,name,side,desc
func_100008_d,isDurationMax,2,"Returns true if duration is at maximum, false otherwise."
func_100009_j_,getFacing,2,
func_100011_g,getIsPotionDurationMax,2,
func_100012_b,setPotionDurationMax,2,Toggle the isPotionDurationMax field.
func_100015_a,isKeyDown,2,Returns whether the specified key binding is currently being pressed.
func_102007_a,canInsertItem,2,"Returns true if automation can insert the given item in the given slot from the given side. Args: Slot, item, side"
func_102008_b,canExtractItem,2,"Returns true if automation can extract the given item in the given slot from the given side. Args: Slot, item, side"
func_102013_b,canExtractItemFromInventory,2,
func_102026_a,isBlockTopFacingSurfaceSolid,2,"Performs check to see if the block is a normal, solid block, or if the metadata of the block indicates that its facing puts its solid side upwards. (inverted stairs, for example)"
func_102028_d,isSplashPotionEffect,2,
func_70000_a,addServerStatsToSnooper,2,
func_70001_b,addServerTypeToSnooper,2,
func_70002_Q,isSnooperEnabled,2,Returns whether snooping is enabled or not.
@@ -183,12 +193,6 @@ func_70361_i,getRandomStackFromInventory,2,
func_70364_a,openChest,2,
func_70365_a,isUseableByPlayer,2,
func_70366_b,closeChest,2,
func_70382_c,getMobEntity,2,will create the entity from the internalID the first time it is accessed
func_70383_a,writeNBTTagsTo,2,
func_70384_a,getMobID,2,
func_70385_a,setMobID,2,
func_70386_b,anyPlayerInRange,2,Returns true if there is a player in range (using World.getClosestPlayer)
func_70387_f,updateDelay,2,Sets the delay before a new spawn (base delay of 200 + random number up to 600).
func_70397_c,getCookProgressScaled,2,Returns an integer between 0 and the passed value representing how close the current item is to being completely cooked
func_70398_a,getItemBurnTime,2,"Returns the number of ticks that the supplied fuel item will keep the furnace burning, or 0 if the item isn't fuel"
func_70399_k,smeltItem,2,Turn one item from the furnace source stack into the appropriate smelted item in the furnace result stack
@@ -235,14 +239,12 @@ func_70471_c,setCurrentRecipeIndex,2,
func_70485_a,setAssociatedChest,2,
func_70486_a,loadInventoryFromNBT,2,
func_70487_g,saveInventoryToNBT,2,
func_70490_h,isMinecartPowered,2,Is this minecart powered (Fuel > 0)
func_70491_i,getDamage,2,Gets the current amount of damage the minecart has taken. Decreases over time. The cart breaks when this is over 40.
func_70492_c,setDamage,2,Sets the current amount of damage the minecart has taken. Decreases over time. The cart breaks when this is over 40.
func_70493_k,getRollingDirection,2,Gets the rolling direction the cart rolls while being attacked. Can be 1 or -1.
func_70494_i,setRollingDirection,2,Sets the rolling direction the cart rolls while being attacked. Can be 1 or -1.
func_70496_j,getRollingAmplitude,2,Gets the rolling amplitude the cart rolls while being attacked.
func_70497_h,setRollingAmplitude,2,Sets the rolling amplitude the cart rolls while being attacked.
func_70498_d,setMinecartPowered,2,Set if this minecart is powered (Fuel > 0)
func_70515_d,explode,2,
func_70518_d,onValidSurface,2,checks to make sure painting can be placed there
func_70526_d,getXpValue,2,Returns the XP value of this XP orb.
@@ -254,7 +256,6 @@ func_70536_a,setParticleTextureIndex,2,Public method to set private field partic
func_70537_b,getFXLayer,2,
func_70538_b,setRBGColorF,2,
func_70539_a,renderParticle,2,
func_70540_h,getParticleTextureIndex,2,
func_70541_f,multipleParticleScaleBy,2,
func_70542_f,getGreenColorF,2,
func_70543_e,multiplyVelocity,2,
@@ -455,7 +456,7 @@ func_70950_c,addDefaultEquipmentAndRecipies,2,"based on the villagers profession
func_70951_a,getRandomSizedStack,2,
func_70965_a,attackEntityFromPart,2,
func_70967_k,setNewTarget,2,Sets a new target for the flight AI. It can be a random coordinate or a nearby player.
func_70968_i,getDragonHealth,2,Returns the health points of the dragon.
func_70968_i,getBossHealth,2,Returns the health points of the dragon.
func_70969_j,updateDragonEnderCrystal,2,Updates the state of the enderdragon's current endercrystal.
func_70970_a,collideWithEntities,2,Pushes all entities inside the list away from the enderdragon.
func_70971_b,attackEntitiesInList,2,"Attacks all entities inside this list, dealing 5 hearts of damage."
@@ -470,7 +471,6 @@ func_70999_a,wakeUpPlayer,2,Wake up the player if they're sleeping.
func_71000_j,addMovementStat,2,"Adds a value to a movement statistic field - like run, walk, swin or climb."
func_71001_a,onItemPickup,2,"Called whenever an item is picked up from walking over it. Args: pickedUpEntity, stackSize"
func_71002_c,displayGUIEnchantment,2,
func_71003_h,isPVPEnabled,2,returns if pvp is enabled or not
func_71004_bE,respawnPlayer,2,
func_71005_bN,getInventoryEnderChest,2,Returns the InventoryEnderChest of this player.
func_71006_a,displayGUIDispenser,2,Displays the dipsenser GUI for the passed in dispenser entity. Args: TileEntityDispenser
@@ -638,7 +638,7 @@ func_71267_a,saveAllWorlds,2,par1 indicates if a log message should be output.
func_71268_U,getCanSpawnAnimals,2,
func_71269_o,setTexturePack,2,
func_71270_I,getFolderName,2,
func_71272_O,deleteWorldAndStopServer,2,WARNING : directly calls getActiveAnvilConverter().deleteWorldDirectory(theWorldServer[0].getSaveHandler().getSaveDirectoryName());
func_71272_O,deleteWorldAndStopServer,2,WARNING : directly calls getActiveAnvilConverter().deleteWorldDirectory(theWorldServer[0].getSaveHandler().getWorldDirectoryName());
func_71273_Y,getMOTD,2,
func_71274_v,getServerMOTD,2,Returns the server message of the day
func_71275_y,getMaxPlayers,2,Returns the maximum number of players allowed on the server.
@@ -674,7 +674,6 @@ func_71364_i,setIngameNotInFocus,2,"Resets the player keystate, disables the ing
func_71365_K,screenshotListener,2,checks if keys are down
func_71366_a,displayDebugInfo,2,
func_71367_a,setServer,2,
func_71368_v,isDebugInfoEnabled,2,
func_71369_N,getGLMaximumTextureSize,2,Used in the usage snooper.
func_71370_a,resize,2,Called to resize the current screen.
func_71371_a,launchIntegratedServer,2,"Arguments: World foldername, World ingame name, WorldSettings"
@@ -802,7 +801,6 @@ func_71764_a,addPendingConnection,2,
func_71765_d,getMyPort,2,
func_71766_a,processPendingConnections,2,
func_71767_c,getInetAddress,2,
func_71770_b,isLocalHost,2,
func_71779_a,getIV,2,
func_71780_b,getParameters,2,
func_71783_a,getKey,2,
@@ -842,13 +840,13 @@ func_71854_d,canBlockStay,2,Can this block stay at this position. Similar to ca
func_71855_c,isProvidingStrongPower,2,"Returns true if the block is emitting direct/strong redstone power on the specified side. Args: World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) when checking the bottom of the block."
func_71856_s_,getRenderBlockPass,2,Returns which pass should this block be rendered on. 0 for solids and 1 for alpha
func_71857_b,getRenderType,2,The type of render function that is called for this block
func_71858_a,getBlockTextureFromSideAndMetadata,2,"From the specified side and block metadata retrieves the blocks texture. Args: side, metadata"
func_71858_a,getIcon,2,"From the specified side and block metadata retrieves the blocks texture. Args: side, metadata"
func_71859_p_,tickRate,2,How many world ticks before ticking
func_71860_a,onBlockPlacedBy,2,Called when the block is placed in the world.
func_71861_g,onBlockAdded,2,"Called whenever the block is added into the world. Args: world, x, y, z"
func_71862_a,randomDisplayTick,2,A randomly called display update to be able to add particles or other items for display
func_71863_a,onNeighborBlockChange,2,"Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are their own) Args: x, y, z, neighbor blockID"
func_71864_b,setUnlocalizedName,2,"Sets the unlocalized name of the block to the string passed as a parameter, prefixed by ""tile."""
func_71864_b,setUnlocalizedName,2,
func_71865_a,isProvidingWeakPower,2,"Returns true if the block is emitting indirect/weak redstone power on the specified side. If isBlockNormalCube returns true, standard redstone propagation rules will apply instead and this will not be called. Args: World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) when checking the bottom of the block."
func_71866_a,onFallenUpon,2,Block's chance to react to an entity falling on it.
func_71867_k,onBlockDestroyedByExplosion,2,Called upon the block being destroyed by an explosion
@@ -895,7 +893,6 @@ func_71907_b,setTickRandomly,2,Sets whether this block type will receive random
func_71908_a,getPlayerRelativeBlockHardness,2,"Gets the hardness of block at the given coordinates in the given world, relative to the ability of the given EntityPlayer."
func_71910_a,quantityDroppedWithBonus,2,Returns the usual quantity dropped by the block plus a bonus of 1 to 'i' (inclusive).
func_71911_a_,getSelectedBoundingBoxFromPool,2,Returns the bounding box of the wired rectangular prism to render.
func_71912_p,setRequiresSelfNotify,2,Blocks with this attribute will not notify all near blocks when it's metadata change. The default behavior is always notify every neightbor block when anything changes.
func_71913_a,canCollideCheck,2,"Returns whether this block is collideable based on the arguments passed in Args: blockMetaData, unknownFlag"
func_71914_a,dropBlockAsItemWithChance,2,Drops the block items with a specified chance of dropping the specified items
func_71915_e,getMobilityFlag,2,"Returns the mobility information of the block, 0 = free, 1 = can't push but can move over, 2 = total immobility and stop pistons"
@@ -963,13 +960,10 @@ func_72172_n,notifyWireNeighborsOfNeighborChange,2,"Calls World.notifyBlocksOfNe
func_72173_e,isPowerProviderOrWire,2,"Returns true if redstone wire can connect to the specified block. Params: World, X, Y, Z, side (not a normal notch-side, this can be 0, 1, 2, 3 or -1)"
func_72176_l,glow,2,The redstone ore glows.
func_72177_n,sparkle,2,The redstone ore sparkles.
func_72179_a,isPoweredBlockRail,2,Return true if the blocks passed is a power related rail.
func_72180_d_,isRailBlockAt,2,"Returns true if the block at the coordinates of world passed is a valid rail block (current is rail, powered or detector)."
func_72181_a,refreshTrackShape,2,Completely recalculates the track shape based on neighboring tracks
func_72182_a,isNeighborRailPowered,2,"Powered minecart rail is conductive like wire, so check for powered neighbors"
func_72183_n,isPowered,2,Returns true if the block is power related rail.
func_72184_d,isRailBlock,2,"Return true if the parameter is a blockID for a valid rail block (current is rail, powered or detector)."
func_72185_a,isRailPassingPower,2,Returns true if the specified rail is passing power to its neighbor
func_72187_e,setStateIfMinecartInteractsWithRail,2,"Update the detector rail power state if a minecart enter, stays or leave the block."
func_72190_l,tryToFall,2,If there is space to fall below will start this block falling
func_72191_e_,canFallBelow,2,Checks to see if the sand can fall into the block below it
@@ -993,7 +987,7 @@ func_72211_e,getSmallestFlowDecay,2,"getSmallestFlowDecay(World world, intx, int
func_72215_l,setNotStationary,2,Changes the block ID to that of an updating fluid.
func_72216_n,isFlammable,2,Checks to see if the block is flammable.
func_72217_d,getDirection,2,Returns the orentation value from the specified metadata
func_72220_e,ignoreTick,2,
func_72220_e,getInputStrength,2,"Returns the signal strength at one input of the block. Args: world, X, Y, Z, side"
func_72224_c,isFenceGateOpen,2,Returns if the fence gate is open according to its metadata.
func_72225_b_,isBedOccupied,2,Return whether or not the bed is occupied.
func_72226_b,getNearestEmptyChunkCoordinates,2,Gets the nearest empty chunk coordinates for the player to wake up from a bed into.
@@ -1361,17 +1355,16 @@ func_72813_a,getLightValueExt,2,Get light value with flag
func_72819_i,getWeightedThunderStrength,2,
func_72820_D,getWorldTime,2,
func_72821_m,notifyBlockOfNeighborChange,2,"Notifies a block that one of its neighbor change to the specified type Args: x, y, z, blockID"
func_72822_b,setBlock,2,"Sets the block to the specified blockID at the block coordinates Args x, y, z, blockID"
func_72823_a,setItemData,2,"Assigns the given String id to the given MapDataBase using the MapStorage, removing any existing ones of the same id."
func_72824_f,getCloudColour,2,
func_72825_h,getTopSolidOrLiquidBlock,2,"Finds the highest block on the x, z coordinate that is solid and returns its y coord. Args x, z"
func_72826_c,getCelestialAngle,2,calls calculateCelestialAngle
func_72827_u,getProviderName,2,"Returns the name of the current chunk provider, by calling chunkprovider.makeString()"
func_72828_b,unloadEntities,2,Adds a list of entities to be unloaded on the next pass of World.updateEntities()
func_72829_c,isAABBNonEmpty,2,Returns true if there are any blocks in the region constrained by an AxisAlignedBB
func_72829_c,checkBlockCollision,2,Returns true if there are any blocks in the region constrained by an AxisAlignedBB
func_72830_b,isAABBInMaterial,2,checks if the given AABB is in the material given. Used while swimming.
func_72831_a,rayTraceBlocks_do_do,2,
func_72832_d,setBlockAndMetadataWithNotify,2,"Sets the block ID and metadata, then notifies neighboring blocks of the change Params: x, y, z, BlockID, Metadata"
func_72832_d,setBlock,2,"Sets the block ID and metadata at a given location. Args: X, Y, Z, new block ID, new metadata, flags. Flag 1 will cause a block update. Flag 2 will send the change to clients (you almost always want this). Flag 4 prevents the block from being re-rendered, if this is a client world. Flags can be added together."
func_72833_a,getSkyColor,2,Calculates the color for the skybox
func_72834_c,canBlockFreeze,2,"checks to see if a given block is both water, and cold enough to freeze - if the par4 boolean is set, this will only return true if there is a non-water block immediately adjacent to the specified block"
func_72835_b,tick,2,Runs a single tick for the world
@@ -1379,7 +1372,7 @@ func_72836_a,scheduleBlockUpdate,2,Schedules a tick to a block with a delay (Mos
func_72837_a,setBlockTileEntity,2,"Sets the TileEntity for a given block in X, Y, Z coordinates"
func_72838_d,spawnEntityInWorld,2,Called to place all entities as part of a world
func_72839_b,getEntitiesWithinAABBExcludingEntity,2,"Will get all entities within the specified AABB excluding the one passed into it. Args: entityToExclude, aabb"
func_72840_a,getAllCollidingBoundingBoxes,2,calculates and returns a list of colliding bounding boxes within a given AABB
func_72840_a,getCollidingBlockBounds,2,calculates and returns a list of colliding bounding boxes within a given AABB
func_72841_b,getUniqueDataId,2,Returns an unique new data id from the MapStorage for the given prefix and saves the idCounts map to the 'idcounts' file.
func_72842_a,getBlockDensity,2,"Gets the percentage of real blocks within within a bounding box, along a specified vector."
func_72843_D,setRandomSeed,2,puts the World Random seed to a specific state dependant on the inputs
@@ -1394,14 +1387,12 @@ func_72851_f,notifyBlockChange,2,"The block type change and need to notify other
func_72852_a,addTileEntity,2,
func_72853_d,getMoonPhase,2,
func_72854_c,updateAllPlayersSleepingFlag,2,Updates the flag that indicates whether or not all players in the world are sleeping.
func_72855_b,checkIfAABBIsClear,2,"Returns true if there are no solid, live entities in the specified AxisAlignedBB"
func_72855_b,checkNoEntityCollision,2,"Returns true if there are no solid, live entities in the specified AxisAlignedBB"
func_72856_b,getClosestVulnerablePlayerToEntity,2,"Returns the closest vulnerable player to this entity within the given radius, or null if none is found"
func_72857_a,findNearestEntityWithinAABB,2,
func_72858_w,canSnowAt,2,Tests whether or not snow can be placed at a given location
func_72859_e,setBlockWithNotify,2,"Sets a block and notifies relevant systems with the block change Args: x, y, z, blockID"
func_72860_G,getSaveHandler,2,Returns this world's current save handler
func_72861_E,getSpawnPoint,2,Returns the coordinates of the spawn point
func_72862_i,markBlockForRenderUpdate2,2,"On the client, re-renders this block. On the server, does nothing. Appears to be redundant."
func_72863_F,getChunkProvider,2,gets the IChunkProvider this world uses.
func_72864_z,isBlockIndirectlyGettingPowered,2,"Used to see if one of the blocks next to you or your block is getting power from a neighboring block. Used by items like TNT or Doors so they don't have redstone going straight into them. Args: x, y, z"
func_72865_a,getPathEntityToEntity,2,
@@ -1410,17 +1401,15 @@ func_72867_j,getRainStrength,2,Not sure about this actually. Reverting this one
func_72868_a,addLoadedEntities,2,"adds entities to the loaded entities list, and loads thier skins."
func_72869_a,spawnParticle,2,"Spawns a particle. Args particleName, x, y, z, velX, velY, velZ"
func_72870_g,updateEntity,2,Will update the entity in the world if the chunk the entity is in is currently loaded. Args: entity
func_72871_y,isBlockGettingPowered,2,"Whether one of the neighboring blocks is putting power into this block. Args: x, y, z"
func_72872_a,getEntitiesWithinAABB,2,"Returns all entities of the specified class type which intersect with the AABB. Args: entityClass, aabb"
func_72873_a,doChunksNearChunkExist,2,Checks if any of the chunks within distance (argument 4) blocks of the given block exist
func_72874_g,getPrecipitationHeight,2,Gets the height to which rain/snow will fall. Calculates it if not already stored.
func_72875_a,isMaterialInBB,2,Returns true if the given bounding box contains the given material
func_72876_a,createExplosion,2,"Creates an explosion. Args: entity, x, y, z, strength"
func_72877_b,setWorldTime,2,Sets the world time.
func_72878_l,isBlockIndirectlyProvidingPowerTo,2,"Is a block next to you getting powered (if its an attachable block) or is it providing power directly to you. Args: x, y, z, direction"
func_72878_l,getIndirectPowerLevelTo,2,"Gets the power level from a certain block face. Args: x, y, z, direction"
func_72879_k,isBlockProvidingPowerTo,2,"Is this block powering in the specified direction Args: x, y, z, direction"
func_72880_h,getStarBrightness,2,How bright are stars in the sky
func_72881_d,setBlockMetadata,2,Set the metadata of a block in global coordinates
func_72882_A,sendQuittingDisconnectingPacket,2,"If on MP, sends a quitting packet."
func_72883_k,getFullBlockLightValue,2,Does the same as getBlockLightValue_do but without checking if its not a normal block
func_72884_u,isBlockFreezable,2,checks to see if a given block is both water and is cold enough to freeze
@@ -1434,7 +1423,6 @@ func_72891_a,setAllowedSpawnTypes,2,Set which types of mobs are allowed to spawn
func_72892_b,scheduleBlockUpdateFromLoad,2,Schedules a block update from the saved information in a chunk. Called when the chunk is loaded.
func_72893_g,tickBlocksAndAmbiance,2,plays random cave ambient sounds and runs updateTick on random blocks within each chunk in the vacinity of a player
func_72894_k,setRainStrength,2,
func_72895_f,computeBlockLightValue,2,
func_72896_J,isRaining,2,Returns true if the current rain strength is greater than 0.2
func_72897_h,joinEntityInSurroundings,2,spwans an entity and loads surrounding chunks
func_72898_h,notifyBlocksOfNeighborChange,2,"Notifies neighboring blocks that this specified block changed Args: x, y, z, blockID"
@@ -1456,11 +1444,11 @@ func_72913_w,toggleRain,2,
func_72914_a,addWorldInfoToCrashReport,2,Adds some basic stats of the world to the given crash report.
func_72915_b,setLightValue,2,"Sets the light value either into the sky map or block map depending on if enumSkyBlock is set to sky or block. Args: enumSkyBlock, x, y, z, lightValue"
func_72916_c,chunkExists,2,"Returns whether a chunk exists at chunk coordinates x, y"
func_72917_a,checkIfAABBIsClearExcludingEntity,2,"Returns true if there are no solid, live entities in the specified AxisAlignedBB, excluding the given entity"
func_72917_a,checkNoEntityCollision,2,"Returns true if there are no solid, live entities in the specified AxisAlignedBB, excluding the given entity"
func_72918_a,handleMaterialAcceleration,2,handles the acceleration of an object whilst in water. Not sure if it is used elsewhere.
func_72919_O,getHorizon,2,Returns horizon height for use in rendering the sky.
func_72920_a,getPendingBlockUpdates,2,
func_72921_c,setBlockMetadataWithNotify,2,"Sets the blocks metadata and if set will then notify blocks that this block changed. Args: x, y, z, metadata"
func_72921_c,setBlockMetadataWithNotify,2,"Sets the blocks metadata and if set will then notify blocks that this block changed, depending on the flag. Args: x, y, z, metadata, flag. See setBlock for flag description"
func_72922_b,getFirstUncoveredBlock,2,"Returns the block ID of the first block at this (x,z) location with air above it, searching from sea level upwards."
func_72923_a,obtainEntitySkin,2,"Start the skin for this entity downloading, if necessary, and increment its reference counter"
func_72924_a,getPlayerEntityByName,2,Find a player by name in this world.
@@ -1469,7 +1457,6 @@ func_72926_e,playAuxSFX,2,See description for func_72706_a.
func_72927_d,blockHasTileEntity,2,Checks if a block at a given position should have a tile entity.
func_72928_a,markTileEntityForDespawn,2,adds tile entity to despawn list (renamed from markEntityForDespawn)
func_72929_e,getCelestialAngleRadians,2,Return getCelestialAngle()*2*PI
func_72930_a,setBlockAndMetadataWithUpdate,2,"Sets the block ID and metadata of a block, optionally marking it as needing update. Args: X,Y,Z, blockID, metadata, needsUpdate"
func_72931_a,canPlaceEntityOnSide,2,Returns true if the given Entity can be placed on the given side of the given block position.
func_72932_q,removeBlockTileEntity,2,"Removes the TileEntity for a given block in X,Y,Z coordinates"
func_72933_a,rayTraceBlocks,2,"ray traces all blocks, including non-collideable ones"
@@ -1488,10 +1475,8 @@ func_72945_a,getCollidingBoundingBoxes,2,"Returns a list of bounding boxes that
func_72946_b,findClosestStructure,2,Returns the location of the closest structure of the specified type. If not found returns null.
func_72947_a,calculateInitialWeather,2,Called from World constructor to set rainingStrength and thunderingStrength
func_72948_g,getFogColor,2,Returns vector(ish) with R/G/B for fog
func_72949_a,computeSkyLightValue,2,
func_72950_A,setSpawnLocation,2,
func_72951_B,canLightningStrikeAt,2,
func_72952_b,getBlockLightOpacity,2,
func_72953_d,isAnyLiquid,2,Returns if any of the blocks within the aabb are liquids. Args: aabb
func_72954_a,addWorldAccess,2,Adds a IWorldAccess to the list of worldAccesses
func_72955_a,tickUpdates,2,Runs through the list of updates to run and ticks them
@@ -1500,7 +1485,6 @@ func_72957_l,getBlockLightValue,2,Gets the light value of a block location
func_72958_C,isBlockHighHumidity,2,"Checks to see if the biome rainfall values for a given x,y,z coordinate set are extremely high"
func_72959_q,getWorldChunkManager,2,
func_72960_a,setEntityState,2,sends a Packet 38 (Entity Status) to all tracked players of that entity
func_72961_c,setBlockAndMetadata,2,Sets the block ID and metadata of a block in global coordinates
func_72962_a,canMineBlock,2,Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here.
func_72963_a,initialize,2,
func_72964_e,getChunkFromChunkCoords,2,"Returns back a chunk looked up by chunk coordinates Args: x, y"
@@ -1526,6 +1510,7 @@ func_73025_a,doPreChunk,2,
func_73026_a,getEntityList,2,
func_73027_a,addEntityToWorld,2,Add an ID to Entity mapping to entityHashSet
func_73028_b,removeEntityFromWorld,2,
func_73029_E,doVoidFogParticles,2,
func_73030_b,getEntitySpawnQueue,2,
func_73031_a,invalidateBlockReceiveRegion,2,"Invalidates an AABB region of blocks from the receive queue, in the event that the block has been modified client-side in the intervening 80 receive ticks."
func_73039_n,getEntityTracker,2,Gets the EntityTracker
@@ -1671,6 +1656,7 @@ func_73463_g,getChatVisibility,2,
func_73473_d,getText,2,
func_73475_d,getIsServer,2,Get whether this is a server
func_73489_c,getMetadata,2,
func_73509_c,getWatchedMetadata,2,
func_73568_g,getEffectY,2,
func_73569_h,getEffectZ,2,
func_73570_d,getSoundName,2,
@@ -1681,19 +1667,11 @@ func_73580_b,getChunkPosZ,2,
func_73581_d,getNumberOfChunkInPacket,2,
func_73582_a,getChunkPosX,2,
func_73583_c,getChunkCompressedData,2,
func_73593_d,getCompressedChunkData,2,
func_73594_a,getMapChunkData,2,
func_73641_d,connectToNeighbor,2,"The specified neighbor has just formed a new connection, so update accordingly"
func_73642_a,isMinecartTrack,2,
func_73643_c,canConnectFrom,2,Determines whether or not the target rail can connect to this rail
func_73644_a,refreshConnectedTracks,2,"Neighboring tracks have potentially been broken, so prune the connected track list"
func_73645_a,setConnections,2,
func_73646_c,canConnectTo,2,Determines whether or not the track can bend to meet the specified rail
func_73647_b,isConnectedTo,2,
func_73648_a,getMinecartTrackLogic,2,
func_73649_b,isInTrack,2,Returns true if the specified block is in the same railway.
func_73650_a,getAdjacentTrackCount,2,Get the number of adjacent tracks.
func_73651_b,getAdjacentTracks,2,
func_73652_a,refreshTrackShape,2,Completely recalculates the track shape based on neighboring tracks and power state
func_73607_d,getPlayerVelocityX,2,Gets the X velocity of the player being pushed by the explosion.
func_73608_g,getPlayerVelocityZ,2,Gets the Z velocity of the player being pushed by the explosion.
func_73609_f,getPlayerVelocityY,2,Gets the Y velocity of the player being pushed by the explosion.
func_73660_a,update,2,Updates the JList with a new model.
func_73665_c,getPropertiesFile,2,Returns this PropertyManager's file object used for property saving.
func_73666_a,logMessageAndSave,2,logs an info message then calls saveSettingsToFile Yes this appears to be a potential stack overflow - these 2 functions call each other repeatdly if an exception occurs.
@@ -1714,7 +1692,6 @@ func_73688_c,parse,2,
func_73689_b,setBanReason,2,
func_73690_c,getBannedBy,2,
func_73691_b,setBanEndDate,2,
func_73699_a,init,2,Initialises the console logger.
func_73703_b,saveToFile,2,par1: include header
func_73704_a,isBanned,2,
func_73705_d,removeExpiredBans,2,
@@ -1825,6 +1802,7 @@ func_73879_b,mouseMovedOrUp,2,"Called when the mouse is moved or a mouse button
func_73892_a,getSentHistory,2,"input is relative and is applied directly to the sentHistoryCursor so -1 is the previous message, 1 is the next message from the current cursor position"
func_73895_u_,completePlayerName,2,Autocompletes player name
func_73906_g,wakeEntity,2,Wakes the entity from the bed
func_73907_g,getLeftBorder,2,Gets the distance from the left border of the window to left border of the controls screen
func_73912_g,makeUseableName,2,"Makes a the name for a world save folder based on your world name, replacing specific characters for _s and appending -s to the end until a free name is available."
func_73914_h,updateButtonText,2,
func_73945_e,copyLinkToClipboard,2,Copies the link to the system clipboard.
@@ -2493,12 +2471,12 @@ func_75756_e,getSaveHandler,2,returns null if no saveHandler is relevent (eg. SM
func_75757_d,loadWorldInfo,2,Loads and returns the world info
func_75758_b,getMapFileFromName,2,Gets the file location of the given map
func_75759_a,flush,2,"Called to flush all changes to disk, waiting for them to complete."
func_75760_g,getSaveDirectoryName,2,Returns the name of the directory where world information is saved.
func_75760_g,getWorldDirectoryName,2,Returns the name of the directory where world information is saved.
func_75761_a,saveWorldInfo,2,Saves the passed in world info.
func_75762_c,checkSessionLock,2,Checks the session lock to prevent save collisions
func_75763_a,getChunkLoader,2,Returns the chunk loader with the provided world provider
func_75764_a,getPlayerData,2,Gets the player data for the given playername as a NBTTagCompound.
func_75765_b,getSaveDirectory,2,gets the File object corresponding to the base directory of this save (saves/404 for a save called 404 etc)
func_75765_b,getWorldDirectory,2,Gets the File object corresponding to the base directory of this world.
func_75766_h,setSessionLock,2,Creates a session lock file for this process
func_75773_a,canContinue,2,Determine if a specific AI Task should continue being executed.
func_75774_a,onUpdateTasks,2,
@@ -2537,6 +2515,7 @@ func_75820_a,writeChunkToNBT,2,"Writes the Chunk passed as an argument to the NB
func_75821_a,writeChunkNBTTags,2,
func_75822_a,checkedReadChunkFromNBT,2,Wraps readChunkFromNBT. Checks the coordinates and several NBT tags.
func_75823_a,readChunkFromNBT,2,Reads the data stored in the passed NBTTagCompound and creates a Chunk with that data in the passed World. Returns the created Chunk.
func_75824_a,addChunkToPending,2,
func_75829_a,distanceTo,2,Returns the linear distance to another path point
func_75830_a,makeHash,2,
func_75831_a,isAssigned,2,Returns true if this point has already been assigned to a path
@@ -2590,6 +2569,7 @@ func_75904_a,getInts,2,"Returns a list of integer values generated by this layer
func_75905_a,initWorldGenSeed,2,Initialize layer's local worldGenSeed based on its own baseSeed and the world's global seed (passed in as an argument).
func_75912_b,choose,2,randomly choose between the four args
func_75913_a,choose,2,randomly choose between the two args
func_75915_a,magnify,2,"Magnify a layer. Parms are seed adjustment, layer, number of times to magnify"
func_75916_b,modeOrRandom,2,returns the mode (most frequently occuring number) or a random number from the 4 integers provided
func_75917_a,choose,2,Chooses one of the two inputs randomly.
func_75918_d,initCraftableStats,2,Initializes statistics related to craftable items. Is only called after both block and item stats have been initialized.
@@ -2680,7 +2660,7 @@ func_76126_a,sin,2,sin looked up in a table
func_76127_a,average,2,
func_76128_c,floor_double,2,Returns the greatest integer less than or equal to the double argument
func_76129_c,sqrt_float,2,
func_76130_a,abs_int,2,
func_76130_a,abs_int,2,Returns the unsigned value of an int.
func_76131_a,clamp_float,2,"Returns the value of the first parameter, clamped to be within the lower and upper limits given by the second and third parameters"
func_76132_a,abs_max,2,Maximum of the absolute value of two numbers.
func_76133_a,sqrt_double,2,
@@ -2883,7 +2863,6 @@ func_76594_o,enqueueRelightChecks,2,"Called once-per-chunk-per-tick, and advance
func_76595_e,propagateSkylightOcclusion,2,Propagates a given sky-visible block's light value downward and upward to neighboring blocks as necessary.
func_76596_b,getBlockLightOpacity,2,
func_76597_e,getChunkBlockTileEntity,2,Gets the TileEntity for a given block in this chunk
func_76598_a,setBlockID,2,"Sets a blockID for a position in the chunk. Args: x, y, z, blockID"
func_76599_g,checkSkylightNeighborHeight,2,Checks the height of a block next to a sky-visible block and schedules a lighting update as necessary.
func_76600_a,isAtLocation,2,Checks whether the chunk is at the X/Z location specified
func_76601_a,needsSaving,2,Returns true if this Chunk needs to be saved
@@ -2988,8 +2967,6 @@ func_76837_b,getBiomeGenAt,2,"Returns the BiomeGenBase related to the x, z posit
func_76838_a,cleanupCache,2,Removes BiomeCacheBlocks from this cache that haven't been accessed in at least 30 seconds.
func_76839_e,getCachedBiomes,2,Returns the array of cached biome types in the BiomeCacheBlock at the given location.
func_76840_a,getBiomeCacheBlock,2,Returns a biome cache block at location specified.
func_76845_a,bindImage,2,
func_76846_a,onTick,2,
func_76885_a,getBiomeGenAt,2,"Returns the BiomeGenBase related to the x, z position from the cache block."
func_76893_a,setTileEntityRenderer,2,Associate a TileEntityRenderer with this TileEntitySpecialRenderer
func_76894_a,renderTileEntityAt,2,
@@ -3003,7 +2980,6 @@ func_76905_a,renderTileEntityMobSpawner,2,
func_76906_a,renderEndPortalTileEntity,2,Renders the End Portal.
func_76909_a,renderTileEntitySignAt,2,
func_76911_a,renderTileEntityChestAt,2,Renders the TileEntity for the chest at a position.
func_76914_a,setWaterBiomeColorizer,2,
func_76916_f,getBlockID,2,Gets the BlockID for this BlockEventData
func_76917_e,getEventParameter,2,"Get the Event Parameter (different for each BlockID,EventID)"
func_76918_d,getEventID,2,Get the Event ID (different for each BlockID)
@@ -3055,8 +3031,8 @@ func_77009_a,renderThePainting,2,
func_77012_a,renderTheMinecart,2,Renders the Minecart.
func_77014_a,doRenderItem,2,Renders the item
func_77015_a,renderItemIntoGUI,2,Renders the item's icon or block into the UI at the specified position.
func_77016_a,renderTexturedQuad,2,"Adds a textured quad to the tesselator at the specified position with the specified texture coords, width and height. Args: x, y, u, v, width, height"
func_77017_a,renderQuad,2,"Adds a quad to the tesselator at the specified position with the set width and height and color. Args: tessellator, x, y, width, height, color"
func_77018_a,renderGlint,2,
func_77020_a,renderDroppedItem,2,Renders a dropped item
func_77021_b,renderItemOverlayIntoGUI,2,Renders the item's overlay information. Examples being stack count or damage on top of the item's image at the specified position.
func_77028_a,doRenderLightningBolt,2,Actually renders the lightning bolt. This method is called through the doRender method.
@@ -3083,7 +3059,6 @@ func_77051_a,renderVillagerEquipedItems,2,
func_77052_b,preRenderVillager,2,
func_77053_a,shouldVillagerRenderPass,2,Determines wether Villager Render pass or not.
func_77054_a,renderVillager,2,
func_77055_a,passVillagerSpecialRender,2,Passes the Villager special render.
func_77057_a,getTailRotation,2,
func_77059_a,renderCow,2,
func_77060_a,updateCreeperScale,2,Updates creeper scale in prerender callback
@@ -3116,7 +3091,6 @@ func_77099_a,renderSaddledPig,2,
func_77100_a,renderSpecials,2,Method for adding special render rules
func_77101_a,renderPlayer,2,
func_77102_a,rotatePlayer,2,Rotates the player if the player is sleeping. This method is called in rotateCorpse.
func_77103_a,renderName,2,Used to render a player's name above their head
func_77104_b,renderPlayerScale,2,
func_77105_b,renderPlayerSleep,2,Renders player with sleeping offset if sleeping
func_77107_a,setArmorModel,2,"Set the specified armor model as the player model. Args: player, armorSlot, partialTick"
@@ -3199,6 +3173,7 @@ func_77296_a,requestDownloadOfTexture,2,filename must end in .zip
func_77297_a,downloadTexture,2,
func_77298_g,getAcceptsTextures,2,
func_77299_i,getTexturePackDirContents,2,Return a List<File> of file/directories in the texture pack directory.
func_77301_a,isDownloading,2,
func_77302_a,generateTexturePackID,2,"Generate an internal texture pack ID from the file/directory name, last modification time, and file size. Returns null if the file/directory is not a texture pack."
func_77303_a,setSelectedTexturePack,2,Set the selectedTexturePack field (Inner class static accessor method).
func_77304_b,onDownloadFinished,2,Called from Minecraft.loadWorld() if getIsDownloading() returned true to prepare the downloaded texture for usage.
@@ -3295,7 +3270,6 @@ func_77525_a,getPingResponse,2,
func_77531_d,getFirstDescriptionLine,2,Get the first line of the texture pack description (read from the pack.txt file)
func_77532_a,getResourceAsStream,2,Gives a texture resource as InputStream.
func_77533_a,deleteTexturePack,2,"Delete the OpenGL texture id of the pack's thumbnail image, and close the zip file in case of TexturePackCustom."
func_77534_f,getTexturePackResolution,2,Return the texture pack's resolution (16 by default). Used only by PlayerUsageSnooper. Presumably meant to be overriden by HD texture mods.
func_77535_b,bindThumbnailTexture,2,"Bind the texture id of the pack's thumbnail image, loading it if necessary."
func_77536_b,getTexturePackID,2,Get the texture pack ID
func_77537_e,getSecondDescriptionLine,2,Get the second line of the texture pack description (read from the pack.txt file)
@@ -3369,7 +3343,6 @@ func_77648_a,onItemUse,2,"Callback for item usage. If the item does something sp
func_77649_a,getDamageVsEntity,2,Returns the damage against a given entity.
func_77650_f,getIconIndex,2,Returns the icon index of the stack given as argument.
func_77651_p,getShareTag,2,"If this function returns true (or the item is damageable), the ItemStack's NBT tag will be sent to the client."
func_77652_b,setIconCoord,2,
func_77654_b,onEaten,2,
func_77655_b,setUnlocalizedName,2,"Sets the unlocalized name of this item to the string passed as the parameter, prefixed by ""item."""
func_77656_e,setMaxDamage,2,set max damage of an Item
@@ -3381,7 +3354,6 @@ func_77661_b,getItemUseAction,2,returns the action that specifies what animation
func_77662_d,isFull3D,2,Returns True is the item is renderer in full 3D when hold.
func_77663_a,onUpdate,2,Called each tick as long the item is on a player inventory. Uses by maps to check if is on a player hand and update it's contents.
func_77664_n,setFull3D,2,Sets bFull3D to True and return the object.
func_77665_c,setIconIndex,2,Sets the icon index for this item. Returns the item.
func_77666_t,getPotionEffect,2,Returns a string representing what this item does to a potion.
func_77667_c,getUnlocalizedName,2,Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have different names based on their damage or NBT.
func_77668_q,getContainerItem,2,
@@ -3393,6 +3365,7 @@ func_77832_l,getEffects,2,Returns a list of potion effects for the specified ite
func_77833_h,isEffectInstant,2,
func_77834_f,getEffects,2,Returns a list of effects for the specified potion damage value.
func_77840_a,spawnCreature,2,"Spawns the creature specified by the egg's type in the location specified by the last three parameters. Parameters: world, entityID, x, y, z."
func_77842_f,getMaterialName,2,"Returns the name of the material this tool is made from as it is declared in EnumToolMaterial (meaning diamond would return ""EMERALD"")"
func_77844_a,setPotionEffect,2,"sets a potion effect on the item. Args: int potionId, int duration (will be multiplied by 20), int amplifier, float probability of effect happening"
func_77845_h,isWolfsFavoriteMeat,2,Whether wolves like this food (true for raw and cooked porkchop).
func_77846_g,getSaturationModifier,2,gets the saturationModifier of the ItemFood
@@ -3558,8 +3531,6 @@ func_78350_a,getTextureForDownloadableImage,2,"Takes a URL of a downloadable ima
func_78351_a,setupTexture,2,Copy the supplied image onto the specified OpenGL texture
func_78352_b,refreshTextures,2,Call setupTexture on all currently-loaded textures again to account for changes in rendering options
func_78353_a,allocateAndSetupTexture,2,"Copy the supplied image onto a newly-allocated OpenGL texture, returning the allocated texture name"
func_78354_c,unwrapImageByColumns,2,Takes an image with multiple 16-pixel-wide columns and creates a new 16-pixel-wide image where the columns are stacked vertically
func_78355_a,registerTextureFX,2,
func_78356_a,obtainImageData,2,"Return a ThreadDownloadImageData instance for the given URL. If it does not already exist, it is created and uses the passed ImageBuffer. If it does, its reference count is incremented."
func_78369_a,setColorRGBA_F,2,"Sets the RGBA values for the color, converting from floats between 0 and 1 to integers from 0-255."
func_78370_a,setColorRGBA,2,Sets the RGBA values for the color. Also clamps them to 0-255.
@@ -3631,7 +3602,7 @@ func_78569_d,renderBlockCactusImpl,2,Render block cactus implementation
func_78570_q,renderStandardBlock,2,Renders a standard cube block at the given coordinates
func_78571_c,renderPistonRodEW,2,Render piston rod east/west
func_78572_c,renderBlockTorch,2,Renders a torch block at the given coordinates
func_78573_e,renderNorthFace,2,"Renders the given texture to the north (x-negative) face of the block. Args: block, x, y, z, texture"
func_78573_e,renderFaceXNeg,2,"Renders the given texture to the west (x-negative) face of the block. Args: block, x, y, z, texture"
func_78574_w,renderBlockBed,2,render a bed at the given coordinates
func_78575_a,renderBlockStemSmall,2,Render block stem small
func_78576_j,renderBlockLadder,2,Renders a ladder block at the given coordinates
@@ -3663,24 +3634,24 @@ func_78601_u,renderBlockDoor,2,Renders a door block at the given coordinates
func_78602_a,getAoBrightness,2,Get ambient occlusion brightness
func_78603_m,renderBlockStem,2,Render block stem
func_78604_a,renderBlockUsingTexture,2,Renders a block using the given texture instead of the block's own default texture
func_78605_f,renderSouthFace,2,"Renders the given texture to the south (x-positive) face of the block. Args: block, x, y, z, texture"
func_78605_f,renderFaceXPos,2,"Renders the given texture to the east (x-positive) face of the block. Args: block, x, y, z, texture"
func_78606_a,renderBlockStemBig,2,Render block stem big
func_78607_b,renderPistonRodSN,2,Render piston rod south/north
func_78608_c,renderPistonExtension,2,renders the pushing part of a piston
func_78609_c,renderStandardBlockWithColorMultiplier,2,"Renders a standard cube block at the given coordinates, with a given color ratio. Args: block, x, y, z, r, g, b"
func_78610_x,renderBlockRepeater,2,render a redstone repeater at the given coordinates
func_78611_c,renderEastFace,2,"Renders the given texture to the east (z-negative) face of the block. Args: block, x, y, z, texture"
func_78611_c,renderFaceZNeg,2,"Renders the given texture to the north (z-negative) face of the block. Args: block, x, y, z, texture"
func_78612_b,renderBlockByRenderType,2,Renders the block at the given coordinates using the block's rendering type
func_78613_a,renderBottomFace,2,"Renders the given texture to the bottom face of the block. Args: block, x, y, z, texture"
func_78613_a,renderFaceYNeg,2,"Renders the given texture to the bottom face of the block. Args: block, x, y, z, texture"
func_78614_n,renderBlockCrops,2,Render block crops
func_78615_a,renderBlockCauldron,2,Render block cauldron
func_78616_a,renderBlockCocoa,2,Renders a Cocoa block at the given coordinates
func_78617_b,renderTopFace,2,"Renders the given texture to the top face of the block. Args: block, x, y, z, texture"
func_78617_b,renderFaceYPos,2,"Renders the given texture to the top face of the block. Args: block, x, y, z, texture"
func_78618_a,renderBlockDragonEgg,2,
func_78619_g,renderBlockTripWire,2,Renders a trip wire block at the given coordinates
func_78620_l,renderCrossedSquares,2,"Renders any block requiring croseed squares such as reeds, flowers, and mushrooms"
func_78621_p,renderBlockFluids,2,Renders a block based on the BlockFluids class at the given coordinates
func_78622_d,renderWestFace,2,"Renders the given texture to the west (z-positive) face of the block. Args: block, x, y, z, texture"
func_78622_d,renderFaceZPos,2,"Renders the given texture to the south (z-positive) face of the block. Args: block, x, y, z, texture"
func_78623_a,renderTorchAtAngle,2,"Renders a torch at the given coordinates, with the base slanting at the given delta"
func_78713_a,getEntityRenderObject,2,
func_78714_a,getDistanceToCamera,2,
@@ -3798,6 +3769,7 @@ func_80006_f,getUniqueID,2,
func_80007_l,getDimensionName,2,"Returns the dimension's name, e.g. ""The End"", ""Nether"", or ""Overworld""."
func_82011_an,enableGui,2,
func_82114_b,getPlayerCoordinates,2,Return the position for this command sender.
func_82115_m,getMaxRenderDistanceSquared,2,
func_82116_a,setSkullRotation,2,Set the skull's rotation
func_82117_a,getSkullType,2,Get the entity type for the skull
func_82118_a,setSkullType,2,Set the entity type for the skull
@@ -3811,12 +3783,14 @@ func_82130_k,getLevels,2,Return the levels of this beacon's pyramid.
func_82131_u,updateState,2,Checks if the Beacon has a valid pyramid underneath and direct sunlight above
func_82132_j,getSecondaryEffect,2,Return the secondary potion effect given by this beacon.
func_82141_a,copyDataFrom,2,"Copies important data from another entity to this entity. Used when teleporting entities between worlds, as this actually deletes the teleporting entity and re-creates it on the other side. Params: Entity to copy from, unused (always true)"
func_82142_c,setHasActivePotion,2,
func_82142_c,setInvisible,2,
func_82144_au,doesEntityNotTriggerPressurePlate,2,Return whether this entity should NOT trigger a pressure plate or a tripwire.
func_82145_z,getMaxInPortalTime,2,Return the amount of time this entity should stay in a portal before being transported.
func_82147_ab,getPortalCooldown,2,Return the amount of cooldown before this entity can use a portal again.
func_82150_aj,getHasActivePotion,2,
func_82148_at,getTeleportDirection,2,
func_82150_aj,isInvisible,2,
func_82154_e,setIsAnvil,2,
func_82159_b,getArmorPosition,2,
func_82160_b,dropEquipment,2,Drop the equipment for this entity.
func_82161_a,getArmorItemForSlot,2,"Params: Armor slot, Item tier"
func_82163_bD,initCreature,2,Initialize this creature.
@@ -3857,6 +3831,8 @@ func_82244_d,displayGUIAnvil,2,Displays the GUI for interacting with an anvil.
func_82245_bX,isSpawnForced,2,
func_82246_f,canCurrentToolHarvestBlock,2,"Returns true if the item the player is holding can harvest the block at the given coords. Args: x, y, z."
func_82247_a,canPlayerEdit,2,
func_82265_c,setEnabled,2,
func_82266_h,setDisabledTextColour,2,
func_82273_a,setFlatGeneratorInfo,2,
func_82274_h,getRenderItem,2,
func_82275_e,getFlatGeneratorInfo,2,
@@ -3885,6 +3861,7 @@ func_82356_Z,isCommandBlockEnabled,2,Return whether command blocks are enabled.
func_82357_ak,getSpawnProtectionSize,2,Return the spawn protection area's size.
func_82358_a,isUsernameIndex,2,Return whether the specified command parameter index is a username parameter.
func_82362_a,getRequiredPermissionLevel,2,Return the required permission level for this command.
func_82363_b,parseDouble,2,Parses a double from the given string or throws an exception if it's not a double.
func_82364_d,getDifficultyForName,2,Return the difficulty value for the specified string.
func_82366_d,getGameRules,2,Return the game rule set this command should be able to manipulate.
func_82369_d,getAllOnlineUsernames,2,Return all usernames currently connected to the server.
@@ -3903,7 +3880,6 @@ func_82383_a,hasTheseArguments,2,Returns whether the given token (parameter 1) h
func_82384_c,getDefaultMinimumRange,2,Gets the default minimum range (argument rm).
func_82385_b,matchPlayersAsString,2,Returns a nicely-formatted string listing the matching players.
func_82386_a,matchOnePlayer,2,Returns the one player that matches the given at-token. Returns null if more than one player matches.
func_82390_a,drawNeedle,2,Draws the compass needle
func_82392_a,bindTextureByURL,2,"Binds a texture that Minecraft will attempt to load from the given URL. (arguments: url, localFallback)"
func_82394_a,renderTileEntitySkullAt,2,Render a skull tile entity.
func_82398_a,renderTileEntityBeaconAt,2,Render a beacon tile entity.
@@ -3919,7 +3895,7 @@ func_82463_b,setEntitySoundPitch,2,"Sets the pitch of the sound associated with
func_82464_d,stopAllSounds,2,Stops all currently playing sounds
func_82465_b,isEntitySoundPlaying,2,"Returns true if a sound is currently associated with the given entity, or false otherwise."
func_82466_e,pauseAllSounds,2,Pauses all currently playing sounds
func_82467_a,playEntitySound,2,"If a sound is already playing from the given entity, update the position and velocity of that sound to match the entity. Otherwise, start playing a sound from that entity. Args: The sound name, the entity, the volume, the pitch, unknown flag"
func_82467_a,playEntitySound,2,"If a sound is already playing from the given entity, update the position and velocity of that sound to match the entity. Otherwise, start playing a sound from that entity. Setting the last flag to true will prevent other sounds from overriding this one. Args: The sound name, the entity, the volume, the pitch, priority"
func_82468_a,setEntitySoundVolume,2,"Sets the volume of the sound associated with the given entity, if one is playing. The volume is scaled by the global sound volume. Args: the entity, the volume (from 0 to 1)"
func_82469_c,stopEntitySound,2,Stops playing the sound associated with the given entity
func_82482_a,dispense,2,Dispenses the specified ItemStack from a dispenser.
@@ -3928,9 +3904,9 @@ func_82486_a,doDispense,2,
func_82487_b,dispenseStack,2,"Dispense the specified stack, play the dispense sound and spawn particles."
func_82489_a,spawnDispenseParticles,2,Order clients to display dispense particles from the specified block and facing.
func_82499_a,getProjectileEntity,2,Return the projectile entity spawned by this dispense behavior.
func_82505_u_,isFlowerPot,2,Returns true only if block is flowerPot
func_82519_a_,onFinishFalling,2,Called when the falling block entity for this block hits the ground and turns back into a block
func_82520_a,onStartFalling,2,Called when the falling block entity for this block is created
func_82523_e,isLockedByAnotherRepeater,2,
func_82524_c,isRedstoneRepeaterBlockID,2,
func_82525_a,getIPositionFromBlockSource,2,
func_82526_n,dispense,2,
@@ -3942,6 +3918,8 @@ func_82533_j,getCropItem,2,Generate a crop produce ItemStack for this crop.
func_82538_d,canConnectWallTo,2,Return whether an adjacent block can connect to a wall.
func_82543_e,isBlockStairsID,2,Checks if supplied ID is one of a BlockStairs
func_82547_a,comparePlayers,2,Compare the position of two players.
func_82558_j,getWalkSpeed,2,
func_82560_d,getRelativeVolumeDisabled,2,
func_82563_j,getShowCape,2,
func_82571_y,getGeneratorOptions,2,
func_82572_b,incrementTotalWorldTime,2,
@@ -3961,6 +3939,8 @@ func_82615_a,getX,2,
func_82616_c,getZ,2,
func_82617_b,getY,2,
func_82618_k,getWorld,2,
func_82619_j,getBlockTileEntity,2,
func_82620_h,getBlockMetadata,2,
func_82621_f,getZInt,2,
func_82622_e,getYInt,2,
func_82623_d,getXInt,2,
@@ -4008,6 +3988,7 @@ func_82725_o,isMagicDamage,2,Returns true if the damage is magic based.
func_82726_p,setMagicDamage,2,Define the damage type as magic based.
func_82732_R,getWorldVec3Pool,2,Return the Vec3Pool object for this world.
func_82733_a,selectEntitiesWithinAABB,2,
func_82734_g,getChunkHeightMapMinimum,2,"Gets the heightMapMinimum field of the given chunk, or 0 if the chunk is not loaded. Coords are in blocks. Args: X, Z"
func_82736_K,getGameRules,2,Gets the GameRules instance.
func_82737_E,getTotalWorldTime,2,
func_82742_i,resetUpdateEntityTick,2,Resets the updateEntityTick field to 0
@@ -4027,7 +4008,6 @@ func_82767_a,getGameRuleStringValue,2,Gets the string Game Rule value.
func_82768_a,readGameRulesFromNBT,2,Set defined game rules from NBT.
func_82769_a,addGameRule,2,Define a game rule and its default value.
func_82770_a,writeGameRulesToNBT,2,Return the defined game rules as NBT.
func_82772_a,updateDynamicTexture,2,Updates a single dynamic texture
func_82773_c,hasImageData,2,Checks if urlToImageDataMap has image data for the given key
func_82774_a,setOverrideBlockTexture,2,Sets overrideBlockTexture
func_82775_a,renderBlockAnvil,2,Renders anvil
@@ -4074,6 +4054,7 @@ func_82877_b,setPlayerWalkSpeed,2,
func_82879_c,sendSettingsToServer,2,Send a client info packet with settings information to the server
func_82883_a,getUnicodeFlag,2,Get unicodeFlag controlling whether strings should be rendered with Unicode fonts instead of the default.png font.
func_82889_a,getBatSize,2,"not actually sure this is size, is not used as of now, but the model would be recreated if the value changed and it seems a good match for a bats size"
func_83003_a,getMemoryReport,2,Returns a string with allocated and used memory.
func_83005_z,getBlockBoundsMinZ,2,returns the block bounderies minZ value
func_83006_A,getBlockBoundsMaxZ,2,returns the block bounderies maxZ value
func_83007_w,getBlockBoundsMaxX,2,returns the block bounderies maxX value
@@ -4101,43 +4082,375 @@ func_85054_d,searchForOtherItemsNearby,2,Looks for other itemstacks nearby and t
func_85055_a,makeCrashReport,2,Creates a crash report for the exception
func_85057_a,makeCategoryDepth,2,Creates a CrashReportCategory for the given stack trace depth
func_85058_a,makeCategory,2,Creates a CrashReportCategory
func_85062_a,callBlockDataValue,2,
func_85064_a,callBlockLocationInfo,2,
func_85071_a,getLocationInfo,2,"Returns a string with world information on location.Args:x,y,z"
func_85079_a,callBlockType,2,
func_85085_a,callSuspiciousClasses,2,
func_85093_e,renderArrowsStuckInEntity,2,"renders arrows the Entity has been attacked with, attached to it"
func_85096_a,renderBlockAnvilMetadata,2,Renders anvil block with metadata
func_85097_a,callParticlePositionInfo,2,
func_85102_a,playSoundToNearExcept,2,Plays sound to all near players except the player reference given
func_85103_a,canDropFromExplosion,2,Return whether this block can drop from an explosion.
func_85104_a,onBlockPlaced,2,"Called when a block is placed using its ItemBlock. Args: World, X, Y, Z, side, hitX, hitY, hitZ, block metadata"
func_85105_g,onPostBlockPlaced,2,Called after a block is placed
func_85106_a,insertRecord,2,Insert the specified music disc in the jukebox at the given coordinates
func_85107_d,updateLadderBounds,2,Update the ladder block bounds based on the given metadata value.
func_85108_a,callLevelGameModeInfo,2,
func_85110_a,callLevelWeatherInfo,2,
func_85112_a,callLevelStorageFormat,2,
func_85114_a,callLevelDimension,2,
func_85116_n,getThundering,2,Returns wether it's thundering or not.
func_85118_a,addToCrashReport,2,Adds this WorldInfo instance to the crash report.
func_85119_k,getRainTime,2,
func_85120_o,getGameType,2,
func_85121_j,getSaveVersion,2,
func_85123_f,getSpawnZCoordinate,2,
func_85124_e,getSpawnYCoordinate,2,
func_85125_d,getSpawnXCoordinate,2,
func_85127_l,getRaining,2,Returns wether it's raining or not.
func_85128_b,getMapFeaturesEnabled,2,Return the map feautures enabled of a world
func_85129_h,getWorldTime,2,
func_85130_c,getWorldGeneratorOptions,2,
func_85132_a,getTerrainTypeOfWorld,2,Return the terrain type of a world
func_85133_m,getThunderTime,2,
func_85134_a,callLevelSpawnLocation,2,
func_85136_a,callLevelTime,2,
func_85138_a,callLevelGeneratorInfo,2,
func_85140_a,callLevelGeneratorOptions,2,
func_85142_a,callLevelSeed,2,
func_85145_a,callTileEntityName,2,
func_85151_d,getLowerChestInventory,2,Return this chest container's lower chest inventory.
func_85154_a,callEntityType,2,
func_85156_a,removeTask,2,removes the indicated task from the entity's AI tasks.
func_85157_q,isAlwaysHarvested,2,Check to see if we can harvest it in any case.
func_85158_p,setAlwaysHarvested,2,Set as harvestable in any case.
func_85160_a,callStructureType,2,
func_85162_a,callChunkPositionHash,2,
func_85170_a,callServerType,2,
func_85173_a,playSoundToNearExcept,2,Plays sound to all near players except the player reference given
func_85175_e,blockGetRenderType,2,Returns the render type of the block at the given coordinate.
func_85176_s,getDefaultTeleporter,2,
func_85181_a,getRandomModelBox,2,
func_85182_a,sameToolAndBlock,2,
func_85187_a,drawString,2,"Draws the specified string. Args: string, x, y, color, dropShadow"
func_85188_a,makePortal,2,
func_85189_a,removeStalePortalLocations,2,called periodically to remove out-of-date portal locations from the cache list. Argument par1 is a WorldServer.getTotalWorldTime() value.
func_90010_a,isPartOfLargeChest,2,Return whether the given inventory is part of this large chest.
func_90011_a,createChild,2,
func_90019_g,applyRenderColor,2,Creates a new EntityDiggingFX with the block render color applied to the base particle color
func_90022_d,getListOfPlayers,2,
func_90023_a,callMouseLocation,2,
func_90027_a,callScreenSize,2,
func_90030_a,getRendererMinecraft,2,Get minecraft reference from the EntityRenderer
func_90031_a,callScreenName,2,
func_90033_f,canLoadWorld,2,Return whether the given world can be loaded.
func_90035_a,getClassFromID,2,Return the class assigned to this entity ID.
func_90036_a,getFireAspectModifier,2,
func_90042_d,getRecord,2,Return the record item corresponding to the given name.
func_90043_g,getRecordTitle,2,Return the title for this record.
func_90045_a,callClientProfilerInfo,2,
func_90047_a,callClientMemoryStats,2,
func_90050_a,callTexturePack,2,
func_90052_a,callParticleScreenName,2,
func_90054_a,callUpdatingScreenName,2,
func_90999_ad,canRenderOnFire,2,Return whether this entity should be rendered as on fire.
func_92013_a,setEntityItem,2,Sets the ItemStack corresponding to this Entity (and updates the DataWatcher for it)
func_92014_d,getEntityItem,2,"Returns the ItemStack corresponding to the Entity (Note: if no item exists, will log an error but still return an ItemStack containing Block.stone)"
func_92015_a,getMobID,2,
func_92027_k,sendChatMsg,2,Sends the given string to every player as chat message.
func_92051_a,addRecipe,2,
func_92058_a,setEntityItemStack,2,Sets the ItemStack for this entity
func_92059_d,getEntityItem,2,"Returns the ItemStack corresponding to the Entity (Note: if no item exists, will log an error but still return an ItemStack containing Block.stone)"
func_92062_k,sendChatMsg,2,Sends the given string to every player as chat message.
func_92085_d,getIsBlank,2,
func_92087_a,causeThornsDamage,2,Returns the EntityDamageSource of the Thorns enchantment
func_92089_a,canApply,2,
func_92097_a,negateDamage,2,"Used by ItemStack.attemptDamageItem. Randomly determines if a point of damage should be negated using the enchantment level (par1). If the ItemStack is Armor then there is a flat 60% chance for damage to be negated no matter the enchantment level, otherwise there is a 1-(par/1) chance for damage to be negated."
func_92103_a,addRecipe,2,
func_94041_b,isStackValidForSlot,2,Returns true if automation is allowed to insert the given stack (ignoring stack size) into the given slot.
func_94042_c,isInvNameLocalized,2,"If this returns false, the inventory name will be used as an unlocalized name, and translated into the player's language. Otherwise it will be used directly."
func_94049_a,setCustomName,2,
func_94052_a,setParticleIcon,2,
func_94053_h,nextTextureIndexX,2,
func_94064_a,displayGUIHopper,2,
func_94065_a,drawTexturedModelRectFromIcon,2,
func_94083_c,getTntPlacedBy,2,returns null or the entityliving it was placed or ignited by
func_94085_r,getDefaultDisplayTileOffset,2,
func_94086_l,setDisplayTileOffset,2,
func_94087_l,getMinecartType,2,
func_94089_m,getDisplayTile,2,
func_94090_a,createMinecart,2,"Creates a new minecart of the specified type in the specified location in the given world. par0World - world to create the minecart in, double par1,par3,par5 represent x,y,z respectively. int par7 specifies the type: 1 for MinecartChest, 2 for MinecartFurnace, 3 for MinecartTNT, 4 for MinecartMobSpawner, 5 for MinecartHopper and 0 for a standard empty minecart"
func_94091_a,updateOnTrack,2,
func_94092_k,setDisplayTileData,2,
func_94093_n,getDefaultDisplayTile,2,
func_94094_j,setDisplayTile,2,
func_94095_a,killMinecart,2,
func_94096_e,setHasDisplayTile,2,
func_94097_p,getDefaultDisplayTileData,2,
func_94098_o,getDisplayTileData,2,
func_94099_q,getDisplayTileOffset,2,
func_94100_s,hasDisplayTile,2,
func_94101_h,applyDrag,2,
func_94103_c,explodeCart,2,Makes the minecart explode.
func_94105_c,ignite,2,Ignites this TNT cart.
func_94107_f,setMinecartPowered,2,
func_94108_c,isMinecartPowered,2,
func_94114_a,areItemStacksEqualItem,2,
func_94116_j,insertItemToInventory,2,Inserts one item from the hopper into the inventory the hopper is pointing at.
func_94117_a,insertStack,2,"Inserts a stack into an inventory. Args: Inventory, stack, side. Returns leftover items."
func_94119_v,getOutputInventory,2,Gets the inventory the hopper is pointing at.
func_94128_d,getAccessibleSlotsFromSide,2,Returns an array containing the indices of the slots that can be accessed by automation on the given side of this block.
func_94140_a,registerDestroyBlockIcons,2,
func_94143_a,updateIcons,2,
func_94144_a,renderBlockInMinecart,2,Renders the block that is inside the minecart.
func_94148_a,renderItemOverlayIntoGUI,2,
func_94149_a,renderIcon,2,
func_94152_c,refreshTextureMaps,2,
func_94156_a,intersection,2,
func_94157_d,getRectHeight,2,
func_94158_a,getRectX,2,
func_94159_c,getRectWidth,2,
func_94160_b,getRectY,2,
func_94165_a,getBlockIconFromSideAndMetadata,2,
func_94167_b,hasOverrideBlockTexture,2,
func_94170_a,getBlockIcon,2,
func_94171_a,renderBlockComparator,2,
func_94172_a,renderBlockHopper,2,
func_94173_a,getBlockIconFromSide,2,
func_94174_a,renderBlockRedstoneLogicMetadata,2,
func_94175_b,getBlockIcon,2,
func_94176_a,renderBlockRedstoneLogic,2,
func_94178_a,updateIcons,2,
func_94179_g,isCompatible,2,
func_94183_a,getStitchHolder,2,
func_94184_a,getAllStitchSlots,2,Gets the slot and all its subslots
func_94185_c,getOriginY,2,
func_94186_b,getOriginX,2,
func_94193_b,ceil16,2,
func_94194_d,rotate,2,
func_94195_e,isRotated,2,
func_94196_a,setNewDimension,2,
func_94197_a,getWidth,2,
func_94198_a,compareToStitchHolder,2,See Comparable.compareTo.
func_94199_b,getHeight,2,
func_94206_g,getMinV,2,Returns the minimum V coordinate to use when rendering with this icon.
func_94207_b,getInterpolatedV,2,Gets a V coordinate on the icon. 0 returns vMin and 16 returns vMax. Other arguments return in-between values.
func_94208_k,getSheetHeight,2,"Returns the height of the texture sheet this icon is on, in pixels."
func_94209_e,getMinU,2,Returns the minimum U coordinate to use when rendering with this icon.
func_94210_h,getMaxV,2,Returns the maximum V coordinate to use when rendering with this icon.
func_94211_a,getOriginX,2,"Returns the X position of this icon on its texture sheet, in pixels."
func_94212_f,getMaxU,2,Returns the maximum U coordinate to use when rendering with this icon.
func_94213_j,getSheetWidth,2,"Returns the width of the texture sheet this icon is on, in pixels."
func_94214_a,getInterpolatedU,2,Gets a U coordinate on the icon. 0 returns uMin and 16 returns uMax. Other arguments return in-between values.
func_94215_i,getIconName,2,
func_94216_b,getOriginY,2,"Returns the Y position of this icon on its texture sheet, in pixels."
func_94217_a,copyFrom,2,
func_94218_a,init,2,
func_94219_l,updateAnimation,2,
func_94220_a,makeTextureStitched,2,
func_94221_a,readAnimationInfo,2,
func_94241_a,updateCompass,2,"Updates the compass based on the given x,z coords and camera direction"
func_94245_a,registerIcon,2,
func_94246_d,getTexture,2,
func_94247_b,refreshTextures,2,
func_94248_c,updateAnimations,2,
func_94259_a,registerTexture,2,
func_94261_a,makeTexture,2,
func_94262_d,createStitcher,2,
func_94263_a,init,2,
func_94264_a,registerTexture,2,
func_94265_c,getNextTextureId,2,
func_94266_e,createTexture,2,
func_94267_b,instance,2,
func_94272_a,fillRect,2,
func_94273_h,getTextureData,2,
func_94274_a,getTextureRect,2,
func_94275_d,getWidth,2,
func_94276_e,getHeight,2,
func_94277_a,bindTexture,2,
func_94278_a,transferFromImage,2,
func_94279_c,writeImage,2,
func_94280_f,getTextureName,2,
func_94281_a,copyFrom,2,
func_94282_c,getGlTextureId,2,
func_94284_b,getTextureId,2,
func_94285_g,uploadTexture,2,
func_94305_f,doStitch,2,
func_94306_e,getTexture,2,
func_94308_a,getCeilPowerOf2,2,Returns power of 2 >= the specified value
func_94309_g,getStichSlots,2,
func_94310_b,allocateSlot,2,Attempts to find space for specified tile
func_94311_c,expandAndAllocateSlot,2,Expand stitched texture in order to make space for specified tile
func_94312_a,addStitchHolder,2,
func_94327_t_,getItemIconName,2,Gets the icon name of the ItemBlock corresponding to this block. Used by hoppers.
func_94328_b_,getComparatorInputOverride,2,"If hasComparatorInputOverride returns true, the return value from this is used instead of the redstone signal strength when this block inputs to a comparator."
func_94329_b,isAssociatedBlockID,2,Static version of isAssociatedBlockID.
func_94330_A,getUnlocalizedName2,2,Returns the unlocalized name without the tile. prefix. Caution: client-only.
func_94331_a,canPlaceBlockOnSide,2,
func_94332_a,registerIcons,2,"When this method is called, your block should register all the icons it needs with the given IconRegister. This is the only chance you get to register icons."
func_94334_h,isAssociatedBlockID,2,"Returns true if the given block ID is equivalent to this one. Example: redstoneTorchOn matches itself and redstoneTorchOff, and vice versa. Most blocks only match themselves."
func_94350_c,getPowerSupply,2,Argument is metadata. Returns power level (0-15)
func_94351_d,getPlateState,2,Returns the current state of the pressure plate. Returns a value between 0 and 15 based on the number of items on it.
func_94352_a,getSensitiveAABB,2,
func_94355_d,getMetaFromWeight,2,Argument is weight (0-15). Return the metadata to be set because of it.
func_94434_o,getIconSideOverlay,2,
func_94442_h_,getInventory,2,"Gets the inventory of the chest at the specified coords, accounting for blocks or ocelots on top of the chest, and double chests."
func_94444_j_,updateLightLevel,2,
func_94446_i,getBeaconIcon,2,
func_94448_e,getBrewingStandIcon,2,
func_94451_c,getDirectionFromMetadata,2,
func_94452_d,getIsBlockNotPoweredFromMetadata,2,
func_94453_b,getHopperIcon,2,
func_94501_a,getRailLogic,2,
func_94502_a,isMinecartTrack,2,
func_94503_c,canConnectFrom,2,
func_94504_a,setBasicRail,2,
func_94505_a,getNumberOfAdjacentTracks,2,
func_94506_c,connectToNeighbor,2,
func_94507_b,canConnectTo,2,
func_94508_a,isRailChunkPositionCorrect,2,Checks if the rail is at the chunk position it is expected to be.
func_94509_b,refreshConnectedTracks,2,
func_94510_b,isPartOfTrack,2,
func_94520_b,containsTranslateKey,2,
func_94526_b,calcRedstoneFromInventory,2,
func_94539_a,setExplosionSource,2,
func_94540_d,setExplosion,2,
func_94541_c,isExplosion,2,
func_94571_i,setBlockToAir,2,"Sets a block to 0 and notifies relevant systems with the block change Args: x, y, z"
func_94572_D,getStrongestIndirectPower,2,
func_94573_a,isBlockTickScheduled,2,"Returns true if the given block will receive a scheduled tick in the future. Args: X, Y, Z, blockID"
func_94574_k,getIndirectPowerOutput,2,"Returns the indirect signal strength being outputted by the given block in the *opposite* of the given direction. Args: X, Y, Z, direction"
func_94575_c,setBlock,2,"Sets a block and notifies relevant systems with the block change Args: x, y, z, blockID"
func_94576_a,getEntitiesWithinAABBExcludingEntity,2,
func_94577_B,getBlockPowerInput,2,"Returns the highest redstone signal strength powering the given block. Args: X, Y, Z."
func_94578_a,destroyBlock,2,"Destroys a block and optionally drops items. Args: X, Y, Z, dropItems"
func_94581_a,registerIcons,2,
func_94599_c,getItemIconForUseDuration,2,"used to cycle through icons based on their used duration, i.e. for the bow"
func_94608_d,getItemSpriteNumber,2,
func_94609_a,callTileEntityID,2,
func_94611_a,callTileEntityDataInfo,2,
func_94901_k,getSpriteNumber,2,"Returns 0 for /terrain.png, 1 for /gui/items.png"
func_96090_ax,getTranslatedEntityName,2,Returns the translated name of the entity.
func_96095_a,onActivatorRailPass,2,Called every tick the minecart is on an activator rail.
func_96096_ay,isIgnited,2,Returns true if the TNT minecart is ignited.
func_96104_c,setCommandSenderName,2,Sets the name of the command sender
func_96107_aA,getXPos,2,Gets the world X position for this hopper entity.
func_96108_aC,getZPos,2,Gets the world Z position for this hopper entity.
func_96109_aB,getYPos,2,Gets the world Y position for this hopper entity.
func_96110_f,setBlocked,2,Set whether this hopper minecart is being blocked by an activator rail.
func_96111_ay,getBlocked,2,Get whether this hopper minecart is being blocked by an activator rail.
func_96115_a,setInventoryName,2,
func_96116_a,suckItemsIntoHopper,2,Sucks one item into the given hopper from an inventory or EntityItem above it.
func_96117_b,getInventoryAtLocation,2,Gets an inventory at the given location to extract items into or take items from. Can find either a tile entity or regular entity implementing IInventory.
func_96118_b,getInventoryAboveHopper,2,"Looks for anything, that can hold items (like chests, furnaces, etc.) one block above the given hopper."
func_96123_co,getWorldScoreboard,2,
func_96124_cp,getTeam,2,
func_96125_a,displayGUIHopperMinecart,2,
func_96334_d,getScoreboardFromWorldServer,2,
func_96335_a,getScoreObjectivesList,2,"If the parameter is true, does not return read-only entries."
func_96336_d,getObjectivesList,2,Handler for the 'scoreboard objectives list' command.
func_96337_e,removeObjective,2,Handler for the 'scoreboard objectives remove' command.
func_96338_a,getTeam,2,Returns the ScorePlayerTeam for the given team name.
func_96339_l,setPlayerScore,2,Handler for the 'scoreboard players [add|remove|set]' commands.
func_96340_c,addTeam,2,Handler for the 'scoreboard teams add' command.
func_96341_k,listPlayers,2,Handler for the 'scoreboard players list' command.
func_96342_g,joinTeam,2,Handler for the 'scoreboard teams join' command.
func_96343_e,removeTeam,2,Handler for the 'scoreboard teams remove' command.
func_96344_f,getTeamList,2,Handler for the 'scoreboard teams list' command.
func_96345_a,getScoreObjective,2,"User-safe version of Scoreboard.getObjective, does checks against the objective not being found and whether it's read-only or not. If true, the second parameter makes the function throw an exception if the objective is read-only."
func_96346_i,emptyTeam,2,Handler for the 'scoreboard teams empty' command.
func_96347_j,setObjectivesDisplay,2,Handler for the 'scoreboard objectives setdisplay' command.
func_96348_d,setTeamOption,2,Handler for the 'scoreboard teams option' command.
func_96349_h,leaveTeam,2,Handler for the 'scoreboard teams leave' command.
func_96350_b,addObjective,2,Handler for the 'scoreboard objectives add' command.
func_96351_m,resetPlayerScore,2,Handler for the 'scoreboard players reset' command.
func_96435_a,handleSetPlayerTeam,2,Handle a set player team packet.
func_96436_a,handleSetObjective,2,Handle a set objective packet.
func_96437_a,handleSetScore,2,Handle a set score packet.
func_96438_a,handleSetDisplayObjective,2,Handle a set display objective packet.
func_96439_d,notifyBlocksOfNeighborChange,2,"Calls notifyBlockOfNeighborChange on adjacent blocks, except the one on the given side. Args: X, Y, Z, changingBlockID, side"
func_96441_U,getScoreboard,2,
func_96444_a,mixAoBrightness,2,
func_96445_r,renderBlockQuartz,2,
func_96446_b,getIconSafe,2,
func_96447_a,renderBlockHopperMetadata,2,
func_96448_c,getMissingIcon,2,
func_96455_e,getMissingIcon,2,
func_96468_q_,hasComparatorInputOverride,2,"If this returns true, then comparators facing away from this block will use the value from getComparatorInputOverride instead of the actual redstone signal strength."
func_96471_k,updateMetadata,2,Updates the Metadata to include if the Hopper gets powered by Redstone or not
func_96472_a,getBehaviorForItemStack,2,Returns the behavior for the given ItemStack.
func_96475_a_,getTileEntityComparator,2,Returns the blockTileEntity at given coordinates.
func_96477_c,markOrGrowMarked,2,
func_96478_d,setBlockBoundsForSnowDepth,2,"calls setBlockBounds based on the depth of the snow. Int is any values 0x0-0x7, usually this blocks metadata."
func_96509_i,getPlayersTeam,2,Gets the ScorePlayerTeam object for the given username.
func_96512_b,removePlayerFromTeam,2,Removes the given username from the given ScorePlayerTeam. If the player is not on the team then an IllegalStateException is thrown.
func_96514_c,getScoreObjectives,2,
func_96517_b,getObjectiveDisplaySlot,2,"Returns 'list' for 0, 'sidebar' for 1, 'belowName for 2, otherwise null."
func_96518_b,getObjective,2,Returns a ScoreObjective for the objective name
func_96526_d,getObjectiveNames,2,
func_96537_j,getObjectiveDisplaySlotNumber,2,"Returns 0 for (case-insensitive) 'list', 1 for 'sidebar', 2 for 'belowName', otherwise -1."
func_96556_a,callServerMemoryStats,2,
func_96557_a,callServerProfiler,2,
func_96559_d,getFrontOffsetY,2,
func_96563_a,callEntityName,2,
func_96631_a,attemptDamageItem,2,"Attempts to damage the ItemStack with par1 amount of damage, If the ItemStack has the Unbreaking enchantment there is a chance for each point of damage to be negated. Returns true if it takes more damage than getMaxDamage(). Returns false otherwise or if the ItemStack can't be damaged or if all points of damage are negated."
func_96632_a,callItemDisplayName,2,
func_96637_b,isReadOnly,2,
func_96670_d,getMembershipCollection,2,
func_96678_d,getDisplayName,2,
func_96679_b,getName,2,
func_96680_c,getCriteria,2,
func_96681_a,setDisplayName,2,
func_96682_a,getScoreboard,2,
func_98033_al,getLogAgent,2,
func_98035_c,addNotRiddenEntityID,2,
func_98042_n,setTransferTicker,2,"Sets the transfer ticker, used to determine the delay between transfers."
func_98043_aE,canTransfer,2,Returns whether the hopper cart can currently transfer an item.
func_98046_c,setTransferCooldown,2,
func_98047_l,isCoolingDown,2,
func_98052_bS,canPickUpLoot,2,
func_98053_h,setCanPickUpLoot,2,
func_98076_a,getServerLogger,2,
func_98145_a,createEmptyTexture,2,
func_98146_d,getBasename,2,"Strips directory and file extension from the specified path, returning only the filename"
func_98147_a,hasAnimationTxt,2,Returns true if specified texture pack contains animation data for the specified texture file
func_98152_d,getAllUsernames,2,
func_98179_a,computeLightValue,2,
func_98180_V,getWorldLogAgent,2,
func_98182_a,handleWorldParticles,2,Handle a world particles packet.
func_98184_a,setupTextureExt,2,
func_98185_a,resetBoundTexture,2,
func_98186_a,colorToAnaglyph,2,
func_98187_b,bindTexture,2,
func_98194_g,getPositionY,2,Gets the Y position of the particle.
func_98195_d,getParticleName,2,
func_98196_i,getOffsetX,2,This is added to the X position after being multiplied by random.nextGaussian()
func_98197_l,getSpeed,2,Gets the speed of the particles.
func_98198_h,getPositionZ,2,Gets the Z position of the particle.
func_98199_k,getOffsetZ,2,This is added to the Z position after being multiplied by random.nextGaussian()
func_98200_f,getPositionX,2,Gets the X position of the particle.
func_98201_j,getOffsetY,2,This is added to the Y position after being multiplied by random.nextGaussian()
func_98202_m,getQuantity,2,Gets the number of particles to create.
func_98213_d,getHopperTile,2,
func_98225_a,getPacketClass,2,
func_98230_d,logFine,2,
func_98231_b,logWarningFormatted,2,
func_98232_c,logSevere,2,
func_98233_a,logInfo,2,
func_98234_c,logSevereException,2,
func_98235_b,logWarningException,2,
func_98236_b,logWarning,2,
func_98238_b,setupLogger,2,Sets up the logger for usage.
func_98243_a,callPacketID,2,
func_98266_d,getSpawnerZ,2,
func_98268_b,setDelayToMin,2,"Sets the delay to minDelay if parameter given is 1, else return false."
func_98269_i,getRandomMinecart,2,
func_98270_a,readFromNBT,2,
func_98271_a,getSpawnerWorld,2,
func_98272_a,setMobID,2,
func_98274_c,getSpawnerY,2,
func_98275_b,getSpawnerX,2,
func_98276_e,getEntityNameToSpawn,2,Gets the entity name that should be spawned.
func_98277_a,setRandomMinecart,2,
func_98278_g,updateSpawner,2,
func_98279_f,canRun,2,Returns true if there's a player close enough to this mob spawner to activate it.
func_98280_b,writeToNBT,2,
func_98304_a,readFontData,2,
func_98305_c,readFontTexture,2,
func_98306_d,readGlyphSizes,2,
1 searge name side desc
2 func_100008_d isDurationMax 2 Returns true if duration is at maximum, false otherwise.
3 func_100009_j_ getFacing 2
4 func_100011_g getIsPotionDurationMax 2
5 func_100012_b setPotionDurationMax 2 Toggle the isPotionDurationMax field.
6 func_100015_a isKeyDown 2 Returns whether the specified key binding is currently being pressed.
7 func_102007_a canInsertItem 2 Returns true if automation can insert the given item in the given slot from the given side. Args: Slot, item, side
8 func_102008_b canExtractItem 2 Returns true if automation can extract the given item in the given slot from the given side. Args: Slot, item, side
9 func_102013_b canExtractItemFromInventory 2
10 func_102026_a isBlockTopFacingSurfaceSolid 2 Performs check to see if the block is a normal, solid block, or if the metadata of the block indicates that its facing puts its solid side upwards. (inverted stairs, for example)
11 func_102028_d isSplashPotionEffect 2
12 func_70000_a addServerStatsToSnooper 2
13 func_70001_b addServerTypeToSnooper 2
14 func_70002_Q isSnooperEnabled 2 Returns whether snooping is enabled or not.
193 func_70364_a openChest 2
194 func_70365_a isUseableByPlayer 2
195 func_70366_b closeChest 2
func_70382_c getMobEntity 2 will create the entity from the internalID the first time it is accessed
func_70383_a writeNBTTagsTo 2
func_70384_a getMobID 2
func_70385_a setMobID 2
func_70386_b anyPlayerInRange 2 Returns true if there is a player in range (using World.getClosestPlayer)
func_70387_f updateDelay 2 Sets the delay before a new spawn (base delay of 200 + random number up to 600).
196 func_70397_c getCookProgressScaled 2 Returns an integer between 0 and the passed value representing how close the current item is to being completely cooked
197 func_70398_a getItemBurnTime 2 Returns the number of ticks that the supplied fuel item will keep the furnace burning, or 0 if the item isn't fuel
198 func_70399_k smeltItem 2 Turn one item from the furnace source stack into the appropriate smelted item in the furnace result stack
239 func_70485_a setAssociatedChest 2
240 func_70486_a loadInventoryFromNBT 2
241 func_70487_g saveInventoryToNBT 2
func_70490_h isMinecartPowered 2 Is this minecart powered (Fuel > 0)
242 func_70491_i getDamage 2 Gets the current amount of damage the minecart has taken. Decreases over time. The cart breaks when this is over 40.
243 func_70492_c setDamage 2 Sets the current amount of damage the minecart has taken. Decreases over time. The cart breaks when this is over 40.
244 func_70493_k getRollingDirection 2 Gets the rolling direction the cart rolls while being attacked. Can be 1 or -1.
245 func_70494_i setRollingDirection 2 Sets the rolling direction the cart rolls while being attacked. Can be 1 or -1.
246 func_70496_j getRollingAmplitude 2 Gets the rolling amplitude the cart rolls while being attacked.
247 func_70497_h setRollingAmplitude 2 Sets the rolling amplitude the cart rolls while being attacked.
func_70498_d setMinecartPowered 2 Set if this minecart is powered (Fuel > 0)
248 func_70515_d explode 2
249 func_70518_d onValidSurface 2 checks to make sure painting can be placed there
250 func_70526_d getXpValue 2 Returns the XP value of this XP orb.
256 func_70537_b getFXLayer 2
257 func_70538_b setRBGColorF 2
258 func_70539_a renderParticle 2
func_70540_h getParticleTextureIndex 2
259 func_70541_f multipleParticleScaleBy 2
260 func_70542_f getGreenColorF 2
261 func_70543_e multiplyVelocity 2
456 func_70951_a getRandomSizedStack 2
457 func_70965_a attackEntityFromPart 2
458 func_70967_k setNewTarget 2 Sets a new target for the flight AI. It can be a random coordinate or a nearby player.
459 func_70968_i getDragonHealth getBossHealth 2 Returns the health points of the dragon.
460 func_70969_j updateDragonEnderCrystal 2 Updates the state of the enderdragon's current endercrystal.
461 func_70970_a collideWithEntities 2 Pushes all entities inside the list away from the enderdragon.
462 func_70971_b attackEntitiesInList 2 Attacks all entities inside this list, dealing 5 hearts of damage.
471 func_71000_j addMovementStat 2 Adds a value to a movement statistic field - like run, walk, swin or climb.
472 func_71001_a onItemPickup 2 Called whenever an item is picked up from walking over it. Args: pickedUpEntity, stackSize
473 func_71002_c displayGUIEnchantment 2
func_71003_h isPVPEnabled 2 returns if pvp is enabled or not
474 func_71004_bE respawnPlayer 2
475 func_71005_bN getInventoryEnderChest 2 Returns the InventoryEnderChest of this player.
476 func_71006_a displayGUIDispenser 2 Displays the dipsenser GUI for the passed in dispenser entity. Args: TileEntityDispenser
638 func_71268_U getCanSpawnAnimals 2
639 func_71269_o setTexturePack 2
640 func_71270_I getFolderName 2
641 func_71272_O deleteWorldAndStopServer 2 WARNING : directly calls getActiveAnvilConverter().deleteWorldDirectory(theWorldServer[0].getSaveHandler().getSaveDirectoryName()); WARNING : directly calls getActiveAnvilConverter().deleteWorldDirectory(theWorldServer[0].getSaveHandler().getWorldDirectoryName());
642 func_71273_Y getMOTD 2
643 func_71274_v getServerMOTD 2 Returns the server message of the day
644 func_71275_y getMaxPlayers 2 Returns the maximum number of players allowed on the server.
674 func_71365_K screenshotListener 2 checks if keys are down
675 func_71366_a displayDebugInfo 2
676 func_71367_a setServer 2
func_71368_v isDebugInfoEnabled 2
677 func_71369_N getGLMaximumTextureSize 2 Used in the usage snooper.
678 func_71370_a resize 2 Called to resize the current screen.
679 func_71371_a launchIntegratedServer 2 Arguments: World foldername, World ingame name, WorldSettings
801 func_71765_d getMyPort 2
802 func_71766_a processPendingConnections 2
803 func_71767_c getInetAddress 2
func_71770_b isLocalHost 2
804 func_71779_a getIV 2
805 func_71780_b getParameters 2
806 func_71783_a getKey 2
840 func_71855_c isProvidingStrongPower 2 Returns true if the block is emitting direct/strong redstone power on the specified side. Args: World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) when checking the bottom of the block.
841 func_71856_s_ getRenderBlockPass 2 Returns which pass should this block be rendered on. 0 for solids and 1 for alpha
842 func_71857_b getRenderType 2 The type of render function that is called for this block
843 func_71858_a getBlockTextureFromSideAndMetadata getIcon 2 From the specified side and block metadata retrieves the blocks texture. Args: side, metadata
844 func_71859_p_ tickRate 2 How many world ticks before ticking
845 func_71860_a onBlockPlacedBy 2 Called when the block is placed in the world.
846 func_71861_g onBlockAdded 2 Called whenever the block is added into the world. Args: world, x, y, z
847 func_71862_a randomDisplayTick 2 A randomly called display update to be able to add particles or other items for display
848 func_71863_a onNeighborBlockChange 2 Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are their own) Args: x, y, z, neighbor blockID
849 func_71864_b setUnlocalizedName 2 Sets the unlocalized name of the block to the string passed as a parameter, prefixed by "tile."
850 func_71865_a isProvidingWeakPower 2 Returns true if the block is emitting indirect/weak redstone power on the specified side. If isBlockNormalCube returns true, standard redstone propagation rules will apply instead and this will not be called. Args: World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) when checking the bottom of the block.
851 func_71866_a onFallenUpon 2 Block's chance to react to an entity falling on it.
852 func_71867_k onBlockDestroyedByExplosion 2 Called upon the block being destroyed by an explosion
893 func_71908_a getPlayerRelativeBlockHardness 2 Gets the hardness of block at the given coordinates in the given world, relative to the ability of the given EntityPlayer.
894 func_71910_a quantityDroppedWithBonus 2 Returns the usual quantity dropped by the block plus a bonus of 1 to 'i' (inclusive).
895 func_71911_a_ getSelectedBoundingBoxFromPool 2 Returns the bounding box of the wired rectangular prism to render.
func_71912_p setRequiresSelfNotify 2 Blocks with this attribute will not notify all near blocks when it's metadata change. The default behavior is always notify every neightbor block when anything changes.
896 func_71913_a canCollideCheck 2 Returns whether this block is collideable based on the arguments passed in Args: blockMetaData, unknownFlag
897 func_71914_a dropBlockAsItemWithChance 2 Drops the block items with a specified chance of dropping the specified items
898 func_71915_e getMobilityFlag 2 Returns the mobility information of the block, 0 = free, 1 = can't push but can move over, 2 = total immobility and stop pistons
960 func_72173_e isPowerProviderOrWire 2 Returns true if redstone wire can connect to the specified block. Params: World, X, Y, Z, side (not a normal notch-side, this can be 0, 1, 2, 3 or -1)
961 func_72176_l glow 2 The redstone ore glows.
962 func_72177_n sparkle 2 The redstone ore sparkles.
func_72179_a isPoweredBlockRail 2 Return true if the blocks passed is a power related rail.
963 func_72180_d_ isRailBlockAt 2 Returns true if the block at the coordinates of world passed is a valid rail block (current is rail, powered or detector).
964 func_72181_a refreshTrackShape 2 Completely recalculates the track shape based on neighboring tracks
func_72182_a isNeighborRailPowered 2 Powered minecart rail is conductive like wire, so check for powered neighbors
965 func_72183_n isPowered 2 Returns true if the block is power related rail.
966 func_72184_d isRailBlock 2 Return true if the parameter is a blockID for a valid rail block (current is rail, powered or detector).
func_72185_a isRailPassingPower 2 Returns true if the specified rail is passing power to its neighbor
967 func_72187_e setStateIfMinecartInteractsWithRail 2 Update the detector rail power state if a minecart enter, stays or leave the block.
968 func_72190_l tryToFall 2 If there is space to fall below will start this block falling
969 func_72191_e_ canFallBelow 2 Checks to see if the sand can fall into the block below it
987 func_72215_l setNotStationary 2 Changes the block ID to that of an updating fluid.
988 func_72216_n isFlammable 2 Checks to see if the block is flammable.
989 func_72217_d getDirection 2 Returns the orentation value from the specified metadata
990 func_72220_e ignoreTick getInputStrength 2 Returns the signal strength at one input of the block. Args: world, X, Y, Z, side
991 func_72224_c isFenceGateOpen 2 Returns if the fence gate is open according to its metadata.
992 func_72225_b_ isBedOccupied 2 Return whether or not the bed is occupied.
993 func_72226_b getNearestEmptyChunkCoordinates 2 Gets the nearest empty chunk coordinates for the player to wake up from a bed into.
1355 func_72819_i getWeightedThunderStrength 2
1356 func_72820_D getWorldTime 2
1357 func_72821_m notifyBlockOfNeighborChange 2 Notifies a block that one of its neighbor change to the specified type Args: x, y, z, blockID
func_72822_b setBlock 2 Sets the block to the specified blockID at the block coordinates Args x, y, z, blockID
1358 func_72823_a setItemData 2 Assigns the given String id to the given MapDataBase using the MapStorage, removing any existing ones of the same id.
1359 func_72824_f getCloudColour 2
1360 func_72825_h getTopSolidOrLiquidBlock 2 Finds the highest block on the x, z coordinate that is solid and returns its y coord. Args x, z
1361 func_72826_c getCelestialAngle 2 calls calculateCelestialAngle
1362 func_72827_u getProviderName 2 Returns the name of the current chunk provider, by calling chunkprovider.makeString()
1363 func_72828_b unloadEntities 2 Adds a list of entities to be unloaded on the next pass of World.updateEntities()
1364 func_72829_c isAABBNonEmpty checkBlockCollision 2 Returns true if there are any blocks in the region constrained by an AxisAlignedBB
1365 func_72830_b isAABBInMaterial 2 checks if the given AABB is in the material given. Used while swimming.
1366 func_72831_a rayTraceBlocks_do_do 2
1367 func_72832_d setBlockAndMetadataWithNotify setBlock 2 Sets the block ID and metadata, then notifies neighboring blocks of the change Params: x, y, z, BlockID, Metadata Sets the block ID and metadata at a given location. Args: X, Y, Z, new block ID, new metadata, flags. Flag 1 will cause a block update. Flag 2 will send the change to clients (you almost always want this). Flag 4 prevents the block from being re-rendered, if this is a client world. Flags can be added together.
1368 func_72833_a getSkyColor 2 Calculates the color for the skybox
1369 func_72834_c canBlockFreeze 2 checks to see if a given block is both water, and cold enough to freeze - if the par4 boolean is set, this will only return true if there is a non-water block immediately adjacent to the specified block
1370 func_72835_b tick 2 Runs a single tick for the world
1372 func_72837_a setBlockTileEntity 2 Sets the TileEntity for a given block in X, Y, Z coordinates
1373 func_72838_d spawnEntityInWorld 2 Called to place all entities as part of a world
1374 func_72839_b getEntitiesWithinAABBExcludingEntity 2 Will get all entities within the specified AABB excluding the one passed into it. Args: entityToExclude, aabb
1375 func_72840_a getAllCollidingBoundingBoxes getCollidingBlockBounds 2 calculates and returns a list of colliding bounding boxes within a given AABB
1376 func_72841_b getUniqueDataId 2 Returns an unique new data id from the MapStorage for the given prefix and saves the idCounts map to the 'idcounts' file.
1377 func_72842_a getBlockDensity 2 Gets the percentage of real blocks within within a bounding box, along a specified vector.
1378 func_72843_D setRandomSeed 2 puts the World Random seed to a specific state dependant on the inputs
1387 func_72852_a addTileEntity 2
1388 func_72853_d getMoonPhase 2
1389 func_72854_c updateAllPlayersSleepingFlag 2 Updates the flag that indicates whether or not all players in the world are sleeping.
1390 func_72855_b checkIfAABBIsClear checkNoEntityCollision 2 Returns true if there are no solid, live entities in the specified AxisAlignedBB
1391 func_72856_b getClosestVulnerablePlayerToEntity 2 Returns the closest vulnerable player to this entity within the given radius, or null if none is found
1392 func_72857_a findNearestEntityWithinAABB 2
1393 func_72858_w canSnowAt 2 Tests whether or not snow can be placed at a given location
func_72859_e setBlockWithNotify 2 Sets a block and notifies relevant systems with the block change Args: x, y, z, blockID
1394 func_72860_G getSaveHandler 2 Returns this world's current save handler
1395 func_72861_E getSpawnPoint 2 Returns the coordinates of the spawn point
func_72862_i markBlockForRenderUpdate2 2 On the client, re-renders this block. On the server, does nothing. Appears to be redundant.
1396 func_72863_F getChunkProvider 2 gets the IChunkProvider this world uses.
1397 func_72864_z isBlockIndirectlyGettingPowered 2 Used to see if one of the blocks next to you or your block is getting power from a neighboring block. Used by items like TNT or Doors so they don't have redstone going straight into them. Args: x, y, z
1398 func_72865_a getPathEntityToEntity 2
1401 func_72868_a addLoadedEntities 2 adds entities to the loaded entities list, and loads thier skins.
1402 func_72869_a spawnParticle 2 Spawns a particle. Args particleName, x, y, z, velX, velY, velZ
1403 func_72870_g updateEntity 2 Will update the entity in the world if the chunk the entity is in is currently loaded. Args: entity
func_72871_y isBlockGettingPowered 2 Whether one of the neighboring blocks is putting power into this block. Args: x, y, z
1404 func_72872_a getEntitiesWithinAABB 2 Returns all entities of the specified class type which intersect with the AABB. Args: entityClass, aabb
1405 func_72873_a doChunksNearChunkExist 2 Checks if any of the chunks within distance (argument 4) blocks of the given block exist
1406 func_72874_g getPrecipitationHeight 2 Gets the height to which rain/snow will fall. Calculates it if not already stored.
1407 func_72875_a isMaterialInBB 2 Returns true if the given bounding box contains the given material
1408 func_72876_a createExplosion 2 Creates an explosion. Args: entity, x, y, z, strength
1409 func_72877_b setWorldTime 2 Sets the world time.
1410 func_72878_l isBlockIndirectlyProvidingPowerTo getIndirectPowerLevelTo 2 Is a block next to you getting powered (if its an attachable block) or is it providing power directly to you. Args: x, y, z, direction Gets the power level from a certain block face. Args: x, y, z, direction
1411 func_72879_k isBlockProvidingPowerTo 2 Is this block powering in the specified direction Args: x, y, z, direction
1412 func_72880_h getStarBrightness 2 How bright are stars in the sky
func_72881_d setBlockMetadata 2 Set the metadata of a block in global coordinates
1413 func_72882_A sendQuittingDisconnectingPacket 2 If on MP, sends a quitting packet.
1414 func_72883_k getFullBlockLightValue 2 Does the same as getBlockLightValue_do but without checking if its not a normal block
1415 func_72884_u isBlockFreezable 2 checks to see if a given block is both water and is cold enough to freeze
1423 func_72892_b scheduleBlockUpdateFromLoad 2 Schedules a block update from the saved information in a chunk. Called when the chunk is loaded.
1424 func_72893_g tickBlocksAndAmbiance 2 plays random cave ambient sounds and runs updateTick on random blocks within each chunk in the vacinity of a player
1425 func_72894_k setRainStrength 2
func_72895_f computeBlockLightValue 2
1426 func_72896_J isRaining 2 Returns true if the current rain strength is greater than 0.2
1427 func_72897_h joinEntityInSurroundings 2 spwans an entity and loads surrounding chunks
1428 func_72898_h notifyBlocksOfNeighborChange 2 Notifies neighboring blocks that this specified block changed Args: x, y, z, blockID
1444 func_72914_a addWorldInfoToCrashReport 2 Adds some basic stats of the world to the given crash report.
1445 func_72915_b setLightValue 2 Sets the light value either into the sky map or block map depending on if enumSkyBlock is set to sky or block. Args: enumSkyBlock, x, y, z, lightValue
1446 func_72916_c chunkExists 2 Returns whether a chunk exists at chunk coordinates x, y
1447 func_72917_a checkIfAABBIsClearExcludingEntity checkNoEntityCollision 2 Returns true if there are no solid, live entities in the specified AxisAlignedBB, excluding the given entity
1448 func_72918_a handleMaterialAcceleration 2 handles the acceleration of an object whilst in water. Not sure if it is used elsewhere.
1449 func_72919_O getHorizon 2 Returns horizon height for use in rendering the sky.
1450 func_72920_a getPendingBlockUpdates 2
1451 func_72921_c setBlockMetadataWithNotify 2 Sets the blocks metadata and if set will then notify blocks that this block changed. Args: x, y, z, metadata Sets the blocks metadata and if set will then notify blocks that this block changed, depending on the flag. Args: x, y, z, metadata, flag. See setBlock for flag description
1452 func_72922_b getFirstUncoveredBlock 2 Returns the block ID of the first block at this (x,z) location with air above it, searching from sea level upwards.
1453 func_72923_a obtainEntitySkin 2 Start the skin for this entity downloading, if necessary, and increment its reference counter
1454 func_72924_a getPlayerEntityByName 2 Find a player by name in this world.
1457 func_72927_d blockHasTileEntity 2 Checks if a block at a given position should have a tile entity.
1458 func_72928_a markTileEntityForDespawn 2 adds tile entity to despawn list (renamed from markEntityForDespawn)
1459 func_72929_e getCelestialAngleRadians 2 Return getCelestialAngle()*2*PI
func_72930_a setBlockAndMetadataWithUpdate 2 Sets the block ID and metadata of a block, optionally marking it as needing update. Args: X,Y,Z, blockID, metadata, needsUpdate
1460 func_72931_a canPlaceEntityOnSide 2 Returns true if the given Entity can be placed on the given side of the given block position.
1461 func_72932_q removeBlockTileEntity 2 Removes the TileEntity for a given block in X,Y,Z coordinates
1462 func_72933_a rayTraceBlocks 2 ray traces all blocks, including non-collideable ones
1475 func_72946_b findClosestStructure 2 Returns the location of the closest structure of the specified type. If not found returns null.
1476 func_72947_a calculateInitialWeather 2 Called from World constructor to set rainingStrength and thunderingStrength
1477 func_72948_g getFogColor 2 Returns vector(ish) with R/G/B for fog
func_72949_a computeSkyLightValue 2
1478 func_72950_A setSpawnLocation 2
1479 func_72951_B canLightningStrikeAt 2
func_72952_b getBlockLightOpacity 2
1480 func_72953_d isAnyLiquid 2 Returns if any of the blocks within the aabb are liquids. Args: aabb
1481 func_72954_a addWorldAccess 2 Adds a IWorldAccess to the list of worldAccesses
1482 func_72955_a tickUpdates 2 Runs through the list of updates to run and ticks them
1485 func_72958_C isBlockHighHumidity 2 Checks to see if the biome rainfall values for a given x,y,z coordinate set are extremely high
1486 func_72959_q getWorldChunkManager 2
1487 func_72960_a setEntityState 2 sends a Packet 38 (Entity Status) to all tracked players of that entity
func_72961_c setBlockAndMetadata 2 Sets the block ID and metadata of a block in global coordinates
1488 func_72962_a canMineBlock 2 Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here.
1489 func_72963_a initialize 2
1490 func_72964_e getChunkFromChunkCoords 2 Returns back a chunk looked up by chunk coordinates Args: x, y
1510 func_73026_a getEntityList 2
1511 func_73027_a addEntityToWorld 2 Add an ID to Entity mapping to entityHashSet
1512 func_73028_b removeEntityFromWorld 2
1513 func_73029_E doVoidFogParticles 2
1514 func_73030_b getEntitySpawnQueue 2
1515 func_73031_a invalidateBlockReceiveRegion 2 Invalidates an AABB region of blocks from the receive queue, in the event that the block has been modified client-side in the intervening 80 receive ticks.
1516 func_73039_n getEntityTracker 2 Gets the EntityTracker
1656 func_73473_d getText 2
1657 func_73475_d getIsServer 2 Get whether this is a server
1658 func_73489_c getMetadata 2
1659 func_73509_c getWatchedMetadata 2
1660 func_73568_g getEffectY 2
1661 func_73569_h getEffectZ 2
1662 func_73570_d getSoundName 2
1667 func_73581_d getNumberOfChunkInPacket 2
1668 func_73582_a getChunkPosX 2
1669 func_73583_c getChunkCompressedData 2
1670 func_73593_d getCompressedChunkData 2
1671 func_73594_a getMapChunkData 2
1672 func_73641_d func_73607_d connectToNeighbor getPlayerVelocityX 2 The specified neighbor has just formed a new connection, so update accordingly Gets the X velocity of the player being pushed by the explosion.
1673 func_73642_a func_73608_g isMinecartTrack getPlayerVelocityZ 2 Gets the Z velocity of the player being pushed by the explosion.
1674 func_73643_c func_73609_f canConnectFrom getPlayerVelocityY 2 Determines whether or not the target rail can connect to this rail Gets the Y velocity of the player being pushed by the explosion.
func_73644_a refreshConnectedTracks 2 Neighboring tracks have potentially been broken, so prune the connected track list
func_73645_a setConnections 2
func_73646_c canConnectTo 2 Determines whether or not the track can bend to meet the specified rail
func_73647_b isConnectedTo 2
func_73648_a getMinecartTrackLogic 2
func_73649_b isInTrack 2 Returns true if the specified block is in the same railway.
func_73650_a getAdjacentTrackCount 2 Get the number of adjacent tracks.
func_73651_b getAdjacentTracks 2
func_73652_a refreshTrackShape 2 Completely recalculates the track shape based on neighboring tracks and power state
1675 func_73660_a update 2 Updates the JList with a new model.
1676 func_73665_c getPropertiesFile 2 Returns this PropertyManager's file object used for property saving.
1677 func_73666_a logMessageAndSave 2 logs an info message then calls saveSettingsToFile Yes this appears to be a potential stack overflow - these 2 functions call each other repeatdly if an exception occurs.
1692 func_73689_b setBanReason 2
1693 func_73690_c getBannedBy 2
1694 func_73691_b setBanEndDate 2
func_73699_a init 2 Initialises the console logger.
1695 func_73703_b saveToFile 2 par1: include header
1696 func_73704_a isBanned 2
1697 func_73705_d removeExpiredBans 2
1802 func_73892_a getSentHistory 2 input is relative and is applied directly to the sentHistoryCursor so -1 is the previous message, 1 is the next message from the current cursor position
1803 func_73895_u_ completePlayerName 2 Autocompletes player name
1804 func_73906_g wakeEntity 2 Wakes the entity from the bed
1805 func_73907_g getLeftBorder 2 Gets the distance from the left border of the window to left border of the controls screen
1806 func_73912_g makeUseableName 2 Makes a the name for a world save folder based on your world name, replacing specific characters for _s and appending -s to the end until a free name is available.
1807 func_73914_h updateButtonText 2
1808 func_73945_e copyLinkToClipboard 2 Copies the link to the system clipboard.
2471 func_75757_d loadWorldInfo 2 Loads and returns the world info
2472 func_75758_b getMapFileFromName 2 Gets the file location of the given map
2473 func_75759_a flush 2 Called to flush all changes to disk, waiting for them to complete.
2474 func_75760_g getSaveDirectoryName getWorldDirectoryName 2 Returns the name of the directory where world information is saved.
2475 func_75761_a saveWorldInfo 2 Saves the passed in world info.
2476 func_75762_c checkSessionLock 2 Checks the session lock to prevent save collisions
2477 func_75763_a getChunkLoader 2 Returns the chunk loader with the provided world provider
2478 func_75764_a getPlayerData 2 Gets the player data for the given playername as a NBTTagCompound.
2479 func_75765_b getSaveDirectory getWorldDirectory 2 gets the File object corresponding to the base directory of this save (saves/404 for a save called 404 etc) Gets the File object corresponding to the base directory of this world.
2480 func_75766_h setSessionLock 2 Creates a session lock file for this process
2481 func_75773_a canContinue 2 Determine if a specific AI Task should continue being executed.
2482 func_75774_a onUpdateTasks 2
2515 func_75821_a writeChunkNBTTags 2
2516 func_75822_a checkedReadChunkFromNBT 2 Wraps readChunkFromNBT. Checks the coordinates and several NBT tags.
2517 func_75823_a readChunkFromNBT 2 Reads the data stored in the passed NBTTagCompound and creates a Chunk with that data in the passed World. Returns the created Chunk.
2518 func_75824_a addChunkToPending 2
2519 func_75829_a distanceTo 2 Returns the linear distance to another path point
2520 func_75830_a makeHash 2
2521 func_75831_a isAssigned 2 Returns true if this point has already been assigned to a path
2569 func_75905_a initWorldGenSeed 2 Initialize layer's local worldGenSeed based on its own baseSeed and the world's global seed (passed in as an argument).
2570 func_75912_b choose 2 randomly choose between the four args
2571 func_75913_a choose 2 randomly choose between the two args
2572 func_75915_a magnify 2 Magnify a layer. Parms are seed adjustment, layer, number of times to magnify
2573 func_75916_b modeOrRandom 2 returns the mode (most frequently occuring number) or a random number from the 4 integers provided
2574 func_75917_a choose 2 Chooses one of the two inputs randomly.
2575 func_75918_d initCraftableStats 2 Initializes statistics related to craftable items. Is only called after both block and item stats have been initialized.
2660 func_76127_a average 2
2661 func_76128_c floor_double 2 Returns the greatest integer less than or equal to the double argument
2662 func_76129_c sqrt_float 2
2663 func_76130_a abs_int 2 Returns the unsigned value of an int.
2664 func_76131_a clamp_float 2 Returns the value of the first parameter, clamped to be within the lower and upper limits given by the second and third parameters
2665 func_76132_a abs_max 2 Maximum of the absolute value of two numbers.
2666 func_76133_a sqrt_double 2
2863 func_76595_e propagateSkylightOcclusion 2 Propagates a given sky-visible block's light value downward and upward to neighboring blocks as necessary.
2864 func_76596_b getBlockLightOpacity 2
2865 func_76597_e getChunkBlockTileEntity 2 Gets the TileEntity for a given block in this chunk
func_76598_a setBlockID 2 Sets a blockID for a position in the chunk. Args: x, y, z, blockID
2866 func_76599_g checkSkylightNeighborHeight 2 Checks the height of a block next to a sky-visible block and schedules a lighting update as necessary.
2867 func_76600_a isAtLocation 2 Checks whether the chunk is at the X/Z location specified
2868 func_76601_a needsSaving 2 Returns true if this Chunk needs to be saved
2967 func_76838_a cleanupCache 2 Removes BiomeCacheBlocks from this cache that haven't been accessed in at least 30 seconds.
2968 func_76839_e getCachedBiomes 2 Returns the array of cached biome types in the BiomeCacheBlock at the given location.
2969 func_76840_a getBiomeCacheBlock 2 Returns a biome cache block at location specified.
func_76845_a bindImage 2
func_76846_a onTick 2
2970 func_76885_a getBiomeGenAt 2 Returns the BiomeGenBase related to the x, z position from the cache block.
2971 func_76893_a setTileEntityRenderer 2 Associate a TileEntityRenderer with this TileEntitySpecialRenderer
2972 func_76894_a renderTileEntityAt 2
2980 func_76906_a renderEndPortalTileEntity 2 Renders the End Portal.
2981 func_76909_a renderTileEntitySignAt 2
2982 func_76911_a renderTileEntityChestAt 2 Renders the TileEntity for the chest at a position.
func_76914_a setWaterBiomeColorizer 2
2983 func_76916_f getBlockID 2 Gets the BlockID for this BlockEventData
2984 func_76917_e getEventParameter 2 Get the Event Parameter (different for each BlockID,EventID)
2985 func_76918_d getEventID 2 Get the Event ID (different for each BlockID)
3031 func_77012_a renderTheMinecart 2 Renders the Minecart.
3032 func_77014_a doRenderItem 2 Renders the item
3033 func_77015_a renderItemIntoGUI 2 Renders the item's icon or block into the UI at the specified position.
func_77016_a renderTexturedQuad 2 Adds a textured quad to the tesselator at the specified position with the specified texture coords, width and height. Args: x, y, u, v, width, height
3034 func_77017_a renderQuad 2 Adds a quad to the tesselator at the specified position with the set width and height and color. Args: tessellator, x, y, width, height, color
3035 func_77018_a renderGlint 2
3036 func_77020_a renderDroppedItem 2 Renders a dropped item
3037 func_77021_b renderItemOverlayIntoGUI 2 Renders the item's overlay information. Examples being stack count or damage on top of the item's image at the specified position.
3038 func_77028_a doRenderLightningBolt 2 Actually renders the lightning bolt. This method is called through the doRender method.
3059 func_77052_b preRenderVillager 2
3060 func_77053_a shouldVillagerRenderPass 2 Determines wether Villager Render pass or not.
3061 func_77054_a renderVillager 2
func_77055_a passVillagerSpecialRender 2 Passes the Villager special render.
3062 func_77057_a getTailRotation 2
3063 func_77059_a renderCow 2
3064 func_77060_a updateCreeperScale 2 Updates creeper scale in prerender callback
3091 func_77100_a renderSpecials 2 Method for adding special render rules
3092 func_77101_a renderPlayer 2
3093 func_77102_a rotatePlayer 2 Rotates the player if the player is sleeping. This method is called in rotateCorpse.
func_77103_a renderName 2 Used to render a player's name above their head
3094 func_77104_b renderPlayerScale 2
3095 func_77105_b renderPlayerSleep 2 Renders player with sleeping offset if sleeping
3096 func_77107_a setArmorModel 2 Set the specified armor model as the player model. Args: player, armorSlot, partialTick
3173 func_77297_a downloadTexture 2
3174 func_77298_g getAcceptsTextures 2
3175 func_77299_i getTexturePackDirContents 2 Return a List<File> of file/directories in the texture pack directory.
3176 func_77301_a isDownloading 2
3177 func_77302_a generateTexturePackID 2 Generate an internal texture pack ID from the file/directory name, last modification time, and file size. Returns null if the file/directory is not a texture pack.
3178 func_77303_a setSelectedTexturePack 2 Set the selectedTexturePack field (Inner class static accessor method).
3179 func_77304_b onDownloadFinished 2 Called from Minecraft.loadWorld() if getIsDownloading() returned true to prepare the downloaded texture for usage.
3270 func_77531_d getFirstDescriptionLine 2 Get the first line of the texture pack description (read from the pack.txt file)
3271 func_77532_a getResourceAsStream 2 Gives a texture resource as InputStream.
3272 func_77533_a deleteTexturePack 2 Delete the OpenGL texture id of the pack's thumbnail image, and close the zip file in case of TexturePackCustom.
func_77534_f getTexturePackResolution 2 Return the texture pack's resolution (16 by default). Used only by PlayerUsageSnooper. Presumably meant to be overriden by HD texture mods.
3273 func_77535_b bindThumbnailTexture 2 Bind the texture id of the pack's thumbnail image, loading it if necessary.
3274 func_77536_b getTexturePackID 2 Get the texture pack ID
3275 func_77537_e getSecondDescriptionLine 2 Get the second line of the texture pack description (read from the pack.txt file)
3343 func_77649_a getDamageVsEntity 2 Returns the damage against a given entity.
3344 func_77650_f getIconIndex 2 Returns the icon index of the stack given as argument.
3345 func_77651_p getShareTag 2 If this function returns true (or the item is damageable), the ItemStack's NBT tag will be sent to the client.
func_77652_b setIconCoord 2
3346 func_77654_b onEaten 2
3347 func_77655_b setUnlocalizedName 2 Sets the unlocalized name of this item to the string passed as the parameter, prefixed by "item."
3348 func_77656_e setMaxDamage 2 set max damage of an Item
3354 func_77662_d isFull3D 2 Returns True is the item is renderer in full 3D when hold.
3355 func_77663_a onUpdate 2 Called each tick as long the item is on a player inventory. Uses by maps to check if is on a player hand and update it's contents.
3356 func_77664_n setFull3D 2 Sets bFull3D to True and return the object.
func_77665_c setIconIndex 2 Sets the icon index for this item. Returns the item.
3357 func_77666_t getPotionEffect 2 Returns a string representing what this item does to a potion.
3358 func_77667_c getUnlocalizedName 2 Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have different names based on their damage or NBT.
3359 func_77668_q getContainerItem 2
3365 func_77833_h isEffectInstant 2
3366 func_77834_f getEffects 2 Returns a list of effects for the specified potion damage value.
3367 func_77840_a spawnCreature 2 Spawns the creature specified by the egg's type in the location specified by the last three parameters. Parameters: world, entityID, x, y, z.
3368 func_77842_f getMaterialName 2 Returns the name of the material this tool is made from as it is declared in EnumToolMaterial (meaning diamond would return "EMERALD")
3369 func_77844_a setPotionEffect 2 sets a potion effect on the item. Args: int potionId, int duration (will be multiplied by 20), int amplifier, float probability of effect happening
3370 func_77845_h isWolfsFavoriteMeat 2 Whether wolves like this food (true for raw and cooked porkchop).
3371 func_77846_g getSaturationModifier 2 gets the saturationModifier of the ItemFood
3531 func_78351_a setupTexture 2 Copy the supplied image onto the specified OpenGL texture
3532 func_78352_b refreshTextures 2 Call setupTexture on all currently-loaded textures again to account for changes in rendering options
3533 func_78353_a allocateAndSetupTexture 2 Copy the supplied image onto a newly-allocated OpenGL texture, returning the allocated texture name
func_78354_c unwrapImageByColumns 2 Takes an image with multiple 16-pixel-wide columns and creates a new 16-pixel-wide image where the columns are stacked vertically
func_78355_a registerTextureFX 2
3534 func_78356_a obtainImageData 2 Return a ThreadDownloadImageData instance for the given URL. If it does not already exist, it is created and uses the passed ImageBuffer. If it does, its reference count is incremented.
3535 func_78369_a setColorRGBA_F 2 Sets the RGBA values for the color, converting from floats between 0 and 1 to integers from 0-255.
3536 func_78370_a setColorRGBA 2 Sets the RGBA values for the color. Also clamps them to 0-255.
3602 func_78570_q renderStandardBlock 2 Renders a standard cube block at the given coordinates
3603 func_78571_c renderPistonRodEW 2 Render piston rod east/west
3604 func_78572_c renderBlockTorch 2 Renders a torch block at the given coordinates
3605 func_78573_e renderNorthFace renderFaceXNeg 2 Renders the given texture to the north (x-negative) face of the block. Args: block, x, y, z, texture Renders the given texture to the west (x-negative) face of the block. Args: block, x, y, z, texture
3606 func_78574_w renderBlockBed 2 render a bed at the given coordinates
3607 func_78575_a renderBlockStemSmall 2 Render block stem small
3608 func_78576_j renderBlockLadder 2 Renders a ladder block at the given coordinates
3634 func_78602_a getAoBrightness 2 Get ambient occlusion brightness
3635 func_78603_m renderBlockStem 2 Render block stem
3636 func_78604_a renderBlockUsingTexture 2 Renders a block using the given texture instead of the block's own default texture
3637 func_78605_f renderSouthFace renderFaceXPos 2 Renders the given texture to the south (x-positive) face of the block. Args: block, x, y, z, texture Renders the given texture to the east (x-positive) face of the block. Args: block, x, y, z, texture
3638 func_78606_a renderBlockStemBig 2 Render block stem big
3639 func_78607_b renderPistonRodSN 2 Render piston rod south/north
3640 func_78608_c renderPistonExtension 2 renders the pushing part of a piston
3641 func_78609_c renderStandardBlockWithColorMultiplier 2 Renders a standard cube block at the given coordinates, with a given color ratio. Args: block, x, y, z, r, g, b
3642 func_78610_x renderBlockRepeater 2 render a redstone repeater at the given coordinates
3643 func_78611_c renderEastFace renderFaceZNeg 2 Renders the given texture to the east (z-negative) face of the block. Args: block, x, y, z, texture Renders the given texture to the north (z-negative) face of the block. Args: block, x, y, z, texture
3644 func_78612_b renderBlockByRenderType 2 Renders the block at the given coordinates using the block's rendering type
3645 func_78613_a renderBottomFace renderFaceYNeg 2 Renders the given texture to the bottom face of the block. Args: block, x, y, z, texture
3646 func_78614_n renderBlockCrops 2 Render block crops
3647 func_78615_a renderBlockCauldron 2 Render block cauldron
3648 func_78616_a renderBlockCocoa 2 Renders a Cocoa block at the given coordinates
3649 func_78617_b renderTopFace renderFaceYPos 2 Renders the given texture to the top face of the block. Args: block, x, y, z, texture
3650 func_78618_a renderBlockDragonEgg 2
3651 func_78619_g renderBlockTripWire 2 Renders a trip wire block at the given coordinates
3652 func_78620_l renderCrossedSquares 2 Renders any block requiring croseed squares such as reeds, flowers, and mushrooms
3653 func_78621_p renderBlockFluids 2 Renders a block based on the BlockFluids class at the given coordinates
3654 func_78622_d renderWestFace renderFaceZPos 2 Renders the given texture to the west (z-positive) face of the block. Args: block, x, y, z, texture Renders the given texture to the south (z-positive) face of the block. Args: block, x, y, z, texture
3655 func_78623_a renderTorchAtAngle 2 Renders a torch at the given coordinates, with the base slanting at the given delta
3656 func_78713_a getEntityRenderObject 2
3657 func_78714_a getDistanceToCamera 2
3769 func_80007_l getDimensionName 2 Returns the dimension's name, e.g. "The End", "Nether", or "Overworld".
3770 func_82011_an enableGui 2
3771 func_82114_b getPlayerCoordinates 2 Return the position for this command sender.
3772 func_82115_m getMaxRenderDistanceSquared 2
3773 func_82116_a setSkullRotation 2 Set the skull's rotation
3774 func_82117_a getSkullType 2 Get the entity type for the skull
3775 func_82118_a setSkullType 2 Set the entity type for the skull
3783 func_82131_u updateState 2 Checks if the Beacon has a valid pyramid underneath and direct sunlight above
3784 func_82132_j getSecondaryEffect 2 Return the secondary potion effect given by this beacon.
3785 func_82141_a copyDataFrom 2 Copies important data from another entity to this entity. Used when teleporting entities between worlds, as this actually deletes the teleporting entity and re-creates it on the other side. Params: Entity to copy from, unused (always true)
3786 func_82142_c setHasActivePotion setInvisible 2
3787 func_82144_au doesEntityNotTriggerPressurePlate 2 Return whether this entity should NOT trigger a pressure plate or a tripwire.
3788 func_82145_z getMaxInPortalTime 2 Return the amount of time this entity should stay in a portal before being transported.
3789 func_82147_ab getPortalCooldown 2 Return the amount of cooldown before this entity can use a portal again.
3790 func_82150_aj func_82148_at getHasActivePotion getTeleportDirection 2
3791 func_82150_aj isInvisible 2
3792 func_82154_e setIsAnvil 2
3793 func_82159_b getArmorPosition 2
3794 func_82160_b dropEquipment 2 Drop the equipment for this entity.
3795 func_82161_a getArmorItemForSlot 2 Params: Armor slot, Item tier
3796 func_82163_bD initCreature 2 Initialize this creature.
3831 func_82245_bX isSpawnForced 2
3832 func_82246_f canCurrentToolHarvestBlock 2 Returns true if the item the player is holding can harvest the block at the given coords. Args: x, y, z.
3833 func_82247_a canPlayerEdit 2
3834 func_82265_c setEnabled 2
3835 func_82266_h setDisabledTextColour 2
3836 func_82273_a setFlatGeneratorInfo 2
3837 func_82274_h getRenderItem 2
3838 func_82275_e getFlatGeneratorInfo 2
3861 func_82357_ak getSpawnProtectionSize 2 Return the spawn protection area's size.
3862 func_82358_a isUsernameIndex 2 Return whether the specified command parameter index is a username parameter.
3863 func_82362_a getRequiredPermissionLevel 2 Return the required permission level for this command.
3864 func_82363_b parseDouble 2 Parses a double from the given string or throws an exception if it's not a double.
3865 func_82364_d getDifficultyForName 2 Return the difficulty value for the specified string.
3866 func_82366_d getGameRules 2 Return the game rule set this command should be able to manipulate.
3867 func_82369_d getAllOnlineUsernames 2 Return all usernames currently connected to the server.
3880 func_82384_c getDefaultMinimumRange 2 Gets the default minimum range (argument rm).
3881 func_82385_b matchPlayersAsString 2 Returns a nicely-formatted string listing the matching players.
3882 func_82386_a matchOnePlayer 2 Returns the one player that matches the given at-token. Returns null if more than one player matches.
func_82390_a drawNeedle 2 Draws the compass needle
3883 func_82392_a bindTextureByURL 2 Binds a texture that Minecraft will attempt to load from the given URL. (arguments: url, localFallback)
3884 func_82394_a renderTileEntitySkullAt 2 Render a skull tile entity.
3885 func_82398_a renderTileEntityBeaconAt 2 Render a beacon tile entity.
3895 func_82464_d stopAllSounds 2 Stops all currently playing sounds
3896 func_82465_b isEntitySoundPlaying 2 Returns true if a sound is currently associated with the given entity, or false otherwise.
3897 func_82466_e pauseAllSounds 2 Pauses all currently playing sounds
3898 func_82467_a playEntitySound 2 If a sound is already playing from the given entity, update the position and velocity of that sound to match the entity. Otherwise, start playing a sound from that entity. Args: The sound name, the entity, the volume, the pitch, unknown flag If a sound is already playing from the given entity, update the position and velocity of that sound to match the entity. Otherwise, start playing a sound from that entity. Setting the last flag to true will prevent other sounds from overriding this one. Args: The sound name, the entity, the volume, the pitch, priority
3899 func_82468_a setEntitySoundVolume 2 Sets the volume of the sound associated with the given entity, if one is playing. The volume is scaled by the global sound volume. Args: the entity, the volume (from 0 to 1)
3900 func_82469_c stopEntitySound 2 Stops playing the sound associated with the given entity
3901 func_82482_a dispense 2 Dispenses the specified ItemStack from a dispenser.
3904 func_82487_b dispenseStack 2 Dispense the specified stack, play the dispense sound and spawn particles.
3905 func_82489_a spawnDispenseParticles 2 Order clients to display dispense particles from the specified block and facing.
3906 func_82499_a getProjectileEntity 2 Return the projectile entity spawned by this dispense behavior.
3907 func_82505_u_ isFlowerPot 2 Returns true only if block is flowerPot
3908 func_82519_a_ onFinishFalling 2 Called when the falling block entity for this block hits the ground and turns back into a block
3909 func_82520_a onStartFalling 2 Called when the falling block entity for this block is created
func_82523_e isLockedByAnotherRepeater 2
3910 func_82524_c isRedstoneRepeaterBlockID 2
3911 func_82525_a getIPositionFromBlockSource 2
3912 func_82526_n dispense 2
3918 func_82538_d canConnectWallTo 2 Return whether an adjacent block can connect to a wall.
3919 func_82543_e isBlockStairsID 2 Checks if supplied ID is one of a BlockStairs
3920 func_82547_a comparePlayers 2 Compare the position of two players.
3921 func_82558_j getWalkSpeed 2
3922 func_82560_d getRelativeVolumeDisabled 2
3923 func_82563_j getShowCape 2
3924 func_82571_y getGeneratorOptions 2
3925 func_82572_b incrementTotalWorldTime 2
3939 func_82616_c getZ 2
3940 func_82617_b getY 2
3941 func_82618_k getWorld 2
3942 func_82619_j getBlockTileEntity 2
3943 func_82620_h getBlockMetadata 2
3944 func_82621_f getZInt 2
3945 func_82622_e getYInt 2
3946 func_82623_d getXInt 2
3988 func_82726_p setMagicDamage 2 Define the damage type as magic based.
3989 func_82732_R getWorldVec3Pool 2 Return the Vec3Pool object for this world.
3990 func_82733_a selectEntitiesWithinAABB 2
3991 func_82734_g getChunkHeightMapMinimum 2 Gets the heightMapMinimum field of the given chunk, or 0 if the chunk is not loaded. Coords are in blocks. Args: X, Z
3992 func_82736_K getGameRules 2 Gets the GameRules instance.
3993 func_82737_E getTotalWorldTime 2
3994 func_82742_i resetUpdateEntityTick 2 Resets the updateEntityTick field to 0
4008 func_82768_a readGameRulesFromNBT 2 Set defined game rules from NBT.
4009 func_82769_a addGameRule 2 Define a game rule and its default value.
4010 func_82770_a writeGameRulesToNBT 2 Return the defined game rules as NBT.
func_82772_a updateDynamicTexture 2 Updates a single dynamic texture
4011 func_82773_c hasImageData 2 Checks if urlToImageDataMap has image data for the given key
4012 func_82774_a setOverrideBlockTexture 2 Sets overrideBlockTexture
4013 func_82775_a renderBlockAnvil 2 Renders anvil
4054 func_82879_c sendSettingsToServer 2 Send a client info packet with settings information to the server
4055 func_82883_a getUnicodeFlag 2 Get unicodeFlag controlling whether strings should be rendered with Unicode fonts instead of the default.png font.
4056 func_82889_a getBatSize 2 not actually sure this is size, is not used as of now, but the model would be recreated if the value changed and it seems a good match for a bats size
4057 func_83003_a getMemoryReport 2 Returns a string with allocated and used memory.
4058 func_83005_z getBlockBoundsMinZ 2 returns the block bounderies minZ value
4059 func_83006_A getBlockBoundsMaxZ 2 returns the block bounderies maxZ value
4060 func_83007_w getBlockBoundsMaxX 2 returns the block bounderies maxX value
4082 func_85055_a makeCrashReport 2 Creates a crash report for the exception
4083 func_85057_a makeCategoryDepth 2 Creates a CrashReportCategory for the given stack trace depth
4084 func_85058_a makeCategory 2 Creates a CrashReportCategory
4085 func_85062_a callBlockDataValue 2
4086 func_85064_a callBlockLocationInfo 2
4087 func_85071_a getLocationInfo 2 Returns a string with world information on location.Args:x,y,z
4088 func_85079_a callBlockType 2
4089 func_85085_a callSuspiciousClasses 2
4090 func_85093_e renderArrowsStuckInEntity 2 renders arrows the Entity has been attacked with, attached to it
4091 func_85096_a renderBlockAnvilMetadata 2 Renders anvil block with metadata
4092 func_85097_a callParticlePositionInfo 2
4093 func_85102_a playSoundToNearExcept 2 Plays sound to all near players except the player reference given
4094 func_85103_a canDropFromExplosion 2 Return whether this block can drop from an explosion.
4095 func_85104_a onBlockPlaced 2 Called when a block is placed using its ItemBlock. Args: World, X, Y, Z, side, hitX, hitY, hitZ, block metadata
4096 func_85105_g onPostBlockPlaced 2 Called after a block is placed
4097 func_85106_a insertRecord 2 Insert the specified music disc in the jukebox at the given coordinates
4098 func_85107_d updateLadderBounds 2 Update the ladder block bounds based on the given metadata value.
4099 func_85108_a callLevelGameModeInfo 2
4100 func_85110_a callLevelWeatherInfo 2
4101 func_85112_a callLevelStorageFormat 2
4102 func_85114_a callLevelDimension 2
4103 func_85116_n getThundering 2 Returns wether it's thundering or not.
4104 func_85118_a addToCrashReport 2 Adds this WorldInfo instance to the crash report.
4105 func_85119_k getRainTime 2
4106 func_85120_o getGameType 2
4107 func_85121_j getSaveVersion 2
4108 func_85123_f getSpawnZCoordinate 2
4109 func_85124_e getSpawnYCoordinate 2
4110 func_85125_d getSpawnXCoordinate 2
4111 func_85127_l getRaining 2 Returns wether it's raining or not.
4112 func_85128_b getMapFeaturesEnabled 2 Return the map feautures enabled of a world
4113 func_85129_h getWorldTime 2
4114 func_85130_c getWorldGeneratorOptions 2
4115 func_85132_a getTerrainTypeOfWorld 2 Return the terrain type of a world
4116 func_85133_m getThunderTime 2
4117 func_85134_a callLevelSpawnLocation 2
4118 func_85136_a callLevelTime 2
4119 func_85138_a callLevelGeneratorInfo 2
4120 func_85140_a callLevelGeneratorOptions 2
4121 func_85142_a callLevelSeed 2
4122 func_85145_a callTileEntityName 2
4123 func_85151_d getLowerChestInventory 2 Return this chest container's lower chest inventory.
4124 func_85154_a callEntityType 2
4125 func_85156_a removeTask 2 removes the indicated task from the entity's AI tasks.
4126 func_85157_q isAlwaysHarvested 2 Check to see if we can harvest it in any case.
4127 func_85158_p setAlwaysHarvested 2 Set as harvestable in any case.
4128 func_85160_a callStructureType 2
4129 func_85162_a callChunkPositionHash 2
4130 func_85170_a callServerType 2
4131 func_85173_a playSoundToNearExcept 2 Plays sound to all near players except the player reference given
4132 func_85175_e blockGetRenderType 2 Returns the render type of the block at the given coordinate.
4133 func_85176_s getDefaultTeleporter 2
4134 func_85181_a getRandomModelBox 2
4135 func_85182_a sameToolAndBlock 2
4136 func_85187_a drawString 2 Draws the specified string. Args: string, x, y, color, dropShadow
4137 func_85188_a makePortal 2
4138 func_85189_a removeStalePortalLocations 2 called periodically to remove out-of-date portal locations from the cache list. Argument par1 is a WorldServer.getTotalWorldTime() value.
4139 func_90010_a isPartOfLargeChest 2 Return whether the given inventory is part of this large chest.
4140 func_90011_a createChild 2
4141 func_90019_g applyRenderColor 2 Creates a new EntityDiggingFX with the block render color applied to the base particle color
4142 func_90022_d getListOfPlayers 2
4143 func_90023_a callMouseLocation 2
4144 func_90027_a callScreenSize 2
4145 func_90030_a getRendererMinecraft 2 Get minecraft reference from the EntityRenderer
4146 func_90031_a callScreenName 2
4147 func_90033_f canLoadWorld 2 Return whether the given world can be loaded.
4148 func_90035_a getClassFromID 2 Return the class assigned to this entity ID.
4149 func_90036_a getFireAspectModifier 2
4150 func_90042_d getRecord 2 Return the record item corresponding to the given name.
4151 func_90043_g getRecordTitle 2 Return the title for this record.
4152 func_90045_a callClientProfilerInfo 2
4153 func_90047_a callClientMemoryStats 2
4154 func_90050_a callTexturePack 2
4155 func_90052_a callParticleScreenName 2
4156 func_90054_a callUpdatingScreenName 2
4157 func_90999_ad canRenderOnFire 2 Return whether this entity should be rendered as on fire.
func_92013_a setEntityItem 2 Sets the ItemStack corresponding to this Entity (and updates the DataWatcher for it)
func_92014_d getEntityItem 2 Returns the ItemStack corresponding to the Entity (Note: if no item exists, will log an error but still return an ItemStack containing Block.stone)
func_92015_a getMobID 2
func_92027_k sendChatMsg 2 Sends the given string to every player as chat message.
func_92051_a addRecipe 2
4158 func_92058_a setEntityItemStack 2 Sets the ItemStack for this entity
4159 func_92059_d getEntityItem 2 Returns the ItemStack corresponding to the Entity (Note: if no item exists, will log an error but still return an ItemStack containing Block.stone)
4160 func_92062_k sendChatMsg 2 Sends the given string to every player as chat message.
4161 func_92085_d getIsBlank 2
4162 func_92087_a causeThornsDamage 2 Returns the EntityDamageSource of the Thorns enchantment
4163 func_92089_a canApply 2
4164 func_92097_a negateDamage 2 Used by ItemStack.attemptDamageItem. Randomly determines if a point of damage should be negated using the enchantment level (par1). If the ItemStack is Armor then there is a flat 60% chance for damage to be negated no matter the enchantment level, otherwise there is a 1-(par/1) chance for damage to be negated.
4165 func_92103_a addRecipe 2
4166 func_94041_b isStackValidForSlot 2 Returns true if automation is allowed to insert the given stack (ignoring stack size) into the given slot.
4167 func_94042_c isInvNameLocalized 2 If this returns false, the inventory name will be used as an unlocalized name, and translated into the player's language. Otherwise it will be used directly.
4168 func_94049_a setCustomName 2
4169 func_94052_a setParticleIcon 2
4170 func_94053_h nextTextureIndexX 2
4171 func_94064_a displayGUIHopper 2
4172 func_94065_a drawTexturedModelRectFromIcon 2
4173 func_94083_c getTntPlacedBy 2 returns null or the entityliving it was placed or ignited by
4174 func_94085_r getDefaultDisplayTileOffset 2
4175 func_94086_l setDisplayTileOffset 2
4176 func_94087_l getMinecartType 2
4177 func_94089_m getDisplayTile 2
4178 func_94090_a createMinecart 2 Creates a new minecart of the specified type in the specified location in the given world. par0World - world to create the minecart in, double par1,par3,par5 represent x,y,z respectively. int par7 specifies the type: 1 for MinecartChest, 2 for MinecartFurnace, 3 for MinecartTNT, 4 for MinecartMobSpawner, 5 for MinecartHopper and 0 for a standard empty minecart
4179 func_94091_a updateOnTrack 2
4180 func_94092_k setDisplayTileData 2
4181 func_94093_n getDefaultDisplayTile 2
4182 func_94094_j setDisplayTile 2
4183 func_94095_a killMinecart 2
4184 func_94096_e setHasDisplayTile 2
4185 func_94097_p getDefaultDisplayTileData 2
4186 func_94098_o getDisplayTileData 2
4187 func_94099_q getDisplayTileOffset 2
4188 func_94100_s hasDisplayTile 2
4189 func_94101_h applyDrag 2
4190 func_94103_c explodeCart 2 Makes the minecart explode.
4191 func_94105_c ignite 2 Ignites this TNT cart.
4192 func_94107_f setMinecartPowered 2
4193 func_94108_c isMinecartPowered 2
4194 func_94114_a areItemStacksEqualItem 2
4195 func_94116_j insertItemToInventory 2 Inserts one item from the hopper into the inventory the hopper is pointing at.
4196 func_94117_a insertStack 2 Inserts a stack into an inventory. Args: Inventory, stack, side. Returns leftover items.
4197 func_94119_v getOutputInventory 2 Gets the inventory the hopper is pointing at.
4198 func_94128_d getAccessibleSlotsFromSide 2 Returns an array containing the indices of the slots that can be accessed by automation on the given side of this block.
4199 func_94140_a registerDestroyBlockIcons 2
4200 func_94143_a updateIcons 2
4201 func_94144_a renderBlockInMinecart 2 Renders the block that is inside the minecart.
4202 func_94148_a renderItemOverlayIntoGUI 2
4203 func_94149_a renderIcon 2
4204 func_94152_c refreshTextureMaps 2
4205 func_94156_a intersection 2
4206 func_94157_d getRectHeight 2
4207 func_94158_a getRectX 2
4208 func_94159_c getRectWidth 2
4209 func_94160_b getRectY 2
4210 func_94165_a getBlockIconFromSideAndMetadata 2
4211 func_94167_b hasOverrideBlockTexture 2
4212 func_94170_a getBlockIcon 2
4213 func_94171_a renderBlockComparator 2
4214 func_94172_a renderBlockHopper 2
4215 func_94173_a getBlockIconFromSide 2
4216 func_94174_a renderBlockRedstoneLogicMetadata 2
4217 func_94175_b getBlockIcon 2
4218 func_94176_a renderBlockRedstoneLogic 2
4219 func_94178_a updateIcons 2
4220 func_94179_g isCompatible 2
4221 func_94183_a getStitchHolder 2
4222 func_94184_a getAllStitchSlots 2 Gets the slot and all its subslots
4223 func_94185_c getOriginY 2
4224 func_94186_b getOriginX 2
4225 func_94193_b ceil16 2
4226 func_94194_d rotate 2
4227 func_94195_e isRotated 2
4228 func_94196_a setNewDimension 2
4229 func_94197_a getWidth 2
4230 func_94198_a compareToStitchHolder 2 See Comparable.compareTo.
4231 func_94199_b getHeight 2
4232 func_94206_g getMinV 2 Returns the minimum V coordinate to use when rendering with this icon.
4233 func_94207_b getInterpolatedV 2 Gets a V coordinate on the icon. 0 returns vMin and 16 returns vMax. Other arguments return in-between values.
4234 func_94208_k getSheetHeight 2 Returns the height of the texture sheet this icon is on, in pixels.
4235 func_94209_e getMinU 2 Returns the minimum U coordinate to use when rendering with this icon.
4236 func_94210_h getMaxV 2 Returns the maximum V coordinate to use when rendering with this icon.
4237 func_94211_a getOriginX 2 Returns the X position of this icon on its texture sheet, in pixels.
4238 func_94212_f getMaxU 2 Returns the maximum U coordinate to use when rendering with this icon.
4239 func_94213_j getSheetWidth 2 Returns the width of the texture sheet this icon is on, in pixels.
4240 func_94214_a getInterpolatedU 2 Gets a U coordinate on the icon. 0 returns uMin and 16 returns uMax. Other arguments return in-between values.
4241 func_94215_i getIconName 2
4242 func_94216_b getOriginY 2 Returns the Y position of this icon on its texture sheet, in pixels.
4243 func_94217_a copyFrom 2
4244 func_94218_a init 2
4245 func_94219_l updateAnimation 2
4246 func_94220_a makeTextureStitched 2
4247 func_94221_a readAnimationInfo 2
4248 func_94241_a updateCompass 2 Updates the compass based on the given x,z coords and camera direction
4249 func_94245_a registerIcon 2
4250 func_94246_d getTexture 2
4251 func_94247_b refreshTextures 2
4252 func_94248_c updateAnimations 2
4253 func_94259_a registerTexture 2
4254 func_94261_a makeTexture 2
4255 func_94262_d createStitcher 2
4256 func_94263_a init 2
4257 func_94264_a registerTexture 2
4258 func_94265_c getNextTextureId 2
4259 func_94266_e createTexture 2
4260 func_94267_b instance 2
4261 func_94272_a fillRect 2
4262 func_94273_h getTextureData 2
4263 func_94274_a getTextureRect 2
4264 func_94275_d getWidth 2
4265 func_94276_e getHeight 2
4266 func_94277_a bindTexture 2
4267 func_94278_a transferFromImage 2
4268 func_94279_c writeImage 2
4269 func_94280_f getTextureName 2
4270 func_94281_a copyFrom 2
4271 func_94282_c getGlTextureId 2
4272 func_94284_b getTextureId 2
4273 func_94285_g uploadTexture 2
4274 func_94305_f doStitch 2
4275 func_94306_e getTexture 2
4276 func_94308_a getCeilPowerOf2 2 Returns power of 2 >= the specified value
4277 func_94309_g getStichSlots 2
4278 func_94310_b allocateSlot 2 Attempts to find space for specified tile
4279 func_94311_c expandAndAllocateSlot 2 Expand stitched texture in order to make space for specified tile
4280 func_94312_a addStitchHolder 2
4281 func_94327_t_ getItemIconName 2 Gets the icon name of the ItemBlock corresponding to this block. Used by hoppers.
4282 func_94328_b_ getComparatorInputOverride 2 If hasComparatorInputOverride returns true, the return value from this is used instead of the redstone signal strength when this block inputs to a comparator.
4283 func_94329_b isAssociatedBlockID 2 Static version of isAssociatedBlockID.
4284 func_94330_A getUnlocalizedName2 2 Returns the unlocalized name without the tile. prefix. Caution: client-only.
4285 func_94331_a canPlaceBlockOnSide 2
4286 func_94332_a registerIcons 2 When this method is called, your block should register all the icons it needs with the given IconRegister. This is the only chance you get to register icons.
4287 func_94334_h isAssociatedBlockID 2 Returns true if the given block ID is equivalent to this one. Example: redstoneTorchOn matches itself and redstoneTorchOff, and vice versa. Most blocks only match themselves.
4288 func_94350_c getPowerSupply 2 Argument is metadata. Returns power level (0-15)
4289 func_94351_d getPlateState 2 Returns the current state of the pressure plate. Returns a value between 0 and 15 based on the number of items on it.
4290 func_94352_a getSensitiveAABB 2
4291 func_94355_d getMetaFromWeight 2 Argument is weight (0-15). Return the metadata to be set because of it.
4292 func_94434_o getIconSideOverlay 2
4293 func_94442_h_ getInventory 2 Gets the inventory of the chest at the specified coords, accounting for blocks or ocelots on top of the chest, and double chests.
4294 func_94444_j_ updateLightLevel 2
4295 func_94446_i getBeaconIcon 2
4296 func_94448_e getBrewingStandIcon 2
4297 func_94451_c getDirectionFromMetadata 2
4298 func_94452_d getIsBlockNotPoweredFromMetadata 2
4299 func_94453_b getHopperIcon 2
4300 func_94501_a getRailLogic 2
4301 func_94502_a isMinecartTrack 2
4302 func_94503_c canConnectFrom 2
4303 func_94504_a setBasicRail 2
4304 func_94505_a getNumberOfAdjacentTracks 2
4305 func_94506_c connectToNeighbor 2
4306 func_94507_b canConnectTo 2
4307 func_94508_a isRailChunkPositionCorrect 2 Checks if the rail is at the chunk position it is expected to be.
4308 func_94509_b refreshConnectedTracks 2
4309 func_94510_b isPartOfTrack 2
4310 func_94520_b containsTranslateKey 2
4311 func_94526_b calcRedstoneFromInventory 2
4312 func_94539_a setExplosionSource 2
4313 func_94540_d setExplosion 2
4314 func_94541_c isExplosion 2
4315 func_94571_i setBlockToAir 2 Sets a block to 0 and notifies relevant systems with the block change Args: x, y, z
4316 func_94572_D getStrongestIndirectPower 2
4317 func_94573_a isBlockTickScheduled 2 Returns true if the given block will receive a scheduled tick in the future. Args: X, Y, Z, blockID
4318 func_94574_k getIndirectPowerOutput 2 Returns the indirect signal strength being outputted by the given block in the *opposite* of the given direction. Args: X, Y, Z, direction
4319 func_94575_c setBlock 2 Sets a block and notifies relevant systems with the block change Args: x, y, z, blockID
4320 func_94576_a getEntitiesWithinAABBExcludingEntity 2
4321 func_94577_B getBlockPowerInput 2 Returns the highest redstone signal strength powering the given block. Args: X, Y, Z.
4322 func_94578_a destroyBlock 2 Destroys a block and optionally drops items. Args: X, Y, Z, dropItems
4323 func_94581_a registerIcons 2
4324 func_94599_c getItemIconForUseDuration 2 used to cycle through icons based on their used duration, i.e. for the bow
4325 func_94608_d getItemSpriteNumber 2
4326 func_94609_a callTileEntityID 2
4327 func_94611_a callTileEntityDataInfo 2
4328 func_94901_k getSpriteNumber 2 Returns 0 for /terrain.png, 1 for /gui/items.png
4329 func_96090_ax getTranslatedEntityName 2 Returns the translated name of the entity.
4330 func_96095_a onActivatorRailPass 2 Called every tick the minecart is on an activator rail.
4331 func_96096_ay isIgnited 2 Returns true if the TNT minecart is ignited.
4332 func_96104_c setCommandSenderName 2 Sets the name of the command sender
4333 func_96107_aA getXPos 2 Gets the world X position for this hopper entity.
4334 func_96108_aC getZPos 2 Gets the world Z position for this hopper entity.
4335 func_96109_aB getYPos 2 Gets the world Y position for this hopper entity.
4336 func_96110_f setBlocked 2 Set whether this hopper minecart is being blocked by an activator rail.
4337 func_96111_ay getBlocked 2 Get whether this hopper minecart is being blocked by an activator rail.
4338 func_96115_a setInventoryName 2
4339 func_96116_a suckItemsIntoHopper 2 Sucks one item into the given hopper from an inventory or EntityItem above it.
4340 func_96117_b getInventoryAtLocation 2 Gets an inventory at the given location to extract items into or take items from. Can find either a tile entity or regular entity implementing IInventory.
4341 func_96118_b getInventoryAboveHopper 2 Looks for anything, that can hold items (like chests, furnaces, etc.) one block above the given hopper.
4342 func_96123_co getWorldScoreboard 2
4343 func_96124_cp getTeam 2
4344 func_96125_a displayGUIHopperMinecart 2
4345 func_96334_d getScoreboardFromWorldServer 2
4346 func_96335_a getScoreObjectivesList 2 If the parameter is true, does not return read-only entries.
4347 func_96336_d getObjectivesList 2 Handler for the 'scoreboard objectives list' command.
4348 func_96337_e removeObjective 2 Handler for the 'scoreboard objectives remove' command.
4349 func_96338_a getTeam 2 Returns the ScorePlayerTeam for the given team name.
4350 func_96339_l setPlayerScore 2 Handler for the 'scoreboard players [add|remove|set]' commands.
4351 func_96340_c addTeam 2 Handler for the 'scoreboard teams add' command.
4352 func_96341_k listPlayers 2 Handler for the 'scoreboard players list' command.
4353 func_96342_g joinTeam 2 Handler for the 'scoreboard teams join' command.
4354 func_96343_e removeTeam 2 Handler for the 'scoreboard teams remove' command.
4355 func_96344_f getTeamList 2 Handler for the 'scoreboard teams list' command.
4356 func_96345_a getScoreObjective 2 User-safe version of Scoreboard.getObjective, does checks against the objective not being found and whether it's read-only or not. If true, the second parameter makes the function throw an exception if the objective is read-only.
4357 func_96346_i emptyTeam 2 Handler for the 'scoreboard teams empty' command.
4358 func_96347_j setObjectivesDisplay 2 Handler for the 'scoreboard objectives setdisplay' command.
4359 func_96348_d setTeamOption 2 Handler for the 'scoreboard teams option' command.
4360 func_96349_h leaveTeam 2 Handler for the 'scoreboard teams leave' command.
4361 func_96350_b addObjective 2 Handler for the 'scoreboard objectives add' command.
4362 func_96351_m resetPlayerScore 2 Handler for the 'scoreboard players reset' command.
4363 func_96435_a handleSetPlayerTeam 2 Handle a set player team packet.
4364 func_96436_a handleSetObjective 2 Handle a set objective packet.
4365 func_96437_a handleSetScore 2 Handle a set score packet.
4366 func_96438_a handleSetDisplayObjective 2 Handle a set display objective packet.
4367 func_96439_d notifyBlocksOfNeighborChange 2 Calls notifyBlockOfNeighborChange on adjacent blocks, except the one on the given side. Args: X, Y, Z, changingBlockID, side
4368 func_96441_U getScoreboard 2
4369 func_96444_a mixAoBrightness 2
4370 func_96445_r renderBlockQuartz 2
4371 func_96446_b getIconSafe 2
4372 func_96447_a renderBlockHopperMetadata 2
4373 func_96448_c getMissingIcon 2
4374 func_96455_e getMissingIcon 2
4375 func_96468_q_ hasComparatorInputOverride 2 If this returns true, then comparators facing away from this block will use the value from getComparatorInputOverride instead of the actual redstone signal strength.
4376 func_96471_k updateMetadata 2 Updates the Metadata to include if the Hopper gets powered by Redstone or not
4377 func_96472_a getBehaviorForItemStack 2 Returns the behavior for the given ItemStack.
4378 func_96475_a_ getTileEntityComparator 2 Returns the blockTileEntity at given coordinates.
4379 func_96477_c markOrGrowMarked 2
4380 func_96478_d setBlockBoundsForSnowDepth 2 calls setBlockBounds based on the depth of the snow. Int is any values 0x0-0x7, usually this blocks metadata.
4381 func_96509_i getPlayersTeam 2 Gets the ScorePlayerTeam object for the given username.
4382 func_96512_b removePlayerFromTeam 2 Removes the given username from the given ScorePlayerTeam. If the player is not on the team then an IllegalStateException is thrown.
4383 func_96514_c getScoreObjectives 2
4384 func_96517_b getObjectiveDisplaySlot 2 Returns 'list' for 0, 'sidebar' for 1, 'belowName for 2, otherwise null.
4385 func_96518_b getObjective 2 Returns a ScoreObjective for the objective name
4386 func_96526_d getObjectiveNames 2
4387 func_96537_j getObjectiveDisplaySlotNumber 2 Returns 0 for (case-insensitive) 'list', 1 for 'sidebar', 2 for 'belowName', otherwise -1.
4388 func_96556_a callServerMemoryStats 2
4389 func_96557_a callServerProfiler 2
4390 func_96559_d getFrontOffsetY 2
4391 func_96563_a callEntityName 2
4392 func_96631_a attemptDamageItem 2 Attempts to damage the ItemStack with par1 amount of damage, If the ItemStack has the Unbreaking enchantment there is a chance for each point of damage to be negated. Returns true if it takes more damage than getMaxDamage(). Returns false otherwise or if the ItemStack can't be damaged or if all points of damage are negated.
4393 func_96632_a callItemDisplayName 2
4394 func_96637_b isReadOnly 2
4395 func_96670_d getMembershipCollection 2
4396 func_96678_d getDisplayName 2
4397 func_96679_b getName 2
4398 func_96680_c getCriteria 2
4399 func_96681_a setDisplayName 2
4400 func_96682_a getScoreboard 2
4401 func_98033_al getLogAgent 2
4402 func_98035_c addNotRiddenEntityID 2
4403 func_98042_n setTransferTicker 2 Sets the transfer ticker, used to determine the delay between transfers.
4404 func_98043_aE canTransfer 2 Returns whether the hopper cart can currently transfer an item.
4405 func_98046_c setTransferCooldown 2
4406 func_98047_l isCoolingDown 2
4407 func_98052_bS canPickUpLoot 2
4408 func_98053_h setCanPickUpLoot 2
4409 func_98076_a getServerLogger 2
4410 func_98145_a createEmptyTexture 2
4411 func_98146_d getBasename 2 Strips directory and file extension from the specified path, returning only the filename
4412 func_98147_a hasAnimationTxt 2 Returns true if specified texture pack contains animation data for the specified texture file
4413 func_98152_d getAllUsernames 2
4414 func_98179_a computeLightValue 2
4415 func_98180_V getWorldLogAgent 2
4416 func_98182_a handleWorldParticles 2 Handle a world particles packet.
4417 func_98184_a setupTextureExt 2
4418 func_98185_a resetBoundTexture 2
4419 func_98186_a colorToAnaglyph 2
4420 func_98187_b bindTexture 2
4421 func_98194_g getPositionY 2 Gets the Y position of the particle.
4422 func_98195_d getParticleName 2
4423 func_98196_i getOffsetX 2 This is added to the X position after being multiplied by random.nextGaussian()
4424 func_98197_l getSpeed 2 Gets the speed of the particles.
4425 func_98198_h getPositionZ 2 Gets the Z position of the particle.
4426 func_98199_k getOffsetZ 2 This is added to the Z position after being multiplied by random.nextGaussian()
4427 func_98200_f getPositionX 2 Gets the X position of the particle.
4428 func_98201_j getOffsetY 2 This is added to the Y position after being multiplied by random.nextGaussian()
4429 func_98202_m getQuantity 2 Gets the number of particles to create.
4430 func_98213_d getHopperTile 2
4431 func_98225_a getPacketClass 2
4432 func_98230_d logFine 2
4433 func_98231_b logWarningFormatted 2
4434 func_98232_c logSevere 2
4435 func_98233_a logInfo 2
4436 func_98234_c logSevereException 2
4437 func_98235_b logWarningException 2
4438 func_98236_b logWarning 2
4439 func_98238_b setupLogger 2 Sets up the logger for usage.
4440 func_98243_a callPacketID 2
4441 func_98266_d getSpawnerZ 2
4442 func_98268_b setDelayToMin 2 Sets the delay to minDelay if parameter given is 1, else return false.
4443 func_98269_i getRandomMinecart 2
4444 func_98270_a readFromNBT 2
4445 func_98271_a getSpawnerWorld 2
4446 func_98272_a setMobID 2
4447 func_98274_c getSpawnerY 2
4448 func_98275_b getSpawnerX 2
4449 func_98276_e getEntityNameToSpawn 2 Gets the entity name that should be spawned.
4450 func_98277_a setRandomMinecart 2
4451 func_98278_g updateSpawner 2
4452 func_98279_f canRun 2 Returns true if there's a player close enough to this mob spawner to activate it.
4453 func_98280_b writeToNBT 2
4454 func_98304_a readFontData 2
4455 func_98305_c readFontTexture 2
4456 func_98306_d readGlyphSizes 2
+9 -4
View File
@@ -1,4 +1,6 @@
class,package
GuiScreenOnlineServersSubscreen,net/minecraft/client/gui
RunnableTitleScreen,net/minecraft/client/gui
Block,net/minecraft/block
BlockAnvil,net/minecraft/block
BlockBasePressurePlate,net/minecraft/block
@@ -245,13 +247,11 @@ ScaledResolution,net/minecraft/client/gui
ScreenChatOptions,net/minecraft/client/gui
SelectionListBase,net/minecraft/client/gui
SelectionListInvited,net/minecraft/client/gui
SelectionListLocation,net/minecraft/client/gui
TaskLongRunning,net/minecraft/client/gui
TaskOnlineConnect,net/minecraft/client/gui
TaskResetWorld,net/minecraft/client/gui
TaskWorldCreation,net/minecraft/client/gui
ThreadConnectToOnlineServer,net/minecraft/client/gui
ThreadCreateOnlineWorldScreen,net/minecraft/client/gui
ThreadOnlineConnect,net/minecraft/client/gui
ThreadOnlineScreen,net/minecraft/client/gui
ThreadPollServers,net/minecraft/client/gui
@@ -285,8 +285,6 @@ SlotCreativeInventory,net/minecraft/client/gui/inventory
ExceptionMcoHttp,net/minecraft/client/mco
ExceptionMcoService,net/minecraft/client/mco
ExceptionRetryCall,net/minecraft/client/mco
Location,net/minecraft/client/mco
Locations,net/minecraft/client/mco
McoClient,net/minecraft/client/mco
McoOption,net/minecraft/client/mco
McoOptionNone,net/minecraft/client/mco
@@ -302,6 +300,7 @@ RequestGet,net/minecraft/client/mco
RequestPost,net/minecraft/client/mco
RequestPut,net/minecraft/client/mco
TimerTaskMcoServerListUpdate,net/minecraft/client/mco
TimerTaskMcoServerListUpdateComparator,net/minecraft/client/mco
ValueObjectList,net/minecraft/client/mco
ValueObjectSubscription,net/minecraft/client/mco
ModelBase,net/minecraft/client/model
@@ -644,6 +643,12 @@ EnchantmentUntouching,net/minecraft/enchantment
EnchantmentWaterWorker,net/minecraft/enchantment
EnumEnchantmentType,net/minecraft/enchantment
IEnchantmentModifier,net/minecraft/enchantment
CallableEffectAmplifier,net/minecraft/entity
CallableEffectDuration,net/minecraft/entity
CallableEffectID,net/minecraft/entity
CallableEffectIsAmbient,net/minecraft/entity
CallableEffectIsSplash,net/minecraft/entity
CallableEffectName,net/minecraft/entity
CallableEntityName,net/minecraft/entity
CallableEntityTracker,net/minecraft/entity
CallableEntityType,net/minecraft/entity
1 class package
2 GuiScreenOnlineServersSubscreen net/minecraft/client/gui
3 RunnableTitleScreen net/minecraft/client/gui
4 Block net/minecraft/block
5 BlockAnvil net/minecraft/block
6 BlockBasePressurePlate net/minecraft/block
247 ScreenChatOptions net/minecraft/client/gui
248 SelectionListBase net/minecraft/client/gui
249 SelectionListInvited net/minecraft/client/gui
SelectionListLocation net/minecraft/client/gui
250 TaskLongRunning net/minecraft/client/gui
251 TaskOnlineConnect net/minecraft/client/gui
252 TaskResetWorld net/minecraft/client/gui
253 TaskWorldCreation net/minecraft/client/gui
254 ThreadConnectToOnlineServer net/minecraft/client/gui
ThreadCreateOnlineWorldScreen net/minecraft/client/gui
255 ThreadOnlineConnect net/minecraft/client/gui
256 ThreadOnlineScreen net/minecraft/client/gui
257 ThreadPollServers net/minecraft/client/gui
285 ExceptionMcoHttp net/minecraft/client/mco
286 ExceptionMcoService net/minecraft/client/mco
287 ExceptionRetryCall net/minecraft/client/mco
Location net/minecraft/client/mco
Locations net/minecraft/client/mco
288 McoClient net/minecraft/client/mco
289 McoOption net/minecraft/client/mco
290 McoOptionNone net/minecraft/client/mco
300 RequestPost net/minecraft/client/mco
301 RequestPut net/minecraft/client/mco
302 TimerTaskMcoServerListUpdate net/minecraft/client/mco
303 TimerTaskMcoServerListUpdateComparator net/minecraft/client/mco
304 ValueObjectList net/minecraft/client/mco
305 ValueObjectSubscription net/minecraft/client/mco
306 ModelBase net/minecraft/client/model
643 EnchantmentWaterWorker net/minecraft/enchantment
644 EnumEnchantmentType net/minecraft/enchantment
645 IEnchantmentModifier net/minecraft/enchantment
646 CallableEffectAmplifier net/minecraft/entity
647 CallableEffectDuration net/minecraft/entity
648 CallableEffectID net/minecraft/entity
649 CallableEffectIsAmbient net/minecraft/entity
650 CallableEffectIsSplash net/minecraft/entity
651 CallableEffectName net/minecraft/entity
652 CallableEntityName net/minecraft/entity
653 CallableEntityTracker net/minecraft/entity
654 CallableEntityType net/minecraft/entity
+209 -86
View File
@@ -1,12 +1,162 @@
param,name,side
p_100001_0_,par0,2
p_100003_1_,par1,2
p_100006_1_,par1Str,2
p_100006_2_,par2Str,2
p_100009_0_,par0,2
p_100012_1_,par1,2
p_100014_0_,par0McoServerList,2
p_100015_0_,par0KeyBinding,2
p_101000_0_,par0GuiScreenOnlineServers,2
p_101001_1_,par1,2
p_101001_2_,par2,2
p_101001_3_,par3,2
p_101001_4_,par4,2
p_101006_1_,par1,2
p_101006_2_,par2,2
p_101006_3_,par3,2
p_101006_4_,par4,2
p_101008_1_,par1,2
p_101008_2_,par2,2
p_101008_3_,par3,2
p_101008_4_,par4,2
p_101009_0_,par0GuiScreenOnlineServers,2
p_101009_1_,par1,2
p_101009_2_,par2,2
p_101009_3_,par3,2
p_101009_4_,par4,2
p_101012_0_,par0GuiScreenOnlineServers,2
p_101012_1_,par1,2
p_101012_2_,par2,2
p_101012_3_,par3,2
p_101012_4_,par4,2
p_101015_1_,par1Str,2
p_101018_1_,par1List,2
p_102007_1_,par1,2
p_102007_2_,par2ItemStack,2
p_102007_3_,par3,2
p_102008_1_,par1,2
p_102008_2_,par2ItemStack,2
p_102008_3_,par3,2
p_102012_0_,par0Hopper,2
p_102012_1_,par1IInventory,2
p_102012_2_,par2,2
p_102012_3_,par3,2
p_102013_0_,par0IInventory,2
p_102013_1_,par1ItemStack,2
p_102013_2_,par2,2
p_102013_3_,par3,2
p_102014_0_,par0IInventory,2
p_102014_1_,par1ItemStack,2
p_102014_2_,par2,2
p_102014_3_,par3,2
p_102015_0_,par0IInventory,2
p_102015_1_,par1ItemStack,2
p_102015_2_,par2,2
p_102015_3_,par3,2
p_102018_1_,par1,2
p_102021_1_,par1List,2
p_102021_2_,par2,2
p_102021_3_,par3,2
p_102023_1_,par1McoServer,2
p_102023_2_,par2McoServer,2
p_102026_1_,par1Block,2
p_102026_2_,par2,2
p_102027_1_,par1Block,2
p_102027_2_,par2,2
p_102027_3_,par3,2
p_102027_4_,par4,2
p_102027_5_,par5,2
p_102027_6_,par6,2
p_102027_7_,par7,2
p_104004_0_,par0GuiMainMenu,2
p_104005_0_,par0GuiMainMenu,2
p_104005_1_,par1Str,2
p_104006_0_,par0GuiMainMenu,2
p_104006_1_,par1,2
p_104007_0_,par0GuiMainMenu,2
p_104008_0_,par0GuiMainMenu,2
p_104008_1_,par1,2
p_104009_0_,par0GuiMainMenu,2
p_104009_1_,par1,2
p_104010_0_,par0,2
p_104011_0_,par0GuiMainMenu,2
p_104011_1_,par1,2
p_104012_0_,par0GuiMainMenu,2
p_104012_1_,par1,2
p_104013_0_,par0GuiMainMenu,2
p_104013_1_,par1Str,2
p_104014_0_,par0GuiMainMenu,2
p_104014_1_,par1,2
p_104015_0_,par0GuiMainMenu,2
p_104016_0_,par0GuiMainMenu,2
p_104017_0_,par0GuiMainMenu,2
p_104018_0_,par0GuiMainMenu,2
p_104019_0_,par0GuiMainMenu,2
p_104020_0_,par0GuiMainMenu,2
p_104021_0_,par0GuiMainMenu,2
p_104021_1_,par1StringTranslate,2
p_104021_2_,par2,2
p_104021_3_,par3,2
p_104022_0_,par0GuiMainMenu,2
p_104023_0_,par0GuiMainMenu,2
p_104026_0_,par0GuiScreenOnlineServers,2
p_104026_1_,par1Str,2
p_104027_0_,par0GuiScreenOnlineServers,2
p_104028_0_,par0GuiScreenOnlineServers,2
p_104029_0_,par0GuiScreenOnlineServers,2
p_104030_0_,par0GuiScreenOnlineServers,2
p_104030_1_,par1,2
p_104030_2_,par2,2
p_104030_3_,par3,2
p_104030_4_,par4,2
p_104030_5_,par5,2
p_104031_0_,par0GuiScreenOnlineServers,2
p_104031_1_,par1,2
p_104031_2_,par2,2
p_104031_3_,par3,2
p_104031_4_,par4,2
p_104032_0_,par0GuiScreenOnlineServers,2
p_104033_0_,par0GuiScreenOnlineServers,2
p_104034_0_,par0GuiScreenOnlineServers,2
p_104034_1_,par1McoServer,2
p_104036_0_,par0GuiScreenOnlineServers,2
p_104038_0_,par0GuiScreenOnlineServers,2
p_104039_1_,par1,2
p_104039_2_,par2,2
p_104039_3_,par3,2
p_104039_4_,par4,2
p_104039_5_,par5,2
p_104040_0_,par0GuiScreenOnlineServers,2
p_104043_0_,par0GuiScreenOnlineServers,2
p_104047_0_,par0GuiScreenCreateOnlineWorld,2
p_104048_0_,par0GuiScreenCreateOnlineWorld,2
p_104055_1_,par1,2
p_104062_1_,par1,2
p_104062_2_,par2,2
p_104062_3_,par3Texture,2
p_104064_0_,par0Str,2
p_104064_1_,par1Str,2
p_104064_2_,par2,2
p_104064_3_,par3,2
p_104069_1_,par1GuiButton,2
p_104071_1_,par1GuiScreen,2
p_104071_2_,par2FontRenderer,2
p_104083_1_,par1,2
p_104083_2_,par2,2
p_104083_3_,par3,2
p_104083_4_,par4,2
p_104084_1_,par1,2
p_104084_2_,par2,2
p_104084_3_,par3,2
p_104084_4_,par4,2
p_104086_1_,par1,2
p_104087_1_,par1,2
p_104087_2_,par2,2
p_104088_1_,par1,2
p_104088_2_,par2,2
p_104088_3_,par3Tessellator,2
p_104089_1_,par1,2
p_104089_2_,par2,2
p_104145_0_,par0URL,2
p_70000_1_,par1PlayerUsageSnooper,2
p_70001_1_,par1PlayerUsageSnooper,2
p_70003_1_,par1,2
@@ -650,7 +800,6 @@ p_71754_2_,par2Str,2
p_71761_1_,par1InetAddress,2
p_71764_1_,par1NetLoginHandler,2
p_71769_1_,par1InetAddress,2
p_71770_0_,par0InetAddress,2
p_71789_1_,par1,2
p_71790_1_,par1ArrayOfByte,2
p_71790_2_,par2,2
@@ -7221,12 +7370,9 @@ p_94103_1_,par1,2
p_94107_1_,par1,2
p_94114_1_,par1ItemStack,2
p_94114_2_,par2ItemStack,2
p_94115_1_,par1IInventory,2
p_94115_2_,par2,2
p_94117_1_,par1IInventory,2
p_94117_2_,par2ItemStack,2
p_94117_3_,par3,2
p_94127_1_,par1,2
p_94128_1_,par1,2
p_94129_1_,par1Str,2
p_94131_1_,par1Str,2
@@ -7590,31 +7736,11 @@ p_96161_0_,par0GuiScreenOnlineServers,2
p_96165_1_,par1Str,2
p_96165_2_,par2,2
p_96165_3_,par3,2
p_96168_1_,par1,2
p_96168_2_,par2,2
p_96174_1_,par1McoServer,2
p_96175_1_,par1,2
p_96175_2_,par2,2
p_96177_0_,par0GuiScreenOnlineServers,2
p_96179_0_,par0GuiScreenOnlineServers,2
p_96179_1_,par1McoServer,2
p_96182_0_,par0GuiScreenOnlineServers,2
p_96209_1_,par1Str,2
p_96210_1_,par1Str,2
p_96230_0_,par0GuiScreenSelectLocation,2
p_96231_0_,par0GuiScreenSelectLocation,2
p_96232_0_,par0GuiScreenSelectLocation,2
p_96233_0_,par0GuiScreenSelectLocation,2
p_96234_0_,par0GuiScreenSelectLocation,2
p_96234_1_,par1Location,2
p_96235_0_,par0GuiScreenSelectLocation,2
p_96236_0_,par0GuiScreenSelectLocation,2
p_96246_0_,par0GuiScreenCreateOnlineWorld,2
p_96247_0_,par0GuiScreenCreateOnlineWorld,2
p_96248_0_,par0GuiScreenCreateOnlineWorld,2
p_96251_1_,par1Location,2
p_96251_2_,par2Str,2
p_96251_3_,par3Str,2
p_96263_0_,par0GuiScreenConfigureWorld,2
p_96264_1_,par1,2
p_96265_0_,par0GuiScreenConfigureWorld,2
@@ -7703,6 +7829,7 @@ p_96363_0_,par0Str,2
p_96363_1_,par1Str,2
p_96374_1_,par1,2
p_96376_1_,par1,2
p_96376_3_,par3Str,2
p_96377_1_,par1Request,2
p_96378_1_,par1,2
p_96380_1_,par1Str,2
@@ -7712,9 +7839,12 @@ p_96383_1_,par1,2
p_96384_1_,par1,2
p_96384_3_,par3Str,2
p_96384_4_,par4Str,2
p_96384_5_,par5,2
p_96384_6_,par6,2
p_96386_1_,par1Str,2
p_96386_2_,par2Str,2
p_96386_3_,par3Str,2
p_96386_4_,par4Str,2
p_96387_1_,par1,2
p_96387_3_,par3Str,2
p_96394_0_,par0Field,2
@@ -7901,57 +8031,25 @@ p_98046_1_,par1,2
p_98053_1_,par1,2
p_98054_1_,par1,2
p_98055_1_,par1,2
p_98058_0_,par0GuiMainMenu,2
p_98059_0_,par0,2
p_98060_1_,par1StringTranslate,2
p_98060_2_,par2,2
p_98060_3_,par3,2
p_98061_0_,par0GuiMainMenu,2
p_98061_1_,par1StringTranslate,2
p_98061_2_,par2,2
p_98061_3_,par3,2
p_98062_1_,par1,2
p_98063_1_,par1,2
p_98070_0_,par0GuiScreenOnlineServers,2
p_98070_1_,par1,2
p_98070_2_,par2,2
p_98071_0_,par0GuiScreenOnlineServers,2
p_98072_0_,par0GuiScreenOnlineServers,2
p_98074_0_,par0GuiScreenOnlineServers,2
p_98075_0_,par0GuiScreenOnlineServers,2
p_98076_0_,par0GuiScreenOnlineServers,2
p_98077_0_,par0GuiScreenOnlineServers,2
p_98077_1_,par1,2
p_98077_2_,par2,2
p_98078_0_,par0GuiScreenOnlineServers,2
p_98078_1_,par1,2
p_98079_0_,par0GuiScreenOnlineServers,2
p_98081_0_,par0GuiScreenOnlineServers,2
p_98081_1_,par1,2
p_98083_0_,par0GuiScreenOnlineServers,2
p_98083_1_,par1,2
p_98083_2_,par2,2
p_98084_0_,par0GuiScreenOnlineServers,2
p_98085_0_,par0GuiScreenOnlineServers,2
p_98085_1_,par1Str,2
p_98086_1_,par1,2
p_98087_0_,par0GuiScreenOnlineServers,2
p_98088_1_,par1,2
p_98088_2_,par2,2
p_98089_0_,par0GuiScreenOnlineServers,2
p_98089_1_,par1,2
p_98091_0_,par0GuiScreenOnlineServers,2
p_98092_0_,par0GuiScreenOnlineServers,2
p_98094_0_,par0GuiScreenOnlineServers,2
p_98096_0_,par0GuiConnecting,2
p_98097_0_,par0GuiConnecting,2
p_98099_0_,par0GuiScreenCreateOnlineWorld,2
p_98100_0_,par0GuiScreenCreateOnlineWorld,2
p_98100_1_,par1Location,2
p_98101_0_,par0GuiScreenCreateOnlineWorld,2
p_98102_0_,par0GuiScreenCreateOnlineWorld,2
p_98102_1_,par1List,2
p_98103_0_,par0GuiScreenCreateOnlineWorld,2
p_98137_1_,par1Str,2
p_98137_2_,par2,2
p_98138_1_,par1Str,2
@@ -7979,12 +8077,8 @@ p_98162_0_,par0Str,2
p_98163_0_,par0JsonNode,2
p_98164_0_,par0List,2
p_98165_0_,par0Str,2
p_98167_0_,par0JsonNode,2
p_98168_0_,par0JsonNode,2
p_98168_1_,par1Str,2
p_98169_0_,par0Str,2
p_98172_0_,par0TaskOnlineConnect,2
p_98174_0_,par0Str,2
p_98176_1_,par1,2
p_98177_1_,par1,2
p_98179_1_,par1,2
@@ -8079,11 +8173,9 @@ p_i10003_1_,par1,2
p_i10003_2_,par2,2
p_i10004_1_,par1,2
p_i10004_2_,par2,2
p_i10005_1_,par1,2
p_i10005_2_,par2,2
p_i10005_1_,par1ScorePlayerTeam,2
p_i10005_2_,par2Collection,2
p_i10005_3_,par3,2
p_i10005_4_,par4Str,2
p_i10005_5_,par5Str,2
p_i10006_1_,par1,2
p_i10006_2_,par2,2
p_i10007_1_,par1,2
@@ -8093,8 +8185,6 @@ p_i10008_3_,par3TaskLongRunning,2
p_i10009_1_,par1GuiSlotOnlineServerList,2
p_i10009_2_,par2McoServer,2
p_i10010_1_,par1GuiScreen,2
p_i10011_1_,par1GuiScreenResetWorld,2
p_i10011_2_,par2,2
p_i10012_1_,par1Minecraft,2
p_i10012_2_,par2,2
p_i10012_3_,par3,2
@@ -8106,13 +8196,6 @@ p_i10013_2_,par2GuiScreen,2
p_i10013_3_,par3McoServer,2
p_i10014_1_,par1GuiScreen,2
p_i10014_2_,par2McoServer,2
p_i10015_1_,par1GuiScreen,2
p_i10015_2_,par2GuiScreen,2
p_i10015_3_,par3McoServer,2
p_i10017_1_,par1GuiScreenCreateOnlineWorld,2
p_i10017_2_,par2Str,2
p_i10017_3_,par3Str,2
p_i10017_4_,par4Str,2
p_i10018_1_,par1TaskOnlineConnect,2
p_i10018_2_,par2Str,2
p_i10018_3_,par3,2
@@ -8214,7 +8297,6 @@ p_i11007_1_,par1GuiScreen,2
p_i11007_2_,par2Str,2
p_i11007_3_,par3Str,2
p_i11007_4_,par4ArrayOfObj,2
p_i11008_1_,par1GuiScreenCreateOnlineWorld,2
p_i11011_1_,par1GuiScreenOnlineServers,2
p_i11012_1_,par1Minecraft,2
p_i11012_2_,par2Str,2
@@ -8346,6 +8428,57 @@ p_i11045_1_,par1Str,2
p_i11046_1_,par1TileEntityMobSpawner,2
p_i20000_1_,par1Session,2
p_i20001_1_,par1Session,2
p_i22000_1_,par1TimerTaskMcoServerListUpdate,2
p_i22000_2_,par2Str,2
p_i22001_1_,par1TimerTaskMcoServerListUpdate,2
p_i22001_2_,par2Str,2
p_i22001_3_,par3McoServerListINNER1,2
p_i22002_1_,par1GuiScreen,2
p_i22002_2_,par2GuiScreenConfigureWorld,2
p_i22002_3_,par3McoServer,2
p_i22003_1_,par1EntityLiving,2
p_i22003_2_,par2PotionEffect,2
p_i22004_1_,par1EntityLiving,2
p_i22004_2_,par2PotionEffect,2
p_i22005_1_,par1EntityLiving,2
p_i22005_2_,par2PotionEffect,2
p_i22006_1_,par1EntityLiving,2
p_i22006_2_,par2PotionEffect,2
p_i22007_1_,par1EntityLiving,2
p_i22007_2_,par2PotionEffect,2
p_i22008_1_,par1EntityLiving,2
p_i22008_2_,par2PotionEffect,2
p_i22009_1_,par1World,2
p_i22009_2_,par2,2
p_i22009_3_,par3,2
p_i22009_4_,par4,2
p_i22009_5_,par5,2
p_i22009_6_,par6,2
p_i22009_7_,par7,2
p_i22009_8_,par8,2
p_i23000_1_,par1,2
p_i23000_2_,par2,2
p_i23000_3_,par3,2
p_i23000_4_,par4,2
p_i23001_1_,par1Minecraft,2
p_i23001_2_,par2,2
p_i23001_3_,par3,2
p_i23001_4_,par4,2
p_i23001_5_,par5,2
p_i23001_6_,par6,2
p_i23002_1_,par1GuiScreenResetWorld,2
p_i23002_2_,par2,2
p_i23002_4_,par4Str,2
p_i23003_1_,par1GuiScreenCreateOnlineWorld,2
p_i23003_2_,par2Str,2
p_i23003_3_,par3Str,2
p_i23003_4_,par4Str,2
p_i23003_5_,par5Str,2
p_i23004_1_,par1GuiScreen,2
p_i23004_2_,par2Str,2
p_i23004_3_,par3,2
p_i23004_4_,par4,2
p_i23005_1_,par1GuiMainMenu,2
p_i3000_1_,par1File,2
p_i3000_2_,par2Minecraft,2
p_i3001_1_,par1Map,2
@@ -8551,9 +8684,6 @@ p_i3101_1_,par1Minecraft,2
p_i3101_2_,par2World,2
p_i3101_3_,par3Session,2
p_i3101_4_,par4NetClientHandler,2
p_i3102_1_,par1GuiScreen,2
p_i3102_2_,par2Str,2
p_i3102_3_,par3,2
p_i3103_1_,par1Minecraft,2
p_i3103_2_,par2Str,2
p_i3103_3_,par3,2
@@ -9976,13 +10106,6 @@ p_i3738_3_,par3,2
p_i3739_1_,par1Str,2
p_i3739_2_,par2,2
p_i3739_3_,par3,2
p_i3740_1_,par1World,2
p_i3740_2_,par2,2
p_i3740_3_,par3,2
p_i3740_4_,par4,2
p_i3740_5_,par5,2
p_i3740_6_,par6,2
p_i3740_7_,par7,2
p_i3741_1_,par1,2
p_i3741_2_,par2,2
p_i3741_3_,par3,2
1 param name side
p_100001_0_ par0 2
p_100003_1_ par1 2
2 p_100006_1_ par1Str 2
3 p_100006_2_ par2Str 2
4 p_100009_0_ par0 2
5 p_100012_1_ par1 2
6 p_100014_0_ par0McoServerList 2
7 p_100015_0_ par0KeyBinding 2
8 p_101000_0_ par0GuiScreenOnlineServers 2
9 p_101001_1_ par1 2
10 p_101001_2_ par2 2
11 p_101001_3_ par3 2
12 p_101001_4_ par4 2
13 p_101006_1_ par1 2
14 p_101006_2_ par2 2
15 p_101006_3_ par3 2
16 p_101006_4_ par4 2
17 p_101008_1_ par1 2
18 p_101008_2_ par2 2
19 p_101008_3_ par3 2
20 p_101008_4_ par4 2
21 p_101009_0_ par0GuiScreenOnlineServers 2
22 p_101009_1_ par1 2
23 p_101009_2_ par2 2
24 p_101009_3_ par3 2
25 p_101009_4_ par4 2
26 p_101012_0_ par0GuiScreenOnlineServers 2
27 p_101012_1_ par1 2
28 p_101012_2_ par2 2
29 p_101012_3_ par3 2
30 p_101012_4_ par4 2
31 p_101015_1_ par1Str 2
32 p_101018_1_ par1List 2
33 p_102007_1_ par1 2
34 p_102007_2_ par2ItemStack 2
35 p_102007_3_ par3 2
36 p_102008_1_ par1 2
37 p_102008_2_ par2ItemStack 2
38 p_102008_3_ par3 2
39 p_102012_0_ par0Hopper 2
40 p_102012_1_ par1IInventory 2
41 p_102012_2_ par2 2
42 p_102012_3_ par3 2
43 p_102013_0_ par0IInventory 2
44 p_102013_1_ par1ItemStack 2
45 p_102013_2_ par2 2
46 p_102013_3_ par3 2
47 p_102014_0_ par0IInventory 2
48 p_102014_1_ par1ItemStack 2
49 p_102014_2_ par2 2
50 p_102014_3_ par3 2
51 p_102015_0_ par0IInventory 2
52 p_102015_1_ par1ItemStack 2
53 p_102015_2_ par2 2
54 p_102015_3_ par3 2
55 p_102018_1_ par1 2
56 p_102021_1_ par1List 2
57 p_102021_2_ par2 2
58 p_102021_3_ par3 2
59 p_102023_1_ par1McoServer 2
60 p_102023_2_ par2McoServer 2
61 p_102026_1_ par1Block 2
62 p_102026_2_ par2 2
63 p_102027_1_ par1Block 2
64 p_102027_2_ par2 2
65 p_102027_3_ par3 2
66 p_102027_4_ par4 2
67 p_102027_5_ par5 2
68 p_102027_6_ par6 2
69 p_102027_7_ par7 2
70 p_104004_0_ par0GuiMainMenu 2
71 p_104005_0_ par0GuiMainMenu 2
72 p_104005_1_ par1Str 2
73 p_104006_0_ par0GuiMainMenu 2
74 p_104006_1_ par1 2
75 p_104007_0_ par0GuiMainMenu 2
76 p_104008_0_ par0GuiMainMenu 2
77 p_104008_1_ par1 2
78 p_104009_0_ par0GuiMainMenu 2
79 p_104009_1_ par1 2
80 p_104010_0_ par0 2
81 p_104011_0_ par0GuiMainMenu 2
82 p_104011_1_ par1 2
83 p_104012_0_ par0GuiMainMenu 2
84 p_104012_1_ par1 2
85 p_104013_0_ par0GuiMainMenu 2
86 p_104013_1_ par1Str 2
87 p_104014_0_ par0GuiMainMenu 2
88 p_104014_1_ par1 2
89 p_104015_0_ par0GuiMainMenu 2
90 p_104016_0_ par0GuiMainMenu 2
91 p_104017_0_ par0GuiMainMenu 2
92 p_104018_0_ par0GuiMainMenu 2
93 p_104019_0_ par0GuiMainMenu 2
94 p_104020_0_ par0GuiMainMenu 2
95 p_104021_0_ par0GuiMainMenu 2
96 p_104021_1_ par1StringTranslate 2
97 p_104021_2_ par2 2
98 p_104021_3_ par3 2
99 p_104022_0_ par0GuiMainMenu 2
100 p_104023_0_ par0GuiMainMenu 2
101 p_104026_0_ par0GuiScreenOnlineServers 2
102 p_104026_1_ par1Str 2
103 p_104027_0_ par0GuiScreenOnlineServers 2
104 p_104028_0_ par0GuiScreenOnlineServers 2
105 p_104029_0_ par0GuiScreenOnlineServers 2
106 p_104030_0_ par0GuiScreenOnlineServers 2
107 p_104030_1_ par1 2
108 p_104030_2_ par2 2
109 p_104030_3_ par3 2
110 p_104030_4_ par4 2
111 p_104030_5_ par5 2
112 p_104031_0_ par0GuiScreenOnlineServers 2
113 p_104031_1_ par1 2
114 p_104031_2_ par2 2
115 p_104031_3_ par3 2
116 p_104031_4_ par4 2
117 p_104032_0_ par0GuiScreenOnlineServers 2
118 p_104033_0_ par0GuiScreenOnlineServers 2
119 p_104034_0_ par0GuiScreenOnlineServers 2
120 p_104034_1_ par1McoServer 2
121 p_104036_0_ par0GuiScreenOnlineServers 2
122 p_104038_0_ par0GuiScreenOnlineServers 2
123 p_104039_1_ par1 2
124 p_104039_2_ par2 2
125 p_104039_3_ par3 2
126 p_104039_4_ par4 2
127 p_104039_5_ par5 2
128 p_104040_0_ par0GuiScreenOnlineServers 2
129 p_104043_0_ par0GuiScreenOnlineServers 2
130 p_104047_0_ par0GuiScreenCreateOnlineWorld 2
131 p_104048_0_ par0GuiScreenCreateOnlineWorld 2
132 p_104055_1_ par1 2
133 p_104062_1_ par1 2
134 p_104062_2_ par2 2
135 p_104062_3_ par3Texture 2
136 p_104064_0_ par0Str 2
137 p_104064_1_ par1Str 2
138 p_104064_2_ par2 2
139 p_104064_3_ par3 2
140 p_104069_1_ par1GuiButton 2
141 p_104071_1_ par1GuiScreen 2
142 p_104071_2_ par2FontRenderer 2
143 p_104083_1_ par1 2
144 p_104083_2_ par2 2
145 p_104083_3_ par3 2
146 p_104083_4_ par4 2
147 p_104084_1_ par1 2
148 p_104084_2_ par2 2
149 p_104084_3_ par3 2
150 p_104084_4_ par4 2
151 p_104086_1_ par1 2
152 p_104087_1_ par1 2
153 p_104087_2_ par2 2
154 p_104088_1_ par1 2
155 p_104088_2_ par2 2
156 p_104088_3_ par3Tessellator 2
157 p_104089_1_ par1 2
158 p_104089_2_ par2 2
159 p_104145_0_ par0URL 2
160 p_70000_1_ par1PlayerUsageSnooper 2
161 p_70001_1_ par1PlayerUsageSnooper 2
162 p_70003_1_ par1 2
800 p_71761_1_ par1InetAddress 2
801 p_71764_1_ par1NetLoginHandler 2
802 p_71769_1_ par1InetAddress 2
p_71770_0_ par0InetAddress 2
803 p_71789_1_ par1 2
804 p_71790_1_ par1ArrayOfByte 2
805 p_71790_2_ par2 2
7370 p_94107_1_ par1 2
7371 p_94114_1_ par1ItemStack 2
7372 p_94114_2_ par2ItemStack 2
p_94115_1_ par1IInventory 2
p_94115_2_ par2 2
7373 p_94117_1_ par1IInventory 2
7374 p_94117_2_ par2ItemStack 2
7375 p_94117_3_ par3 2
p_94127_1_ par1 2
7376 p_94128_1_ par1 2
7377 p_94129_1_ par1Str 2
7378 p_94131_1_ par1Str 2
7736 p_96165_1_ par1Str 2
7737 p_96165_2_ par2 2
7738 p_96165_3_ par3 2
p_96168_1_ par1 2
p_96168_2_ par2 2
7739 p_96174_1_ par1McoServer 2
p_96175_1_ par1 2
p_96175_2_ par2 2
7740 p_96177_0_ par0GuiScreenOnlineServers 2
p_96179_0_ par0GuiScreenOnlineServers 2
p_96179_1_ par1McoServer 2
p_96182_0_ par0GuiScreenOnlineServers 2
7741 p_96209_1_ par1Str 2
7742 p_96210_1_ par1Str 2
p_96230_0_ par0GuiScreenSelectLocation 2
p_96231_0_ par0GuiScreenSelectLocation 2
p_96232_0_ par0GuiScreenSelectLocation 2
p_96233_0_ par0GuiScreenSelectLocation 2
p_96234_0_ par0GuiScreenSelectLocation 2
p_96234_1_ par1Location 2
p_96235_0_ par0GuiScreenSelectLocation 2
p_96236_0_ par0GuiScreenSelectLocation 2
p_96246_0_ par0GuiScreenCreateOnlineWorld 2
p_96247_0_ par0GuiScreenCreateOnlineWorld 2
7743 p_96248_0_ par0GuiScreenCreateOnlineWorld 2
p_96251_1_ par1Location 2
p_96251_2_ par2Str 2
p_96251_3_ par3Str 2
7744 p_96263_0_ par0GuiScreenConfigureWorld 2
7745 p_96264_1_ par1 2
7746 p_96265_0_ par0GuiScreenConfigureWorld 2
7829 p_96363_1_ par1Str 2
7830 p_96374_1_ par1 2
7831 p_96376_1_ par1 2
7832 p_96376_3_ par3Str 2
7833 p_96377_1_ par1Request 2
7834 p_96378_1_ par1 2
7835 p_96380_1_ par1Str 2
7839 p_96384_1_ par1 2
7840 p_96384_3_ par3Str 2
7841 p_96384_4_ par4Str 2
7842 p_96384_5_ par5 2
7843 p_96384_6_ par6 2
7844 p_96386_1_ par1Str 2
7845 p_96386_2_ par2Str 2
7846 p_96386_3_ par3Str 2
7847 p_96386_4_ par4Str 2
7848 p_96387_1_ par1 2
7849 p_96387_3_ par3Str 2
7850 p_96394_0_ par0Field 2
8031 p_98053_1_ par1 2
8032 p_98054_1_ par1 2
8033 p_98055_1_ par1 2
p_98058_0_ par0GuiMainMenu 2
p_98059_0_ par0 2
8034 p_98060_1_ par1StringTranslate 2
8035 p_98060_2_ par2 2
8036 p_98060_3_ par3 2
p_98061_0_ par0GuiMainMenu 2
p_98061_1_ par1StringTranslate 2
p_98061_2_ par2 2
p_98061_3_ par3 2
8037 p_98062_1_ par1 2
8038 p_98063_1_ par1 2
p_98070_0_ par0GuiScreenOnlineServers 2
p_98070_1_ par1 2
p_98070_2_ par2 2
p_98071_0_ par0GuiScreenOnlineServers 2
8039 p_98072_0_ par0GuiScreenOnlineServers 2
p_98074_0_ par0GuiScreenOnlineServers 2
8040 p_98075_0_ par0GuiScreenOnlineServers 2
8041 p_98076_0_ par0GuiScreenOnlineServers 2
p_98077_0_ par0GuiScreenOnlineServers 2
p_98077_1_ par1 2
p_98077_2_ par2 2
8042 p_98078_0_ par0GuiScreenOnlineServers 2
8043 p_98078_1_ par1 2
p_98079_0_ par0GuiScreenOnlineServers 2
8044 p_98081_0_ par0GuiScreenOnlineServers 2
8045 p_98081_1_ par1 2
p_98083_0_ par0GuiScreenOnlineServers 2
p_98083_1_ par1 2
p_98083_2_ par2 2
p_98084_0_ par0GuiScreenOnlineServers 2
p_98085_0_ par0GuiScreenOnlineServers 2
p_98085_1_ par1Str 2
8046 p_98086_1_ par1 2
p_98087_0_ par0GuiScreenOnlineServers 2
p_98088_1_ par1 2
p_98088_2_ par2 2
8047 p_98089_0_ par0GuiScreenOnlineServers 2
8048 p_98089_1_ par1 2
p_98091_0_ par0GuiScreenOnlineServers 2
8049 p_98092_0_ par0GuiScreenOnlineServers 2
8050 p_98094_0_ par0GuiScreenOnlineServers 2
8051 p_98096_0_ par0GuiConnecting 2
8052 p_98097_0_ par0GuiConnecting 2
p_98099_0_ par0GuiScreenCreateOnlineWorld 2
p_98100_0_ par0GuiScreenCreateOnlineWorld 2
p_98100_1_ par1Location 2
p_98101_0_ par0GuiScreenCreateOnlineWorld 2
p_98102_0_ par0GuiScreenCreateOnlineWorld 2
p_98102_1_ par1List 2
p_98103_0_ par0GuiScreenCreateOnlineWorld 2
8053 p_98137_1_ par1Str 2
8054 p_98137_2_ par2 2
8055 p_98138_1_ par1Str 2
8077 p_98163_0_ par0JsonNode 2
8078 p_98164_0_ par0List 2
8079 p_98165_0_ par0Str 2
p_98167_0_ par0JsonNode 2
p_98168_0_ par0JsonNode 2
p_98168_1_ par1Str 2
8080 p_98169_0_ par0Str 2
8081 p_98172_0_ par0TaskOnlineConnect 2
p_98174_0_ par0Str 2
8082 p_98176_1_ par1 2
8083 p_98177_1_ par1 2
8084 p_98179_1_ par1 2
8173 p_i10003_2_ par2 2
8174 p_i10004_1_ par1 2
8175 p_i10004_2_ par2 2
8176 p_i10005_1_ par1 par1ScorePlayerTeam 2
8177 p_i10005_2_ par2 par2Collection 2
8178 p_i10005_3_ par3 2
p_i10005_4_ par4Str 2
p_i10005_5_ par5Str 2
8179 p_i10006_1_ par1 2
8180 p_i10006_2_ par2 2
8181 p_i10007_1_ par1 2
8185 p_i10009_1_ par1GuiSlotOnlineServerList 2
8186 p_i10009_2_ par2McoServer 2
8187 p_i10010_1_ par1GuiScreen 2
p_i10011_1_ par1GuiScreenResetWorld 2
p_i10011_2_ par2 2
8188 p_i10012_1_ par1Minecraft 2
8189 p_i10012_2_ par2 2
8190 p_i10012_3_ par3 2
8196 p_i10013_3_ par3McoServer 2
8197 p_i10014_1_ par1GuiScreen 2
8198 p_i10014_2_ par2McoServer 2
p_i10015_1_ par1GuiScreen 2
p_i10015_2_ par2GuiScreen 2
p_i10015_3_ par3McoServer 2
p_i10017_1_ par1GuiScreenCreateOnlineWorld 2
p_i10017_2_ par2Str 2
p_i10017_3_ par3Str 2
p_i10017_4_ par4Str 2
8199 p_i10018_1_ par1TaskOnlineConnect 2
8200 p_i10018_2_ par2Str 2
8201 p_i10018_3_ par3 2
8297 p_i11007_2_ par2Str 2
8298 p_i11007_3_ par3Str 2
8299 p_i11007_4_ par4ArrayOfObj 2
p_i11008_1_ par1GuiScreenCreateOnlineWorld 2
8300 p_i11011_1_ par1GuiScreenOnlineServers 2
8301 p_i11012_1_ par1Minecraft 2
8302 p_i11012_2_ par2Str 2
8428 p_i11046_1_ par1TileEntityMobSpawner 2
8429 p_i20000_1_ par1Session 2
8430 p_i20001_1_ par1Session 2
8431 p_i22000_1_ par1TimerTaskMcoServerListUpdate 2
8432 p_i22000_2_ par2Str 2
8433 p_i22001_1_ par1TimerTaskMcoServerListUpdate 2
8434 p_i22001_2_ par2Str 2
8435 p_i22001_3_ par3McoServerListINNER1 2
8436 p_i22002_1_ par1GuiScreen 2
8437 p_i22002_2_ par2GuiScreenConfigureWorld 2
8438 p_i22002_3_ par3McoServer 2
8439 p_i22003_1_ par1EntityLiving 2
8440 p_i22003_2_ par2PotionEffect 2
8441 p_i22004_1_ par1EntityLiving 2
8442 p_i22004_2_ par2PotionEffect 2
8443 p_i22005_1_ par1EntityLiving 2
8444 p_i22005_2_ par2PotionEffect 2
8445 p_i22006_1_ par1EntityLiving 2
8446 p_i22006_2_ par2PotionEffect 2
8447 p_i22007_1_ par1EntityLiving 2
8448 p_i22007_2_ par2PotionEffect 2
8449 p_i22008_1_ par1EntityLiving 2
8450 p_i22008_2_ par2PotionEffect 2
8451 p_i22009_1_ par1World 2
8452 p_i22009_2_ par2 2
8453 p_i22009_3_ par3 2
8454 p_i22009_4_ par4 2
8455 p_i22009_5_ par5 2
8456 p_i22009_6_ par6 2
8457 p_i22009_7_ par7 2
8458 p_i22009_8_ par8 2
8459 p_i23000_1_ par1 2
8460 p_i23000_2_ par2 2
8461 p_i23000_3_ par3 2
8462 p_i23000_4_ par4 2
8463 p_i23001_1_ par1Minecraft 2
8464 p_i23001_2_ par2 2
8465 p_i23001_3_ par3 2
8466 p_i23001_4_ par4 2
8467 p_i23001_5_ par5 2
8468 p_i23001_6_ par6 2
8469 p_i23002_1_ par1GuiScreenResetWorld 2
8470 p_i23002_2_ par2 2
8471 p_i23002_4_ par4Str 2
8472 p_i23003_1_ par1GuiScreenCreateOnlineWorld 2
8473 p_i23003_2_ par2Str 2
8474 p_i23003_3_ par3Str 2
8475 p_i23003_4_ par4Str 2
8476 p_i23003_5_ par5Str 2
8477 p_i23004_1_ par1GuiScreen 2
8478 p_i23004_2_ par2Str 2
8479 p_i23004_3_ par3 2
8480 p_i23004_4_ par4 2
8481 p_i23005_1_ par1GuiMainMenu 2
8482 p_i3000_1_ par1File 2
8483 p_i3000_2_ par2Minecraft 2
8484 p_i3001_1_ par1Map 2
8684 p_i3101_2_ par2World 2
8685 p_i3101_3_ par3Session 2
8686 p_i3101_4_ par4NetClientHandler 2
p_i3102_1_ par1GuiScreen 2
p_i3102_2_ par2Str 2
p_i3102_3_ par3 2
8687 p_i3103_1_ par1Minecraft 2
8688 p_i3103_2_ par2Str 2
8689 p_i3103_3_ par3 2
10106 p_i3739_1_ par1Str 2
10107 p_i3739_2_ par2 2
10108 p_i3739_3_ par3 2
p_i3740_1_ par1World 2
p_i3740_2_ par2 2
p_i3740_3_ par3 2
p_i3740_4_ par4 2
p_i3740_5_ par5 2
p_i3740_6_ par6 2
p_i3740_7_ par7 2
10109 p_i3741_1_ par1 2
10110 p_i3741_2_ par2 2
10111 p_i3741_3_ par3 2
+32 -71
View File
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net\minecraft\client\Minecraft.java
--- minecraft\net\minecraft\client\Minecraft.java Fri Mar 08 22:39:55 2013
+++ minecraft_patched\net\minecraft\client\Minecraft.java Fri Mar 08 22:41:28 2013
@@ -531,9 +531,8 @@
--- minecraft\net\minecraft\client\Minecraft.java Sat Apr 27 01:53:03 2013
+++ minecraft_patched\net\minecraft\client\Minecraft.java Sat Apr 27 01:55:19 2013
@@ -532,9 +532,8 @@
return;
}
@@ -12,7 +12,7 @@ diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net
if(this.field_71434_R && this.field_71433_S != null) {
this.func_71377_b(this.field_71433_S);
return;
@@ -551,7 +550,6 @@
@@ -552,7 +551,6 @@
this.func_71373_a(new GuiMemoryErrorScreen());
System.gc();
}
@@ -20,7 +20,7 @@ diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net
}
} catch (MinecraftError var12) {
;
@@ -569,8 +567,6 @@
@@ -570,8 +568,6 @@
this.func_71405_e();
}
@@ -30,8 +30,8 @@ diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net
private void func_71411_J() {
diff -r -U 3 minecraft\net\minecraft\src\CallableSuspiciousClasses.java minecraft_patched\net\minecraft\src\CallableSuspiciousClasses.java
--- minecraft\net\minecraft\src\CallableSuspiciousClasses.java Fri Mar 08 22:39:56 2013
+++ minecraft_patched\net\minecraft\src\CallableSuspiciousClasses.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\CallableSuspiciousClasses.java Sat Apr 27 01:53:04 2013
+++ minecraft_patched\net\minecraft\src\CallableSuspiciousClasses.java Sat Apr 27 01:55:19 2013
@@ -21,9 +21,14 @@
public String func_85085_a() {
@@ -51,8 +51,8 @@ diff -r -U 3 minecraft\net\minecraft\src\CallableSuspiciousClasses.java minecraf
boolean var5 = !CrashReport.class.getCanonicalName().equals("net.minecraft.CrashReport");
HashMap var6 = new HashMap();
diff -r -U 3 minecraft\net\minecraft\src\CodecMus.java minecraft_patched\net\minecraft\src\CodecMus.java
--- minecraft\net\minecraft\src\CodecMus.java Fri Mar 08 22:39:56 2013
+++ minecraft_patched\net\minecraft\src\CodecMus.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\CodecMus.java Sat Apr 27 01:53:04 2013
+++ minecraft_patched\net\minecraft\src\CodecMus.java Sat Apr 27 01:55:19 2013
@@ -1,5 +1,6 @@
package net.minecraft.src;
@@ -73,8 +73,8 @@ diff -r -U 3 minecraft\net\minecraft\src\CodecMus.java minecraft_patched\net\min
}
}
diff -r -U 3 minecraft\net\minecraft\src\ComponentStrongholdRightTurn.java minecraft_patched\net\minecraft\src\ComponentStrongholdRightTurn.java
--- minecraft\net\minecraft\src\ComponentStrongholdRightTurn.java Fri Mar 08 22:39:56 2013
+++ minecraft_patched\net\minecraft\src\ComponentStrongholdRightTurn.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\ComponentStrongholdRightTurn.java Sat Apr 27 01:53:04 2013
+++ minecraft_patched\net\minecraft\src\ComponentStrongholdRightTurn.java Sat Apr 27 01:55:19 2013
@@ -11,6 +11,10 @@
public class ComponentStrongholdRightTurn extends ComponentStrongholdLeftTurn {
@@ -87,9 +87,9 @@ diff -r -U 3 minecraft\net\minecraft\src\ComponentStrongholdRightTurn.java minec
if(this.field_74885_f != 2 && this.field_74885_f != 3) {
this.func_74989_b((ComponentStrongholdStairs2)p_74861_1_, p_74861_2_, p_74861_3_, 1, 1);
diff -r -U 3 minecraft\net\minecraft\src\DedicatedServer.java minecraft_patched\net\minecraft\src\DedicatedServer.java
--- minecraft\net\minecraft\src\DedicatedServer.java Fri Mar 08 22:39:56 2013
+++ minecraft_patched\net\minecraft\src\DedicatedServer.java Fri Mar 08 22:41:28 2013
@@ -206,7 +206,7 @@
--- minecraft\net\minecraft\src\DedicatedServer.java Sat Apr 27 01:53:04 2013
+++ minecraft_patched\net\minecraft\src\DedicatedServer.java Sat Apr 27 01:55:19 2013
@@ -207,7 +207,7 @@
System.exit(0);
}
@@ -99,8 +99,8 @@ diff -r -U 3 minecraft\net\minecraft\src\DedicatedServer.java minecraft_patched\
this.func_71333_ah();
}
diff -r -U 3 minecraft\net\minecraft\src\EnumChatFormatting.java minecraft_patched\net\minecraft\src\EnumChatFormatting.java
--- minecraft\net\minecraft\src\EnumChatFormatting.java Fri Mar 08 22:39:57 2013
+++ minecraft_patched\net\minecraft\src\EnumChatFormatting.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\EnumChatFormatting.java Sat Apr 27 01:53:05 2013
+++ minecraft_patched\net\minecraft\src\EnumChatFormatting.java Sat Apr 27 01:55:19 2013
@@ -38,7 +38,7 @@
private final String field_96304_B;
@@ -111,8 +111,8 @@ diff -r -U 3 minecraft\net\minecraft\src\EnumChatFormatting.java minecraft_patch
private EnumChatFormatting(char p_i10001_3_, boolean p_i10001_4_) {
diff -r -U 3 minecraft\net\minecraft\src\FontRenderer.java minecraft_patched\net\minecraft\src\FontRenderer.java
--- minecraft\net\minecraft\src\FontRenderer.java Fri Mar 08 22:39:57 2013
+++ minecraft_patched\net\minecraft\src\FontRenderer.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\FontRenderer.java Sat Apr 27 01:53:05 2013
+++ minecraft_patched\net\minecraft\src\FontRenderer.java Sat Apr 27 01:55:19 2013
@@ -621,8 +621,6 @@
case 10:
--var5;
@@ -132,8 +132,8 @@ diff -r -U 3 minecraft\net\minecraft\src\FontRenderer.java minecraft_patched\net
var4 += this.func_78263_a(var8);
if(var7) {
diff -r -U 3 minecraft\net\minecraft\src\IntegratedServer.java minecraft_patched\net\minecraft\src\IntegratedServer.java
--- minecraft\net\minecraft\src\IntegratedServer.java Fri Mar 08 22:39:58 2013
+++ minecraft_patched\net\minecraft\src\IntegratedServer.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\IntegratedServer.java Sat Apr 27 01:53:05 2013
+++ minecraft_patched\net\minecraft\src\IntegratedServer.java Sat Apr 27 01:55:19 2013
@@ -101,7 +101,7 @@
return true;
}
@@ -144,8 +144,8 @@ diff -r -U 3 minecraft\net\minecraft\src\IntegratedServer.java minecraft_patched
this.field_71348_o = this.field_71347_n.func_71752_f();
if(!var1 && this.field_71348_o) {
diff -r -U 3 minecraft\net\minecraft\src\RConThreadClient.java minecraft_patched\net\minecraft\src\RConThreadClient.java
--- minecraft\net\minecraft\src\RConThreadClient.java Fri Mar 08 22:39:59 2013
+++ minecraft_patched\net\minecraft\src\RConThreadClient.java Fri Mar 08 22:44:06 2013
--- minecraft\net\minecraft\src\RConThreadClient.java Sat Apr 27 01:53:07 2013
+++ minecraft_patched\net\minecraft\src\RConThreadClient.java Sat Apr 27 01:55:19 2013
@@ -32,8 +32,8 @@
}
@@ -186,9 +186,9 @@ diff -r -U 3 minecraft\net\minecraft\src\RConThreadClient.java minecraft_patched
private void func_72654_a(int p_72654_1_, int p_72654_2_, String p_72654_3_) throws IOException {
diff -r -U 3 minecraft\net\minecraft\src\RenderBlocks.java minecraft_patched\net\minecraft\src\RenderBlocks.java
--- minecraft\net\minecraft\src\RenderBlocks.java Fri Mar 08 22:39:59 2013
+++ minecraft_patched\net\minecraft\src\RenderBlocks.java Fri Mar 08 22:41:28 2013
@@ -1967,16 +1967,16 @@
--- minecraft\net\minecraft\src\RenderBlocks.java Sat Apr 27 01:53:07 2013
+++ minecraft_patched\net\minecraft\src\RenderBlocks.java Sat Apr 27 01:55:19 2013
@@ -1951,16 +1951,16 @@
float var25 = (float)(p_78589_2_ + 1);
float var26 = (float)(p_78589_4_ + 0);
float var27 = (float)(p_78589_4_ + 1);
@@ -209,7 +209,7 @@ diff -r -U 3 minecraft\net\minecraft\src\RenderBlocks.java minecraft_patched\net
int var29 = 0;
int var30 = 0;
int var31 = 16;
@@ -2022,7 +2022,7 @@
@@ -2006,7 +2006,7 @@
var5.func_78374_a((double)var25, (double)p_78589_3_ + 0.015625D, (double)var26, (double)var9.func_94214_a((double)var31), (double)var9.func_94207_b((double)var30));
var5.func_78374_a((double)var24, (double)p_78589_3_ + 0.015625D, (double)var26, (double)var9.func_94214_a((double)var29), (double)var9.func_94207_b((double)var30));
var5.func_78374_a((double)var24, (double)p_78589_3_ + 0.015625D, (double)var27, (double)var9.func_94214_a((double)var29), (double)var9.func_94207_b((double)var32));
@@ -219,8 +219,8 @@ diff -r -U 3 minecraft\net\minecraft\src\RenderBlocks.java minecraft_patched\net
var5.func_78374_a((double)var25, (double)p_78589_3_ + 0.015625D, (double)var26, (double)var8.func_94212_f(), (double)var8.func_94206_g());
var5.func_78374_a((double)var24, (double)p_78589_3_ + 0.015625D, (double)var26, (double)var8.func_94209_e(), (double)var8.func_94206_g());
diff -r -U 3 minecraft\net\minecraft\src\RenderGlobal.java minecraft_patched\net\minecraft\src\RenderGlobal.java
--- minecraft\net\minecraft\src\RenderGlobal.java Fri Mar 08 22:39:59 2013
+++ minecraft_patched\net\minecraft\src\RenderGlobal.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\RenderGlobal.java Sat Apr 27 01:53:07 2013
+++ minecraft_patched\net\minecraft\src\RenderGlobal.java Sat Apr 27 01:55:19 2013
@@ -1449,7 +1449,7 @@
double var15 = this.field_72777_q.field_71451_h.field_70165_t - p_72726_2_;
double var17 = this.field_72777_q.field_71451_h.field_70163_u - p_72726_4_;
@@ -231,8 +231,8 @@ diff -r -U 3 minecraft\net\minecraft\src\RenderGlobal.java minecraft_patched\net
this.field_72777_q.field_71452_i.func_78873_a(var21 = new EntityHugeExplodeFX(this.field_72769_h, p_72726_2_, p_72726_4_, p_72726_6_, p_72726_8_, p_72726_10_, p_72726_12_));
} else if(p_72726_1_.equals("largeexplode")) {
diff -r -U 3 minecraft\net\minecraft\src\TcpMasterThread.java minecraft_patched\net\minecraft\src\TcpMasterThread.java
--- minecraft\net\minecraft\src\TcpMasterThread.java Fri Mar 08 22:39:59 2013
+++ minecraft_patched\net\minecraft\src\TcpMasterThread.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\TcpMasterThread.java Sat Apr 27 01:53:07 2013
+++ minecraft_patched\net\minecraft\src\TcpMasterThread.java Sat Apr 27 01:55:19 2013
@@ -11,6 +11,7 @@
this.field_74504_a = p_i3285_1_;
}
@@ -241,48 +241,9 @@ diff -r -U 3 minecraft\net\minecraft\src\TcpMasterThread.java minecraft_patched\
public void run() {
try {
Thread.sleep(5000L);
diff -r -U 3 minecraft\net\minecraft\src\TexturePackCustom.java minecraft_patched\net\minecraft\src\TexturePackCustom.java
--- minecraft\net\minecraft\src\TexturePackCustom.java Fri Mar 08 22:40:00 2013
+++ minecraft_patched\net\minecraft\src\TexturePackCustom.java Fri Mar 08 22:41:28 2013
@@ -77,4 +77,9 @@
boolean var4 = this.func_98140_c("terrain.png") || this.func_98140_c("gui/items.png");
return !var4;
}
+
+ @Override
+ public boolean func_94179_g() {
+ return true;
+ }
}
diff -r -U 3 minecraft\net\minecraft\src\TexturePackDefault.java minecraft_patched\net\minecraft\src\TexturePackDefault.java
--- minecraft\net\minecraft\src\TexturePackDefault.java Fri Mar 08 22:40:00 2013
+++ minecraft_patched\net\minecraft\src\TexturePackDefault.java Fri Mar 08 22:41:28 2013
@@ -33,4 +33,9 @@
return var2;
}
}
+
+ @Override
+ public boolean func_94179_g() {
+ return true;
+ }
}
diff -r -U 3 minecraft\net\minecraft\src\TexturePackFolder.java minecraft_patched\net\minecraft\src\TexturePackFolder.java
--- minecraft\net\minecraft\src\TexturePackFolder.java Fri Mar 08 22:40:00 2013
+++ minecraft_patched\net\minecraft\src\TexturePackFolder.java Fri Mar 08 22:41:28 2013
@@ -35,4 +35,9 @@
boolean var3 = this.func_98140_c("terrain.png") || this.func_98140_c("gui/items.png");
return var2 || !var3;
}
+
+ @Override
+ public boolean func_94179_g() {
+ return true;
+ }
}
diff -r -U 3 minecraft\net\minecraft\src\ThreadedFileIOBase.java minecraft_patched\net\minecraft\src\ThreadedFileIOBase.java
--- minecraft\net\minecraft\src\ThreadedFileIOBase.java Fri Mar 08 22:40:00 2013
+++ minecraft_patched\net\minecraft\src\ThreadedFileIOBase.java Fri Mar 08 22:41:28 2013
--- minecraft\net\minecraft\src\ThreadedFileIOBase.java Sat Apr 27 01:53:07 2013
+++ minecraft_patched\net\minecraft\src\ThreadedFileIOBase.java Sat Apr 27 01:55:19 2013
@@ -20,7 +20,8 @@
}
+17 -17
View File
@@ -1,6 +1,6 @@
diff -r -U 3 minecraft_server\net\minecraft\src\CallableSuspiciousClasses.java minecraft_server_patched\net\minecraft\src\CallableSuspiciousClasses.java
--- minecraft_server\net\minecraft\src\CallableSuspiciousClasses.java Fri Mar 08 22:41:11 2013
+++ minecraft_server_patched\net\minecraft\src\CallableSuspiciousClasses.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\CallableSuspiciousClasses.java Sat Apr 27 01:54:18 2013
+++ minecraft_server_patched\net\minecraft\src\CallableSuspiciousClasses.java Sat Apr 27 01:56:15 2013
@@ -21,9 +21,14 @@
public String func_85085_a() {
@@ -20,8 +20,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\CallableSuspiciousClasses.java m
boolean var5 = !CrashReport.class.getCanonicalName().equals("net.minecraft.CrashReport");
HashMap var6 = new HashMap();
diff -r -U 3 minecraft_server\net\minecraft\src\ComponentStrongholdRightTurn.java minecraft_server_patched\net\minecraft\src\ComponentStrongholdRightTurn.java
--- minecraft_server\net\minecraft\src\ComponentStrongholdRightTurn.java Fri Mar 08 22:41:11 2013
+++ minecraft_server_patched\net\minecraft\src\ComponentStrongholdRightTurn.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\ComponentStrongholdRightTurn.java Sat Apr 27 01:54:19 2013
+++ minecraft_server_patched\net\minecraft\src\ComponentStrongholdRightTurn.java Sat Apr 27 01:56:15 2013
@@ -11,6 +11,10 @@
public class ComponentStrongholdRightTurn extends ComponentStrongholdLeftTurn {
@@ -34,9 +34,9 @@ diff -r -U 3 minecraft_server\net\minecraft\src\ComponentStrongholdRightTurn.jav
if(this.field_74885_f != 2 && this.field_74885_f != 3) {
this.func_74989_b((ComponentStrongholdStairs2)p_74861_1_, p_74861_2_, p_74861_3_, 1, 1);
diff -r -U 3 minecraft_server\net\minecraft\src\DedicatedServer.java minecraft_server_patched\net\minecraft\src\DedicatedServer.java
--- minecraft_server\net\minecraft\src\DedicatedServer.java Fri Mar 08 22:41:11 2013
+++ minecraft_server_patched\net\minecraft\src\DedicatedServer.java Fri Mar 08 22:41:30 2013
@@ -207,7 +207,7 @@
--- minecraft_server\net\minecraft\src\DedicatedServer.java Sat Apr 27 01:54:19 2013
+++ minecraft_server_patched\net\minecraft\src\DedicatedServer.java Sat Apr 27 01:56:15 2013
@@ -208,7 +208,7 @@
System.exit(0);
}
@@ -46,8 +46,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\DedicatedServer.java minecraft_s
this.func_71333_ah();
}
diff -r -U 3 minecraft_server\net\minecraft\src\EnumChatFormatting.java minecraft_server_patched\net\minecraft\src\EnumChatFormatting.java
--- minecraft_server\net\minecraft\src\EnumChatFormatting.java Fri Mar 08 22:41:12 2013
+++ minecraft_server_patched\net\minecraft\src\EnumChatFormatting.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\EnumChatFormatting.java Sat Apr 27 01:54:20 2013
+++ minecraft_server_patched\net\minecraft\src\EnumChatFormatting.java Sat Apr 27 01:56:15 2013
@@ -38,7 +38,7 @@
private final String field_96304_B;
@@ -58,8 +58,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\EnumChatFormatting.java minecraf
private EnumChatFormatting(char p_i10001_3_, boolean p_i10001_4_) {
diff -r -U 3 minecraft_server\net\minecraft\src\MemoryConnection.java minecraft_server_patched\net\minecraft\src\MemoryConnection.java
--- minecraft_server\net\minecraft\src\MemoryConnection.java Fri Mar 08 22:41:12 2013
+++ minecraft_server_patched\net\minecraft\src\MemoryConnection.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\MemoryConnection.java Sat Apr 27 01:54:20 2013
+++ minecraft_server_patched\net\minecraft\src\MemoryConnection.java Sat Apr 27 01:56:15 2013
@@ -2,6 +2,8 @@
import java.net.InetSocketAddress;
@@ -91,8 +91,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\MemoryConnection.java minecraft_
this.field_74440_d = p_74425_1_;
}
diff -r -U 3 minecraft_server\net\minecraft\src\RConThreadClient.java minecraft_server_patched\net\minecraft\src\RConThreadClient.java
--- minecraft_server\net\minecraft\src\RConThreadClient.java Fri Mar 08 22:41:13 2013
+++ minecraft_server_patched\net\minecraft\src\RConThreadClient.java Fri Mar 08 22:44:07 2013
--- minecraft_server\net\minecraft\src\RConThreadClient.java Sat Apr 27 01:54:20 2013
+++ minecraft_server_patched\net\minecraft\src\RConThreadClient.java Sat Apr 27 01:56:15 2013
@@ -32,8 +32,8 @@
}
@@ -133,8 +133,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\RConThreadClient.java minecraft_
private void func_72654_a(int p_72654_1_, int p_72654_2_, String p_72654_3_) throws IOException {
diff -r -U 3 minecraft_server\net\minecraft\src\TcpMasterThread.java minecraft_server_patched\net\minecraft\src\TcpMasterThread.java
--- minecraft_server\net\minecraft\src\TcpMasterThread.java Fri Mar 08 22:41:13 2013
+++ minecraft_server_patched\net\minecraft\src\TcpMasterThread.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\TcpMasterThread.java Sat Apr 27 01:54:21 2013
+++ minecraft_server_patched\net\minecraft\src\TcpMasterThread.java Sat Apr 27 01:56:15 2013
@@ -11,6 +11,7 @@
this.field_74504_a = p_i3285_1_;
}
@@ -144,8 +144,8 @@ diff -r -U 3 minecraft_server\net\minecraft\src\TcpMasterThread.java minecraft_s
try {
Thread.sleep(5000L);
diff -r -U 3 minecraft_server\net\minecraft\src\ThreadedFileIOBase.java minecraft_server_patched\net\minecraft\src\ThreadedFileIOBase.java
--- minecraft_server\net\minecraft\src\ThreadedFileIOBase.java Fri Mar 08 22:41:13 2013
+++ minecraft_server_patched\net\minecraft\src\ThreadedFileIOBase.java Fri Mar 08 22:41:30 2013
--- minecraft_server\net\minecraft\src\ThreadedFileIOBase.java Sat Apr 27 01:54:21 2013
+++ minecraft_server_patched\net\minecraft\src\ThreadedFileIOBase.java Sat Apr 27 01:56:15 2013
@@ -20,7 +20,8 @@
}
+3 -3
View File
@@ -1,4 +1,4 @@
[VERSION]
MCPVersion = 7.42
ClientVersion = 1.5
ServerVersion = 1.5
MCPVersion = 7.51
ClientVersion = 1.5.2
ServerVersion = 1.5.2
+1
View File
@@ -22,5 +22,6 @@
<classpathentry kind="lib" path="lib/bcprov-debug-jdk15on-148.jar" sourcepath="lib/bcprov-jdk15on-148-src.zip"/>
<classpathentry kind="lib" path="lib/asm-debug-all-4.1.jar" sourcepath="lib/asm-4.1-bin.zip"/>
<classpathentry kind="lib" path="lib/guava-14.0-rc3.jar" sourcepath="lib/guava-14.0-rc3-sources.jar"/>
<classpathentry kind="lib" path="lib/scala-library.jar" sourcepath="lib/scala-library.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
+10 -5
View File
@@ -12,7 +12,7 @@ mcp_version = '7.42'
def download_deps(mcp_path):
ret = True
for lib in ['argo-3.2-src.jar','guava-14.0-rc3.jar','asm-4.1.tar.gz','asm-debug-all-4.1.jar','bcprov-debug-jdk15on-148.jar','bcprov-jdk15on-148-src.zip','guava-14.0-rc3-sources.jar']:
for lib in ['argo-3.2-src.jar','guava-14.0-rc3.jar','asm-4.1.tar.gz','asm-debug-all-4.1.jar','bcprov-debug-jdk15on-148.jar','bcprov-jdk15on-148-src.zip','guava-14.0-rc3-sources.jar', 'scala-library.jar']:
libF = os.path.join(mcp_path, 'lib')
if not os.path.isdir(libF):
os.makedirs(libF)
@@ -264,7 +264,9 @@ def setup_fml(fml_dir, mcp_dir, disable_at=False, disable_merge=False, enable_se
class_path = os.pathsep.join(['.', os.path.join(mcp_dir, 'lib', '*'), dir_bin])
dir_common = os.path.join(fml_dir, 'common')
dir_trans = os.path.join(dir_common, 'cpw', 'mods', 'fml', 'common', 'asm', 'transformers')
cmd_compile = '"%s" -Xlint:-options -deprecation -g -source 1.6 -target 1.6 -classpath "{classpath}" -sourcepath "{sourcepath}" -d "{outpath}" "{target}"' % self.cmdjavac
java = self.cmdjava.translate(None, '"')
javac = self.cmdjavac.translate(None, '"')
cmd_compile = '"%s" -Xlint:-options -deprecation -g -source 1.6 -target 1.6 -classpath "{classpath}" -sourcepath "{sourcepath}" -d "{outpath}" "{target}"' % javac
cmd_compile = cmd_compile.format(classpath=class_path, sourcepath=dir_common, outpath=dir_bin, target="{target}")
if compile_tools:
@@ -281,7 +283,7 @@ def setup_fml(fml_dir, mcp_dir, disable_at=False, disable_merge=False, enable_se
if side == CLIENT:
if not disable_merge:
self.logger.info('> Running MCPMerger')
forkcmd = ('"%s" -classpath "{classpath}" cpw.mods.fml.common.asm.transformers.MCPMerger "{mergecfg}" "{client}" "{server}"' % self.cmdjava).format(
forkcmd = ('"%s" -classpath "{classpath}" cpw.mods.fml.common.asm.transformers.MCPMerger "{mergecfg}" "{client}" "{server}"' % java).format(
classpath=class_path, mergecfg=os.path.join(fml_dir, 'mcp_merge.cfg'), client=jars[CLIENT], server=jars[SERVER])
if not runcmd(self, forkcmd):
@@ -291,7 +293,7 @@ def setup_fml(fml_dir, mcp_dir, disable_at=False, disable_merge=False, enable_se
if not disable_at:
self.logger.info('> Running AccessTransformer')
forkcmd = ('"%s" -classpath "{classpath}" cpw.mods.fml.common.asm.transformers.AccessTransformer "{jar}" "{fmlconfig}"' % self.cmdjava).format(
forkcmd = ('"%s" -classpath "{classpath}" cpw.mods.fml.common.asm.transformers.AccessTransformer "{jar}" "{fmlconfig}"' % java).format(
classpath=class_path, jar=jars[side], fmlconfig=os.path.join(fml_dir, 'common', 'fml_at.cfg'))
forge_cfg = os.path.join(fml_dir, '..', 'common', 'forge_at.cfg')
@@ -630,7 +632,10 @@ def download_mcp(mcp_dir, fml_dir, version=None):
print 'Extracting MCP to \'%s\'' % mcp_dir
zf = ZipFile(mcp_zip)
zf.extractall(mcp_dir)
#OS X's python 2.6.1 extractall has a bug in zipfile that makes it unzip directories as regular files.
for path in zf.namelist():
if not path.endswith('/'):
zf.extract(path, mcp_dir)
zf.close()
eclipse_dir = os.path.join(mcp_dir, 'eclipse')
+1 -1
View File
@@ -17,7 +17,7 @@ def fml_main(fml_dir, mcp_dir, dont_gen_conf=True, disable_patches=False, disabl
if __name__ == '__main__':
parser = OptionParser()
parser.add_option('-m', '--mcp-dir', action='store_true', dest='mcp_dir', help='Path to download/extract MCP to', default=None )
parser.add_option('-m', '--mcp-dir', action='store', dest='mcp_dir', help='Path to download/extract MCP to', default=None )
parser.add_option('-p', '--no-patch', action="store_true", dest='no_patch', help='Disable application of FML patches', default=False)
parser.add_option('-a', '--no-access', action="store_true", dest='no_access', help='Disable access transformers', default=False)
parser.add_option('-s', '--server', action="store_true", dest='enable_server', help='Enable decompilation of server', default=False)
+22 -4
View File
@@ -1,5 +1,5 @@
[default]
current_ver = 1.5
current_ver = 1.5.2
base_url = http://s3.amazonaws.com/MinecraftDownload/
libraries = lwjgl.jar lwjgl_util.jar jinput.jar
natives = windows_natives.jar macosx_natives.jar linux_natives.jar
@@ -70,9 +70,27 @@ mcp_md5 = cd4f6f5e6dd7032301aa98a9046201dd
[1.5]
client_url = http://assets.minecraft.net/1_5/minecraft.jar
server_url = http://assets.minecraft.net/1_5/minecraft_server.jar
client_md5 = d39baadeeb124a29b2542d778713493f
server_md5 = 22223b1d00b72cc51fdb8b7cdd45f9c1
client_md5 = fd11cbc5b01aae1d62cff0145171f3d9
server_md5 = 00035b7842554bdbff95a48169420525
mcp_ver = 7.42
mcp_url = http://mcp.ocean-labs.de/files/archive/mcp742.zip
mcp_md5 = 7124a50e282a7d706eb12807d26566ce
mcp_md5 = ad1a2b86916dd5f71e832181e01bd91a
[1.5.1]
client_url = http://assets.minecraft.net/1_5_1/minecraft.jar
server_url = http://assets.minecraft.net/1_5_1/minecraft_server.jar
client_md5 = 5c1219d869b87d233de3033688ec7567
server_md5 = 9d31b969c3f197a1d40381d5620717ea
mcp_ver = 7.44
mcp_url = http://mcp.ocean-labs.de/files/archive/mcp744.zip
mcp_md5 = 0b9047820bbcb7da32c5e18f60212832
[1.5.2]
client_url = http://s3.amazonaws.com/Minecraft.Download/versions/1.5.2/1.5.2.jar
server_url = http://s3.amazonaws.com/Minecraft.Download/versions/1.5.2/minecraft_server.1.5.2.jar
client_md5 = 6897c3287fb971c9f362eb3ab20f5ddd
server_md5 = c4e1bf89e834bd3670c7bf8f13874bc6
mcp_ver = 7.44
mcp_url = http://mcp.ocean-labs.de/files/archive/mcp751.zip
mcp_md5 = 593238c1cc71f76c94738ff6a014d1a2
+1 -1
View File
@@ -1 +1 @@
!bjs #net/minecraft/src/CodecMus
!bjy #net/minecraft/src/CodecMus
@@ -1,10 +1,17 @@
--- ../src-base/minecraft/net/minecraft/client/ClientBrandRetriever.java
+++ ../src-work/minecraft/net/minecraft/client/ClientBrandRetriever.java
@@ -8,6 +8,6 @@
@@ -1,5 +1,6 @@
package net.minecraft.client;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,6 +9,6 @@
{
public static String getClientModName()
{
- return "vanilla";
+ return "fml";
+ return FMLCommonHandler.instance().getModName();
}
}
@@ -21,7 +21,7 @@
@SideOnly(Side.CLIENT)
public abstract class Minecraft implements Runnable, IPlayerUsage
{
@@ -298,6 +306,8 @@
@@ -299,6 +307,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);
@@ -30,7 +30,7 @@
if (this.field_71474_y.field_74363_ab != null)
{
StringTranslate.func_74808_a().func_74810_a(this.field_71474_y.field_74363_ab, false);
@@ -333,6 +343,8 @@
@@ -334,6 +344,8 @@
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);
@@ -39,7 +39,7 @@
try
{
this.field_71430_V = new ThreadDownloadResources(this.field_71412_D, this);
@@ -361,6 +373,8 @@
@@ -362,6 +374,8 @@
{
this.func_71352_k();
}
@@ -48,7 +48,7 @@
}
private void func_71357_I() throws LWJGLException
@@ -722,9 +736,11 @@
@@ -723,9 +737,11 @@
if (!this.field_71454_w)
{
@@ -60,7 +60,7 @@
}
GL11.glFlush();
@@ -1254,10 +1270,14 @@
@@ -1255,10 +1271,14 @@
public void func_71407_l()
{
@@ -75,7 +75,7 @@
this.field_71424_I.func_76320_a("stats");
this.field_71413_E.func_77449_e();
@@ -1715,6 +1735,8 @@
@@ -1716,6 +1736,8 @@
this.field_71453_ak.func_74428_b();
}
@@ -84,7 +84,7 @@
this.field_71424_I.func_76319_b();
this.field_71423_H = func_71386_F();
}
@@ -1753,8 +1775,27 @@
@@ -1754,8 +1776,27 @@
}
this.field_71413_E.func_77450_a(StatList.field_75936_f, 1);
@@ -112,7 +112,7 @@
this.field_71455_al = true;
this.field_71461_s.func_73720_a(StatCollector.func_74838_a("menu.loadingLevel"));
@@ -1976,6 +2017,12 @@
@@ -1977,6 +2018,12 @@
public static void main(String[] p_main_0_)
{
@@ -8,34 +8,52 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.awt.image.BufferedImage;
@@ -11,6 +13,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;
@@ -22,6 +25,9 @@
import net.minecraft.world.storage.WorldInfo;
@@ -24,6 +26,9 @@
import org.lwjgl.opengl.GL11;
import org.lwjgl.util.glu.GLU;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+
@SideOnly(Side.CLIENT)
public class GuiMainMenu extends GuiScreen
@@ -146,6 +152,8 @@
{
@@ -48,6 +53,8 @@
private int field_92020_v;
private int field_92019_w;
+ 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);
+ this.field_73887_h.add(new GuiButton(6, this.field_73880_f / 2 - 100, i + 49, "Mods"));
@@ -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_73746_c = this.field_73880_f / 2 + 2;
+
if (this.field_73882_e.field_71448_m)
{
this.field_73887_h.add(new GuiButton(0, this.field_73880_f / 2 - 100, i + 72, stringtranslate.func_74805_b("menu.options")));
@@ -249,6 +257,11 @@
+ 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 @@
if (p_73875_1_.field_73741_f == 4)
{
this.field_73882_e.func_71400_g();
@@ -47,7 +65,7 @@
}
if (p_73875_1_.field_73741_f == 11)
@@ -487,7 +500,16 @@
@@ -501,7 +523,16 @@
s = s + " Demo";
}
@@ -8,59 +8,60 @@
import net.minecraft.util.Direction;
import net.minecraft.util.Icon;
import net.minecraft.util.MathHelper;
@@ -235,7 +236,50 @@
int l = p_78612_1_.func_71857_b();
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_);
- return l == 0 ? this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 31 ? this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 39 ? this.func_96445_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 4 ? this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 13 ? this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 1 ? this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 19 ? this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 23 ? this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 6 ? this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 2 ? this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 3 ? this.func_78590_h((BlockFire)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 5 ? this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 8 ? this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 7 ? this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 9 ? this.func_78586_a((BlockRailBase)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 10 ? this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 27 ? this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 11 ? this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 32 ? this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 12 ? this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 29 ? this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 30 ? this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 14 ? this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 15 ? this.func_78610_x((BlockRedstoneRepeater)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 36 ? this.func_94176_a((BlockRedstoneLogic)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 37 ? this.func_94171_a((BlockComparator)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 16 ? this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false) : (l == 17 ? this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true) : (l == 18 ? this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 20 ? this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 21 ? this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 24 ? this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 33 ? this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 35 ? this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 25 ? this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 26 ? this.func_78567_v((BlockEndPortalFrame)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 28 ? this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 34 ? this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 38 ? this.func_94172_a((BlockHopper)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : false))))))))))))))))))))))))))))))))))))));
+ switch (l)
+ {
+ // regex: \(l == ([\d]+) \? (.*) replace: case \1: return \2; ::: IMPORTANT: REMEMBER THIS ON FIRST line!
+ case 0 : return this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 31: return this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 39: return this.func_96445_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 4: return this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 13: return this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 1: return this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 19: return this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 23: return this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 6: return this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 2: return this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 3: return this.func_78590_h((BlockFire)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 5: return this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 8: return this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 7: return this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 9: return this.func_78586_a((BlockRailBase)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 10: return this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 27: return this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 11: return this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 32: return this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 12: return this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 29: return this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 30: return this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 14: return this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 15: return this.func_78610_x((BlockRedstoneRepeater)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 36: return this.func_94176_a((BlockRedstoneLogic)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 37: return this.func_94171_a((BlockComparator)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 16: return this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false) ;
+ case 17: return this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true) ;
+ case 18: return this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 20: return this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 21: return this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 24: return this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 33: return this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 35: return this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 25: return this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 26: return this.func_78567_v((BlockEndPortalFrame)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 28: return this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 34: return this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ case 38: return this.func_94172_a((BlockHopper)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) ;
+ default: return FMLRenderAccessLibrary.renderWorldBlock(this, field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_, p_78612_1_, l);
+ }
@@ -222,7 +223,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_);
- return l == 0 ? this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 4 ? this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 31 ? this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 1 ? this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 2 ? this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 20 ? this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 11 ? this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 39 ? this.func_96445_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 5 ? this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 13 ? this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 9 ? this.func_78586_a((BlockRailBase)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 19 ? this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 23 ? this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 6 ? this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 3 ? this.func_78590_h((BlockFire)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 8 ? this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 7 ? this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 10 ? this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 27 ? this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 32 ? this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 12 ? this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 29 ? this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 30 ? this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 14 ? this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 15 ? this.func_78610_x((BlockRedstoneRepeater)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 36 ? this.func_94176_a((BlockRedstoneLogic)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 37 ? this.func_94171_a((BlockComparator)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 16 ? this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false) : (l == 17 ? this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true) : (l == 18 ? this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 21 ? this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 24 ? this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 33 ? this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 35 ? this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 25 ? this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 26 ? this.func_78567_v((BlockEndPortalFrame)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 28 ? this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 34 ? this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : (l == 38 ? this.func_94172_a((BlockHopper)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_) : false))))))))))))))))))))))))))))))))))))));
+
+ switch (l)
+ {
+ //regex: ' : \(l == ([\d]+) \?' replace: ';\ncase \1: return' ::: IMPORTANT: REMEMBER THIS ON FIRST line!
+ case 0: return this.func_78570_q(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 4: return this.func_78621_p(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 31: return this.func_78581_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 1: return this.func_78620_l(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 2: return this.func_78572_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 20: return this.func_78598_k(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 11: return this.func_78582_a((BlockFence)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 39: return this.func_96445_r(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 5: return this.func_78589_i(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 13: return this.func_78584_s(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 9: return this.func_78586_a((BlockRailBase)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 19: return this.func_78603_m(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 23: return this.func_78566_o(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 6: return this.func_78614_n(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 3: return this.func_78590_h((BlockFire)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 8: return this.func_78576_j(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 7: return this.func_78601_u(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 10: return this.func_78565_t((BlockStairs)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 27: return this.func_78618_a((BlockDragonEgg)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 32: return this.func_82779_a((BlockWall)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 12: return this.func_78594_e(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 29: return this.func_78577_f(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 30: return this.func_78619_g(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 14: return this.func_78574_w(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 15: return this.func_78610_x((BlockRedstoneRepeater)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 36: return this.func_94176_a((BlockRedstoneLogic)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 37: return this.func_94171_a((BlockComparator)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 16: return this.func_78593_b(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, false);
+ case 17: return this.func_78608_c(p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_, true);
+ case 18: return this.func_78592_a((BlockPane)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 21: return this.func_78580_a((BlockFenceGate)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 24: return this.func_78615_a((BlockCauldron)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 33: return this.func_82780_a((BlockFlowerPot)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 35: return this.func_82775_a((BlockAnvil)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 25: return this.func_78585_a((BlockBrewingStand)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 26: return this.func_78567_v((BlockEndPortalFrame)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 28: return this.func_78616_a((BlockCocoa)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 34: return this.func_82778_a((BlockBeacon)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ case 38: return this.func_94172_a((BlockHopper)p_78612_1_, p_78612_2_, p_78612_3_, p_78612_4_);
+ default: return FMLRenderAccessLibrary.renderWorldBlock(this, field_78669_a, p_78612_2_, p_78612_3_, p_78612_4_, p_78612_1_, l);
+ }
}
}
public boolean func_78567_v(BlockEndPortalFrame p_78567_1_, int p_78567_2_, int p_78567_3_, int p_78567_4_)
@@ -6904,6 +6948,10 @@
@@ -7618,6 +7663,10 @@
this.func_96447_a((BlockHopper)p_78600_1_, 0, 0, 0, 0, true);
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
}
@@ -71,7 +72,7 @@
}
else
{
@@ -6962,7 +7010,25 @@
@@ -7676,7 +7725,25 @@
public static boolean func_78597_b(int p_78597_0_)
{
@@ -0,0 +1,63 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/Texture.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/Texture.java
@@ -1,5 +1,6 @@
package net.minecraft.client.renderer.texture;
+import cpw.mods.fml.client.TextureFXManager;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.awt.image.BufferedImage;
@@ -9,6 +10,8 @@
import javax.imageio.ImageIO;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.OpenGlHelper;
+import net.minecraft.src.FMLRenderAccessLibrary;
+
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12;
@@ -206,6 +209,12 @@
{
if (this.field_94300_h != 32879)
{
+ if (field_94303_q && !p_94281_4_)
+ {
+ FMLRenderAccessLibrary.doTextureCopy(this, p_94281_3_, p_94281_1_, p_94281_2_);
+ return;
+ }
+
ByteBuffer bytebuffer = p_94281_3_.func_94273_h();
this.field_94302_r.position(0);
bytebuffer.position(0);
@@ -218,7 +227,7 @@
if (p_94281_4_)
{
- l = p_94281_2_ + (p_94281_3_.func_94276_e() - k);
+ l = p_94281_1_ + (p_94281_3_.func_94276_e() - k - 1); //BUGFIX: targetY -> targetX and -1
}
for (int k1 = 0; k1 < p_94281_3_.func_94275_d(); ++k1)
@@ -228,7 +237,7 @@
if (p_94281_4_)
{
- l1 = p_94281_1_ + k1 * this.field_94289_d * 4 + l * 4;
+ l1 = (p_94281_2_ + k1) * this.field_94289_d * 4 + l * 4; //BUGFIX: targetX -> targetY and parens
}
this.field_94302_r.put(l1 + 0, bytebuffer.get(i2 + 0));
@@ -378,4 +387,13 @@
{
return this.field_94302_r;
}
+
+ public void createAndUploadTexture()
+ {
+ this.field_94293_a = GL11.glGenTextures();
+ GL11.glBindTexture(this.field_94300_h, this.field_94293_a);
+ System.out.printf("Buffer %s %x %d is %s\n",field_94297_m, field_94300_h, field_94293_a, field_94302_r);
+ field_94302_r.position(field_94302_r.limit());
+ func_94285_g();
+ }
}
@@ -0,0 +1,11 @@
--- ../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.
}
}
}
@@ -0,0 +1,11 @@
--- ../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.
}
}
}
@@ -0,0 +1,34 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureStitched.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureStitched.java
@@ -1,5 +1,6 @@
package net.minecraft.client.renderer.texture;
+import cpw.mods.fml.client.TextureFXManager;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader;
@@ -56,6 +57,11 @@
this.field_94230_o = (float)(p_94218_4_ + p_94218_6_) / (float)p_94218_1_.func_94276_e() - f1;
this.field_94238_p = (float)p_94218_5_ / 16.0F;
this.field_94237_q = (float)p_94218_6_ / 16.0F;
+ TextureFXManager.instance().getHelper().doTextureUpload(this);
+ if (this.field_94227_c)
+ {
+ TextureFXManager.instance().getHelper().rotateTexture(this.field_94228_a, this.field_94228_a.func_94273_h());
+ }
}
public void func_94217_a(TextureStitched p_94217_1_)
@@ -198,4 +204,12 @@
this.field_94236_i = arraylist;
}
}
+
+ public void createAndUploadTextures()
+ {
+ for (Texture t : ((List<Texture>)field_94226_b))
+ {
+ t.createAndUploadTexture();
+ }
+ }
}
@@ -9,7 +9,7 @@
import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.item.EntityBoat;
import net.minecraft.entity.item.EntityEnderCrystal;
@@ -354,6 +356,14 @@
@@ -357,6 +359,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));
@@ -426,6 +436,13 @@
@@ -429,6 +439,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");
@@ -7,7 +7,37 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.net.InetSocketAddress;
@@ -77,6 +78,7 @@
@@ -7,6 +8,11 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Queue;
+import java.util.concurrent.ConcurrentLinkedQueue;
+
+import com.google.common.collect.Queues;
+
import net.minecraft.logging.ILogAgent;
import net.minecraft.network.packet.NetHandler;
import net.minecraft.network.packet.Packet;
@@ -14,7 +20,7 @@
public class MemoryConnection implements INetworkManager
{
private static final SocketAddress field_74444_a = new InetSocketAddress("127.0.0.1", 0);
- private final List field_74442_b = Collections.synchronizedList(new ArrayList());
+ private final Queue<Packet> field_74442_b = Queues.newConcurrentLinkedQueue();
private final ILogAgent field_98214_c;
private MemoryConnection field_74443_c;
private NetHandler field_74440_d;
@@ -65,7 +71,7 @@
while (i-- >= 0 && !this.field_74442_b.isEmpty())
{
- Packet packet = (Packet)this.field_74442_b.remove(0);
+ Packet packet = field_74442_b.poll();
packet.func_73279_a(this.field_74440_d);
}
@@ -77,6 +83,7 @@
if (this.field_74441_e && this.field_74442_b.isEmpty())
{
this.field_74440_d.func_72515_a(this.field_74438_f, this.field_74439_g);
@@ -9,7 +9,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.awt.GraphicsEnvironment;
@@ -351,7 +354,11 @@
@@ -352,7 +355,11 @@
{
if (this.func_71197_b())
{
@@ -21,7 +21,7 @@
for (long j = 0L; this.field_71317_u; this.field_71296_Q = true)
{
@@ -390,6 +397,7 @@
@@ -391,6 +398,7 @@
Thread.sleep(1L);
}
@@ -29,7 +29,7 @@
}
else
{
@@ -398,6 +406,10 @@
@@ -399,6 +407,10 @@
}
catch (Throwable throwable)
{
@@ -40,7 +40,7 @@
throwable.printStackTrace();
this.func_98033_al().func_98234_c("Encountered an unexpected exception " + throwable.getClass().getSimpleName(), throwable);
CrashReport crashreport = null;
@@ -428,6 +440,10 @@
@@ -429,6 +441,10 @@
{
try
{
@@ -51,7 +51,7 @@
this.func_71260_j();
this.field_71316_v = true;
}
@@ -437,6 +453,7 @@
@@ -438,6 +454,7 @@
}
finally
{
@@ -59,7 +59,7 @@
this.func_71240_o();
}
}
@@ -453,8 +470,10 @@
@@ -454,8 +471,10 @@
public void func_71217_p()
{
@@ -70,7 +70,7 @@
++this.field_71315_w;
if (this.field_71295_T)
@@ -500,6 +519,7 @@
@@ -501,6 +520,7 @@
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76319_b();
@@ -78,7 +78,7 @@
}
public void func_71190_q()
@@ -527,6 +547,7 @@
@@ -528,6 +548,7 @@
}
this.field_71304_b.func_76320_a("tick");
@@ -86,7 +86,7 @@
CrashReport crashreport;
try
@@ -551,6 +572,7 @@
@@ -552,6 +573,7 @@
throw new ReportedException(crashreport);
}
@@ -94,16 +94,16 @@
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76320_a("tracker");
worldserver.func_73039_n().func_72788_a();
@@ -678,7 +700,7 @@
@@ -679,7 +701,7 @@
public String getServerModName()
{
- return "vanilla";
+ return "fml";
+ return FMLCommonHandler.instance().getModName();
}
public CrashReport func_71230_b(CrashReport p_71230_1_)
@@ -1126,6 +1148,13 @@
@@ -1137,6 +1159,13 @@
@SideOnly(Side.SERVER)
public static void main(String[] p_main_0_)
{
@@ -16,7 +16,7 @@
this.func_98033_al().func_98233_a("Loading properties");
this.field_71340_o = new PropertyManager(new File("server.properties"), this.func_98033_al());
@@ -130,6 +133,8 @@
@@ -131,6 +134,8 @@
this.func_98033_al().func_98236_b("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose.");
this.func_98033_al().func_98236_b("To change this, set \"online-mode\" to \"true\" in the server.properties file.");
}
@@ -25,7 +25,7 @@
this.func_71210_a(new DedicatedPlayerList(this));
long j = System.nanoTime();
@@ -172,6 +177,7 @@
@@ -173,6 +178,7 @@
this.func_71191_d((this.func_71207_Z() + 8) / 16 * 16);
this.func_71191_d(MathHelper.func_76125_a(this.func_71207_Z(), 64, 256));
this.field_71340_o.func_73667_a("max-build-height", Integer.valueOf(this.func_71207_Z()));
@@ -33,7 +33,7 @@
this.func_98033_al().func_98233_a("Preparing level \"" + this.func_71270_I() + "\"");
this.func_71247_a(this.func_71270_I(), this.func_71270_I(), k, worldtype, s2);
long i1 = System.nanoTime() - j;
@@ -192,7 +198,7 @@
@@ -193,7 +199,7 @@
this.field_71339_n.func_72602_a();
}
@@ -7,7 +7,7 @@
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
@@ -308,7 +309,15 @@
@@ -311,7 +312,15 @@
}
}
@@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/world/World.java
+++ ../src-work/minecraft/net/minecraft/world/World.java
@@ -1805,13 +1805,14 @@
@@ -1806,13 +1806,14 @@
}
}
@@ -16,7 +16,7 @@
this.field_72984_F.func_76318_c("pendingTileEntities");
@@ -3634,7 +3635,7 @@
@@ -3640,7 +3641,7 @@
@SideOnly(Side.CLIENT)
public double func_72919_O()
{
@@ -11,7 +11,7 @@
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.nbt.CompressedStreamTools;
@@ -246,10 +250,19 @@
@@ -252,10 +256,19 @@
Entity entity = (Entity)iterator.next();
nbttagcompound1 = new NBTTagCompound();
@@ -35,7 +35,7 @@
}
}
}
@@ -262,8 +275,17 @@
@@ -268,8 +281,17 @@
{
TileEntity tileentity = (TileEntity)iterator.next();
nbttagcompound1 = new NBTTagCompound();