1
0
forked from 0ad/0ad

make a wooden tower template for each civ, refs #3059

This was SVN commit r16878.
This commit is contained in:
mimo 2015-07-26 14:43:21 +00:00
parent edd03ad557
commit 4054e5cb04
18 changed files with 147 additions and 47 deletions

View File

@ -1450,13 +1450,13 @@ m.HQ.prototype.buildDefenses = function(gameState, queues)
}
}
if (this.Config.Military.numWoodenTowers && gameState.currentPhase() < 2 && this.canBuild(gameState, "other/palisades_rocks_fort"))
if (this.Config.Military.numWoodenTowers && gameState.currentPhase() < 2 && this.canBuild(gameState, "structures/{civ}_wooden_tower"))
{
let numTowers = gameState.getOwnEntitiesByClass("Tower", true).length; // we count all towers, including wall towers
if (numTowers < this.Config.Military.numWoodenTowers && gameState.ai.elapsedTime > this.towerLapseTime + this.fortStartTime)
{
this.fortStartTime = gameState.ai.elapsedTime;
queues.defenseBuilding.addItem(new m.ConstructionPlan(gameState, "other/palisades_rocks_fort"));
queues.defenseBuilding.addItem(new m.ConstructionPlan(gameState, "structures/{civ}_wooden_tower"));
}
return;
}

View File

@ -10,8 +10,8 @@
},
"description": "A night's watch increases vigilance.",
"cost": {"food": 500, "wood": 0, "stone": 0, "metal": 0},
"requirements": {"tech": "phase_town"},
"requirementsTooltip": "Unlocked in Town Phase.",
"requirements": {"tech": "phase_village"},
"requirementsTooltip": "Unlocked in Village Phase.",
"icon": "helmet_corinthian_bronze.png",
"researchTime": 40,
"tooltip": "Post sentries to add one arrow to towers.",

View File

@ -1,48 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_defense_tower">
<Armour>
<Hack>5.0</Hack>
<Pierce>20.0</Pierce>
<Crush>1.0</Crush>
</Armour>
<Attack>
<Ranged>
<Hack>0.0</Hack>
<Pierce>6.0</Pierce>
<Crush>0.0</Crush>
<MaxRange>60.0</MaxRange>
<MinRange>4.0</MinRange>
</Ranged>
</Attack>
<Cost>
<BuildTime>40</BuildTime>
<Resources>
<wood>100</wood>
<stone>0</stone>
</Resources>
</Cost>
<Footprint>
<Square width="9.5" depth="8.5"/>
<Height>9.0</Height>
</Footprint>
<Health>
<Max>250</Max>
</Health>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>gaia</Civ>
<SpecificName>Palisade Fort</SpecificName>
<GenericName>Wooden Tower</GenericName>
<Classes datatype="tokens">Palisade</Classes>
<History>A cheap, quick defensive structure constructed with sharpened tree trunks</History>
<Icon>structures/palisade_fort.png</Icon>
<VisibleClasses datatype="tokens">Village -Town DefenseTower</VisibleClasses>
<Classes datatype="tokens">WoodenTower Palisade</Classes>
<VisibleClasses datatype="tokens">Village -Town</VisibleClasses>
<RequiredTechnology>phase_village</RequiredTechnology>
</Identity>
<Obstruction>
<Static width="9.0" depth="7.5"/>
</Obstruction>
<TerritoryInfluence disable=""/>
<VisualActor>
<Actor>props/special/palisade_rocks_fort.xml</Actor>
</VisualActor>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>athen</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>brit</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>cart</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>gaul</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>iber</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>mace</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>maur</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>pers</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>ptol</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>rome</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>sele</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_wooden_tower">
<Identity>
<Civ>spart</Civ>
</Identity>
</Entity>

View File

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_defense_defense_tower">
<Armour>
<Hack>5.0</Hack>
<Pierce>20.0</Pierce>
<Crush>1.0</Crush>
</Armour>
<Attack>
<Ranged>
<Hack>0.0</Hack>
<Pierce>6.0</Pierce>
<Crush>0.0</Crush>
<MaxRange>60.0</MaxRange>
<MinRange>4.0</MinRange>
</Ranged>
</Attack>
<Cost>
<BuildTime>40</BuildTime>
<Resources>
<wood>100</wood>
<stone>0</stone>
</Resources>
</Cost>
<Capturable>
<CapturePoints>800</CapturePoints>
</Capturable>
<Footprint>
<Square width="9.5" depth="8.5"/>
<Height>9.0</Height>
</Footprint>
<Health>
<Max>250</Max>
</Health>
<GarrisonHolder>
<Max>3</Max>
</GarrisonHolder>
<Identity>
<SpecificName>Wooden Tower</SpecificName>
<GenericName>Wooden Tower</GenericName>
<History>A cheap, quick defensive structure constructed with sharpened tree trunks</History>
<Icon>structures/palisade_fort.png</Icon>
<Classes datatype="tokens">WoodenTower</Classes>
<VisibleClasses datatype="tokens">Village -Town</VisibleClasses>
<RequiredTechnology>phase_village</RequiredTechnology>
</Identity>
<ProductionQueue>
<Technologies datatype="tokens">
-attack_tower_crenellations
-attack_tower_range
-attack_tower_defense
</Technologies>
</ProductionQueue>
<Obstruction>
<Static width="9.0" depth="7.5"/>
</Obstruction>
<TerritoryInfluence disable=""/>
<StatusBars>
<HeightOffset>18.0</HeightOffset>
</StatusBars>
<VisualActor>
<Actor>props/special/palisade_rocks_fort.xml</Actor>
</VisualActor>
</Entity>

View File

@ -28,7 +28,7 @@
structures/{civ}_corral
structures/{civ}_outpost
other/wallset_palisade
other/palisades_rocks_fort
structures/{civ}_wooden_tower
structures/{civ}_dock
structures/{civ}_barracks
structures/{civ}_blacksmith

View File

@ -2,8 +2,8 @@
<Entity parent="template_unit_infantry_melee_swordsman">
<Builder>
<Entities datatype="tokens">
-other/wallset_palisade
-other/palisades_rocks_fort
-other/wallset_palisade
-structures/{civ}_wooden_tower
structures/rome_army_camp
structures/rome_wallset_siege
structures/{civ}_wonder
@ -12,8 +12,8 @@
<Identity>
<Civ>rome</Civ>
<Lang>latin</Lang>
<SelectionGroupName>units/rome_infantry_swordsman_b</SelectionGroupName>
<GenericName>Roman Swordsman</GenericName>
<SelectionGroupName>units/rome_infantry_swordsman_b</SelectionGroupName>
<GenericName>Roman Swordsman</GenericName>
<SpecificName>Hastatus</SpecificName>
<Icon>units/rome_infantry_swordsman.png</Icon>
<History>The hastati were the first line of heavy infantry in the early Republican Roman army. They used pila and gladii as their main weapons, throwing the former into the enemy formation and then closing with the sword. For defense they used a large shield called a scutum and wore the best armor they could afford. Hastati were recruited from the young men of Rome, a small part of the 700,000 troops Rome could bring to bear against its opponents.</History>