From 5eedf7bf503cebc8ac75ba0aff733978848e21cd Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Sat, 28 Nov 2020 13:11:43 +0100 Subject: [PATCH] Improving Array --- .../de/steamwar/fightsystem/utils/ArrowStopper.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/FightSystem_Main/src/de/steamwar/fightsystem/utils/ArrowStopper.java b/FightSystem_Main/src/de/steamwar/fightsystem/utils/ArrowStopper.java index b640fcb..920ebae 100644 --- a/FightSystem_Main/src/de/steamwar/fightsystem/utils/ArrowStopper.java +++ b/FightSystem_Main/src/de/steamwar/fightsystem/utils/ArrowStopper.java @@ -26,7 +26,6 @@ import de.steamwar.fightsystem.states.FightState; import de.steamwar.fightsystem.states.StateDependent; import org.bukkit.Bukkit; import org.bukkit.Location; -import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.entity.AbstractArrow; @@ -52,18 +51,14 @@ public class ArrowStopper implements StateDependent { if(arrows.isEmpty()) return; for (Entity entity : arrows) { - if(entity.getTicksLived() > Config.ArrowTechhiderCollision){ - LAST_LOCATION.remove(entity); - continue; - } - if(((AbstractArrow) entity).isInBlock()) { + if(entity.getTicksLived() > Config.ArrowTechhiderCollision || + ((AbstractArrow) entity).isInBlock()){ LAST_LOCATION.remove(entity); continue; } if(!LAST_LOCATION.containsKey(entity)) LAST_LOCATION.put(entity, ((Player) ((AbstractArrow) entity).getShooter()).getEyeLocation()); - Location last = LAST_LOCATION.get(entity); - LAST_LOCATION.remove(entity); + Location last = LAST_LOCATION.remove(entity); if(checkBlocks(entity.getLocation().getBlock(), last.getBlock())) entity.remove(); else @@ -78,7 +73,7 @@ public class ArrowStopper implements StateDependent { @Override public void enable() { - task = Bukkit.getScheduler().runTaskTimerAsynchronously(FightSystem.getPlugin(), this::run, 1, 0); + task = Bukkit.getScheduler().runTaskTimerAsynchronously(FightSystem.getPlugin(), this::run, 1, 1); } @Override