forked from github-mirror/CoreProtect
Fixed fire being logged as air
This commit is contained in:
1 parent
def5a99096
commit
7ccb3eff34
1 file changed
+9
-3
@@ -30,7 +30,8 @@ public final class BlockIgniteListener extends Queue implements Listener {
|
|||||||
@EventHandler(priority = EventPriority.MONITOR)
|
@EventHandler(priority = EventPriority.MONITOR)
|
||||||
protected void onBlockIgnite(BlockIgniteEvent event) {
|
protected void onBlockIgnite(BlockIgniteEvent event) {
|
||||||
World world = event.getBlock().getWorld();
|
World world = event.getBlock().getWorld();
|
||||||
if (!event.isCancelled() && Config.getConfig(world).BLOCK_IGNITE) {
|
Config config = Config.getConfig(world);
|
||||||
|
if (!event.isCancelled() && config.BLOCK_IGNITE) {
|
||||||
Block block = event.getBlock();
|
Block block = event.getBlock();
|
||||||
if (block == null) {
|
if (block == null) {
|
||||||
return;
|
return;
|
||||||
@@ -60,6 +61,7 @@ public final class BlockIgniteListener extends Queue implements Listener {
|
|||||||
|
|
||||||
BlockState replacedBlock = null;
|
BlockState replacedBlock = null;
|
||||||
BlockData forceBlockData = block.getBlockData();
|
BlockData forceBlockData = block.getBlockData();
|
||||||
|
String blockDataString;
|
||||||
if (BlockGroup.LIGHTABLES.contains(blockType)) {
|
if (BlockGroup.LIGHTABLES.contains(blockType)) {
|
||||||
// Set block as lit campfire, rather than as fire block
|
// Set block as lit campfire, rather than as fire block
|
||||||
blockIgnited = blockType;
|
blockIgnited = blockType;
|
||||||
@@ -68,6 +70,10 @@ public final class BlockIgniteListener extends Queue implements Listener {
|
|||||||
Lightable lightable = (Lightable) forceBlockData;
|
Lightable lightable = (Lightable) forceBlockData;
|
||||||
lightable.setLit(true);
|
lightable.setLit(true);
|
||||||
}
|
}
|
||||||
|
blockDataString = forceBlockData.getAsString();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
blockDataString = blockIgnited.createBlockData().getAsString();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event.getPlayer() == null) {
|
if (event.getPlayer() == null) {
|
||||||
@@ -127,7 +133,7 @@ public final class BlockIgniteListener extends Queue implements Listener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Queue.queueBlockPlace("#fire", block.getState(), block.getType(), replacedBlock, blockIgnited, -1, 0, forceBlockData.getAsString());
|
Queue.queueBlockPlace("#fire", block.getState(), block.getType(), replacedBlock, blockIgnited, -1, 0, blockDataString);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (event.getCause() == IgniteCause.FIREBALL) {
|
if (event.getCause() == IgniteCause.FIREBALL) {
|
||||||
@@ -135,7 +141,7 @@ public final class BlockIgniteListener extends Queue implements Listener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
Queue.queueBlockPlace(player.getName(), block.getState(), block.getType(), replacedBlock, blockIgnited, -1, 0, forceBlockData.getAsString());
|
Queue.queueBlockPlace(player.getName(), block.getState(), block.getType(), replacedBlock, blockIgnited, -1, 0, blockDataString);
|
||||||
int unixtimestamp = (int) (System.currentTimeMillis() / 1000L);
|
int unixtimestamp = (int) (System.currentTimeMillis() / 1000L);
|
||||||
int world_id = WorldUtils.getWorldId(block.getWorld().getName());
|
int world_id = WorldUtils.getWorldId(block.getWorld().getName());
|
||||||
CacheHandler.lookupCache.put("" + block.getX() + "." + block.getY() + "." + block.getZ() + "." + world_id + "", new Object[] { unixtimestamp, player.getName(), block.getType() });
|
CacheHandler.lookupCache.put("" + block.getX() + "." + block.getY() + "." + block.getZ() + "." + world_id + "", new Object[] { unixtimestamp, player.getName(), block.getType() });
|
||||||
|
|||||||
Reference in new issue
Block a user