Update to 1.4.4

This commit is contained in:
LexManos 2012-11-08 20:19:12 -08:00
parent 955683349d
commit e73cbd088f
35 changed files with 364 additions and 371 deletions

View file

@ -2,12 +2,12 @@
# RailLogic.getNAdjacentTracks # RailLogic.getNAdjacentTracks
public all.a(Lall;)I #MD:RailLogic/func_73650_a public all.a(Lall;)I #MD:RailLogic/func_73650_a
# Tessellator # Tessellator
public-f bah.a #FD:Tessellator/field_78398_a #instance public-f bao.a #FD:Tessellator/field_78398_a #instance
public bah.u #FD:Tessellator/field_78409_u #drawMode public bao.u #FD:Tessellator/field_78409_u #drawMode
public bah.v #FD:Tessellator/field_78408_v #xOffset public bao.v #FD:Tessellator/field_78408_v #xOffset
public bah.w #FD:Tessellator/field_78407_w #yOffset public bao.w #FD:Tessellator/field_78407_w #yOffset
public bah.x #FD:Tessellator/field_78417_x #zOffset public bao.x #FD:Tessellator/field_78417_x #zOffset
public bah.z #FD:Tessellator/field_78415_z #isDrawing public bao.z #FD:Tessellator/field_78415_z #isDrawing
# ItemPickaxe # ItemPickaxe
public ut.<init>(ILul;)V #MD:ItemPickaxe/<init>(ILnet/minecraft/src/EnumToolMaterial;) #constructor public ut.<init>(ILul;)V #MD:ItemPickaxe/<init>(ILnet/minecraft/src/EnumToolMaterial;) #constructor
public+f ut.c #FD:ItemPickaxe/field_77867_c #blocksEffectiveAgainst public+f ut.c #FD:ItemPickaxe/field_77867_c #blocksEffectiveAgainst
@ -23,16 +23,16 @@ public tu.cl #FD:ItemTool/field_77865_bY #damageVsEntity
# EntityEnderman # EntityEnderman
public qd.d #FD:EntityEnderman/field_70827_d #carriableBlocks public qd.d #FD:EntityEnderman/field_70827_d #carriableBlocks
# RenderGlobal # RenderGlobal
public bad.h #FD:RenderGlobal/field_72769_h #theWorld public bak.h #FD:RenderGlobal/field_72769_h #theWorld
public bad.i #FD:RenderGlobal/field_72770_i #renderEngine public bak.i #FD:RenderGlobal/field_72770_i #renderEngine
public bad.q #FD:RenderGlobal/field_72777_q #mc public bak.q #FD:RenderGlobal/field_72777_q #mc
public bad.r #FD:RenderGlobal/field_72776_r #globalRenderBlocks public bak.r #FD:RenderGlobal/field_72776_r #globalRenderBlocks
public bad.E #FD:RenderGlobal/field_72738_E #damagedBlocks public bak.E #FD:RenderGlobal/field_72738_E #damagedBlocks
# SoundManager # SoundManager
public bed.a #FD:SoundManager/field_77381_a #sndSystem public bek.a #FD:SoundManager/field_77381_a #sndSystem
public bed.b #FD:SoundManager/field_77379_b #soundPoolSounds public bek.b #FD:SoundManager/field_77379_b #soundPoolSounds
public bed.c #FD:SoundManager/field_77380_c #soundPoolStreaming public bek.c #FD:SoundManager/field_77380_c #soundPoolStreaming
public bed.d #FD:SoundManager/field_77377_d #soundPoolMusic public bek.d #FD:SoundManager/field_77377_d #soundPoolMusic
# EntityMinecart # EntityMinecart
protected py.* #FD:EntityMinecart/* # All private -> protected protected py.* #FD:EntityMinecart/* # All private -> protected
public py.h()Z #MD:EntityMinecart/func_70490_h #isMinecartPowered public py.h()Z #MD:EntityMinecart/func_70490_h #isMinecartPowered
@ -49,7 +49,7 @@ public amj.s()Lamj; #MD:Block/func_71875_q #setBlockUnbreakable
public amj.b(Z)Lamj; #MD:Block/func_71907_b #setTickRandomly public amj.b(Z)Lamj; #MD:Block/func_71907_b #setTickRandomly
public amj.a(FFFFFF)V #MD:Block/func_71905_a #setBlockBounds public amj.a(FFFFFF)V #MD:Block/func_71905_a #setBlockBounds
# NetServerHandler # NetServerHandler
public iu.g #FD:NetServerHandler/field_72572_g #playerInAirTime public iv.g #FD:NetServerHandler/field_72572_g #playerInAirTime
# TileEntity # TileEntity
public anq.k #FD:TileEntity/field_70331_k #worldObj public anq.k #FD:TileEntity/field_70331_k #worldObj
# BlockLeavesBase # BlockLeavesBase
@ -65,9 +65,9 @@ public all.a(Lall;)I #MD:RailLogic/func_73650_a #getNAdjacentTiles
public qx.a(Lpx;)V #MD:EntityPlayer/func_71012_a #joinEntityItemWithWorld public qx.a(Lpx;)V #MD:EntityPlayer/func_71012_a #joinEntityItemWithWorld
public qx.i()V #MD:EntityPlayer/func_71053_j #closeScreen public qx.i()V #MD:EntityPlayer/func_71053_j #closeScreen
# EntityPlayerMP # EntityPlayerMP
public ayh.a(Lpx;)V #MD:EntityClientPlayerMP/func_71012_a #joinEntityItemWithWorld public ayk.a(Lpx;)V #MD:EntityClientPlayerMP/func_71012_a #joinEntityItemWithWorld
# World Gen Chests Related # World Gen Chests Related
public im.T #FD:WorldServer/field_73069_S #bonusChestContent public in.T #FD:WorldServer/field_73069_S #bonusChestContent
public aci.a #FD:StructureMineshaftPieces/field_78818_a #mineshaftChestContents public aci.a #FD:StructureMineshaftPieces/field_78818_a #mineshaftChestContents
public adm.i #FD:ComponentScatteredFeatureDesertPyramid/field_74941_i #itemsToGenerateInTemple public adm.i #FD:ComponentScatteredFeatureDesertPyramid/field_74941_i #itemsToGenerateInTemple
public adn.l #FD:ComponentScatteredFeatureJunglePyramid/field_74943_l #junglePyramidsChestContents public adn.l #FD:ComponentScatteredFeatureJunglePyramid/field_74943_l #junglePyramidsChestContents
@ -79,17 +79,17 @@ public afh.a #FD:ComponentVillageHouse2/field_74918_a #villageBlacksmithChestCon
# AnvilChunkLoader.chunkSaveLocation # AnvilChunkLoader.chunkSaveLocation
default aaf.d #FD:AnvilChunkLoader/field_75825_d default aaf.d #FD:AnvilChunkLoader/field_75825_d
# ChunkProviderServer.currentChunkLoader # ChunkProviderServer.currentChunkLoader
default il.e #FD:ChunkProviderServer/field_73247_e default im.e #FD:ChunkProviderServer/field_73247_e
# PlayerManager # PlayerManager
default ij.a(IIZ)Lik; #MD:PlayerManager/func_72690_a #getOrCreateChunkWatcher default ik.a(IIZ)Lil; #MD:PlayerManager/func_72690_a #getOrCreateChunkWatcher
# World # World
public-f xv.C #FD:World/field_72982_D #villageCollectionObj public-f xv.C #FD:World/field_72982_D #villageCollectionObj
public xv.H #FD:World/field_72993_I #activeChunkSet public xv.H #FD:World/field_72993_I #activeChunkSet
# EntityLiving # EntityLiving
public mc.bc #FD:EntityLiving/field_70728_aV #experienceValue public md.bc #FD:EntityLiving/field_70728_aV #experienceValue
# GuiFlatPresets # GuiFlatPresets
public atw.a(Ljava/lang/String;ILyr;Ljava/util/List;[Lace;)V #MD:GuiFlatPresets/func_82294_a public atz.a(Ljava/lang/String;ILyr;Ljava/util/List;[Lace;)V #MD:GuiFlatPresets/func_82294_a
public atw.a(Ljava/lang/String;ILyr;[Lace;)V #MD:GuiFlatPresets/func_82297_a public atz.a(Ljava/lang/String;ILyr;[Lace;)V #MD:GuiFlatPresets/func_82297_a
# BiomeGenBase # BiomeGenBase
public yr.*() #MD:BiomeGenBase/* #Everything protected->public public yr.*() #MD:BiomeGenBase/* #Everything protected->public
# MapGenVillage # MapGenVillage

View file

@ -95,23 +95,26 @@
this.setDifficultyForAllWorlds(this.getDifficulty()); this.setDifficultyForAllWorlds(this.getDifficulty());
this.initialWorldChunkLoad(); this.initialWorldChunkLoad();
} }
@@ -433,7 +413,9 @@ @@ -431,7 +411,9 @@
for (int var3 = 0; var3 < var2; ++var3) for (int var1 = 0; var1 < this.worldServers.length; ++var1)
{ {
WorldServer var4 = var1[var3]; WorldServer var2 = this.worldServers[var1];
+ MinecraftForge.EVENT_BUS.post(new WorldEvent.Unload(var4)); + MinecraftForge.EVENT_BUS.post(new WorldEvent.Unload(var2));
var4.flush(); var2.flush();
+ DimensionManager.setWorld(var4.provider.dimensionId, null); + DimensionManager.setWorld(var2.provider.dimensionId, null);
} }
if (this.usageSnooper != null && this.usageSnooper.isSnooperRunning()) if (this.usageSnooper != null && this.usageSnooper.isSnooperRunning())
@@ -646,13 +628,13 @@ @@ -645,13 +627,15 @@
{
this.theProfiler.startSection("levels"); this.theProfiler.startSection("levels");
int var1;
- for (int var1 = 0; var1 < this.worldServers.length; ++var1) - for (var1 = 0; var1 < this.worldServers.length; ++var1)
+ for (Integer id : DimensionManager.getIDs()) - {
{ + Integer[] ids = DimensionManager.getIDs();
+ for (int x = 0; x < ids.length; x++)
+ {
+ int id = ids[x];
long var2 = System.nanoTime(); long var2 = System.nanoTime();
- if (var1 == 0 || this.getAllowNether()) - if (var1 == 0 || this.getAllowNether())
@ -123,7 +126,7 @@
this.theProfiler.startSection(var4.getWorldInfo().getWorldName()); this.theProfiler.startSection(var4.getWorldInfo().getWorldName());
this.theProfiler.startSection("pools"); this.theProfiler.startSection("pools");
var4.getWorldVec3Pool().clear(); var4.getWorldVec3Pool().clear();
@@ -699,9 +681,11 @@ @@ -698,9 +682,11 @@
this.theProfiler.endSection(); this.theProfiler.endSection();
} }
@ -138,7 +141,7 @@
this.theProfiler.endStartSection("connection"); this.theProfiler.endStartSection("connection");
this.getNetworkThread().networkTick(); this.getNetworkThread().networkTick();
this.theProfiler.endStartSection("players"); this.theProfiler.endStartSection("players");
@@ -757,7 +741,13 @@ @@ -754,7 +740,13 @@
*/ */
public WorldServer worldServerForDimension(int par1) public WorldServer worldServerForDimension(int par1)
{ {
@ -153,7 +156,7 @@
} }
@SideOnly(Side.SERVER) @SideOnly(Side.SERVER)
@@ -866,7 +856,7 @@ @@ -863,7 +855,7 @@
public String getServerModName() public String getServerModName()
{ {
@ -162,7 +165,7 @@
} }
/** /**
@@ -1128,6 +1118,7 @@ @@ -1125,6 +1117,7 @@
if (var2 != null) if (var2 != null)
{ {

View file

@ -10,7 +10,7 @@
public class AnvilChunkLoader implements IThreadedFileIO, IChunkLoader public class AnvilChunkLoader implements IThreadedFileIO, IChunkLoader
{ {
private List chunksToRemove = new ArrayList(); private List chunksToRemove = new ArrayList();
@@ -97,6 +100,7 @@ @@ -93,6 +96,7 @@
var5 = this.readChunkFromNBT(par1World, par4NBTTagCompound.getCompoundTag("Level")); var5 = this.readChunkFromNBT(par1World, par4NBTTagCompound.getCompoundTag("Level"));
} }
@ -18,7 +18,7 @@
return var5; return var5;
} }
} }
@@ -112,6 +116,7 @@ @@ -108,6 +112,7 @@
var3.setTag("Level", var4); var3.setTag("Level", var4);
this.writeChunkToNBT(par2Chunk, par1World, var4); this.writeChunkToNBT(par2Chunk, par1World, var4);
this.func_75824_a(par2Chunk.getChunkCoordIntPair(), var3); this.func_75824_a(par2Chunk.getChunkCoordIntPair(), var3);

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/BlockRedstoneWire.java --- ../src_base/common/net/minecraft/src/BlockRedstoneWire.java
+++ ../src_work/common/net/minecraft/src/BlockRedstoneWire.java +++ ../src_work/common/net/minecraft/src/BlockRedstoneWire.java
@@ -556,7 +556,7 @@ @@ -554,7 +554,7 @@
} }
else if (var5 != Block.redstoneRepeaterIdle.blockID && var5 != Block.redstoneRepeaterActive.blockID) else if (var5 != Block.redstoneRepeaterIdle.blockID && var5 != Block.redstoneRepeaterActive.blockID)
{ {

View file

@ -58,31 +58,31 @@
{ {
var10 = 1; var10 = 1;
} }
@@ -121,19 +127,19 @@ @@ -123,19 +129,19 @@
*/
public void onBlockAdded(World par1World, int par2, int par3, int par4)
{ {
- if (par1World.isBlockNormalCubeDefault(par2 - 1, par3, par4, true)) if (par1World.getBlockMetadata(par2, par3, par4) == 0)
+ if (par1World.isBlockSolidOnSide(par2 - 1, par3, par4, EAST, true))
{ {
par1World.setBlockMetadataWithNotify(par2, par3, par4, 1); - if (par1World.isBlockNormalCubeDefault(par2 - 1, par3, par4, true))
} + if (par1World.isBlockSolidOnSide(par2 - 1, par3, par4, EAST, true))
- else if (par1World.isBlockNormalCubeDefault(par2 + 1, par3, par4, true)) {
+ else if (par1World.isBlockSolidOnSide(par2 + 1, par3, par4, WEST, true)) par1World.setBlockMetadataWithNotify(par2, par3, par4, 1);
{ }
par1World.setBlockMetadataWithNotify(par2, par3, par4, 2); - else if (par1World.isBlockNormalCubeDefault(par2 + 1, par3, par4, true))
} + else if (par1World.isBlockSolidOnSide(par2 + 1, par3, par4, WEST, true))
- else if (par1World.isBlockNormalCubeDefault(par2, par3, par4 - 1, true)) {
+ else if (par1World.isBlockSolidOnSide(par2, par3, par4 - 1, SOUTH, true)) par1World.setBlockMetadataWithNotify(par2, par3, par4, 2);
{ }
par1World.setBlockMetadataWithNotify(par2, par3, par4, 3); - else if (par1World.isBlockNormalCubeDefault(par2, par3, par4 - 1, true))
} + else if (par1World.isBlockSolidOnSide(par2, par3, par4 - 1, SOUTH, true))
- else if (par1World.isBlockNormalCubeDefault(par2, par3, par4 + 1, true)) {
+ else if (par1World.isBlockSolidOnSide(par2, par3, par4 + 1, NORTH, true)) par1World.setBlockMetadataWithNotify(par2, par3, par4, 3);
{ }
par1World.setBlockMetadataWithNotify(par2, par3, par4, 4); - else if (par1World.isBlockNormalCubeDefault(par2, par3, par4 + 1, true))
} + else if (par1World.isBlockSolidOnSide(par2, par3, par4 + 1, NORTH, true))
@@ -156,22 +162,22 @@ {
par1World.setBlockMetadataWithNotify(par2, par3, par4, 4);
}
@@ -159,22 +165,22 @@
int var6 = par1World.getBlockMetadata(par2, par3, par4); int var6 = par1World.getBlockMetadata(par2, par3, par4);
boolean var7 = false; boolean var7 = false;

View file

@ -301,23 +301,23 @@
par4TileEntity.validate(); par4TileEntity.validate();
this.chunkTileEntityMap.put(var5, par4TileEntity); this.chunkTileEntityMap.put(var5, par4TileEntity);
} }
@@ -966,6 +1025,7 @@ @@ -963,6 +1022,7 @@
List var4 = var1[var3]; {
this.worldObj.addLoadedEntities(var4); this.worldObj.addLoadedEntities(this.entityLists[var1]);
} }
+ MinecraftForge.EVENT_BUS.post(new ChunkEvent.Load(this)); + MinecraftForge.EVENT_BUS.post(new ChunkEvent.Load(this));
} }
/** /**
@@ -990,6 +1050,7 @@ @@ -983,6 +1043,7 @@
List var4 = var5[var3]; {
this.worldObj.unloadEntities(var4); this.worldObj.unloadEntities(this.entityLists[var3]);
} }
+ MinecraftForge.EVENT_BUS.post(new ChunkEvent.Unload(this)); + MinecraftForge.EVENT_BUS.post(new ChunkEvent.Unload(this));
} }
/** /**
@@ -1006,8 +1067,8 @@ @@ -999,8 +1060,8 @@
*/ */
public void getEntitiesWithinAABBForEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB, List par3List) public void getEntitiesWithinAABBForEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB, List par3List)
{ {
@ -328,7 +328,7 @@
if (var4 < 0) if (var4 < 0)
{ {
@@ -1055,8 +1116,8 @@ @@ -1047,8 +1108,8 @@
*/ */
public void getEntitiesOfTypeWithinAAAB(Class par1Class, AxisAlignedBB par2AxisAlignedBB, List par3List, IEntitySelector par4IEntitySelector) public void getEntitiesOfTypeWithinAAAB(Class par1Class, AxisAlignedBB par2AxisAlignedBB, List par3List, IEntitySelector par4IEntitySelector)
{ {
@ -339,7 +339,7 @@
if (var5 < 0) if (var5 < 0)
{ {
@@ -1240,6 +1301,15 @@ @@ -1231,6 +1292,15 @@
*/ */
public void fillChunk(byte[] par1ArrayOfByte, int par2, int par3, boolean par4) public void fillChunk(byte[] par1ArrayOfByte, int par2, int par3, boolean par4)
{ {
@ -355,7 +355,7 @@
int var5 = 0; int var5 = 0;
int var6; int var6;
@@ -1336,12 +1406,26 @@ @@ -1327,12 +1397,26 @@
} }
this.generateHeightMap(); this.generateHeightMap();
@ -388,7 +388,7 @@
} }
} }
@@ -1450,4 +1534,18 @@ @@ -1441,4 +1525,18 @@
} }
} }
} }

