Resolves issue #155, resolves issue #154, resolves issue #107

This commit is contained in:
atomicint
2016-02-03 18:15:37 -05:00
parent a551f0b22c
commit 86ed50da12
2 changed files with 4 additions and 4 deletions
@@ -2,11 +2,11 @@ package org.apollo.game.model.area;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -76,7 +76,7 @@ public final class Region {
/**
* The Map of Positions to Entities in that Position.
*/
private final Map<Position, Set<Entity>> entities = new HashMap<>();
private final Map<Position, Set<Entity>> entities = new ConcurrentHashMap<>();
/**
* A List of RegionListeners registered to this Region.
@@ -119,7 +119,7 @@ public final class GameService extends Service {
*
* @param player The player.
*/
public void finalizePlayerRegistration(Player player) {
public synchronized void finalizePlayerRegistration(Player player) {
world.register(player);
Region region = world.getRegionRepository().fromPosition(player.getPosition());
region.addEntity(player);
@@ -150,7 +150,7 @@ public final class GameService extends Service {
/**
* Called every pulse.
*/
public void pulse() {
public synchronized void pulse() {
finalizeRegistrations();
finalizeUnregistrations();