diff --git a/options.cfg b/options.cfg index 6b6462d7..4f6d91ad 100644 --- a/options.cfg +++ b/options.cfg @@ -1 +1,2 @@ LOAD.SNAPSHOT_OBJECTS=1 +LOAD.BUILDOUT_OBJECTS=1 \ No newline at end of file diff --git a/src/services/TerrainService.java b/src/services/TerrainService.java index e58d6cfa..960d48f0 100644 --- a/src/services/TerrainService.java +++ b/src/services/TerrainService.java @@ -191,10 +191,18 @@ public class TerrainService { public void run() { Config config = new Config(); config.setFilePath("options.cfg"); + boolean loaded = config.loadConfigFile(); - if (config.loadConfigFile() && config.getInt("LOAD.SNAPSHOT_OBJECTS") > 0) { + if (loaded && config.getInt("LOAD.SNAPSHOT_OBJECTS") > 0) { try { core.objectService.loadSnapshotObjects(planet); + } catch (Exception e) { + e.printStackTrace(); + } + } + + if (loaded && config.getInt("LOAD.BUILDOUT_OBJECTS") > 0) { + try { core.objectService.loadBuildoutObjects(planet); } catch (InstantiationException | IllegalAccessException e) { e.printStackTrace(); diff --git a/src/services/object/ObjectService.java b/src/services/object/ObjectService.java index f060f4c9..4699a294 100644 --- a/src/services/object/ObjectService.java +++ b/src/services/object/ObjectService.java @@ -221,7 +221,7 @@ public class ObjectService implements INetworkDispatch { object.setPlanetId(planet.getID()); - object.setAttachment("serverTemplate", ((customServerTemplate != null) ? customServerTemplate : object.getTemplate())); + object.setAttachment("customServerTemplate", customServerTemplate); object.setisInSnapshot(isSnapshot); loadServerTemplate(object); @@ -264,7 +264,7 @@ public class ObjectService implements INetworkDispatch { public void loadServerTemplate(SWGObject object) { - String template = ((object.getAttachment("serverTemplate") == null) ? object.getTemplate() : (object.getTemplate().split("shared_")[0] + "shared_" + ((String) object.getAttachment("serverTemplate")) + ".iff")); + String template = ((object.getAttachment("customServerTemplate") == null) ? object.getTemplate() : (object.getTemplate().split("shared_")[0] + "shared_" + ((String) object.getAttachment("customServerTemplate")) + ".iff")); String serverTemplate = template.replace(".iff", ""); // check if template is empty(4 default lines) to reduce RAM usage(saves about 500 MB of RAM) try {