Refactored city planting to use new system.

This commit is contained in:
2023-10-18 09:38:19 -04:00
parent 9ee60c9361
commit 4d290c9064
2 changed files with 8 additions and 27 deletions
+1 -6
View File
@@ -181,7 +181,7 @@ public enum ZoneManager {
} }
if (zone.guild_zone) { if (zone.guild_zone) {
addPlayerCityZone(zone); ZoneManager.playerCityZones.add(zone);
return; return;
} }
@@ -199,11 +199,6 @@ public enum ZoneManager {
ZoneManager.npcCityZones.add(zone); ZoneManager.npcCityZones.add(zone);
} }
public static final void addPlayerCityZone(final Zone zone) {
zone.guild_zone = true;
ZoneManager.playerCityZones.add(zone);
}
public static final void generateAndSetRandomHotzone() { public static final void generateAndSetRandomHotzone() {
Zone hotZone; Zone hotZone;
@@ -780,33 +780,19 @@ public class PlaceAssetMsgHandler extends AbstractClientMsgHandler {
playerNation = playerCharacter.getGuild(); playerNation = playerCharacter.getGuild();
playerNation.setGuildState(GuildState.Sovereign); playerNation.setGuildState(GuildState.Sovereign);
// Link the zone with the city and then add
// to the appropriate hash tables and cache
zoneObject.guild_zone = true;
if (zoneObject.parent != null)
zoneObject.parent.addNode(zoneObject); //add as child to parent
ZoneManager.addPlayerCityZone(zoneObject);
serverZone.addNode(zoneObject);
zoneObject.global_height = ZoneManager.calculateGlobalZoneHeight(zoneObject);
//Link the tree of life with the new zone
treeObject.setObjectTypeMask(MBServerStatics.MASK_BUILDING);
treeObject.setParentZone(zoneObject);
MaintenanceManager.setMaintDateTime(treeObject, LocalDateTime.now().plusDays(7));
// Update guild binds and tags // Update guild binds and tags
GuildManager.updateAllGuildBinds(playerNation, cityObject);
GuildManager.updateAllGuildTags(playerNation);
//load the new city on the clients //load the new city on the clients
CityZoneMsg czm = new CityZoneMsg(1, treeObject.getLoc().x, treeObject.getLoc().y, treeObject.getLoc().z, cityObject.getCityName(), zoneObject, Enum.CityBoundsType.ZONE.halfExtents, Enum.CityBoundsType.ZONE.halfExtents); CityZoneMsg czm = new CityZoneMsg(1, treeObject.getLoc().x, treeObject.getLoc().y, treeObject.getLoc().z, cityObject.getCityName(), zoneObject, Enum.CityBoundsType.ZONE.halfExtents, Enum.CityBoundsType.ZONE.halfExtents);
DispatchMessage.dispatchMsgToAll(czm); DispatchMessage.dispatchMsgToAll(czm);
GuildManager.updateAllGuildBinds(playerNation, cityObject); // Set maintenance date
GuildManager.updateAllGuildTags(playerNation);
MaintenanceManager.setMaintDateTime(treeObject, LocalDateTime.now().plusDays(7));
// Send all the cities to the clients? // Send all the cities to the clients?
// *** Refactor : figure out how to send like, one? // *** Refactor : figure out how to send like, one?