~ubuntu-app-review-contributors/ubuntu-app-reviews/conquests

« back to all changes in this revision

Viewing changes to conquests/conquests/data/scripts/generate_buildables.lua

  • Committer: Andrew Mitchell
  • Author(s): Mark Harman
  • Date: 2012-09-22 08:42:00 UTC
  • Revision ID: ajmitch@ubuntu.com-20120922084200-okn4hegosnhkdnej
Tags: 1.2.1
* Fixed makefile for Ubuntu 12.04.
* Mousewheel zoom wasn't working when mouse was over minimap.
* Application icon.
* Display history for military strength too, under F5 scores screens.
* Improved method of not displaying the movement buttons (wasn't working
  right for high resolutions).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
print("generate_buildables.lua enter")
 
2
 
 
3
-- Improvements
 
4
 
 
5
-- N.B., some effects of Improvements are hardcoded.
 
6
 
 
7
-- Arguments: Name, cost, required technology, ai weighting
 
8
 
 
9
-- ancient
 
10
 
 
11
improvement = conquests_addNewImprovement("Barracks", 40, "Military Tactics", 30)
 
12
        -- TODO: avoid hardcoded 25 turns
 
13
        conquests_buildableSetInfo(improvement, "The Barracks improvement will automatically produce one military unit of footsoldiers every 25 turns.")
 
14
        conquests_improvementRebellionBonus(improvement, 25)
 
15
        conquests_buildableSetAdvice(improvement, "A barracks will allow units to be recruited automatically from the general population, as well as helping to keep control of your population.")
 
16
 
 
17
improvement = conquests_addNewImprovement("Farmland", 20, "Agriculture", 0)
 
18
        -- AI weight 0, handled with specific code
 
19
        -- TODO: avoid hardcoded size 3
 
20
        conquests_buildableSetInfo(improvement, "Farmland is required for a town to grow beyond population 16,000.")
 
21
        conquests_buildableSetAdvice(improvement, "Farmland will allow our town to expand.")
 
22
 
 
23
improvement = conquests_addNewImprovement("Aqueduct", 60, "Construction", 0)
 
24
        -- AI weight 0, handled with specific code
 
25
        -- TODO: avoid hardcoded size 6
 
26
        conquests_buildableSetInfo(improvement, "An Aqueduct is required for a city to grow beyond population 31,000.")
 
27
        conquests_buildableSetRequiresImprovement(improvement, "Farmland")
 
28
        conquests_buildableSetAdvice(improvement, "An Aqueduct will allow our city to expand.")
 
29
 
 
30
improvement = conquests_addNewImprovement("Fort", 40, "", 10)
 
31
        improvement_fort = improvement
 
32
        conquests_buildableSetInfo(improvement, "A Fort increases the defence of your units in the city by 25%, unless the attacker has discovered Gunpowder.")
 
33
        conquests_buildableSetObsoletedBy(improvement, "Gunpowder")
 
34
        conquests_improvementRebellionBonus(improvement, 25)
 
35
        conquests_buildableSetAdvice(improvement, "A Fort will provide some basic protection for our city, as well as helping to reduce disorder.")
 
36
 
 
37
improvement = conquests_addNewImprovement("Quarry", 20, "", 40)
 
38
        conquests_buildableSetAdvice(improvement, "A Quarry will allow the extraction of large quantities of stone, allowing a greater range of improvements to be built.")
 
39
 
 
40
improvement = conquests_addNewImprovement("Harbour", 40, "Sailing", 15)
 
41
        improvement_harbour = improvement
 
42
        conquests_buildableSetInfo(improvement, "A Harbour allows exploration and travel by sea.")
 
43
        conquests_improvementSetRequiresCoastal(improvement, true)
 
44
        conquests_improvementSetTravelRange(improvement, 5, false)
 
45
        conquests_improvementSetPowerPerTurn(improvement, 1)
 
46
        conquests_buildableSetAdvice(improvement, "A Harbour will allow us to explore nearby waters.")
 
47
 
 
48
improvement = conquests_addNewImprovement("Library", 40, "Writing", 5)
 
49
        conquests_improvementSetResearchMultiplierBonus(improvement, 50, false)
 
50
        conquests_improvementSetPowerPerTurn(improvement, 1)
 
51
        conquests_improvementSetAIHint(improvement, IMPROVEMENT_AIHINT_RESEARCH)
 
52
        conquests_buildableSetAdvice(improvement, "A Library will allow us to preserve and access vital knowledge, allowing our scholars to more quickly make progress in their discoveries.")
 
53
 
 
54
improvement = conquests_addNewImprovement("Mine", 20, "Iron Working", 50)
 
55
        conquests_buildableSetAdvice(improvement, "A Mine will allow the mining of iron, allowing a range of improvements and powerful military units to be built.")
 
56
 
 
57
improvement = conquests_addNewImprovement("Temple", 20, "Masonry", 0)
 
58
        improvement_temple = improvement
 
59
        conquests_buildableSetObsoletedBy(improvement, "Feudalism")
 
60
        conquests_improvementSetPowerPerTurn(improvement, 1)
 
