Zone size derived from template.

This commit is contained in:
2024-01-09 12:55:08 -05:00
parent c45265b085
commit f7a8ca33fc
+7 -6
View File
@@ -76,9 +76,6 @@ public class Zone extends AbstractWorldObject {
this.templateID = rs.getInt("template");
this.zoneName = rs.getString("zone_name");
this.peace_zone = rs.getByte("peace_zone");
this.major_radius = rs.getFloat("major_radius");
this.minor_radius = rs.getFloat("minor_radius");
this.xOffset = rs.getFloat("xOffset");
this.zOffset = rs.getFloat("zOffset");
this.yOffset = rs.getFloat("yOffset");
@@ -163,12 +160,16 @@ public class Zone extends AbstractWorldObject {
if (ZoneManager.seaFloor == null)
ZoneManager.seaFloor = this;
// Guild zones have a size of zero in the table
// allowing the enum CityBoundsType to adjust them.
// Guild zones use the enum CityBoundsType to adjust
// city size. All other zones derive from the JSON
// stored within its template.
if (this.major_radius == 0) {
if (this.template == null) {
this.minor_radius = Enum.CityBoundsType.ZONE.halfExtents;
this.major_radius = Enum.CityBoundsType.ZONE.halfExtents;
} else {
this.minor_radius = this.template.minor_radius;
this.major_radius = this.template.major_radius;
}
this.setParent();