View file

@ -32,7 +32,7 @@
if (var5 == null) if (var5 == null)
{ {
@@ -291,6 +298,11 @@ @@ -290,6 +297,11 @@
{ {
if (!this.currentServer.canNotSave) if (!this.currentServer.canNotSave)
{ {
@ -44,7 +44,7 @@
for (int var1 = 0; var1 < 100; ++var1) for (int var1 = 0; var1 < 100; ++var1)
{ {
if (!this.chunksToUnload.isEmpty()) if (!this.chunksToUnload.isEmpty())
@@ -303,6 +315,11 @@ @@ -302,6 +314,11 @@
this.chunksToUnload.remove(var2); this.chunksToUnload.remove(var2);
this.loadedChunkHashMap.remove(var2.longValue()); this.loadedChunkHashMap.remove(var2.longValue());
this.loadedChunks.remove(var3); this.loadedChunks.remove(var3);

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/ContainerFurnace.java --- ../src_base/common/net/minecraft/src/ContainerFurnace.java
+++ ../src_work/common/net/minecraft/src/ContainerFurnace.java +++ ../src_work/common/net/minecraft/src/ContainerFurnace.java
@@ -122,7 +122,7 @@ @@ -120,7 +120,7 @@
} }
else if (par2 != 1 && par2 != 0) else if (par2 != 1 && par2 != 0)
{ {

View file

@ -1,11 +1,11 @@
--- ../src_base/common/net/minecraft/src/CraftingManager.java --- ../src_base/common/net/minecraft/src/CraftingManager.java
+++ ../src_work/common/net/minecraft/src/CraftingManager.java +++ ../src_work/common/net/minecraft/src/CraftingManager.java
@@ -266,7 +266,7 @@ @@ -263,7 +263,7 @@
} }
} }
- if (var3 == 2 && var4.itemID == var5.itemID && var4.stackSize == 1 && var5.stackSize == 1 && Item.itemsList[var4.itemID].isDamageable()) - if (var3 == 2 && var4.itemID == var5.itemID && var4.stackSize == 1 && var5.stackSize == 1 && Item.itemsList[var4.itemID].isDamageable())
+ if (var3 == 2 && var4.itemID == var5.itemID && var4.stackSize == 1 && var5.stackSize == 1 && Item.itemsList[var4.itemID].isRepairable()) + if (var3 == 2 && var4.itemID == var5.itemID && var4.stackSize == 1 && var5.stackSize == 1 && Item.itemsList[var4.itemID].isRepairable())
{ {
Item var13 = Item.itemsList[var4.itemID]; Item var11 = Item.itemsList[var4.itemID];
int var14 = var13.getMaxDamage() - var4.getItemDamageForDisplay(); int var13 = var11.getMaxDamage() - var4.getItemDamageForDisplay();

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/Enchantment.java --- ../src_base/common/net/minecraft/src/Enchantment.java
+++ ../src_work/common/net/minecraft/src/Enchantment.java +++ ../src_work/common/net/minecraft/src/Enchantment.java
@@ -198,4 +198,14 @@ @@ -191,4 +191,14 @@
String var2 = StatCollector.translateToLocal(this.getName()); String var2 = StatCollector.translateToLocal(this.getName());
return var2 + " " + StatCollector.translateToLocal("enchantment.level." + par1); return var2 + " " + StatCollector.translateToLocal("enchantment.level." + par1);
} }

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/EnchantmentHelper.java --- ../src_base/common/net/minecraft/src/EnchantmentHelper.java
+++ ../src_work/common/net/minecraft/src/EnchantmentHelper.java +++ ../src_work/common/net/minecraft/src/EnchantmentHelper.java
@@ -414,7 +414,7 @@ @@ -411,7 +411,7 @@
{ {
Enchantment var7 = var4[var6]; Enchantment var7 = var4[var6];

View file

@ -1,7 +1,7 @@
--- ../src_base/common/net/minecraft/src/Entity.java --- ../src_base/common/net/minecraft/src/Entity.java
+++ ../src_work/common/net/minecraft/src/Entity.java +++ ../src_work/common/net/minecraft/src/Entity.java
@@ -5,6 +5,8 @@ @@ -4,6 +4,8 @@
import java.util.Iterator; import cpw.mods.fml.common.asm.SideOnly;
import java.util.List; import java.util.List;
import java.util.Random; import java.util.Random;
+import java.util.UUID; +import java.util.UUID;
@ -9,7 +9,7 @@
import net.minecraft.server.MinecraftServer; import net.minecraft.server.MinecraftServer;
public abstract class Entity public abstract class Entity
@@ -198,6 +200,11 @@ @@ -197,6 +199,11 @@
protected int field_82152_aq; protected int field_82152_aq;
private boolean field_83001_bt; private boolean field_83001_bt;
public EnumEntitySize myEntitySize; public EnumEntitySize myEntitySize;
@ -21,7 +21,7 @@
public Entity(World par1World) public Entity(World par1World)
{ {
@@ -1493,6 +1500,15 @@ @@ -1489,6 +1496,15 @@
par1NBTTagCompound.setInteger("Dimension", this.dimension); par1NBTTagCompound.setInteger("Dimension", this.dimension);
par1NBTTagCompound.setBoolean("Invulnerable", this.field_83001_bt); par1NBTTagCompound.setBoolean("Invulnerable", this.field_83001_bt);
par1NBTTagCompound.setInteger("PortalCooldown", this.timeUntilPortal); par1NBTTagCompound.setInteger("PortalCooldown", this.timeUntilPortal);
@ -37,7 +37,7 @@
this.writeEntityToNBT(par1NBTTagCompound); this.writeEntityToNBT(par1NBTTagCompound);
} }
catch (Throwable var5) catch (Throwable var5)
@@ -1547,6 +1563,14 @@ @@ -1543,6 +1559,14 @@
this.timeUntilPortal = par1NBTTagCompound.getInteger("PortalCooldown"); this.timeUntilPortal = par1NBTTagCompound.getInteger("PortalCooldown");
this.setPosition(this.posX, this.posY, this.posZ); this.setPosition(this.posX, this.posY, this.posZ);
this.setRotation(this.rotationYaw, this.rotationPitch); this.setRotation(this.rotationYaw, this.rotationPitch);
@ -52,7 +52,7 @@
this.readEntityFromNBT(par1NBTTagCompound); this.readEntityFromNBT(par1NBTTagCompound);
} }
catch (Throwable var5) catch (Throwable var5)
@@ -1641,7 +1665,14 @@ @@ -1637,7 +1661,14 @@
{ {
EntityItem var3 = new EntityItem(this.worldObj, this.posX, this.posY + (double)par2, this.posZ, par1ItemStack); EntityItem var3 = new EntityItem(this.worldObj, this.posX, this.posY + (double)par2, this.posZ, par1ItemStack);
var3.delayBeforeCanPickup = 10; var3.delayBeforeCanPickup = 10;
@ -68,7 +68,7 @@
return var3; return var3;
} }
@@ -2001,7 +2032,7 @@ @@ -1996,7 +2027,7 @@
*/ */
public boolean isRiding() public boolean isRiding()
{ {
@ -77,7 +77,7 @@
} }
/** /**
@@ -2336,7 +2367,7 @@ @@ -2331,7 +2362,7 @@
public float func_82146_a(Explosion par1Explosion, Block par2Block, int par3, int par4, int par5) public float func_82146_a(Explosion par1Explosion, Block par2Block, int par3, int par4, int par5)
{ {
@ -86,9 +86,9 @@
} }
public int func_82143_as() public int func_82143_as()
@@ -2366,4 +2397,84 @@ @@ -2367,4 +2398,84 @@
par1CrashReportCategory.addCrashSection("Block location", CrashReportCategory.func_85071_a(MathHelper.floor_double(this.posX), MathHelper.floor_double(this.posY), MathHelper.floor_double(this.posZ))); {
par1CrashReportCategory.addCrashSection("Momentum", String.format("%.2f, %.2f, %.2f", new Object[] {Double.valueOf(this.motionX), Double.valueOf(this.motionY), Double.valueOf(this.motionZ)})); return this.isBurning();
} }
+ +
+ /* ================================== Forge Start =====================================*/ + /* ================================== Forge Start =====================================*/

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/EntityDragon.java --- ../src_base/common/net/minecraft/src/EntityDragon.java
+++ ../src_work/common/net/minecraft/src/EntityDragon.java +++ ../src_work/common/net/minecraft/src/EntityDragon.java
@@ -519,10 +519,11 @@ @@ -517,10 +517,11 @@
for (int var12 = var4; var12 <= var7; ++var12) for (int var12 = var4; var12 <= var7; ++var12)
{ {
int var13 = this.worldObj.getBlockId(var10, var11, var12); int var13 = this.worldObj.getBlockId(var10, var11, var12);

View file

@ -19,7 +19,7 @@
} }
public boolean isExplosiveMob(Class par1Class) public boolean isExplosiveMob(Class par1Class)
@@ -434,6 +439,7 @@ @@ -437,6 +442,7 @@
{ {
this.entityLivingToAttack = par1EntityLiving; this.entityLivingToAttack = par1EntityLiving;
this.revengeTimer = this.entityLivingToAttack != null ? 60 : 0; this.revengeTimer = this.entityLivingToAttack != null ? 60 : 0;
@ -27,7 +27,7 @@
} }
protected void entityInit() protected void entityInit()
@@ -723,6 +729,11 @@ @@ -726,6 +732,11 @@
*/ */
public void onUpdate() public void onUpdate()
{ {
@ -39,7 +39,7 @@
super.onUpdate(); super.onUpdate();
if (!this.worldObj.isRemote) if (!this.worldObj.isRemote)
@@ -908,6 +919,11 @@ @@ -911,6 +922,11 @@
*/ */
public boolean attackEntityFrom(DamageSource par1DamageSource, int par2) public boolean attackEntityFrom(DamageSource par1DamageSource, int par2)
{ {
@ -51,7 +51,7 @@
if (this.func_85032_ar()) if (this.func_85032_ar())
{ {
return false; return false;
@@ -1118,6 +1134,11 @@ @@ -1121,6 +1137,11 @@
{ {
if (!this.func_85032_ar()) if (!this.func_85032_ar())
{ {
@ -63,7 +63,7 @@
par2 = this.applyArmorCalculations(par1DamageSource, par2); par2 = this.applyArmorCalculations(par1DamageSource, par2);
par2 = this.applyPotionDamageCalculations(par1DamageSource, par2); par2 = this.applyPotionDamageCalculations(par1DamageSource, par2);
this.health -= par2; this.health -= par2;
@@ -1182,6 +1203,11 @@ @@ -1185,6 +1206,11 @@
*/ */
public void onDeath(DamageSource par1DamageSource) public void onDeath(DamageSource par1DamageSource)
{ {
@ -75,7 +75,7 @@
Entity var2 = par1DamageSource.getEntity(); Entity var2 = par1DamageSource.getEntity();
if (this.scoreValue >= 0 && var2 != null) if (this.scoreValue >= 0 && var2 != null)
@@ -1204,6 +1230,10 @@ @@ -1207,6 +1233,10 @@
{ {
var3 = EnchantmentHelper.getLootingModifier((EntityLiving)var2); var3 = EnchantmentHelper.getLootingModifier((EntityLiving)var2);
} }
@ -86,7 +86,7 @@
if (!this.isChild() && this.worldObj.getGameRules().getGameRuleBooleanValue("doMobLoot")) if (!this.isChild() && this.worldObj.getGameRules().getGameRuleBooleanValue("doMobLoot"))
{ {
@@ -1212,7 +1242,7 @@ @@ -1215,7 +1245,7 @@
if (this.recentlyHit > 0) if (this.recentlyHit > 0)
{ {
@ -95,7 +95,7 @@
if (var4 < 5) if (var4 < 5)
{ {
@@ -1220,6 +1250,16 @@ @@ -1223,6 +1253,16 @@
} }
} }
} }
@ -112,7 +112,7 @@
} }
this.worldObj.setEntityState(this, (byte)3); this.worldObj.setEntityState(this, (byte)3);
@@ -1263,6 +1303,12 @@ @@ -1266,6 +1306,12 @@
*/ */
protected void fall(float par1) protected void fall(float par1)
{ {
@ -125,7 +125,7 @@
super.fall(par1); super.fall(par1);
int var2 = MathHelper.ceiling_float_int(par1 - 3.0F); int var2 = MathHelper.ceiling_float_int(par1 - 3.0F);
@@ -1465,7 +1511,7 @@ @@ -1468,7 +1514,7 @@
int var2 = MathHelper.floor_double(this.boundingBox.minY); int var2 = MathHelper.floor_double(this.boundingBox.minY);
int var3 = MathHelper.floor_double(this.posZ); int var3 = MathHelper.floor_double(this.posZ);
int var4 = this.worldObj.getBlockId(var1, var2, var3); int var4 = this.worldObj.getBlockId(var1, var2, var3);
@ -134,7 +134,7 @@
} }
/** /**
@@ -1874,6 +1920,7 @@ @@ -1875,6 +1921,7 @@
} }
this.isAirBorne = true; this.isAirBorne = true;
@ -142,7 +142,7 @@
} }
/** /**
@@ -2411,8 +2458,6 @@ @@ -2412,8 +2459,6 @@
return this.getCreatureAttribute() == EnumCreatureAttribute.UNDEAD; return this.getCreatureAttribute() == EnumCreatureAttribute.UNDEAD;
} }
@ -151,7 +151,7 @@
/** /**
* Remove the speified potion effect from this entity. * Remove the speified potion effect from this entity.
*/ */
@@ -2860,4 +2905,30 @@ @@ -2861,4 +2906,30 @@
{ {
this.dataWatcher.updateObject(10, Byte.valueOf((byte)par1)); this.dataWatcher.updateObject(10, Byte.valueOf((byte)par1));
} }

View file

@ -45,9 +45,9 @@
} }
/** /**
@@ -65,4 +45,29 @@ @@ -70,4 +50,29 @@
{ {
return new EntityMooshroom(this.worldObj); return this.spawnBabyAnimal(par1EntityAgeable);
} }
+ +
+ @Override + @Override

View file

@ -26,7 +26,7 @@
if (this.itemInUseCount <= 25 && this.itemInUseCount % 4 == 0) if (this.itemInUseCount <= 25 && this.itemInUseCount % 4 == 0)
{ {
this.updateItemUse(var1, 5); this.updateItemUse(var1, 5);
@@ -577,6 +589,9 @@ @@ -575,6 +587,9 @@
this.setPosition(this.posX, this.posY, this.posZ); this.setPosition(this.posX, this.posY, this.posZ);
this.motionY = 0.10000000149011612D; this.motionY = 0.10000000149011612D;
@ -36,7 +36,7 @@
if (this.username.equals("Notch")) if (this.username.equals("Notch"))
{ {
this.dropPlayerItemWithRandomChoice(new ItemStack(Item.appleRed, 1), true); this.dropPlayerItemWithRandomChoice(new ItemStack(Item.appleRed, 1), true);
@@ -585,6 +600,20 @@ @@ -583,6 +598,20 @@
if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory")) if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory"))
{ {
this.inventory.dropAllItems(); this.inventory.dropAllItems();
@ -57,7 +57,7 @@
} }
if (par1DamageSource != null) if (par1DamageSource != null)
@@ -624,7 +653,16 @@ @@ -622,7 +651,16 @@
*/ */
public EntityItem dropOneItem() public EntityItem dropOneItem()
{ {
@ -75,7 +75,7 @@
} }
/** /**
@@ -633,7 +671,7 @@ @@ -631,7 +669,7 @@
*/ */
public EntityItem dropPlayerItem(ItemStack par1ItemStack) public EntityItem dropPlayerItem(ItemStack par1ItemStack)
{ {
@ -84,7 +84,7 @@
} }
/** /**
@@ -685,18 +723,33 @@ @@ -683,18 +721,33 @@
*/ */
public void joinEntityItemWithWorld(EntityItem par1EntityItem) public void joinEntityItemWithWorld(EntityItem par1EntityItem)
{ {
@ -122,7 +122,7 @@
{ {
var2 += (float)(var3 * var3 + 1); var2 += (float)(var3 * var3 + 1);
} }
@@ -721,7 +774,8 @@ @@ -719,7 +772,8 @@
var2 /= 5.0F; var2 /= 5.0F;
} }
@ -132,7 +132,7 @@
} }
/** /**
@@ -729,7 +783,7 @@ @@ -727,7 +781,7 @@
*/ */
public boolean canHarvestBlock(Block par1Block) public boolean canHarvestBlock(Block par1Block)
{ {
@ -141,7 +141,7 @@
} }
/** /**
@@ -1014,12 +1068,22 @@ @@ -1012,12 +1066,22 @@
{ {
if (!this.func_85032_ar()) if (!this.func_85032_ar())
{ {
@ -165,7 +165,7 @@
par2 = this.applyPotionDamageCalculations(par1DamageSource, par2); par2 = this.applyPotionDamageCalculations(par1DamageSource, par2);
this.addExhaustion(par1DamageSource.getHungerDamage()); this.addExhaustion(par1DamageSource.getHungerDamage());
this.health -= par2; this.health -= par2;
@@ -1060,6 +1124,10 @@ @@ -1058,6 +1122,10 @@
public boolean interactWith(Entity par1Entity) public boolean interactWith(Entity par1Entity)
{ {
@ -176,7 +176,7 @@
if (par1Entity.interact(this)) if (par1Entity.interact(this))
{ {
return true; return true;
@@ -1103,7 +1171,9 @@ @@ -1101,7 +1169,9 @@
*/ */
public void destroyCurrentEquippedItem() public void destroyCurrentEquippedItem()
{ {
@ -186,7 +186,7 @@
} }
/** /**
@@ -1120,6 +1190,15 @@ @@ -1118,6 +1188,15 @@
*/ */
public void attackTargetEntityWithCurrentItem(Entity par1Entity) public void attackTargetEntityWithCurrentItem(Entity par1Entity)
{ {
@ -202,7 +202,7 @@
if (par1Entity.canAttackWithItem()) if (par1Entity.canAttackWithItem())
{ {
if (!par1Entity.func_85031_j(this)) if (!par1Entity.func_85031_j(this))
@@ -1266,6 +1345,12 @@ @@ -1276,6 +1355,12 @@
*/ */
public EnumStatus sleepInBedAt(int par1, int par2, int par3) public EnumStatus sleepInBedAt(int par1, int par2, int par3)
{ {
@ -215,7 +215,7 @@
if (!this.worldObj.isRemote) if (!this.worldObj.isRemote)
{ {
if (this.isPlayerSleeping() || !this.isEntityAlive()) if (this.isPlayerSleeping() || !this.isEntityAlive())
@@ -1305,6 +1390,11 @@ @@ -1315,6 +1400,11 @@
{ {
int var9 = this.worldObj.getBlockMetadata(par1, par2, par3); int var9 = this.worldObj.getBlockMetadata(par1, par2, par3);
int var5 = BlockBed.getDirection(var9); int var5 = BlockBed.getDirection(var9);
@ -227,7 +227,7 @@
float var10 = 0.5F; float var10 = 0.5F;
float var7 = 0.5F; float var7 = 0.5F;
@@ -1375,10 +1465,12 @@ @@ -1385,10 +1475,12 @@
ChunkCoordinates var4 = this.playerLocation; ChunkCoordinates var4 = this.playerLocation;
ChunkCoordinates var5 = this.playerLocation; ChunkCoordinates var5 = this.playerLocation;
@ -244,7 +244,7 @@
if (var5 == null) if (var5 == null)
{ {
@@ -1415,7 +1507,9 @@ @@ -1425,7 +1517,9 @@
*/ */
private boolean isInBed() private boolean isInBed()
{ {
@ -255,7 +255,7 @@
} }
/** /**
@@ -1430,9 +1524,12 @@ @@ -1440,9 +1534,12 @@
var3.loadChunk(par1ChunkCoordinates.posX - 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4); var3.loadChunk(par1ChunkCoordinates.posX - 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4);
var3.loadChunk(par1ChunkCoordinates.posX + 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4); var3.loadChunk(par1ChunkCoordinates.posX + 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4);
@ -271,7 +271,7 @@
return var8; return var8;
} }
else else
@@ -1454,8 +1551,11 @@ @@ -1464,8 +1561,11 @@
{ {
if (this.playerLocation != null) if (this.playerLocation != null)
{ {
@ -285,7 +285,7 @@
switch (var2) switch (var2)
{ {
@@ -1786,6 +1886,7 @@ @@ -1796,6 +1896,7 @@
return 101; return 101;
} }
} }

View file

@ -30,20 +30,19 @@
this.setLocationAndAngles((double)var6 + 0.5D, (double)var8, (double)var7 + 0.5D, 0.0F, 0.0F); this.setLocationAndAngles((double)var6 + 0.5D, (double)var8, (double)var7 + 0.5D, 0.0F, 0.0F);
this.mcServer = par1MinecraftServer; this.mcServer = par1MinecraftServer;
@@ -172,7 +167,11 @@ @@ -188,7 +183,10 @@
if (var4 != null && this.worldObj.blockExists(var4.chunkXPos << 4, 0, var4.chunkZPos << 4)) if (var9 != null && this.worldObj.blockExists(var9.chunkXPos << 4, 0, var9.chunkZPos << 4))
{ {
var1.add(this.worldObj.getChunkFromChunkCoords(var4.chunkXPos, var4.chunkZPos)); var6.add(this.worldObj.getChunkFromChunkCoords(var9.chunkXPos, var9.chunkZPos));
- var3.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var4.chunkXPos * 16, 0, var4.chunkZPos * 16, var4.chunkXPos * 16 + 16, 256, var4.chunkZPos * 16 + 16)); - var8.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var9.chunkXPos * 16, 0, var9.chunkZPos * 16, var9.chunkXPos * 16 + 16, 256, var9.chunkZPos * 16 + 16));
+ //BugFix: 16 makes it load an extra chunk, which isn't associated with a player, which makes it not unload unless a player walks near it. + //BugFix: 16 makes it load an extra chunk, which isn't associated with a player, which makes it not unload unless a player walks near it.
+ //ToDo: Find a way to efficiently clean abandoned chunks. + //ToDo: Find a way to efficiently clean abandoned chunks.
+ //var3.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var4.chunkXPos * 16, 0, var4.chunkZPos * 16, var4.chunkXPos * 16 + 16, 256, var4.chunkZPos * 16 + 16)); + //var8.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var9.chunkXPos * 16, 0, var9.chunkZPos * 16, var9.chunkXPos * 16 + 16, 256, var9.chunkZPos * 16 + 16));
+ var3.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var4.chunkXPos * 16, 0, var4.chunkZPos * 16, var4.chunkXPos * 16 + 15, 256, var4.chunkZPos * 16 + 15)); + var8.addAll(((WorldServer)this.worldObj).getAllTileEntityInBox(var9.chunkXPos * 16, 0, var9.chunkZPos * 16, var9.chunkXPos * 16 + 15, 256, var9.chunkZPos * 16 + 15));
+
} }
} }
@@ -253,11 +252,29 @@ @@ -253,11 +251,29 @@
*/ */
public void onDeath(DamageSource par1DamageSource) public void onDeath(DamageSource par1DamageSource)
{ {

View file

@ -13,9 +13,9 @@
+ +
+public class EntitySheep extends EntityAnimal implements IShearable +public class EntitySheep extends EntityAnimal implements IShearable
{ {
/** private final InventoryCrafting field_90016_e = new InventoryCrafting(new ContainerSheep(this), 2, 1);
* Holds the RGB table of the sheep colors - in OpenGL glColor3f values - used to render the sheep colored fleece.
@@ -134,28 +138,6 @@ @@ -118,28 +122,6 @@
*/ */
public boolean interact(EntityPlayer par1EntityPlayer) public boolean interact(EntityPlayer par1EntityPlayer)
{ {
@ -44,9 +44,9 @@
return super.interact(par1EntityPlayer); return super.interact(par1EntityPlayer);
} }
@@ -304,4 +286,24 @@ @@ -328,4 +310,24 @@
{ {
this.setFleeceColor(getRandomFleeceColor(this.worldObj.rand)); return this.func_90015_b(par1EntityAgeable);
} }
+ +
+ @Override + @Override

View file

@ -7,7 +7,7 @@
import cpw.mods.fml.common.Side; import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly; import cpw.mods.fml.common.asm.SideOnly;
@@ -110,4 +111,15 @@ @@ -105,4 +106,15 @@
{ {
return this.toolMaterial.getToolCraftingMaterial() == par2ItemStack.itemID ? true : super.getIsRepairable(par1ItemStack, par2ItemStack); return this.toolMaterial.getToolCraftingMaterial() == par2ItemStack.itemID ? true : super.getIsRepairable(par1ItemStack, par2ItemStack);
} }

View file

@ -1,24 +1,12 @@
--- ../src_base/common/net/minecraft/src/PlayerInstance.java --- ../src_base/common/net/minecraft/src/PlayerInstance.java
+++ ../src_work/common/net/minecraft/src/PlayerInstance.java +++ ../src_work/common/net/minecraft/src/PlayerInstance.java
@@ -3,6 +3,9 @@ @@ -137,6 +137,9 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.Side;
class PlayerInstance
{
@@ -140,7 +143,10 @@
if ((this.field_73260_f & 1 << var3) != 0) if ((this.field_73260_f & 1 << var3) != 0)
{ {
var4 = var3 << 4; var4 = var3 << 4;
- List var5 = PlayerManager.getWorldServer(this.myManager).getAllTileEntityInBox(var1, var4, var2, var1 + 16, var4 + 16, var2 + 16);
+ //BugFix: 16 makes it load an extra chunk, which isn't associated with a player, which makes it not unload unless a player walks near it. + //BugFix: 16 makes it load an extra chunk, which isn't associated with a player, which makes it not unload unless a player walks near it.
+ //ToDo: Find a way to efficiently clean abandoned chunks. + //ToDo: Find a way to efficiently clean abandoned chunks.
+ //List var5 = PlayerManager.getWorldServer(this.myManager).getAllTileEntityInBox(var1, var4, var2, var1 + 16, var4 + 16, var2 + 16); + //List var5 = PlayerManager.getWorldServer(this.myManager).getAllTileEntityInBox(var1, var4, var2, var1 + 15, var4 + 16, var2 + 15);
+ List var5 = PlayerManager.getWorldServer(this.myManager).getAllTileEntityInBox(var1, var4, var2, var1 + 15, var4 + 16, var2 + 15); List var5 = PlayerManager.getWorldServer(this.myManager).getAllTileEntityInBox(var1, var4, var2, var1 + 16, var4 + 16, var2 + 16);
Iterator var6 = var5.iterator();
while (var6.hasNext()) for (int var6 = 0; var6 < var5.size(); ++var6)

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/RailLogic.java --- ../src_base/common/net/minecraft/src/RailLogic.java
+++ ../src_work/common/net/minecraft/src/RailLogic.java +++ ../src_work/common/net/minecraft/src/RailLogic.java
@@ -19,6 +19,7 @@ @@ -18,6 +18,7 @@
private List connectedTracks; private List connectedTracks;
final BlockRail rail; final BlockRail rail;
@ -8,7 +8,7 @@
public RailLogic(BlockRail par1BlockRail, World par2World, int par3, int par4, int par5) public RailLogic(BlockRail par1BlockRail, World par2World, int par3, int par4, int par5)
{ {
@@ -29,18 +30,11 @@ @@ -28,18 +29,11 @@
this.trackY = par4; this.trackY = par4;
this.trackZ = par5; this.trackZ = par5;
int var6 = par2World.getBlockId(par3, par4, par5); int var6 = par2World.getBlockId(par3, par4, par5);
@ -32,7 +32,7 @@
this.setConnections(var7); this.setConnections(var7);
} }
@@ -267,7 +261,7 @@ @@ -258,7 +252,7 @@
} }
} }
@ -41,7 +41,7 @@
{ {
if (BlockRail.isRailBlockAt(this.worldObj, this.trackX, this.trackY + 1, this.trackZ - 1)) if (BlockRail.isRailBlockAt(this.worldObj, this.trackX, this.trackY + 1, this.trackZ - 1))
{ {
@@ -280,7 +274,7 @@ @@ -271,7 +265,7 @@
} }
} }
@ -50,7 +50,7 @@
{ {
if (BlockRail.isRailBlockAt(this.worldObj, this.trackX + 1, this.trackY + 1, this.trackZ)) if (BlockRail.isRailBlockAt(this.worldObj, this.trackX + 1, this.trackY + 1, this.trackZ))
{ {
@@ -431,7 +425,7 @@ @@ -422,7 +416,7 @@
} }
} }
@ -59,7 +59,7 @@
{ {
if (BlockRail.isRailBlockAt(this.worldObj, this.trackX, this.trackY + 1, this.trackZ - 1)) if (BlockRail.isRailBlockAt(this.worldObj, this.trackX, this.trackY + 1, this.trackZ - 1))
{ {
@@ -444,7 +438,7 @@ @@ -435,7 +429,7 @@
} }
} }

View file

@ -8,7 +8,7 @@
public abstract class ServerConfigurationManager public abstract class ServerConfigurationManager
{ {
@@ -298,6 +299,12 @@ @@ -296,6 +297,12 @@
*/ */
public EntityPlayerMP respawnPlayer(EntityPlayerMP par1EntityPlayerMP, int par2, boolean par3) public EntityPlayerMP respawnPlayer(EntityPlayerMP par1EntityPlayerMP, int par2, boolean par3)
{ {
@ -21,7 +21,7 @@
par1EntityPlayerMP.getServerForPlayer().getEntityTracker().removeAllTrackingPlayers(par1EntityPlayerMP); par1EntityPlayerMP.getServerForPlayer().getEntityTracker().removeAllTrackingPlayers(par1EntityPlayerMP);
par1EntityPlayerMP.getServerForPlayer().getEntityTracker().removeEntityFromAllTrackingPlayers(par1EntityPlayerMP); par1EntityPlayerMP.getServerForPlayer().getEntityTracker().removeEntityFromAllTrackingPlayers(par1EntityPlayerMP);
par1EntityPlayerMP.getServerForPlayer().getPlayerManager().removePlayer(par1EntityPlayerMP); par1EntityPlayerMP.getServerForPlayer().getPlayerManager().removePlayer(par1EntityPlayerMP);
@@ -320,6 +327,7 @@ @@ -318,6 +325,7 @@
EntityPlayerMP var7 = new EntityPlayerMP(this.mcServer, this.mcServer.worldServerForDimension(par1EntityPlayerMP.dimension), par1EntityPlayerMP.username, (ItemInWorldManager)var6); EntityPlayerMP var7 = new EntityPlayerMP(this.mcServer, this.mcServer.worldServerForDimension(par1EntityPlayerMP.dimension), par1EntityPlayerMP.username, (ItemInWorldManager)var6);
var7.playerNetServerHandler = par1EntityPlayerMP.playerNetServerHandler; var7.playerNetServerHandler = par1EntityPlayerMP.playerNetServerHandler;
var7.clonePlayer(par1EntityPlayerMP, par3); var7.clonePlayer(par1EntityPlayerMP, par3);
@ -29,7 +29,7 @@
var7.entityId = par1EntityPlayerMP.entityId; var7.entityId = par1EntityPlayerMP.entityId;
WorldServer var8 = this.mcServer.worldServerForDimension(par1EntityPlayerMP.dimension); WorldServer var8 = this.mcServer.worldServerForDimension(par1EntityPlayerMP.dimension);
this.func_72381_a(var7, par1EntityPlayerMP, var8); this.func_72381_a(var7, par1EntityPlayerMP, var8);
@@ -363,14 +371,20 @@ @@ -361,14 +369,20 @@
public void transferPlayerToDimension(EntityPlayerMP par1EntityPlayerMP, int par2) public void transferPlayerToDimension(EntityPlayerMP par1EntityPlayerMP, int par2)
{ {
@ -51,7 +51,7 @@
this.func_72375_a(par1EntityPlayerMP, var4); this.func_72375_a(par1EntityPlayerMP, var4);
par1EntityPlayerMP.playerNetServerHandler.setPlayerLocation(par1EntityPlayerMP.posX, par1EntityPlayerMP.posY, par1EntityPlayerMP.posZ, par1EntityPlayerMP.rotationYaw, par1EntityPlayerMP.rotationPitch); par1EntityPlayerMP.playerNetServerHandler.setPlayerLocation(par1EntityPlayerMP.posX, par1EntityPlayerMP.posY, par1EntityPlayerMP.posZ, par1EntityPlayerMP.rotationYaw, par1EntityPlayerMP.rotationPitch);
par1EntityPlayerMP.theItemInWorldManager.setWorld(var5); par1EntityPlayerMP.theItemInWorldManager.setWorld(var5);
@@ -391,38 +405,23 @@ @@ -389,38 +403,23 @@
*/ */
public void transferEntityToWorld(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer) public void transferEntityToWorld(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer)
{ {
@ -101,7 +101,7 @@
{ {
ChunkCoordinates var18; ChunkCoordinates var18;
@@ -459,7 +458,7 @@ @@ -457,7 +456,7 @@
par4WorldServer.spawnEntityInWorld(par1Entity); par4WorldServer.spawnEntityInWorld(par1Entity);
par1Entity.setLocationAndAngles(var5, par1Entity.posY, var7, par1Entity.rotationYaw, par1Entity.rotationPitch); par1Entity.setLocationAndAngles(var5, par1Entity.posY, var7, par1Entity.rotationYaw, par1Entity.rotationPitch);
par4WorldServer.updateEntityWithOptionalForce(par1Entity, false); par4WorldServer.updateEntityWithOptionalForce(par1Entity, false);

View file

@ -139,7 +139,7 @@
} }
public int func_85175_e(int par1, int par2, int par3) public int func_85175_e(int par1, int par2, int par3)
@@ -1113,7 +1169,7 @@ @@ -1099,7 +1155,7 @@
*/ */
public boolean isDaytime() public boolean isDaytime()
{ {
@ -148,7 +148,7 @@
} }
/** /**
@@ -1145,7 +1201,7 @@ @@ -1131,7 +1187,7 @@
int var12 = this.getBlockMetadata(var8, var9, var10); int var12 = this.getBlockMetadata(var8, var9, var10);
Block var13 = Block.blocksList[var11]; Block var13 = Block.blocksList[var11];
@ -157,7 +157,7 @@
{ {
MovingObjectPosition var14 = var13.collisionRayTrace(this, var8, var9, var10, par1Vec3, par2Vec3); MovingObjectPosition var14 = var13.collisionRayTrace(this, var8, var9, var10, par1Vec3, par2Vec3);
@@ -1345,6 +1401,12 @@ @@ -1331,6 +1387,12 @@
*/ */
public void playSoundAtEntity(Entity par1Entity, String par2Str, float par3, float par4) public void playSoundAtEntity(Entity par1Entity, String par2Str, float par3, float par4)
{ {
@ -169,8 +169,8 @@
+ par2Str = event.name; + par2Str = event.name;
if (par1Entity != null && par2Str != null) if (par1Entity != null && par2Str != null)
{ {
Iterator var5 = this.worldAccesses.iterator(); for (int var5 = 0; var5 < this.worldAccesses.size(); ++var5)
@@ -1457,6 +1519,11 @@ @@ -1428,6 +1490,11 @@
EntityPlayer var5 = (EntityPlayer)par1Entity; EntityPlayer var5 = (EntityPlayer)par1Entity;
this.playerEntities.add(var5); this.playerEntities.add(var5);
this.updateAllPlayersSleepingFlag(); this.updateAllPlayersSleepingFlag();
@ -182,7 +182,7 @@
} }
this.getChunkFromChunkCoords(var2, var3).addEntity(par1Entity); this.getChunkFromChunkCoords(var2, var3).addEntity(par1Entity);
@@ -1708,6 +1775,12 @@ @@ -1671,6 +1738,12 @@
* Calculates the color for the skybox * Calculates the color for the skybox
*/ */
public Vec3 getSkyColor(Entity par1Entity, float par2) public Vec3 getSkyColor(Entity par1Entity, float par2)
@ -195,7 +195,7 @@
{ {
float var3 = this.getCelestialAngle(par2); float var3 = this.getCelestialAngle(par2);
float var4 = MathHelper.cos(var3 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; float var4 = MathHelper.cos(var3 * (float)Math.PI * 2.0F) * 2.0F + 0.5F;
@@ -1803,6 +1876,12 @@ @@ -1766,6 +1839,12 @@
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public Vec3 drawClouds(float par1) public Vec3 drawClouds(float par1)
{ {
@ -208,7 +208,7 @@
float var2 = this.getCelestialAngle(par1); float var2 = this.getCelestialAngle(par1);
float var3 = MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; float var3 = MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.5F;
@@ -1881,7 +1960,7 @@ @@ -1844,7 +1923,7 @@
{ {
int var5 = var3.getBlockID(par1, var4, par2); int var5 = var3.getBlockID(par1, var4, par2);
@ -217,7 +217,7 @@
{ {
return var4 + 1; return var4 + 1;
} }
@@ -1896,6 +1975,12 @@ @@ -1859,6 +1938,12 @@
* How bright are stars in the sky * How bright are stars in the sky
*/ */
public float getStarBrightness(float par1) public float getStarBrightness(float par1)
@ -230,16 +230,16 @@
{ {
float var2 = this.getCelestialAngle(par1); float var2 = this.getCelestialAngle(par1);
float var3 = 1.0F - (MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.25F); float var3 = 1.0F - (MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.25F);
@@ -2099,7 +2184,7 @@ @@ -2058,7 +2143,7 @@
if (var12 != null) if (var11 != null)
{ {
- var12.removeChunkBlockTileEntity(var10.xCoord & 15, var10.yCoord, var10.zCoord & 15); - var11.removeChunkBlockTileEntity(var9.xCoord & 15, var9.yCoord, var9.zCoord & 15);
+ var12.cleanChunkBlockTileEntity(var10.xCoord & 15, var10.yCoord, var10.zCoord & 15); + var11.cleanChunkBlockTileEntity(var9.xCoord & 15, var9.yCoord, var9.zCoord & 15);
} }
} }
} }
@@ -2109,6 +2194,10 @@ @@ -2068,6 +2153,10 @@
if (!this.entityRemoval.isEmpty()) if (!this.entityRemoval.isEmpty())
{ {
@ -250,27 +250,27 @@
this.loadedTileEntityList.removeAll(this.entityRemoval); this.loadedTileEntityList.removeAll(this.entityRemoval);
this.entityRemoval.clear(); this.entityRemoval.clear();
} }
@@ -2129,7 +2218,9 @@ @@ -2086,7 +2175,9 @@
{ {
this.loadedTileEntityList.add(var13); this.loadedTileEntityList.add(var12);
} }
- -
+ } + }
+ else + else
+ { + {
if (this.chunkExists(var13.xCoord >> 4, var13.zCoord >> 4)) if (this.chunkExists(var12.xCoord >> 4, var12.zCoord >> 4))
{ {
Chunk var15 = this.getChunkFromChunkCoords(var13.xCoord >> 4, var13.zCoord >> 4); Chunk var15 = this.getChunkFromChunkCoords(var12.xCoord >> 4, var12.zCoord >> 4);
@@ -2139,8 +2230,6 @@ @@ -2096,8 +2187,6 @@
var15.setChunkBlockTileEntity(var13.xCoord & 15, var13.yCoord, var13.zCoord & 15, var13); var15.setChunkBlockTileEntity(var12.xCoord & 15, var12.yCoord, var12.zCoord & 15, var12);
} }
} }
- -
- this.markBlockNeedsUpdate(var13.xCoord, var13.yCoord, var13.zCoord); - this.markBlockNeedsUpdate(var12.xCoord, var12.yCoord, var12.zCoord);
} }
} }
@@ -2153,13 +2242,13 @@ @@ -2110,13 +2199,13 @@
public void addTileEntity(Collection par1Collection) public void addTileEntity(Collection par1Collection)
{ {
@ -291,7 +291,7 @@
} }
} }
@@ -2179,9 +2268,17 @@ @@ -2136,9 +2225,17 @@
{ {
int var3 = MathHelper.floor_double(par1Entity.posX); int var3 = MathHelper.floor_double(par1Entity.posX);
int var4 = MathHelper.floor_double(par1Entity.posZ); int var4 = MathHelper.floor_double(par1Entity.posZ);
@ -312,7 +312,7 @@
{ {
par1Entity.lastTickPosX = par1Entity.posX; par1Entity.lastTickPosX = par1Entity.posX;
par1Entity.lastTickPosY = par1Entity.posY; par1Entity.lastTickPosY = par1Entity.posY;
@@ -2416,6 +2513,14 @@ @@ -2370,6 +2467,14 @@
{ {
return true; return true;
} }
@ -327,7 +327,7 @@
} }
} }
} }
@@ -2723,25 +2828,21 @@ @@ -2675,25 +2780,21 @@
*/ */
public void setBlockTileEntity(int par1, int par2, int par3, TileEntity par4TileEntity) public void setBlockTileEntity(int par1, int par2, int par3, TileEntity par4TileEntity)
{ {
@ -368,7 +368,7 @@
} }
} }
@@ -2750,27 +2851,10 @@ @@ -2702,27 +2803,10 @@
*/ */
public void removeBlockTileEntity(int par1, int par2, int par3) public void removeBlockTileEntity(int par1, int par2, int par3)
{ {
@ -400,7 +400,7 @@
} }
} }
@@ -2796,7 +2880,8 @@ @@ -2748,7 +2832,8 @@
*/ */
public boolean isBlockNormalCube(int par1, int par2, int par3) public boolean isBlockNormalCube(int par1, int par2, int par3)
{ {
@ -410,7 +410,7 @@
} }
public boolean func_85174_u(int par1, int par2, int par3) public boolean func_85174_u(int par1, int par2, int par3)
@@ -2819,8 +2904,7 @@ @@ -2771,8 +2856,7 @@
*/ */
public boolean doesBlockHaveSolidTopSurface(int par1, int par2, int par3) public boolean doesBlockHaveSolidTopSurface(int par1, int par2, int par3)
{ {
@ -420,7 +420,7 @@
} }
/** /**
@@ -2836,7 +2920,7 @@ @@ -2788,7 +2872,7 @@
if (var5 != null && !var5.isEmpty()) if (var5 != null && !var5.isEmpty())
{ {
Block var6 = Block.blocksList[this.getBlockId(par1, par2, par3)]; Block var6 = Block.blocksList[this.getBlockId(par1, par2, par3)];
@ -429,7 +429,7 @@
} }
else else
{ {
@@ -2867,8 +2951,7 @@ @@ -2819,8 +2903,7 @@
*/ */
public void setAllowedSpawnTypes(boolean par1, boolean par2) public void setAllowedSpawnTypes(boolean par1, boolean par2)
{ {
@ -439,7 +439,7 @@
} }
/** /**
@@ -2884,6 +2967,11 @@ @@ -2836,6 +2919,11 @@
*/ */
private void calculateInitialWeather() private void calculateInitialWeather()
{ {
@ -451,7 +451,7 @@
if (this.worldInfo.isRaining()) if (this.worldInfo.isRaining())
{ {
this.rainingStrength = 1.0F; this.rainingStrength = 1.0F;
@@ -2899,6 +2987,11 @@ @@ -2851,6 +2939,11 @@
* Updates all weather states. * Updates all weather states.
*/ */
protected void updateWeather() protected void updateWeather()
@ -463,7 +463,7 @@
{ {
if (!this.provider.hasNoSky) if (!this.provider.hasNoSky)
{ {
@@ -3001,12 +3094,14 @@ @@ -2953,12 +3046,14 @@
public void toggleRain() public void toggleRain()
{ {
@ -479,7 +479,7 @@
this.theProfiler.startSection("buildList"); this.theProfiler.startSection("buildList");
int var1; int var1;
EntityPlayer var2; EntityPlayer var2;
@@ -3113,6 +3208,11 @@ @@ -3065,6 +3160,11 @@
*/ */
public boolean canBlockFreeze(int par1, int par2, int par3, boolean par4) public boolean canBlockFreeze(int par1, int par2, int par3, boolean par4)
{ {
@ -491,7 +491,7 @@
BiomeGenBase var5 = this.getBiomeGenForCoords(par1, par3); BiomeGenBase var5 = this.getBiomeGenForCoords(par1, par3);
float var6 = var5.getFloatTemperature(); float var6 = var5.getFloatTemperature();
@@ -3170,6 +3270,11 @@ @@ -3122,6 +3222,11 @@
* Tests whether or not snow can be placed at a given location * Tests whether or not snow can be placed at a given location
*/ */
public boolean canSnowAt(int par1, int par2, int par3) public boolean canSnowAt(int par1, int par2, int par3)
@ -503,7 +503,7 @@
{ {
BiomeGenBase var4 = this.getBiomeGenForCoords(par1, par3); BiomeGenBase var4 = this.getBiomeGenForCoords(par1, par3);
float var5 = var4.getFloatTemperature(); float var5 = var4.getFloatTemperature();
@@ -3263,7 +3368,7 @@ @@ -3215,7 +3320,7 @@
private int computeBlockLightValue(int par1, int par2, int par3, int par4, int par5, int par6) private int computeBlockLightValue(int par1, int par2, int par3, int par4, int par5, int par6)
{ {
@ -512,7 +512,7 @@
int var8 = this.getSavedLightValue(EnumSkyBlock.Block, par2 - 1, par3, par4) - par6; int var8 = this.getSavedLightValue(EnumSkyBlock.Block, par2 - 1, par3, par4) - par6;
int var9 = this.getSavedLightValue(EnumSkyBlock.Block, par2 + 1, par3, par4) - par6; int var9 = this.getSavedLightValue(EnumSkyBlock.Block, par2 + 1, par3, par4) - par6;
int var10 = this.getSavedLightValue(EnumSkyBlock.Block, par2, par3 - 1, par4) - par6; int var10 = this.getSavedLightValue(EnumSkyBlock.Block, par2, par3 - 1, par4) - par6;
@@ -3398,7 +3503,7 @@ @@ -3350,7 +3455,7 @@
int var21 = var24 + (var18 / 2 + 1) % 3 / 2 * var19; int var21 = var24 + (var18 / 2 + 1) % 3 / 2 * var19;
int var22 = var12 + (var18 / 2 + 2) % 3 / 2 * var19; int var22 = var12 + (var18 / 2 + 2) % 3 / 2 * var19;
var14 = this.getSavedLightValue(par1EnumSkyBlock, var20, var21, var22); var14 = this.getSavedLightValue(par1EnumSkyBlock, var20, var21, var22);
@ -521,7 +521,7 @@
if (var23 == 0) if (var23 == 0)
{ {
@@ -3429,7 +3534,7 @@ @@ -3381,7 +3486,7 @@
var12 = (var9 >> 12 & 63) - 32 + par4; var12 = (var9 >> 12 & 63) - 32 + par4;
var13 = this.getSavedLightValue(par1EnumSkyBlock, var10, var24, var12); var13 = this.getSavedLightValue(par1EnumSkyBlock, var10, var24, var12);
var14 = this.getBlockId(var10, var24, var12); var14 = this.getBlockId(var10, var24, var12);
@ -530,7 +530,7 @@
if (var15 == 0) if (var15 == 0)
{ {
@@ -3531,10 +3636,10 @@ @@ -3483,10 +3588,10 @@
public List getEntitiesWithinAABBExcludingEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB) public List getEntitiesWithinAABBExcludingEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB)
{ {
this.entitiesWithinAABBExcludingEntity.clear(); this.entitiesWithinAABBExcludingEntity.clear();
@ -545,7 +545,7 @@
for (int var7 = var3; var7 <= var4; ++var7) for (int var7 = var3; var7 <= var4; ++var7)
{ {
@@ -3560,10 +3665,10 @@ @@ -3512,10 +3617,10 @@
public List func_82733_a(Class par1Class, AxisAlignedBB par2AxisAlignedBB, IEntitySelector par3IEntitySelector) public List func_82733_a(Class par1Class, AxisAlignedBB par2AxisAlignedBB, IEntitySelector par3IEntitySelector)
{ {
@ -560,7 +560,7 @@
ArrayList var8 = new ArrayList(); ArrayList var8 = new ArrayList();
for (int var9 = var4; var9 <= var5; ++var9) for (int var9 = var4; var9 <= var5; ++var9)
@@ -3657,11 +3762,14 @@ @@ -3608,11 +3713,14 @@
*/ */
public void addLoadedEntities(List par1List) public void addLoadedEntities(List par1List)
{ {
@ -578,7 +578,7 @@
} }
} }
@@ -3695,6 +3803,11 @@ @@ -3646,6 +3754,11 @@
else else
{ {
if (var9 != null && (var9 == Block.waterMoving || var9 == Block.waterStill || var9 == Block.lavaMoving || var9 == Block.lavaStill || var9 == Block.fire || var9.blockMaterial.isGroundCover())) if (var9 != null && (var9 == Block.waterMoving || var9 == Block.waterStill || var9 == Block.lavaMoving || var9 == Block.lavaStill || var9 == Block.fire || var9.blockMaterial.isGroundCover()))
@ -590,7 +590,7 @@
{ {
var9 = null; var9 = null;
} }
@@ -3912,7 +4025,7 @@ @@ -3863,7 +3976,7 @@
*/ */
public long getSeed() public long getSeed()
{ {
@ -599,7 +599,7 @@
} }
public long getTotalWorldTime() public long getTotalWorldTime()
@@ -3922,7 +4035,7 @@ @@ -3873,7 +3986,7 @@
public long getWorldTime() public long getWorldTime()
{ {
@ -608,7 +608,7 @@
} }
/** /**
@@ -3930,7 +4043,7 @@ @@ -3881,7 +3994,7 @@
*/ */
public void setWorldTime(long par1) public void setWorldTime(long par1)
{ {
@ -617,7 +617,7 @@
} }
/** /**
@@ -3938,13 +4051,13 @@ @@ -3889,13 +4002,13 @@
*/ */
public ChunkCoordinates getSpawnPoint() public ChunkCoordinates getSpawnPoint()
{ {
@ -633,7 +633,7 @@
} }
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
@@ -3968,7 +4081,10 @@ @@ -3919,7 +4032,10 @@
if (!this.loadedEntityList.contains(par1Entity)) if (!this.loadedEntityList.contains(par1Entity))
{ {
@ -645,7 +645,7 @@
} }
} }
@@ -3976,6 +4092,11 @@ @@ -3927,6 +4043,11 @@
* Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here. * Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here.
*/ */
public boolean canMineBlock(EntityPlayer par1EntityPlayer, int par2, int par3, int par4) public boolean canMineBlock(EntityPlayer par1EntityPlayer, int par2, int par3, int par4)
@ -657,7 +657,7 @@
{ {
return true; return true;
} }
@@ -4096,8 +4217,7 @@ @@ -4047,8 +4168,7 @@
*/ */
public boolean isBlockHighHumidity(int par1, int par2, int par3) public boolean isBlockHighHumidity(int par1, int par2, int par3)
{ {
@ -667,7 +667,7 @@
} }
/** /**
@@ -4159,7 +4279,7 @@ @@ -4110,7 +4230,7 @@
*/ */
public int getHeight() public int getHeight()
{ {
@ -676,7 +676,7 @@
} }
/** /**
@@ -4167,7 +4287,7 @@ @@ -4118,7 +4238,7 @@
*/ */
public int getActualHeight() public int getActualHeight()
{ {
@ -685,7 +685,7 @@
} }
public IUpdatePlayerListBox func_82735_a(EntityMinecart par1EntityMinecart) public IUpdatePlayerListBox func_82735_a(EntityMinecart par1EntityMinecart)
@@ -4210,7 +4330,7 @@ @@ -4161,7 +4281,7 @@
*/ */
public double getHorizon() public double getHorizon()
{ {
@ -694,7 +694,7 @@
} }
/** /**
@@ -4270,4 +4390,75 @@ @@ -4219,4 +4339,75 @@
return this.theCalendar; return this.theCalendar;
} }

View file

@ -135,20 +135,20 @@
if (this.checkChunksExist(var4.xCoord - var5, var4.yCoord - var5, var4.zCoord - var5, var4.xCoord + var5, var4.yCoord + var5, var4.zCoord + var5)) if (this.checkChunksExist(var4.xCoord - var5, var4.yCoord - var5, var4.zCoord - var5, var4.xCoord + var5, var4.yCoord + var5, var4.zCoord + var5))
{ {
@@ -601,15 +626,27 @@ @@ -602,16 +627,28 @@
public List getAllTileEntityInBox(int par1, int par2, int par3, int par4, int par5, int par6)
{ {
ArrayList var7 = new ArrayList(); ArrayList var7 = new ArrayList();
- Iterator var8 = this.loadedTileEntityList.iterator();
- - for (int var8 = 0; var8 < this.loadedTileEntityList.size(); ++var8)
- while (var8.hasNext())
- { - {
- TileEntity var9 = (TileEntity)var8.next(); - TileEntity var9 = (TileEntity)this.loadedTileEntityList.get(var8);
- -
- if (var9.xCoord >= par1 && var9.yCoord >= par2 && var9.zCoord >= par3 && var9.xCoord < par4 && var9.yCoord < par5 && var9.zCoord < par6) - if (var9.xCoord >= par1 && var9.yCoord >= par2 && var9.zCoord >= par3 && var9.xCoord < par4 && var9.yCoord < par5 && var9.zCoord < par6)
- { - {
- var7.add(var9); - var7.add(var9);
+ - }
- }
-
+ for(int x = (par1 >> 4); x <= (par4 >> 4); x++) + for(int x = (par1 >> 4); x <= (par4 >> 4); x++)
+ { + {
+ for(int z = (par3 >> 4); z <= (par6 >> 4); z++) + for(int z = (par3 >> 4); z <= (par6 >> 4); z++)
@ -169,10 +169,12 @@
+ } + }
+ } + }
+ } + }
} + }
} + }
return var7;
}
@@ -620,6 +657,11 @@ @@ -619,6 +656,11 @@
* Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here. * Called when checking if a certain block can be mined or not. The 'spawn safe zone' check is located here.
*/ */
public boolean canMineBlock(EntityPlayer par1EntityPlayer, int par2, int par3, int par4) public boolean canMineBlock(EntityPlayer par1EntityPlayer, int par2, int par3, int par4)
@ -184,7 +186,7 @@
{ {
int var5 = MathHelper.abs_int(par2 - this.worldInfo.getSpawnX()); int var5 = MathHelper.abs_int(par2 - this.worldInfo.getSpawnX());
int var6 = MathHelper.abs_int(par4 - this.worldInfo.getSpawnZ()); int var6 = MathHelper.abs_int(par4 - this.worldInfo.getSpawnZ());
@@ -629,7 +671,7 @@ @@ -628,7 +670,7 @@
var6 = var5; var6 = var5;
} }
@ -193,7 +195,7 @@
} }
protected void initialize(WorldSettings par1WorldSettings) protected void initialize(WorldSettings par1WorldSettings)
@@ -712,7 +754,7 @@ @@ -711,7 +753,7 @@
*/ */
protected void createBonusChest() protected void createBonusChest()
{ {
@ -202,7 +204,7 @@
for (int var2 = 0; var2 < 10; ++var2) for (int var2 = 0; var2 < 10; ++var2)
{ {
@@ -755,6 +797,7 @@ @@ -754,6 +796,7 @@
} }
this.chunkProvider.saveChunks(par1, par2IProgressUpdate); this.chunkProvider.saveChunks(par1, par2IProgressUpdate);
@ -210,7 +212,7 @@
} }
} }
@@ -766,6 +809,7 @@ @@ -765,6 +808,7 @@
this.checkSessionLock(); this.checkSessionLock();
this.saveHandler.saveWorldInfoWithPlayer(this.worldInfo, this.mcServer.getConfigurationManager().getTagsFromLastWrite()); this.saveHandler.saveWorldInfoWithPlayer(this.worldInfo, this.mcServer.getConfigurationManager().getTagsFromLastWrite());
this.mapStorage.saveAllData(); this.mapStorage.saveAllData();
@ -218,7 +220,7 @@
} }
/** /**
@@ -996,4 +1040,9 @@ @@ -987,4 +1031,9 @@
{ {
return this.field_85177_Q; return this.field_85177_Q;
} }

View file

@ -1,6 +1,6 @@
--- ../src_base/common/net/minecraft/src/WorldType.java --- ../src_base/common/net/minecraft/src/WorldType.java
+++ ../src_work/common/net/minecraft/src/WorldType.java +++ ../src_work/common/net/minecraft/src/WorldType.java
@@ -218,8 +218,19 @@ @@ -213,8 +213,19 @@
{ {
return this == FLAT ? random.nextInt(4) != 1 : false; return this == FLAT ? random.nextInt(4) != 1 : false;
} }

View file

@ -1,6 +1,6 @@
--- ../src_base/minecraft/net/minecraft/client/Minecraft.java --- ../src_base/minecraft/net/minecraft/client/Minecraft.java
+++ ../src_work/minecraft/net/minecraft/client/Minecraft.java +++ ../src_work/minecraft/net/minecraft/client/Minecraft.java
@@ -121,6 +121,9 @@ @@ -124,6 +124,9 @@
import net.minecraft.src.WorldInfo; import net.minecraft.src.WorldInfo;
import net.minecraft.src.WorldRenderer; import net.minecraft.src.WorldRenderer;
import net.minecraft.src.WorldSettings; import net.minecraft.src.WorldSettings;
@ -10,7 +10,7 @@
import org.lwjgl.LWJGLException; import org.lwjgl.LWJGLException;
import org.lwjgl.Sys; import org.lwjgl.Sys;
@@ -1253,7 +1256,7 @@ @@ -1260,7 +1263,7 @@
if (this.thePlayer.canCurrentToolHarvestBlock(var3, var4, var5)) if (this.thePlayer.canCurrentToolHarvestBlock(var3, var4, var5))
{ {
@ -19,7 +19,7 @@
this.thePlayer.swingItem(); this.thePlayer.swingItem();
} }
} }
@@ -1319,7 +1322,8 @@ @@ -1326,7 +1329,8 @@
{ {
int var8 = var3 != null ? var3.stackSize : 0; int var8 = var3 != null ? var3.stackSize : 0;
@ -29,7 +29,7 @@
{ {
var2 = false; var2 = false;
this.thePlayer.swingItem(); this.thePlayer.swingItem();
@@ -1345,7 +1349,8 @@ @@ -1352,7 +1356,8 @@
{ {
ItemStack var9 = this.thePlayer.inventory.getCurrentItem(); ItemStack var9 = this.thePlayer.inventory.getCurrentItem();
@ -39,7 +39,7 @@
{ {
this.entityRenderer.itemRenderer.func_78445_c(); this.entityRenderer.itemRenderer.func_78445_c();
} }
@@ -1985,6 +1990,18 @@ @@ -2026,6 +2031,18 @@
if (this.theIntegratedServer != null) if (this.theIntegratedServer != null)
{ {
this.theIntegratedServer.initiateShutdown(); this.theIntegratedServer.initiateShutdown();
@ -58,7 +58,7 @@
} }
this.theIntegratedServer = null; this.theIntegratedServer = null;
@@ -2294,95 +2311,12 @@ @@ -2335,95 +2352,12 @@
if (this.objectMouseOver != null) if (this.objectMouseOver != null)
{ {
boolean var1 = this.thePlayer.capabilities.isCreativeMode; boolean var1 = this.thePlayer.capabilities.isCreativeMode;

View file

@ -1,26 +1,23 @@
--- ../src_base/minecraft/net/minecraft/src/EffectRenderer.java --- ../src_base/minecraft/net/minecraft/src/EffectRenderer.java
+++ ../src_work/minecraft/net/minecraft/src/EffectRenderer.java +++ ../src_work/minecraft/net/minecraft/src/EffectRenderer.java
@@ -3,9 +3,19 @@ @@ -5,8 +5,16 @@
import cpw.mods.fml.common.Side;
import cpw.mods.fml.common.asm.SideOnly;
import java.util.ArrayList; import java.util.ArrayList;
+import java.util.Hashtable; import java.util.Iterator;
+import java.util.Iterator;
import java.util.List; import java.util.List;
+import java.util.Map.Entry; +import java.util.Map.Entry;
import java.util.Random; import java.util.Random;
+ +
+import net.minecraftforge.client.ForgeHooksClient; +import net.minecraftforge.client.ForgeHooksClient;
+import net.minecraftforge.common.ForgeHooks; +import net.minecraftforge.common.ForgeHooks;
+import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Multimap;
+ +
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
+ +
+import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Multimap;
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public class EffectRenderer public class EffectRenderer
@@ -18,6 +28,8 @@ @@ -20,6 +28,8 @@
/** RNG. */ /** RNG. */
private Random rand = new Random(); private Random rand = new Random();
@ -29,23 +26,27 @@
public EffectRenderer(World par1World, RenderEngine par2RenderEngine) public EffectRenderer(World par1World, RenderEngine par2RenderEngine)
{ {
if (par1World != null) if (par1World != null)
@@ -52,12 +64,27 @@ @@ -63,9 +73,13 @@
for (int var2 = 0; var2 < this.fxLayers[var1].size(); ++var2) for (int var3 = 0; var3 < this.fxLayers[var1].size(); ++var3)
{
EntityFX var3 = (EntityFX)this.fxLayers[var1].get(var2);
- var3.onUpdate();
-
- if (var3.isDead)
+
+ if (var3 != null)
+ {
+ var3.onUpdate();
+ }
+
+ if (var3 == null || var3.isDead)
{ {
this.fxLayers[var1].remove(var2--); var2 = (EntityFX)this.fxLayers[var1].get(var3);
} - var2.onUpdate();
-
- if (var2.isDead)
+
+ if (var2 != null)
+ {
+ var2.onUpdate();
+ }
+
+ if (var2 == null || var2.isDead)
{
this.fxLayers[var1].remove(var3--);
}
@@ -78,6 +92,17 @@
var5.addCrashSectionCallable("Last ticked particle", new CallableLastTickedParticle(this, var2));
var5.addCrashSection("Texture index", Integer.valueOf(var1));
throw new ReportedException(var4);
+ } + }
+ } + }
+ +
@ -59,8 +60,8 @@
+ itr.remove(); + itr.remove();
} }
} }
}
@@ -107,6 +134,7 @@ @@ -136,6 +161,7 @@
for (int var11 = 0; var11 < this.fxLayers[var8].size(); ++var11) for (int var11 = 0; var11 < this.fxLayers[var8].size(); ++var11)
{ {
EntityFX var12 = (EntityFX)this.fxLayers[var8].get(var11); EntityFX var12 = (EntityFX)this.fxLayers[var8].get(var11);
@ -68,7 +69,7 @@
var10.setBrightness(var12.getBrightnessForRender(par2)); var10.setBrightness(var12.getBrightnessForRender(par2));
var12.renderParticle(var10, par2, var3, var7, var4, var5, var6); var12.renderParticle(var10, par2, var3, var7, var4, var5, var6);
} }
@@ -114,6 +142,27 @@ @@ -143,6 +169,27 @@
var10.draw(); var10.draw();
GL11.glDisable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_BLEND);
} }
@ -96,7 +97,7 @@
} }
} }
@@ -133,6 +182,7 @@ @@ -162,6 +209,7 @@
for (int var11 = 0; var11 < this.fxLayers[var9].size(); ++var11) for (int var11 = 0; var11 < this.fxLayers[var9].size(); ++var11)
{ {
EntityFX var12 = (EntityFX)this.fxLayers[var9].get(var11); EntityFX var12 = (EntityFX)this.fxLayers[var9].get(var11);
@ -104,7 +105,7 @@
var10.setBrightness(var12.getBrightnessForRender(par2)); var10.setBrightness(var12.getBrightnessForRender(par2));
var12.renderParticle(var10, par2, var4, var8, var5, var6, var7); var12.renderParticle(var10, par2, var4, var8, var5, var6, var7);
} }
@@ -147,13 +197,15 @@ @@ -176,13 +224,15 @@
{ {
this.fxLayers[var2].clear(); this.fxLayers[var2].clear();
} }
@ -123,7 +124,7 @@
byte var7 = 4; byte var7 = 4;
for (int var8 = 0; var8 < var7; ++var8) for (int var8 = 0; var8 < var7; ++var8)
@@ -166,7 +218,7 @@ @@ -195,7 +245,7 @@
double var13 = (double)par2 + ((double)var9 + 0.5D) / (double)var7; double var13 = (double)par2 + ((double)var9 + 0.5D) / (double)var7;
double var15 = (double)par3 + ((double)var10 + 0.5D) / (double)var7; double var15 = (double)par3 + ((double)var10 + 0.5D) / (double)var7;
int var17 = this.rand.nextInt(6); int var17 = this.rand.nextInt(6);
@ -132,7 +133,7 @@
} }
} }
} }
@@ -218,12 +270,60 @@ @@ -247,12 +297,60 @@
var8 = (double)par1 + var6.getBlockBoundsMaxX() + (double)var7; var8 = (double)par1 + var6.getBlockBoundsMaxX() + (double)var7;
} }

View file

@ -1,6 +1,6 @@
--- ../src_base/minecraft/net/minecraft/src/EntityRenderer.java --- ../src_base/minecraft/net/minecraft/src/EntityRenderer.java
+++ ../src_work/minecraft/net/minecraft/src/EntityRenderer.java +++ ../src_work/minecraft/net/minecraft/src/EntityRenderer.java
@@ -8,6 +8,11 @@ @@ -7,6 +7,11 @@
import java.util.List; import java.util.List;
import java.util.Random; import java.util.Random;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
@ -12,7 +12,7 @@
import org.lwjgl.input.Mouse; import org.lwjgl.input.Mouse;
import org.lwjgl.opengl.Display; import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
@@ -311,8 +316,15 @@ @@ -309,8 +314,15 @@
*/ */
private void updateFovModifierHand() private void updateFovModifierHand()
{ {
@ -30,7 +30,7 @@
this.fovModifierHandPrev = this.fovModifierHand; this.fovModifierHandPrev = this.fovModifierHand;
this.fovModifierHand += (this.fovMultiplierTemp - this.fovModifierHand) * 0.5F; this.fovModifierHand += (this.fovMultiplierTemp - this.fovModifierHand) * 0.5F;
} }
@@ -328,7 +340,7 @@ @@ -326,7 +338,7 @@
} }
else else
{ {
@ -39,7 +39,7 @@
float var4 = 70.0F; float var4 = 70.0F;
if (par2) if (par2)
@@ -415,15 +427,7 @@ @@ -413,15 +425,7 @@
if (!this.mc.gameSettings.debugCamEnable) if (!this.mc.gameSettings.debugCamEnable)
{ {
@ -56,7 +56,7 @@
GL11.glRotatef(var2.prevRotationYaw + (var2.rotationYaw - var2.prevRotationYaw) * par1 + 180.0F, 0.0F, -1.0F, 0.0F); GL11.glRotatef(var2.prevRotationYaw + (var2.rotationYaw - var2.prevRotationYaw) * par1 + 180.0F, 0.0F, -1.0F, 0.0F);
GL11.glRotatef(var2.prevRotationPitch + (var2.rotationPitch - var2.prevRotationPitch) * par1, -1.0F, 0.0F, 0.0F); GL11.glRotatef(var2.prevRotationPitch + (var2.rotationPitch - var2.prevRotationPitch) * par1, -1.0F, 0.0F, 0.0F);
} }
@@ -1101,8 +1105,11 @@ @@ -1112,8 +1116,11 @@
var17 = (EntityPlayer)var4; var17 = (EntityPlayer)var4;
GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_ALPHA_TEST);
this.mc.mcProfiler.endStartSection("outline"); this.mc.mcProfiler.endStartSection("outline");
@ -70,7 +70,7 @@
GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL11.GL_ALPHA_TEST);
} }
} }
@@ -1166,15 +1173,18 @@ @@ -1177,15 +1184,18 @@
var17 = (EntityPlayer)var4; var17 = (EntityPlayer)var4;
GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_ALPHA_TEST);
this.mc.mcProfiler.endStartSection("outline"); this.mc.mcProfiler.endStartSection("outline");
@ -92,7 +92,7 @@
GL11.glDisable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_BLEND);
this.mc.mcProfiler.endStartSection("weather"); this.mc.mcProfiler.endStartSection("weather");
this.renderRainSnow(par1); this.renderRainSnow(par1);
@@ -1184,6 +1194,9 @@ @@ -1195,6 +1205,9 @@
{ {
this.func_82829_a(var5, par1); this.func_82829_a(var5, par1);
} }

View file

@ -8,11 +8,11 @@
public class ModelBox public class ModelBox
{ {
/** /**
@@ -99,6 +98,7 @@ @@ -95,6 +94,7 @@
/** /**
* Draw the six sided box defined by this ModelBox * Draw the six sided box defined by this ModelBox
*/ */
+ @SideOnly(Side.CLIENT) + @SideOnly(Side.CLIENT)
public void render(Tessellator par1Tessellator, float par2) public void render(Tessellator par1Tessellator, float par2)
{ {
TexturedQuad[] var3 = this.quadList; for (int var3 = 0; var3 < this.quadList.length; ++var3)

View file

@ -1,6 +1,6 @@
--- ../src_base/minecraft/net/minecraft/src/ModelRenderer.java --- ../src_base/minecraft/net/minecraft/src/ModelRenderer.java
+++ ../src_work/minecraft/net/minecraft/src/ModelRenderer.java +++ ../src_work/minecraft/net/minecraft/src/ModelRenderer.java
@@ -7,7 +7,6 @@ @@ -6,7 +6,6 @@
import java.util.List; import java.util.List;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
@ -8,7 +8,7 @@
public class ModelRenderer public class ModelRenderer
{ {
/** The size of the texture file's width in pixels. */ /** The size of the texture file's width in pixels. */
@@ -120,7 +119,8 @@ @@ -119,7 +118,8 @@
this.rotationPointY = par2; this.rotationPointY = par2;
this.rotationPointZ = par3; this.rotationPointZ = par3;
} }
@ -18,7 +18,7 @@
public void render(float par1) public void render(float par1)
{ {
if (!this.isHidden) if (!this.isHidden)
@@ -213,6 +213,7 @@ @@ -202,6 +202,7 @@
} }
} }
@ -26,7 +26,7 @@
public void renderWithRotation(float par1) public void renderWithRotation(float par1)
{ {
if (!this.isHidden) if (!this.isHidden)
@@ -251,6 +252,7 @@ @@ -240,6 +241,7 @@
/** /**
* Allows the changing of Angles after a box has been rendered * Allows the changing of Angles after a box has been rendered
*/ */
@ -34,7 +34,7 @@
public void postRender(float par1) public void postRender(float par1)
{ {
if (!this.isHidden) if (!this.isHidden)
@@ -295,6 +297,7 @@ @@ -284,6 +286,7 @@
/** /**
* Compiles a GL display list for this model * Compiles a GL display list for this model
*/ */

View file

@ -12,7 +12,7 @@
import org.lwjgl.input.Keyboard; import org.lwjgl.input.Keyboard;
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
@@ -614,7 +619,7 @@ @@ -611,7 +616,7 @@
public void handleKickDisconnect(Packet255KickDisconnect par1Packet255KickDisconnect) public void handleKickDisconnect(Packet255KickDisconnect par1Packet255KickDisconnect)
{ {
@ -21,7 +21,7 @@
this.disconnected = true; this.disconnected = true;
this.mc.loadWorld((WorldClient)null); this.mc.loadWorld((WorldClient)null);
this.mc.displayGuiScreen(new GuiDisconnected("disconnect.disconnected", "disconnect.genericReason", new Object[] {par1Packet255KickDisconnect.reason})); this.mc.displayGuiScreen(new GuiDisconnected("disconnect.disconnected", "disconnect.genericReason", new Object[] {par1Packet255KickDisconnect.reason}));
@@ -680,7 +685,11 @@ @@ -677,7 +682,11 @@
public void handleChat(Packet3Chat par1Packet3Chat) public void handleChat(Packet3Chat par1Packet3Chat)
{ {
par1Packet3Chat = FMLNetworkHandler.handleChatMessage(this, par1Packet3Chat); par1Packet3Chat = FMLNetworkHandler.handleChatMessage(this, par1Packet3Chat);
@ -34,7 +34,7 @@
} }
public void handleAnimation(Packet18Animation par1Packet18Animation) public void handleAnimation(Packet18Animation par1Packet18Animation)
@@ -1065,6 +1074,10 @@ @@ -1059,6 +1068,10 @@
{ {
var2.readFromNBT(par1Packet132TileEntityData.customParam1); var2.readFromNBT(par1Packet132TileEntityData.customParam1);
} }

View file

@ -11,7 +11,7 @@
import org.lwjgl.opengl.ARBOcclusionQuery; import org.lwjgl.opengl.ARBOcclusionQuery;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
@@ -895,6 +898,12 @@ @@ -882,6 +885,12 @@
*/ */
public void renderSky(float par1) public void renderSky(float par1)
{ {
@ -24,7 +24,7 @@
if (this.mc.theWorld.provider.dimensionId == 1) if (this.mc.theWorld.provider.dimensionId == 1)
{ {
GL11.glDisable(GL11.GL_FOG); GL11.glDisable(GL11.GL_FOG);
@@ -1560,6 +1569,11 @@ @@ -1547,6 +1556,11 @@
public void drawBlockDamageTexture(Tessellator par1Tessellator, EntityPlayer par2EntityPlayer, float par3) public void drawBlockDamageTexture(Tessellator par1Tessellator, EntityPlayer par2EntityPlayer, float par3)
{ {
@ -36,7 +36,7 @@
double var4 = par2EntityPlayer.lastTickPosX + (par2EntityPlayer.posX - par2EntityPlayer.lastTickPosX) * (double)par3; double var4 = par2EntityPlayer.lastTickPosX + (par2EntityPlayer.posX - par2EntityPlayer.lastTickPosX) * (double)par3;
double var6 = par2EntityPlayer.lastTickPosY + (par2EntityPlayer.posY - par2EntityPlayer.lastTickPosY) * (double)par3; double var6 = par2EntityPlayer.lastTickPosY + (par2EntityPlayer.posY - par2EntityPlayer.lastTickPosY) * (double)par3;
double var8 = par2EntityPlayer.lastTickPosZ + (par2EntityPlayer.posZ - par2EntityPlayer.lastTickPosZ) * (double)par3; double var8 = par2EntityPlayer.lastTickPosZ + (par2EntityPlayer.posZ - par2EntityPlayer.lastTickPosZ) * (double)par3;
@@ -1828,6 +1842,7 @@ @@ -1817,6 +1831,7 @@
double var17 = this.mc.renderViewEntity.posY - par4; double var17 = this.mc.renderViewEntity.posY - par4;
double var19 = this.mc.renderViewEntity.posZ - par6; double var19 = this.mc.renderViewEntity.posZ - par6;
EntityFX var21 = null; EntityFX var21 = null;
@ -44,7 +44,7 @@
if (par1Str.equals("hugeexplosion")) if (par1Str.equals("hugeexplosion"))
{ {
@@ -1960,6 +1975,7 @@ @@ -1949,6 +1964,7 @@
else if (par1Str.equals("snowballpoof")) else if (par1Str.equals("snowballpoof"))
{ {
var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.snowball); var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.snowball);
@ -52,7 +52,7 @@
} }
else if (par1Str.equals("dripWater")) else if (par1Str.equals("dripWater"))
{ {
@@ -1976,6 +1992,7 @@ @@ -1965,6 +1981,7 @@
else if (par1Str.equals("slime")) else if (par1Str.equals("slime"))
{ {
var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.slimeBall); var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.slimeBall);
@ -60,7 +60,7 @@
} }
else if (par1Str.equals("heart")) else if (par1Str.equals("heart"))
{ {
@@ -1997,6 +2014,7 @@ @@ -1986,6 +2003,7 @@
{ {
int var27 = Integer.parseInt(par1Str.substring(par1Str.indexOf("_") + 1)); int var27 = Integer.parseInt(par1Str.substring(par1Str.indexOf("_") + 1));
var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, par8, par10, par12, Item.itemsList[var27]); var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, par8, par10, par12, Item.itemsList[var27]);
@ -68,16 +68,16 @@
} }
else if (par1Str.startsWith("tilecrack_")) else if (par1Str.startsWith("tilecrack_"))
{ {
@@ -2004,11 +2022,13 @@ @@ -1993,11 +2011,12 @@
int var25 = Integer.parseInt(var28[1]); int var25 = Integer.parseInt(var28[1]);
int var26 = Integer.parseInt(var28[2]); int var26 = Integer.parseInt(var28[2]);
var21 = new EntityDiggingFX(this.theWorld, par2, par4, par6, par8, par10, par12, Block.blocksList[var25], 0, var26); var21 = (new EntityDiggingFX(this.theWorld, par2, par4, par6, par8, par10, par12, Block.blocksList[var25], 0, var26)).func_90019_g(var26);
+ effectObject = Block.blocksList[var25]; + effectObject = Block.blocksList[var25];
} }
if (var21 != null) if (var21 != null)
{ {
this.mc.effectRenderer.addEffect((EntityFX)var21); - this.mc.effectRenderer.addEffect((EntityFX)var21);
+ this.mc.effectRenderer.addEffect((EntityFX)var21, effectObject); + this.mc.effectRenderer.addEffect((EntityFX)var21, effectObject);
} }

View file

@ -9,79 +9,79 @@
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL12; import org.lwjgl.opengl.GL12;
@@ -55,13 +57,16 @@ @@ -58,13 +60,16 @@
GL11.glTranslatef((float)par2, (float)par4 + var11, (float)par6); GL11.glTranslatef((float)par2, (float)par4 + var11, (float)par6);
GL11.glEnable(GL12.GL_RESCALE_NORMAL); GL11.glEnable(GL12.GL_RESCALE_NORMAL);
- Block var14 = Block.blocksList[var10.itemID]; - Block var14 = Block.blocksList[var10.itemID];
int var16; int var16;
float var19; float var19;
float var20; float var20;
float var24; float var24;
- if (var14 != null && RenderBlocks.renderItemIn3d(var14.getRenderType())) - if (var14 != null && RenderBlocks.renderItemIn3d(var14.getRenderType()))
+ if (ForgeHooksClient.renderEntityItem(par1EntityItem, var10, var11, var12, random, renderManager.renderEngine, renderBlocks)) + if (ForgeHooksClient.renderEntityItem(par1EntityItem, var10, var11, var12, random, renderManager.renderEngine, renderBlocks))
+ { + {
+ ; + ;
+ } + }
+ else if (var10.getItem() instanceof ItemBlock && RenderBlocks.renderItemIn3d(Block.blocksList[var10.itemID].getRenderType())) + else if (var10.getItem() instanceof ItemBlock && RenderBlocks.renderItemIn3d(Block.blocksList[var10.itemID].getRenderType()))
{
GL11.glRotatef(var12, 0.0F, 1.0F, 0.0F);
@@ -72,9 +77,9 @@
GL11.glRotatef(-90.0F, 0.0F, 1.0F, 0.0F);
}
- this.loadTexture("/terrain.png");
+ this.loadTexture(Block.blocksList[var10.itemID].getTextureFile());
float var22 = 0.25F;
- var16 = var14.getRenderType();
+ var16 = Block.blocksList[var10.itemID].getRenderType();
if (var16 == 1 || var16 == 19 || var16 == 12 || var16 == 2)
{ {
@@ -96,7 +101,7 @@ GL11.glRotatef(var12, 0.0F, 1.0F, 0.0F);
@@ -75,9 +80,9 @@
GL11.glRotatef(-90.0F, 0.0F, 1.0F, 0.0F);
} }
var24 = 1.0F; - this.loadTexture("/terrain.png");
- this.renderBlocks.renderBlockAsItem(var14, var10.getItemDamage(), var24); + this.loadTexture(Block.blocksList[var10.itemID].getTextureFile());
+ this.renderBlocks.renderBlockAsItem(Block.blocksList[var10.itemID], var10.getItemDamage(), var24); float var22 = 0.25F;
GL11.glPopMatrix(); - var16 = var14.getRenderType();
} + var16 = Block.blocksList[var10.itemID].getRenderType();
}
@@ -118,10 +123,11 @@
GL11.glScalef(0.5F, 0.5F, 0.5F);
}
- this.loadTexture("/gui/items.png"); if (var16 == 1 || var16 == 19 || var16 == 12 || var16 == 2)
-
- for (var15 = 0; var15 <= 1; ++var15)
- {
+ this.loadTexture(Item.itemsList[var10.itemID].getTextureFile());
+
+ for (var15 = 0; var15 < var10.getItem().getRenderPasses(var10.getItemDamage()); ++var15)
+ {
+ this.random.setSeed(187L); //Fixes Vanilla bug where layers would not render aligns properly.
var16 = var10.getItem().getIconFromDamageForRenderPass(var10.getItemDamage(), var15);
var17 = 1.0F;
@@ -152,14 +158,7 @@
var15 = var10.getIconIndex();
- if (var14 != null)
- {
- this.loadTexture("/terrain.png");
- }
- else
- {
- this.loadTexture("/gui/items.png");
- }
+ this.loadTexture(var10.getItem().getTextureFile());
if (this.field_77024_a)
{ {
@@ -227,10 +226,10 @@ @@ -99,7 +104,7 @@
}
var24 = 1.0F;
- this.renderBlocks.renderBlockAsItem(var14, var10.getItemDamage(), var24);
+ this.renderBlocks.renderBlockAsItem(Block.blocksList[var10.itemID], var10.getItemDamage(), var24);
GL11.glPopMatrix();
}
}
@@ -121,10 +126,11 @@
GL11.glScalef(0.5F, 0.5F, 0.5F);
}
- this.loadTexture("/gui/items.png");
-
- for (var15 = 0; var15 <= 1; ++var15)
- {
+ this.loadTexture(Item.itemsList[var10.itemID].getTextureFile());
+
+ for (var15 = 0; var15 <= var10.getItem().getRenderPasses(var10.getItemDamage()); ++var15)
+ {
+ this.random.setSeed(187L); //Fixes Vanilla bug where layers would not render aligns properly.
var16 = var10.getItem().getIconFromDamageForRenderPass(var10.getItemDamage(), var15);
var17 = 1.0F;
@@ -155,14 +161,7 @@
var15 = var10.getIconIndex();
- if (var14 != null)
- {
- this.loadTexture("/terrain.png");
- }
- else
- {
- this.loadTexture("/gui/items.png");
- }
+ var10.getItem().getTextureFile();
if (this.field_77024_a)
{
@@ -231,10 +230,10 @@
float var13; float var13;
float var16; float var16;
@ -95,7 +95,7 @@
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslatef((float)(par4 - 2), (float)(par5 + 3), -3.0F + this.zLevel); GL11.glTranslatef((float)(par4 - 2), (float)(par5 + 3), -3.0F + this.zLevel);
GL11.glScalef(10.0F, 10.0F, 10.0F); GL11.glScalef(10.0F, 10.0F, 10.0F);
@@ -261,9 +260,9 @@ @@ -265,9 +264,9 @@
if (Item.itemsList[var6].requiresMultipleRenderPasses()) if (Item.itemsList[var6].requiresMultipleRenderPasses())
{ {
GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_LIGHTING);
@ -108,7 +108,7 @@
{ {
var10 = Item.itemsList[var6].getIconFromDamageForRenderPass(var7, var9); var10 = Item.itemsList[var6].getIconFromDamageForRenderPass(var7, var9);
int var11 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, var9); int var11 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, var9);
@@ -285,14 +284,7 @@ @@ -289,14 +288,7 @@
{ {
GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_LIGHTING);
@ -124,7 +124,7 @@
var9 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, 0); var9 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, 0);
float var17 = (float)(var9 >> 16 & 255) / 255.0F; float var17 = (float)(var9 >> 16 & 255) / 255.0F;
@@ -319,7 +311,10 @@ @@ -323,7 +315,10 @@
{ {
if (par3ItemStack != null) if (par3ItemStack != null)
{ {

View file

@ -22,7 +22,7 @@
NodeList var5 = var4.getElementsByTagName("Contents"); NodeList var5 = var4.getElementsByTagName("Contents");
for (int var6 = 0; var6 < 2; ++var6) for (int var6 = 0; var6 < 2; ++var6)
@@ -172,7 +178,11 @@ @@ -168,7 +174,11 @@
private void downloadResource(URL par1URL, File par2File, long par3) throws IOException private void downloadResource(URL par1URL, File par2File, long par3) throws IOException
{ {
byte[] var5 = new byte[4096]; byte[] var5 = new byte[4096];