61
        conquests_improvementSetGrowthRate(improvement, -1)
 
62
        conquests_improvementRebellionBonus(improvement, 25)
 
63
        conquests_buildableSetAdvice(improvement, "A Temple will keep the population happy, and make your city grow at a faster rate.")
 
64
 
 
65
improvement = conquests_addNewImprovement("Walls", 80, "Masonry", 15)
 
66
        conquests_buildableSetInfo(improvement, "City Walls increase the defence of your units in the city by 50%, unless the attacker has discovered Gunpowder. They also protect against population losses when your city is attacked, for cities of population 31,000 of less.\n\nReplaces Fort.")
 
67
        conquests_buildableSetObsoletedBy(improvement, "Gunpowder")
 
68
        conquests_buildableSetReplacedBy(improvement_fort, improvement)
 
69
        conquests_buildableSetAdvice(improvement, "A Wall for your city will provide protection from attack.")
 
70
 
 
71
improvement = conquests_addNewImprovement("Market", 40, "Trade", 15)
 
72
        conquests_improvementSetPowerPerTurn(improvement, 2)
 
73
        conquests_buildableSetAdvice(improvement, "A Market will allow us to trade our gold, bringing extra growth to the city.")
 
74
 
 
75
-- medieval
 
76
 
 
77
improvement = conquests_addNewImprovement("Armourer", 40, "Medieval Arms", 40)
 
78
        improvement_armourer = improvement
 
79
        conquests_buildableSetRequiresImprovement(improvement, "Mine")
 
80
        conquests_buildableSetObsoletedBy(improvement, "Firearms")
 
81
        conquests_buildableSetAdvice(improvement, "An Armourer will allow us to build new and advanced weaponry to defeat our enemies.")
 
82
 
 
83
improvement = conquests_addNewImprovement("Castle", 40, "Castles", 20)
 
84
        conquests_buildableSetInfo(improvement, "A Castle increases the defence of your units in the city by 50%, unless the attacker has discovered Gunpowder.")
 
85
        conquests_buildableSetObsoletedBy(improvement, "Gunpowder")
 
86
        conquests_improvementSetPowerPerTurn(improvement, 3)
 
87
        conquests_improvementRebellionBonus(improvement, 25)
 
88
        conquests_buildableSetAdvice(improvement, "A Castle will allow us to defend our city, and increase public order.")
 
89
 
 
90
improvement = conquests_addNewImprovement("Church", 40, "Feudalism", 20)
 
91
        conquests_buildableSetObsoletedBy(improvement, "Scientific Method")
 
92
        conquests_improvementSetPowerPerTurn(improvement, 3)
 
93
        conquests_buildableSetReplacedBy(improvement_temple, improvement)
 
94
        conquests_improvementSetGrowthRate(improvement, -1)
 
95
        conquests_improvementRebellionBonus(improvement, 25)
 
96
        conquests_buildableSetAdvice(improvement, "A Church will keep the population happy, and make your city grow at a faster rate.")
 
97
 
 
98
improvement = conquests_addNewImprovement("Cathedral", 100, "Feudalism", 10)
 
99
        conquests_buildableSetObsoletedBy(improvement, "Scientific Method")
 
100
        conquests_improvementSetPowerPerTurn(improvement, 6)
 
101
        conquests_improvementSetGrowthRate(improvement, -1)
 
102
        conquests_buildableSetRequiresImprovement(improvement, "Church")
 
103
        conquests_improvementRebellionBonus(improvement, 25)
 
104
        conquests_buildableSetAdvice(improvement, "A Cathedral will keep the population happy, and make your city grow at a faster rate.")
 
105
 
 
106
improvement = conquests_addNewImprovement("Port", 60, "Navigation", 15)
 
107
        conquests_buildableSetInfo(improvement, "A Port allows exploration and travel by sea.")
 
108
        conquests_improvementSetRequiresCoastal(improvement, true)
 
109
        conquests_improvementSetTravelRange(improvement, 10, false)
 
110
        conquests_improvementSetPowerPerTurn(improvement, 2)
 
111
        conquests_buildableSetReplacedBy(improvement_harbour, improvement)
 
112
        conquests_buildableSetAdvice(improvement, "A Harbour will allow us to explore the world's oceans.")
 
113
 
 
114
improvement = conquests_addNewImprovement("University", 100, "Education", 5)
 
115
        conquests_improvementSetResearchMultiplierBonus(improvement, 50, false)
 
116
        conquests_buildableSetRequiresImprovement(improvement, "Library")
 
117
        conquests_improvementSetPowerPerTurn(improvement, 4)
 
118
        conquests_improvementSetAIHint(improvement, IMPROVEMENT_AIHINT_RESEARCH)
 
119
        conquests_buildableSetAdvice(improvement, "A University will increase the level of scientific research and progress in our city.")
 
120
 
 
121
-- industrial
 
122
 
 
123
improvement = conquests_addNewImprovement("Coastal Defence", 100, "Steam Power", 30)
 
124
        conquests_buildableSetInfo(improvement, "A Coastal Defence increases the defence bonus against sea attacks to 50%.")
 
