From a3300260d9b88a5e895cd3550429f3d6265871f1 Mon Sep 17 00:00:00 2001 From: "Rob \"N3X15\" Nelson" Date: Thu, 28 Apr 2011 11:25:10 -0700 Subject: [PATCH] Fix for NPE --- pom.xml | 5 +++++ .../java/me/taylorkelly/bigbrother/BigBrother.java | 8 ++++---- .../taylorkelly/bigbrother/datablock/DeltaChest.java | 11 ++++++++--- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 11ea8fb..67fead0 100644 --- a/pom.xml +++ b/pom.xml @@ -143,6 +143,11 @@ 2.3.1 + + BigBrother + ${describe} + BigBrother Team + src/main/resources/MANIFEST.MF diff --git a/src/main/java/me/taylorkelly/bigbrother/BigBrother.java b/src/main/java/me/taylorkelly/bigbrother/BigBrother.java index 3da4141..6edaf43 100644 --- a/src/main/java/me/taylorkelly/bigbrother/BigBrother.java +++ b/src/main/java/me/taylorkelly/bigbrother/BigBrother.java @@ -55,11 +55,11 @@ import me.taylorkelly.bigbrother.tablemgrs.BBUsersTable; import org.bukkit.ChatColor; +import org.bukkit.Material; import org.bukkit.World; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.block.Chest; -import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.event.Event; import org.bukkit.event.Event.Priority; @@ -78,6 +78,7 @@ public class BigBrother extends JavaPlugin { public WorldManager worldManager; public static String name; public static String version; + public static String build; public final static String premessage = ChatColor.AQUA + "[BBROTHER]: " + ChatColor.WHITE; private Updater updater; @@ -98,6 +99,7 @@ public void onEnable() { // Stuff that was in Constructor name = this.getDescription().getName(); version = this.getDescription().getVersion(); + build = BigBrother.class.getPackage().getImplementationVersion(); if(version.endsWith("SNAPSHOT")) { BBLogging.info("------------------------------------"); @@ -191,7 +193,7 @@ public void onEnable() { Cleanser.initialize(this); // Done! - BBLogging.info(name + " " + version + " enabled"); + BBLogging.info(name + " " + version + " (build "+build+") enabled"); } private void updateSettings(File dataFolder) { @@ -226,8 +228,6 @@ private void registerEvents() { pm.registerEvent(Event.Type.ENTITY_DEATH, entityListener, Priority.Monitor, this); // These events are used for Super Sticks - // Moved to playerListener. God help us. - N3X15 - //pm.registerEvent(Event.Type.PLAYER_INTERACT, stickListener, Priority.Low, this); pm.registerEvent(Event.Type.BLOCK_PLACE, stickListener, Priority.Low, this); diff --git a/src/main/java/me/taylorkelly/bigbrother/datablock/DeltaChest.java b/src/main/java/me/taylorkelly/bigbrother/datablock/DeltaChest.java index 94c9a4a..445b128 100644 --- a/src/main/java/me/taylorkelly/bigbrother/datablock/DeltaChest.java +++ b/src/main/java/me/taylorkelly/bigbrother/datablock/DeltaChest.java @@ -276,8 +276,13 @@ private void do_NewRollback(World currWorld, Block block) { case ADDED: case REMOVED: ItemStack stack = inv.getItem(i); - stack.setAmount(stack.getAmount()-diff[i].Amount); - stack.setDurability(diff[i].Damage); + if(stack==null) + stack=diff[i].oldStack; + else + { + stack.setAmount(stack.getAmount()-diff[i].Amount); + stack.setDurability(diff[i].Damage); + } inv.setItem(i, stack); break; case REPLACED: @@ -290,7 +295,7 @@ private void do_NewRollback(World currWorld, Block block) { } } - public void do_OldRollback(World currWorld,Block block) { + private void do_OldRollback(World currWorld,Block block) { String[] changes = data.split(";"); if (block.getState() instanceof Chest) { Chest chest = (Chest) block.getState();