diff --git a/client/net/minecraftforge/client/ForgeHooksClient.java b/client/net/minecraftforge/client/ForgeHooksClient.java index 9cf3cac45f..ce76cef490 100644 --- a/client/net/minecraftforge/client/ForgeHooksClient.java +++ b/client/net/minecraftforge/client/ForgeHooksClient.java @@ -298,7 +298,7 @@ public class ForgeHooksClient if(inColor) { - int color = Item.itemsList[item.itemID].func_82790_a(item, 0); + int color = Item.itemsList[item.itemID].getColorFromItemStack(item, 0); float r = (float)(color >> 16 & 0xff) / 255F; float g = (float)(color >> 8 & 0xff) / 255F; float b = (float)(color & 0xff) / 255F; @@ -319,7 +319,7 @@ public class ForgeHooksClient if (inColor) { - int color = Item.itemsList[item.itemID].func_82790_a(item, 0); + int color = Item.itemsList[item.itemID].getColorFromItemStack(item, 0); float r = (float)(color >> 16 & 255) / 255.0F; float g = (float)(color >> 8 & 255) / 255.0F; float b = (float)(color & 255) / 255.0F; diff --git a/common/net/minecraftforge/common/ChestGenHooks.java b/common/net/minecraftforge/common/ChestGenHooks.java index 7acbba93b0..622e963b82 100644 --- a/common/net/minecraftforge/common/ChestGenHooks.java +++ b/common/net/minecraftforge/common/ChestGenHooks.java @@ -36,7 +36,7 @@ public class ChestGenHooks addInfo(PYRAMID_JUNGLE_DISPENSER, ComponentScatteredFeatureJunglePyramid.junglePyramidsDispenserContents, 2, 2); addInfo(STRONGHOLD_CORRIDOR, ComponentStrongholdChestCorridor.strongholdChestContents, 2, 4); addInfo(STRONGHOLD_LIBRARY, ComponentStrongholdLibrary.strongholdLibraryChestContents, 1, 5); - addInfo(STRONGHOLD_CROSSING, ComponentStrongholdRoomCrossing.field_75014_c, 1, 5); + addInfo(STRONGHOLD_CROSSING, ComponentStrongholdRoomCrossing.strongholdRoomCrossingChestContents, 1, 5); addInfo(VILLAGE_BLACKSMITH, ComponentVillageHouse2.villageBlacksmithChestContents, 3, 9); addInfo(BONUS_CHEST, WorldServer.bonusChestContent, 10, 10); } diff --git a/common/net/minecraftforge/common/ForgeHooks.java b/common/net/minecraftforge/common/ForgeHooks.java index 20c78ea4c9..b0c4a7488d 100644 --- a/common/net/minecraftforge/common/ForgeHooks.java +++ b/common/net/minecraftforge/common/ForgeHooks.java @@ -272,7 +272,7 @@ public class ForgeHooks for (int x = 0; x < 9; x++) { ItemStack stack = player.inventory.getStackInSlot(x); - if (stack != null && stack.isItemEqual(result) && ItemStack.func_77970_a(stack, result)) + if (stack != null && stack.isItemEqual(result) && ItemStack.areItemStackTagsEqual(stack, result)) { player.inventory.currentItem = x; return true; diff --git a/fml-src-4.2.13.429.zip b/fml-src-4.2.16.431.zip similarity index 76% rename from fml-src-4.2.13.429.zip rename to fml-src-4.2.16.431.zip index 61ebc7e819..79f99ce81a 100644 Binary files a/fml-src-4.2.13.429.zip and b/fml-src-4.2.16.431.zip differ diff --git a/patches/common/net/minecraft/server/MinecraftServer.java.patch b/patches/common/net/minecraft/server/MinecraftServer.java.patch index d839ea5a82..b7ddad5bc8 100644 --- a/patches/common/net/minecraft/server/MinecraftServer.java.patch +++ b/patches/common/net/minecraft/server/MinecraftServer.java.patch @@ -18,7 +18,7 @@ public abstract class MinecraftServer implements Runnable, IPlayerUsage, ICommandSender { -@@ -150,7 +154,8 @@ +@@ -152,7 +156,8 @@ public final long[] tickTimeArray = new long[100]; /** Stats are [dimension][tick%100] system.nanoTime is stored. */ @@ -28,7 +28,7 @@ private KeyPair serverKeyPair; /** Username of the server owner (for integrated servers) */ -@@ -238,8 +243,6 @@ +@@ -243,8 +248,6 @@ { this.convertMapIfNeeded(par1Str); this.setUserMessage("menu.loadingLevel"); @@ -37,7 +37,7 @@ ISaveHandler var7 = this.anvilConverterForAnvilFile.getSaveLoader(par1Str, true); WorldInfo var9 = var7.loadWorldInfo(); WorldSettings var8; -@@ -259,46 +262,23 @@ +@@ -264,46 +267,23 @@ var8.enableBonusChest(); } @@ -95,7 +95,7 @@ this.setDifficultyForAllWorlds(this.getDifficulty()); this.initialWorldChunkLoad(); } -@@ -429,7 +409,9 @@ +@@ -434,7 +414,9 @@ for (int var3 = 0; var3 < var2; ++var3) { WorldServer var4 = var1[var3]; @@ -105,7 +105,7 @@ } if (this.usageSnooper != null && this.usageSnooper.isSnooperRunning()) -@@ -642,13 +624,13 @@ +@@ -647,13 +629,13 @@ { this.theProfiler.startSection("levels"); @@ -122,8 +122,8 @@ + WorldServer var4 = DimensionManager.getWorld(id); this.theProfiler.startSection(var4.getWorldInfo().getWorldName()); this.theProfiler.startSection("pools"); - var4.func_82732_R().clear(); -@@ -673,9 +655,11 @@ + var4.getWorldVec3Pool().clear(); +@@ -678,9 +660,11 @@ this.theProfiler.endSection(); } @@ -138,7 +138,7 @@ this.theProfiler.endStartSection("connection"); this.getNetworkThread().networkTick(); this.theProfiler.endStartSection("players"); -@@ -731,7 +715,13 @@ +@@ -736,7 +720,13 @@ */ public WorldServer worldServerForDimension(int par1) { @@ -153,7 +153,7 @@ } @SideOnly(Side.SERVER) -@@ -840,7 +830,7 @@ +@@ -845,7 +835,7 @@ public String getServerModName() { @@ -162,7 +162,7 @@ } /** -@@ -1119,6 +1109,7 @@ +@@ -1124,6 +1114,7 @@ if (var2 != null) { diff --git a/patches/common/net/minecraft/src/Block.java.patch b/patches/common/net/minecraft/src/Block.java.patch index 683908ca5e..29ddfd6a78 100644 --- a/patches/common/net/minecraft/src/Block.java.patch +++ b/patches/common/net/minecraft/src/Block.java.patch @@ -93,7 +93,7 @@ } } } -@@ -1027,7 +1033,7 @@ +@@ -1045,7 +1051,7 @@ par2EntityPlayer.addStat(StatList.mineBlockStatArray[this.blockID], 1); par2EntityPlayer.addExhaustion(0.025F); @@ -102,7 +102,7 @@ { ItemStack var8 = this.createStackedBlock(par6); -@@ -1297,4 +1303,848 @@ +@@ -1315,4 +1321,848 @@ canBlockGrass[0] = true; StatList.initBreakableStats(); } @@ -732,7 +732,7 @@ + else + { + int id = world.getBlockId(x, y, z); -+ return id == Block.fence.blockID || id == Block.netherFence.blockID || id == Block.glass.blockID || id == Block.field_82515_ce.blockID; ++ return id == Block.fence.blockID || id == Block.netherFence.blockID || id == Block.glass.blockID || id == Block.cobblestoneWall.blockID; + } + } + diff --git a/patches/common/net/minecraft/src/BlockButton.java.patch b/patches/common/net/minecraft/src/BlockButton.java.patch index 713561996a..e4a3619af4 100644 --- a/patches/common/net/minecraft/src/BlockButton.java.patch +++ b/patches/common/net/minecraft/src/BlockButton.java.patch @@ -11,7 +11,7 @@ public class BlockButton extends Block { -@@ -54,7 +58,11 @@ +@@ -55,7 +59,11 @@ */ public boolean canPlaceBlockOnSide(World par1World, int par2, int par3, int par4, int par5) { @@ -24,7 +24,7 @@ } /** -@@ -62,7 +70,10 @@ +@@ -63,7 +71,10 @@ */ public boolean canPlaceBlockAt(World par1World, int par2, int par3, int par4) { @@ -36,7 +36,7 @@ } /** -@@ -73,20 +84,22 @@ +@@ -74,20 +85,22 @@ int var9 = par1World.getBlockMetadata(par2, par3, par4); int var10 = var9 & 8; var9 &= 7; @@ -64,7 +64,7 @@ { var9 = 1; } -@@ -103,7 +116,11 @@ +@@ -104,7 +117,11 @@ */ private int getOrientation(World par1World, int par2, int par3, int par4) { @@ -77,7 +77,7 @@ } /** -@@ -117,22 +134,22 @@ +@@ -118,22 +135,22 @@ int var6 = par1World.getBlockMetadata(par2, par3, par4) & 7; boolean var7 = false; diff --git a/patches/common/net/minecraft/src/BlockCrops.java.patch b/patches/common/net/minecraft/src/BlockCrops.java.patch index a161723616..8a82fc7dd1 100644 --- a/patches/common/net/minecraft/src/BlockCrops.java.patch +++ b/patches/common/net/minecraft/src/BlockCrops.java.patch @@ -26,7 +26,7 @@ { var20 = 3.0F; } -@@ -152,22 +156,37 @@ +@@ -158,22 +162,37 @@ public void dropBlockAsItemWithChance(World par1World, int par2, int par3, int par4, int par5, float par6, int par7) { super.dropBlockAsItemWithChance(par1World, par2, par3, par4, par5, par6, 0); @@ -41,7 +41,7 @@ - { - if (par1World.rand.nextInt(15) <= par5) - { -- this.dropBlockAsItem_do(par1World, par2, par3, par4, new ItemStack(this.func_82532_h(), 1, 0)); +- this.dropBlockAsItem_do(par1World, par2, par3, par4, new ItemStack(this.getSeedItem(), 1, 0)); - } - } - } @@ -71,7 +71,7 @@ + { + if (world.rand.nextInt(15) <= metadata) + { -+ ret.add(new ItemStack(this.func_82532_h(), 1, 0)); ++ ret.add(new ItemStack(this.getSeedItem(), 1, 0)); + } + } + } diff --git a/patches/common/net/minecraft/src/BlockFire.java.patch b/patches/common/net/minecraft/src/BlockFire.java.patch index 72291d27be..1e33dab2c2 100644 --- a/patches/common/net/minecraft/src/BlockFire.java.patch +++ b/patches/common/net/minecraft/src/BlockFire.java.patch @@ -30,7 +30,7 @@ /** @@ -112,12 +115,8 @@ { - if (par1World.func_82736_K().func_82766_b("doFireTick")) + if (par1World.getGameRules().getGameRuleBooleanValue("doFireTick")) { - boolean var6 = par1World.getBlockId(par2, par3 - 1, par4) == Block.netherrack.blockID; - diff --git a/patches/common/net/minecraft/src/BlockTorch.java.patch b/patches/common/net/minecraft/src/BlockTorch.java.patch index 825bc6c7cf..c98c719df3 100644 --- a/patches/common/net/minecraft/src/BlockTorch.java.patch +++ b/patches/common/net/minecraft/src/BlockTorch.java.patch @@ -13,7 +13,7 @@ else { int var5 = par1World.getBlockId(par2, par3, par4); -- return var5 == Block.fence.blockID || var5 == Block.netherFence.blockID || var5 == Block.glass.blockID || var5 == Block.field_82515_ce.blockID; +- return var5 == Block.fence.blockID || var5 == Block.netherFence.blockID || var5 == Block.glass.blockID || var5 == Block.cobblestoneWall.blockID; + return (Block.blocksList[var5] != null && Block.blocksList[var5].canPlaceTorchOnTop(par1World, par2, par3, par4)); } } diff --git a/patches/common/net/minecraft/src/ComponentStrongholdRoomCrossing.java.patch b/patches/common/net/minecraft/src/ComponentStrongholdRoomCrossing.java.patch index dc5e53b542..828ebbcf1c 100644 --- a/patches/common/net/minecraft/src/ComponentStrongholdRoomCrossing.java.patch +++ b/patches/common/net/minecraft/src/ComponentStrongholdRoomCrossing.java.patch @@ -10,11 +10,11 @@ public class ComponentStrongholdRoomCrossing extends ComponentStronghold { -@@ -137,7 +140,7 @@ +@@ -140,7 +143,7 @@ this.placeBlockAtCurrentPosition(par1World, Block.ladder.blockID, this.getMetadataWithOffset(Block.ladder.blockID, 4), 9, 1, 3, par3StructureBoundingBox); this.placeBlockAtCurrentPosition(par1World, Block.ladder.blockID, this.getMetadataWithOffset(Block.ladder.blockID, 4), 9, 2, 3, par3StructureBoundingBox); this.placeBlockAtCurrentPosition(par1World, Block.ladder.blockID, this.getMetadataWithOffset(Block.ladder.blockID, 4), 9, 3, 3, par3StructureBoundingBox); -- this.generateStructureChestContents(par1World, par3StructureBoundingBox, par2Random, 3, 4, 8, field_75014_c, 1 + par2Random.nextInt(4)); +- this.generateStructureChestContents(par1World, par3StructureBoundingBox, par2Random, 3, 4, 8, strongholdRoomCrossingChestContents, 1 + par2Random.nextInt(4)); + this.generateStructureChestContents(par1World, par3StructureBoundingBox, par2Random, 3, 4, 8, ChestGenHooks.getItems(STRONGHOLD_CROSSING), ChestGenHooks.getCount(STRONGHOLD_CROSSING, par2Random)); } diff --git a/patches/common/net/minecraft/src/ContainerFurnace.java.patch b/patches/common/net/minecraft/src/ContainerFurnace.java.patch index 602b3218d6..3447253eec 100644 --- a/patches/common/net/minecraft/src/ContainerFurnace.java.patch +++ b/patches/common/net/minecraft/src/ContainerFurnace.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/ContainerFurnace.java +++ ../src_work/common/net/minecraft/src/ContainerFurnace.java -@@ -119,7 +119,7 @@ +@@ -122,7 +122,7 @@ } else if (par2 != 1 && par2 != 0) { diff --git a/patches/common/net/minecraft/src/EnchantmentHelper.java.patch b/patches/common/net/minecraft/src/EnchantmentHelper.java.patch index b8ce5c61f3..2d67dd6015 100644 --- a/patches/common/net/minecraft/src/EnchantmentHelper.java.patch +++ b/patches/common/net/minecraft/src/EnchantmentHelper.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/EnchantmentHelper.java +++ ../src_work/common/net/minecraft/src/EnchantmentHelper.java -@@ -408,7 +408,7 @@ +@@ -414,7 +414,7 @@ { Enchantment var7 = var4[var6]; diff --git a/patches/common/net/minecraft/src/Entity.java.patch b/patches/common/net/minecraft/src/Entity.java.patch index c943803cc5..c8e15ba89f 100644 --- a/patches/common/net/minecraft/src/Entity.java.patch +++ b/patches/common/net/minecraft/src/Entity.java.patch @@ -21,7 +21,7 @@ public Entity(World par1World) { -@@ -1463,6 +1470,15 @@ +@@ -1466,6 +1473,15 @@ par1NBTTagCompound.setShort("Air", (short)this.getAir()); par1NBTTagCompound.setBoolean("OnGround", this.onGround); par1NBTTagCompound.setInteger("Dimension", this.dimension); @@ -37,7 +37,7 @@ this.writeEntityToNBT(par1NBTTagCompound); } -@@ -1505,6 +1521,14 @@ +@@ -1508,6 +1524,14 @@ this.dimension = par1NBTTagCompound.getInteger("Dimension"); this.setPosition(this.posX, this.posY, this.posZ); this.setRotation(this.rotationYaw, this.rotationPitch); @@ -52,7 +52,7 @@ this.readEntityFromNBT(par1NBTTagCompound); } -@@ -1591,7 +1615,14 @@ +@@ -1594,7 +1618,14 @@ { EntityItem var3 = new EntityItem(this.worldObj, this.posX, this.posY + (double)par2, this.posZ, par1ItemStack); var3.delayBeforeCanPickup = 10; @@ -68,7 +68,7 @@ return var3; } -@@ -1945,7 +1976,7 @@ +@@ -1954,7 +1985,7 @@ */ public boolean isRiding() { @@ -77,7 +77,7 @@ } /** -@@ -2262,7 +2293,7 @@ +@@ -2279,7 +2310,7 @@ public float func_82146_a(Explosion par1Explosion, Block par2Block, int par3, int par4, int par5) { @@ -86,7 +86,7 @@ } public int func_82143_as() -@@ -2279,4 +2310,84 @@ +@@ -2299,4 +2330,84 @@ { return false; } @@ -140,7 +140,7 @@ + ItemStack held = ((EntityItemFrame)this).func_82335_i(); + if (held == null) + { -+ return new ItemStack(Item.field_82802_bI); ++ return new ItemStack(Item.itemFrame); + } + else + { diff --git a/patches/common/net/minecraft/src/EntityLiving.java.patch b/patches/common/net/minecraft/src/EntityLiving.java.patch index d61853767a..30866a650b 100644 --- a/patches/common/net/minecraft/src/EntityLiving.java.patch +++ b/patches/common/net/minecraft/src/EntityLiving.java.patch @@ -11,7 +11,7 @@ public abstract class EntityLiving extends Entity { -@@ -337,6 +341,7 @@ +@@ -351,6 +355,7 @@ public void setAttackTarget(EntityLiving par1EntityLiving) { this.attackTarget = par1EntityLiving; @@ -19,7 +19,7 @@ } public boolean isExplosiveMob(Class par1Class) -@@ -420,6 +425,7 @@ +@@ -434,6 +439,7 @@ { this.entityLivingToAttack = par1EntityLiving; this.revengeTimer = this.entityLivingToAttack != null ? 60 : 0; @@ -27,7 +27,7 @@ } protected void entityInit() -@@ -708,6 +714,11 @@ +@@ -722,6 +728,11 @@ */ public void onUpdate() { @@ -39,7 +39,7 @@ super.onUpdate(); if (!this.worldObj.isRemote) -@@ -889,6 +900,11 @@ +@@ -903,6 +914,11 @@ */ public boolean attackEntityFrom(DamageSource par1DamageSource, int par2) { @@ -51,7 +51,7 @@ if (this.worldObj.isRemote) { return false; -@@ -1095,6 +1111,11 @@ +@@ -1109,6 +1125,11 @@ { if (!this.field_83001_bt) { @@ -63,7 +63,7 @@ par2 = this.applyArmorCalculations(par1DamageSource, par2); par2 = this.applyPotionDamageCalculations(par1DamageSource, par2); this.health -= par2; -@@ -1159,6 +1180,11 @@ +@@ -1173,6 +1194,11 @@ */ public void onDeath(DamageSource par1DamageSource) { @@ -75,7 +75,7 @@ Entity var2 = par1DamageSource.getEntity(); if (this.scoreValue >= 0 && var2 != null) -@@ -1181,6 +1207,10 @@ +@@ -1195,6 +1221,10 @@ { var3 = EnchantmentHelper.getLootingModifier((EntityLiving)var2); } @@ -84,9 +84,9 @@ + capturedDrops.clear(); + int var4 = 0; - if (!this.isChild() && this.worldObj.func_82736_K().func_82766_b("doMobLoot")) + if (!this.isChild() && this.worldObj.getGameRules().getGameRuleBooleanValue("doMobLoot")) { -@@ -1189,7 +1219,7 @@ +@@ -1203,7 +1233,7 @@ if (this.recentlyHit > 0) { @@ -95,7 +95,7 @@ if (var4 < 5) { -@@ -1197,6 +1227,16 @@ +@@ -1211,6 +1241,16 @@ } } } @@ -112,7 +112,7 @@ } this.worldObj.setEntityState(this, (byte)3); -@@ -1240,6 +1280,12 @@ +@@ -1254,6 +1294,12 @@ */ protected void fall(float par1) { @@ -125,7 +125,7 @@ super.fall(par1); int var2 = MathHelper.ceiling_float_int(par1 - 3.0F); -@@ -1427,7 +1473,7 @@ +@@ -1441,7 +1487,7 @@ int var2 = MathHelper.floor_double(this.boundingBox.minY); int var3 = MathHelper.floor_double(this.posZ); int var4 = this.worldObj.getBlockId(var1, var2, var3); @@ -134,7 +134,7 @@ } /** -@@ -1835,6 +1881,7 @@ +@@ -1849,6 +1895,7 @@ } this.isAirBorne = true; @@ -142,16 +142,16 @@ } /** -@@ -2362,8 +2409,6 @@ +@@ -2379,8 +2426,6 @@ return this.getCreatureAttribute() == EnumCreatureAttribute.UNDEAD; } - @SideOnly(Side.CLIENT) - /** - * input is the potion id to remove from the current active potion effects + * Remove the speified potion effect from this entity. */ -@@ -2781,4 +2826,30 @@ +@@ -2818,4 +2863,30 @@ { return false; } diff --git a/patches/common/net/minecraft/src/EntityMinecart.java.patch b/patches/common/net/minecraft/src/EntityMinecart.java.patch index 6b0b404ab1..0b96093dbf 100644 --- a/patches/common/net/minecraft/src/EntityMinecart.java.patch +++ b/patches/common/net/minecraft/src/EntityMinecart.java.patch @@ -142,7 +142,7 @@ } return true; -@@ -289,7 +295,7 @@ +@@ -292,7 +298,7 @@ this.kill(); } @@ -151,7 +151,7 @@ { this.worldObj.spawnParticle("largesmoke", this.posX, this.posY + 0.8D, this.posZ, 0.0D, 0.0D, 0.0D); } -@@ -333,17 +339,17 @@ +@@ -336,17 +342,17 @@ double var6 = 0.0078125D; int var8 = this.worldObj.getBlockId(var1, var2, var3); @@ -172,7 +172,7 @@ var12 = !var11; } -@@ -357,25 +363,7 @@ +@@ -360,25 +366,7 @@ this.posY = (double)(var2 + 1); } @@ -199,7 +199,7 @@ int[][] var13 = field_70500_g[var10]; double var14 = (double)(var13[1][0] - var13[0][0]); -@@ -408,7 +396,7 @@ +@@ -411,7 +399,7 @@ } } @@ -208,7 +208,7 @@ { var24 = Math.sqrt(this.motionX * this.motionX + this.motionZ * this.motionZ); -@@ -456,36 +444,8 @@ +@@ -459,36 +447,8 @@ this.posX = var26 + var14 * var24; this.posZ = var28 + var16 * var24; this.setPosition(this.posX, this.posY + (double)this.yOffset, this.posZ); @@ -247,7 +247,7 @@ if (var13[0][1] != 0 && MathHelper.floor_double(this.posX) - var1 == var13[0][0] && MathHelper.floor_double(this.posZ) - var3 == var13[0][2]) { -@@ -496,42 +456,7 @@ +@@ -499,42 +459,7 @@ this.setPosition(this.posX, this.posY + (double)var13[1][1], this.posZ); } @@ -291,7 +291,7 @@ Vec3 var52 = this.func_70489_a(this.posX, this.posY, this.posZ); -@@ -561,30 +486,14 @@ +@@ -564,30 +489,14 @@ double var41; @@ -330,7 +330,7 @@ { var41 = Math.sqrt(this.motionX * this.motionX + this.motionZ * this.motionZ); -@@ -620,41 +529,7 @@ +@@ -623,41 +532,7 @@ } else { @@ -373,7 +373,7 @@ } this.doBlockCollisions(); -@@ -681,7 +556,18 @@ +@@ -684,7 +559,18 @@ } this.setRotation(this.rotationYaw, this.rotationPitch); @@ -393,7 +393,7 @@ if (var15 != null && !var15.isEmpty()) { -@@ -706,17 +592,8 @@ +@@ -709,17 +595,8 @@ this.riddenByEntity = null; } @@ -413,7 +413,7 @@ } } -@@ -740,12 +617,7 @@ +@@ -743,12 +620,7 @@ } else { @@ -427,7 +427,7 @@ par3 = (double)var10; -@@ -791,13 +663,8 @@ +@@ -794,13 +666,8 @@ if (BlockRail.isRailBlock(var10)) { @@ -442,7 +442,7 @@ if (var11 >= 2 && var11 <= 5) { -@@ -862,13 +729,14 @@ +@@ -865,13 +732,14 @@ { par1NBTTagCompound.setInteger("Type", this.minecartType); @@ -461,7 +461,7 @@ { NBTTagList var2 = new NBTTagList(); -@@ -894,13 +762,21 @@ +@@ -897,13 +765,21 @@ { this.minecartType = par1NBTTagCompound.getInteger("Type"); @@ -487,7 +487,7 @@ { NBTTagList var2 = par1NBTTagCompound.getTagList("Items"); this.cargoItems = new ItemStack[this.getSizeInventory()]; -@@ -929,11 +805,17 @@ +@@ -932,11 +808,17 @@ */ public void applyEntityCollision(Entity par1Entity) { @@ -506,7 +506,7 @@ { par1Entity.mountEntity(this); } -@@ -979,7 +861,7 @@ +@@ -982,7 +864,7 @@ double var18 = par1Entity.motionX + this.motionX; double var20 = par1Entity.motionZ + this.motionZ; @@ -515,7 +515,7 @@ { this.motionX *= 0.20000000298023224D; this.motionZ *= 0.20000000298023224D; -@@ -987,7 +869,7 @@ +@@ -990,7 +872,7 @@ par1Entity.motionX *= 0.949999988079071D; par1Entity.motionZ *= 0.949999988079071D; } @@ -524,7 +524,7 @@ { par1Entity.motionX *= 0.20000000298023224D; par1Entity.motionZ *= 0.20000000298023224D; -@@ -1022,7 +904,7 @@ +@@ -1025,7 +907,7 @@ */ public int getSizeInventory() { @@ -533,7 +533,7 @@ } /** -@@ -1125,7 +1007,12 @@ +@@ -1128,7 +1010,12 @@ */ public boolean interact(EntityPlayer par1EntityPlayer) { @@ -547,7 +547,7 @@ { if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != par1EntityPlayer) { -@@ -1137,14 +1024,14 @@ +@@ -1140,14 +1027,14 @@ par1EntityPlayer.mountEntity(this); } } @@ -564,7 +564,7 @@ { ItemStack var2 = par1EntityPlayer.inventory.getCurrentItem(); -@@ -1268,4 +1155,375 @@ +@@ -1271,4 +1158,375 @@ { return this.dataWatcher.getWatchableObjectInt(18); } diff --git a/patches/common/net/minecraft/src/EntityOcelot.java.patch b/patches/common/net/minecraft/src/EntityOcelot.java.patch index 4b2d61a51a..f03e043c37 100644 --- a/patches/common/net/minecraft/src/EntityOcelot.java.patch +++ b/patches/common/net/minecraft/src/EntityOcelot.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/EntityOcelot.java +++ ../src_work/common/net/minecraft/src/EntityOcelot.java -@@ -325,8 +325,9 @@ +@@ -326,8 +326,9 @@ } int var4 = this.worldObj.getBlockId(var1, var2 - 1, var3); diff --git a/patches/common/net/minecraft/src/EntityPlayer.java.patch b/patches/common/net/minecraft/src/EntityPlayer.java.patch index 3408afee7e..043e97f143 100644 --- a/patches/common/net/minecraft/src/EntityPlayer.java.patch +++ b/patches/common/net/minecraft/src/EntityPlayer.java.patch @@ -18,7 +18,7 @@ public abstract class EntityPlayer extends EntityLiving implements ICommandSender { -@@ -206,6 +217,7 @@ +@@ -210,6 +221,7 @@ if (var1 == this.itemInUse) { @@ -26,7 +26,7 @@ if (this.itemInUseCount <= 25 && this.itemInUseCount % 4 == 0) { this.updateItemUse(var1, 5); -@@ -552,6 +564,9 @@ +@@ -562,6 +574,9 @@ this.setPosition(this.posX, this.posY, this.posZ); this.motionY = 0.10000000149011612D; @@ -36,8 +36,8 @@ if (this.username.equals("Notch")) { this.dropPlayerItemWithRandomChoice(new ItemStack(Item.appleRed, 1), true); -@@ -560,6 +575,20 @@ - if (!this.worldObj.func_82736_K().func_82766_b("keepInventory")) +@@ -570,6 +585,20 @@ + if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory")) { this.inventory.dropAllItems(); + } @@ -57,7 +57,7 @@ } if (par1DamageSource != null) -@@ -599,7 +628,16 @@ +@@ -609,7 +638,16 @@ */ public EntityItem dropOneItem() { @@ -75,7 +75,7 @@ } /** -@@ -608,7 +646,7 @@ +@@ -618,7 +656,7 @@ */ public EntityItem dropPlayerItem(ItemStack par1ItemStack) { @@ -84,7 +84,7 @@ } /** -@@ -660,18 +698,33 @@ +@@ -670,18 +708,33 @@ */ public void joinEntityItemWithWorld(EntityItem par1EntityItem) { @@ -122,7 +122,7 @@ { var2 += (float)(var3 * var3 + 1); } -@@ -696,7 +749,8 @@ +@@ -706,7 +759,8 @@ var2 /= 5.0F; } @@ -132,7 +132,7 @@ } /** -@@ -704,7 +758,7 @@ +@@ -714,7 +768,7 @@ */ public boolean canHarvestBlock(Block par1Block) { @@ -141,7 +141,7 @@ } /** -@@ -980,12 +1034,22 @@ +@@ -993,12 +1047,22 @@ { if (!this.field_83001_bt) { @@ -165,7 +165,7 @@ par2 = this.applyPotionDamageCalculations(par1DamageSource, par2); this.addExhaustion(par1DamageSource.getHungerDamage()); this.health -= par2; -@@ -1023,6 +1087,10 @@ +@@ -1039,6 +1103,10 @@ public boolean interactWith(Entity par1Entity) { @@ -176,7 +176,7 @@ if (par1Entity.interact(this)) { return true; -@@ -1066,7 +1134,9 @@ +@@ -1082,7 +1150,9 @@ */ public void destroyCurrentEquippedItem() { @@ -186,7 +186,7 @@ } /** -@@ -1083,6 +1153,15 @@ +@@ -1099,6 +1169,15 @@ */ public void attackTargetEntityWithCurrentItem(Entity par1Entity) { @@ -202,7 +202,7 @@ if (par1Entity.canAttackWithItem()) { int var2 = this.inventory.getDamageVsEntity(par1Entity); -@@ -1226,6 +1305,12 @@ +@@ -1242,6 +1321,12 @@ */ public EnumStatus sleepInBedAt(int par1, int par2, int par3) { @@ -215,7 +215,7 @@ if (!this.worldObj.isRemote) { if (this.isPlayerSleeping() || !this.isEntityAlive()) -@@ -1265,6 +1350,11 @@ +@@ -1281,6 +1366,11 @@ { int var9 = this.worldObj.getBlockMetadata(par1, par2, par3); int var5 = BlockBed.getDirection(var9); @@ -227,7 +227,7 @@ float var10 = 0.5F; float var7 = 0.5F; -@@ -1335,10 +1425,12 @@ +@@ -1351,10 +1441,12 @@ ChunkCoordinates var4 = this.playerLocation; ChunkCoordinates var5 = this.playerLocation; @@ -244,7 +244,7 @@ if (var5 == null) { -@@ -1375,7 +1467,9 @@ +@@ -1391,7 +1483,9 @@ */ private boolean isInBed() { @@ -255,7 +255,7 @@ } /** -@@ -1390,13 +1484,16 @@ +@@ -1406,13 +1500,16 @@ var3.loadChunk(par1ChunkCoordinates.posX - 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4); var3.loadChunk(par1ChunkCoordinates.posX + 3 >> 4, par1ChunkCoordinates.posZ + 3 >> 4); @@ -274,7 +274,7 @@ return var4; } } -@@ -1410,8 +1507,11 @@ +@@ -1426,8 +1523,11 @@ { if (this.playerLocation != null) { @@ -288,7 +288,7 @@ switch (var2) { -@@ -1731,6 +1831,7 @@ +@@ -1747,6 +1847,7 @@ return 101; } } diff --git a/patches/common/net/minecraft/src/EntityPlayerMP.java.patch b/patches/common/net/minecraft/src/EntityPlayerMP.java.patch index 6d0c76b509..df02bbb78b 100644 --- a/patches/common/net/minecraft/src/EntityPlayerMP.java.patch +++ b/patches/common/net/minecraft/src/EntityPlayerMP.java.patch @@ -22,7 +22,7 @@ - - if (!par2World.provider.hasNoSky && par2World.getWorldInfo().getGameType() != EnumGameType.ADVENTURE) - { -- int var9 = Math.max(5, par1MinecraftServer.func_82357_ak() - 6); +- int var9 = Math.max(5, par1MinecraftServer.getSpawnProtectionSize() - 6); - var6 += this.rand.nextInt(var9 * 2) - var9; - var7 += this.rand.nextInt(var9 * 2) - var9; - var8 = par2World.getTopSolidOrLiquidBlock(var6, var7); @@ -30,7 +30,7 @@ this.setLocationAndAngles((double)var6 + 0.5D, (double)var8, (double)var7 + 0.5D, 0.0F, 0.0F); this.mcServer = par1MinecraftServer; -@@ -169,7 +164,11 @@ +@@ -172,7 +167,11 @@ if (var4 != null && this.worldObj.blockExists(var4.chunkXPos << 4, 0, var4.chunkZPos << 4)) { var1.add(this.worldObj.getChunkFromChunkCoords(var4.chunkXPos, var4.chunkZPos)); @@ -43,7 +43,7 @@ } } -@@ -242,11 +241,29 @@ +@@ -245,11 +244,29 @@ */ public void onDeath(DamageSource par1DamageSource) { @@ -54,7 +54,7 @@ + this.mcServer.getConfigurationManager().sendPacketToAllPlayers(new Packet3Chat(par1DamageSource.getDeathMessage(this))); - if (!this.worldObj.func_82736_K().func_82766_b("keepInventory")) + if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory")) { + captureDrops = true; + capturedDrops.clear(); diff --git a/patches/common/net/minecraft/src/EntitySheep.java.patch b/patches/common/net/minecraft/src/EntitySheep.java.patch index d6fdf9630e..edd1a76e78 100644 --- a/patches/common/net/minecraft/src/EntitySheep.java.patch +++ b/patches/common/net/minecraft/src/EntitySheep.java.patch @@ -44,7 +44,7 @@ return super.interact(par1EntityPlayer); } -@@ -301,4 +283,24 @@ +@@ -304,4 +286,24 @@ { this.setFleeceColor(getRandomFleeceColor(this.worldObj.rand)); } diff --git a/patches/common/net/minecraft/src/Explosion.java.patch b/patches/common/net/minecraft/src/Explosion.java.patch index 514b2c3179..d0a5daeada 100644 --- a/patches/common/net/minecraft/src/Explosion.java.patch +++ b/patches/common/net/minecraft/src/Explosion.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/Explosion.java +++ ../src_work/common/net/minecraft/src/Explosion.java -@@ -78,7 +78,7 @@ +@@ -82,7 +82,7 @@ if (var25 > 0) { Block var26 = Block.blocksList[var25]; diff --git a/patches/common/net/minecraft/src/GuiStatsComponent.java.patch b/patches/common/net/minecraft/src/GuiStatsComponent.java.patch index 6f2257cb30..cec96992ab 100644 --- a/patches/common/net/minecraft/src/GuiStatsComponent.java.patch +++ b/patches/common/net/minecraft/src/GuiStatsComponent.java.patch @@ -21,22 +21,22 @@ if (this.field_79017_e.worldServers != null) { - for (int var3 = 0; var3 < this.field_79017_e.worldServers.length; ++var3) -+ int x = 0; ++ int var3 = 0; + for (Integer id : DimensionManager.getIDs()) { - this.displayStrings[5 + var3] = "Lvl " + var3 + " tick: " + field_79020_a.format(this.func_79015_a(this.field_79017_e.timeOfLastDimensionTick[var3]) * 1.0E-6D) + " ms"; -+ this.displayStrings[5 + x] = "Lvl " + id + " tick: " + field_79020_a.format(this.func_79015_a(this.field_79017_e.worldTickTimes.get(id)) * 1.0E-6D) + " ms"; ++ this.displayStrings[5 + var3] = "Lvl " + id + " tick: " + field_79020_a.format(this.func_79015_a(this.field_79017_e.worldTickTimes.get(id)) * 1.0E-6D) + " ms"; - if (this.field_79017_e.worldServers[var3] != null && this.field_79017_e.worldServers[var3].theChunkProviderServer != null) + WorldServer world = DimensionManager.getWorld(id); + if (world != null && world.theChunkProviderServer != null) { - this.displayStrings[5 + var3] = this.displayStrings[5 + var3] + ", " + this.field_79017_e.worldServers[var3].theChunkProviderServer.makeString(); -- this.displayStrings[5 + var3] = this.displayStrings[5 + var3] + ", Vec3: " + this.field_79017_e.worldServers[var3].func_82732_R().func_82590_d() + " / " + this.field_79017_e.worldServers[var3].func_82732_R().func_82591_c(); -+ this.displayStrings[5 + x] = this.displayStrings[5 + x] + ", " + world.theChunkProviderServer.makeString(); -+ this.displayStrings[5 + x] = this.displayStrings[5 + x] + ", Vec3: " + world.func_82732_R().func_82590_d() + " / " + world.func_82732_R().func_82591_c(); +- this.displayStrings[5 + var3] = this.displayStrings[5 + var3] + ", Vec3: " + this.field_79017_e.worldServers[var3].getWorldVec3Pool().func_82590_d() + " / " + this.field_79017_e.worldServers[var3].getWorldVec3Pool().func_82591_c(); ++ this.displayStrings[5 + var3] = this.displayStrings[5 + var3] + ", " + world.theChunkProviderServer.makeString(); ++ this.displayStrings[5 + var3] = this.displayStrings[5 + var3] + ", Vec3: " + world.getWorldVec3Pool().func_82590_d() + " / " + world.getWorldVec3Pool().func_82591_c(); } -+ x++; ++ var3++; } } diff --git a/patches/common/net/minecraft/src/Item.java.patch b/patches/common/net/minecraft/src/Item.java.patch index df7fb7f9d4..0b9a237620 100644 --- a/patches/common/net/minecraft/src/Item.java.patch +++ b/patches/common/net/minecraft/src/Item.java.patch @@ -37,7 +37,7 @@ Vec3 var23 = var13.addVector((double)var18 * var21, (double)var17 * var21, (double)var20 * var21); return par1World.rayTraceBlocks_do_do(var13, var23, par3, !par3); } -@@ -674,4 +686,265 @@ +@@ -677,4 +689,265 @@ { StatList.initStats(); } diff --git a/patches/common/net/minecraft/src/ItemBlock.java.patch b/patches/common/net/minecraft/src/ItemBlock.java.patch index 55ad5e4c27..88fe45f19c 100644 --- a/patches/common/net/minecraft/src/ItemBlock.java.patch +++ b/patches/common/net/minecraft/src/ItemBlock.java.patch @@ -32,7 +32,7 @@ - + if (placeBlockAt(par1ItemStack, par2EntityPlayer, par3World, par4, par5, par6, par7, par8, par9, par10)) + { - par3World.playSoundEffect((double)((float)par4 + 0.5F), (double)((float)par5 + 0.5F), (double)((float)par6 + 0.5F), var12.stepSound.func_82593_b(), (var12.stepSound.getVolume() + 1.0F) / 2.0F, var12.stepSound.getPitch() * 0.8F); + par3World.playSoundEffect((double)((float)par4 + 0.5F), (double)((float)par5 + 0.5F), (double)((float)par6 + 0.5F), var12.stepSound.getPlaceSound(), (var12.stepSound.getVolume() + 1.0F) / 2.0F, var12.stepSound.getPitch() * 0.8F); --par1ItemStack.stackSize; } @@ -118,7 +114,8 @@ diff --git a/patches/common/net/minecraft/src/ItemInWorldManager.java.patch b/patches/common/net/minecraft/src/ItemInWorldManager.java.patch index 20d087d918..27e3ee8517 100644 --- a/patches/common/net/minecraft/src/ItemInWorldManager.java.patch +++ b/patches/common/net/minecraft/src/ItemInWorldManager.java.patch @@ -20,7 +20,7 @@ @@ -134,6 +144,13 @@ { - if (!this.gameType.func_82752_c() || this.thisPlayerMP.func_82246_f(par1, par2, par3)) + if (!this.gameType.isAdventure() || this.thisPlayerMP.canCurrentToolHarvestBlock(par1, par2, par3)) { + PlayerInteractEvent event = ForgeEventFactory.onPlayerInteract(thisPlayerMP, Action.LEFT_CLICK_BLOCK, par1, par2, par3, par4); + if (event.isCanceled()) diff --git a/patches/common/net/minecraft/src/ItemTool.java.patch b/patches/common/net/minecraft/src/ItemTool.java.patch index de0f4666b2..10c5337d12 100644 --- a/patches/common/net/minecraft/src/ItemTool.java.patch +++ b/patches/common/net/minecraft/src/ItemTool.java.patch @@ -7,9 +7,9 @@ import cpw.mods.fml.common.Side; import cpw.mods.fml.common.asm.SideOnly; -@@ -104,4 +105,15 @@ +@@ -110,4 +111,15 @@ { - return this.toolMaterial.func_82844_f() == par2ItemStack.itemID ? true : super.func_82789_a(par1ItemStack, par2ItemStack); + return this.toolMaterial.getToolCraftingMaterial() == par2ItemStack.itemID ? true : super.getIsRepairable(par1ItemStack, par2ItemStack); } + + /** FORGE: Overridden to allow custom tool effectiveness */ diff --git a/patches/common/net/minecraft/src/NetServerHandler.java.patch b/patches/common/net/minecraft/src/NetServerHandler.java.patch index e3d5411b58..702661ba7e 100644 --- a/patches/common/net/minecraft/src/NetServerHandler.java.patch +++ b/patches/common/net/minecraft/src/NetServerHandler.java.patch @@ -89,7 +89,7 @@ } @@ -419,6 +448,7 @@ { - if (var20 <= this.mcServer.func_82357_ak() && !var3) + if (var20 <= this.mcServer.getSpawnProtectionSize() && !var3) { + ForgeEventFactory.onPlayerInteract(playerEntity, Action.LEFT_CLICK_BLOCK, var5, var6, var7, 0); this.playerEntity.playerNetServerHandler.sendPacketToPlayer(new Packet53BlockChange(var5, var6, var7, var2)); @@ -112,10 +112,10 @@ var12 = var11; } -- if (this.hasMoved && this.playerEntity.getDistanceSq((double)var5 + 0.5D, (double)var6 + 0.5D, (double)var7 + 0.5D) < 64.0D && (var12 > this.mcServer.func_82357_ak() || var9)) +- if (this.hasMoved && this.playerEntity.getDistanceSq((double)var5 + 0.5D, (double)var6 + 0.5D, (double)var7 + 0.5D) < 64.0D && (var12 > this.mcServer.getSpawnProtectionSize() || var9)) + double dist = playerEntity.theItemInWorldManager.getBlockReachDistance() + 1; + dist *= dist; -+ if (this.hasMoved && this.playerEntity.getDistanceSq((double)var5 + 0.5D, (double)var6 + 0.5D, (double)var7 + 0.5D) < dist && (var12 > this.mcServer.func_82357_ak() || var9)) ++ if (this.hasMoved && this.playerEntity.getDistanceSq((double)var5 + 0.5D, (double)var6 + 0.5D, (double)var7 + 0.5D) < dist && (var12 > this.mcServer.getSpawnProtectionSize() || var9)) { this.playerEntity.theItemInWorldManager.activateBlockOrUseItem(this.playerEntity, var2, var3, var5, var6, var7, var8, par1Packet15Place.getXOffset(), par1Packet15Place.getYOffset(), par1Packet15Place.getZOffset()); } diff --git a/patches/common/net/minecraft/src/PotionEffect.java.patch b/patches/common/net/minecraft/src/PotionEffect.java.patch index 0ac9f40f06..1389991412 100644 --- a/patches/common/net/minecraft/src/PotionEffect.java.patch +++ b/patches/common/net/minecraft/src/PotionEffect.java.patch @@ -98,4 +98,4 @@ + } } - public void func_82721_a(boolean par1) + /** diff --git a/patches/common/net/minecraft/src/ServerConfigurationManager.java.patch b/patches/common/net/minecraft/src/ServerConfigurationManager.java.patch index fb595e8374..3ce0600c99 100644 --- a/patches/common/net/minecraft/src/ServerConfigurationManager.java.patch +++ b/patches/common/net/minecraft/src/ServerConfigurationManager.java.patch @@ -45,22 +45,22 @@ par1EntityPlayerMP.playerNetServerHandler.sendPacketToPlayer(new Packet9Respawn(par1EntityPlayerMP.dimension, (byte)par1EntityPlayerMP.worldObj.difficultySetting, var5.getWorldInfo().getTerrainType(), var5.getHeight(), par1EntityPlayerMP.theItemInWorldManager.getGameType())); var4.removeEntity(par1EntityPlayerMP); par1EntityPlayerMP.isDead = false; -- this.func_82448_a(par1EntityPlayerMP, var3, var4, var5); -+ this.func_82448_a(par1EntityPlayerMP, var3, var4, var5, teleporter); +- this.transferEntityToWorld(par1EntityPlayerMP, var3, var4, var5); ++ this.transferEntityToWorld(par1EntityPlayerMP, var3, var4, var5, teleporter); this.func_72375_a(par1EntityPlayerMP, var4); par1EntityPlayerMP.playerNetServerHandler.setPlayerLocation(par1EntityPlayerMP.posX, par1EntityPlayerMP.posY, par1EntityPlayerMP.posZ, par1EntityPlayerMP.rotationYaw, par1EntityPlayerMP.rotationPitch); par1EntityPlayerMP.theItemInWorldManager.setWorld(var5); -@@ -394,37 +407,22 @@ - - public void func_82448_a(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer) +@@ -397,37 +410,22 @@ + */ + public void transferEntityToWorld(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer) { - double var5 = par1Entity.posX; - double var7 = par1Entity.posZ; - double var9 = 8.0D; -+ func_82448_a(par1Entity, par2, par3WorldServer, par4WorldServer, new Teleporter()); ++ transferEntityToWorld(par1Entity, par2, par3WorldServer, par4WorldServer, new Teleporter()); + } + -+ public void func_82448_a(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer, Teleporter teleporter) ++ public void transferEntityToWorld(Entity par1Entity, int par2, WorldServer par3WorldServer, WorldServer par4WorldServer, Teleporter teleporter) + { + WorldProvider pOld = par3WorldServer.provider; + WorldProvider pNew = par4WorldServer.provider; @@ -99,7 +99,7 @@ { ChunkCoordinates var18; -@@ -458,7 +456,7 @@ +@@ -461,7 +459,7 @@ par4WorldServer.spawnEntityInWorld(par1Entity); par1Entity.setLocationAndAngles(var5, par1Entity.posY, var7, par1Entity.rotationYaw, par1Entity.rotationPitch); par4WorldServer.updateEntityWithOptionalForce(par1Entity, false); diff --git a/patches/common/net/minecraft/src/SpawnerAnimals.java.patch b/patches/common/net/minecraft/src/SpawnerAnimals.java.patch index fffe071725..c96e946711 100644 --- a/patches/common/net/minecraft/src/SpawnerAnimals.java.patch +++ b/patches/common/net/minecraft/src/SpawnerAnimals.java.patch @@ -16,7 +16,7 @@ public final class SpawnerAnimals { @@ -79,6 +84,9 @@ - if ((!var35.getPeacefulCreature() || par2) && (var35.getPeacefulCreature() || par1) && (!var35.func_82705_e() || par3) && par0WorldServer.countEntities(var35.getCreatureClass()) <= var35.getMaxNumberOfCreature() * eligibleChunksForSpawning.size() / 256) + if ((!var35.getPeacefulCreature() || par2) && (var35.getPeacefulCreature() || par1) && (!var35.getAnimal() || par3) && par0WorldServer.countEntities(var35.getCreatureClass()) <= var35.getMaxNumberOfCreature() * eligibleChunksForSpawning.size() / 256) { Iterator var37 = eligibleChunksForSpawning.keySet().iterator(); + ArrayList tmp = new ArrayList(eligibleChunksForSpawning.keySet()); @@ -44,6 +44,6 @@ + return; + } + - par0EntityLiving.func_82163_bD(); + par0EntityLiving.initCreature(); } diff --git a/patches/common/net/minecraft/src/TileEntityBeacon.java.patch b/patches/common/net/minecraft/src/TileEntityBeacon.java.patch index 6be4fc1e92..4bc5b15c81 100644 --- a/patches/common/net/minecraft/src/TileEntityBeacon.java.patch +++ b/patches/common/net/minecraft/src/TileEntityBeacon.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/TileEntityBeacon.java +++ ../src_work/common/net/minecraft/src/TileEntityBeacon.java -@@ -95,8 +95,9 @@ +@@ -104,8 +104,9 @@ for (int var5 = this.zCoord - var1; var5 <= this.zCoord + var1; ++var5) { int var6 = this.worldObj.getBlockId(var4, var2, var5); diff --git a/patches/common/net/minecraft/src/World.java.patch b/patches/common/net/minecraft/src/World.java.patch index 83e6890b12..4c4ac9d7c6 100644 --- a/patches/common/net/minecraft/src/World.java.patch +++ b/patches/common/net/minecraft/src/World.java.patch @@ -31,19 +31,19 @@ /** * boolean; if true updates scheduled by scheduleBlockUpdate happen immediately */ -@@ -138,6 +160,11 @@ +@@ -139,6 +161,11 @@ + * Gets the biome for a given set of x/z coordinates */ public BiomeGenBase getBiomeGenForCoords(int par1, int par2) - { ++ { + return provider.getBiomeGenForCoords(par1, par2); + } + + public BiomeGenBase getBiomeGenForCoordsBody(int par1, int par2) -+ { + { if (this.blockExists(par1, 0, par2)) { - Chunk var3 = this.getChunkFromBlockCoords(par1, par2); -@@ -167,7 +194,13 @@ +@@ -169,7 +196,13 @@ this.theProfiler = par5Profiler; this.worldInfo = new WorldInfo(par4WorldSettings, par2Str); this.provider = par3WorldProvider; @@ -58,7 +58,7 @@ VillageCollection var6 = (VillageCollection)this.mapStorage.loadData(VillageCollection.class, "villages"); if (var6 == null) -@@ -181,7 +214,7 @@ +@@ -183,7 +216,7 @@ this.villageCollectionObj.func_82566_a(this); } @@ -67,7 +67,7 @@ this.chunkProvider = this.createChunkProvider(); this.calculateInitialSkylight(); this.calculateInitialWeather(); -@@ -195,7 +228,7 @@ +@@ -197,7 +230,7 @@ this.isRemote = false; this.saveHandler = par1ISaveHandler; this.theProfiler = par5Profiler; @@ -76,7 +76,7 @@ this.worldInfo = par1ISaveHandler.loadWorldInfo(); if (par4WorldProvider != null) -@@ -229,12 +262,20 @@ +@@ -231,12 +264,20 @@ this.worldInfo.setServerInitialized(true); } @@ -99,7 +99,7 @@ } else { -@@ -246,6 +287,19 @@ +@@ -248,6 +289,19 @@ this.calculateInitialWeather(); } @@ -119,7 +119,7 @@ /** * Creates the chunk provider for this world. Called in the constructor. Retrieves provider from worldProvider? */ -@@ -300,7 +354,8 @@ +@@ -302,7 +356,8 @@ */ public boolean isAirBlock(int par1, int par2, int par3) { @@ -129,7 +129,7 @@ } /** -@@ -309,7 +364,8 @@ +@@ -311,7 +366,8 @@ public boolean blockHasTileEntity(int par1, int par2, int par3) { int var4 = this.getBlockId(par1, par2, par3); @@ -139,7 +139,7 @@ } /** -@@ -1031,7 +1087,7 @@ +@@ -1033,7 +1089,7 @@ */ public boolean isDaytime() { @@ -148,7 +148,7 @@ } /** -@@ -1063,7 +1119,7 @@ +@@ -1065,7 +1121,7 @@ int var12 = this.getBlockMetadata(var8, var9, var10); Block var13 = Block.blocksList[var11]; @@ -157,7 +157,7 @@ { MovingObjectPosition var14 = var13.collisionRayTrace(this, var8, var9, var10, par1Vec3, par2Vec3); -@@ -1263,6 +1319,12 @@ +@@ -1265,6 +1321,12 @@ */ public void playSoundAtEntity(Entity par1Entity, String par2Str, float par3, float par4) { @@ -170,7 +170,7 @@ if (par1Entity != null && par2Str != null) { Iterator var5 = this.worldAccesses.iterator(); -@@ -1361,6 +1423,11 @@ +@@ -1363,6 +1425,11 @@ EntityPlayer var5 = (EntityPlayer)par1Entity; this.playerEntities.add(var5); this.updateAllPlayersSleepingFlag(); @@ -182,7 +182,7 @@ } this.getChunkFromChunkCoords(var2, var3).addEntity(par1Entity); -@@ -1612,6 +1679,12 @@ +@@ -1614,6 +1681,12 @@ * Calculates the color for the skybox */ public Vec3 getSkyColor(Entity par1Entity, float par2) @@ -195,7 +195,7 @@ { float var3 = this.getCelestialAngle(par2); float var4 = MathHelper.cos(var3 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; -@@ -1707,6 +1780,12 @@ +@@ -1709,6 +1782,12 @@ @SideOnly(Side.CLIENT) public Vec3 drawClouds(float par1) { @@ -208,7 +208,7 @@ float var2 = this.getCelestialAngle(par1); float var3 = MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; -@@ -1785,7 +1864,7 @@ +@@ -1787,7 +1866,7 @@ { int var5 = var3.getBlockID(par1, var4, par2); @@ -217,7 +217,7 @@ { return var4 + 1; } -@@ -1800,6 +1879,12 @@ +@@ -1802,6 +1881,12 @@ * How bright are stars in the sky */ public float getStarBrightness(float par1) @@ -230,7 +230,7 @@ { float var2 = this.getCelestialAngle(par1); float var3 = 1.0F - (MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.25F); -@@ -1945,7 +2030,7 @@ +@@ -1947,7 +2032,7 @@ if (var8 != null) { @@ -239,7 +239,7 @@ } } } -@@ -1955,6 +2040,10 @@ +@@ -1957,6 +2042,10 @@ if (!this.entityRemoval.isEmpty()) { @@ -250,7 +250,7 @@ this.loadedTileEntityList.removeAll(this.entityRemoval); this.entityRemoval.clear(); } -@@ -1975,7 +2064,9 @@ +@@ -1977,7 +2066,9 @@ { this.loadedTileEntityList.add(var9); } @@ -261,7 +261,7 @@ if (this.chunkExists(var9.xCoord >> 4, var9.zCoord >> 4)) { Chunk var10 = this.getChunkFromChunkCoords(var9.xCoord >> 4, var9.zCoord >> 4); -@@ -1985,8 +2076,6 @@ +@@ -1987,8 +2078,6 @@ var10.setChunkBlockTileEntity(var9.xCoord & 15, var9.yCoord, var9.zCoord & 15, var9); } } @@ -270,7 +270,7 @@ } } -@@ -1999,13 +2088,13 @@ +@@ -2001,13 +2090,13 @@ public void addTileEntity(Collection par1Collection) { @@ -291,7 +291,7 @@ } } -@@ -2025,9 +2114,17 @@ +@@ -2027,9 +2116,17 @@ { int var3 = MathHelper.floor_double(par1Entity.posX); int var4 = MathHelper.floor_double(par1Entity.posZ); @@ -312,7 +312,7 @@ { par1Entity.lastTickPosX = par1Entity.posX; par1Entity.lastTickPosY = par1Entity.posY; -@@ -2262,6 +2359,14 @@ +@@ -2264,6 +2361,14 @@ { return true; } @@ -327,7 +327,7 @@ } } } -@@ -2569,25 +2674,21 @@ +@@ -2571,25 +2676,21 @@ */ public void setBlockTileEntity(int par1, int par2, int par3, TileEntity par4TileEntity) { @@ -368,7 +368,7 @@ } } -@@ -2596,27 +2697,10 @@ +@@ -2598,27 +2699,10 @@ */ public void removeBlockTileEntity(int par1, int par2, int par3) { @@ -400,7 +400,7 @@ } } -@@ -2642,7 +2726,8 @@ +@@ -2644,7 +2728,8 @@ */ public boolean isBlockNormalCube(int par1, int par2, int par3) { @@ -410,7 +410,7 @@ } /** -@@ -2650,8 +2735,7 @@ +@@ -2652,8 +2737,7 @@ */ public boolean doesBlockHaveSolidTopSurface(int par1, int par2, int par3) { @@ -420,7 +420,7 @@ } /** -@@ -2667,7 +2751,7 @@ +@@ -2669,7 +2753,7 @@ if (var5 != null && !var5.isEmpty()) { Block var6 = Block.blocksList[this.getBlockId(par1, par2, par3)]; @@ -429,7 +429,7 @@ } else { -@@ -2698,8 +2782,7 @@ +@@ -2700,8 +2784,7 @@ */ public void setAllowedSpawnTypes(boolean par1, boolean par2) { @@ -439,7 +439,7 @@ } /** -@@ -2715,6 +2798,11 @@ +@@ -2717,6 +2800,11 @@ */ private void calculateInitialWeather() { @@ -451,7 +451,7 @@ if (this.worldInfo.isRaining()) { this.rainingStrength = 1.0F; -@@ -2730,6 +2818,11 @@ +@@ -2732,6 +2820,11 @@ * Updates all weather states. */ protected void updateWeather() @@ -463,7 +463,7 @@ { if (!this.provider.hasNoSky) { -@@ -2832,12 +2925,14 @@ +@@ -2834,12 +2927,14 @@ public void toggleRain() { @@ -479,7 +479,7 @@ this.theProfiler.startSection("buildList"); int var1; EntityPlayer var2; -@@ -2944,6 +3039,11 @@ +@@ -2946,6 +3041,11 @@ */ public boolean canBlockFreeze(int par1, int par2, int par3, boolean par4) { @@ -491,7 +491,7 @@ BiomeGenBase var5 = this.getBiomeGenForCoords(par1, par3); float var6 = var5.getFloatTemperature(); -@@ -3001,6 +3101,11 @@ +@@ -3003,6 +3103,11 @@ * Tests whether or not snow can be placed at a given location */ public boolean canSnowAt(int par1, int par2, int par3) @@ -503,7 +503,7 @@ { BiomeGenBase var4 = this.getBiomeGenForCoords(par1, par3); float var5 = var4.getFloatTemperature(); -@@ -3094,7 +3199,7 @@ +@@ -3096,7 +3201,7 @@ 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 var9 = this.getSavedLightValue(EnumSkyBlock.Block, par2 + 1, par3, par4) - par6; int var10 = this.getSavedLightValue(EnumSkyBlock.Block, par2, par3 - 1, par4) - par6; -@@ -3229,7 +3334,7 @@ +@@ -3231,7 +3336,7 @@ int var21 = var24 + (var18 / 2 + 1) % 3 / 2 * var19; int var22 = var12 + (var18 / 2 + 2) % 3 / 2 * var19; var14 = this.getSavedLightValue(par1EnumSkyBlock, var20, var21, var22); @@ -521,7 +521,7 @@ if (var23 == 0) { -@@ -3260,7 +3365,7 @@ +@@ -3262,7 +3367,7 @@ var12 = (var9 >> 12 & 63) - 32 + par4; var13 = this.getSavedLightValue(par1EnumSkyBlock, var10, var24, var12); var14 = this.getBlockId(var10, var24, var12); @@ -530,7 +530,7 @@ if (var15 == 0) { -@@ -3362,10 +3467,10 @@ +@@ -3364,10 +3469,10 @@ public List getEntitiesWithinAABBExcludingEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB) { this.entitiesWithinAABBExcludingEntity.clear(); @@ -545,7 +545,7 @@ for (int var7 = var3; var7 <= var4; ++var7) { -@@ -3391,10 +3496,10 @@ +@@ -3393,10 +3498,10 @@ public List func_82733_a(Class par1Class, AxisAlignedBB par2AxisAlignedBB, IEntitySelector par3IEntitySelector) { @@ -560,7 +560,7 @@ ArrayList var8 = new ArrayList(); for (int var9 = var4; var9 <= var5; ++var9) -@@ -3488,11 +3593,14 @@ +@@ -3490,11 +3595,14 @@ */ public void addLoadedEntities(List par1List) { @@ -578,7 +578,7 @@ } } -@@ -3526,6 +3634,11 @@ +@@ -3528,6 +3636,11 @@ else { 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; } -@@ -3743,7 +3856,7 @@ +@@ -3745,7 +3858,7 @@ */ public long getSeed() { @@ -598,8 +598,8 @@ + return provider.getSeed(); } - public long func_82737_E() -@@ -3753,7 +3866,7 @@ + public long getTotalWorldTime() +@@ -3755,7 +3868,7 @@ public long getWorldTime() { @@ -608,7 +608,7 @@ } /** -@@ -3761,7 +3874,7 @@ +@@ -3763,7 +3876,7 @@ */ public void setWorldTime(long par1) { @@ -617,7 +617,7 @@ } /** -@@ -3769,13 +3882,13 @@ +@@ -3771,13 +3884,13 @@ */ public ChunkCoordinates getSpawnPoint() { @@ -633,7 +633,7 @@ } @SideOnly(Side.CLIENT) -@@ -3799,7 +3912,10 @@ +@@ -3801,7 +3914,10 @@ if (!this.loadedEntityList.contains(par1Entity)) { @@ -645,7 +645,7 @@ } } -@@ -3807,6 +3923,11 @@ +@@ -3809,6 +3925,11 @@ * 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) @@ -657,7 +657,7 @@ { return true; } -@@ -3924,8 +4045,7 @@ +@@ -3929,8 +4050,7 @@ */ public boolean isBlockHighHumidity(int par1, int par2, int par3) { @@ -667,7 +667,7 @@ } /** -@@ -3987,7 +4107,7 @@ +@@ -3992,7 +4112,7 @@ */ public int getHeight() { @@ -676,7 +676,7 @@ } /** -@@ -3995,7 +4115,7 @@ +@@ -4000,7 +4120,7 @@ */ public int getActualHeight() { @@ -685,7 +685,7 @@ } public IUpdatePlayerListBox func_82735_a(EntityMinecart par1EntityMinecart) -@@ -4038,7 +4158,7 @@ +@@ -4043,7 +4163,7 @@ */ public double getHorizon() { @@ -694,9 +694,9 @@ } /** -@@ -4077,4 +4197,75 @@ - this.field_83016_L.setTimeInMillis(System.currentTimeMillis()); - return this.field_83016_L; +@@ -4088,4 +4208,75 @@ + this.theCalendar.setTimeInMillis(System.currentTimeMillis()); + return this.theCalendar; } + + /** diff --git a/patches/common/net/minecraft/src/WorldServer.java.patch b/patches/common/net/minecraft/src/WorldServer.java.patch index e05a12c360..2c0f1755b9 100644 --- a/patches/common/net/minecraft/src/WorldServer.java.patch +++ b/patches/common/net/minecraft/src/WorldServer.java.patch @@ -177,7 +177,7 @@ } - return var6 > 16 || this.mcServer.getConfigurationManager().areCommandsAllowed(par1EntityPlayer.username) || this.mcServer.isSinglePlayer(); -+ return var6 > mcServer.func_82357_ak() || this.mcServer.getConfigurationManager().areCommandsAllowed(par1EntityPlayer.username) || this.mcServer.isSinglePlayer(); ++ return var6 > mcServer.getSpawnProtectionSize() || this.mcServer.getConfigurationManager().areCommandsAllowed(par1EntityPlayer.username) || this.mcServer.isSinglePlayer(); } protected void initialize(WorldSettings par1WorldSettings) diff --git a/patches/common/net/minecraft/src/WorldType.java.patch b/patches/common/net/minecraft/src/WorldType.java.patch index 2b00668f54..bf32925ce8 100644 --- a/patches/common/net/minecraft/src/WorldType.java.patch +++ b/patches/common/net/minecraft/src/WorldType.java.patch @@ -1,6 +1,6 @@ --- ../src_base/common/net/minecraft/src/WorldType.java +++ ../src_work/common/net/minecraft/src/WorldType.java -@@ -217,8 +217,19 @@ +@@ -219,8 +219,19 @@ { return this == FLAT ? random.nextInt(4) != 1 : false; } diff --git a/patches/minecraft/net/minecraft/client/Minecraft.java.patch b/patches/minecraft/net/minecraft/client/Minecraft.java.patch index e2ab1e9599..c50138473f 100644 --- a/patches/minecraft/net/minecraft/client/Minecraft.java.patch +++ b/patches/minecraft/net/minecraft/client/Minecraft.java.patch @@ -12,7 +12,7 @@ import org.lwjgl.Sys; @@ -1252,7 +1255,7 @@ - if (this.thePlayer.func_82246_f(var3, var4, var5)) + if (this.thePlayer.canCurrentToolHarvestBlock(var3, var4, var5)) { - this.effectRenderer.addBlockHitEffects(var3, var4, var5, this.objectMouseOver.sideHit); + this.effectRenderer.addBlockHitEffects(var3, var4, var5, this.objectMouseOver); @@ -107,7 +107,7 @@ - - if (var10.func_82335_i() == null) - { -- var2 = Item.field_82802_bI.shiftedIndex; +- var2 = Item.itemFrame.shiftedIndex; - } - else - { diff --git a/patches/minecraft/net/minecraft/src/EffectRenderer.java.patch b/patches/minecraft/net/minecraft/src/EffectRenderer.java.patch index 24c2f0b46e..ae059376e2 100644 --- a/patches/minecraft/net/minecraft/src/EffectRenderer.java.patch +++ b/patches/minecraft/net/minecraft/src/EffectRenderer.java.patch @@ -132,7 +132,7 @@ } } @@ -215,12 +267,60 @@ - var8 = (double)par1 + var6.func_83007_w() + (double)var7; + var8 = (double)par1 + var6.getBlockBoundsMaxX() + (double)var7; } - this.addEffect((new EntityDiggingFX(this.worldObj, var8, var10, var12, 0.0D, 0.0D, 0.0D, var6, par4, this.worldObj.getBlockMetadata(par1, par2, par3))).func_70596_a(par1, par2, par3).multiplyVelocity(0.2F).multipleParticleScaleBy(0.6F)); diff --git a/patches/minecraft/net/minecraft/src/GuiContainerCreative.java.patch b/patches/minecraft/net/minecraft/src/GuiContainerCreative.java.patch index 0a826251ef..414817541c 100644 --- a/patches/minecraft/net/minecraft/src/GuiContainerCreative.java.patch +++ b/patches/minecraft/net/minecraft/src/GuiContainerCreative.java.patch @@ -180,7 +180,7 @@ GL11.glEnable(GL12.GL_RESCALE_NORMAL); - ItemStack var10 = new ItemStack(par1CreativeTabs.getTabIconItem()); + ItemStack var10 = par1CreativeTabs.getIconItemStack(); - itemRenderer.func_82406_b(this.fontRenderer, this.mc.renderEngine, var10, var7, var8); + itemRenderer.renderItemAndEffectIntoGUI(this.fontRenderer, this.mc.renderEngine, var10, var7, var8); itemRenderer.renderItemOverlayIntoGUI(this.fontRenderer, this.mc.renderEngine, var10, var7, var8); GL11.glDisable(GL11.GL_LIGHTING); @@ -740,6 +812,15 @@ diff --git a/patches/minecraft/net/minecraft/src/ItemRenderer.java.patch b/patches/minecraft/net/minecraft/src/ItemRenderer.java.patch index a77c4e7538..ce4567009c 100644 --- a/patches/minecraft/net/minecraft/src/ItemRenderer.java.patch +++ b/patches/minecraft/net/minecraft/src/ItemRenderer.java.patch @@ -92,7 +92,7 @@ if (var17.getItem().requiresMultipleRenderPasses()) { this.renderItem(var3, var17, 0); -- int var25 = Item.itemsList[var17.itemID].func_82790_a(var17, 1); +- int var25 = Item.itemsList[var17.itemID].getColorFromItemStack(var17, 1); - var13 = (float)(var25 >> 16 & 255) / 255.0F; - var14 = (float)(var25 >> 8 & 255) / 255.0F; - var15 = (float)(var25 & 255) / 255.0F; @@ -100,7 +100,7 @@ - this.renderItem(var3, var17, 1); + for (int x = 1; x < var17.getItem().getRenderPasses(var17.getItemDamage()); x++) + { -+ int var25 = Item.itemsList[var17.itemID].func_82790_a(var17, x); ++ int var25 = Item.itemsList[var17.itemID].getColorFromItemStack(var17, x); + var13 = (float)(var25 >> 16 & 255) / 255.0F; + var14 = (float)(var25 >> 8 & 255) / 255.0F; + var15 = (float)(var25 & 255) / 255.0F; diff --git a/patches/minecraft/net/minecraft/src/PlayerControllerMP.java.patch b/patches/minecraft/net/minecraft/src/PlayerControllerMP.java.patch index 92ffebd67f..e554fb9748 100644 --- a/patches/minecraft/net/minecraft/src/PlayerControllerMP.java.patch +++ b/patches/minecraft/net/minecraft/src/PlayerControllerMP.java.patch @@ -20,7 +20,7 @@ + return false; + } + - if (this.currentGameType.func_82752_c() && !this.mc.thePlayer.func_82246_f(par1, par2, par3)) + if (this.currentGameType.isAdventure() && !this.mc.thePlayer.canCurrentToolHarvestBlock(par1, par2, par3)) { return false; @@ -121,7 +130,7 @@ diff --git a/patches/minecraft/net/minecraft/src/RenderBiped.java.patch b/patches/minecraft/net/minecraft/src/RenderBiped.java.patch index bedea491ac..7b4cfed7d1 100644 --- a/patches/minecraft/net/minecraft/src/RenderBiped.java.patch +++ b/patches/minecraft/net/minecraft/src/RenderBiped.java.patch @@ -12,16 +12,16 @@ @SideOnly(Side.CLIENT) public class RenderBiped extends RenderLiving -@@ -46,7 +51,7 @@ +@@ -48,7 +53,7 @@ if (var5 instanceof ItemArmor) { ItemArmor var6 = (ItemArmor)var5; -- this.loadTexture("/armor/" + field_82424_k[var6.renderIndex] + "_" + (par2 == 2 ? 2 : 1) + ".png"); -+ this.loadTexture(ForgeHooksClient.getArmorTexture(var4, "/armor/" + field_82424_k[var6.renderIndex] + "_" + (par2 == 2 ? 2 : 1) + ".png")); +- this.loadTexture("/armor/" + bipedArmorFilenamePrefix[var6.renderIndex] + "_" + (par2 == 2 ? 2 : 1) + ".png"); ++ this.loadTexture(ForgeHooksClient.getArmorTexture(var4, "/armor/" + bipedArmorFilenamePrefix[var6.renderIndex] + "_" + (par2 == 2 ? 2 : 1) + ".png")); ModelBiped var7 = par2 == 2 ? this.field_82425_h : this.field_82423_g; var7.bipedHead.showModel = par2 == 0; var7.bipedHeadwear.showModel = par2 == 0; -@@ -161,9 +166,12 @@ +@@ -163,9 +168,12 @@ GL11.glPushMatrix(); this.modelBipedMain.bipedHead.postRender(0.0625F); @@ -37,7 +37,7 @@ { var6 = 0.625F; GL11.glTranslatef(0.0F, -0.25F, 0.0F); -@@ -205,7 +213,10 @@ +@@ -207,7 +215,10 @@ this.modelBipedMain.bipedRightArm.postRender(0.0625F); GL11.glTranslatef(-0.0625F, 0.4375F, 0.0625F); @@ -49,7 +49,7 @@ { var6 = 0.5F; GL11.glTranslatef(0.0F, 0.1875F, -0.3125F); -@@ -252,7 +263,10 @@ +@@ -254,7 +265,10 @@ if (var4.getItem().requiresMultipleRenderPasses()) { diff --git a/patches/minecraft/net/minecraft/src/RenderBlocks.java.patch b/patches/minecraft/net/minecraft/src/RenderBlocks.java.patch index b753167a42..8b7a303563 100644 --- a/patches/minecraft/net/minecraft/src/RenderBlocks.java.patch +++ b/patches/minecraft/net/minecraft/src/RenderBlocks.java.patch @@ -9,7 +9,7 @@ import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; -@@ -553,9 +555,8 @@ +@@ -556,9 +558,8 @@ public boolean renderBlockBed(Block par1Block, int par2, int par3, int par4) { Tessellator var5 = Tessellator.instance; @@ -21,7 +21,7 @@ float var9 = 0.5F; float var10 = 1.0F; float var11 = 0.8F; -@@ -564,6 +565,7 @@ +@@ -567,6 +568,7 @@ var5.setBrightness(var25); var5.setColorOpaque_F(var9, var9, var9); int var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 0); @@ -29,7 +29,7 @@ int var28 = (var27 & 15) << 4; int var29 = var27 & 240; double var30 = (double)((float)var28 / 256.0F); -@@ -582,6 +584,7 @@ +@@ -585,6 +587,7 @@ var5.setBrightness(par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3 + 1, par4)); var5.setColorOpaque_F(var10, var10, var10); var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 1); @@ -37,7 +37,7 @@ var28 = (var27 & 15) << 4; var29 = var27 & 240; var30 = (double)((float)var28 / 256.0F); -@@ -2294,7 +2297,7 @@ +@@ -2297,7 +2300,7 @@ double var28; double var30; @@ -46,7 +46,7 @@ { float var36 = 0.2F; float var19 = 0.0625F; -@@ -2314,7 +2317,7 @@ +@@ -2317,7 +2320,7 @@ var9 = var20; } @@ -55,7 +55,7 @@ { var5.addVertexWithUV((double)((float)par2 + var36), (double)((float)par3 + var17 + var19), (double)(par4 + 1), var11, var13); var5.addVertexWithUV((double)(par2 + 0), (double)((float)(par3 + 0) + var19), (double)(par4 + 1), var11, var15); -@@ -2326,7 +2329,7 @@ +@@ -2329,7 +2332,7 @@ var5.addVertexWithUV((double)((float)par2 + var36), (double)((float)par3 + var17 + var19), (double)(par4 + 1), var11, var13); } @@ -64,7 +64,7 @@ { var5.addVertexWithUV((double)((float)(par2 + 1) - var36), (double)((float)par3 + var17 + var19), (double)(par4 + 0), var9, var13); var5.addVertexWithUV((double)(par2 + 1 - 0), (double)((float)(par3 + 0) + var19), (double)(par4 + 0), var9, var15); -@@ -2338,7 +2341,7 @@ +@@ -2341,7 +2344,7 @@ var5.addVertexWithUV((double)((float)(par2 + 1) - var36), (double)((float)par3 + var17 + var19), (double)(par4 + 0), var9, var13); } @@ -73,7 +73,7 @@ { var5.addVertexWithUV((double)(par2 + 0), (double)((float)par3 + var17 + var19), (double)((float)par4 + var36), var11, var13); var5.addVertexWithUV((double)(par2 + 0), (double)((float)(par3 + 0) + var19), (double)(par4 + 0), var11, var15); -@@ -2350,7 +2353,7 @@ +@@ -2353,7 +2356,7 @@ var5.addVertexWithUV((double)(par2 + 0), (double)((float)par3 + var17 + var19), (double)((float)par4 + var36), var11, var13); } @@ -82,7 +82,7 @@ { var5.addVertexWithUV((double)(par2 + 1), (double)((float)par3 + var17 + var19), (double)((float)(par4 + 1) - var36), var9, var13); var5.addVertexWithUV((double)(par2 + 1), (double)((float)(par3 + 0) + var19), (double)(par4 + 1 - 0), var9, var15); -@@ -2362,7 +2365,7 @@ +@@ -2365,7 +2368,7 @@ var5.addVertexWithUV((double)(par2 + 1), (double)((float)par3 + var17 + var19), (double)((float)(par4 + 1) - var36), var9, var13); } @@ -91,7 +91,7 @@ { var20 = (double)par2 + 0.5D + 0.5D; var22 = (double)par2 + 0.5D - 0.5D; -@@ -4550,7 +4553,7 @@ +@@ -4553,7 +4556,7 @@ var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2); this.renderEastFace(par1Block, (double)par2, (double)par3, (double)par4, var27); @@ -100,7 +100,7 @@ { this.colorRedTopLeft *= par5; this.colorRedBottomLeft *= par5; -@@ -4673,7 +4676,7 @@ +@@ -4676,7 +4679,7 @@ var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3); this.renderWestFace(par1Block, (double)par2, (double)par3, (double)par4, par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3)); @@ -109,7 +109,7 @@ { this.colorRedTopLeft *= par5; this.colorRedBottomLeft *= par5; -@@ -4796,7 +4799,7 @@ +@@ -4799,7 +4802,7 @@ var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4); this.renderNorthFace(par1Block, (double)par2, (double)par3, (double)par4, var27); @@ -118,7 +118,7 @@ { this.colorRedTopLeft *= par5; this.colorRedBottomLeft *= par5; -@@ -4919,7 +4922,7 @@ +@@ -4922,7 +4925,7 @@ var27 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5); this.renderSouthFace(par1Block, (double)par2, (double)par3, (double)par4, var27); @@ -127,7 +127,7 @@ { this.colorRedTopLeft *= par5; this.colorRedBottomLeft *= par5; -@@ -5031,7 +5034,7 @@ +@@ -5034,7 +5037,7 @@ var28 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2); this.renderEastFace(par1Block, (double)par2, (double)par3, (double)par4, var28); @@ -136,7 +136,7 @@ { var8.setColorOpaque_F(var18 * par5, var21 * par6, var24 * par7); this.renderEastFace(par1Block, (double)par2, (double)par3, (double)par4, 38); -@@ -5047,7 +5050,7 @@ +@@ -5050,7 +5053,7 @@ var28 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3); this.renderWestFace(par1Block, (double)par2, (double)par3, (double)par4, var28); @@ -145,7 +145,7 @@ { var8.setColorOpaque_F(var18 * par5, var21 * par6, var24 * par7); this.renderWestFace(par1Block, (double)par2, (double)par3, (double)par4, 38); -@@ -5063,7 +5066,7 @@ +@@ -5066,7 +5069,7 @@ var28 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4); this.renderNorthFace(par1Block, (double)par2, (double)par3, (double)par4, var28); @@ -154,7 +154,7 @@ { var8.setColorOpaque_F(var19 * par5, var22 * par6, var25 * par7); this.renderNorthFace(par1Block, (double)par2, (double)par3, (double)par4, 38); -@@ -5079,7 +5082,7 @@ +@@ -5082,7 +5085,7 @@ var28 = par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5); this.renderSouthFace(par1Block, (double)par2, (double)par3, (double)par4, var28); diff --git a/patches/minecraft/net/minecraft/src/RenderGlobal.java.patch b/patches/minecraft/net/minecraft/src/RenderGlobal.java.patch index bc1d8a35eb..1e8b2400d2 100644 --- a/patches/minecraft/net/minecraft/src/RenderGlobal.java.patch +++ b/patches/minecraft/net/minecraft/src/RenderGlobal.java.patch @@ -11,7 +11,7 @@ import org.lwjgl.opengl.ARBOcclusionQuery; import org.lwjgl.opengl.GL11; -@@ -891,6 +894,12 @@ +@@ -895,6 +898,12 @@ */ public void renderSky(float par1) { @@ -24,7 +24,7 @@ if (this.mc.theWorld.provider.dimensionId == 1) { GL11.glDisable(GL11.GL_FOG); -@@ -1556,6 +1565,11 @@ +@@ -1560,6 +1569,11 @@ public void drawBlockDamageTexture(Tessellator par1Tessellator, EntityPlayer par2EntityPlayer, float par3) { @@ -36,7 +36,7 @@ double var4 = par2EntityPlayer.lastTickPosX + (par2EntityPlayer.posX - par2EntityPlayer.lastTickPosX) * (double)par3; double var6 = par2EntityPlayer.lastTickPosY + (par2EntityPlayer.posY - par2EntityPlayer.lastTickPosY) * (double)par3; double var8 = par2EntityPlayer.lastTickPosZ + (par2EntityPlayer.posZ - par2EntityPlayer.lastTickPosZ) * (double)par3; -@@ -1811,6 +1825,7 @@ +@@ -1815,6 +1829,7 @@ double var17 = this.mc.renderViewEntity.posY - par4; double var19 = this.mc.renderViewEntity.posZ - par6; EntityFX var21 = null; @@ -44,7 +44,7 @@ if (par1Str.equals("hugeexplosion")) { -@@ -1943,6 +1958,7 @@ +@@ -1947,6 +1962,7 @@ else if (par1Str.equals("snowballpoof")) { var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.snowball); @@ -52,7 +52,7 @@ } else if (par1Str.equals("dripWater")) { -@@ -1959,6 +1975,7 @@ +@@ -1963,6 +1979,7 @@ else if (par1Str.equals("slime")) { var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, Item.slimeBall); @@ -60,7 +60,7 @@ } else if (par1Str.equals("heart")) { -@@ -1984,17 +2001,19 @@ +@@ -1988,17 +2005,19 @@ { var25 = Integer.parseInt(par1Str.substring(par1Str.indexOf("_") + 1)); var21 = new EntityBreakingFX(this.theWorld, par2, par4, par6, par8, par10, par12, Item.itemsList[var25]); diff --git a/patches/minecraft/net/minecraft/src/RenderItem.java.patch b/patches/minecraft/net/minecraft/src/RenderItem.java.patch index a0aeb7ba38..60e06230df 100644 --- a/patches/minecraft/net/minecraft/src/RenderItem.java.patch +++ b/patches/minecraft/net/minecraft/src/RenderItem.java.patch @@ -107,7 +107,7 @@ + for (var9 = 0; var9 < Item.itemsList[var6].getRenderPasses(var7); ++var9) { var10 = Item.itemsList[var6].getIconFromDamageForRenderPass(var7, var9); - int var11 = Item.itemsList[var6].func_82790_a(par3ItemStack, var9); + int var11 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, var9); @@ -285,14 +284,7 @@ { GL11.glDisable(GL11.GL_LIGHTING); @@ -122,9 +122,9 @@ - } + par2RenderEngine.bindTexture(par2RenderEngine.getTexture(par3ItemStack.getItem().getTextureFile())); - var9 = Item.itemsList[var6].func_82790_a(par3ItemStack, 0); + var9 = Item.itemsList[var6].getColorFromItemStack(par3ItemStack, 0); float var17 = (float)(var9 >> 16 & 255) / 255.0F; -@@ -316,7 +308,10 @@ +@@ -319,7 +311,10 @@ { if (par3ItemStack != null) { diff --git a/patches/minecraft/net/minecraft/src/RenderPlayer.java.patch b/patches/minecraft/net/minecraft/src/RenderPlayer.java.patch index 86e5d1364a..9211cf5797 100644 --- a/patches/minecraft/net/minecraft/src/RenderPlayer.java.patch +++ b/patches/minecraft/net/minecraft/src/RenderPlayer.java.patch @@ -84,5 +84,5 @@ - for (int var27 = 0; var27 <= 1; ++var27) + for (int var27 = 0; var27 < var21.getItem().getRenderPasses(var21.getItemDamage()); ++var27) { - int var26 = var21.getItem().func_82790_a(var21, var27); + int var26 = var21.getItem().getColorFromItemStack(var21, var27); float var28 = (float)(var26 >> 16 & 255) / 255.0F; diff --git a/patches/minecraft/net/minecraft/src/SoundManager.java.patch b/patches/minecraft/net/minecraft/src/SoundManager.java.patch index b211b92316..0a18c57e0e 100644 --- a/patches/minecraft/net/minecraft/src/SoundManager.java.patch +++ b/patches/minecraft/net/minecraft/src/SoundManager.java.patch @@ -10,7 +10,7 @@ import cpw.mods.fml.common.Side; import cpw.mods.fml.common.asm.SideOnly; import java.io.File; -@@ -44,9 +48,11 @@ +@@ -46,9 +50,11 @@ private Random rand = new Random(); private int ticksBeforeMusic; @@ -23,7 +23,7 @@ } /** -@@ -61,6 +67,8 @@ +@@ -63,6 +69,8 @@ { this.tryToSetLibraryAndCodecs(); } @@ -32,7 +32,7 @@ } /** -@@ -80,6 +88,8 @@ +@@ -82,6 +90,8 @@ SoundSystemConfig.setCodec("ogg", CodecJOrbis.class); SoundSystemConfig.setCodec("mus", CodecMus.class); SoundSystemConfig.setCodec("wav", CodecWav.class); @@ -41,7 +41,7 @@ sndSystem = new SoundSystem(); this.options.soundVolume = var1; this.options.musicVolume = var2; -@@ -168,10 +178,12 @@ +@@ -170,10 +180,12 @@ } SoundPoolEntry var1 = this.soundPoolMusic.getRandomSound(); @@ -55,7 +55,7 @@ sndSystem.backgroundMusic("BgMusic", var1.soundUrl, var1.soundName, false); sndSystem.setVolume("BgMusic", this.options.musicVolume); sndSystem.play("BgMusic"); -@@ -234,6 +246,7 @@ +@@ -239,6 +251,7 @@ if (par1Str != null) { SoundPoolEntry var6 = this.soundPoolStreaming.getRandomSoundFromSoundPool(par1Str); @@ -63,7 +63,7 @@ if (var6 != null) { -@@ -245,6 +258,7 @@ +@@ -250,6 +263,7 @@ float var7 = 16.0F; sndSystem.newStreamingSource(true, var5, var6.soundUrl, var6.soundName, false, par2, par3, par4, 2, var7 * 4.0F); sndSystem.setVolume(var5, 0.5F * this.options.soundVolume); @@ -71,7 +71,7 @@ sndSystem.play(var5); } } -@@ -399,6 +413,7 @@ +@@ -429,6 +443,7 @@ if (loaded && this.options.soundVolume != 0.0F) { SoundPoolEntry var7 = this.soundPoolSounds.getRandomSoundFromSoundPool(par1Str); @@ -79,7 +79,7 @@ if (var7 != null && par5 > 0.0F) { -@@ -420,6 +435,7 @@ +@@ -450,6 +465,7 @@ } sndSystem.setVolume(var8, par5 * this.options.soundVolume); @@ -87,7 +87,7 @@ sndSystem.play(var8); } } -@@ -434,6 +450,7 @@ +@@ -464,6 +480,7 @@ if (loaded && this.options.soundVolume != 0.0F) { SoundPoolEntry var4 = this.soundPoolSounds.getRandomSoundFromSoundPool(par1Str); @@ -95,7 +95,7 @@ if (var4 != null) { -@@ -449,6 +466,7 @@ +@@ -479,6 +496,7 @@ par2 *= 0.25F; sndSystem.setPitch(var5, par3); sndSystem.setVolume(var5, par2 * this.options.soundVolume);