125
        conquests_improvementSetRequiresCoastal(improvement, true)
 
126
        conquests_buildableSetAdvice(improvement, "A Coastal Defence will help defend our naval units against attacks from the sea.")
 
127
 
 
128
improvement = conquests_addNewImprovement("Factory", 400, "Industrial Revolution", 30)
 
129
        conquests_buildableSetInfo(improvement, "A Factory increases the maximum city size, once you have discovered Combustion.")
 
130
        conquests_buildableSetRequiresImprovement(improvement, "Mine")
 
131
        conquests_buildableSetReplacedBy(improvement_armourer, improvement)
 
132
        conquests_buildableSetAdvice(improvement, "A Factory will allow us to manufacturer a range of modern improvements and military units.")
 
133
 
 
134
improvement = conquests_addNewImprovement("Powder Mill", 80, "Gunpowder", 50)
 
135
        conquests_buildableSetRequiresImprovement(improvement, "Mine")
 
136
        conquests_buildableSetObsoletedBy(improvement, "Motorised Warfare") -- as after we can build Tanks, Gunpowder is no longer required
 
137
        conquests_buildableSetAdvice(improvement, "A Powder Mill will allow us to manufacturer gunpowder, allowing us to develop new weapons to blast our enemies to bits!")
 
138
 
 
139
improvement = conquests_addNewImprovement("Hospital", 300, "Medicine", 10)
 
140
        conquests_improvementSetPowerPerTurn(improvement, 12)
 
141
        conquests_improvementSetGrowthRate(improvement, -2)
 
142
        conquests_buildableSetAdvice(improvement, "A Hospital will increase the life expectancy of our citizens, helping us to grow faster.")
 
143
 
 
144
improvement = conquests_addNewImprovement("School", 300, "Industrial Revolution", 5)
 
145
        conquests_buildableSetInfo(improvement, "A School increases the basic rate of scientific research in the city by 2.")
 
146
        conquests_improvementSetPowerPerTurn(improvement, 12)
 
147
        conquests_improvementSetAIHint(improvement, IMPROVEMENT_AIHINT_RESEARCH)
 
148
        conquests_buildableSetAdvice(improvement, "A school will increase the level of education in our city.")
 
149
 
 
150
-- modern
 
151
 
 
152
improvement = conquests_addNewImprovement("Airport", 600, "Flight", 30)
 
153
        conquests_buildableSetInfo(improvement, "An Airport allows air units to bomb from here, or rebase from or to here, and allows exploration and travel by air.")
 
154
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
155
        conquests_improvementSetTravelRange(improvement, biplane_travel_range_c, true)
 
156
        conquests_improvementSetPowerPerTurn(improvement, 25)
 
157
        conquests_buildableSetAdvice(improvement, "An Airport will allow us to build air units, as well as transport units by air.")
 
158
 
 
159
improvement = conquests_addNewImprovement("Anti-Air Guns", 800, "Advanced Flight", 15)
 
160
        improvement_antiairguns = improvement
 
161
        conquests_buildableSetInfo(improvement, "Can defend against air attacks, defence 4.")
 
162
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
163
        conquests_improvementSetAirDefence(improvement, 4)
 
164
        conquests_buildableSetAdvice(improvement, "Anti-Air Guns will defend our city from enemy invasions by air.")
 
165
 
 
166
improvement = conquests_addNewImprovement("Lab", 500, "Computer", 5)
 
167
        conquests_buildableSetInfo(improvement, "A Lab increases the rate of scientific research in the city by 50%.")
 
168
        conquests_buildableSetRequiresImprovement(improvement, "University")
 
169
        conquests_improvementSetPowerPerTurn(improvement, 20)
 
170
        conquests_improvementSetAIHint(improvement, IMPROVEMENT_AIHINT_RESEARCH)
 
171
        conquests_buildableSetAdvice(improvement, "A Lab will allow our scientists to make greater progress in their research.")
 
172
 
 
173
improvement = conquests_addNewImprovement("Missile Launcher", 800, "Rocketry", 30)
 
174
        conquests_buildableSetInfo(improvement, "A Missile Launcher allows missile units to bomb from here.")
 
175
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
176
        conquests_improvementSetImmuneFromBombing(improvement, true) -- so if a civilization is nuked, they can retaliate
 
177
        conquests_buildableSetAdvice(improvement, "A Missile Launcher will allow us to launch missiles against our enemies!")
 
178
 
 
179
improvement = conquests_addNewImprovement("Radar Tower", 600, "Advanced Flight", 30)
 
180
        conquests_buildableSetInfo(improvement, "A Radar Tower increases the visibility around a city.")
 
181
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
182
        conquests_improvementSetAIHint(improvement, IMPROVEMENT_AIHINT_FOW)
 
183
        conquests_buildableSetAdvice(improvement, "A Radar Tower will allow us to monitor the movements of our enemies near the city.")
 
184
 
 
185
improvement = conquests_addNewImprovement("SAM Launcher", 1600, "Rocketry", 30)
 
186
        conquests_buildableSetInfo(improvement, "Can defend against air attacks, defence 12.")
 
