--- miscJava/bukkit-minecraft-plugins/HoerupUtils/src/dk/thoerup/bukkit/hoeruputils/secretdoor/DoorBlockListener.java 2011/07/10 07:45:38 1577 +++ miscJava/bukkit-minecraft-plugins/HoerupUtils/src/dk/thoerup/bukkit/hoeruputils/secretdoor/DoorBlockListener.java 2011/07/16 11:01:02 1578 @@ -8,6 +8,7 @@ import org.bukkit.entity.Player; import org.bukkit.event.block.BlockBreakEvent; import org.bukkit.event.block.BlockListener; +import org.bukkit.event.block.BlockRedstoneEvent; import org.bukkit.event.block.SignChangeEvent; import org.bukkit.event.player.PlayerListener; import org.bukkit.plugin.Plugin; @@ -53,6 +54,44 @@ } } + private Block[] getAdjacentBlocks(Block block) { + Block out[] = new Block[6]; + + out[0] = block.getRelative(-1,0,0); + out[1] = block.getRelative(1,0,0); + + out[2] = block.getRelative(0,-1,0); + out[3] = block.getRelative(0,1,0); + + out[4] = block.getRelative(0,0,-1); + out[5] = block.getRelative(0,0,1); + + return out; + + } + + @Override + public void onBlockRedstoneChange(BlockRedstoneEvent event) { + //System.out.println( event.getBlock().toString() ); + + Block block = event.getBlock(); + + + int x,y,z; + Block blocks[] = getAdjacentBlocks(block); + + for (int i=0; i" + blocks[i].toString() ); + Door d = store.findDoor( blocks[i].getLocation() ); + + if (d != null) { + //System.out.println(" found door"); + d.powerChange(block.getWorld(), event.getOldCurrent(), event.getNewCurrent() ); + } + } + + } + @Override public void onSignChange(SignChangeEvent event) {