increased seeker move speed for balance. Костыль fix ConcurrentModificationException in BlockAndSeekGame
This commit is contained in:
Binary file not shown.
5
.idea/modules/BlockAndSeek.main.iml
generated
5
.idea/modules/BlockAndSeek.main.iml
generated
@@ -1,10 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="4">
|
||||
<component name="AdditionalModuleElements">
|
||||
<content url="file://$MODULE_DIR$/../../build/generated/sources/annotationProcessor/java/main">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../build/generated/sources/annotationProcessor/java/main" isTestSource="false" generated="true" />
|
||||
</content>
|
||||
</component>
|
||||
<component name="FacetManager">
|
||||
<facet type="minecraft" name="Minecraft">
|
||||
<configuration>
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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<UUID, BlockAndSeekGame.PlayerType> playerToState = new HashMap<>();
|
||||
private final Map<BlockAndSeekGame.PlayerType, Set<UUID>> stateToPlayers = new HashMap<>();
|
||||
|
||||
private final Map<UUID, BlockAndSeekGame.PlayerType> playerToState = new ConcurrentHashMap<>();
|
||||
private final Map<BlockAndSeekGame.PlayerType, Set<UUID>> stateToPlayers = new ConcurrentHashMap<>();
|
||||
|
||||
public void setPlayerState(UUID uuid, BlockAndSeekGame.PlayerType newState) {
|
||||
|
||||
@@ -27,7 +27,7 @@ public class StateManager {
|
||||
}
|
||||
|
||||
public Set<UUID> getPlayers() {
|
||||
return playerToState.keySet();
|
||||
return new HashSet<>(playerToState.keySet());
|
||||
}
|
||||
|
||||
public boolean hasPlayer(UUID uuid) {
|
||||
@@ -43,7 +43,8 @@ public class StateManager {
|
||||
}
|
||||
|
||||
public Set<UUID> getPlayersInState(BlockAndSeekGame.PlayerType state) {
|
||||
return Collections.unmodifiableSet(stateToPlayers.getOrDefault(state, Collections.emptySet()));
|
||||
Set<UUID> originalSet = stateToPlayers.getOrDefault(state, Collections.emptySet());
|
||||
return new HashSet<>(originalSet);
|
||||
}
|
||||
|
||||
public void removePlayer(UUID uuid) {
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user