187
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
188
        conquests_improvementSetAirDefence(improvement, 12)
 
189
        conquests_buildableSetReplacedBy(improvement_antiairguns, improvement)
 
190
        conquests_buildableSetAdvice(improvement, "A SAM Launcher will defend our city from enemy invasions by air.")
 
191
 
 
192
improvement = conquests_addNewImprovement("Bomb Shelter", 1000, "Nuclear Missiles", 30)
 
193
        conquests_buildableSetInfo(improvement, "May reduce population deaths from nuclear attacks.")
 
194
        conquests_buildableSetRequiresImprovement(improvement, "Factory")
 
195
        conquests_improvementSetImmuneFromBombing(improvement, true)
 
196
        conquests_buildableSetAdvice(improvement, "A Bomb Shelter will help to reduce deaths in the event of a nuclear attack.")
 
197
 
 
198
improvement = conquests_addNewImprovement("Spaceport", 2000, "Satellites", 0)
 
199
        conquests_buildableSetRequiresImprovement(improvement, "Airport")
 
200
        conquests_improvementSetPowerPerTurn(improvement, 50)
 
201
        conquests_buildableSetAdvice(improvement, "A Spaceport will show the world how powerful our civilization is.")
 
202
 
 
203
improvement = conquests_addNewImprovement("SDI Lasers", 2000, "Space Militarisation", 40)
 
204
        conquests_buildableSetInfo(improvement, "80% chance of preventing nuclear attacks to this city.")
 
205
        conquests_buildableSetRequiresImprovement(improvement, "Spaceport")
 
206
        conquests_buildableSetAdvice(improvement, "SDI Lasers will allow us to shoot down enemy nuclear missiles.")
 
207
 
 
208
-- Race specific
 
209
 
 
210
improvement = conquests_addNewImprovement("Pyramids", 200, "Masonry", 30)
 
211
        conquests_buildableSetInfo(improvement, "")
 
212
        conquests_buildableSetObsoletedBy(improvement, "Gunpowder")
 
213
        conquests_improvementSetProductionBonus(improvement, 1, true)
 
214
        conquests_buildableSetAdvice(improvement, "The Pyramids represent an immense architectural achievement.")
 
215
 
 
216
improvement = conquests_addNewImprovement("Colossus", 200, "", 30)
 
217
        conquests_buildableSetInfo(improvement, "")
 
218
        conquests_buildableSetObsoletedBy(improvement, "Magnetism")
 
219
        conquests_improvementSetGrowthRate(improvement, -5)
 
220
        conquests_buildableSetAdvice(improvement, "The Colossus will draw people from all over the known world to come to our city.")
 
221
 
 
222
improvement = conquests_addNewImprovement("Himeji Castle", 400, "Castles", 30)
 
223
        conquests_buildableSetInfo(improvement, "")
 
224
        conquests_buildableSetObsoletedBy(improvement, "Industrial Revolution")
 
225
        conquests_improvementSetDefenceBonus(improvement, 50, true)
 
226
        conquests_buildableSetAdvice(improvement, "Himeji Castle will provide greater defence across our civilization.")
 
227
 
 
228
improvement = conquests_addNewImprovement("Great Temple", 200, "Masonry", 30)
 
229
        conquests_buildableSetInfo(improvement, "")
 
230
        conquests_buildableSetObsoletedBy(improvement, "Gunpowder")
 
231
        conquests_improvementSetGrowthRate(improvement, -5)
 
232
        conquests_buildableSetAdvice(improvement, "The Great Temple will draw people from all over the known world to come to our city.")
 
233
 
 
234
improvement = conquests_addNewImprovement("Colosseum", 200, "Masonry", 30)
 
235
        conquests_buildableSetInfo(improvement, "")
 
236
        conquests_buildableSetObsoletedBy(improvement, "Industrial Revolution")
 
237
        conquests_improvementSetGrowthRate(improvement, -4)
 
238
        conquests_buildableSetAdvice(improvement, "The Colosseum will draw people from all over the known world to come to our city.")
 
239
 
 
240
improvement = conquests_addNewImprovement("Hammer of Thor", 100, "Sailing", 30)
 
241
        conquests_buildableSetInfo(improvement, "")
 
242
        conquests_buildableSetObsoletedBy(improvement, "Magnetism")
 
243
        conquests_improvementSetAutoVeteranBonus(improvement, true, true)
 
244
        conquests_buildableSetAdvice(improvement, "The Hammer of Thor will be a source of inspiration to all our warriors.")
 
245
 
 
246
improvement = conquests_addNewImprovement("Apollo Programme", 3000, "Spaceflight", 30)
 
247
        conquests_buildableSetInfo(improvement, "")
 
248
        conquests_improvementSetResearchMultiplierBonus(improvement, 100, true)
 
249
        conquests_buildableSetAdvice(improvement, "The Apollo Programme will be a great scientific and technological achievement for our civilization.")
 
250
 
 
251
improvement = conquests_addNewImprovement("Stonehenge", 100, "", 30)
 
252
        conquests_buildableSetInfo(improvement, "")
 
