From 1a96061664f457a321f595e7068dbe4f56430ddb Mon Sep 17 00:00:00 2001 From: Jesse Prescott Date: Wed, 30 May 2018 22:50:35 +0100 Subject: [PATCH] Add task checker for spawnItem() method. --- .../bleedobsidian/itemcase/Itemcase.java | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/gmail/bleedobsidian/itemcase/Itemcase.java b/src/main/java/com/gmail/bleedobsidian/itemcase/Itemcase.java index 1036873..8dc5eed 100644 --- a/src/main/java/com/gmail/bleedobsidian/itemcase/Itemcase.java +++ b/src/main/java/com/gmail/bleedobsidian/itemcase/Itemcase.java @@ -20,7 +20,6 @@ import java.util.Collection; import java.util.UUID; import org.bukkit.Chunk; import org.bukkit.Location; -import org.bukkit.Material; import org.bukkit.OfflinePlayer; import org.bukkit.World; import org.bukkit.entity.Entity; @@ -116,13 +115,18 @@ public final class Itemcase { */ public void spawnItem() { - // Schedule itemcase task to execute every 200 server ticks (10 secs). - this.task = new ItemcaseTask(this); - this.task.runTaskTimer(ItemCaseCore.instance, 0, 200); - // Get the world that this itemcase is in. World world = this.location.getWorld(); + // If task task was previously cancelled or never made. + if(this.task == null || this.task.isCancelled()) { + + // Schedule itemcase task to execute every 200 server + // ticks (10 secs). + this.task = new ItemcaseTask(this); + this.task.runTaskTimer(ItemCaseCore.instance, 0, 200); + } + // Check if the chunk is currently loaded. if(!world.isChunkLoaded(this.chunk)) { @@ -277,13 +281,6 @@ public final class Itemcase { @EventHandler(priority = EventPriority.NORMAL) public void onBlockBreakEvent(BlockBreakEvent event) { - // If the material is not some sort of step. - if(event.getBlock().getType() != Material.STEP) { - - // Ignore event. - return; - } - // Get ItemcaseManager. ItemcaseManager itemcaseManager = ItemCaseCore.instance.getItemcaseManager();