Browse Source

Refactored city planting to use new system.

magicbox-1.5.2
MagicBot 1 year ago
parent
commit
4d290c9064
  1. 7
      src/engine/gameManager/ZoneManager.java
  2. 26
      src/engine/net/client/handlers/PlaceAssetMsgHandler.java

7
src/engine/gameManager/ZoneManager.java

@ -181,7 +181,7 @@ public enum ZoneManager { @@ -181,7 +181,7 @@ public enum ZoneManager {
}
if (zone.guild_zone) {
addPlayerCityZone(zone);
ZoneManager.playerCityZones.add(zone);
return;
}
@ -199,11 +199,6 @@ public enum ZoneManager { @@ -199,11 +199,6 @@ public enum ZoneManager {
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() {
Zone hotZone;

26
src/engine/net/client/handlers/PlaceAssetMsgHandler.java

@ -780,33 +780,19 @@ public class PlaceAssetMsgHandler extends AbstractClientMsgHandler { @@ -780,33 +780,19 @@ public class PlaceAssetMsgHandler extends AbstractClientMsgHandler {
playerNation = playerCharacter.getGuild();
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
// Update guild binds and tags
treeObject.setObjectTypeMask(MBServerStatics.MASK_BUILDING);
treeObject.setParentZone(zoneObject);
MaintenanceManager.setMaintDateTime(treeObject, LocalDateTime.now().plusDays(7));
GuildManager.updateAllGuildBinds(playerNation, cityObject);
GuildManager.updateAllGuildTags(playerNation);
// Update guild binds and tags
//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);
DispatchMessage.dispatchMsgToAll(czm);
GuildManager.updateAllGuildBinds(playerNation, cityObject);
GuildManager.updateAllGuildTags(playerNation);
// Set maintenance date
MaintenanceManager.setMaintDateTime(treeObject, LocalDateTime.now().plusDays(7));
// Send all the cities to the clients?
// *** Refactor : figure out how to send like, one?

Loading…
Cancel
Save