253
        conquests_buildableSetObsoletedBy(improvement, "Feudalism")
 
254
        conquests_improvementSetGrowthRate(improvement, -4)
 
255
        conquests_buildableSetAdvice(improvement, "Stonehenge will draw people from all over the known world to come to our city.")
 
256
 
 
257
improvement = conquests_addNewImprovement("Eiffel Tower", 800, "Steam Power", 30)
 
258
        conquests_buildableSetInfo(improvement, "")
 
259
        conquests_buildableSetObsoletedBy(improvement, "Spaceflight")
 
260
        conquests_improvementSetProductionBonus(improvement, 2, true)
 
261
        conquests_buildableSetAdvice(improvement, "The Pyramids represent an immense architectural achievement.")
 
262
 
 
263
improvement = conquests_addNewImprovement("Mir Space Station", 3000, "Satellites", 30)
 
264
        conquests_buildableSetInfo(improvement, "")
 
265
        conquests_improvementSetResearchMultiplierBonus(improvement, 100, true)
 
266
        conquests_buildableSetAdvice(improvement, "The Mir Space Station will be a great scientific and technological achievement for our civilization.")
 
267
 
 
268
--[[
 
269
improvement = conquests_addNewImprovement("", 40, "", 15)
 
270
        conquests_buildableSetInfo(improvement, "")
 
271
        conquests_improvementSet(improvement, )
 
272
--]]
 
273
 
 
274
-- Unit Templates
 
275
 
 
276
-- Note that any new units must have a corresponding image in conquests/data/gfx/, called unit_NAME.png, where
 
277
-- NAME is the unit's name.
 
278
 
 
279
-- Arguments: Name, cost, required technology, attack, defence, moves
 
280
 
 
281
-- special
 
282
 
 
283
unit_template = conquests_addNewUnitTemplate("Settlers", 20, "", 0, 0, 1)
 
284
        conquests_buildableSetInfo(unit_template, "Settlers may only be built in cities of population greater than 10,000.")
 
285
        conquests_unitTemplateSetFoot(unit_template, true)
 
286
        conquests_unitTemplateSetCanBuildCity(unit_template, true)
 
287
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
288
        conquests_buildableSetAdvice(unit_template, "Settlers will allow us to build new cities, and expand our civilization.")
 
289
 
 
290
-- ancient
 
291
 
 
292
unit_template = conquests_addNewUnitTemplate("Archers", 15, "Archery", 2, 1, 1)
 
293
        unit_template_archers = unit_template
 
294
        conquests_unitTemplateSetFoot(unit_template, true)
 
295
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
296
        conquests_buildableSetAdvice(unit_template, "These will provide us with a basic unit to attack the enemy.")
 
297
 
 
298
unit_template = conquests_addNewUnitTemplate("Catapults", 40, "Mathematics", 6, 1, 1)
 
299
        unit_template_catapults = unit_template
 
300
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
301
        conquests_buildableSetAdvice(unit_template, "Catapults are a devastating weapon of war which we can use to crush the enemy.")
 
302
 
 
303
unit_template = conquests_addNewUnitTemplate("Chariots", 40, "The Wheel", 4, 1, 2)
 
304
        unit_template_chariots = unit_template
 
305
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
306
        conquests_buildableSetAdvice(unit_template, "Chariots are a fast and powerful attack weapon of the ancient era.")
 
307
 
 
308
unit_template = conquests_addNewUnitTemplate("Horsemen", 20, "Horse Riding", 2, 1, 2)
 
309
        unit_template_horsemen = unit_template
 
310
        conquests_buildableSetAdvice(unit_template, "Horsemen can quickly explore the land.")
 
311
 
 
312
unit_template = conquests_addNewUnitTemplate("Swordsmen", 30, "Iron Working", 3, 2, 1)
 
313
        unit_template_swordsmen = unit_template
 
314
        conquests_unitTemplateSetFoot(unit_template, true)
 
315
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
316
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
317
        --conquests_buildableSetRequiresImprovement(unit_template, "Mine")
 
318
        --no longer need mine, now done via Iron element
 
319
        conquests_buildableSetAdvice(unit_template, "Swordsmen will allow us to build up a powerful army.")
 
320
 
 
321
unit_template = conquests_addNewUnitTemplate("Peasants", 10, "", 1, 1, 1)
 
322
        unit_template_peasants = unit_template
 
323
        conquests_unitTemplateSetFoot(unit_template, true)
 
324
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
325
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
326
        conquests_buildableSetAdvice(unit_template, "Peasants can be used to build roads for our civilization, as well as providing arrow fodder.")
 
327
 
 
328
unit_template = conquests_addNewUnitTemplate("Spearmen", 20, "Bronze Working", 1, 2, 1)
 
329
        unit_template_spearmen = unit_template
 
330
        conquests_unitTemplateSetFoot(unit_template, true)
 
331
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
332
        conquests_buildableSetAdvice(unit_template, "Spearmen will defend our city against enemy attack.")
 
333
 
 
334
-- medieval
 
