Avoid probable concurrency issues.
This commit is contained in:
parent
eed915b9dc
commit
67cc5e1e45
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -363,7 +363,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
* @param templateId the instance template id
|
* @param templateId the instance template id
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Instance createDynamicInstance(int templateId)
|
public synchronized Instance createDynamicInstance(int templateId)
|
||||||
{
|
{
|
||||||
while (getInstance(_dynamic) != null)
|
while (getInstance(_dynamic) != null)
|
||||||
{
|
{
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -69,7 +70,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, NpcSpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, NpcSpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -187,7 +188,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
@ -69,7 +69,7 @@ public final class InstanceManager implements IXmlReader
|
|||||||
// Client instance names
|
// Client instance names
|
||||||
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
private final Map<Integer, String> _instanceNames = new HashMap<>();
|
||||||
// Instance templates holder
|
// Instance templates holder
|
||||||
private final Map<Integer, InstanceTemplate> _instanceTemplates = new HashMap<>();
|
private final Map<Integer, InstanceTemplate> _instanceTemplates = new ConcurrentHashMap<>();
|
||||||
// Created instance worlds
|
// Created instance worlds
|
||||||
private int _currentInstanceId = 0;
|
private int _currentInstanceId = 0;
|
||||||
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
private final Map<Integer, Instance> _instanceWorlds = new ConcurrentHashMap<>();
|
||||||
|
@ -27,6 +27,7 @@ import java.util.Map;
|
|||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
|
|
||||||
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
private final Map<Class<? extends ZoneType>, ConcurrentHashMap<Integer, ? extends ZoneType>> _classZones = new ConcurrentHashMap<>();
|
||||||
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
private final Map<String, SpawnTerritory> _spawnTerritories = new ConcurrentHashMap<>();
|
||||||
private volatile int _lastDynamicId = 300000;
|
private final AtomicInteger _lastDynamicId = new AtomicInteger(300000);
|
||||||
private List<ItemInstance> _debugItems;
|
private List<ItemInstance> _debugItems;
|
||||||
|
|
||||||
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
private final ZoneRegion[][] _zoneRegions = new ZoneRegion[(World.MAP_MAX_X >> SHIFT_BY) + OFFSET_X + 1][(World.MAP_MAX_Y >> SHIFT_BY) + OFFSET_Y + 1];
|
||||||
@ -191,7 +192,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId++;
|
zoneId = zoneType.equalsIgnoreCase("NpcSpawnTerritory") ? 0 : _lastDynamicId.incrementAndGet();
|
||||||
}
|
}
|
||||||
|
|
||||||
attribute = attrs.getNamedItem("name");
|
attribute = attrs.getNamedItem("name");
|
||||||
@ -366,7 +367,7 @@ public final class ZoneManager implements IXmlReader
|
|||||||
}
|
}
|
||||||
if (checkId(zoneId))
|
if (checkId(zoneId))
|
||||||
{
|
{
|
||||||
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previuos definition.");
|
LOGGER.config(getClass().getSimpleName() + ": Caution: Zone (" + zoneId + ") from file: " + f.getName() + " overrides previous definition.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((zoneName != null) && !zoneName.isEmpty())
|
if ((zoneName != null) && !zoneName.isEmpty())
|
||||||
|
Loading…
Reference in New Issue
Block a user