diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 34130c3..f170290 100644 Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/.idea/modules/BlockAndSeek.main.iml b/.idea/modules/BlockAndSeek.main.iml index d329813..bbeeb3e 100644 --- a/.idea/modules/BlockAndSeek.main.iml +++ b/.idea/modules/BlockAndSeek.main.iml @@ -1,10 +1,5 @@ - - - - - diff --git a/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java b/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java index c8218f7..bbe9ce1 100644 --- a/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java +++ b/src/main/java/hdvtdev/blockandseek/eventListeners/RequiredEventListener.java @@ -58,8 +58,6 @@ public class RequiredEventListener implements Listener { if (event.getAction().isLeftClick()) return; Player player = event.getPlayer(); - UUID uuid = player.getUniqueId(); - ItemStack item = event.getItem(); if (item != null) { ItemMeta meta = item.getItemMeta(); @@ -74,11 +72,6 @@ public class RequiredEventListener implements Listener { } - - - - - } @EventHandler diff --git a/src/main/java/hdvtdev/blockandseek/managers/StateManager.java b/src/main/java/hdvtdev/blockandseek/managers/StateManager.java index ee0917a..7676336 100644 --- a/src/main/java/hdvtdev/blockandseek/managers/StateManager.java +++ b/src/main/java/hdvtdev/blockandseek/managers/StateManager.java @@ -3,12 +3,12 @@ package hdvtdev.blockandseek.managers; import hdvtdev.blockandseek.objects.BlockAndSeekGame; import java.util.*; +import java.util.concurrent.ConcurrentHashMap; public class StateManager { - private final Map playerToState = new HashMap<>(); - private final Map> stateToPlayers = new HashMap<>(); - + private final Map playerToState = new ConcurrentHashMap<>(); + private final Map> stateToPlayers = new ConcurrentHashMap<>(); public void setPlayerState(UUID uuid, BlockAndSeekGame.PlayerType newState) { @@ -27,7 +27,7 @@ public class StateManager { } public Set getPlayers() { - return playerToState.keySet(); + return new HashSet<>(playerToState.keySet()); } public boolean hasPlayer(UUID uuid) { @@ -43,7 +43,8 @@ public class StateManager { } public Set getPlayersInState(BlockAndSeekGame.PlayerType state) { - return Collections.unmodifiableSet(stateToPlayers.getOrDefault(state, Collections.emptySet())); + Set originalSet = stateToPlayers.getOrDefault(state, Collections.emptySet()); + return new HashSet<>(originalSet); } public void removePlayer(UUID uuid) { diff --git a/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java b/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java index 00bfee5..bbd05ba 100644 --- a/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java +++ b/src/main/java/hdvtdev/blockandseek/objects/BlockAndSeekGame.java @@ -218,6 +218,7 @@ public class BlockAndSeekGame { Player player = Bukkit.getPlayer(seeker); if (player != null) { stateManager.setPlayerState(seeker, PlayerType.SEEKER); + player.setWalkSpeed(0.22f); ItemManager.setSeekerSet(player); Utils.setLevelWithBar(player, 100); GamesManager.addSeekerImmune(player);