335
 
 
336
unit_template = conquests_addNewUnitTemplate("Knights", 40, "Medieval Arms", 5, 2, 2)
 
337
        unit_template_knights = unit_template
 
338
        conquests_buildableSetRequiresImprovement(unit_template, "Armourer")
 
339
        conquests_buildableSetReplacedBy(unit_template_chariots, unit_template)
 
340
        conquests_buildableSetReplacedBy(unit_template_horsemen, unit_template)
 
341
        conquests_buildableSetAdvice(unit_template, "Knights are a fast and powerful force that can be used to crush the enemy.")
 
342
 
 
343
unit_template = conquests_addNewUnitTemplate("Men-At-Arms", 30, "Medieval Arms", 3, 3, 1)
 
344
        unit_template_men_at_arms = unit_template
 
345
        conquests_unitTemplateSetFoot(unit_template, true)
 
346
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
347
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
348
        conquests_buildableSetRequiresImprovement(unit_template, "Armourer")
 
349
        conquests_buildableSetReplacedBy(unit_template_swordsmen, unit_template)
 
350
        conquests_buildableSetAdvice(unit_template, "Men-At-Arms will allow us to build up a powerful army.")
 
351
 
 
352
unit_template = conquests_addNewUnitTemplate("Pikemen", 25, "Medieval Arms", 1, 3, 1)
 
353
        unit_template_pikemen = unit_template
 
354
        conquests_unitTemplateSetFoot(unit_template, true)
 
355
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
356
        conquests_buildableSetReplacedBy(unit_template_spearmen, unit_template)
 
357
        conquests_buildableSetAdvice(unit_template, "Pikemen will provide improved defence for our cities.")
 
358
 
 
359
-- industrial
 
360
 
 
361
unit_template = conquests_addNewUnitTemplate("Cannon", 60, "Gunpowder", 8, 1, 1)
 
362
        unit_template_cannon = unit_template
 
363
        conquests_buildableSetReplacedBy(unit_template_catapults, unit_template)
 
364
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
365
        conquests_buildableSetAdvice(unit_template, "A cannon will allow us to blast our enemies to bits!")
 
366
 
 
367
unit_template = conquests_addNewUnitTemplate("Cuirassiers", 80, "Firearms", 6, 3, 3)
 
368
        unit_template_cuirassiers = unit_template
 
369
        conquests_buildableSetReplacedBy(unit_template_knights, unit_template)
 
370
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
371
        conquests_buildableSetAdvice(unit_template, "Cuirassiers are a fast, powerful unit.")
 
372
 
 
373
unit_template = conquests_addNewUnitTemplate("Militia", 20, "Nationalism", 2, 2, 1)
 
374
        conquests_unitTemplateSetFoot(unit_template, true)
 
375
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
376
        conquests_buildableSetReplacedBy(unit_template_peasants, unit_template)
 
377
        conquests_buildableSetReplacedBy(unit_template_archers, unit_template)
 
378
        conquests_buildableSetAdvice(unit_template, "Militia can be used to build roads for our civilization, as well as providing cannon fodder.")
 
379
 
 
380
unit_template = conquests_addNewUnitTemplate("Musketeers", 50, "Firearms", 3, 6, 1)
 
381
        unit_template_musketeers = unit_template
 
382
        conquests_unitTemplateSetFoot(unit_template, true)
 
383
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
384
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
385
        conquests_buildableSetReplacedBy(unit_template_men_at_arms, unit_template)
 
386
        conquests_buildableSetReplacedBy(unit_template_pikemen, unit_template)
 
387
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
388
        conquests_buildableSetAdvice(unit_template, "Musketeers will defend our cities using the newly developed firearms.")
 
389
 
 
390
unit_template = conquests_addNewUnitTemplate("Riflemen", 80, "Nationalism", 3, 8, 1)
 
391
        unit_template_riflemen = unit_template
 
392
        conquests_unitTemplateSetFoot(unit_template, true)
 
393
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
394
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
395
        conquests_buildableSetReplacedBy(unit_template_musketeers, unit_template)
 
396
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
397
        conquests_buildableSetAdvice(unit_template, "Riflemen have improved accuracy shooting at the enemy, and will defend our cities more effectively.")
 
398
 
 
399
-- modern
 
400
 
 
401
unit_template = conquests_addNewUnitTemplate("Infantry", 200, "Explosives", 8, 14, 1)
 
402
        unit_template_infantry = unit_template
 
403
        conquests_unitTemplateSetFoot(unit_template, true)
 
404
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
405
        conquests_unitTemplateSetUpgrade(unit_template, true)
 
406
        conquests_buildableSetRequiresImprovement(unit_template, "Factory")
 
407
        conquests_buildableSetReplacedBy(unit_template_riflemen, unit_template)
 
408
        conquests_buildableSetReplacedBy(unit_template_cannon, unit_template)
 
409
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_BREAK)
 
410
        conquests_buildableSetAdvice(unit_template, "Infantry provide us with a modern fighting unit, good for both attack and defence.")
 
411
 
 
412
unit_template = conquests_addNewUnitTemplate("Tanks", 800, "Motorised Warfare", 24, 12, 3)
 
