diff --git a/src/services/objects/ObjectManager.java b/src/services/objects/ObjectManager.java index 2d586f15..e59c9d83 100644 --- a/src/services/objects/ObjectManager.java +++ b/src/services/objects/ObjectManager.java @@ -73,12 +73,14 @@ import resources.server_info.ObjectDatabase; import resources.server_info.ObjectDatabase.Traverser; import services.map.MapManager; import services.player.PlayerManager; +import services.spawn.SpawnerService; import services.spawn.StaticService; public class ObjectManager extends Manager { private final MapManager mapService; private final StaticService staticService; + private final SpawnerService spawnEggService; private final RadialService radialService; private final ObjectDatabase database; @@ -89,6 +91,7 @@ public class ObjectManager extends Manager { public ObjectManager() { mapService = new MapManager(); staticService = new StaticService(this); + spawnEggService = new SpawnerService(this); radialService = new RadialService(); database = new CachedObjectDatabase("odb/objects.db"); objectAwareness = new ObjectAwareness(); @@ -98,6 +101,7 @@ public class ObjectManager extends Manager { addChildService(mapService); addChildService(staticService); addChildService(radialService); + addChildService(spawnEggService); } @Override @@ -110,11 +114,19 @@ public class ObjectManager extends Manager { registerForIntent(DeleteCharacterIntent.TYPE); objectAwareness.initialize(); loadClientObjects(); + loadSpawners(); maxObjectId = 1000000000; // Gets over all the buildouts/snapshots loadObjects(); return super.initialize(); } + private void loadSpawners() { + Config c = getConfig(ConfigFile.FEATURES); + if (c.getBoolean("SPAWNERS-ENABLED", true)) { + spawnEggService.loadEggs(); + } + } + private void loadObjects() { long startLoad = System.nanoTime(); Log.i("ObjectManager", "Loading objects from ObjectDatabase..."); diff --git a/src/services/spawn/SpawnerService.java b/src/services/spawn/SpawnerService.java index 0c00b442..290fdbcf 100644 --- a/src/services/spawn/SpawnerService.java +++ b/src/services/spawn/SpawnerService.java @@ -17,12 +17,12 @@ import resources.spawn.SpawnType; import resources.spawn.Spawner; import services.objects.ObjectManager; -public final class SpawnEggService extends Service { +public final class SpawnerService extends Service { private final ObjectManager objectManager; private final Collection spawners; - public SpawnEggService(ObjectManager objectManager) { + public SpawnerService(ObjectManager objectManager) { this.objectManager = objectManager; spawners = new ArrayList<>(); }