Added the four new hooks from RedPower, and the TileEntity bugfix.

This commit is contained in:
Eloraam 2011-07-29 21:15:21 +00:00
parent 8c19143961
commit 7f0d588e62
9 changed files with 275 additions and 62 deletions

19
forge/build.sh Executable file
View file

@ -0,0 +1,19 @@
#!/bin/bash
pushd ..
rm -rf src
cp -a src_work src
rm -rf bin
popd
cp -a forge_client/src/net/* ../src/minecraft/net/
cp -a forge_common/net/* ../src/minecraft/net/
cp -a forge_common/net/* ../src/minecraft_server/net/
pushd ..
./recompile.sh

1
forge/client Symbolic link
View file

@ -0,0 +1 @@
forge_client/src/net/minecraft/src/forge/

1
forge/common Symbolic link
View file

@ -0,0 +1 @@
forge_common/net/minecraft/src/forge

View file

@ -49,8 +49,4 @@ public class MinecraftForgeClient {
.getTextureFile()));
}
}
public static void onGameStart() {
}
}

View file

@ -0,0 +1,6 @@
package net.minecraft.src.forge;
import net.minecraft.src.*;
public interface IConnectRedstone {
public boolean canConnectRedstone(IBlockAccess iba, int i, int j, int k, int dir);
}

View file

@ -0,0 +1,6 @@
package net.minecraft.src.forge;
import net.minecraft.src.*;
public interface IMultipassRender {
public boolean canRenderInPass(int n);
}

View file

@ -0,0 +1,7 @@
package net.minecraft.src.forge;
import net.minecraft.src.*;
public interface IOverrideReplace {
public boolean canReplaceBlock(World world, int i, int j, int k, int bid);
public boolean getReplacedSuccess();
}

View file

@ -0,0 +1,8 @@
package net.minecraft.src.forge;
import net.minecraft.src.*;
public interface IUseItemFirst {
public boolean onItemUseFirst(ItemStack ist,
EntityPlayer player, World world,
int i, int j, int k, int l);
}

View file

@ -1,26 +1,67 @@
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/client/Minecraft.java ../src_work/minecraft/net/minecraft/client/Minecraft.java
--- ../src_base/minecraft/net/minecraft/client/Minecraft.java 2011-07-19 22:35:38.532061000 +0200
+++ ../src_work/minecraft/net/minecraft/client/Minecraft.java 2011-07-19 22:36:21.976545900 +0200
@@ -8,6 +8,8 @@
import java.io.File;
import java.io.PrintStream;
import net.minecraft.src.*;
+import net.minecraft.src.forge.MinecraftForgeClient;
+
import org.lwjgl.LWJGLException;
import org.lwjgl.input.*;
import org.lwjgl.opengl.*;
@@ -177,6 +179,7 @@
renderGlobal = new RenderGlobal(this, renderEngine);
GL11.glViewport(0, 0, displayWidth, displayHeight);
effectRenderer = new EffectRenderer(theWorld, renderEngine);
+ MinecraftForgeClient.onGameStart();
try
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/BlockRedstoneWire.java ../src_work/minecraft/net/minecraft/src/BlockRedstoneWire.java
--- ../src_base/minecraft/net/minecraft/src/BlockRedstoneWire.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/BlockRedstoneWire.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import java.util.*;
@@ -451,6 +452,10 @@
{
return false;
}
+ if(Block.blocksList[i1] instanceof IConnectRedstone) {
+ IConnectRedstone icr=(IConnectRedstone)Block.blocksList[i1];
+ return icr.canConnectRedstone(iblockaccess,i,j,k,l);
+ }
if(Block.blocksList[i1].canProvidePower())
{
return true;
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/Chunk.java ../src_work/minecraft/net/minecraft/src/Chunk.java
--- ../src_base/minecraft/net/minecraft/src/Chunk.java 2011-07-29 16:35:26.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/Chunk.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import java.io.PrintStream;
import java.util.*;
@@ -249,6 +250,13 @@
}
int l1 = xPosition * 16 + i;
int i2 = zPosition * 16 + k;
+
+ if(Block.blocksList[k1] instanceof IOverrideReplace) {
+ IOverrideReplace iovr=(IOverrideReplace)Block.blocksList[k1];
+ if(!iovr.canReplaceBlock(worldObj,l1,j,i2,l))
+ return iovr.getReplacedSuccess();
+ }
+
blocks[i << 11 | k << 7 | j] = (byte)(byte0 & 0xff);
if(k1 != 0 && !worldObj.multiplayerWorld)
{
@@ -292,6 +300,13 @@
}
int k1 = xPosition * 16 + i;
int l1 = zPosition * 16 + k;
+
+ if(Block.blocksList[j1] instanceof IOverrideReplace) {
+ IOverrideReplace iovr=(IOverrideReplace)Block.blocksList[j1];
+ if(!iovr.canReplaceBlock(worldObj,k1,j,l1,l))
+ return iovr.getReplacedSuccess();
+ }
+
blocks[i << 11 | k << 7 | j] = (byte)(byte0 & 0xff);
if(j1 != 0)
{
downloadResourcesThread = new ThreadDownloadResources(mcDataDir, this);
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ChunkProviderGenerate.java ../src_work/minecraft/net/minecraft/src/ChunkProviderGenerate.java
--- ../src_base/minecraft/net/minecraft/src/ChunkProviderGenerate.java 2011-07-19 22:35:38.968086000 +0200
+++ ../src_work/minecraft/net/minecraft/src/ChunkProviderGenerate.java 2011-07-19 22:36:21.998547200 +0200
--- ../src_base/minecraft/net/minecraft/src/ChunkProviderGenerate.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/ChunkProviderGenerate.java 2011-07-29 16:41:55.000000000 -0400
@@ -6,6 +6,8 @@
import java.util.Random;
@ -40,8 +81,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ChunkProv
generatedTemperatures = worldObj.getWorldChunkManager().getTemperatures(generatedTemperatures, k + 8, l + 8, 16, 16);
for(int j19 = k + 8; j19 < k + 8 + 16; j19++)
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/EffectRenderer.java ../src_work/minecraft/net/minecraft/src/EffectRenderer.java
--- ../src_base/minecraft/net/minecraft/src/EffectRenderer.java 2011-07-19 22:35:39.064091500 +0200
+++ ../src_work/minecraft/net/minecraft/src/EffectRenderer.java 2011-07-19 22:36:22.004547500 +0200
--- ../src_base/minecraft/net/minecraft/src/EffectRenderer.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/EffectRenderer.java 2011-07-29 16:41:55.000000000 -0400
@@ -7,6 +7,9 @@
import java.util.*;
import org.lwjgl.opengl.GL11;
@ -185,8 +226,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/EffectRen
private Random rand;
}
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemBucket.java ../src_work/minecraft/net/minecraft/src/ItemBucket.java
--- ../src_base/minecraft/net/minecraft/src/ItemBucket.java 2011-07-19 22:35:39.911139000 +0200
+++ ../src_work/minecraft/net/minecraft/src/ItemBucket.java 2011-07-19 22:36:22.008547700 +0200
--- ../src_base/minecraft/net/minecraft/src/ItemBucket.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/ItemBucket.java 2011-07-29 16:41:55.000000000 -0400
@@ -6,6 +6,8 @@
import java.util.Random;
@ -211,8 +252,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemBucke
{
world.setBlockWithNotify(i, j, k, 0);
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemPickaxe.java ../src_work/minecraft/net/minecraft/src/ItemPickaxe.java
--- ../src_base/minecraft/net/minecraft/src/ItemPickaxe.java 2011-07-19 22:35:39.959142000 +0200
+++ ../src_work/minecraft/net/minecraft/src/ItemPickaxe.java 2011-07-29 19:44:18.990445200 +0200
--- ../src_base/minecraft/net/minecraft/src/ItemPickaxe.java 2011-07-29 16:35:26.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/ItemPickaxe.java 2011-07-29 16:41:55.000000000 -0400
@@ -4,6 +4,8 @@
package net.minecraft.src;
@ -233,8 +274,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemPicka
{
return true;
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemRenderer.java ../src_work/minecraft/net/minecraft/src/ItemRenderer.java
--- ../src_base/minecraft/net/minecraft/src/ItemRenderer.java 2011-07-19 22:35:39.984144100 +0200
+++ ../src_work/minecraft/net/minecraft/src/ItemRenderer.java 2011-07-19 22:36:22.013548000 +0200
--- ../src_base/minecraft/net/minecraft/src/ItemRenderer.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/ItemRenderer.java 2011-07-29 16:41:55.000000000 -0400
@@ -5,6 +5,8 @@
package net.minecraft.src;
@ -264,19 +305,17 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemRende
Tessellator tessellator = Tessellator.instance;
int i = entityliving.getItemIcon(itemstack);
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemTool.java ../src_work/minecraft/net/minecraft/src/ItemTool.java
--- ../src_base/minecraft/net/minecraft/src/ItemTool.java 2011-07-19 22:35:40.017146000 +0200
+++ ../src_work/minecraft/net/minecraft/src/ItemTool.java 2011-07-29 19:48:15.271959800 +0200
@@ -4,6 +4,9 @@
--- ../src_base/minecraft/net/minecraft/src/ItemTool.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/ItemTool.java 2011-07-29 17:06:13.000000000 -0400
@@ -4,6 +4,7 @@
package net.minecraft.src;
+import java.util.Arrays;
+import java.util.concurrent.ArrayBlockingQueue;
+
// Referenced classes of package net.minecraft.src:
// Item, EnumToolMaterial, ItemStack, Block,
@@ -63,4 +66,11 @@
@@ -63,4 +64,11 @@
private float efficiencyOnProperMaterial;
private int damageVsEntity;
protected EnumToolMaterial toolMaterial;
@ -288,21 +327,32 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/ItemTool.
+ blocksEffectiveAgainst [blocksEffectiveAgainst.length + 1] = block;
+ }
}
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/RenderBlocks.java ../src_work/minecraft/net/minecraft/src/RenderBlocks.java
--- ../src_base/minecraft/net/minecraft/src/RenderBlocks.java 2011-07-19 22:35:40.986201400 +0200
+++ ../src_work/minecraft/net/minecraft/src/RenderBlocks.java 2011-07-19 22:36:22.019548400 +0200
@@ -5,6 +5,8 @@
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/PlayerController.java ../src_work/minecraft/net/minecraft/src/PlayerController.java
--- ../src_base/minecraft/net/minecraft/src/PlayerController.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/PlayerController.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import net.minecraft.client.Minecraft;
+import net.minecraft.src.forge.MinecraftForgeClient;
+
import org.lwjgl.opengl.GL11;
// Referenced classes of package net.minecraft.src:
@@ -98,6 +99,11 @@
public boolean sendPlaceBlock(EntityPlayer entityplayer, World world, ItemStack itemstack, int i, int j, int k, int l)
{
+ if(itemstack!=null && itemstack.getItem() instanceof IUseItemFirst) {
+ IUseItemFirst iuif=(IUseItemFirst)itemstack.getItem();
+ if(iuif.onItemUseFirst(itemstack,entityplayer,world,i,j,k,l))
+ return true;
+ }
int i1 = world.getBlockId(i, j, k);
if(i1 > 0 && Block.blocksList[i1].blockActivated(world, i, j, k, entityplayer))
{
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/RenderItem.java ../src_work/minecraft/net/minecraft/src/RenderItem.java
--- ../src_base/minecraft/net/minecraft/src/RenderItem.java 2011-07-19 22:35:41.100207900 +0200
+++ ../src_work/minecraft/net/minecraft/src/RenderItem.java 2011-07-19 22:36:22.037549400 +0200
--- ../src_base/minecraft/net/minecraft/src/RenderItem.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/RenderItem.java 2011-07-29 16:41:55.000000000 -0400
@@ -5,6 +5,9 @@
package net.minecraft.src;
@ -364,10 +414,13 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/RenderIte
int k1 = Item.itemsList[i].getColorFromDamage(j);
float f = (float)(k1 >> 16 & 0xff) / 255F;
diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/WorldRenderer.java ../src_work/minecraft/net/minecraft/src/WorldRenderer.java
--- ../src_base/minecraft/net/minecraft/src/WorldRenderer.java 2011-07-19 22:35:41.644239000 +0200
+++ ../src_work/minecraft/net/minecraft/src/WorldRenderer.java 2011-07-19 22:36:22.041549600 +0200
@@ -5,6 +5,9 @@
--- ../src_base/minecraft/net/minecraft/src/WorldRenderer.java 2011-07-29 16:35:27.000000000 -0400
+++ ../src_work/minecraft/net/minecraft/src/WorldRenderer.java 2011-07-29 16:58:43.000000000 -0400
@@ -3,8 +3,12 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import java.util.*;
+
@ -376,7 +429,20 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/WorldRend
import org.lwjgl.opengl.GL11;
// Referenced classes of package net.minecraft.src:
@@ -144,8 +147,10 @@
@@ -138,14 +142,23 @@
}
Block block = Block.blocksList[i3];
int j3 = block.getRenderBlockPass();
+
+ if(block instanceof IMultipassRender) {
+ if(j3 != i2) flag = true;
+ IMultipassRender impr=(IMultipassRender)block;
+ if(impr.canRenderInPass(i2)) j3=i2;
+ }
+
if(j3 != i2)
{
flag = true;
continue;
}
if(j3 == i2)
@ -388,9 +454,70 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft/net/minecraft/src/WorldRend
}
}
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/BlockRedstoneWire.java ../src_work/minecraft_server/net/minecraft/src/BlockRedstoneWire.java
--- ../src_base/minecraft_server/net/minecraft/src/BlockRedstoneWire.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/BlockRedstoneWire.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import java.util.*;
@@ -413,6 +414,10 @@
{
return false;
}
+ if(Block.blocksList[i1] instanceof IConnectRedstone) {
+ IConnectRedstone icr=(IConnectRedstone)Block.blocksList[i1];
+ return icr.canConnectRedstone(iblockaccess,i,j,k,l);
+ }
if(Block.blocksList[i1].canProvidePower())
{
return true;
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/Chunk.java ../src_work/minecraft_server/net/minecraft/src/Chunk.java
--- ../src_base/minecraft_server/net/minecraft/src/Chunk.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/Chunk.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
import java.io.PrintStream;
import java.util.*;
@@ -227,6 +228,13 @@
}
int l1 = xPosition * 16 + i;
int i2 = zPosition * 16 + k;
+
+ if(Block.blocksList[k1] instanceof IOverrideReplace) {
+ IOverrideReplace iovr=(IOverrideReplace)Block.blocksList[k1];
+ if(!iovr.canReplaceBlock(worldObj,l1,j,i2,l))
+ return iovr.getReplacedSuccess();
+ }
+
blocks[i << 11 | k << 7 | j] = (byte)(byte0 & 0xff);
if(k1 != 0 && !worldObj.singleplayerWorld)
{
@@ -270,6 +278,13 @@
}
int k1 = xPosition * 16 + i;
int l1 = zPosition * 16 + k;
+
+ if(Block.blocksList[j1] instanceof IOverrideReplace) {
+ IOverrideReplace iovr=(IOverrideReplace)Block.blocksList[j1];
+ if(!iovr.canReplaceBlock(worldObj,k1,j,l1,l))
+ return iovr.getReplacedSuccess();
+ }
+
blocks[i << 11 | k << 7 | j] = (byte)(byte0 & 0xff);
if(j1 != 0)
{
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java ../src_work/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java
--- ../src_base/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java 2011-07-19 22:35:53.094893000 +0200
+++ ../src_work/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java 2011-07-19 22:36:22.046549900 +0200
--- ../src_base/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/ChunkProviderGenerate.java 2011-07-29 16:41:55.000000000 -0400
@@ -6,6 +6,8 @@
import java.util.Random;
@ -410,8 +537,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/Ch
generatedTemperatures = worldObj.getWorldChunkManager().getTemperatures(generatedTemperatures, k + 8, l + 8, 16, 16);
for(int j19 = k + 8; j19 < k + 8 + 16; j19++)
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/ItemBucket.java ../src_work/minecraft_server/net/minecraft/src/ItemBucket.java
--- ../src_base/minecraft_server/net/minecraft/src/ItemBucket.java 2011-07-19 22:35:53.568921000 +0200
+++ ../src_work/minecraft_server/net/minecraft/src/ItemBucket.java 2011-07-19 22:36:22.050550100 +0200
--- ../src_base/minecraft_server/net/minecraft/src/ItemBucket.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/ItemBucket.java 2011-07-29 16:41:55.000000000 -0400
@@ -6,6 +6,8 @@
import java.util.Random;
@ -435,9 +562,32 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/It
if(world.getBlockMaterial(i, j, k) == Material.water && world.getBlockMetadata(i, j, k) == 0)
{
world.setBlockWithNotify(i, j, k, 0);
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/ItemInWorldManager.java ../src_work/minecraft_server/net/minecraft/src/ItemInWorldManager.java
--- ../src_base/minecraft_server/net/minecraft/src/ItemInWorldManager.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/ItemInWorldManager.java 2011-07-29 16:57:37.000000000 -0400
@@ -3,6 +3,7 @@
// Decompiler options: packimports(3) braces deadcode
package net.minecraft.src;
+import net.minecraft.src.forge.*;
// Referenced classes of package net.minecraft.src:
@@ -145,6 +146,11 @@
public boolean activeBlockOrUseItem(EntityPlayer entityplayer, World world, ItemStack itemstack, int i, int j, int k, int l)
{
+ if(itemstack!=null && itemstack.getItem() instanceof IUseItemFirst) {
+ IUseItemFirst iuif=(IUseItemFirst)itemstack.getItem();
+ if(iuif.onItemUseFirst(itemstack,entityplayer,world,i,j,k,l))
+ return true;
+ }
int i1 = world.getBlockId(i, j, k);
if(i1 > 0 && Block.blocksList[i1].blockActivated(world, i, j, k, entityplayer))
{
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/ItemPickaxe.java ../src_work/minecraft_server/net/minecraft/src/ItemPickaxe.java
--- ../src_base/minecraft_server/net/minecraft/src/ItemPickaxe.java 2011-07-19 22:35:53.647925000 +0200
+++ ../src_work/minecraft_server/net/minecraft/src/ItemPickaxe.java 2011-07-29 19:52:41.066162300 +0200
--- ../src_base/minecraft_server/net/minecraft/src/ItemPickaxe.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/ItemPickaxe.java 2011-07-29 16:41:55.000000000 -0400
@@ -4,6 +4,8 @@
package net.minecraft.src;
@ -458,8 +608,8 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/It
{
return true;
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/ItemTool.java ../src_work/minecraft_server/net/minecraft/src/ItemTool.java
--- ../src_base/minecraft_server/net/minecraft/src/ItemTool.java 2011-07-19 22:35:53.708929000 +0200
+++ ../src_work/minecraft_server/net/minecraft/src/ItemTool.java 2011-07-29 19:51:37.558529900 +0200
--- ../src_base/minecraft_server/net/minecraft/src/ItemTool.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/ItemTool.java 2011-07-29 16:41:55.000000000 -0400
@@ -4,6 +4,8 @@
package net.minecraft.src;
@ -481,3 +631,22 @@ diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/It
+ blocksEffectiveAgainst [blocksEffectiveAgainst.length + 1] = block;
+ }
}
diff -u -r --strip-trailing-cr ../src_base/minecraft_server/net/minecraft/src/PlayerInstance.java ../src_work/minecraft_server/net/minecraft/src/PlayerInstance.java
--- ../src_base/minecraft_server/net/minecraft/src/PlayerInstance.java 2011-07-29 16:35:28.000000000 -0400
+++ ../src_work/minecraft_server/net/minecraft/src/PlayerInstance.java 2011-07-29 16:57:37.000000000 -0400
@@ -169,12 +169,11 @@
sendPacketToPlayersInInstance(new Packet52MultiBlockChange(chunkX, chunkZ, blocksToUpdate, numBlocksToUpdate, worldserver));
for(int k = 0; k < numBlocksToUpdate; k++)
{
- int j1 = chunkX * 16 + (numBlocksToUpdate >> 12 & 0xf);
- int i2 = numBlocksToUpdate & 0xff;
- int k2 = chunkZ * 16 + (numBlocksToUpdate >> 8 & 0xf);
+ int j1 = chunkX * 16 + (blocksToUpdate[k] >> 12 & 0xf);
+ int i2 = blocksToUpdate[k] & 0xff;
+ int k2 = chunkZ * 16 + (blocksToUpdate[k] >> 8 & 0xf);
if(Block.isBlockContainer[worldserver.getBlockId(j1, i2, k2)])
{
- System.out.println("Sending!");
updateTileEntity(worldserver.getBlockTileEntity(j1, i2, k2));
}
}