diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java index e4e7f1f18..1f7a81cde 100644 --- a/src/main/java/noppes/npcs/ServerEventsHandler.java +++ b/src/main/java/noppes/npcs/ServerEventsHandler.java @@ -1,5 +1,6 @@ package noppes.npcs; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -297,7 +298,8 @@ public class ServerEventsHandler { boolean change = false; String entityName = EntityList.getEntityString(entity); - for(QuestData data : questData.activeQuests.values()){ + ArrayList activeQuestValues = new ArrayList<>(questData.activeQuests.values()); + for(QuestData data : activeQuestValues){ if(data.quest.type != EnumQuestType.Kill && data.quest.type != EnumQuestType.AreaKill) continue; if(data.quest.type == EnumQuestType.AreaKill && all){ diff --git a/src/main/java/noppes/npcs/blocks/tiles/TileWaypoint.java b/src/main/java/noppes/npcs/blocks/tiles/TileWaypoint.java index e57b3e99b..c92302d67 100644 --- a/src/main/java/noppes/npcs/blocks/tiles/TileWaypoint.java +++ b/src/main/java/noppes/npcs/blocks/tiles/TileWaypoint.java @@ -46,7 +46,9 @@ public class TileWaypoint extends TileEntity { for(EntityPlayer player : toCheck){ PlayerData playerData = PlayerDataController.instance.getPlayerData(player); PlayerQuestData questData = playerData.questData; - for(QuestData data : questData.activeQuests.values()){ + + ArrayList activeQuestValues = new ArrayList<>(questData.activeQuests.values()); + for(QuestData data : activeQuestValues){ if(data.quest.type != EnumQuestType.Location) continue; QuestLocation quest = (QuestLocation) data.quest.questInterface;