Add town variable for town tile X and Y coordinates
This commit is contained in:
@@ -67,6 +67,7 @@ extern const GRFFeatureInfo _grf_feature_list[] = {
|
||||
GRFFeatureInfo("town_feature", 1),
|
||||
GRFFeatureInfo("town_uncapped_variables", 1),
|
||||
GRFFeatureInfo("town_zone_callback", 1, GFTOF_TOWN_ZONE_CALLBACK),
|
||||
GRFFeatureInfo("varaction2_towns_town_xy", 1),
|
||||
GRFFeatureInfo("more_varaction2_types", 1, GFTOF_MORE_VARACTION2_TYPES),
|
||||
GRFFeatureInfo("multi_part_ships", 1, GFTOF_MULTI_PART_SHIPS),
|
||||
GRFFeatureInfo(),
|
||||
@@ -182,6 +183,7 @@ extern const GRFVariableMapDefinition _grf_action2_remappable_variables[] = {
|
||||
GRFVariableMapDefinition(GSF_FAKE_TOWNS, A2VRI_TOWNS_ZONE_2, "town_zone_2_radius_square"),
|
||||
GRFVariableMapDefinition(GSF_FAKE_TOWNS, A2VRI_TOWNS_ZONE_3, "town_zone_3_radius_square"),
|
||||
GRFVariableMapDefinition(GSF_FAKE_TOWNS, A2VRI_TOWNS_ZONE_4, "town_zone_4_radius_square"),
|
||||
GRFVariableMapDefinition(GSF_FAKE_TOWNS, A2VRI_TOWNS_XY, "town_xy"),
|
||||
GRFVariableMapDefinition(GSF_NEWLANDSCAPE, 0x40, "newlandscape_terrain_type"),
|
||||
GRFVariableMapDefinition(GSF_NEWLANDSCAPE, 0x41, "newlandscape_tile_slope"),
|
||||
GRFVariableMapDefinition(GSF_NEWLANDSCAPE, 0x42, "newlandscape_tile_height"),
|
||||
|
@@ -96,6 +96,7 @@ enum Action2VariableRemapIds {
|
||||
A2VRI_TOWNS_ZONE_2,
|
||||
A2VRI_TOWNS_ZONE_3,
|
||||
A2VRI_TOWNS_ZONE_4,
|
||||
A2VRI_TOWNS_XY,
|
||||
};
|
||||
|
||||
enum GRFFeatureTestObservationFlag : uint8 {
|
||||
|
@@ -119,6 +119,9 @@
|
||||
case A2VRI_TOWNS_ZONE_3:
|
||||
case A2VRI_TOWNS_ZONE_4:
|
||||
return this->t->cache.squared_town_zone_radius[variable - A2VRI_TOWNS_ZONE_0];
|
||||
|
||||
case A2VRI_TOWNS_XY:
|
||||
return TileY(this->t->xy) << 16 | (TileX(this->t->xy) & 0xFFFF);
|
||||
}
|
||||
|
||||
DEBUG(grf, 1, "Unhandled town variable 0x%X", variable);
|
||||
@@ -180,6 +183,7 @@
|
||||
case A2VRI_TOWNS_ZONE_2:
|
||||
case A2VRI_TOWNS_ZONE_3:
|
||||
case A2VRI_TOWNS_ZONE_4:
|
||||
case A2VRI_TOWNS_XY:
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -1639,6 +1639,7 @@ static const NIVariable _niv_towns[] = {
|
||||
NIV(A2VRI_TOWNS_ZONE_2, "zone radius 2 (uncapped)"),
|
||||
NIV(A2VRI_TOWNS_ZONE_3, "zone radius 3 (uncapped)"),
|
||||
NIV(A2VRI_TOWNS_ZONE_4, "zone radius 4 (uncapped)"),
|
||||
NIV(A2VRI_TOWNS_XY, "town tile xy"),
|
||||
NIV_END()
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user