diff --git a/client/net/minecraftforge/client/GuiIngameForge.java b/client/net/minecraftforge/client/GuiIngameForge.java index cbb83e496..2f1dca144 100644 --- a/client/net/minecraftforge/client/GuiIngameForge.java +++ b/client/net/minecraftforge/client/GuiIngameForge.java @@ -485,11 +485,11 @@ public class GuiIngameForge extends GuiIngame { mc.mcProfiler.startSection("toolHighlight"); - if (this.field_92017_k > 0 && this.field_92016_l != null) + if (this.remainingHighlightTicks > 0 && this.highlightingItemStack != null) { - String name = this.field_92016_l.getDisplayName(); + String name = this.highlightingItemStack.getDisplayName(); - int opacity = (int)((float)this.field_92017_k * 256.0F / 10.0F); + int opacity = (int)((float)this.remainingHighlightTicks * 256.0F / 10.0F); if (opacity > 255) opacity = 255; if (opacity > 0) @@ -500,7 +500,7 @@ public class GuiIngameForge extends GuiIngame GL11.glPushMatrix(); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - FontRenderer font = field_92016_l.getItem().getFontRenderer(field_92016_l); + FontRenderer font = highlightingItemStack.getItem().getFontRenderer(highlightingItemStack); if (font != null) { int x = (width - font.getStringWidth(name)) / 2; @@ -693,7 +693,7 @@ public class GuiIngameForge extends GuiIngame if (i < players.size()) { GuiPlayerInfo player = (GuiPlayerInfo)players.get(i); - ScorePlayerTeam team = mc.theWorld.getScoreboard().func_96509_i(player.name); + ScorePlayerTeam team = mc.theWorld.getScoreboard().getPlayersTeam(player.name); String displayName = ScorePlayerTeam.func_96667_a(team, player.name); fontrenderer.drawStringWithShadow(displayName, xPos, yPos, 16777215); diff --git a/common/forge_at.cfg b/common/forge_at.cfg index cdf8a89e8..847aa854c 100644 --- a/common/forge_at.cfg +++ b/common/forge_at.cfg @@ -1,11 +1,11 @@ #Main Forge Access Transformer configuration file # Tessellator -public-f bge.a #FD:Tessellator/field_78398_a #instance -public bge.u #FD:Tessellator/field_78409_u #drawMode -public bge.v #FD:Tessellator/field_78408_v #xOffset -public bge.w #FD:Tessellator/field_78407_w #yOffset -public bge.x #FD:Tessellator/field_78417_x #zOffset -public bge.z #FD:Tessellator/field_78415_z #isDrawing +public-f bgd.a #FD:Tessellator/field_78398_a #instance +public bgd.u #FD:Tessellator/field_78409_u #drawMode +public bgd.v #FD:Tessellator/field_78408_v #xOffset +public bgd.w #FD:Tessellator/field_78407_w #yOffset +public bgd.x #FD:Tessellator/field_78417_x #zOffset +public bgd.z #FD:Tessellator/field_78415_z #isDrawing # ItemPickaxe public wu.(ILwl;)V #MD:ItemPickaxe/(ILnet/minecraft/src/EnumToolMaterial;) #constructor public+f wu.c #FD:ItemPickaxe/field_77867_c #blocksEffectiveAgainst @@ -21,20 +21,20 @@ public vr.d #FD:ItemTool/field_77865_bY #damageVsEntity # EntityEnderman public rv.d #FD:EntityEnderman/field_70827_d #carriableBlocks # RenderEngine -public bgf.f(Ljava/lang/String;)I #MD:RenderEngine/func_78341_b #getTexture -public bgf.i #FD:RenderEngine/field_94154_l #terrainTextureMap -public bgf.j #FD:RenderEngine/field_94155_m #itemTextureMap +public bge.f(Ljava/lang/String;)I #MD:RenderEngine/func_78341_b #getTexture +public bge.i #FD:RenderEngine/field_94154_l #terrainTextureMap +public bge.j #FD:RenderEngine/field_94155_m #itemTextureMap # RenderGlobal -public bfz.h #FD:RenderGlobal/field_72769_h #theWorld -public bfz.i #FD:RenderGlobal/field_72770_i #renderEngine -public bfz.q #FD:RenderGlobal/field_72777_q #mc -public bfz.r #FD:RenderGlobal/field_72776_r #globalRenderBlocks -public bfz.E #FD:RenderGlobal/field_72738_E #damagedBlocks +public bfy.h #FD:RenderGlobal/field_72769_h #theWorld +public bfy.i #FD:RenderGlobal/field_72770_i #renderEngine +public bfy.q #FD:RenderGlobal/field_72777_q #mc +public bfy.r #FD:RenderGlobal/field_72776_r #globalRenderBlocks +public bfy.E #FD:RenderGlobal/field_72738_E #damagedBlocks # SoundManager -public bkd.a #FD:SoundManager/field_77381_a #sndSystem -public bkd.b #FD:SoundManager/field_77379_b #soundPoolSounds -public bkd.c #FD:SoundManager/field_77380_c #soundPoolStreaming -public bkd.d #FD:SoundManager/field_77377_d #soundPoolMusic +public bkc.a #FD:SoundManager/field_77381_a #sndSystem +public bkc.b #FD:SoundManager/field_77379_b #soundPoolSounds +public bkc.c #FD:SoundManager/field_77380_c #soundPoolStreaming +public bkc.d #FD:SoundManager/field_77377_d #soundPoolMusic # EntityMinecart protected ri.* #FD:EntityMinecart/* # All private -> protected # -- MISSING MAPPING public py.h()Z #MD:EntityMinecart/func_70490_h #isMinecartPowered @@ -71,7 +71,7 @@ public sq.a(Lrh;)V #MD:EntityPlayer/func_71012_a #joinEntityItemWithWorld public sq.h()V #MD:EntityPlayer/func_71053_j #closeScreen public sq.b #FD:EntityPlayer/field_71076_b #sleepTimer # EntityPlayerMP -public bdw.a(Lrh;)V #MD:EntityClientPlayerMP/func_71012_a #joinEntityItemWithWorld +public bdv.a(Lrh;)V #MD:EntityClientPlayerMP/func_71012_a #joinEntityItemWithWorld # World Gen Chests Related public lp.* #FD:WeightedRandomChestContent/* #all public iz.S #FD:WorldServer/field_73069_S #bonusChestContent @@ -130,15 +130,15 @@ public aab.n #FD:World/field_73004_o #rainingStrength public aab.p #FD:World/field_73017_q #thunderingStrength public aab.o #FD:World/field_73018_p #prevThunderingStrength #WorldClient -public bdt.b(Lmp;)V #MD:WorldClient/func_72847_b #releaseEntitySkin +public bds.b(Lmp;)V #MD:WorldClient/func_72847_b #releaseEntitySkin #WorldServer public iz.b(Lmp;)V #MD:WorldServer/func_72847_b #releaseEntitySkin public iz.N #FD:WorldServer/field_73068_P #allPlayersSleeping #TextureMap -public bis.a #FD:TextureMap/field_94255_a -public bis.b #FD:TextureMap/field_94253_b -public bis.c #FD:TextureMap/field_94254_c -public bis.d #FD:TextureMap/field_94251_d +public bir.a #FD:TextureMap/field_94255_a +public bir.b #FD:TextureMap/field_94253_b +public bir.c #FD:TextureMap/field_94254_c +public bir.d #FD:TextureMap/field_94251_d #Potion public mk.b(II)Lmk; #MD:Potion/func_76399_b #setIconIndex #PotionHelper diff --git a/fml b/fml index cf9b5b445..62fdbad74 160000 --- a/fml +++ b/fml @@ -1 +1 @@ -Subproject commit cf9b5b445ba284d389c7e32a03d9c8ef43469042 +Subproject commit 62fdbad74c2507d147ecab56f56029135d88c6f5 diff --git a/patches/minecraft/net/minecraft/block/Block.java.patch b/patches/minecraft/net/minecraft/block/Block.java.patch index 1371f54d0..a25186324 100644 --- a/patches/minecraft/net/minecraft/block/Block.java.patch +++ b/patches/minecraft/net/minecraft/block/Block.java.patch @@ -165,7 +165,7 @@ } /** -@@ -1439,4 +1460,944 @@ +@@ -1443,4 +1464,944 @@ canBlockGrass[0] = true; StatList.initBreakableStats(); } diff --git a/patches/minecraft/net/minecraft/block/BlockChest.java.patch b/patches/minecraft/net/minecraft/block/BlockChest.java.patch index 66b7b1c12..d37cf080c 100644 --- a/patches/minecraft/net/minecraft/block/BlockChest.java.patch +++ b/patches/minecraft/net/minecraft/block/BlockChest.java.patch @@ -9,7 +9,7 @@ public class BlockChest extends BlockContainer { private final Random random = new Random(); -@@ -442,7 +444,7 @@ +@@ -444,7 +446,7 @@ { return null; } @@ -18,7 +18,7 @@ { return null; } -@@ -450,19 +452,19 @@ +@@ -452,19 +454,19 @@ { return null; } diff --git a/patches/minecraft/net/minecraft/block/BlockPistonBase.java.patch b/patches/minecraft/net/minecraft/block/BlockPistonBase.java.patch index 0d596f8c5..22e2d2d05 100644 --- a/patches/minecraft/net/minecraft/block/BlockPistonBase.java.patch +++ b/patches/minecraft/net/minecraft/block/BlockPistonBase.java.patch @@ -1,6 +1,6 @@ --- ../src_base/minecraft/net/minecraft/block/BlockPistonBase.java +++ ../src_work/minecraft/net/minecraft/block/BlockPistonBase.java -@@ -431,7 +431,7 @@ +@@ -437,7 +437,7 @@ return false; } @@ -9,7 +9,7 @@ } } -@@ -449,7 +449,7 @@ +@@ -455,7 +455,7 @@ { if (l1 < 13) { @@ -18,7 +18,7 @@ { return false; } -@@ -499,7 +499,7 @@ +@@ -505,7 +505,7 @@ if (l1 < 13) { @@ -27,7 +27,7 @@ { return false; } -@@ -527,7 +527,9 @@ +@@ -533,7 +533,9 @@ continue; } diff --git a/patches/minecraft/net/minecraft/block/BlockSnow.java.patch b/patches/minecraft/net/minecraft/block/BlockSnow.java.patch index 5cdfec595..2057a746e 100644 --- a/patches/minecraft/net/minecraft/block/BlockSnow.java.patch +++ b/patches/minecraft/net/minecraft/block/BlockSnow.java.patch @@ -1,6 +1,6 @@ --- ../src_base/minecraft/net/minecraft/block/BlockSnow.java +++ ../src_work/minecraft/net/minecraft/block/BlockSnow.java -@@ -93,8 +93,12 @@ +@@ -96,8 +96,12 @@ */ public boolean canPlaceBlockAt(World par1World, int par2, int par3, int par4) { @@ -15,7 +15,7 @@ } /** -@@ -113,7 +117,6 @@ +@@ -116,7 +120,6 @@ { if (!this.canPlaceBlockAt(par1World, par2, par3, par4)) { @@ -23,7 +23,7 @@ par1World.setBlockToAir(par2, par3, par4); return false; } -@@ -129,11 +132,8 @@ +@@ -132,11 +135,8 @@ */ public void harvestBlock(World par1World, EntityPlayer par2EntityPlayer, int par3, int par4, int par5, int par6) { @@ -36,7 +36,7 @@ } /** -@@ -149,7 +149,7 @@ +@@ -152,7 +152,7 @@ */ public int quantityDropped(Random par1Random) { @@ -45,7 +45,7 @@ } /** -@@ -159,7 +159,6 @@ +@@ -162,7 +162,6 @@ { if (par1World.getSavedLightValue(EnumSkyBlock.Block, par2, par3, par4) > 11) { @@ -53,7 +53,7 @@ par1World.setBlockToAir(par2, par3, par4); } } -@@ -174,4 +173,10 @@ +@@ -177,4 +176,10 @@ { return par5 == 1 ? true : super.shouldSideBeRendered(par1IBlockAccess, par2, par3, par4, par5); } diff --git a/patches/minecraft/net/minecraft/client/Minecraft.java.patch b/patches/minecraft/net/minecraft/client/Minecraft.java.patch index 841a46da4..af12291d7 100644 --- a/patches/minecraft/net/minecraft/client/Minecraft.java.patch +++ b/patches/minecraft/net/minecraft/client/Minecraft.java.patch @@ -112,7 +112,7 @@ - } - - flag1 = Item.itemsList[j].getHasSubtypes(); -- int j1 = j < 256 && !Block.blocksList[block.blockID].func_82505_u_() ? j : block.blockID; +- int j1 = j < 256 && !Block.blocksList[block.blockID].isFlowerPot() ? j : block.blockID; - i = Block.blocksList[j1].getDamageValue(this.theWorld, k, l, i1); - } - else @@ -155,11 +155,11 @@ - } - else if (entityminecart.getMinecartType() == 3) - { -- j = Item.tntMinecart.itemID; +- j = Item.minecartTnt.itemID; - } - else if (entityminecart.getMinecartType() == 5) - { -- j = Item.hopperMinecart.itemID; +- j = Item.minecartHopper.itemID; - } - else - { diff --git a/patches/minecraft/net/minecraft/client/audio/SoundManager.java.patch b/patches/minecraft/net/minecraft/client/audio/SoundManager.java.patch index 50a91c5ce..aef9c3638 100644 --- a/patches/minecraft/net/minecraft/client/audio/SoundManager.java.patch +++ b/patches/minecraft/net/minecraft/client/audio/SoundManager.java.patch @@ -41,7 +41,7 @@ sndSystem = new SoundSystem(); this.options.soundVolume = f; this.options.musicVolume = f1; -@@ -177,10 +187,12 @@ +@@ -179,10 +189,12 @@ } SoundPoolEntry soundpoolentry = this.soundPoolMusic.getRandomSound(); @@ -55,7 +55,7 @@ sndSystem.backgroundMusic("BgMusic", soundpoolentry.soundUrl, soundpoolentry.soundName, false); sndSystem.setVolume("BgMusic", this.options.musicVolume); sndSystem.play("BgMusic"); -@@ -247,6 +259,7 @@ +@@ -249,6 +261,7 @@ if (par1Str != null) { SoundPoolEntry soundpoolentry = this.soundPoolStreaming.getRandomSoundFromSoundPool(par1Str); @@ -63,7 +63,7 @@ if (soundpoolentry != null) { -@@ -258,6 +271,7 @@ +@@ -260,6 +273,7 @@ float f3 = 16.0F; sndSystem.newStreamingSource(true, s1, soundpoolentry.soundUrl, soundpoolentry.soundName, false, par2, par3, par4, 2, f3 * 4.0F); sndSystem.setVolume(s1, 0.5F * this.options.soundVolume); @@ -71,7 +71,7 @@ sndSystem.play(s1); } } -@@ -437,6 +451,7 @@ +@@ -439,6 +453,7 @@ if (loaded && this.options.soundVolume != 0.0F) { SoundPoolEntry soundpoolentry = this.soundPoolSounds.getRandomSoundFromSoundPool(par1Str); @@ -79,7 +79,7 @@ if (soundpoolentry != null && par5 > 0.0F) { -@@ -458,6 +473,7 @@ +@@ -460,6 +475,7 @@ } sndSystem.setVolume(s1, par5 * this.options.soundVolume); @@ -87,7 +87,7 @@ sndSystem.play(s1); } } -@@ -472,6 +488,7 @@ +@@ -474,6 +490,7 @@ if (loaded && this.options.soundVolume != 0.0F) { SoundPoolEntry soundpoolentry = this.soundPoolSounds.getRandomSoundFromSoundPool(par1Str); @@ -95,7 +95,7 @@ if (soundpoolentry != null) { -@@ -487,6 +504,7 @@ +@@ -489,6 +506,7 @@ par2 *= 0.25F; sndSystem.setPitch(s1, par3); sndSystem.setVolume(s1, par2 * this.options.soundVolume); diff --git a/patches/minecraft/net/minecraft/client/gui/GuiControls.java.patch b/patches/minecraft/net/minecraft/client/gui/GuiControls.java.patch index 15351f39a..9e0a06085 100644 --- a/patches/minecraft/net/minecraft/client/gui/GuiControls.java.patch +++ b/patches/minecraft/net/minecraft/client/gui/GuiControls.java.patch @@ -9,22 +9,22 @@ @SideOnly(Side.CLIENT) public class GuiControls extends GuiScreen -@@ -24,6 +26,8 @@ +@@ -23,6 +25,8 @@ + /** The ID of the button that has been pressed. */ private int buttonId = -1; - -+ private GuiControlsScrollPanel scrollPane; + ++ private GuiControlsScrollPanel scrollPane; + public GuiControls(GuiScreen par1GuiScreen, GameSettings par2GameSettings) { - this.parentScreen = par1GuiScreen; -@@ -40,15 +44,10 @@ +@@ -43,15 +47,10 @@ */ public void initGui() { + scrollPane = new GuiControlsScrollPanel(this, options, mc); StringTranslate stringtranslate = StringTranslate.getInstance(); -- int i = this.func_73907_g(); +- int i = this.getLeftBorder(); - - for (int j = 0; j < this.options.keyBindings.length; ++j) - { @@ -37,7 +37,7 @@ this.screenTitle = stringtranslate.translateKey("controls.title"); } -@@ -56,20 +55,10 @@ +@@ -59,20 +58,10 @@ * Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e). */ protected void actionPerformed(GuiButton par1GuiButton) @@ -59,7 +59,7 @@ } } -@@ -78,17 +67,7 @@ +@@ -81,17 +70,7 @@ */ protected void mouseClicked(int par1, int par2, int par3) { @@ -78,7 +78,7 @@ } /** -@@ -96,14 +75,7 @@ +@@ -99,14 +78,7 @@ */ protected void keyTyped(char par1, int par2) { @@ -94,15 +94,15 @@ { super.keyTyped(par1, par2); } -@@ -115,6 +87,7 @@ +@@ -118,6 +90,7 @@ public void drawScreen(int par1, int par2, float par3) { this.drawDefaultBackground(); + /* Forge Start: Moved all rendering to GuiControlsScrollPanel this.drawCenteredString(this.fontRenderer, this.screenTitle, this.width / 2, 20, 16777215); - int k = this.func_73907_g(); + int k = this.getLeftBorder(); int l = 0; -@@ -155,6 +128,10 @@ +@@ -158,6 +131,10 @@ break; } } diff --git a/patches/minecraft/net/minecraft/client/gui/GuiIngame.java.patch b/patches/minecraft/net/minecraft/client/gui/GuiIngame.java.patch index 3f0d43e02..5490f7241 100644 --- a/patches/minecraft/net/minecraft/client/gui/GuiIngame.java.patch +++ b/patches/minecraft/net/minecraft/client/gui/GuiIngame.java.patch @@ -9,7 +9,7 @@ @SideOnly(Side.CLIENT) public class GuiIngame extends Gui { -@@ -86,9 +88,16 @@ +@@ -90,9 +92,16 @@ ItemStack itemstack = this.mc.thePlayer.inventory.armorItemInSlot(3); @@ -29,7 +29,7 @@ } if (!this.mc.thePlayer.isPotionActive(Potion.confusion)) -@@ -170,7 +179,7 @@ +@@ -174,7 +183,7 @@ k3 = l - 39; l2 = k3 - 10; @@ -38,12 +38,12 @@ i3 = -1; if (this.mc.thePlayer.isPotionActive(Potion.regeneration)) -@@ -431,7 +440,16 @@ +@@ -435,7 +444,16 @@ GL11.glPushMatrix(); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - fontrenderer.drawStringWithShadow(s1, i1, j1, 16777215 + (j5 << 24)); -+ FontRenderer font = field_92016_l.getItem().getFontRenderer(field_92016_l); ++ FontRenderer font = highlightingItemStack.getItem().getFontRenderer(highlightingItemStack); + if (font != null) + { + i1 = (k - font.getStringWidth(s1)) / 2; diff --git a/patches/minecraft/net/minecraft/entity/Entity.java.patch b/patches/minecraft/net/minecraft/entity/Entity.java.patch index 3e7fb7600..2ca66d9be 100644 --- a/patches/minecraft/net/minecraft/entity/Entity.java.patch +++ b/patches/minecraft/net/minecraft/entity/Entity.java.patch @@ -164,7 +164,7 @@ } public boolean func_96091_a(Explosion par1Explosion, World par2World, int par3, int par4, int par5, int par6, float par7) -@@ -2455,4 +2525,145 @@ +@@ -2458,4 +2528,145 @@ { return this.getEntityName(); } diff --git a/patches/minecraft/net/minecraft/entity/EntityLiving.java.patch b/patches/minecraft/net/minecraft/entity/EntityLiving.java.patch index 60065bb3c..1da589987 100644 --- a/patches/minecraft/net/minecraft/entity/EntityLiving.java.patch +++ b/patches/minecraft/net/minecraft/entity/EntityLiving.java.patch @@ -20,7 +20,7 @@ public abstract class EntityLiving extends Entity { /** -@@ -398,6 +404,7 @@ +@@ -400,6 +406,7 @@ public void setAttackTarget(EntityLiving par1EntityLiving) { this.attackTarget = par1EntityLiving; @@ -28,7 +28,7 @@ } /** -@@ -494,6 +501,7 @@ +@@ -496,6 +503,7 @@ { this.entityLivingToAttack = par1EntityLiving; this.revengeTimer = this.entityLivingToAttack != null ? 100 : 0; @@ -36,7 +36,7 @@ } protected void entityInit() -@@ -805,6 +813,11 @@ +@@ -807,6 +815,11 @@ */ public void onUpdate() { @@ -48,7 +48,7 @@ super.onUpdate(); if (!this.worldObj.isRemote) -@@ -990,6 +1003,11 @@ +@@ -992,6 +1005,11 @@ */ public boolean attackEntityFrom(DamageSource par1DamageSource, int par2) { @@ -60,7 +60,7 @@ if (this.isEntityInvulnerable()) { return false; -@@ -1227,6 +1245,11 @@ +@@ -1229,6 +1247,11 @@ { if (!this.isEntityInvulnerable()) { @@ -72,7 +72,7 @@ par2 = this.applyArmorCalculations(par1DamageSource, par2); par2 = this.applyPotionDamageCalculations(par1DamageSource, par2); int j = this.getHealth(); -@@ -1293,6 +1316,11 @@ +@@ -1295,6 +1318,11 @@ */ public void onDeath(DamageSource par1DamageSource) { @@ -84,7 +84,7 @@ Entity entity = par1DamageSource.getEntity(); EntityLiving entityliving = this.func_94060_bK(); -@@ -1317,6 +1345,10 @@ +@@ -1319,6 +1347,10 @@ i = EnchantmentHelper.getLootingModifier((EntityLiving)entity); } @@ -95,7 +95,7 @@ if (!this.isChild() && this.worldObj.getGameRules().getGameRuleBooleanValue("doMobLoot")) { this.dropFewItems(this.recentlyHit > 0, i); -@@ -1324,7 +1356,7 @@ +@@ -1326,7 +1358,7 @@ if (this.recentlyHit > 0) { @@ -104,7 +104,7 @@ if (j < 5) { -@@ -1332,6 +1364,16 @@ +@@ -1334,6 +1366,16 @@ } } } @@ -121,7 +121,7 @@ } this.worldObj.setEntityState(this, (byte)3); -@@ -1376,6 +1418,12 @@ +@@ -1378,6 +1420,12 @@ */ protected void fall(float par1) { @@ -134,7 +134,7 @@ super.fall(par1); int i = MathHelper.ceiling_float_int(par1 - 3.0F); -@@ -1578,7 +1626,7 @@ +@@ -1580,7 +1628,7 @@ int j = MathHelper.floor_double(this.boundingBox.minY); int k = MathHelper.floor_double(this.posZ); int l = this.worldObj.getBlockId(i, j, k); @@ -143,7 +143,7 @@ } /** -@@ -2000,6 +2048,7 @@ +@@ -2002,6 +2050,7 @@ } this.isAirBorne = true; @@ -151,7 +151,7 @@ } /** -@@ -2552,8 +2601,6 @@ +@@ -2554,8 +2603,6 @@ return this.getCreatureAttribute() == EnumCreatureAttribute.UNDEAD; } @@ -160,7 +160,7 @@ /** * Remove the speified potion effect from this entity. */ -@@ -2982,6 +3029,17 @@ +@@ -2984,6 +3031,17 @@ */ public void swingItem() { @@ -178,9 +178,9 @@ if (!this.isSwingInProgress || this.swingProgressInt >= this.getArmSwingAnimationEnd() / 2 || this.swingProgressInt < 0) { this.swingProgressInt = -1; -@@ -3077,4 +3135,42 @@ +@@ -3084,4 +3142,42 @@ { - this.canPickUpLoot = par1; + return this.persistenceRequired; } + + /*** diff --git a/patches/minecraft/net/minecraft/entity/item/EntityMinecart.java.patch b/patches/minecraft/net/minecraft/entity/item/EntityMinecart.java.patch index e76f90a02..3d3872d8a 100644 --- a/patches/minecraft/net/minecraft/entity/item/EntityMinecart.java.patch +++ b/patches/minecraft/net/minecraft/entity/item/EntityMinecart.java.patch @@ -370,7 +370,7 @@ + } + else if (this instanceof EntityMinecartTNT) + { -+ return new ItemStack(Item.tntMinecart); ++ return new ItemStack(Item.minecartTnt); + } + else if (this instanceof EntityMinecartFurnace) + { @@ -378,7 +378,7 @@ + } + else if (this instanceof EntityMinecartHopper) + { -+ return new ItemStack(Item.hopperMinecart); ++ return new ItemStack(Item.minecartHopper); + } + return new ItemStack(Item.minecartEmpty); + } diff --git a/patches/minecraft/net/minecraft/entity/item/EntityMinecartHopper.java.patch b/patches/minecraft/net/minecraft/entity/item/EntityMinecartHopper.java.patch index 33a2fe685..104f919c3 100644 --- a/patches/minecraft/net/minecraft/entity/item/EntityMinecartHopper.java.patch +++ b/patches/minecraft/net/minecraft/entity/item/EntityMinecartHopper.java.patch @@ -19,4 +19,4 @@ + } if (!this.worldObj.isRemote) { - par1EntityPlayer.func_96125_a(this); + par1EntityPlayer.displayGUIHopperMinecart(this); diff --git a/patches/minecraft/net/minecraft/entity/monster/EntityEnderman.java.patch b/patches/minecraft/net/minecraft/entity/monster/EntityEnderman.java.patch index 111c5c359..8c18e40a1 100644 --- a/patches/minecraft/net/minecraft/entity/monster/EntityEnderman.java.patch +++ b/patches/minecraft/net/minecraft/entity/monster/EntityEnderman.java.patch @@ -1,6 +1,6 @@ --- ../src_base/minecraft/net/minecraft/entity/monster/EntityEnderman.java +++ ../src_work/minecraft/net/minecraft/entity/monster/EntityEnderman.java -@@ -11,6 +11,8 @@ +@@ -12,6 +12,8 @@ import net.minecraft.util.MathHelper; import net.minecraft.util.Vec3; import net.minecraft.world.World; @@ -9,7 +9,7 @@ public class EntityEnderman extends EntityMob { -@@ -264,12 +266,17 @@ +@@ -275,12 +277,17 @@ */ protected boolean teleportTo(double par1, double par3, double par5) { @@ -30,7 +30,7 @@ boolean flag = false; int i = MathHelper.floor_double(this.posX); int j = MathHelper.floor_double(this.posY); -@@ -439,7 +446,7 @@ +@@ -457,7 +464,7 @@ } } diff --git a/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch b/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch index c25b511ea..e8603c6eb 100644 --- a/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch +++ b/patches/minecraft/net/minecraft/entity/player/EntityPlayer.java.patch @@ -365,7 +365,7 @@ if (this.itemInUse != null && par1ItemStack.itemID == Item.bow.itemID) @@ -1898,6 +2014,7 @@ - return Item.bow.func_94599_c(0); + return Item.bow.getItemIconForUseDuration(0); } } + icon = par1ItemStack.getItem().getIcon(par1ItemStack, par2, this, itemInUse, itemInUseCount); diff --git a/patches/minecraft/net/minecraft/entity/player/EntityPlayerMP.java.patch b/patches/minecraft/net/minecraft/entity/player/EntityPlayerMP.java.patch index 68ff0e08e..15a2607ed 100644 --- a/patches/minecraft/net/minecraft/entity/player/EntityPlayerMP.java.patch +++ b/patches/minecraft/net/minecraft/entity/player/EntityPlayerMP.java.patch @@ -33,7 +33,7 @@ this.mcServer = par1MinecraftServer; this.stepHeight = 0.0F; -@@ -271,7 +269,10 @@ +@@ -278,7 +276,10 @@ if (chunkcoordintpair != null && this.worldObj.blockExists(chunkcoordintpair.chunkXPos << 4, 0, chunkcoordintpair.chunkZPos << 4)) { arraylist.add(this.worldObj.getChunkFromChunkCoords(chunkcoordintpair.chunkXPos, chunkcoordintpair.chunkZPos)); @@ -45,7 +45,7 @@ } } -@@ -292,6 +293,7 @@ +@@ -299,6 +300,7 @@ { Chunk chunk = (Chunk)iterator2.next(); this.getServerForPlayer().getEntityTracker().func_85172_a(this, chunk); @@ -53,7 +53,7 @@ } } } -@@ -359,11 +361,29 @@ +@@ -366,11 +368,29 @@ */ public void onDeath(DamageSource par1DamageSource) { diff --git a/patches/minecraft/net/minecraft/item/ItemStack.java.patch b/patches/minecraft/net/minecraft/item/ItemStack.java.patch index 8ade3e633..c1bb3a572 100644 --- a/patches/minecraft/net/minecraft/item/ItemStack.java.patch +++ b/patches/minecraft/net/minecraft/item/ItemStack.java.patch @@ -49,8 +49,8 @@ + return this.getItem().getItemMaxDamageFromStack(this); } - public boolean func_96631_a(int par1, Random par2Random) -@@ -382,7 +377,7 @@ + /** +@@ -388,7 +383,7 @@ */ public int getDamageVsEntity(Entity par1Entity) { diff --git a/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch b/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch index 99ebe6f50..656c74ae2 100644 --- a/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch +++ b/patches/minecraft/net/minecraft/network/NetServerHandler.java.patch @@ -130,7 +130,7 @@ } + String old = s; - s = "<" + this.playerEntity.func_96090_ax() + "> " + s; + s = "<" + this.playerEntity.getTranslatedEntityName() + "> " + s; + ServerChatEvent event = new ServerChatEvent(this.playerEntity, old, s); + if (MinecraftForge.EVENT_BUS.post(event)) + { diff --git a/patches/minecraft/net/minecraft/potion/PotionEffect.java.patch b/patches/minecraft/net/minecraft/potion/PotionEffect.java.patch index aaef318d0..5504c8ee4 100644 --- a/patches/minecraft/net/minecraft/potion/PotionEffect.java.patch +++ b/patches/minecraft/net/minecraft/potion/PotionEffect.java.patch @@ -104,4 +104,4 @@ + } } - public boolean func_102028_d() + public boolean isSplashPotionEffect() diff --git a/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch b/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch index e14286265..51ef417c7 100644 --- a/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch +++ b/patches/minecraft/net/minecraft/server/MinecraftServer.java.patch @@ -29,7 +29,7 @@ private KeyPair serverKeyPair; /** Username of the server owner (for integrated servers) */ -@@ -209,8 +215,6 @@ +@@ -210,8 +216,6 @@ { this.convertMapIfNeeded(par1Str); this.setUserMessage("menu.loadingLevel"); @@ -38,7 +38,7 @@ ISaveHandler isavehandler = this.anvilConverterForAnvilFile.getSaveLoader(par1Str, true); WorldInfo worldinfo = isavehandler.loadWorldInfo(); WorldSettings worldsettings; -@@ -230,46 +234,23 @@ +@@ -231,46 +235,23 @@ worldsettings.enableBonusChest(); } @@ -96,7 +96,7 @@ this.setDifficultyForAllWorlds(this.getDifficulty()); this.initialWorldChunkLoad(); } -@@ -398,7 +379,14 @@ +@@ -399,7 +380,14 @@ for (int i = 0; i < this.worldServers.length; ++i) { WorldServer worldserver = this.worldServers[i]; @@ -111,7 +111,7 @@ } if (this.usageSnooper != null && this.usageSnooper.isSnooperRunning()) -@@ -622,13 +610,15 @@ +@@ -623,13 +611,15 @@ this.theProfiler.startSection("levels"); int i; @@ -132,7 +132,7 @@ this.theProfiler.startSection(worldserver.getWorldInfo().getWorldName()); this.theProfiler.startSection("pools"); worldserver.getWorldVec3Pool().clear(); -@@ -675,9 +665,11 @@ +@@ -676,9 +666,11 @@ this.theProfiler.endSection(); } @@ -147,7 +147,7 @@ this.theProfiler.endStartSection("connection"); this.getNetworkThread().networkTick(); this.theProfiler.endStartSection("players"); -@@ -731,7 +723,13 @@ +@@ -732,7 +724,13 @@ */ public WorldServer worldServerForDimension(int par1) { @@ -162,7 +162,7 @@ } @SideOnly(Side.SERVER) -@@ -1102,6 +1100,7 @@ +@@ -1103,6 +1101,7 @@ if (worldserver != null) { diff --git a/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch b/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch index c0b0fe4e1..24545aa78 100644 --- a/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch +++ b/patches/minecraft/net/minecraft/tileentity/TileEntityFurnace.java.patch @@ -75,7 +75,7 @@ { Block block = Block.blocksList[i]; -@@ -442,4 +448,50 @@ +@@ -451,4 +457,50 @@ { return par3 != 0 || par1 != 1 || par2ItemStack.itemID == Item.bucketEmpty.itemID; } diff --git a/patches/minecraft/net/minecraft/world/ChunkCache.java.patch b/patches/minecraft/net/minecraft/world/ChunkCache.java.patch index bff29d50b..964c526a6 100644 --- a/patches/minecraft/net/minecraft/world/ChunkCache.java.patch +++ b/patches/minecraft/net/minecraft/world/ChunkCache.java.patch @@ -36,7 +36,7 @@ public boolean doesBlockHaveSolidTopSurface(int par1, int par2, int par3) { - Block block = Block.blocksList[this.getBlockId(par1, par2, par3)]; -- return this.worldObj.func_102026_a(block, this.getBlockMetadata(par1, par2, par3)); +- return this.worldObj.isBlockTopFacingSurfaceSolid(block, this.getBlockMetadata(par1, par2, par3)); + return this.worldObj.doesBlockHaveSolidTopSurface(par1, par2, par3); } diff --git a/patches/minecraft/net/minecraft/world/World.java.patch b/patches/minecraft/net/minecraft/world/World.java.patch index 8e12d5b93..4b1b31026 100644 --- a/patches/minecraft/net/minecraft/world/World.java.patch +++ b/patches/minecraft/net/minecraft/world/World.java.patch @@ -7,7 +7,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.ArrayList; -@@ -51,8 +52,32 @@ +@@ -52,8 +53,32 @@ import net.minecraft.world.storage.MapStorage; import net.minecraft.world.storage.WorldInfo; @@ -40,7 +40,7 @@ /** * boolean; if true updates scheduled by scheduleBlockUpdate happen immediately */ -@@ -164,6 +189,11 @@ +@@ -165,6 +190,11 @@ * Gets the biome for a given set of x/z coordinates */ public BiomeGenBase getBiomeGenForCoords(int par1, int par2) @@ -52,7 +52,7 @@ { if (this.blockExists(par1, 0, par2)) { -@@ -193,8 +223,14 @@ +@@ -194,8 +224,14 @@ this.theProfiler = par5Profiler; this.worldInfo = new WorldInfo(par4WorldSettings, par2Str); this.provider = par3WorldProvider; @@ -68,7 +68,7 @@ VillageCollection villagecollection = (VillageCollection)this.mapStorage.loadData(VillageCollection.class, "villages"); if (villagecollection == null) -@@ -208,7 +244,7 @@ +@@ -209,7 +245,7 @@ this.villageCollectionObj.func_82566_a(this); } @@ -77,7 +77,7 @@ this.chunkProvider = this.createChunkProvider(); this.calculateInitialSkylight(); this.calculateInitialWeather(); -@@ -221,7 +257,7 @@ +@@ -222,7 +258,7 @@ this.isRemote = false; this.saveHandler = par1ISaveHandler; this.theProfiler = par5Profiler; @@ -86,7 +86,7 @@ this.worldLogAgent = par6ILogAgent; this.worldInfo = par1ISaveHandler.loadWorldInfo(); -@@ -275,12 +311,20 @@ +@@ -276,12 +312,20 @@ this.worldInfo.setServerInitialized(true); } @@ -109,7 +109,7 @@ } else { -@@ -290,6 +334,19 @@ +@@ -291,6 +335,19 @@ this.calculateInitialSkylight(); this.calculateInitialWeather(); @@ -129,7 +129,7 @@ } /** -@@ -373,7 +430,8 @@ +@@ -374,7 +431,8 @@ */ public boolean isAirBlock(int par1, int par2, int par3) { @@ -139,7 +139,7 @@ } /** -@@ -382,7 +440,8 @@ +@@ -383,7 +441,8 @@ public boolean blockHasTileEntity(int par1, int par2, int par3) { int l = this.getBlockId(par1, par2, par3); @@ -149,7 +149,7 @@ } /** -@@ -1157,7 +1216,7 @@ +@@ -1158,7 +1217,7 @@ */ public boolean isDaytime() { @@ -158,7 +158,7 @@ } /** -@@ -1189,7 +1248,7 @@ +@@ -1190,7 +1249,7 @@ int l1 = this.getBlockMetadata(l, i1, j1); Block block = Block.blocksList[k1]; @@ -167,7 +167,7 @@ { MovingObjectPosition movingobjectposition = block.collisionRayTrace(this, l, i1, j1, par1Vec3, par2Vec3); -@@ -1389,6 +1448,12 @@ +@@ -1390,6 +1449,12 @@ */ public void playSoundAtEntity(Entity par1Entity, String par2Str, float par3, float par4) { @@ -180,7 +180,7 @@ if (par1Entity != null && par2Str != null) { for (int i = 0; i < this.worldAccesses.size(); ++i) -@@ -1403,6 +1468,12 @@ +@@ -1404,6 +1469,12 @@ */ public void playSoundToNearExcept(EntityPlayer par1EntityPlayer, String par2Str, float par3, float par4) { @@ -193,7 +193,7 @@ if (par1EntityPlayer != null && par2Str != null) { for (int i = 0; i < this.worldAccesses.size(); ++i) -@@ -1489,6 +1560,11 @@ +@@ -1490,6 +1561,11 @@ EntityPlayer entityplayer = (EntityPlayer)par1Entity; this.playerEntities.add(entityplayer); this.updateAllPlayersSleepingFlag(); @@ -205,7 +205,7 @@ } this.getChunkFromChunkCoords(i, j).addEntity(par1Entity); -@@ -1735,6 +1811,12 @@ +@@ -1736,6 +1812,12 @@ * Calculates the color for the skybox */ public Vec3 getSkyColor(Entity par1Entity, float par2) @@ -218,7 +218,7 @@ { float f1 = this.getCelestialAngle(par2); float f2 = MathHelper.cos(f1 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; -@@ -1827,6 +1909,12 @@ +@@ -1828,6 +1910,12 @@ @SideOnly(Side.CLIENT) public Vec3 getCloudColour(float par1) { @@ -231,7 +231,7 @@ float f1 = this.getCelestialAngle(par1); float f2 = MathHelper.cos(f1 * (float)Math.PI * 2.0F) * 2.0F + 0.5F; -@@ -1905,7 +1993,7 @@ +@@ -1906,7 +1994,7 @@ { int l = chunk.getBlockID(par1, k, par2); @@ -240,7 +240,7 @@ { return k + 1; } -@@ -1920,6 +2008,12 @@ +@@ -1921,6 +2009,12 @@ * How bright are stars in the sky */ public float getStarBrightness(float par1) @@ -253,7 +253,7 @@ { float f1 = this.getCelestialAngle(par1); float f2 = 1.0F - (MathHelper.cos(f1 * (float)Math.PI * 2.0F) * 2.0F + 0.25F); -@@ -1984,7 +2078,15 @@ +@@ -1985,7 +2079,15 @@ entity.func_85029_a(crashreportcategory); } @@ -270,7 +270,7 @@ } if (entity.isDead) -@@ -2046,7 +2148,16 @@ +@@ -2047,7 +2149,16 @@ crashreport = CrashReport.makeCrashReport(throwable1, "Ticking entity"); crashreportcategory = crashreport.makeCategory("Entity being ticked"); entity.func_85029_a(crashreportcategory); @@ -288,7 +288,7 @@ } } -@@ -2089,7 +2200,16 @@ +@@ -2090,7 +2201,16 @@ crashreport = CrashReport.makeCrashReport(throwable2, "Ticking tile entity"); crashreportcategory = crashreport.makeCategory("Tile entity being ticked"); tileentity.func_85027_a(crashreportcategory); @@ -306,7 +306,7 @@ } } -@@ -2103,7 +2223,7 @@ +@@ -2104,7 +2224,7 @@ if (chunk != null) { @@ -315,7 +315,7 @@ } } } -@@ -2112,6 +2232,10 @@ +@@ -2113,6 +2233,10 @@ if (!this.entityRemoval.isEmpty()) { @@ -326,7 +326,7 @@ this.loadedTileEntityList.removeAll(this.entityRemoval); this.entityRemoval.clear(); } -@@ -2132,18 +2256,18 @@ +@@ -2133,18 +2257,18 @@ { this.loadedTileEntityList.add(tileentity1); } @@ -349,7 +349,7 @@ } } -@@ -2156,13 +2280,13 @@ +@@ -2157,13 +2281,13 @@ public void addTileEntity(Collection par1Collection) { @@ -370,7 +370,7 @@ } } -@@ -2182,9 +2306,17 @@ +@@ -2183,9 +2307,17 @@ { int i = MathHelper.floor_double(par1Entity.posX); int j = MathHelper.floor_double(par1Entity.posZ); @@ -391,7 +391,7 @@ { par1Entity.lastTickPosX = par1Entity.posX; par1Entity.lastTickPosY = par1Entity.posY; -@@ -2417,6 +2549,14 @@ +@@ -2418,6 +2550,14 @@ { return true; } @@ -406,7 +406,7 @@ } } } -@@ -2739,15 +2879,16 @@ +@@ -2740,15 +2880,16 @@ */ public void setBlockTileEntity(int par1, int par2, int par3, TileEntity par4TileEntity) { @@ -432,7 +432,7 @@ while (iterator.hasNext()) { TileEntity tileentity1 = (TileEntity)iterator.next(); -@@ -2758,19 +2899,18 @@ +@@ -2759,19 +2900,18 @@ iterator.remove(); } } @@ -461,7 +461,7 @@ } } -@@ -2779,27 +2919,10 @@ +@@ -2780,27 +2920,10 @@ */ public void removeBlockTileEntity(int par1, int par2, int par3) { @@ -493,7 +493,7 @@ } } -@@ -2825,7 +2948,8 @@ +@@ -2826,7 +2949,8 @@ */ public boolean isBlockNormalCube(int par1, int par2, int par3) { @@ -503,25 +503,27 @@ } public boolean func_85174_u(int par1, int par2, int par3) -@@ -2848,12 +2972,13 @@ +@@ -2849,16 +2973,17 @@ */ public boolean doesBlockHaveSolidTopSurface(int par1, int par2, int par3) { - Block block = Block.blocksList[this.getBlockId(par1, par2, par3)]; -- return this.func_102026_a(block, this.getBlockMetadata(par1, par2, par3)); -- } -- +- return this.isBlockTopFacingSurfaceSolid(block, this.getBlockMetadata(par1, par2, par3)); + return isBlockSolidOnSide(par1, par2, par3, ForgeDirection.UP); -+ } -+ + } + + /** + * Performs check to see if the block is a normal, solid block, or if the metadata of the block indicates that its + * facing puts its solid side upwards. (inverted stairs, for example) + */ + @Deprecated //DO NOT USE THIS!!! USE doesBlockHaveSolidTopSurface - public boolean func_102026_a(Block par1Block, int par2) + public boolean isBlockTopFacingSurfaceSolid(Block par1Block, int par2) { + // -.- Mojang PLEASE make this location sensitive, you have no reason not to. return par1Block == null ? false : (par1Block.blockMaterial.isOpaque() && par1Block.renderAsNormalBlock() ? true : (par1Block instanceof BlockStairs ? (par2 & 4) == 4 : (par1Block instanceof BlockHalfSlab ? (par2 & 8) == 8 : (par1Block instanceof BlockHopper ? true : (par1Block instanceof BlockSnow ? (par2 & 7) == 7 : false))))); } -@@ -2870,7 +2995,7 @@ +@@ -2875,7 +3000,7 @@ if (chunk != null && !chunk.isEmpty()) { Block block = Block.blocksList[this.getBlockId(par1, par2, par3)]; @@ -530,7 +532,7 @@ } else { -@@ -2901,8 +3026,7 @@ +@@ -2906,8 +3031,7 @@ */ public void setAllowedSpawnTypes(boolean par1, boolean par2) { @@ -540,7 +542,7 @@ } /** -@@ -2918,6 +3042,11 @@ +@@ -2923,6 +3047,11 @@ */ private void calculateInitialWeather() { @@ -552,7 +554,7 @@ if (this.worldInfo.isRaining()) { this.rainingStrength = 1.0F; -@@ -2933,6 +3062,11 @@ +@@ -2938,6 +3067,11 @@ * Updates all weather states. */ protected void updateWeather() @@ -564,7 +566,7 @@ { if (!this.provider.hasNoSky) { -@@ -3030,12 +3164,14 @@ +@@ -3035,12 +3169,14 @@ public void toggleRain() { @@ -580,7 +582,7 @@ this.theProfiler.startSection("buildList"); int i; EntityPlayer entityplayer; -@@ -3142,6 +3278,11 @@ +@@ -3147,6 +3283,11 @@ */ public boolean canBlockFreeze(int par1, int par2, int par3, boolean par4) { @@ -592,7 +594,7 @@ BiomeGenBase biomegenbase = this.getBiomeGenForCoords(par1, par3); float f = biomegenbase.getFloatTemperature(); -@@ -3200,6 +3341,11 @@ +@@ -3205,6 +3346,11 @@ */ public boolean canSnowAt(int par1, int par2, int par3) { @@ -604,7 +606,7 @@ BiomeGenBase biomegenbase = this.getBiomeGenForCoords(par1, par3); float f = biomegenbase.getFloatTemperature(); -@@ -3243,10 +3389,12 @@ +@@ -3248,10 +3394,12 @@ else { int l = this.getBlockId(par1, par2, par3); @@ -621,7 +623,7 @@ { j1 = 1; } -@@ -3342,7 +3490,9 @@ +@@ -3347,7 +3495,9 @@ int j4 = i2 + Facing.offsetsXForSide[i4]; int k4 = j2 + Facing.offsetsYForSide[i4]; int l4 = k2 + Facing.offsetsZForSide[i4]; @@ -632,7 +634,7 @@ i3 = this.getSavedLightValue(par1EnumSkyBlock, j4, k4, l4); if (i3 == l2 - i5 && i1 < this.lightUpdateBlockList.length) -@@ -3445,10 +3595,10 @@ +@@ -3450,10 +3600,10 @@ public List getEntitiesWithinAABBExcludingEntity(Entity par1Entity, AxisAlignedBB par2AxisAlignedBB, IEntitySelector par3IEntitySelector) { ArrayList arraylist = new ArrayList(); @@ -647,7 +649,7 @@ for (int i1 = i; i1 <= j; ++i1) { -@@ -3474,10 +3624,10 @@ +@@ -3479,10 +3629,10 @@ public List selectEntitiesWithinAABB(Class par1Class, AxisAlignedBB par2AxisAlignedBB, IEntitySelector par3IEntitySelector) { @@ -662,7 +664,7 @@ ArrayList arraylist = new ArrayList(); for (int i1 = i; i1 <= j; ++i1) -@@ -3570,11 +3720,14 @@ +@@ -3575,11 +3725,14 @@ */ public void addLoadedEntities(List par1List) { @@ -680,7 +682,7 @@ } } -@@ -3608,6 +3761,11 @@ +@@ -3613,6 +3766,11 @@ else { if (block != null && (block == Block.waterMoving || block == Block.waterStill || block == Block.lavaMoving || block == Block.lavaStill || block == Block.fire || block.blockMaterial.isReplaceable())) @@ -692,7 +694,7 @@ { block = null; } -@@ -3902,7 +4060,7 @@ +@@ -3907,7 +4065,7 @@ */ public long getSeed() { @@ -701,7 +703,7 @@ } public long getTotalWorldTime() -@@ -3912,7 +4070,7 @@ +@@ -3917,7 +4075,7 @@ public long getWorldTime() { @@ -710,7 +712,7 @@ } /** -@@ -3920,7 +4078,7 @@ +@@ -3925,7 +4083,7 @@ */ public void setWorldTime(long par1) { @@ -719,7 +721,7 @@ } /** -@@ -3928,13 +4086,13 @@ +@@ -3933,13 +4091,13 @@ */ public ChunkCoordinates getSpawnPoint() { @@ -735,7 +737,7 @@ } @SideOnly(Side.CLIENT) -@@ -3958,7 +4116,10 @@ +@@ -3963,7 +4121,10 @@ if (!this.loadedEntityList.contains(par1Entity)) { @@ -747,7 +749,7 @@ } } -@@ -3966,6 +4127,11 @@ +@@ -3971,6 +4132,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) @@ -759,7 +761,7 @@ { return true; } -@@ -4086,8 +4252,7 @@ +@@ -4091,8 +4257,7 @@ */ public boolean isBlockHighHumidity(int par1, int par2, int par3) { @@ -769,7 +771,7 @@ } /** -@@ -4162,7 +4327,7 @@ +@@ -4167,7 +4332,7 @@ */ public int getHeight() { @@ -778,7 +780,7 @@ } /** -@@ -4170,7 +4335,7 @@ +@@ -4175,7 +4340,7 @@ */ public int getActualHeight() { @@ -787,7 +789,7 @@ } public IUpdatePlayerListBox func_82735_a(EntityMinecart par1EntityMinecart) -@@ -4213,7 +4378,7 @@ +@@ -4218,7 +4383,7 @@ */ public double getHorizon() { @@ -796,7 +798,7 @@ } /** -@@ -4316,4 +4481,114 @@ +@@ -4321,4 +4486,114 @@ { return this.worldLogAgent; } diff --git a/patches/minecraft/net/minecraft/world/WorldServer.java.patch b/patches/minecraft/net/minecraft/world/WorldServer.java.patch index f7ef79490..dec806634 100644 --- a/patches/minecraft/net/minecraft/world/WorldServer.java.patch +++ b/patches/minecraft/net/minecraft/world/WorldServer.java.patch @@ -227,7 +227,7 @@ } } -@@ -860,6 +916,7 @@ +@@ -868,6 +924,7 @@ this.checkSessionLock(); this.saveHandler.saveWorldInfoWithPlayer(this.worldInfo, this.mcServer.getConfigurationManager().getHostPlayerData()); this.mapStorage.saveAllData(); @@ -235,7 +235,7 @@ } /** -@@ -1073,4 +1130,9 @@ +@@ -1081,4 +1138,9 @@ { return this.field_85177_Q; } diff --git a/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch b/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch index de73f61c4..0c8e3f71b 100644 --- a/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch +++ b/patches/minecraft/net/minecraft/world/chunk/storage/AnvilChunkLoader.java.patch @@ -22,6 +22,6 @@ nbttagcompound.setTag("Level", nbttagcompound1); this.writeChunkToNBT(par2Chunk, par1World, nbttagcompound1); + MinecraftForge.EVENT_BUS.post(new ChunkDataEvent.Save(par2Chunk, nbttagcompound)); - this.func_75824_a(par2Chunk.getChunkCoordIntPair(), nbttagcompound); + this.addChunkToPending(par2Chunk.getChunkCoordIntPair(), nbttagcompound); } catch (Exception exception) diff --git a/patches/minecraft/net/minecraft/world/gen/ChunkProviderServer.java.patch b/patches/minecraft/net/minecraft/world/gen/ChunkProviderServer.java.patch index fbfb81717..e78fc4e26 100644 --- a/patches/minecraft/net/minecraft/world/gen/ChunkProviderServer.java.patch +++ b/patches/minecraft/net/minecraft/world/gen/ChunkProviderServer.java.patch @@ -32,7 +32,7 @@ if (chunk == null) { -@@ -305,6 +312,11 @@ +@@ -303,6 +310,11 @@ { if (!this.worldObj.canNotSave) { @@ -44,7 +44,7 @@ for (int i = 0; i < 100; ++i) { if (!this.chunksToUnload.isEmpty()) -@@ -317,6 +329,11 @@ +@@ -315,6 +327,11 @@ this.chunksToUnload.remove(olong); this.loadedChunkHashMap.remove(olong.longValue()); this.loadedChunks.remove(chunk); diff --git a/patches/minecraft/net/minecraft/world/gen/layer/GenLayer.java.patch b/patches/minecraft/net/minecraft/world/gen/layer/GenLayer.java.patch index f2ba63132..24f4db9a9 100644 --- a/patches/minecraft/net/minecraft/world/gen/layer/GenLayer.java.patch +++ b/patches/minecraft/net/minecraft/world/gen/layer/GenLayer.java.patch @@ -16,7 +16,7 @@ } + b0 = getModdedBiomeSize(par2WorldType, b0); - GenLayer genlayer = GenLayerZoom.func_75915_a(1000L, genlayeraddmushroomisland, 0); + GenLayer genlayer = GenLayerZoom.magnify(1000L, genlayeraddmushroomisland, 0); GenLayerRiverInit genlayerriverinit = new GenLayerRiverInit(100L, genlayer); @@ -151,4 +155,11 @@ * amounts, or biomeList[] indices based on the particular GenLayer subclass.