Fixed buildouts besides buildings and their children not being added to quadtree

Fixed some bugs with retrieving quest items
Changed quest service's next task method to temporarily not auto-advance
to next quest if it's defined - will be re-enabled when most of task
types are done
Changed buildout objects to load server templates (unsure why they were
not loaded before)
Fixed SpawnPoint odb save error
This commit is contained in:
Waverunner
2014-08-15 18:04:47 -04:00
parent ffbe209207
commit 5cf7367e61
10 changed files with 39 additions and 24 deletions
+6 -5
View File
@@ -236,7 +236,7 @@ public class ObjectService implements INetworkDispatch {
}
public void loadServerTemplates() {
System.out.println("Loading server templates...");
System.out.println("Loading server templates... (" + loadServerTemplateTasks.size() + " templates)");
loadServerTemplateTasks.forEach(Runnable::run);
loadServerTemplateTasks.clear();
System.out.println("Finished loading server templates...");
@@ -1440,7 +1440,7 @@ public class ObjectService implements INetworkDispatch {
if (core.getSWGObjectODB().contains(objectId) && !duplicate.containsValue(objectId))
continue;
containers.add(objectId);
object = createObject(template, objectId, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, true, false);
object = createObject(template, objectId, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, true, true);
object.setAttachment("childObjects", null);
/*if (!duplicate.containsValue(objectId)) {
@@ -1449,7 +1449,7 @@ public class ObjectService implements INetworkDispatch {
((BuildingObject) object).getTransaction().commitSync();
}*/
} else {
object = createObject(template, 0, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, false, false);
object = createObject(template, 0, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, false, true);
}
if(object == null)
continue;
@@ -1459,7 +1459,7 @@ public class ObjectService implements INetworkDispatch {
if (!duplicate.containsValue(objectId) && object instanceof BuildingObject && portalCRC != 0)
persistentBuildings.add((BuildingObject) object);
} else if(containerId != 0) {
object = createObject(template, 0, planet, new Point3D(px, py, pz), new Quaternion(qw, qx, qy, qz), null, false, false);
object = createObject(template, 0, planet, new Point3D(px, py, pz), new Quaternion(qw, qx, qy, qz), null, false, true);
if(containers.contains(containerId)) {
object.setContainerPermissions(WorldPermissions.WORLD_PERMISSIONS);
object.setisInSnapshot(false);
@@ -1477,7 +1477,7 @@ public class ObjectService implements INetworkDispatch {
parent.add(object);
}
} else {
object = createObject(template, 0, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, false, false);
object = createObject(template, 0, planet, new Point3D(px + x1, py, pz + z1), new Quaternion(qw, qx, qy, qz), null, false, true);
object.setContainerPermissions(WorldPermissions.WORLD_PERMISSIONS);
}
@@ -1494,6 +1494,7 @@ public class ObjectService implements INetworkDispatch {
}
for(BuildingObject building : persistentBuildings) {
building.setAttachment("buildoutBuilding", true);
core.getSWGObjectODB().put(building.getObjectID(), building);
destroyObject(building);
}