Refactor Capturable Farmstead feature/templates

Attempts to address Invalid warning messages for capturable farmsteads
and creates a mixin as suggested by @Langbart

Renames the "farmsteads_" template files to "mill_" to eliminate
confusion with standard buildable farmsteads and changes the refs in the
skirmish maps to suit.

Genericizes the name to Rotary Mill instead of Farmstead, again to
eliminate confusion between the two (the former is a capturable map
object, while the latter is a player-buildable structure).

Fixes #6818
Differential revision: https://code.wildfiregames.com/D5113
This was SVN commit r27835.
This commit is contained in:
wowgetoffyourcellphone 2023-09-11 00:08:13 +00:00
parent 99e6a2fed8
commit 95530eb44a
20 changed files with 41 additions and 71 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,12 +1,12 @@
{ {
"type": "range", "type": "range",
"radius": 60, "radius": 60,
"affects": ["Gatherer", "Field"], "affects": ["Worker", "Field"],
"modifications": [ "modifications": [
{ "value": "ResourceGatherer/Rates/food.grain", "multiply": 1.75 } { "value": "ResourceGatherer/Rates/food.grain", "multiply": 1.75 }
], ],
"auraName": "Farmland", "auraName": "Farmland",
"auraDescription": "Gatherers +75% farming rate around a captured Farmstead.", "auraDescription": "Workers +75% grain gather rate around a captured Rotary Mill.",
"overlayIcon": "art/textures/ui/session/auras/farm_bonus.png", "overlayIcon": "art/textures/ui/session/auras/farm_bonus.png",
"rangeOverlay" : { "rangeOverlay" : {
"lineTexture": "outline_border.png", "lineTexture": "outline_border.png",

View File

@ -1,59 +1,36 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special"> <Entity>
<Auras datatype="tokens"> <Auras datatype="tokens">
structures/farmstead_60 structures/farmstead_60
</Auras> </Auras>
<BuildRestrictions>
<Territory>own neutral</Territory>
<Category>RotaryMill</Category>
</BuildRestrictions>
<Capturable> <Capturable>
<CapturePoints>500</CapturePoints> <CapturePoints>500</CapturePoints>
<RegenRate>0</RegenRate> <RegenRate>0</RegenRate>
<GarrisonRegenRate>3</GarrisonRegenRate> <GarrisonRegenRate>3</GarrisonRegenRate>
</Capturable> </Capturable>
<Cost>
<BuildTime>100</BuildTime>
<Resources>
<food>0</food>
<wood>200</wood>
<stone>100</stone>
<metal>0</metal>
</Resources>
</Cost>
<Footprint replace=""> <Footprint replace="">
<Circle radius="10.0"/> <Circle radius="10.0"/>
<Height>6.0</Height> <Height>6.0</Height>
</Footprint> </Footprint>
<GarrisonHolder disable=""/>
<Health disable=""/> <Health disable=""/>
<Identity> <Identity>
<Civ>gaia</Civ> <GenericName>Rotary Mill</GenericName>
<GenericName>Farmstead</GenericName>
<SpecificName>Rotary Mill</SpecificName> <SpecificName>Rotary Mill</SpecificName>
<VisibleClasses datatype="tokens">Farmstead</VisibleClasses> <VisibleClasses datatype="tokens">
<Classes datatype="tokens">
RotaryMill RotaryMill
</Classes> </VisibleClasses>
<Tooltip>Dropsite for harvested Food. Capture one of these to increase nearby food production.</Tooltip> <Tooltip>Dropsite for harvested Food. Capture one of these to increase nearby food production.</Tooltip>
<Icon>structures/rotarymill.png</Icon> <Icon>structures/rotarymill.png</Icon>
<Undeletable>true</Undeletable>
</Identity> </Identity>
<Loot>
<xp>100</xp>
<food>100</food>
</Loot>
<Minimap> <Minimap>
<Type>structure</Type>
<Icon size="16.0">other.png</Icon> <Icon size="16.0">other.png</Icon>
</Minimap> </Minimap>
<Obstruction> <Obstruction>
<Static width="16.0" depth="16.0"/> <Static width="16.0" depth="16.0"/>
</Obstruction> </Obstruction>
<RallyPoint disable=""/> <Researcher disable=""/>
<ResourceDropsite> <Resistance replace=""/>
<Types>food</Types>
<Sharable>true</Sharable>
</ResourceDropsite>
<Selectable> <Selectable>
<Overlay> <Overlay>
<Outline> <Outline>
@ -79,7 +56,6 @@
<Range>30</Range> <Range>30</Range>
</Vision> </Vision>
<VisualActor> <VisualActor>
<Actor>structures/celts/special.xml</Actor> <FoundationActor>structures/fndn_5x5.xml</FoundationActor>
<FoundationActor>structures/fndn_6x6.xml</FoundationActor>
</VisualActor> </VisualActor>
</Entity> </Entity>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Identity> <Identity>
<Civ>brit</Civ> <Civ>brit</Civ>
<SpecificName>Melonas</SpecificName> <SpecificName>Melonas</SpecificName>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Identity> <Identity>
<Civ>gaul</Civ> <Civ>gaul</Civ>
<SpecificName>Brauon</SpecificName> <SpecificName>Brauon</SpecificName>

View File

@ -1,12 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="12.0"/> <Circle radius="12.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>
<Identity> <Identity>
<Civ>ptol</Civ>
<Lang>napatan</Lang>
<SpecificName>snwt</SpecificName> <SpecificName>snwt</SpecificName>
</Identity> </Identity>
<Obstruction> <Obstruction>

View File

@ -3,7 +3,6 @@
<Capturable disable=""/> <Capturable disable=""/>
<Health disable=""/> <Health disable=""/>
<Identity> <Identity>
<Civ>gaia</Civ>
<SpecificName>Wheat Field</SpecificName> <SpecificName>Wheat Field</SpecificName>
</Identity> </Identity>
<Resistance replace=""/> <Resistance replace=""/>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="11.0"/> <Circle radius="11.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="11.0"/> <Circle radius="11.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="12.0"/> <Circle radius="12.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="13.0"/> <Circle radius="13.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>
<Identity> <Identity>
<Lang>persian</Lang>
<SpecificName>Kaštašta</SpecificName> <SpecificName>Kaštašta</SpecificName>
</Identity> </Identity>
<Obstruction> <Obstruction>

View File

@ -1,12 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Footprint replace=""> <Footprint>
<Circle radius="12.0"/> <Circle radius="12.0"/>
<Height>10.0</Height> <Height>10.0</Height>
</Footprint> </Footprint>
<Identity> <Identity>
<Civ>kush</Civ>
<Lang>napatan</Lang>
<SpecificName>snwt</SpecificName> <SpecificName>snwt</SpecificName>
</Identity> </Identity>
<Obstruction> <Obstruction>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special_rotarymill"> <Entity parent="rotary_mill|template_structure_economic_farmstead">
<Identity> <Identity>
<SpecificName>Melonas</SpecificName> <SpecificName>Melonas</SpecificName>
</Identity> </Identity>