forked from LogBlock/LogBlock
@ -34,7 +34,11 @@ public class BlockStateCodecLectern implements BlockStateCodec {
|
|||||||
if (conf != null) {
|
if (conf != null) {
|
||||||
book = conf.getItemStack("book");
|
book = conf.getItemStack("book");
|
||||||
}
|
}
|
||||||
lectern.getSnapshotInventory().setItem(0, book);
|
try {
|
||||||
|
lectern.getSnapshotInventory().setItem(0, book);
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
//ignored
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,10 +29,18 @@ public class LecternLogging extends LoggingListener {
|
|||||||
if (before.getType() == Material.LECTERN && after.getType() == Material.LECTERN) {
|
if (before.getType() == Material.LECTERN && after.getType() == Material.LECTERN) {
|
||||||
Lectern lecternBefore = (Lectern) before.getBlock().getState();
|
Lectern lecternBefore = (Lectern) before.getBlock().getState();
|
||||||
ItemStack book = lecternBefore.getSnapshotInventory().getItem(0);
|
ItemStack book = lecternBefore.getSnapshotInventory().getItem(0);
|
||||||
lecternBefore.getSnapshotInventory().setItem(0, null);
|
try {
|
||||||
|
lecternBefore.getSnapshotInventory().setItem(0, null);
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
//ignored
|
||||||
|
}
|
||||||
lecternBefore.setBlockData(before.getBlockData());
|
lecternBefore.setBlockData(before.getBlockData());
|
||||||
consumer.queueBlockReplace(Actor.actorFromEntity(event.getPlayer()), lecternBefore, after);
|
consumer.queueBlockReplace(Actor.actorFromEntity(event.getPlayer()), lecternBefore, after);
|
||||||
lecternBefore.getSnapshotInventory().setItem(0, book);
|
try {
|
||||||
|
lecternBefore.getSnapshotInventory().setItem(0, book);
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
//ignored
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -43,7 +51,11 @@ public class LecternLogging extends LoggingListener {
|
|||||||
if (wcfg != null && wcfg.isLogging(Logging.LECTERNBOOKCHANGE)) {
|
if (wcfg != null && wcfg.isLogging(Logging.LECTERNBOOKCHANGE)) {
|
||||||
Lectern oldState = event.getLectern();
|
Lectern oldState = event.getLectern();
|
||||||
Lectern newState = (Lectern) oldState.getBlock().getState();
|
Lectern newState = (Lectern) oldState.getBlock().getState();
|
||||||
newState.getSnapshotInventory().setItem(0, null);
|
try {
|
||||||
|
newState.getSnapshotInventory().setItem(0, null);
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
//ignored
|
||||||
|
}
|
||||||
org.bukkit.block.data.type.Lectern oldBlockData = (org.bukkit.block.data.type.Lectern) oldState.getBlockData();
|
org.bukkit.block.data.type.Lectern oldBlockData = (org.bukkit.block.data.type.Lectern) oldState.getBlockData();
|
||||||
org.bukkit.block.data.type.Lectern blockData = (org.bukkit.block.data.type.Lectern) Material.LECTERN.createBlockData();
|
org.bukkit.block.data.type.Lectern blockData = (org.bukkit.block.data.type.Lectern) Material.LECTERN.createBlockData();
|
||||||
blockData.setFacing(oldBlockData.getFacing());
|
blockData.setFacing(oldBlockData.getFacing());
|
||||||
|
@ -327,7 +327,6 @@ public class BukkitUtils {
|
|||||||
containerBlocks.add(Material.BARREL);
|
containerBlocks.add(Material.BARREL);
|
||||||
containerBlocks.add(Material.BLAST_FURNACE);
|
containerBlocks.add(Material.BLAST_FURNACE);
|
||||||
containerBlocks.add(Material.SMOKER);
|
containerBlocks.add(Material.SMOKER);
|
||||||
containerBlocks.add(Material.LECTERN);
|
|
||||||
// Doesn't actually have a block inventory
|
// Doesn't actually have a block inventory
|
||||||
// containerBlocks.add(Material.ENDER_CHEST);
|
// containerBlocks.add(Material.ENDER_CHEST);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user