413
        unit_template_tanks = unit_template
 
414
        conquests_buildableSetRequiresImprovement(unit_template, "Factory")
 
415
        conquests_buildableSetReplacedBy(unit_template_cuirassiers, unit_template)
 
416
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_GUNSHOT)
 
417
        conquests_buildableSetAdvice(unit_template, "Tanks will allow us to break through the stalemate of trench warfare. Let us use these new weapons to defeat the enemy!")
 
418
 
 
419
unit_template = conquests_addNewUnitTemplate("Modern Infantry", 800, "Rocketry", 16, 28, 1)
 
420
        conquests_unitTemplateSetFoot(unit_template, true)
 
421
        conquests_unitTemplateSetCanBuildRoads(unit_template, true)
 
422
        conquests_buildableSetRequiresImprovement(unit_template, "Factory")
 
423
        conquests_buildableSetReplacedBy(unit_template_infantry, unit_template)
 
424
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_GUNSHOT)
 
425
        conquests_buildableSetAdvice(unit_template, "These units carry the latest weaponry, making them excellent at attack and defence.")
 
426
 
 
427
unit_template = conquests_addNewUnitTemplate("Modern Tanks", 2500, "Microprocessor", 36, 24, 4)
 
428
        conquests_buildableSetRequiresImprovement(unit_template, "Factory")
 
429
        --conquests_buildableSetReplacedBy(unit_template_tanks, unit_template)
 
430
        conquests_unitTemplateSetSoundEffectCombat(unit_template, SOUNDEFFECT_GUNSHOT)
 
431
        conquests_buildableSetAdvice(unit_template, "These tanks are the most advanced fighting units the world has seen!")
 
432
 
 
433
-- air units
 
434
 
 
435
unit_template = conquests_addNewUnitTemplate("Biplanes", 100, "Flight", 0, 0, 1)
 
436
        unit_template_biplanes = unit_template
 
437
        conquests_unitTemplateSetAir(unit_template, 1, 1, biplane_travel_range_c, false)
 
438
        conquests_unitTemplateSetVisibilityRange(unit_template, biplane_travel_range_c)
 
439
        conquests_unitTemplateSetBombard(unit_template, 10, 40)
 
440
        conquests_buildableSetAdvice(unit_template, "Let us take advantage of the new flying machines to find a new way to attack the enemy!")
 
441
 
 
442
unit_template = conquests_addNewUnitTemplate("Fighters", 200, "Advanced Flight", 0, 0, 1)
 
443
        unit_template_fighters = unit_template
 
444
        conquests_unitTemplateSetAir(unit_template, 0, 8, bombers_travel_range_c, false)
 
445
        conquests_unitTemplateSetVisibilityRange(unit_template, bombers_travel_range_c)
 
446
        conquests_unitTemplateSetBombard(unit_template, 0, 0)
 
447
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
448
        conquests_buildableSetReplacedBy(unit_template_biplanes, unit_template)
 
449
        conquests_buildableSetAdvice(unit_template, "We need to defend ourselves from possible attack from the air.")
 
450
 
 
451
unit_template = conquests_addNewUnitTemplate("Bombers", 400, "Advanced Flight", 0, 0, 1)
 
452
        unit_template_bombers = unit_template
 
453
        conquests_unitTemplateSetAir(unit_template, 8, 0, bombers_travel_range_c, false)
 
454
        conquests_unitTemplateSetVisibilityRange(unit_template, bombers_travel_range_c)
 
455
        conquests_unitTemplateSetBombard(unit_template, 25, 500)
 
456
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
457
        conquests_buildableSetAdvice(unit_template, "Let us blast the enemy from above!")
 
458
 
 
459
unit_template = conquests_addNewUnitTemplate("Jet Fighters", 800, "Rocketry", 0, 0, 1)
 
460
        conquests_unitTemplateSetAir(unit_template, 0, 24, jet_travel_range_c, false)
 
461
        conquests_unitTemplateSetVisibilityRange(unit_template, jet_travel_range_c)
 
462
        conquests_unitTemplateSetBombard(unit_template, 0, 0)
 
463
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
464
        conquests_buildableSetReplacedBy(unit_template_fighters, unit_template)
 
465
        conquests_buildableSetAdvice(unit_template, "We need to defend ourselves from possible attack from the air.")
 
466
 
 
467
unit_template = conquests_addNewUnitTemplate("Jet Bombers", 1600, "Rocketry", 0, 0, 1)
 
468
        conquests_unitTemplateSetAir(unit_template, 24, 0, jet_travel_range_c, false)
 
469
        conquests_unitTemplateSetVisibilityRange(unit_template, jet_travel_range_c)
 
470
        conquests_unitTemplateSetBombard(unit_template, 33, 2000)
 
471
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
472
        conquests_buildableSetReplacedBy(unit_template_bombers, unit_template)
 
473
        conquests_buildableSetAdvice(unit_template, "These bombers allow us to bomb enemy installations with increased accuracy.")
 
474
 
 
475
unit_template = conquests_addNewUnitTemplate("Stealth Bombers", 2400, "Stealth", 0, 0, 1)
 
476
        conquests_unitTemplateSetAir(unit_template, 36, 0, jet_travel_range_c, false)
 
477
        conquests_unitTemplateSetVisibilityRange(unit_template, jet_travel_range_c)
 
478
        conquests_unitTemplateSetBombard(unit_template, 33, 2000)
 
479
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
480
        conquests_buildableSetAdvice(unit_template, "Now we can bomb the enemy with less chance of failure.")
 
481
 
 
482
unit_template = conquests_addNewUnitTemplate("Cruise Missile", 200, "Rocketry", 0, 0, 1)
 
483
        conquests_unitTemplateSetAir(unit_template, 0, 0, 30, true)
 
484
        conquests_unitTemplateSetVisibilityRange(unit_template, 0)
 
485
        conquests_unitTemplateSetBombard(unit_template, 50, 2000)
 
486
        conquests_buildableSetRequiresImprovement(unit_template, "Missile Launcher")
 
487
        conquests_buildableSetAdvice(unit_template, "Let us bomb the enemy's installations from a great distance!")
 
488
 
 
489
unit_template = conquests_addNewUnitTemplate("Fission Bomb", 800, "Fission", 0, 0, 1)
 
490
        unit_template_fission_bomb = unit_template
 
491
        conquests_unitTemplateSetAir(unit_template, 0, 0, bombers_travel_range_c, true)
 
492
        conquests_unitTemplateSetVisibilityRange(unit_template, 0)
 
493
        conquests_unitTemplateSetNuclearType(unit_template, NUCLEARTYPE_FISSION)
 
494
        conquests_buildableSetRequiresImprovement(unit_template, "Airport")
 
495
        conquests_buildableSetAdvice(unit_template, "This new and devastating weapon will take out an entire city, and make enemies think twice about attacking us!")
 
496
 
 
497
unit_template = conquests_addNewUnitTemplate("Nuclear Missile", 1200, "Nuclear Missiles", 0, 0, 1)
 
498
        conquests_unitTemplateSetAir(unit_template, 0, 0, 100, true)
 
499
        conquests_unitTemplateSetVisibilityRange(unit_template, 0)
 
500
        conquests_unitTemplateSetNuclearType(unit_template, NUCLEARTYPE_FUSION)
 
501
        conquests_buildableSetRequiresImprovement(unit_template, "Missile Launcher")
 
502
        conquests_buildableSetAdvice(unit_template, "These powerful weapons are essential to defend our nation.")
 
503
 
 
504
-- sea units
 
505
 
 
506
unit_template = conquests_addNewUnitTemplate("Galleons", 120, "Magnetism", 0, 0, 1)
 
507
        unit_template_galleons = unit_template
 
508
        conquests_unitTemplateSetSea(unit_template, 1, 2)
 
509
        conquests_buildableSetRequiresImprovement(unit_template, "Port")
 
510
        conquests_buildableSetAdvice(unit_template, "Let us attack the enemy by sea!")
 
511
 
 
512
unit_template = conquests_addNewUnitTemplate("Ironclads", 300, "Steam Power", 0, 0, 1)
 
513
        unit_template_ironclads = unit_template
 
514
        conquests_unitTemplateSetSea(unit_template, 8, 4)
 
515
        conquests_buildableSetRequiresImprovement(unit_template, "Port")
 
516
        -- n.b., don't replace Galleons - still has advantage of being a cheap unit for player to build, compared with Ironclads.
 
517
        conquests_buildableSetAdvice(unit_template, "These new iron vessels will smash Galleons with ease.")
 
518
 
 
519
unit_template = conquests_addNewUnitTemplate("Dreadnoughts", 600, "Explosives", 0, 0, 1)
 
520
        unit_template_dreadnoughts = unit_template
 
521
        conquests_unitTemplateSetSea(unit_template, 16, 5)
 
522
        conquests_buildableSetRequiresImprovement(unit_template, "Port")
 
523
        conquests_buildableSetReplacedBy(unit_template_galleons, unit_template)
 
524
        conquests_buildableSetReplacedBy(unit_template_ironclads, unit_template)
 
525
        conquests_buildableSetAdvice(unit_template, "With their large guns, these units will allow us to rule the seas.")
 
526
 
 
527
unit_template = conquests_addNewUnitTemplate("Battleships", 1200, "Rocketry", 0, 0, 1)
 
528
        conquests_unitTemplateSetSea(unit_template, 24, 6)
 
529
        conquests_buildableSetRequiresImprovement(unit_template, "Port")
 
530
        conquests_buildableSetReplacedBy(unit_template_dreadnoughts, unit_template)
 
531
        conquests_buildableSetAdvice(unit_template, "We must build up our force to rule the world's oceans.")
 
532
 
 
533
--[[
 
534
unit_template = conquests_addNewUnitTemplate("", 20, "", 0, 0, 1)
 
535
        conquests_buildableSetInfo(unit_template, "")
 
536
        conquests_unitTemplateSet(unit_template, )
 
537
--]]
 
538
 
 
539
print("generate_buildables.lua exit")