[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stratagus-CVS] demogame ccl/anim.ccl ccl/buttons.ccl ccl/const...
From: |
Martin Renold |
Subject: |
[Stratagus-CVS] demogame ccl/anim.ccl ccl/buttons.ccl ccl/const... |
Date: |
Mon, 13 Oct 2003 15:18:45 -0000 |
CVSROOT: /cvsroot/stratagus
Module name: demogame
Branch:
Changes by: Martin Renold <address@hidden> 03/10/13 11:16:16
Modified files:
ccl : anim.ccl buttons.ccl constructions.ccl
editor.ccl icons.ccl menus.ccl missiles.ccl
sound.ccl tilesets.ccl units.ccl upgrade.ccl
ccl/alliance : ai.ccl buttons.ccl constructions.ccl spells.ccl
units.ccl upgrade.ccl
ccl/mythical : ai.ccl buttons.ccl units.ccl
puds : default.pud.gz
scripts : removeunit.py
Removed files:
ccl/tilesets : winter.ccl
graphics/alliance/buildings: foundry_construction_site.png
refinery_construction_site.png
shipyard_construction_site.png
graphics/alliance/units: README alliance_destroyer.png
archer.png ballista.png balloon.png
battleship.png demolition_squad.png
footman.png gryphon_rider.png
knight.png mage.png
oil_tanker_empty.png
oil_tanker_full.png submarine.png
transport.png
graphics/missiles: arrow.png axe.png
ballista-catapult_impact.png
ballista_bolt.png big_cannon.png blizzard.png
cannon-tower_explosion.png cannon.png
cannon_explosion.png catapult_rock.png
daemon_fire.png dragon_breath.png
exorcism.png fireball.png flame_shield.png
gryphon_hammer.png heal_effect.png
lightning.png rune.png submarine_missile.png
tornado.png touch_of_death.png
turtle_missile.png
graphics/neutral/buildings: circle_of_power.png runestone.png
graphics/neutral/units: daemon.png
graphics/tilesets/summer/alliance/buildings:
alliance_lumber_mill.png
barracks.png
blacksmith.png
cannon_tower.png
castle.png
church.png farm.png
foundry.png
gryphon_aviary.png
guard_tower.png
inventor.png
keep.png
mage_tower.png
oil_platform.png
oil_well_construction_site.png
refinery.png
scout_tower.png
shipyard.png
stables.png
graphics/tilesets/summer/neutral/buildings: dark_portal.png
oil_patch.png
graphics/tilesets/summer/neutral/units: critter.png
graphics/tilesets/winter: icons.png palette.rgb terrain.png
graphics/tilesets/winter/alliance/buildings:
alliance_lumber_mill.png
barracks.png
blacksmith.png
cannon_tower.png
castle.png
church.png farm.png
foundry.png
foundry_construction_site.png
gryphon_aviary.png
guard_tower.png
inventor.png
keep.png
mage_tower.png
oil_platform.png
oil_well_construction_site.png
refinery.png
refinery_construction_site.png
scout_tower.png
shipyard.png
shipyard_construction_site.png
stables.png
town_hall.png
graphics/tilesets/winter/mythical/buildings: barracks.png
farm.png
great_hall.png
graphics/tilesets/winter/neutral/buildings: dark_portal.png
destroyed_site.png
gold_mine.png
land_construction_site.png
runestone.png
small_destroyed_site.png
wall.png
wall_construction_site.png
graphics/tilesets/winter/neutral/units: critter.png
graphics/ui/alliance: minimap-big.png minimap-big.xcf
sounds/alliance/basic_voices: ready.wav.gz
sounds/alliance/basic_voices/acknowledgement: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
sounds/alliance/basic_voices/annoyed: 1.wav.gz 2.wav.gz 3.wav.gz
4.wav.gz 5.wav.gz 6.wav.gz
7.wav.gz
sounds/alliance/basic_voices/selected: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
5.wav.gz 6.wav.gz
sounds/alliance/buildings: church.wav.gz farm.wav.gz
gryphon_aviary.wav.gz
mage_tower.wav.gz stables.wav.gz
sounds/alliance/ships: ready.wav.gz
sounds/alliance/ships/acknowledgement: 1.wav.gz 2.wav.gz
3.wav.gz
sounds/alliance/ships/annoyed: 1.wav.gz 2.wav.gz 3.wav.gz
sounds/alliance/ships/selected: 1.wav.gz 2.wav.gz 3.wav.gz
sounds/alliance/units/gryphon_rider/acknowledgement: 2.wav.gz
sounds/alliance/units/gryphon_rider/selected: 1.wav.gz
sounds/alliance/units/knight: ready.wav.gz
sounds/alliance/units/knight/acknowledgement: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
sounds/alliance/units/knight/annoyed: 1.wav.gz 2.wav.gz 3.wav.gz
sounds/alliance/units/knight/selected: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
sounds/alliance/units/mage: ready.wav.gz
sounds/alliance/units/mage/acknowledgement: 1.wav.gz 2.wav.gz
3.wav.gz
sounds/alliance/units/mage/annoyed: 1.wav.gz 2.wav.gz 3.wav.gz
sounds/alliance/units/mage/selected: 1.wav.gz 2.wav.gz 3.wav.gz
sounds/alliance/units/paladin: ready.wav.gz
sounds/alliance/units/paladin/acknowledgement: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
sounds/alliance/units/paladin/annoyed: 1.wav.gz 2.wav.gz
3.wav.gz
sounds/alliance/units/paladin/selected: 1.wav.gz 2.wav.gz
3.wav.gz 4.wav.gz
sounds/buildings: blacksmith.wav.gz foundry.wav.gz
lumbermill.wav.gz oil_platform.wav.gz
oil_refinery.wav.gz shipyard.wav.gz
sounds/missiles: bow_hit.wav.gz bow_throw.wav.gz
catapult-ballista_attack.wav.gz
fireball_hit.wav.gz fireball_throw.wav.gz
sounds/neutral/units/pig/annoyed: 1.wav.gz
sounds/neutral/units/pig/selected: 1.wav.gz
sounds/neutral/units/seal/annoyed: 1.wav.gz
sounds/neutral/units/seal/selected: 1.wav.gz
sounds/neutral/units/sheep/annoyed: 1.wav.gz
sounds/neutral/units/sheep/selected: 1.wav.gz
sounds/neutral/units/warthog/annoyed: 1.wav.gz
sounds/neutral/units/warthog/selected: 1.wav.gz
sounds/ships : sinking.wav.gz
sounds/ships/tanker/acknowledgement: 1.wav.gz
sounds/spells : blizzard.wav.gz flame_shield.wav.gz
healing.wav.gz holy_vision.wav.gz
invisibility.wav.gz lightning.wav.gz
polymorph.wav.gz slow.wav.gz
sounds/units/catapult-ballista/acknowledgement: 1.wav.gz
Log message:
stripping it down further
Patches:
Index: demogame/ccl/alliance/ai.ccl
diff -u demogame/ccl/alliance/ai.ccl:1.2 demogame/ccl/alliance/ai.ccl:1.3
--- demogame/ccl/alliance/ai.ccl:1.2 Wed Oct 8 07:05:34 2003
+++ demogame/ccl/alliance/ai.ccl Mon Oct 13 11:15:36 2003
@@ -26,1957 +26,8 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: ai.ccl,v 1.2 2003/10/08 11:05:34 martinxyz Exp $
+;; $Id: ai.ccl,v 1.3 2003/10/13 15:15:36 martinxyz Exp $
-;(define (ai:sleep) () #t)
+; no ai, only passive fallback
+; see ../mythical/ai.ccl for a minimal example
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; * Race alliance.
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-(define-ai-helper
- ;;
- ;; Unit can build which buildings.
- ;;
- (list 'build 'unit-peasant
- 'unit-farm 'unit-alliance-barracks 'unit-town-hall
'unit-elven-lumber-mill
- 'unit-alliance-blacksmith 'unit-alliance-watch-tower 'unit-human-wall
- 'unit-alliance-shipyard 'unit-alliance-foundry 'unit-alliance-refinery
- 'unit-inventor 'unit-stables 'unit-mage-tower 'unit-church
- 'unit-gryphon-aviary 'unit-dark-portal 'unit-runestone)
- (list 'build 'unit-alliance-oil-tanker 'unit-alliance-oil-platform)
- ;;
- ;; Building can train which units.
- ;;
- (list 'train 'unit-farm 'unit-critter)
- (list 'train 'unit-town-hall 'unit-peasant)
- (list 'train 'unit-keep 'unit-peasant)
- (list 'train 'unit-castle 'unit-peasant)
- (list 'train 'unit-alliance-barracks
- 'unit-footman 'unit-archer 'unit-ranger 'unit-ballista 'unit-knight
- 'unit-paladin)
- (list 'train 'unit-inventor
- 'unit-balloon 'unit-dwarves)
- (list 'train 'unit-mage-tower 'unit-mage)
- (list 'train 'unit-gryphon-aviary 'unit-gryphon-rider)
- (list 'train 'unit-alliance-shipyard
- 'unit-alliance-oil-tanker 'unit-alliance-destroyer
'unit-alliance-transport
- 'unit-alliance-submarine 'unit-battleship)
- ;;
- ;; Building can upgrade which upgrades.
- ;;
- (list 'upgrade 'unit-town-hall 'unit-keep)
- (list 'upgrade 'unit-keep 'unit-castle)
- (list 'upgrade 'unit-alliance-watch-tower
- 'unit-alliance-guard-tower 'unit-alliance-cannon-tower)
- ;;
- ;; Building can research which spells or upgrades.
- ;;
- (list 'research 'unit-alliance-blacksmith
- 'upgrade-sword1 'upgrade-sword2
- 'upgrade-alliance-shield1 'upgrade-alliance-shield2
- 'upgrade-ballista1 'upgrade-ballista2)
- (list 'research 'unit-elven-lumber-mill
- 'upgrade-arrow1 'upgrade-arrow2 'upgrade-ranger
- 'upgrade-ranger-scouting 'upgrade-longbow 'upgrade-ranger-marksmanship)
- (list 'research 'unit-church
- 'upgrade-paladin 'upgrade-healing 'upgrade-exorcism)
- (list 'research 'unit-mage-tower
- 'upgrade-slow 'upgrade-flame-shield 'upgrade-invisibility
- 'upgrade-polymorph 'upgrade-blizzard)
- (list 'research 'unit-alliance-foundry
- 'upgrade-alliance-ship-cannon1 'upgrade-alliance-ship-cannon2
- 'upgrade-alliance-ship-armor1 'upgrade-alliance-ship-armor2)
- ;;
- ;; Unit can repair which units.
- ;;
- (list 'repair 'unit-peasant
- 'unit-farm 'unit-alliance-barracks 'unit-town-hall 'unit-keep
'unit-castle
- 'unit-elven-lumber-mill 'unit-alliance-blacksmith
'unit-alliance-watch-tower
- 'unit-alliance-guard-tower 'unit-alliance-cannon-tower 'unit-human-wall
- 'unit-alliance-shipyard 'unit-alliance-foundry 'unit-alliance-refinery
- 'unit-inventor 'unit-stables 'unit-mage-tower 'unit-church
- 'unit-gryphon-aviary 'unit-dark-portal 'unit-runestone
- 'unit-alliance-transport)
- ;;
- ;; Reduce unit limits.
- ;;
- (list 'unit-limit 'unit-farm 'food)
- ;;
- ;; Equivalence of units for the resource manager.
- ;;
- (list 'unit-equiv 'unit-town-hall
- 'unit-keep 'unit-castle)
- (list 'unit-equiv 'unit-keep
- 'unit-castle)
- (list 'unit-equiv 'unit-archer
- 'unit-ranger)
- (list 'unit-equiv 'unit-knight
- 'unit-paladin)
- (list 'unit-equiv 'unit-peasant)
- (list 'unit-equiv 'unit-alliance-oil-tanker)
- (list 'unit-equiv 'unit-alliance-watch-tower
- 'unit-alliance-guard-tower 'unit-alliance-cannon-tower) )
-
-;;=============================================================================
-;; Air Attack AI, this is an example for a multi race AI.
-;; The mythical race was striped down in demogame, though.
-;;=============================================================================
-
-;;
-;; City-center of the current race.
-;;
-(define (ai:city-center)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-town-hall 'unit-great-hall) )
-
-;;
-;; Better city-center of the current race.
-;;
-(define (ai:better-city-center)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-keep 'unit-stronghold) )
-
-;;
-;; Best city-center of the current race.
-;;
-(define (ai:best-city-center)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-castle 'unit-fortress) )
-
-;;
-;; Worker of the current race.
-;;
-(define (ai:worker)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-peasant 'unit-faun) )
-
-;;
-;; Lumber mill of the current race.
-;;
-(define (ai:lumber-mill)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-elven-lumber-mill 'unit-troll-lumber-mill) )
-
-;;
-;; Blacksmith of the current race.
-;;
-(define (ai:blacksmith)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-blacksmith 'unit-mythical-blacksmith) )
-
-;;
-;; Upgrade armor 1 of the current race.
-;;
-(define (ai:upgrade-armor-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-shield1 'upgrade-mythical-shield1) )
-
-;;
-;; Upgrade armor 2 of the current race.
-;;
-(define (ai:upgrade-armor-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-shield2 'upgrade-mythical-shield2) )
-
-;;
-;; Upgrade weapon 1 of the current race.
-;;
-(define (ai:upgrade-weapon-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-sword1 'upgrade-battle-axe1) )
-
-;;
-;; Upgrade weapon 2 of the current race.
-;;
-(define (ai:upgrade-weapon-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-sword2 'upgrade-battle-axe2) )
-
-;;
-;; Upgrade missile 1 of the current race.
-;;
-(define (ai:upgrade-missile-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-arrow1 'upgrade-throwing-axe1) )
-
-;;
-;; Upgrade missile 2 of the current race.
-;;
-(define (ai:upgrade-missile-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-arrow2 'upgrade-throwing-axe2) )
-
-;;
-;; Upgrade catapult 1 of the current race.
-;;
-(define (ai:upgrade-catapult-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-ballista1 'upgrade-catapult1) )
-
-;;
-;; Upgrade catapult 2 of the current race.
-;;
-(define (ai:upgrade-catapult-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-ballista2 'upgrade-catapult2) )
-
-;;
-;; Research of the current race.
-;;
-(define (ai:scientific)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-inventor 'unit-alchemist) )
-
-;;
-;; Cavalry of the current race.
-;;
-(define (ai:cavalry)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-stables 'unit-ogre-mound) )
-
-;;
-;; Temple of the current race.
-;;
-(define (ai:temple)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-church 'unit-altar-of-storms) )
-
-;;
-;; Airport of the current race.
-;;
-(define (ai:airport)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-gryphon-aviary 'unit-dragon-roost) )
-
-;;
-;; Barracks of the current race.
-;;
-(define (ai:barracks)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-barracks 'unit-mythical-barracks) )
-
-;;
-;; Soldier of the current race.
-;;
-(define (ai:soldier)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-footman 'unit-grunt) )
-
-;;
-;; Shooter of the current race.
-;;
-(define (ai:shooter)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-archer 'unit-axethrower) )
-
-;;
-;; Elite Shooter of the current race.
-;;
-(define (ai:elite-shooter)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-ranger 'unit-berserker) )
-
-;;
-;; Cavalrie of the current race.
-;;
-(define (ai:cavalrie)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-knight 'unit-ogre) )
-
-;;
-;; Cavalrie mages of the current race.
-;;
-(define (ai:cavalrie-mage)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-paladin 'unit-ogre-mage) )
-
-;;
-;; Mage of the current race.
-;;
-(define (ai:mage)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-mage 'unit-death-knight) )
-
-;;
-;; Catapult of the current race.
-;;
-(define (ai:catapult)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-ballista 'unit-catapult) )
-
-;;
-;; Scout of the current race.
-;;
-(define (ai:scout)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-balloon 'unit-zeppelin) )
-
-;;
-;; Flyer of the current race.
-;;
-(define (ai:flyer)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-gryphon-rider 'unit-dragon) )
-
-;;
-;; Tower of the current race.
-;;
-(define (ai:tower)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-watch-tower 'unit-mythical-watch-tower) )
-
-;;
-;; Guard-Tower of the current race.
-;;
-(define (ai:guard-tower)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-guard-tower 'unit-mythical-guard-tower) )
-
-;;
-;; Cannon-Tower of the current race.
-;;
-(define (ai:cannon-tower)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-cannon-tower 'unit-mythical-cannon-tower) )
-
-;;
-;; Harbor of the current race.
-;;
-(define (ai:harbor)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-shipyard 'unit-mythical-shipyard) )
-
-;;
-;; Refinery of the current race.
-;;
-(define (ai:refinery)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-refinery 'unit-mythical-refinery) )
-
-;;
-;; Foundry of the current race.
-;;
-(define (ai:foundry)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-foundry 'unit-mythical-foundry) )
-
-;;
-;; Ship armor 1 of the current race.
-;;
-(define (ai:upgrade-ship-armor-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-ship-armor1 'upgrade-mythical-ship-armor1) )
-
-;;
-;; Ship armor 2 of the current race.
-;;
-(define (ai:upgrade-ship-armor-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-ship-armor2 'upgrade-mythical-ship-armor2) )
-
-;;
-;; Ship weapon 1 of the current race.
-;;
-(define (ai:upgrade-ship-cannon-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-ship-cannon1 'upgrade-mythical-ship-cannon1) )
-
-;;
-;; Ship weapon 2 of the current race.
-;;
-(define (ai:upgrade-ship-cannon-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-alliance-ship-cannon2 'upgrade-mythical-ship-cannon2) )
-
-;;
-;; Platform of the current race.
-;;
-(define (ai:platform)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-oil-platform 'unit-mythical-oil-platform) )
-
-;;
-;; Tanker of the current race.
-;;
-(define (ai:tanker)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-oil-tanker 'unit-mythical-oil-tanker) )
-
-;;
-;; Submarine of the current race.
-;;
-(define (ai:submarine)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-submarine 'unit-mythical-submarine) )
-
-;;
-;; Destroyer of the current race.
-;;
-(define (ai:destroyer)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-destroyer 'unit-mythical-destroyer) )
-
-;;
-;; Battleship of the current race.
-;;
-(define (ai:battleship)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-battleship 'unit-ogre-juggernaught) )
-
-;;
-;; Transporter of the current race.
-;;
-(define (ai:transporter)
- (if (eq? (ai:get-race) 'alliance)
- 'unit-alliance-transport 'unit-mythical-transport) )
-
-;;
-;; 1st Elite Shooter of the current race.
-;;
-(define (ai:upgrade-elite-shooter)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-ranger 'upgrade-berserker) )
-
-;;
-;; 1st Upgrade of elite Shooter of the current race.
-;;
-(define (ai:upgrade-elite-shooter-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-ranger-scouting 'upgrade-berserker-scouting) )
-
-;;
-;; 2nd Upgrade of elite Shooter of the current race.
-;;
-(define (ai:upgrade-elite-shooter-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-longbow 'upgrade-light-axes) )
-
-;;
-;; 3th Upgrade of elite Shooter of the current race.
-;;
-(define (ai:upgrade-elite-shooter-3)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-ranger-marksmanship 'upgrade-berserker-regeneration) )
-
-;;
-;; Upgrade cavalrie to cavalrie mages of the current race.
-;;
-(define (ai:upgrade-cavalrie-mage)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-paladin 'upgrade-ogre-mage) )
-
-;;
-;; 1st spell of the cavalrie mages of the current race.
-;;
-(define (ai:cavalrie-mage-spell-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-healing 'upgrade-bloodlust))
-
-;;
-;; 2nd spell of the cavalrie mages of the current race.
-;;
-(define (ai:cavalrie-mage-spell-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-exorcism 'upgrade-runes))
-
-;;
-;; 1st spell of the mages of the current race.
-;;
-(define (ai:mage-spell-1)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-slow 'upgrade-haste))
-
-;;
-;; 2nd spell of the mages of the current race.
-;;
-(define (ai:mage-spell-2)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-flame-shield 'upgrade-raise-dead))
-
-;;
-;; 3th spell of the mages of the current race.
-;;
-(define (ai:mage-spell-3)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-invisibility 'upgrade-whirlwind))
-
-;;
-;; 4th spell of the mages of the current race.
-;;
-(define (ai:mage-spell-4)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-polymorph 'upgrade-unholy-armor))
-
-;;
-;; 5th spell of the mages of the current race.
-;;
-(define (ai:mage-spell-5)
- (if (eq? (ai:get-race) 'alliance)
- 'upgrade-blizzard 'upgrade-death-and-decay))
-
-;;=============================================================================
-;;
-;; Define an AI engine.
-;;
-;; (define-ai name race class script)
-;;
-;; name name of the AI for selection.
-;; class class of the AI for map editor.
-;; script Main AI script.
-;;
-(define ai:air-attack-endloop
- '((writes nil "Looping !\n")
- (ai:force 1 (ai:flyer) 2)
- (ai:force 2 (ai:flyer) 2)
- (ai:force 3 (ai:flyer) 2)
- (ai:force 4 (ai:flyer) 2)
- (ai:force 5 (ai:flyer) 2)
- (ai:force 6 (ai:flyer) 1)
- (ai:wait-force 5)
- (ai:wait-force 6) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
- (ai:attack-with-force 4)
- (ai:attack-with-force 5)
- (ai:sleep 500)
- (ai:script ai:air-attack-endloop) ))
-
-;(define-ai "wc2-air-attack" "*" "air-attack"
-(define-ai "wc2-air-attack" "alliance" "air-attack"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set-reserve! #( 0 0 0 0 0 0 0))
- (ai:need (ai:city-center))
- (ai:set (ai:worker) 1)
- (ai:wait (ai:city-center))
- (ai:wait (ai:worker)) ;; start hangs if nothing is available
-
- (ai:set (ai:worker) 9)
- (ai:need (ai:lumber-mill))
- (ai:need (ai:barracks))
- (ai:force 0 (ai:soldier) 2)
- (ai:wait-force 0) ;; wait until defence is ready
-
- (ai:need (ai:blacksmith))
- (ai:upgrade-to (ai:better-city-center))
- (ai:set (ai:worker) 15)
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 3)
- (ai:wait (ai:better-city-center))
-
- (ai:need (ai:cavalry))
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:upgrade-to (ai:best-city-center))
- (ai:wait (ai:best-city-center)) ;; need this for airport!
-
- (ai:need (ai:airport))
- (ai:force 2 (ai:flyer) 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:need (ai:city-center))
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:airport))
- (ai:force 2 (ai:flyer) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
-
- (ai:need (ai:city-center))
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:airport))
- (ai:set (ai:worker) 20)
- (ai:force 1 (ai:flyer) 2)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:cannon-tower))
- (ai:force 2 (ai:flyer) 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:force 1 (ai:flyer) 2)
- (ai:force 2 (ai:flyer) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:force 1 (ai:flyer) 1)
- (ai:force 2 (ai:flyer) 2)
- (ai:force 3 (ai:flyer) 2)
- (ai:wait-force 2)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:force 1 (ai:flyer) 2)
- (ai:force 2 (ai:flyer) 2)
- (ai:force 3 (ai:flyer) 2)
- (ai:wait-force 2)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:force 1 (ai:flyer) 2)
- (ai:force 2 (ai:flyer) 2)
- (ai:force 3 (ai:flyer) 3)
- (ai:wait-force 2)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
-
- (ai:sleep 500)
- (ai:need (ai:tower))
- (ai:upgrade-to (ai:guard-tower))
- (ai:need (ai:tower))
- (ai:force 1 (ai:flyer) 2)
- (ai:force 2 (ai:flyer) 3)
- (ai:force 3 (ai:flyer) 3)
- (ai:wait-force 2)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
-
- (ai:sleep 500)
- (ai:force 1 (ai:flyer) 1)
- (ai:force 2 (ai:flyer) 2)
- (ai:force 3 (ai:flyer) 2)
- (ai:force 4 (ai:flyer) 2)
- (ai:force 5 (ai:flyer) 2)
- (ai:wait-force 5) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:attack-with-force 3)
- (ai:attack-with-force 4)
- (ai:attack-with-force 5)
-
- (ai:sleep 500)
- (ai:script ai:air-attack-endloop) ))
-
-;;=============================================================================
-
-(define ai:sea-attack-endloop
- '((writes nil "Looping !\n")
- (ai:force 1 (ai:destroyer) 6 (ai:battleship) 7 (ai:scout) 1)
- (ai:force 2 (ai:soldier) 4 (ai:cavalrie) 4 (ai:catapult) 4
- (ai:transporter) 2)
- (ai:wait-force 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
- (ai:sleep 500)
- (ai:script ai:sea-attack-endloop) ))
-
-;(define-ai "wc2-sea-attack" "*" "sea-attack"
-(define-ai "wc2-sea-attack" "alliance" "sea-attack"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:need (ai:city-center))
- (ai:set (ai:worker) 1)
- (ai:wait (ai:city-center))
- (ai:wait (ai:worker)) ;; start hangs if nothing is available
-
- (ai:set (ai:worker) 9)
- (ai:need (ai:lumber-mill))
- (ai:need (ai:barracks))
- (ai:force 0 (ai:soldier) 3)
- (ai:wait-force 0) ;; wait until defence is ready
-
- (ai:need (ai:harbor))
- (ai:upgrade-to (ai:better-city-center))
- (ai:need (ai:refinery))
- (ai:need (ai:scientific))
- (ai:set (ai:worker) 15)
- (ai:set (ai:tanker) 1)
- (ai:need (ai:platform))
- (ai:wait (ai:better-city-center))
-
- (ai:set (ai:tanker) 3)
- (ai:force 1 (ai:submarine) 3)
- (ai:wait-force 1) ;; wait until attack force is ready
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need (ai:foundry))
- (ai:research (ai:upgrade-ship-armor-1))
- (ai:research (ai:upgrade-ship-armor-2))
- (ai:set (ai:tanker) 4)
- (ai:force 1 (ai:submarine) 4)
- (ai:wait-force 1) ;; wait until attack force is ready
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need (ai:harbor))
- (ai:need (ai:blacksmith))
- (ai:force 1 (ai:submarine) 5 (ai:scout) 1)
- (ai:wait-force 1) ;; wait until attack force is ready
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:research (ai:upgrade-catapult-1))
- (ai:need (ai:cavalry))
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 2 (ai:battleship) 1
- (ai:scout) 2)
- (ai:sleep 3000)
- (ai:wait-force 1)
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 2 (ai:battleship) 2
- (ai:scout) 2)
- (ai:force 2 (ai:catapult) 2 (ai:transporter) 1)
- (ai:wait-force 1)
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:research (ai:upgrade-catapult-2))
- (ai:research (ai:upgrade-ship-cannon-1))
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 2 (ai:battleship) 3
- (ai:scout) 1)
- (ai:force 2 (ai:cavalrie) 1 (ai:catapult) 3 (ai:transporter) 1)
- (ai:wait-force 1)
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:research (ai:upgrade-ship-cannon-2))
- (ai:need (ai:city-center))
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 3 (ai:battleship) 4
- (ai:scout) 1)
- (ai:force 2 (ai:cavalrie) 3 (ai:catapult) 3 (ai:transporter) 1)
- (ai:wait-force 1)
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need (ai:harbor))
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
- (ai:research (ai:upgrade-weapon-2))
- (ai:research (ai:upgrade-armor-2))
- (ai:set (ai:tanker) 5)
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 4 (ai:battleship) 5
- (ai:scout) 1)
- (ai:force 2 (ai:cavalrie) 3 (ai:catapult) 3 (ai:transporter) 1)
- (ai:wait-force 1)
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:force 0 (ai:soldier) 3 (ai:catapult) 1 (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:scout) 1)
- (ai:force 1 (ai:submarine) 1 (ai:destroyer) 5 (ai:battleship) 6
- (ai:scout) 1)
- (ai:force 2 (ai:cavalrie) 4 (ai:catapult) 2 (ai:transporter) 1)
- (ai:wait-force 1)
- (ai:wait-force 2)
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:script ai:sea-attack-endloop) ))
-
-;;=============================================================================
-
-(define ai:alliance-land-attack-endloop
- '((writes nil "Looping !\n")
- (ai:force 0 'unit-footman 1 'unit-ranger 2 'unit-paladin 4 'unit-ballista 1
- 'unit-mage 4)
- (ai:force 1 'unit-footman 1 'unit-ranger 2 'unit-paladin 4 'unit-ballista 1
- 'unit-mage 2)
- (ai:force 2 'unit-gryphon-rider 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:script ai:alliance-land-attack-endloop) ) )
-
-(define-ai 'my-ai1 'alliance "land-attack"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:need (unit-type 'unit-town-hall))
- (ai:set 'unit-peasant 1)
- (ai:wait 'unit-town-hall)
- (ai:wait 'unit-peasant) ;; start hangs if nothing available
-
- (ai:set 'unit-peasant 4)
- (ai:need 'unit-elven-lumber-mill)
- (ai:need 'unit-alliance-barracks)
- (ai:force 0 'unit-footman 2)
- (ai:force 1 'unit-footman 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:set 'unit-peasant 9)
- (ai:sleep 500)
- (ai:need 'unit-alliance-blacksmith)
- (ai:force 0 'unit-footman 2 'unit-archer 1)
- (ai:force 1 'unit-footman 2 'unit-archer 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:research 'upgrade-sword1)
- (ai:research 'upgrade-alliance-shield1)
- (ai:research 'upgrade-arrow1)
- (ai:research 'upgrade-sword2)
- (ai:research 'upgrade-alliance-shield2)
- (ai:research 'upgrade-arrow2)
- (ai:need 'unit-alliance-barracks)
-
- (ai:force 0 'unit-footman 3 'unit-archer 2)
- (ai:force 1 'unit-footman 3 'unit-archer 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:set 'unit-peasant 15)
- (ai:force 0 'unit-footman 3 'unit-archer 2)
- (ai:force 1 'unit-footman 3 'unit-archer 1 'unit-ballista 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:upgrade-to 'unit-keep)
- (ai:wait 'unit-keep)
-
- (ai:force 1 'unit-footman 3 'unit-archer 1 'unit-ballista 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need 'unit-town-hall)
- (ai:need 'unit-stables)
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-knight 6 'unit-ballista 1)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-knight 2 'unit-ballista 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-barracks)
- (ai:upgrade-to 'unit-castle)
- (ai:set 'unit-peasant 19)
- (ai:wait 'unit-castle)
-
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-knight 6 'unit-ballista 1)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-knight 2 'unit-ballista 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-church)
- (ai:research 'upgrade-paladin)
- (ai:research 'upgrade-healing)
- (ai:research 'upgrade-exorcism)
-
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-knight 0 'unit-paladin 5
- 'unit-ballista 1)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-knight 0 'unit-paladin 3
- 'unit-ballista 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-mage-tower)
- (ai:research 'upgrade-polymorph)
- (ai:research 'upgrade-blizzard)
-
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-paladin 6 'unit-ballista 1
- 'unit-mage 2)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-paladin 2 'unit-ballista 1
- 'unit-mage 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:research 'upgrade-slow)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:research 'upgrade-invisibility)
-
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-paladin 6 'unit-ballista 1
- 'unit-mage 5)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-paladin 2 'unit-ballista 1
- 'unit-mage 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 500)
- (ai:need 'unit-gryphon-aviary)
-
- (ai:force 0 'unit-footman 1 'unit-archer 2 'unit-paladin 6 'unit-ballista 1
- 'unit-mage 5)
- (ai:force 1 'unit-footman 1 'unit-archer 2 'unit-paladin 2 'unit-ballista 1
- 'unit-mage 1)
- (ai:force 2 'unit-gryphon-rider 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:research 'upgrade-ranger)
- (ai:research 'upgrade-ranger-scouting)
- (ai:research 'upgrade-flame-shield)
- (ai:force 0 'unit-footman 1 'unit-archer 0 'unit-ranger 2 'unit-paladin 6
- 'unit-ballista 1 'unit-mage 5)
- (ai:force 1 'unit-footman 1 'unit-archer 0 'unit-ranger 2 'unit-paladin 2
- 'unit-ballista 1 'unit-mage 1)
- (ai:force 2 'unit-gryphon-rider 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:need 'unit-town-hall)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:need 'unit-inventor)
- (ai:research 'upgrade-longbow)
-
- (ai:force 0 'unit-footman 1 'unit-archer 0 'unit-ranger 2 'unit-paladin 6
- 'unit-ballista 1 'unit-mage 5)
- (ai:force 1 'unit-footman 1 'unit-archer 0 'unit-ranger 2 'unit-paladin 2
- 'unit-ballista 1 'unit-mage 1)
- (ai:force 2 'unit-gryphon-rider 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:attack-with-force 2)
-
- (ai:sleep 500)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-cannon-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:research 'upgrade-ballista1)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-cannon-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:research 'upgrade-ballista2)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-cannon-tower)
- (ai:need 'unit-alliance-watch-tower)
- (ai:upgrade-to 'unit-alliance-guard-tower)
- (ai:set 'unit-peasant 25)
-
- ;; Everything researched...
-
- (ai:script ai:alliance-land-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and tankers and oil platform.
-;; Also if needed a farm.
-;; Attacks with soldier and shooter and destroyer.
-;;
-(define ai:hum-04-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 25000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 22000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:script ai:hum-04-attack-endloop) ) )
-
-(define-ai 'hum-04 "alliance" "hum-04"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 4)
- (ai:set (ai:tanker) 1)
- (ai:wait (ai:worker)) ;; start hangs if nothing available
-
- (ai:need (ai:platform))
-
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 3 (ai:shooter) 4)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1 (ai:transporter) 1)
- (ai:sleep 27000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:set (ai:transporter) 2)
- (ai:sleep 22000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 22000)
- (ai:force 0 (ai:destroyer) 0 (ai:soldier) 3 (ai:shooter) 3)
- (ai:force 2 (ai:destroyer) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:sleep 22000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 3 (ai:shooter) 3)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 2 (ai:transporter) 1)
- (ai:force 2 (ai:destroyer) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 18000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 3 (ai:shooter) 4)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
-
- (ai:sleep 27000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 2 (ai:shooter) 3)
- (ai:force 1 (ai:soldier) 3 (ai:shooter) 2 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
-
- (ai:sleep 24000)
- (ai:force 0 (ai:destroyer) 0 (ai:soldier) 2 (ai:shooter) 3)
- (ai:force 1 (ai:soldier) 3 (ai:shooter) 2 (ai:transporter) 1)
- (ai:force 2 (ai:destroyer) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
-
- (ai:script ai:hum-04-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and tankers and oil platform.
-;; Also if needed a farm.
-;; Attacks with soldier, shooter and destroyer.
-;;
-(define ai:hum-05-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 18000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 12000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 1 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 24000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 0 (ai:shooter) 1)
- (ai:force 1 (ai:soldier) 3 (ai:shooter) 2 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 14000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 0 (ai:shooter) 1)
- (ai:force 2 (ai:destroyer) 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:script ai:hum-05-attack-endloop) ) )
-
-(define-ai 'hum-05 "alliance" "hum-05"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 4)
- (ai:set (ai:tanker) 1)
- (ai:set (ai:transporter) 1)
- (ai:wait (ai:worker)) ;; start hangs if nothing available
-
- (ai:need (ai:platform))
-
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 2 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:transporter) 1)
- (ai:force 2 (ai:destroyer) 1)
- (ai:sleep 6000)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:sleep 3000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 4000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 4000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 12000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 1 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 14000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 12000)
- (ai:force 0 (ai:destroyer) 2 (ai:soldier) 2 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:transporter) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-05-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers, blacksmith.
-;; Also if needed a farm.
-;; Upgrades weapon and missile.
-;; Attacks with soldier, shooter and cavalrie.
-;;
-(define ai:hum-06-attack-endloop
- '((writes nil "Looping !\n")
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 1 )
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 3 (ai:cavalrie) 2 )
- (ai:sleep 14000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 3 (ai:cavalrie) 2 )
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 1 )
- (ai:sleep 11000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 3 (ai:cavalrie) 2 )
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 )
- (ai:sleep 8000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 2 (ai:cavalrie) 2 )
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 2 (ai:cavalrie) 1 )
- (ai:sleep 11000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 4 (ai:cavalrie) 1 )
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 2 )
- (ai:sleep 9000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-06-attack-endloop) ) )
-
-(define-ai 'hum-06 "alliance" "hum-06"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 4)
- (ai:wait (ai:worker)) ;; start hangs if nothing available
-
- (ai:force 0 (ai:soldier) 3 (ai:shooter) 3)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1)
- (ai:sleep 4000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 3000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 4000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:need (ai:blacksmith))
- (ai:research (ai:upgrade-missile-1))
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 2)
- (ai:sleep 9000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-weapon-1))
-
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 2)
- (ai:force 1 (ai:soldier) 3 (ai:shooter) 2)
- (ai:sleep 13000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 3 (ai:cavalrie) 1 )
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 2 )
- (ai:sleep 14000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-armor-1))
-
- (ai:script ai:hum-06-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only worker and tanker.
-;;
-(define-ai 'hum-07 "alliance" "hum-07"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 2)
- (ai:set (ai:tanker) 1)
- (ai:sleep 10000)
- (ai:restart)))
-
-;;=============================================================================
-;; This AI script builds only workers, blacksmith.
-;; Also if needed a farm.
-;; Upgrades weapon and missile.
-;; Attacks with soldier, shooter and cavalrie.
-;;
-(define ai:hum-08-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 16000)
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 4 (ai:cavalrie) 2)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 14000)
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 4 (ai:cavalrie) 1 (ai:catapult) 1)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 2 (ai:catapult) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 12000)
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 4 (ai:cavalrie) 0 (ai:catapult) 0)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 3 (ai:catapult) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-08-attack-endloop) ) )
-
-(define-ai 'hum-08 "alliance" "hum-08"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:worker) 3)
- (ai:wait (ai:worker)) ;; start hangs if nothing available
-
- (ai:force 0 (ai:soldier) 3 (ai:shooter) 3)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1)
- (ai:sleep 14000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 5 (ai:shooter) 5 (ai:cavalrie) 0)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 2)
- (ai:sleep 10000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 4 (ai:cavalrie) 1)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 2)
- (ai:sleep 15000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:upgrade-missile-1))
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 5 (ai:cavalrie) 1)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 2 (ai:catapult) 1)
- (ai:sleep 15000)
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 21000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-elite-shooter))
- (ai:sleep 12000)
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 5 (ai:cavalrie) 2)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 1 (ai:catapult) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-08-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only worker and tanker.
-;;
-(define-ai 'hum-09 "alliance" "hum-09"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f) (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 2)
- (ai:set (ai:tanker) 1)
- (ai:sleep 10000)
- (ai:restart)))
-
-;;=============================================================================
-;; This AI script builds only worker and tanker.
-;; Upgrades very much.
-;; Attacks with land units and water units.
-;;
-(define ai:hum-10-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 5000)
- (ai:force 0 (ai:soldier) 3 (ai:shooter) 3 (ai:cavalrie) 2 (ai:catapult) 1)
- (ai:force 2 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 2 (ai:catapult) 1
- (ai:transporter) 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:sleep 6000)
- (ai:force 1 (ai:destroyer) 1 (ai:battleship) 0)
- (ai:force 3 (ai:destroyer) 2 (ai:battleship) 1)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:sleep 5000)
- (ai:force 1 (ai:destroyer) 3 (ai:battleship) 1)
- (ai:force 3 (ai:destroyer) 0 (ai:battleship) 0)
- (ai:force 0 (ai:soldier) 4 (ai:shooter) 2 (ai:cavalrie) 2 (ai:catapult) 2)
- (ai:force 2 (ai:soldier) 0 (ai:shooter) 2 (ai:cavalrie) 2 (ai:catapult) 0)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:force 1 (ai:destroyer) 1 (ai:battleship) 1)
- (ai:force 3 (ai:destroyer) 2 (ai:battleship) 0)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:script ai:hum-10-attack-endloop) ) )
-
-(define-ai 'hum-10 "alliance" "hum-10"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'defend)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:worker) 7)
- (ai:set (ai:tanker) 3)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:set (ai:transporter) 1)
- (ai:force 0 (ai:destroyer) 2)
- (ai:force 2 (ai:transporter) 1)
- (ai:sleep 6000)
- (ai:force 2 (ai:transporter) 0)
- (ai:force 0 (ai:soldier) 4 (ai:shooter) 4
- (ai:destroyer) 0 (ai:transporter) 1)
- (ai:force 1 (ai:destroyer) 2)
-
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:upgrade-missile-1))
-
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 2 (ai:transporter) 0)
- (ai:force 2 (ai:soldier) 2 (ai:shooter) 2 (ai:transporter) 1)
- (ai:force 1 (ai:destroyer) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:research (ai:upgrade-weapon-1))
- (ai:sleep 4000)
- (ai:research (ai:upgrade-armor-1))
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:sleep 5000)
- (ai:force 1 (ai:destroyer) 3 (ai:battleship) 1)
- (ai:research (ai:upgrade-missile-2))
- (ai:research (ai:upgrade-weapon-2))
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:research (ai:upgrade-ship-cannon-1))
- (ai:sleep 3000)
- (ai:research (ai:upgrade-armor-2))
- (ai:research (ai:upgrade-ship-armor-1))
- (ai:research (ai:upgrade-elite-shooter))
- (ai:force 0 (ai:soldier) 2 (ai:shooter) 3)
- (ai:force 2 (ai:soldier) 2 (ai:shooter) 1 (ai:transporter) 1)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:research (ai:upgrade-catapult-1))
- (ai:research (ai:upgrade-ship-cannon-2))
- (ai:research (ai:upgrade-ship-armor-2))
- (ai:research (ai:upgrade-elite-shooter-1))
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 2 (ai:mage) 1)
- (ai:sleep 5000)
- (ai:research (ai:upgrade-elite-shooter-2))
- (ai:research (ai:upgrade-elite-shooter-3))
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:force 0 (ai:soldier) 4 (ai:shooter) 3 (ai:cavalrie) 2 (ai:catapult) 1)
- (ai:force 2 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 2 (ai:catapult) 1
- (ai:transporter) 1)
- (ai:sleep 5000)
-
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
-
- (ai:script ai:hum-10-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers.
-;; Upgrades very much.
-;; Attacks with land units.
-;;
-(define ai:hum-11-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 12000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 0)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 3)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 8000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 1)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 2)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 13000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 0)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 3)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-11-attack-endloop) ) )
-
-(define-ai 'hum-11 "alliance" "hum-11"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:force-role 2 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
- (ai:set (ai:worker) 8)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:sleep 6000)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 2 (ai:cavalrie) 2)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 0 (ai:cavalrie) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 6000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 7000)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 1 (ai:cavalrie) 2)
- (ai:force 1 (ai:soldier) 2 (ai:shooter) 1 (ai:cavalrie) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 5000)
- (ai:force 1 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0)
- (ai:force 0 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 2 (ai:catapult) 1)
- (ai:research (ai:upgrade-missile-1))
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
-
- (ai:sleep 6000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 3)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 9000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 1)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 2)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 7000)
- (ai:research (ai:upgrade-elite-shooter))
- (ai:research (ai:upgrade-elite-shooter-1))
- (ai:sleep 13000)
-
- (ai:force 2 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 1)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 1)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 2)
- (ai:wait-force 2) ;; wait until attack party is completed
- (ai:attack-with-force 2)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-elite-shooter-2))
- (ai:research (ai:mage-spell-1))
-
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:sleep 7000)
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:upgrade-weapon-2))
- (ai:sleep 12000)
- (ai:force 2 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 0)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 2)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
- (ai:research (ai:upgrade-armor-2))
- (ai:research (ai:mage-spell-3))
- (ai:research (ai:mage-spell-4))
- (ai:research (ai:upgrade-catapult-1))
-
- (ai:sleep 8000)
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 1)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 2)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:mage-spell-5))
- (ai:sleep 13000)
-
- (ai:force 1 (ai:soldier) 1 (ai:shooter) 1 (ai:cavalrie) 1 (ai:catapult) 1
- (ai:mage) 0)
- (ai:force 0 (ai:soldier) 0 (ai:shooter) 0 (ai:cavalrie) 0 (ai:catapult) 0
- (ai:mage) 3)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-11-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and tankers.
-;; Upgrades very much.
-;; Attacks with land and water units.
-;;
-(define ai:hum-12-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 10000)
- (ai:force 0 (ai:soldier) 1 (ai:cavalrie) 7 (ai:mage) 1)
- (ai:force 1 (ai:soldier) 1 (ai:cavalrie) 3 (ai:mage) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 5000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 7000)
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 4
- (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 1
- (ai:scout) 1)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:script ai:hum-12-attack-endloop) ) )
-
-(define-ai 'hum-12 "alliance" "hum-12"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:force-role 2 'defend) (ai:force-role 3 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:tanker) 3)
- (ai:set (ai:worker) 7)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:need (ai:platform))
- (ai:set (ai:transporter) 2)
-
- (ai:force 1 (ai:soldier) 2)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:soldier) 2)
- (ai:sleep 2000)
-
- (ai:force 2 (ai:destroyer) 2 (ai:battleship) 1 (ai:submarine) 3)
- (ai:force 3 (ai:destroyer) 0 (ai:battleship) 1 (ai:submarine) 1)
-
- (ai:sleep 3000)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:force 0 (ai:soldier) 1 (ai:cavalrie) 10 (ai:mage) 2)
- (ai:force 1 (ai:soldier) 1 )
-
- (ai:research (ai:mage-spell-1))
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:mage-spell-3))
- (ai:research (ai:mage-spell-4))
- (ai:research (ai:cavalrie-mage-spell-2))
- (ai:research (ai:mage-spell-5))
- (ai:research (ai:upgrade-ship-cannon-1))
- (ai:research (ai:upgrade-ship-armor-1))
- (ai:sleep 4000)
-
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 3)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 1)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:research (ai:upgrade-ship-cannon-2))
- (ai:research (ai:upgrade-ship-armor-2))
- (ai:research (ai:upgrade-catapult-1))
- (ai:research (ai:upgrade-catapult-2))
- (ai:sleep 6000)
-
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 3)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 2)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:sleep 7000)
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 2)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 1 (ai:submarine) 3)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:sleep 5000)
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 0 (ai:submarine) 2)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 2 (ai:submarine) 3)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:force 0 (ai:soldier) 1 (ai:cavalrie) 10 (ai:mage) 2 (ai:catapult) 1)
- (ai:force 1 (ai:soldier) 1 (ai:catapult) 1)
-
- (ai:force 2 (ai:destroyer) 1 (ai:battleship) 0 (ai:submarine) 2
- (ai:scout) 1)
- (ai:force 3 (ai:destroyer) 1 (ai:battleship) 2 (ai:submarine) 3
- (ai:scout) 1)
-
- (ai:research (ai:upgrade-missile-1))
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
- (ai:research (ai:upgrade-missile-2))
-
- (ai:research (ai:upgrade-elite-shooter))
- (ai:research (ai:upgrade-elite-shooter-1))
- (ai:research (ai:upgrade-elite-shooter-2))
- (ai:research (ai:upgrade-elite-shooter-3))
- (ai:research (ai:upgrade-weapon-2))
- (ai:research (ai:upgrade-armor-2))
-
- (ai:script ai:hum-12-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and tankers.
-;; Upgrades very much.
-;; Attacks with land and air units.
-;;
-(define ai:hum-13-attack-endloop
- '((writes nil "Looping !\n")
-
- (ai:sleep 12000)
- (ai:force 0 (ai:cavalrie) 1 (ai:mage) 1 (ai:catapult) 2)
- (ai:force 1 (ai:cavalrie) 2 (ai:shooter) 1 (ai:mage) 1 (ai:catapult) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 14000)
- (ai:force 2 (ai:flyer) 1)
- (ai:force 3 (ai:flyer) 3)
- (ai:sleep 14000)
-
- (ai:force 0 (ai:cavalrie) 1 (ai:mage) 2 (ai:catapult) 1)
- (ai:force 1 (ai:cavalrie) 2 (ai:shooter) 1 (ai:mage) 0 (ai:catapult) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-13-attack-endloop) ) )
-
-(define-ai 'hum-13 "alliance" "hum-13"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:force-role 2 'defend) (ai:force-role 3 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:tanker) 2)
- (ai:set (ai:worker) 5)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:need (ai:platform))
- (ai:set (ai:transporter) 2)
-
- (ai:force 0 (ai:cavalrie) 3 (ai:mage) 2)
-
- (ai:research (ai:mage-spell-1))
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:mage-spell-3))
- (ai:research (ai:mage-spell-4))
- (ai:research (ai:cavalrie-mage-spell-2))
-
- (ai:sleep 4000)
-
- (ai:force 0 (ai:cavalrie) 1 (ai:mage) 1)
- (ai:force 1 (ai:cavalrie) 2 (ai:mage) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:cavalrie) 1 (ai:mage) 1)
- (ai:force 1 (ai:cavalrie) 2 (ai:shooter) 1 (ai:mage) 1)
- (ai:sleep 12000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 15000)
- (ai:force 0 (ai:cavalrie) 0 (ai:mage) 1)
- (ai:force 1 (ai:cavalrie) 3 (ai:shooter) 1 (ai:mage) 1)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:mage-spell-5))
- (ai:research (ai:upgrade-ship-cannon-1))
- (ai:research (ai:upgrade-ship-armor-1))
- (ai:research (ai:upgrade-ship-cannon-2))
- (ai:research (ai:upgrade-ship-armor-2))
- (ai:force 0 (ai:cavalrie) 2 (ai:mage) 2 (ai:catapult) 1)
- (ai:force 1 (ai:cavalrie) 1 (ai:shooter) 1 (ai:mage) 0 (ai:catapult) 1)
- (ai:sleep 15000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 2 (ai:flyer) 1)
- (ai:force 3 (ai:flyer) 3)
- (ai:sleep 20000)
- (ai:wait-force 3) ;; wait until attack party is completed
- (ai:attack-with-force 3)
-
- (ai:sleep 14000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 18000)
- (ai:force 0 (ai:cavalrie) 2 (ai:mage) 2 (ai:catapult) 2)
- (ai:force 1 (ai:cavalrie) 1 (ai:shooter) 1 (ai:mage) 0 (ai:catapult) 0)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:research (ai:upgrade-catapult-1))
- (ai:research (ai:upgrade-catapult-2))
- (ai:research (ai:upgrade-missile-1))
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
- (ai:research (ai:upgrade-missile-2))
- (ai:research (ai:upgrade-elite-shooter))
-
- (ai:script ai:hum-13-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and ogres.
-;;
-(define ai:hum-14-orange-attack-endloop
- '((writes nil "Looping !\n")
- (ai:script ai:hum-14-orange-attack-endloop) ) )
-
-(define-ai 'hum-14-orange "alliance" "hum-14-orange"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:worker) 5)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:force 0 (ai:cavalrie) 8)
- (ai:force 1 (ai:cavalrie) 7)
-
- (ai:script ai:hum-14-orange-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds nothing.
-;; Does only upgrades.
-;;
-(define ai:hum-14-red-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 30000)
- (ai:sleep 30000)
- (ai:script ai:hum-14-red-attack-endloop) ) )
-
-(define-ai 'hum-14-red "alliance" "hum-14-red"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:research (ai:mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:mage-spell-3))
- (ai:research (ai:mage-spell-4))
- (ai:research (ai:mage-spell-5))
-
- (ai:script ai:hum-14-red-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only workers and dragons.
-;; Does only air attacks.
-;;
-;; FIXME: This AI should only collect GOLD.
-;;
-(define ai:hum-14-white-attack-endloop
- '((writes nil "Looping !\n")
- (ai:force 0 (ai:flyer) 8)
- (ai:force 1 (ai:flyer) 2)
- (ai:sleep 19000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:flyer) 5)
- (ai:force 1 (ai:flyer) 4)
- (ai:sleep 20000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:flyer) 6)
- (ai:force 1 (ai:flyer) 3)
- (ai:sleep 21000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:force 0 (ai:flyer) 3)
- (ai:force 1 (ai:flyer) 6)
- (ai:sleep 20000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-14-white-attack-endloop) ) )
-
-(define-ai 'hum-14-white "alliance" "hum-14-white"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:worker) 9)
- (ai:wait (ai:worker)) ;; Wait for the workers
-
- (ai:force 0 (ai:flyer) 9)
- (ai:force 1 (ai:flyer) 1)
-
- (ai:sleep 64000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 12000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:sleep 18000)
- (ai:wait-force 1) ;; wait until attack party is completed
- (ai:attack-with-force 1)
-
- (ai:script ai:hum-14-white-attack-endloop) ))
-
-;;=============================================================================
-;; This AI script builds only tanker.
-;; Does only upgrades.
-;;
-;; FIXME: This AI should only collect GOLD.
-;;
-(define ai:hum-14-black-attack-endloop
- '((writes nil "Looping !\n")
- (ai:sleep 30000)
- (ai:script ai:hum-14-black-attack-endloop) ) )
-
-(define-ai 'hum-14-black "alliance" "hum-14-black"
- '(
- ;; Define the main AI script.
- (begin (ai:debug #f)
- (ai:force-role 0 'defend) (ai:force-role 1 'attack)
- (ai:sleep (ai:get-sleep-cycles)))
-
- (ai:set (ai:tanker) 1)
- (ai:research (ai:upgrade-cavalrie-mage))
- (ai:research (ai:cavalrie-mage-spell-1))
- (ai:research (ai:cavalrie-mage-spell-2))
- (ai:research (ai:mage-spell-1))
- (ai:research (ai:mage-spell-2))
- (ai:research (ai:mage-spell-3))
- (ai:research (ai:mage-spell-4))
- (ai:research (ai:mage-spell-5))
- (ai:research (ai:upgrade-weapon-1))
- (ai:research (ai:upgrade-armor-1))
- (ai:research (ai:upgrade-weapon-2))
- (ai:research (ai:upgrade-armor-2))
- (ai:research (ai:upgrade-elite-shooter))
- (ai:research (ai:upgrade-elite-shooter-1))
- (ai:research (ai:upgrade-elite-shooter-2))
- (ai:research (ai:upgrade-elite-shooter-3))
- (ai:research (ai:upgrade-ship-cannon-1))
- (ai:research (ai:upgrade-ship-armor-1))
- (ai:research (ai:upgrade-ship-cannon-2))
- (ai:research (ai:upgrade-ship-armor-2))
-
- (ai:script ai:hum-14-black-attack-endloop) ))
Index: demogame/ccl/alliance/buttons.ccl
diff -u demogame/ccl/alliance/buttons.ccl:1.4
demogame/ccl/alliance/buttons.ccl:1.5
--- demogame/ccl/alliance/buttons.ccl:1.4 Thu Oct 9 15:32:41 2003
+++ demogame/ccl/alliance/buttons.ccl Mon Oct 13 11:15:36 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: buttons.ccl,v 1.4 2003/10/09 19:32:41 martinxyz Exp $
+;; $Id: buttons.ccl,v 1.5 2003/10/13 15:15:36 martinxyz Exp $
;;----------------------------------------------------------------------------
;; Define unit-button.
@@ -40,165 +40,37 @@
(define-button 'pos 1 'level 0 'icon 'icon-move-peasant
'action 'move
'key "m" 'hint "~!MOVE"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-peasant unit-balloon
- unit-gryphon-rider unit-mage unit-critter
- alliance-group))
+ 'for-unit '(unit-peasant alliance-group))
(define-button 'pos 2 'level 0 'icon 'icon-alliance-shield1
'action 'stop
'key "s" 'hint "~!STOP"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-peasant unit-balloon
- unit-gryphon-rider unit-mage unit-critter
- alliance-group))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-shield2
- 'action 'stop
- 'allowed 'check-upgrade 'allow-arg '(upgrade-alliance-shield1)
- 'key "s" 'hint "~!STOP"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-shield3
- 'action 'stop
- 'allowed 'check-upgrade 'allow-arg '(upgrade-alliance-shield2)
- 'key "s" 'hint "~!STOP"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista))
+ 'for-unit '(unit-peasant alliance-group))
(define-button 'pos 3 'level 0 'icon 'icon-sword1
'action 'attack
'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-peasant
- unit-gryphon-rider alliance-group))
-
-(define-button 'pos 3 'level 0 'icon 'icon-sword2
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-sword1)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista))
-
-(define-button 'pos 3 'level 0 'icon 'icon-sword3
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-sword2)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista))
-
-(define-button 'pos 3 'level 0 'icon 'icon-arrow1
- 'action 'attack
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-archer unit-ranger))
-
-(define-button 'pos 3 'level 0 'icon 'icon-arrow2
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-arrow1)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-archer unit-ranger))
-
-(define-button 'pos 3 'level 0 'icon 'icon-arrow3
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-arrow2)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-archer unit-ranger))
+ 'for-unit '(unit-peasant alliance-group))
(define-button 'pos 4 'level 0 'icon 'icon-alliance-patrol-land
'action 'patrol
'key "p" 'hint "~!PATROL"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-gryphon-rider
- alliance-group unit-balloon))
+ 'for-unit '(alliance-group))
(define-button 'pos 5 'level 0 'icon 'icon-alliance-stand-ground
'action 'stand-ground
'key "t" 'hint "S~!TAND GROUND"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-gryphon-rider
- alliance-group unit-alliance-submarine unit-battleship
- unit-alliance-destroyer))
+ 'for-unit '(alliance-group))
(define-button 'pos 6 'level 0 'icon 'icon-alliance-attack-ground
'action 'attack-ground
'key "g" 'hint "ATTACK ~!GROUND"
- 'for-unit '(unit-ballista unit-battleship alliance-group))
+ 'for-unit '(alliance-group))
(define-button 'pos 9 'level 0 'icon 'icon-alliance-demolish
'action 'demolish
'key "d" 'hint "~!DEMOLISH"
- 'for-unit '(unit-footman unit-knight unit-archer unit-paladin
- unit-dwarves unit-ranger unit-ballista unit-gryphon-rider alliance-group))
-
-;; paladin specific actions ---------------------------------------------------
-
-(define-button 'pos 6 'level 0 'icon 'icon-heal
- 'action 'cast-spell 'value 'spell-area-healing
- 'allowed 'check-upgrade 'allow-arg '(upgrade-area-healing)
- 'key "l" 'hint "AREA HEA~!LING (per 1 HP)"
- 'for-unit '(unit-paladin))
-
-(define-button 'pos 7 'level 0 'icon 'icon-holy-vision
- 'action 'cast-spell 'value 'spell-holy-vision
- 'allowed 'check-upgrade 'allow-arg '(upgrade-holy-vision)
- 'key "v" 'hint "HOLY ~!VISION"
- 'for-unit '(unit-paladin))
-
-(define-button 'pos 8 'level 0 'icon 'icon-heal
- 'action 'cast-spell 'value 'spell-healing
- 'allowed 'check-upgrade 'allow-arg '(upgrade-healing)
- 'key "h" 'hint "~!HEALING (per 1 HP)"
- 'for-unit '(unit-paladin))
-
-(define-button 'pos 9 'level 0 'icon 'icon-exorcism
- 'action 'cast-spell 'value 'spell-exorcism
- 'allowed 'check-upgrade 'allow-arg '(upgrade-exorcism)
- 'key "e" 'hint "~!EXORCISM"
- 'for-unit '(unit-paladin))
-
-;; mage specific actions ------------------------------------------------------
-
-(define-button 'pos 3 'level 0 'icon 'icon-lightning
- 'action 'attack
- 'key "a" 'hint "LIGHTNING ~!ATTACK"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 4 'level 0 'icon 'icon-fireball
- 'action 'cast-spell 'value 'spell-fireball
- 'allowed 'check-upgrade 'allow-arg '(upgrade-fireball)
- 'key "f" 'hint "~!FIREBALL"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 5 'level 0 'icon 'icon-slow
- 'action 'cast-spell 'value 'spell-slow
- 'allowed 'check-upgrade 'allow-arg '(upgrade-slow)
- 'key "o" 'hint "SL~!OW"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 6 'level 0 'icon 'icon-flame-shield
- 'action 'cast-spell 'value 'spell-flame-shield
- 'allowed 'check-upgrade 'allow-arg '(upgrade-flame-shield)
- 'key "l" 'hint "F~!LAME SHIELD"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 7 'level 0 'icon 'icon-invisibility
- 'action 'cast-spell 'value 'spell-invisibility
- 'allowed 'check-upgrade 'allow-arg '(upgrade-invisibility)
- 'key "i" 'hint "~!INVISIBILITY"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 8 'level 0 'icon 'icon-polymorph
- 'action 'cast-spell 'value 'spell-polymorph
- 'allowed 'check-upgrade 'allow-arg '(upgrade-polymorph)
- 'key "p" 'hint "~!POLYMORPH"
- 'for-unit '(unit-mage))
-
-(define-button 'pos 9 'level 0 'icon 'icon-blizzard
- 'action 'cast-spell 'value 'spell-blizzard
- 'allowed 'check-upgrade 'allow-arg '(upgrade-blizzard)
- 'key "b" 'hint "~!BLIZZARD"
- 'for-unit '(unit-mage))
+ 'for-unit '(alliance-group))
;; peasant specific actions ---------------------------------------------------
@@ -217,495 +89,16 @@
'key "g" 'hint "RETURN WITH ~!GOODS"
'for-unit '(unit-peasant))
-;; build basic/advanced structs -----------------------------------------------
-
-(define-button 'pos 7 'level 0 'icon 'icon-build-basic
- 'action 'button 'value 1
- 'key "b" 'hint "~!BUILD BASIC STRUCTURE"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 8 'level 0 'icon 'icon-build-advanced
- 'action 'button 'value 2
- 'allowed 'check-units-or 'allow-arg '(unit-elven-lumber-mill unit-keep)
- 'key "v" 'hint "BUILD AD~!VANCED STRUCTURE"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 9 'level 0 'icon 'icon-build-advanced
- 'action 'button 'value 3
- 'allowed 'check-units-and 'allow-arg '(unit-castle unit-mage-tower
unit-church)
- 'key "e" 'hint "BUILD SP~!ECIAL STRUCTURE"
- 'for-unit '(unit-peasant))
-
;; simple buildings alliance
-----------------------------------------------------
-(define-button 'pos 1 'level 1 'icon 'icon-farm
- 'action 'build 'value 'unit-farm
- 'key "f" 'hint "BUILD ~!FARM"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 2 'level 1 'icon 'icon-alliance-barracks
- 'action 'build 'value 'unit-alliance-barracks
- 'key "b" 'hint "BUILD ~!BARRACKS"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 3 'level 1 'icon 'icon-town-hall
+(define-button 'pos 7 'level 0 'icon 'icon-town-hall
'action 'build 'value 'unit-town-hall
'key "h" 'hint "BUILD TOWN ~!HALL"
'for-unit '(unit-peasant))
-(define-button 'pos 4 'level 1 'icon 'icon-elven-lumber-mill
- 'action 'build 'value 'unit-elven-lumber-mill
- 'key "l" 'hint "BUILD ELVEN ~!LUMBER MILL"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 5 'level 1 'icon 'icon-alliance-blacksmith
- 'action 'build 'value 'unit-alliance-blacksmith
- 'key "s" 'hint "BUILD BLACK~!SMITH"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 7 'level 1 'icon 'icon-alliance-watch-tower
- 'action 'build 'value 'unit-alliance-watch-tower
- 'key "t" 'hint "BUILD ~!TOWER"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 8 'level 1 'icon 'icon-alliance-wall
- 'action 'build 'value 'unit-human-wall
- 'allowed 'check-network
- 'key "w" 'hint "BUILD ~!WALL"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 9 'level 1 'icon 'icon-cancel
- 'action 'button 'value 0
- 'key "\033" 'hint "~<ESC~> CANCEL"
- 'for-unit '(unit-peasant))
-
-;; alliance advanced buildings
---------------------------------------------------
-
-(define-button 'pos 1 'level 2 'icon 'icon-alliance-shipyard
- 'action 'build 'value 'unit-alliance-shipyard
- 'key "s" 'hint "BUILD ~!SHIPYARD"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 2 'level 2 'icon 'icon-alliance-foundry
- 'action 'build 'value 'unit-alliance-foundry
- 'key "f" 'hint "BUILD ~!FOUNDRY"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 3 'level 2 'icon 'icon-alliance-refinery
- 'action 'build 'value 'unit-alliance-refinery
- 'key "r" 'hint "BUILD ~!REFINERY"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 4 'level 2 'icon 'icon-inventor
- 'action 'build 'value 'unit-inventor
- 'key "i" 'hint "BUILD GNOMISH ~!INVENTOR"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 5 'level 2 'icon 'icon-stables
- 'action 'build 'value 'unit-stables
- 'key "a" 'hint "BUILD ST~!ABLES"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 6 'level 2 'icon 'icon-mage-tower
- 'action 'build 'value 'unit-mage-tower
- 'key "m" 'hint "BUILD ~!MAGE TOWER"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 7 'level 2 'icon 'icon-church
- 'action 'build 'value 'unit-church
- 'key "c" 'hint "BUILD ~!CHURCH"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 8 'level 2 'icon 'icon-gryphon-aviary
- 'action 'build 'value 'unit-gryphon-aviary
- 'key "g" 'hint "BUILD ~!GRYPHON AVIARY"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 9 'level 2 'icon 'icon-cancel
- 'action 'button 'value 0
- 'key "\033" 'hint "~<ESC~> CANCEL"
- 'for-unit '(unit-peasant))
-
-;; alliance special buildings
----------------------------------------------------
-
-(define-button 'pos 1 'level 3 'icon 'icon-dark-portal
- 'action 'build 'value 'unit-dark-portal
- 'allowed 'check-no-network
- 'key "p" 'hint "BUILD DARK ~!PORTAL"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 2 'level 3 'icon 'icon-runestone
- 'action 'build 'value 'unit-runestone
- 'allowed 'check-no-network
- 'key "r" 'hint "BUILD ~!RUNESTONE"
- 'for-unit '(unit-peasant))
-
-(define-button 'pos 9 'level 3 'icon 'icon-cancel
- 'action 'button 'value 0
- 'key "\033" 'hint "~<ESC~> CANCEL"
- 'for-unit '(unit-peasant))
-
-;; buildings commands ---------------------------------------------------------
-
-(define-button 'pos 1 'level 0 'icon 'icon-critter
- 'action 'train-unit 'value 'unit-critter
- 'key "c" 'hint "TRAIN ~!CRITTER"
- 'for-unit '(unit-farm))
-
(define-button 'pos 1 'level 0 'icon 'icon-peasant
'action 'train-unit 'value 'unit-peasant
'allowed 'check-no-research
'key "p" 'hint "TRAIN ~!PEASANT"
- 'for-unit '(unit-town-hall unit-keep unit-castle))
-
-;; town hall upgrades ---------------------------------------------------------
-
-(define-button 'pos 2 'level 0 'icon 'icon-keep
- 'action 'upgrade-to 'value 'unit-keep
- 'allowed 'check-upgrade-to
- 'key "k" 'hint "UPGRADE TO ~!KEEP"
'for-unit '(unit-town-hall))
-(define-button 'pos 2 'level 0 'icon 'icon-castle-upgrade
- 'action 'upgrade-to 'value 'unit-castle
- 'allowed 'check-upgrade-to
- 'key "c" 'hint "UPGRADE TO ~!CASTLE"
- 'for-unit '(unit-keep))
-
-(define-button 'pos 5 'level 0 'icon 'icon-harvest
- 'action 'harvest
- 'key "h" 'hint "SET ~!HARVEST LUMBER/MINE GOLD"
- 'for-unit '(unit-town-hall unit-keep unit-castle))
-
-(define-button 'pos 7 'level 0 'icon 'icon-move-peasant
- 'action 'move
- 'key "m" 'hint "SET ~!MOVE"
- 'for-unit '(unit-town-hall unit-keep unit-castle unit-alliance-barracks
- unit-mage-tower unit-gryphon-aviary unit-inventor))
-
-(define-button 'pos 8 'level 0 'icon 'icon-alliance-shield1
- 'action 'stop
- 'key "z" 'hint "SET ~!ZTOP"
- 'for-unit '(unit-town-hall unit-keep unit-castle unit-alliance-barracks
- unit-mage-tower unit-gryphon-aviary unit-inventor))
-
-(define-button 'pos 9 'level 0 'icon 'icon-sword1
- 'action 'attack
- 'key "e" 'hint "S~!ET ATTACK"
- 'for-unit '(unit-town-hall unit-keep unit-castle unit-alliance-barracks
- unit-mage-tower unit-gryphon-aviary unit-inventor))
-
-(define-button 'pos 1 'level 0 'icon 'icon-footman
- 'action 'train-unit 'value 'unit-footman
- 'key "f" 'hint "TRAIN ~!FOOTMAN"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 2 'level 0 'icon 'icon-archer
- 'action 'train-unit 'value 'unit-archer
- 'key "a" 'hint "TRAIN ~!ARCHER"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 2 'level 0 'icon 'icon-ranger
- 'action 'train-unit 'value 'unit-ranger
- 'key "r" 'hint "TRAIN ~!RANGER"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 3 'level 0 'icon 'icon-ballista
- 'action 'train-unit 'value 'unit-ballista
- 'key "b" 'hint "BUILD ~!BALLISTA"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 4 'level 0 'icon 'icon-knight
- 'action 'train-unit 'value 'unit-knight
- 'key "k" 'hint "TRAIN ~!KNIGHT"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 4 'level 0 'icon 'icon-paladin
- 'action 'train-unit 'value 'unit-paladin
- 'key "p" 'hint "TRAIN ~!PALADIN"
- 'for-unit '(unit-alliance-barracks))
-
-(define-button 'pos 1 'level 0 'icon 'icon-balloon
- 'action 'train-unit 'value 'unit-balloon
- 'key "f" 'hint "BUILD GNOMISH ~!FLYING MACHINE"
- 'for-unit '(unit-inventor))
-
-(define-button 'pos 2 'level 0 'icon 'icon-dwarves
- 'action 'train-unit 'value 'unit-dwarves
- 'key "d" 'hint "TRAIN ~!DWARVEN DEMOLITION SQUAD"
- 'for-unit '(unit-inventor))
-
-(define-button 'pos 1 'level 0 'icon 'icon-mage
- 'action 'train-unit 'value 'unit-mage
- 'key "t" 'hint "~!TRAIN MAGE"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 1 'level 0 'icon 'icon-gryphon-rider
- 'action 'train-unit 'value 'unit-gryphon-rider
- 'key "g" 'hint "TRAIN ~!GRYPHON RIDER"
- 'for-unit '(unit-gryphon-aviary))
-
-(define-button 'pos 1 'level 0 'icon 'icon-alliance-oil-tanker
- 'action 'train-unit 'value 'unit-alliance-oil-tanker
- 'key "o" 'hint "BUILD ~!OIL TANKER"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-destroyer
- 'action 'train-unit 'value 'unit-alliance-destroyer
- 'key "d" 'hint "BUILD ALLIANCE_~!DESTROYER"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 3 'level 0 'icon 'icon-alliance-transport
- 'action 'train-unit 'value 'unit-alliance-transport
- 'key "t" 'hint "BUILD ~!TRANSPORT"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 4 'level 0 'icon 'icon-alliance-submarine
- 'action 'train-unit 'value 'unit-alliance-submarine
- 'key "s" 'hint "BUILD GNOMISH ~!SUBMARINE"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 5 'level 0 'icon 'icon-battleship
- 'action 'train-unit 'value 'unit-battleship
- 'key "b" 'hint "BUILD ~!BATTLESHIP"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 6 'level 0 'icon 'icon-alliance-ship-haul-oil
- 'action 'harvest
- 'key "h" 'hint "SET ~!HAUL OIL"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 1 'level 0 'icon 'icon-alliance-guard-tower
- 'action 'upgrade-to 'value 'unit-alliance-guard-tower
- 'key "g" 'hint "UPGRADE TO ~!GUARD TOWER"
- 'for-unit '(unit-alliance-watch-tower))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-cannon-tower
- 'action 'upgrade-to 'value 'unit-alliance-cannon-tower
- 'key "c" 'hint "UPGRADE TO ~!CANNON TOWER"
- 'for-unit '(unit-alliance-watch-tower))
-
-;; ships ----------------------------------------------------------------------
-
-(define-button 'pos 1 'level 0 'icon 'icon-alliance-ship-move
- 'action 'move
- 'key "m" 'hint "~!MOVE"
- 'for-unit '(unit-alliance-oil-tanker
- unit-alliance-submarine unit-battleship unit-alliance-destroyer
- unit-alliance-transport))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-ship-armor1
- 'action 'stop
- 'key "s" 'hint "~!STOP"
- 'for-unit '(unit-alliance-oil-tanker
- unit-alliance-submarine unit-battleship unit-alliance-destroyer
- unit-alliance-transport))
-
-(define-button 'pos 3 'level 0 'icon 'icon-alliance-unload
- 'action 'unload
- 'key "u" 'hint "~!UNLOAD"
- 'for-unit '(unit-alliance-transport))
-
-(define-button 'pos 4 'level 0 'icon 'icon-alliance-oil-platform
- 'action 'build 'value 'unit-alliance-oil-platform
- 'key "b" 'hint "~!BUILD OIL PLATFORM"
- 'for-unit '(unit-alliance-oil-tanker))
-
-(define-button 'pos 5 'level 0 'icon 'icon-alliance-ship-haul-oil
- 'action 'harvest
- 'key "h" 'hint "~!HAUL OIL"
- 'for-unit '(unit-alliance-oil-tanker))
-
-(define-button 'pos 6 'level 0 'icon 'icon-alliance-ship-return-oil
- 'action 'return-goods
- 'key "g" 'hint "RETURN WITH ~!GOODS"
- 'for-unit '(unit-alliance-oil))
-
-(define-button 'pos 3 'level 0 'icon 'icon-alliance-ship-cannon1
- 'action 'attack
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-alliance-submarine unit-battleship unit-alliance-destroyer))
-
-(define-button 'pos 3 'level 0 'icon 'icon-alliance-ship-cannon2
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-alliance-ship-cannon1)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-alliance-submarine unit-battleship unit-alliance-destroyer))
-
-(define-button 'pos 3 'level 0 'icon 'icon-alliance-ship-cannon3
- 'action 'attack
- 'allowed 'check-upgrade 'allow-arg '(upgrade-alliance-ship-cannon2)
- 'key "a" 'hint "~!ATTACK"
- 'for-unit '(unit-alliance-submarine unit-battleship unit-alliance-destroyer))
-
-(define-button 'pos 4 'level 0 'icon 'icon-alliance-patrol-naval
- 'action 'patrol
- 'key "p" 'hint "~!PATROL"
- 'for-unit '(unit-alliance-submarine unit-battleship unit-alliance-destroyer))
-
-(define-button 'pos 7 'level 0 'icon 'icon-alliance-ship-move
- 'action 'move
- 'key "m" 'hint "SET ~!MOVE"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 8 'level 0 'icon 'icon-alliance-ship-armor1
- 'action 'stop
- 'key "z" 'hint "SET ~!ZTOP"
- 'for-unit '(unit-alliance-shipyard))
-
-(define-button 'pos 9 'level 0 'icon 'icon-alliance-ship-cannon1
- 'action 'attack
- 'key "e" 'hint "S~!ET ATTACK"
- 'for-unit '(unit-alliance-shipyard))
-
-;; upgrades -------------------------------------------------------------------
-
-(define-button 'pos 1 'level 0 'icon 'icon-sword2
- 'action 'research 'value 'upgrade-sword1
- 'allowed 'check-single-research
- 'key "w" 'hint "UPGRADE S~!WORDS (Damage +2)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 1 'level 0 'icon 'icon-sword3
- 'action 'research 'value 'upgrade-sword2
- 'allowed 'check-single-research
- 'key "w" 'hint "UPGRADE S~!WORDS (Damage +2)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-shield2
- 'action 'research 'value 'upgrade-alliance-shield1
- 'allowed 'check-single-research
- 'key "s" 'hint "UPGRADE ~!SHIELDS (Armor +2)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-shield3
- 'action 'research 'value 'upgrade-alliance-shield2
- 'allowed 'check-single-research
- 'key "s" 'hint "UPGRADE ~!SHIELDS (Armor +2)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 3 'level 0 'icon 'icon-ballista1
- 'action 'research 'value 'upgrade-ballista1
- 'allowed 'check-single-research
- 'key "b" 'hint "UPGRADE ~!BALLISTA (Damage +15)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 3 'level 0 'icon 'icon-ballista2
- 'action 'research 'value 'upgrade-ballista2
- 'allowed 'check-single-research
- 'key "b" 'hint "UPGRADE ~!BALLISTA (Damage +15)"
- 'for-unit '(unit-alliance-blacksmith))
-
-(define-button 'pos 1 'level 0 'icon 'icon-arrow2
- 'action 'research 'value 'upgrade-arrow1
- 'allowed 'check-single-research
- 'key "u" 'hint "~!UPGRADE ARROWS (Damage +1)"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 1 'level 0 'icon 'icon-arrow3
- 'action 'research 'value 'upgrade-arrow2
- 'allowed 'check-single-research
- 'key "u" 'hint "~!UPGRADE ARROWS (Damage +1)"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 4 'level 0 'icon 'icon-ranger
- 'action 'research 'value 'upgrade-ranger
- 'allowed 'check-single-research
- 'key "r" 'hint "ELVEN ~!RANGER TRAINING"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 4 'level 0 'icon 'icon-ranger-scouting
- 'action 'research 'value 'upgrade-ranger-scouting
- 'allowed 'check-single-research
- 'key "s" 'hint "RANGER ~!SCOUTING (Sight:9)"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 5 'level 0 'icon 'icon-longbow
- 'action 'research 'value 'upgrade-longbow
- 'allowed 'check-single-research
- 'key "l" 'hint "RESEARCH ~!LONGBOW (Range +1)"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 6 'level 0 'icon 'icon-ranger-marksmanship
- 'action 'research 'value 'upgrade-ranger-marksmanship
- 'allowed 'check-single-research
- 'key "m" 'hint "RANGER ~!MARKSMANSHIP (Damage +3)"
- 'for-unit '(unit-elven-lumber-mill))
-
-(define-button 'pos 1 'level 0 'icon 'icon-paladin
- 'action 'research 'value 'upgrade-paladin
- 'allowed 'check-single-research
- 'key "p" 'hint "UPGRADES KNIGHTS TO ~!PALADINS"
- 'for-unit '(unit-church))
-
-(define-button 'pos 2 'level 0 'icon 'icon-heal
- 'action 'research 'value 'upgrade-healing
- 'allowed 'check-single-research
- 'key "h" 'hint "RESEARCH ~!HEALING"
- 'for-unit '(unit-church))
-
-(define-button 'pos 3 'level 0 'icon 'icon-exorcism
- 'action 'research 'value 'upgrade-exorcism
- 'allowed 'check-single-research
- 'key "e" 'hint "RESEARCH ~!EXORCISM"
- 'for-unit '(unit-church))
-
-(define-button 'pos 5 'level 0 'icon 'icon-heal
- 'action 'research 'value 'upgrade-area-healing
- 'allowed 'check-single-research
- 'key "l" 'hint "RESEARCH AREA HEA~!LING"
- 'for-unit '(unit-church))
-
-(define-button 'pos 2 'level 0 'icon 'icon-slow
- 'action 'research 'value 'upgrade-slow
- 'allowed 'check-single-research
- 'key "o" 'hint "RESEARCH SL~!OW"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 3 'level 0 'icon 'icon-flame-shield
- 'action 'research 'value 'upgrade-flame-shield
- 'allowed 'check-single-research
- 'key "l" 'hint "RESEARCH F~!LAME SHIELD"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 4 'level 0 'icon 'icon-invisibility
- 'action 'research 'value 'upgrade-invisibility
- 'allowed 'check-single-research
- 'key "i" 'hint "RESEARCH ~!INVISIBILITY"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 5 'level 0 'icon 'icon-polymorph
- 'action 'research 'value 'upgrade-polymorph
- 'allowed 'check-single-research
- 'key "p" 'hint "RESEARCH ~!POLYMORPH"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 6 'level 0 'icon 'icon-blizzard
- 'action 'research 'value 'upgrade-blizzard
- 'allowed 'check-single-research
- 'key "b" 'hint "RESEARCH ~!BLIZZARD"
- 'for-unit '(unit-mage-tower))
-
-(define-button 'pos 1 'level 0 'icon 'icon-alliance-ship-cannon2
- 'action 'research 'value 'upgrade-alliance-ship-cannon1
- 'allowed 'check-single-research
- 'key "c" 'hint "UPGRADE ~!CANNONS (Damage +5)"
- 'for-unit '(unit-alliance-foundry))
-
-(define-button 'pos 1 'level 0 'icon 'icon-alliance-ship-cannon3
- 'action 'research 'value 'upgrade-alliance-ship-cannon2
- 'allowed 'check-single-research
- 'key "c" 'hint "UPGRADE ~!CANNONS (Damage +5)"
- 'for-unit '(unit-alliance-foundry))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-ship-armor2
- 'action 'research 'value 'upgrade-alliance-ship-armor1
- 'allowed 'check-single-research
- 'key "a" 'hint "UPGRADE SHIP ~!ARMOR (Armor +5)"
- 'for-unit '(unit-alliance-foundry))
-
-(define-button 'pos 2 'level 0 'icon 'icon-alliance-ship-armor3
- 'action 'research 'value 'upgrade-alliance-ship-armor2
- 'allowed 'check-single-research
- 'key "a" 'hint "UPGRADE SHIP ~!ARMOR (Armor +5)"
- 'for-unit '(unit-alliance-foundry))
Index: demogame/ccl/alliance/constructions.ccl
diff -u demogame/ccl/alliance/constructions.ccl:1.1
demogame/ccl/alliance/constructions.ccl:1.2
--- demogame/ccl/alliance/constructions.ccl:1.1 Sat Jul 26 09:39:14 2003
+++ demogame/ccl/alliance/constructions.ccl Mon Oct 13 11:15:36 2003
@@ -26,94 +26,6 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: constructions.ccl,v 1.1 2003/07/26 13:39:14 martinxyz Exp $
+;; $Id: constructions.ccl,v 1.2 2003/10/13 15:15:36 martinxyz Exp $
-;;=============================================================================
-;; Define a construction.
-;;
-;; (define-construction ident 'files '(tileset-name filename ..)
-;; 'size '(x y))
-
-(define-construction 'construction-alliance-shipyard
- 'file '(
- tileset summer
- file "alliance/buildings/shipyard_construction_site.png"
- size (96 96))
- 'file '(
- tileset winter
- file "tilesets/winter/alliance/buildings/shipyard_construction_site.png"
- size (96 96))
- 'constructions (list
- '(percent 0
- file construction
- frame 0)
- '(percent 25
- file construction
- frame 1)
- '(percent 50
- file main
- frame 1))
-)
-
-(define-construction 'construction-alliance-oil-well
- 'file '(
- tileset summer
- file "tilesets/summer/alliance/buildings/oil_well_construction_site.png"
- size (96 96))
- 'file '(
- tileset winter
- file "tilesets/winter/alliance/buildings/oil_well_construction_site.png"
- size (96 96))
- 'constructions (list
- '(percent 0
- file construction
- frame 0)
- '(percent 25
- file construction
- frame 1)
- '(percent 50
- file main
- frame 1))
-)
-
-(define-construction 'construction-alliance-refinery
- 'file '(
- tileset summer
- file "alliance/buildings/refinery_construction_site.png"
- size (96 96))
- 'file '(
- tileset winter
- file "tilesets/winter/alliance/buildings/refinery_construction_site.png"
- size (96 96))
- 'constructions (list
- '(percent 0
- file construction
- frame 0)
- '(percent 25
- file construction
- frame 1)
- '(percent 50
- file main
- frame 1))
-)
-
-(define-construction 'construction-alliance-foundry
- 'file '(
- tileset summer
- file "alliance/buildings/foundry_construction_site.png"
- size (96 96))
- 'file '(
- tileset winter
- file "tilesets/winter/alliance/buildings/foundry_construction_site.png"
- size (96 96))
- 'constructions (list
- '(percent 0
- file construction
- frame 0)
- '(percent 25
- file construction
- frame 1)
- '(percent 50
- file main
- frame 1))
-)
+; no constructions
Index: demogame/ccl/alliance/spells.ccl
diff -u demogame/ccl/alliance/spells.ccl:1.2
demogame/ccl/alliance/spells.ccl:1.3
--- demogame/ccl/alliance/spells.ccl:1.2 Mon Oct 13 10:09:10 2003
+++ demogame/ccl/alliance/spells.ccl Mon Oct 13 11:15:36 2003
@@ -26,153 +26,6 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: spells.ccl,v 1.2 2003/10/13 14:09:10 martinxyz Exp $
-
-;; Declare some unit types used in spells. This is quite accetable, the other
-;; way would be to define can-cast-spell outside unit definitions, not much
of an improvement.
-(define-unit-type 'unit-revealer)
-(define-unit-type 'unit-critter)
-(define-unit-type 'unit-circle-of-power)
-
-(define-spell "spell-holy-vision"
- 'showname "Holy Vision"
- 'manacost 70
- 'range 'infinite
- 'target 'position
- 'action '(summon unit-type unit-revealer time-to-live 10)
- 'sound-when-cast "holy vision"
- 'missile-when-cast "missile-normal-spell"
-)
-
-(define-spell "spell-healing"
- 'showname "Healing"
- 'manacost 6
- 'range 6
- 'target 'unit
- 'action '(adjust-vitals hit-points 1)
- 'condition '(
- organic only
- building false
- max-hp-percent 100)
- 'sound-when-cast "healing"
- 'missile-when-cast "missile-heal-effect"
- 'autocast '(range 6
- condition (
- coward false
- alliance only
- max-hp-percent 50
- )
- )
-)
-
-(define-spell "spell-exorcism"
- 'showname "Exorcism"
- 'manacost 4
- 'range 10
- 'target 'unit
- 'action '(adjust-vitals hit-points -1)
- 'condition '(
- undead only
- building false ; any undead buildings?
- alliance false
- )
- 'sound-when-cast "exorcism"
- 'missile-when-cast "missile-exorcism"
- 'autocast '(range 10 condition (coward false alliance false))
-)
-
-(define-spell "spell-slow"
- 'showname "slow"
- 'manacost 50
- 'range 10
- 'target 'unit
- 'action '(adjust-buffs slow-ticks 1000 haste-ticks 0)
- 'condition '(
- building false
- max-slow-ticks 10)
- 'sound-when-cast "slow"
- 'missile-when-cast "missile-normal-spell"
- 'autocast '(range 10 combat only condition (coward false alliance
false))
- 'ai-cast '(range 10 condition (coward false alliance false))
-)
-
-(define-spell "spell-invisibility"
- 'showname "invisibility"
- 'manacost 200
- 'range 6
- 'target 'unit
- 'action '(adjust-buffs invisibility-ticks 2000)
- 'condition '(
- building false
- max-invisibility-ticks 10)
- 'sound-when-cast "invisibility"
- 'missile-when-cast "missile-normal-spell"
-; 'autocast '(range 6 condition (coward false))
-)
-
-(define-spell "spell-flame-shield"
- 'showname "flame shield"
- 'manacost 50
- 'range 6
- 'target 'unit
- 'action '(flame-shield duration 600 damage 1)
- ;; I think it's better if we can cast it multiple times and the effects
stack.
- ;; Can be casted, and is effective on both allies and enemies
- 'condition '(building false)
- 'sound-when-cast "flame shield"
- 'missile-when-cast "missile-flame-shield" ; NOT use
-; 'autocast '(range 6 condition (coward false))
-)
-
-(define-spell "spell-polymorph"
- 'showname "polymorph"
- 'manacost 200
- 'range 10
- 'target 'unit
- 'action '(polymorph new-form unit-critter)
- 'condition '(organic only)
- 'sound-when-cast "polymorph"
- 'missile-when-cast "missile-normal-spell"
- ;; Only cast on the strongest units!!!
-; 'autocast '(range 10 condition (alliance false min-hp-percent 75))
-)
-
-(define-spell "spell-blizzard"
- 'showname "blizzard"
- 'manacost 25
- 'range 12
- 'target 'position
- 'action '(area-bombardment
- fields 5
- shards 10
- damage 10
- ;; 128=4*32=4 tiles
- start-offset-x -128
- start-offset-y -128)
- 'sound-when-cast "blizzard"
- 'missile-when-cast "missile-blizzard"
-;; 'autocast '(range 12)
-)
-
-(define-spell "spell-fireball"
- 'showname "fireball"
- 'manacost 100
- 'range 8
- 'target 'position
- 'action '(fireball ttl 1000 damage 20)
- 'sound-when-cast "fireball throw"
- 'missile-when-cast "missile-fireball"
-;; 'autocast '(range 8)
-)
-
-(define-spell "spell-circle-of-power"
- 'showname "circle of power"
- 'manacost 25
- 'range -1
- 'target 'position
- 'action '(spawn-portal portal-type unit-circle-of-power)
- 'sound-when-cast "circle of power"
- 'missile-when-cast "missile-normal-spell"
-;; 'autocast '(range -1)
-)
+;; $Id: spells.ccl,v 1.3 2003/10/13 15:15:36 martinxyz Exp $
+; no spells, see ../mythical/spells.ccl for minimal example
Index: demogame/ccl/alliance/units.ccl
diff -u demogame/ccl/alliance/units.ccl:1.12
demogame/ccl/alliance/units.ccl:1.13
--- demogame/ccl/alliance/units.ccl:1.12 Thu Oct 9 12:10:35 2003
+++ demogame/ccl/alliance/units.ccl Mon Oct 13 11:15:36 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: units.ccl,v 1.12 2003/10/09 16:10:35 martinxyz Exp $
+;; $Id: units.ccl,v 1.13 2003/10/13 15:15:36 martinxyz Exp $
;;=============================================================================
;; Define unit-types.
@@ -34,37 +34,6 @@
;; NOTE: Save can generate this table.
;;
-(define-unit-type 'unit-footman 'name "Footman"
- 'files '(tileset-summer "alliance/units/footman.png")
- 'size '(72 72)
- 'animations 'animations-footman 'icon 'icon-footman
- 'costs '(time 60 gold 600)
- 'speed 10
- 'hit-points 60
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(31 31)
- 'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
- 'armor 2 'basic-damage 6 'piercing-damage 3 'missile 'missile-none
- 'max-attack-range 1
- 'priority 60
- 'points 50
- 'demand 1
- 'corpse '(unit-dead-body 6)
- 'type-land
- 'right-attack
- 'can-attack 'repair-range 1
- 'can-target-land
- 'land-unit
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "footman-selected"
- acknowledge "footman-acknowledge"
- ready "footman-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "footman-attack"))
-
(define-unit-type 'unit-peasant 'name "Peasant"
'files '(tileset-summer "alliance/units/peasant.png")
'size '(72 72)
@@ -113,759 +82,11 @@
dead "basic alliance voices dead"
attack "peasant-attack"))
-(define-unit-type 'unit-ballista 'name "Ballista"
- 'files '(tileset-summer "alliance/units/ballista.png")
- 'size '(64 64)
- 'animations 'animations-ballista 'icon 'icon-ballista
- 'costs '(time 250 gold 900 wood 300)
- 'speed 5
- 'hit-points 110
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 9 'computer-reaction-range 11 'person-reaction-range 9
- 'basic-damage 80 'piercing-damage 0 'missile 'missile-ballista-bolt
- 'min-attack-range 2 'max-attack-range 8
- 'priority 70
- 'points 100
- 'demand 1
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'right-attack
- 'can-ground-attack
- 'can-attack
- 'can-target-land 'can-target-sea
- 'selectable-by-rectangle
- 'sounds '(
- selected "ballista-selected"
- acknowledge "ballista-acknowledge"
- ready "ballista-ready"
- help "basic alliance voices help 1"
- dead "explosion"
- attack "ballista-attack"))
-
-(define-unit-type 'unit-knight 'name "Knight"
- 'files '(tileset-summer "alliance/units/knight.png")
- 'size '(72 72)
- 'animations 'animations-knight 'icon 'icon-knight
- 'costs '(time 90 gold 800 wood 100)
- 'speed 13
- 'hit-points 90
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(42 42)
- 'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
- 'armor 4 'basic-damage 8 'piercing-damage 4 'missile 'missile-none
- 'max-attack-range 1
- 'priority 63
- 'points 100
- 'demand 1
- 'corpse '(unit-dead-body 6)
- 'type-land
- 'right-attack
- 'can-attack
- 'can-target-land
- 'land-unit
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "knight-selected"
- acknowledge "knight-acknowledge"
- ready "knight-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "knight-attack"))
-
-(define-unit-type 'unit-archer 'name "Archer"
- 'files '(tileset-summer "alliance/units/archer.png")
- 'size '(72 72)
- 'animations 'animations-archer 'icon 'icon-archer
- 'costs '(time 70 gold 500 wood 50)
- 'speed 10
- 'hit-points 40
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(33 33)
- 'sight-range 5 'computer-reaction-range 7 'person-reaction-range 5
- 'basic-damage 3 'piercing-damage 6 'missile 'missile-arrow
- 'max-attack-range 4
- 'priority 55
- 'points 60
- 'demand 1
- 'corpse '(unit-dead-body 6)
- 'type-land
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'land-unit
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "archer-selected"
- acknowledge "archer-acknowledge"
- ready "archer-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "archer-attack"))
-
-(define-unit-type 'unit-mage 'name "Mage"
- 'files '(tileset-summer "alliance/units/mage.png")
- 'size '(72 72)
- 'animations 'animations-mage 'icon 'icon-mage
- 'costs '(time 120 gold 1200)
- 'speed 8
- 'hit-points 60
- 'draw-level 40
- 'max-mana 255
- 'tile-size '(1 1) 'box-size '(33 33)
- 'sight-range 9 'computer-reaction-range 11 'person-reaction-range 9
- 'basic-damage 0 'piercing-damage 9 'missile 'missile-lightning
- 'max-attack-range 2
- 'priority 70
- 'points 100
- 'demand 1
- 'type-land
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'can-cast-spell '(
- spell-fireball
- spell-slow
- spell-flame-shield
- spell-invisibility
- spell-polymorph
- spell-blizzard)
- 'land-unit
- 'coward
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "mage-selected"
- acknowledge "mage-acknowledge"
- ready "mage-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "mage-attack"))
-
-(define-unit-type 'unit-paladin 'name "Paladin"
- 'use 'unit-knight
- 'size '(72 72)
- 'animations 'animations-knight 'icon 'icon-paladin
- 'costs '(time 90 gold 800 wood 100)
- 'speed 13
- 'hit-points 90
- 'draw-level 40
- 'max-mana 255
- 'tile-size '(1 1) 'box-size '(42 42)
- 'sight-range 5 'computer-reaction-range 7 'person-reaction-range 5
- 'armor 4 'basic-damage 8 'piercing-damage 4 'missile 'missile-none
- 'max-attack-range 1
- 'priority 65
- 'points 110
- 'demand 1
- 'corpse '(unit-dead-body 6)
- 'type-land
- 'right-attack
- 'can-attack
- 'can-target-land
- 'can-cast-spell '(spell-holy-vision spell-healing spell-exorcism)
- 'land-unit
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "paladin-selected"
- acknowledge "paladin-acknowledge"
- ready "paladin-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "paladin-attack"))
-
-(define-unit-type 'unit-dwarves 'name "Dwarves"
- 'files '(tileset-summer "alliance/units/demolition_squad.png")
- 'size '(56 56)
- 'animations 'animations-dwarves 'icon 'icon-dwarves
- 'costs '(time 200 gold 700 wood 250)
- 'speed 11
- 'hit-points 40
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(32 32)
- 'sight-range 4 'computer-reaction-range 4 'person-reaction-range 2
- 'basic-damage 4 'piercing-damage 2 'missile 'missile-none
- 'max-attack-range 1
- 'priority 55
- 'points 100
- 'demand 1
- 'type-land
- 'right-demolish
- 'demolish-range 2
- 'demolish-damage 400
- 'can-attack
- 'can-target-land
- 'land-unit
- 'volatile
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "dwarves-selected"
- acknowledge "dwarves-acknowledge"
- ready "dwarves-ready"
- help "basic alliance voices help 1"
- dead "explosion"
- attack "dwarves-attack"))
-
-(define-unit-type 'unit-ranger 'name "Ranger"
- 'use 'unit-archer
- 'size '(72 72)
- 'animations 'animations-archer 'icon 'icon-ranger
- 'costs '(time 70 gold 500 wood 50)
- 'speed 10
- 'hit-points 50
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(33 33)
- 'sight-range 6 'computer-reaction-range 9 'person-reaction-range 6
- 'basic-damage 3 'piercing-damage 6 'missile 'missile-arrow
- 'max-attack-range 4
- 'priority 57
- 'points 70
- 'demand 1
- 'corpse '(unit-dead-body 6)
- 'type-land
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'land-unit
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "ranger-selected"
- acknowledge "ranger-acknowledge"
- ready "ranger-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "ranger-attack"))
-
-(define-unit-type 'unit-alliance-oil-tanker 'name "Oil tanker"
- 'files '(tileset-summer "alliance/units/oil_tanker_empty.png")
- 'size '(72 72)
- 'animations 'animations-alliance-oil-tanker 'icon 'icon-alliance-oil-tanker
- 'costs '(time 50 gold 400 wood 200)
- 'speed 10
- 'hit-points 90
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 4
- 'armor 10 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'max-attack-range 1
- 'priority 50 'annoy-computer-factor 10
- 'points 40
- 'demand 1
- 'corpse '(unit-dead-body 12)
- 'type-naval
- 'right-harvest
- 'sea-unit 'coward
- 'can-gather-resource '(
- file-when-empty "alliance/units/oil_tanker_empty.png"
- file-when-loaded "alliance/units/oil_tanker_full.png"
- resource-id oil
- resource-capacity 100
- wait-at-resource 100
- wait-at-depot 100)
- 'selectable-by-rectangle
- 'sounds '(
- selected "alliance-oil-tanker-selected"
- acknowledge "alliance-oil-tanker-acknowledge"
- ready "alliance-oil-tanker-ready"
- help "basic alliance voices help 1"
- dead "ship sinking"
- attack "alliance-oil-tanker-attack"))
-
-(define-unit-type 'unit-alliance-transport 'name "Transport"
- 'files '(tileset-summer "alliance/units/transport.png")
- 'size '(72 72)
- 'animations 'animations-alliance-transport 'icon 'icon-alliance-transport
- 'costs '(time 70 gold 600 wood 200 oil 500)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'speed 10
- 'hit-points 150
- 'draw-level 40
- 'max-on-board 6
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 4
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'max-attack-range 1
- 'priority 70 'annoy-computer-factor 15
- 'points 50
- 'demand 1
- 'corpse '(unit-dead-body 12)
- 'type-naval
- 'right-sail
- 'sea-unit
- 'transporter
- 'selectable-by-rectangle
- 'sounds '(
- selected "alliance-transport-selected"
- acknowledge "alliance-transport-acknowledge"
- ready "alliance-transport-ready"
- help "basic alliance voices help 1"
- dead "ship sinking"
- attack "alliance-transport-attack"))
-
-(define-unit-type 'unit-alliance-destroyer 'name "Elven Destroyer"
- 'files '(tileset-summer "alliance/units/alliance_destroyer.png")
- 'size '(80 88)
- 'animations 'animations-alliance-destroyer 'icon 'icon-alliance-destroyer
- 'costs '(time 90 gold 700 wood 350 oil 700)
- 'speed 10
- 'hit-points 100
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 8 'computer-reaction-range 10 'person-reaction-range 8
- 'armor 10 'basic-damage 35 'piercing-damage 0 'missile 'missile-small-cannon
- 'max-attack-range 4
- 'priority 65 'annoy-computer-factor 20
- 'points 150
- 'demand 1
- 'corpse '(unit-dead-body 12)
- 'type-naval
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'sea-unit
- 'selectable-by-rectangle
- 'sounds '(
- selected "alliance-destroyer-selected"
- acknowledge "alliance-destroyer-acknowledge"
- ready "alliance-destroyer-ready"
- help "basic alliance voices help 1"
- dead "ship sinking"
- attack "alliance-destroyer-attack"))
-
-(define-unit-type 'unit-battleship 'name "Battleship"
- 'files '(tileset-summer "alliance/units/battleship.png")
- 'size '(88 88)
- 'animations 'animations-battleship 'icon 'icon-battleship
- 'costs '(time 140 gold 1000 wood 500 oil 1000)
- 'speed 6
- 'hit-points 150
- 'draw-level 40
- 'tile-size '(1 1) 'box-size '(70 70)
- 'sight-range 8 'computer-reaction-range 10 'person-reaction-range 8
- 'armor 15 'basic-damage 130 'piercing-damage 0 'missile 'missile-big-cannon
- 'max-attack-range 6
- 'priority 63 'annoy-computer-factor 25
- 'points 300
- 'demand 1
- 'corpse '(unit-dead-body 12)
- 'type-naval
- 'right-attack
- 'can-ground-attack
- 'can-attack
- 'can-target-land 'can-target-sea
- 'sea-unit
- 'selectable-by-rectangle
- 'sounds '(
- selected "battleship-selected"
- acknowledge "battleship-acknowledge"
- ready "battleship-ready"
- help "basic alliance voices help 1"
- dead "ship sinking"
- attack "battleship-attack"))
-
-(define-unit-type 'unit-alliance-submarine 'name "Gnomish Submarine"
- 'files '(tileset-summer "alliance/units/submarine.png")
- 'size '(72 72)
- 'animations 'animations-submarine 'icon 'icon-alliance-submarine
- 'costs '(time 100 gold 800 wood 150 oil 900)
- 'speed 7
- 'hit-points 60
- 'draw-level 35
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 5 'computer-reaction-range 7 'person-reaction-range 5
- 'basic-damage 50 'piercing-damage 0 'missile 'missile-submarine-missile
- 'max-attack-range 4
- 'priority 60 'annoy-computer-factor 20
- 'points 120
- 'demand 1
- 'corpse '(unit-dead-body 12)
- 'type-naval
- 'right-attack
- 'can-attack
- 'can-target-sea
- 'sea-unit
- 'permanent-cloak
- 'detect-cloak
- 'selectable-by-rectangle
- 'sounds '(
- selected "alliance-submarine-selected"
- acknowledge "alliance-submarine-acknowledge"
- ready "alliance-submarine-ready"
- help "basic alliance voices help 1"
- dead "ship sinking"
- attack "alliance-submarine-attack"))
-
-(define-unit-type 'unit-balloon 'name "Gnomish Flying Machine"
- 'files '(tileset-summer "alliance/units/balloon.png")
- 'size '(80 80)
- 'animations 'animations-balloon 'icon 'icon-balloon
- 'costs '(time 65 gold 500 wood 100)
- 'speed 17
- 'hit-points 150
- 'draw-level 60
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 9 'computer-reaction-range 19 'person-reaction-range 15
- 'armor 2 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'max-attack-range 1
- 'priority 40
- 'points 40
- 'demand 1
- 'type-fly
- 'right-move
- 'air-unit 'coward
- 'detect-cloak
- 'selectable-by-rectangle
- 'sounds '(
- selected "balloon-selected"
- acknowledge "balloon-acknowledge"
- ready "balloon-ready"
- help "basic alliance voices help 1"
- dead "explosion"
- attack "balloon-attack"))
-
-(define-unit-type 'unit-gryphon-rider 'name "Gryphon Rider"
- 'files '(tileset-summer "alliance/units/gryphon_rider.png")
- 'size '(80 80)
- 'draw-level 45
- 'animations 'animations-flying-angle 'icon 'icon-gryphon-rider
- 'costs '(time 250 gold 2500)
- 'speed 14
- 'hit-points 100
- 'draw-level 60
- 'tile-size '(1 1) 'box-size '(63 63)
- 'sight-range 6 'computer-reaction-range 8 'person-reaction-range 6
- 'armor 5 'basic-damage 0 'piercing-damage 16 'missile 'missile-griffon-hammer
- 'max-attack-range 4
- 'priority 65
- 'points 150
- 'demand 1
- 'type-fly
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'air-unit
- 'detect-cloak
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "gryphon-rider-selected"
- acknowledge "gryphon-rider-acknowledge"
- ready "gryphon-rider-ready"
- help "basic alliance voices help 1"
- dead "basic alliance voices dead"
- attack "gryphon-rider-attack"))
-
-(define-unit-type 'unit-farm 'name "Farm"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/farm.png"
- tileset-winter "tilesets/winter/alliance/buildings/farm.png")
- 'size '(64 64)
- 'animations 'animations-building 'icon 'icon-farm
- 'costs '(time 100 gold 500 wood 250)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 400
- 'draw-level 20
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 20 'annoy-computer-factor 45
- 'points 100
- 'supply 4
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "farm-selected"
- acknowledge "farm-acknowledge"
- ready "farm-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "farm-attack"))
-
-(define-unit-type 'unit-alliance-barracks 'name "Barracks"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/barracks.png"
- tileset-winter "tilesets/winter/alliance/buildings/barracks.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-barracks
- 'costs '(time 200 gold 700 wood 450)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 800
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 30 'annoy-computer-factor 35
- 'points 160
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "alliance-barracks-selected"
- acknowledge "alliance-barracks-acknowledge"
- ready "alliance-barracks-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-barracks-attack"))
-
-(define-unit-type 'unit-church 'name "Church"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/church.png"
- tileset-winter "tilesets/winter/alliance/buildings/church.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-church
- 'costs '(time 175 gold 900 wood 500)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 700
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 35
- 'points 240
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "church-selected"
- acknowledge "church-acknowledge"
- ready "church-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "church-attack"))
-
-(define-unit-type 'unit-alliance-watch-tower 'name "Scout Tower"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/scout_tower.png"
- tileset-winter
- "tilesets/winter/alliance/buildings/scout_tower.png")
- 'size '(64 64)
- 'animations 'animations-building 'icon 'icon-alliance-watch-tower
- 'costs '(time 60 gold 550 wood 200)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 100
- 'draw-level 20
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 9
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 55 'annoy-computer-factor 50
- 'points 95
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'can-target-land 'can-target-sea 'can-target-air
- 'building
- 'detect-cloak
- 'sounds '(
- selected "alliance-watch-tower-selected"
- acknowledge "alliance-watch-tower-acknowledge"
- ready "alliance-watch-tower-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-watch-tower-attack"))
-
-(define-unit-type 'unit-stables 'name "Stables"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/stables.png"
- tileset-winter "tilesets/winter/alliance/buildings/stables.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-stables
- 'costs '(time 150 gold 1000 wood 300)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 500
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 15
- 'points 210
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "stables-selected"
- acknowledge "stables-acknowledge"
- ready "stables-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "stables-attack"))
-
-(define-unit-type 'unit-inventor 'name "Gnomish Inventor"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/inventor.png"
- tileset-winter "tilesets/winter/alliance/buildings/inventor.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-inventor
- 'costs '(time 150 gold 1000 wood 400)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 500
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 20
- 'points 230
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "inventor-selected"
- acknowledge "inventor-acknowledge"
- ready "inventor-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "inventor-attack"))
-
-(define-unit-type 'unit-gryphon-aviary 'name "Gryphon Aviary"
- 'files '(tileset-summer
"tilesets/summer/alliance/buildings/gryphon_aviary.png"
- tileset-winter "tilesets/winter/alliance/buildings/gryphon_aviary.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-gryphon-aviary
- 'costs '(time 150 gold 1000 wood 400)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 500
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 20
- 'points 280
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "gryphon-aviary-selected"
- acknowledge "gryphon-aviary-acknowledge"
- ready "gryphon-aviary-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "gryphon-aviary-attack"))
-
-(define-unit-type 'unit-alliance-shipyard 'name "Shipyard"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/shipyard.png"
- tileset-winter "tilesets/winter/alliance/buildings/shipyard.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-shipyard
- 'costs '(time 200 gold 800 wood 450)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-alliance-shipyard
- 'speed 0
- 'hit-points 1100
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 30 'annoy-computer-factor 20
- 'points 170
- 'corpse '(unit-destroyed-3x3-place 3)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'shore-building
- 'can-store '(oil)
- 'sounds '(
- selected "alliance-shipyard-selected"
- acknowledge "alliance-shipyard-acknowledge"
- ready "alliance-shipyard-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-shipyard-attack"))
-
-(define-unit-type 'unit-elven-lumber-mill 'name "Elven Lumber Mill"
- 'files '(tileset-summer
"tilesets/summer/alliance/buildings/alliance_lumber_mill.png"
- tileset-winter
"tilesets/winter/alliance/buildings/alliance_lumber_mill.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-elven-lumber-mill
- 'costs '(time 150 gold 600 wood 450)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'improve-production '(wood 25)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 600
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 25 'annoy-computer-factor 15
- 'points 150
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'can-store '(wood)
- 'sounds '(
- selected "elven-lumber-mill-selected"
- acknowledge "elven-lumber-mill-acknowledge"
- ready "elven-lumber-mill-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "elven-lumber-mill-attack"))
-
-(define-unit-type 'unit-alliance-foundry 'name "Foundry"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/foundry.png"
- tileset-winter "tilesets/winter/alliance/buildings/foundry.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-foundry
- 'costs '(time 175 gold 700 wood 400 oil 400)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'construction 'construction-alliance-foundry
- 'speed 0
- 'hit-points 750
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 20
- 'points 200
- 'corpse '(unit-destroyed-3x3-place 3)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'shore-building
- 'sounds '(
- selected "alliance-foundry-selected"
- acknowledge "alliance-foundry-acknowledge"
- ready "alliance-foundry-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-foundry-attack"))
-
(define-unit-type 'unit-town-hall 'name "Town Hall"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/town_hall.png"
- tileset-winter "tilesets/winter/alliance/buildings/town_hall.png")
+ 'files '(tileset-summer "tilesets/summer/alliance/buildings/town_hall.png")
'size '(128 128)
'animations 'animations-building 'icon 'icon-town-hall
- 'costs '(time 255 gold 1200 wood 800)
+ 'costs '(time 255 gold 500 wood 800)
'repair-hp 4
'repair-costs '(gold 1 wood 1)
'construction 'construction-land
@@ -877,7 +98,7 @@
'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
'priority 35 'annoy-computer-factor 45
'points 200
- 'supply 1
+ 'supply 8
'corpse '(unit-destroyed-4x4-place 0)
'explode-when-killed 'missile-explosion
'type-land
@@ -891,189 +112,6 @@
dead "building destroyed"
attack "town-hall-attack"))
-(define-unit-type 'unit-mage-tower 'name "Mage Tower"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/mage_tower.png"
- tileset-winter "tilesets/winter/alliance/buildings/mage_tower.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-mage-tower
- 'costs '(time 125 gold 1000 wood 200)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 500
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 35 'annoy-computer-factor 20
- 'points 240
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "mage-tower-selected"
- acknowledge "mage-tower-acknowledge"
- ready "mage-tower-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "mage-tower-attack"))
-
-(define-unit-type 'unit-alliance-blacksmith 'name "Blacksmith"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/blacksmith.png"
- tileset-winter "tilesets/winter/alliance/buildings/blacksmith.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-blacksmith
- 'costs '(time 200 gold 800 wood 450 oil 100)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 775
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 20
- 'points 170
- 'corpse '(unit-destroyed-3x3-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "alliance-blacksmith-selected"
- acknowledge "alliance-blacksmith-acknowledge"
- ready "alliance-blacksmith-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-blacksmith-attack"))
-
-(define-unit-type 'unit-alliance-refinery 'name "Refinery"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/refinery.png"
- tileset-winter "tilesets/winter/alliance/buildings/refinery.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-refinery
- 'costs '(time 225 gold 800 wood 350 oil 200)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'improve-production '(oil 25)
- 'construction 'construction-alliance-refinery
- 'speed 0
- 'hit-points 600
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 25 'annoy-computer-factor 20
- 'points 200
- 'corpse '(unit-destroyed-3x3-place 3)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'shore-building
- 'can-store '(oil)
- 'sounds '(
- selected "alliance-refinery-selected"
- acknowledge "alliance-refinery-acknowledge"
- ready "alliance-refinery-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-refinery-attack"))
-
-(define-unit-type 'unit-alliance-oil-platform 'name "Oil Platform"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/oil_platform.png"
- tileset-winter "tilesets/winter/alliance/buildings/oil_platform.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-alliance-oil-platform
- 'costs '(time 200 gold 700 wood 450)
- 'construction 'construction-alliance-oil-well
- 'speed 0
- 'hit-points 650
- 'draw-level 20
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 1
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 20 'annoy-computer-factor 20
- 'points 160
- 'corpse '(unit-destroyed-3x3-place 3)
- 'explode-when-killed 'missile-explosion
- 'type-naval
- 'building
- 'must-build-on-top 'unit-oil-patch
- 'gives-resource 'oil 'can-harvest
- 'sounds '(
- selected "alliance-oil-platform-selected"
- acknowledge "alliance-oil-platform-acknowledge"
- ready "alliance-oil-platform-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-oil-platform-attack"))
-
-(define-unit-type 'unit-keep 'name "Keep"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/keep.png"
- tileset-winter "tilesets/winter/alliance/buildings/keep.png")
- 'size '(128 128)
- 'animations 'animations-building 'icon 'icon-keep
- 'costs '(time 200 gold 2000 wood 1000 oil 200)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'improve-production '(gold 10)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 1400
- 'draw-level 20
- 'tile-size '(4 4) 'box-size '(127 127)
- 'sight-range 3
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 37 'annoy-computer-factor 40
- 'points 600
- 'supply 1
- 'corpse '(unit-destroyed-4x4-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'can-store '(gold wood)
- 'sounds '(
- selected "keep-selected"
- acknowledge "keep-acknowledge"
- ready "keep-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "keep-attack"))
-
-(define-unit-type 'unit-castle 'name "Castle"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/castle.png"
- tileset-winter "tilesets/winter/alliance/buildings/castle.png")
- 'size '(128 128)
- 'animations 'animations-building 'icon 'icon-castle
- 'costs '(time 200 gold 2500 wood 1200 oil 500)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'improve-production '(gold 20)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 1600
- 'draw-level 20
- 'tile-size '(4 4) 'box-size '(127 127)
- 'sight-range 6
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 40 'annoy-computer-factor 50
- 'points 1500
- 'supply 1
- 'corpse '(unit-destroyed-4x4-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'can-store '(gold wood)
- 'sounds '(
- selected "castle-selected"
- acknowledge "castle-acknowledge"
- ready "castle-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "castle-attack"))
-
(define-unit-type 'unit-alliance-start-location 'name "Start Location"
'files '(tileset-summer "alliance/x_startpoint.png")
'size '(32 32)
@@ -1095,75 +133,8 @@
dead "building destroyed"
attack "alliance-start-location-attack"))
-(define-unit-type 'unit-alliance-guard-tower 'name "Guard Tower"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/guard_tower.png"
- tileset-winter "tilesets/winter/alliance/buildings/guard_tower.png")
- 'size '(64 64)
- 'animations 'animations-alliance-guard-tower 'icon 'icon-alliance-guard-tower
- 'costs '(time 140 gold 500 wood 150)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 130
- 'draw-level 40
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 9 'computer-reaction-range 6 'person-reaction-range 6
- 'armor 20 'basic-damage 4 'piercing-damage 12 'missile 'missile-arrow
- 'max-attack-range 6
- 'priority 40 'annoy-computer-factor 50
- 'points 200
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'building
- 'detect-cloak
- 'sounds '(
- selected "alliance-guard-tower-selected"
- acknowledge "alliance-guard-tower-acknowledge"
- ready "alliance-guard-tower-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-guard-tower-attack"))
-
-(define-unit-type 'unit-alliance-cannon-tower 'name "Cannon Tower"
- 'files '(tileset-summer "tilesets/summer/alliance/buildings/cannon_tower.png"
- tileset-winter "tilesets/winter/alliance/buildings/cannon_tower.png")
- 'size '(64 64)
- 'animations 'animations-alliance-cannon-tower 'icon
'icon-alliance-cannon-tower
- 'costs '(time 190 gold 1000 wood 300)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land
- 'speed 0
- 'hit-points 160
- 'draw-level 40
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 9 'computer-reaction-range 7 'person-reaction-range 7
- 'armor 20 'basic-damage 50 'piercing-damage 0 'missile 'missile-small-cannon
- 'min-attack-range 2 'max-attack-range 7
- 'priority 40 'annoy-computer-factor 50
- 'points 250
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'can-attack
- 'can-target-land 'can-target-sea
- 'building
- 'detect-cloak
- 'sounds '(
- selected "alliance-cannon-tower-selected"
- acknowledge "alliance-cannon-tower-acknowledge"
- ready "alliance-cannon-tower-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "alliance-cannon-tower-attack"))
-
(define-unit-type 'unit-human-wall 'name "Wall"
- 'files '(tileset-summer "tilesets/summer/neutral/buildings/wall.png"
- tileset-winter "tilesets/winter/neutral/buildings/wall.png")
+ 'files '(tileset-summer "tilesets/summer/neutral/buildings/wall.png")
'size '(32 32)
'animations 'animations-building 'icon 'icon-alliance-wall
'costs '(time 30 gold 20 wood 10)
Index: demogame/ccl/alliance/upgrade.ccl
diff -u demogame/ccl/alliance/upgrade.ccl:1.8
demogame/ccl/alliance/upgrade.ccl:1.9
--- demogame/ccl/alliance/upgrade.ccl:1.8 Sat Oct 11 05:00:15 2003
+++ demogame/ccl/alliance/upgrade.ccl Mon Oct 13 11:15:36 2003
@@ -26,337 +26,16 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: upgrade.ccl,v 1.8 2003/10/11 09:00:15 martinxyz Exp $
+;; $Id: upgrade.ccl,v 1.9 2003/10/13 15:15:36 martinxyz Exp $
;; NOTE: Save can generate this table.
-(define-upgrade 'upgrade-sword1 'icon 'icon-sword2
- 'costs #( 200 800 0 0 0 0 0))
-(define-upgrade 'upgrade-sword2 'icon 'icon-sword3
- 'costs #( 250 2400 0 0 0 0 0))
-(define-upgrade 'upgrade-arrow1 'icon 'icon-arrow2
- 'costs #( 200 300 300 0 0 0 0))
-(define-upgrade 'upgrade-arrow2 'icon 'icon-arrow3
- 'costs #( 250 900 500 0 0 0 0))
-
-(define-upgrade 'upgrade-alliance-shield1 'icon 'icon-alliance-shield2
- 'costs #( 200 300 300 0 0 0 0))
-(define-upgrade 'upgrade-alliance-shield2 'icon 'icon-alliance-shield3
- 'costs #( 250 900 500 0 0 0 0))
-
-(define-upgrade 'upgrade-alliance-ship-cannon1 'icon
'icon-alliance-ship-cannon2
- 'costs #( 200 700 100 1000 0 0 0))
-(define-upgrade 'upgrade-alliance-ship-cannon2 'icon
'icon-alliance-ship-cannon3
- 'costs #( 250 2000 250 3000 0 0 0))
-(define-upgrade 'upgrade-alliance-ship-armor1 'icon 'icon-alliance-ship-armor2
- 'costs #( 200 500 500 0 0 0 0))
-(define-upgrade 'upgrade-alliance-ship-armor2 'icon 'icon-alliance-ship-armor3
- 'costs #( 250 1500 900 0 0 0 0))
-
-(define-upgrade 'upgrade-ranger 'icon 'icon-ranger
- 'costs #( 250 1500 0 0 0 0 0))
-(define-upgrade 'upgrade-longbow 'icon 'icon-longbow
- 'costs #( 250 2000 0 0 0 0 0))
-(define-upgrade 'upgrade-ranger-scouting 'icon 'icon-ranger-scouting
- 'costs #( 250 1500 0 0 0 0 0))
-(define-upgrade 'upgrade-ranger-marksmanship 'icon 'icon-ranger-marksmanship
- 'costs #( 250 2500 0 0 0 0 0))
-
-(define-upgrade 'upgrade-paladin 'icon 'icon-paladin
- 'costs #( 250 1000 0 0 0 0 0))
-(define-upgrade 'upgrade-holy-vision 'icon 'icon-holy-vision
- 'costs #( 0 0 0 0 0 0 0))
-(define-upgrade 'upgrade-healing 'icon 'icon-heal
- 'costs #( 200 1000 0 0 0 0 0))
-(define-upgrade 'upgrade-area-healing 'icon 'icon-heal
- 'costs #( 400 2000 0 0 0 0 0))
-(define-upgrade 'upgrade-exorcism 'icon 'icon-exorcism
- 'costs #( 200 2000 0 0 0 0 0))
-
-(define-upgrade 'upgrade-flame-shield 'icon 'icon-flame-shield
- 'costs #( 100 1000 0 0 0 0 0))
-(define-upgrade 'upgrade-fireball 'icon 'icon-fireball
- 'costs #( 0 0 0 0 0 0 0))
-(define-upgrade 'upgrade-slow 'icon 'icon-slow
- 'costs #( 100 500 0 0 0 0 0))
-(define-upgrade 'upgrade-invisibility 'icon 'icon-invisibility
- 'costs #( 200 2500 0 0 0 0 0))
-(define-upgrade 'upgrade-polymorph 'icon 'icon-critter
- 'costs #( 200 2000 0 0 0 0 0))
-(define-upgrade 'upgrade-blizzard 'icon 'icon-blizzard
- 'costs #( 200 2000 0 0 0 0 0))
-
-(define-upgrade 'upgrade-ballista1 'icon 'icon-ballista1
- 'costs #( 250 1500 0 0 0 0 0))
-(define-upgrade 'upgrade-ballista2 'icon 'icon-ballista2
- 'costs #( 250 4000 0 0 0 0 0))
+; no upgrades
+; see ../mythical/upgrade.ccl for minimal example'(upgrade-paladin))
;; NOTE: Save can generate this table.
-(define-modifier 'upgrade-sword1
- '(piercing-damage 2)
- '(apply-to unit-footman) '(apply-to unit-knight) '(apply-to unit-paladin)
- '(apply-to unit-dwarves)
- )
-
-(define-modifier 'upgrade-sword2
- '(piercing-damage 2)
- '(apply-to unit-footman) '(apply-to unit-knight) '(apply-to unit-paladin)
- '(apply-to unit-dwarves)
- )
-
-(define-modifier 'upgrade-arrow1
- '(piercing-damage 1)
- '(apply-to unit-archer) '(apply-to unit-ranger) )
-
-(define-modifier 'upgrade-arrow2
- '(piercing-damage 1)
- '(apply-to unit-archer) '(apply-to unit-ranger) )
-
-(define-modifier 'upgrade-alliance-shield1
- '(armor 2)
- '(apply-to unit-footman) '(apply-to unit-knight) '(apply-to unit-paladin)
- '(apply-to unit-dwarves)
- )
-
-(define-modifier 'upgrade-alliance-shield2
- '(armor 2)
- '(apply-to unit-footman) '(apply-to unit-knight) '(apply-to unit-paladin)
- '(apply-to unit-dwarves)
- )
-
-(define-modifier 'upgrade-alliance-ship-cannon1
- '(piercing-damage 5)
- '(apply-to unit-alliance-destroyer) '(apply-to unit-battleship)
- '(apply-to unit-alliance-submarine))
-
-(define-modifier 'upgrade-alliance-ship-cannon2
- '(piercing-damage 5)
- '(apply-to unit-alliance-destroyer) '(apply-to unit-battleship)
- '(apply-to unit-alliance-submarine))
-
-(define-modifier 'upgrade-alliance-ship-armor1
- '(armor 5)
- '(apply-to unit-alliance-destroyer) '(apply-to unit-battleship)
- '(apply-to unit-alliance-transport))
-
-(define-modifier 'upgrade-alliance-ship-armor2
- '(armor 5)
- '(apply-to unit-alliance-destroyer) '(apply-to unit-battleship)
- '(apply-to unit-alliance-transport))
-
-(define-modifier 'upgrade-ranger
- '(apply-to unit-archer) '(convert-to unit-ranger))
-
-(define-modifier 'upgrade-longbow
- '(sight-range 1)
- '(attack-range 1)
- '(apply-to unit-archer) '(apply-to unit-ranger))
-
-(define-modifier 'upgrade-ranger-scouting
- '(sight-range 3)
- '(apply-to unit-archer) '(apply-to unit-ranger))
-
-(define-modifier 'upgrade-ranger-marksmanship
- '(piercing-damage 3)
- '(apply-to unit-archer) '(apply-to unit-ranger))
-
-(define-modifier 'upgrade-paladin
- '(apply-to unit-knight) '(convert-to unit-paladin))
-
-(define-modifier 'upgrade-holy-vision
- '(apply-to unit-paladin))
-
-(define-modifier 'upgrade-healing
- '(apply-to unit-paladin))
-
-(define-modifier 'upgrade-area-healing
- '(apply-to unit-paladin))
-
-(define-modifier 'upgrade-exorcism
- '(apply-to unit-paladin))
-
-(define-modifier 'upgrade-flame-shield
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-fireball
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-slow
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-invisibility
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-polymorph
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-blizzard
- '(apply-to unit-mage) )
-
-(define-modifier 'upgrade-ballista1
- '(piercing-damage 15)
- '(apply-to unit-ballista))
-
-(define-modifier 'upgrade-ballista2
- '(piercing-damage 15)
- '(apply-to unit-ballista))
-
-;; NOTE: Save can generate this table.
-
-;; - units
-
-(define-allow 'unit-footman "AAAAAAAAAAAAAAAA")
(define-allow 'unit-peasant "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-ballista "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-knight "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-archer "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-mage "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-paladin "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-dwarves "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-ranger "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-oil-tanker "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-transport "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-destroyer "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-battleship "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-submarine "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-balloon "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-gryphon-rider "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-farm "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-barracks "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-church "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-watch-tower "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-stables "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-inventor "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-gryphon-aviary "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-shipyard "AAAAAAAAAAAAAAAA")
(define-allow 'unit-town-hall "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-elven-lumber-mill "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-foundry "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-mage-tower "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-blacksmith "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-refinery "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-oil-platform "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-keep "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-castle "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-start-location "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-guard-tower "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-alliance-cannon-tower "AAAAAAAAAAAAAAAA")
(define-allow 'unit-human-wall "AAAAAAAAAAAAAAAA")
-;; - upgrades
-
-(define-allow 'upgrade-sword1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-sword2 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-arrow1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-arrow2 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-shield1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-shield2 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-ship-cannon1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-ship-cannon2 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-ship-armor1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-alliance-ship-armor2 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-ranger "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-longbow "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-ranger-scouting "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-ranger-marksmanship "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-paladin "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-holy-vision "RRRRRRRRRRRRRRRR")
-(define-allow 'upgrade-healing "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-area-healing "FFFFFFFFFFFFFFFF")
-; JOHNS: engine didn't support it yet
-;(define-allow 'upgrade-area-healing "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-exorcism "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-flame-shield "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-fireball "RRRRRRRRRRRRRRRR")
-(define-allow 'upgrade-slow "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-invisibility "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-polymorph "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-blizzard "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-ballista1 "AAAAAAAAAAAAAAAA")
-(define-allow 'upgrade-ballista2 "AAAAAAAAAAAAAAAA")
-
-;; NOTE: Save can generate this table.
-
-;; - alliance land forces
-(define-dependency 'unit-archer
- '(unit-elven-lumber-mill))
-(define-dependency 'unit-ballista
- '(unit-alliance-blacksmith unit-elven-lumber-mill))
-(define-dependency 'unit-knight
- '(unit-stables unit-alliance-blacksmith))
-(define-dependency 'unit-ranger
- '(upgrade-ranger unit-elven-lumber-mill))
-(define-dependency 'unit-paladin
- '(upgrade-paladin unit-stables unit-alliance-blacksmith))
-
-;; - alliance naval forces
-(define-dependency 'unit-alliance-submarine
- '(unit-inventor))
-(define-dependency 'unit-alliance-transport
- '(unit-alliance-foundry))
-(define-dependency 'unit-battleship
- '(unit-alliance-foundry))
-
-;; - alliance air forces
-(define-dependency 'unit-balloon
- '(unit-elven-lumber-mill))
-
-;; - alliance buildings
-(define-dependency 'unit-alliance-guard-tower
- '(unit-elven-lumber-mill))
-(define-dependency 'unit-alliance-cannon-tower
- '(unit-alliance-blacksmith))
-(define-dependency 'unit-alliance-shipyard
- '(unit-elven-lumber-mill))
-(define-dependency 'unit-alliance-foundry
- '(unit-alliance-shipyard))
-(define-dependency 'unit-alliance-refinery
- '(unit-alliance-shipyard))
-(define-dependency 'unit-keep
- '(unit-alliance-barracks))
-(define-dependency 'unit-inventor
- '(unit-castle)
- 'or '(unit-keep))
-(define-dependency 'unit-stables
- '(unit-castle)
- 'or '(unit-keep))
-(define-dependency 'unit-castle
- '(unit-stables unit-alliance-blacksmith unit-elven-lumber-mill))
-(define-dependency 'unit-mage-tower
- '(unit-castle))
-(define-dependency 'unit-church
- '(unit-castle))
-(define-dependency 'unit-gryphon-aviary
- '(unit-castle))
-
-;; - alliance upgrades/research
-(define-dependency 'upgrade-sword2
- '(upgrade-sword1))
-(define-dependency 'upgrade-arrow2
- '(upgrade-arrow1))
-(define-dependency 'upgrade-alliance-shield2
- '(upgrade-alliance-shield1))
-(define-dependency 'upgrade-alliance-ship-cannon2
- '(upgrade-alliance-ship-cannon1))
-(define-dependency 'upgrade-alliance-ship-armor2
- '(upgrade-alliance-ship-armor1))
-(define-dependency 'upgrade-ranger
- '(unit-keep)
- 'or '(unit-castle))
-(define-dependency 'upgrade-longbow
- '(unit-castle upgrade-ranger))
-(define-dependency 'upgrade-ranger-scouting
- '(unit-castle upgrade-ranger))
-(define-dependency 'upgrade-ranger-marksmanship
- '(unit-castle upgrade-ranger))
-
-;; - alliance spells
-(define-dependency 'upgrade-holy-vision
- '(upgrade-paladin))
-(define-dependency 'upgrade-healing
- '(upgrade-paladin))
-(define-dependency 'upgrade-area-healing
- '(upgrade-paladin upgrade-healing))
-(define-dependency 'upgrade-exorcism
- '(upgrade-paladin))
Index: demogame/ccl/anim.ccl
diff -u demogame/ccl/anim.ccl:1.8 demogame/ccl/anim.ccl:1.9
--- demogame/ccl/anim.ccl:1.8 Thu Oct 9 15:32:40 2003
+++ demogame/ccl/anim.ccl Mon Oct 13 11:15:34 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: anim.ccl,v 1.8 2003/10/09 19:32:40 martinxyz Exp $
+;; $Id: anim.ccl,v 1.9 2003/10/13 15:15:34 martinxyz Exp $
;;------
;; Footman, Grunt, Grom Hellscream, Arthor_Literios, Korgath Bladefist
@@ -59,22 +59,6 @@
#( 0 0 3 50) #( 0 0 3 55) #( 0 0 100 60) #( 3 0 1 60)))
;;------
-;; Critter
-(define-animations 'animations-critter
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #48 P32
- #( 0 2 2 0) #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0)
- #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0)
- #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0)
- #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0) #( 0 2 3 0)
- #( 3 0 1 0))
- 'attack '( ; #1
- #(11 0 1 0))
- 'die '( ; #201
- #( 0 0 200 5) #( 3 0 1 5)))
-
-;;------
;; Farm, Pig Farm, Barracks, Barracks, Church, Altar of Storms,
;; Scout Tower, Scout Tower, Stables, Ogre Mound, Gnomish Inventor,
;; Goblin Alchemist, Gryphon Aviary, Dragon Roost, Shipyard, Shipyard,
@@ -110,238 +94,3 @@
;; Destroyed water site
#( 0 0 200 2) #(16 0 200 3) #( 3 0 1 3)))
-;;------------------------------------------------------------------
-;; the following animations are not needed for the mythical race
-;;------------------------------------------------------------------
-
-;;------
-;; Ballista
-(define-animations 'animations-ballista
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #32 P32
- #( 0 0 1 0) #( 0 2 2 5) #( 0 2 2 0) #( 0 2 2 5)
- #( 0 2 2 0) #( 0 2 2 5) #( 0 2 2 0) #( 0 2 2 5)
- #( 0 2 2 0) #( 0 2 2 5) #( 0 2 2 0) #( 0 2 2 5)
- #( 0 2 2 0) #( 0 2 2 5) #( 0 2 2 0) #( 0 2 2 5)
- #( 3 2 1 0))
- 'attack '( ; #200
- #( 0 0 25 10) #(12 0 25 15) #( 0 0 100 15) #( 0 0 49 0)
- #( 3 0 1 0)))
-
-;;------
-;; Knight, Paladin
-(define-animations 'animations-knight
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #12 P32
- #( 0 3 1 0) #( 0 3 1 5) #( 0 4 2 5) #( 0 3 1 10)
- #( 0 3 1 10) #( 0 3 1 15) #( 0 4 2 15) #( 0 3 1 20)
- #( 0 3 1 20) #( 3 3 1 0))
- 'attack '( ; #25
- #( 0 0 3 25) #( 0 0 3 30) #( 0 0 3 35) #(12 0 5 40)
- #( 0 0 10 0) #( 3 0 1 0))
- 'die '( ; #507
- #( 0 0 3 45) #( 0 0 3 50) #( 0 0 100 55) #( 0 0 200 60)
- #( 0 0 200 65) #( 3 0 1 65)))
-
-;;------
-;; Archer, Ranger
-(define-animations 'animations-archer
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #16 P32
- #( 0 3 2 0) #( 0 3 1 5) #( 0 3 2 5) #( 0 2 1 10)
- #( 0 3 1 10) #( 0 2 1 0) #( 0 3 2 0) #( 0 3 1 15)
- #( 0 3 2 15) #( 0 2 1 20) #( 0 3 1 20) #( 3 2 1 0))
- 'attack '( ; #65
- #( 0 0 10 25) #(12 0 10 30) #( 0 0 44 0) #( 3 0 1 0))
- 'die '( ; #107
- #( 0 0 3 35) #( 0 0 3 40) #( 0 0 100 45) #( 3 0 1 45)))
-
-;;------
-;; Mage
-(define-animations 'animations-mage
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #18 P32
- #( 0 3 2 0) #( 0 3 1 5) #( 0 3 2 5) #( 0 2 1 10)
- #( 0 3 2 10) #( 0 2 1 0) #( 0 3 2 0) #( 0 3 1 15)
- #( 0 3 2 15) #( 0 2 1 20) #( 0 3 2 20) #( 3 2 1 0))
- 'attack '( ; #40
- #( 0 0 5 25) #( 0 0 5 30) #(12 0 7 35) #( 0 0 5 40)
- #( 0 0 17 0) #( 3 0 1 0))
- 'die '( ; #36
- #( 0 0 5 45) #( 0 0 5 50) #( 0 0 5 55) #( 0 0 5 60)
- #( 0 0 5 65) #( 0 0 5 70) #( 0 0 5 75) #( 3 0 1 75)))
-
-;;------
-;; Dwarves
-(define-animations 'animations-dwarves
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #14 P32
- #( 0 3 2 0) #( 0 3 1 10) #( 0 4 2 10) #( 0 3 1 25)
- #( 0 3 2 25) #( 0 3 1 40) #( 0 4 2 40) #( 0 3 1 55)
- #( 0 3 1 55) #( 3 3 1 0))
- 'attack '( ; #25
- #( 0 0 3 15) #(12 0 5 30) #( 0 0 3 45) #( 0 0 13 0)
- #( 3 0 1 0))
- 'die '( ; #16
- #( 0 0 3 5) #( 0 0 3 20) #( 0 0 3 35) #( 0 0 3 50)
- #( 0 0 3 60) #( 3 0 1 60)))
-
-;;------
-;; Kurdan and Sky'ree, Gryphon Rider
-(define-animations 'animations-flying-angle
- 'still '( ; #24
- #( 2 0 6 0) #( 2 0 6 5) #( 2 0 6 10) #( 3 0 6 15))
- 'move '( ; #12 P32
- #( 0 0 1 0) #( 0 3 1 0) #( 0 3 1 0) #( 0 3 1 5)
- #( 0 2 1 5) #( 0 3 1 5) #( 0 3 1 10) #( 0 3 1 10)
- #( 0 3 1 10) #( 0 3 1 15) #( 0 3 1 15) #( 3 3 1 0))
- 'attack '( ; #1
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 2 0 1 15) #( 0 0 6 20) #( 0 0 6 25) #(12 0 8 30)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15)
- #( 1 0 1 0) #( 0 0 6 0) #( 0 0 6 5) #( 0 0 6 10)
- #( 0 0 6 15) #( 2 0 1 15) #(12 0 20 20) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 0 0 6 0)
- #( 0 0 6 5) #( 0 0 6 10) #( 0 0 6 15) #( 1 0 1 0)
- #( 3 0 1 0))
- 'die '( ; #31
- #( 0 0 5 35) #( 0 0 5 40) #( 0 0 5 45) #( 0 0 5 50)
- #( 0 0 5 55) #( 0 0 5 60) #( 3 0 1 60)))
-
-;;------
-;; Oil tanker, Oil tanker, Oil tanker, Oil tanker
-(define-animations 'animations-alliance-oil-tanker
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #16 P32
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 3 2 1 0))
- 'attack '( ; #130
- #(12 0 30 0) #( 0 0 99 0) #( 3 0 1 0))
- 'die '( ; #101
- #( 0 0 50 5) #( 0 0 50 10) #( 3 0 1 10)))
-
-;;------
-;; Transport, Transport
-(define-animations 'animations-alliance-transport
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #16 P32
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 3 2 1 0))
- 'attack '( ; #120
- #(12 0 119 0) #( 3 0 1 0))
- 'die '( ; #101
- #( 0 0 50 5) #( 0 0 50 10) #( 3 0 1 10)))
-
-;;------
-;; Elven Destroyer, Troll Destroyer
-(define-animations 'animations-alliance-destroyer
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #16 P32
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 1 0) #( 3 2 1 0))
- 'attack '( ; #120
- #(12 0 119 0) #( 3 0 1 0))
- 'die '( ; #101
- #( 0 0 50 5) #( 0 0 50 10) #( 3 0 1 10)))
-
-;;------
-;; Battleship
-(define-animations 'animations-battleship
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #26 P32
- #( 0 2 2 0) #( 0 2 2 0) #( 0 2 1 0) #( 0 2 2 0)
- #( 0 2 2 0) #( 0 2 1 0) #( 0 2 2 0) #( 0 2 2 0)
- #( 0 2 1 0) #( 0 2 2 0) #( 0 2 2 0) #( 0 2 1 0)
- #( 0 2 2 0) #( 0 2 1 0) #( 0 2 2 0) #( 3 2 1 0))
- 'attack '( ; #230
- #(12 0 127 0) #( 0 0 102 0) #( 3 0 1 0))
- 'die '( ; #101
- #( 0 0 50 5) #( 0 0 50 10) #( 3 0 1 10)))
-
-;;------
-;; Gnomish Submarine, Giant Turtle
-(define-animations 'animations-submarine
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'move '( ; #21 P32
- #( 0 2 2 0) #( 0 2 1 0) #( 0 2 1 0) #( 0 2 2 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 2 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 2 0) #( 0 2 1 0) #( 0 2 1 0)
- #( 0 2 1 0) #( 0 2 1 0) #( 0 2 2 0) #( 3 2 1 0))
- 'attack '( ; #115
- #( 0 0 10 5) #( 0 0 25 10) #(12 0 25 10) #( 0 0 25 5)
- #( 0 0 29 0) #( 3 0 1 0))
- 'die '( ; #1
- #( 3 0 1 0)))
-
-;;------
-;; Gnomish Flying Machine
-(define-animations 'animations-balloon
- 'still '( ; #4
- #( 2 0 1 0) #( 2 0 1 5) #( 2 0 1 5) #( 3 0 1 0))
- 'move '( ; #10 P32
- #( 0 4 1 5) #( 0 3 1 5) #( 0 3 1 5) #( 0 4 1 0)
- #( 0 3 1 0) #( 0 3 1 5) #( 0 4 1 5) #( 0 3 1 5)
- #( 0 3 1 0) #( 3 3 1 0))
- 'attack '( ; #1
- #( 3 0 1 0))
- 'die '( ; #1
- #( 3 0 1 0)))
-
-;;------
-;; Daemon
-(define-animations 'animations-daemon
- 'still '( ; #16
- #( 2 0 4 0) #( 2 0 4 5) #( 2 0 4 10) #( 3 0 4 15))
- 'move '( ; #12 P32
- #( 0 3 1 0) #( 0 3 1 0) #( 0 2 1 5) #( 0 3 1 5)
- #( 0 2 1 10) #( 0 3 1 10) #( 0 3 1 10) #( 0 2 1 15)
- #( 0 3 1 15) #( 0 3 1 20) #( 0 3 1 20) #( 3 2 1 0))
- 'attack '( ; #60
- #( 0 0 4 0) #( 0 0 4 5) #( 0 0 4 10) #( 0 0 4 15)
- #( 0 0 4 20) #( 2 0 1 20) #( 0 0 4 25) #( 0 0 4 30)
- #( 0 0 4 35) #(12 0 4 40) #( 0 0 4 45) #( 1 0 1 0)
- #(12 0 59 0) #( 3 0 1 0))
- 'die '( ; #21
- #( 0 0 5 50) #( 0 0 5 55) #( 0 0 5 60) #( 0 0 5 65)
- #( 3 0 1 65)))
-
-;;------
-;; Guard Tower, Guard Tower
-(define-animations 'animations-alliance-guard-tower
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'attack '( ; #60
- #(12 0 59 0) #( 3 0 1 0)))
-
-;;------
-;; Cannon Tower, Cannon Tower
-(define-animations 'animations-alliance-cannon-tower
- 'still '( ; #5
- #( 0 0 4 0) #( 3 0 1 0))
- 'attack '( ; #151
- #(12 0 150 0) #( 3 0 1 0)))
Index: demogame/ccl/buttons.ccl
diff -u demogame/ccl/buttons.ccl:1.5 demogame/ccl/buttons.ccl:1.6
--- demogame/ccl/buttons.ccl:1.5 Sun Oct 12 16:06:09 2003
+++ demogame/ccl/buttons.ccl Mon Oct 13 11:15:34 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: buttons.ccl,v 1.5 2003/10/12 20:06:09 martinxyz Exp $
+;; $Id: buttons.ccl,v 1.6 2003/10/13 15:15:34 martinxyz Exp $
;; Load the buttons of all races
(ccl:load "ccl/alliance/buttons.ccl")
@@ -38,19 +38,6 @@
;; (define-button 'pos n 'level n 'icon ident 'action name ['value value]
;; ['allowed check ['values]] 'key key 'hint hint 'for-unit units)
;;
-
-;; neutral --------------------------------------------------------------------
-
-(define-button 'pos 1 'level 0 'icon 'icon-circle-of-power
- 'action 'cast-spell 'value 'spell-circle-of-power
- 'allowed 'check-true
- 'key "d" 'hint "SET ~!DESTINATION"
- 'for-unit '(unit-dark-portal))
-
-(define-button 'pos 2 'level 0 'icon 'icon-daemon
- 'action 'train-unit 'value 'unit-daemon
- 'key "d" 'hint "SUMMON ~!DAEMON"
- 'for-unit '(unit-dark-portal))
;; general cancel button ------------------------------------------------------
Index: demogame/ccl/constructions.ccl
diff -u demogame/ccl/constructions.ccl:1.2 demogame/ccl/constructions.ccl:1.3
--- demogame/ccl/constructions.ccl:1.2 Sun Oct 12 16:06:09 2003
+++ demogame/ccl/constructions.ccl Mon Oct 13 11:15:34 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: constructions.ccl,v 1.2 2003/10/12 20:06:09 martinxyz Exp $
+;; $Id: constructions.ccl,v 1.3 2003/10/13 15:15:34 martinxyz Exp $
(ccl:load "ccl/alliance/constructions.ccl")
(ccl:load "ccl/mythical/constructions.ccl")
@@ -42,10 +42,6 @@
tileset summer
file "neutral/buildings/land_construction_site.png"
size (64 64))
- 'file '(
- tileset winter
- file "tilesets/winter/neutral/buildings/land_construction_site.png"
- size (64 64))
'constructions (list
'(percent 0
file construction
@@ -63,10 +59,6 @@
tileset summer
file "neutral/buildings/land_construction_site.png"
size (64 64))
- 'file '(
- tileset winter
- file "tilesets/winter/neutral/buildings/land_construction_site.png"
- size (64 64))
'constructions (list
'(percent 0
file construction
@@ -84,10 +76,6 @@
tileset summer
file "neutral/buildings/land_construction_site.png"
size (64 64))
- 'file '(
- tileset winter
- file "tilesets/winter/neutral/buildings/land_construction_site.png"
- size (64 64))
'constructions (list
'(percent 0
file construction
@@ -101,10 +89,6 @@
'file '(
tileset summer
file "tilesets/summer/neutral/buildings/wall_construction_site.png"
- size (32 32))
- 'file '(
- tileset winter
- file "tilesets/winter/neutral/buildings/wall_construction_site.png"
size (32 32))
'constructions (list
'(percent 0
Index: demogame/ccl/editor.ccl
diff -u demogame/ccl/editor.ccl:1.7 demogame/ccl/editor.ccl:1.8
--- demogame/ccl/editor.ccl:1.7 Thu Oct 9 12:10:34 2003
+++ demogame/ccl/editor.ccl Mon Oct 13 11:15:34 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: editor.ccl,v 1.7 2003/10/09 16:10:34 martinxyz Exp $
+;; $Id: editor.ccl,v 1.8 2003/10/13 15:15:34 martinxyz Exp $
;; Set which icons to display
@@ -44,44 +44,11 @@
'unit-alliance-start-location
'unit-peasant
- 'unit-footman
- 'unit-archer
- 'unit-ranger
- 'unit-knight
- 'unit-paladin
- 'unit-mage
- 'unit-dwarves
- 'unit-ballista
-
- 'unit-alliance-oil-tanker
- 'unit-alliance-transport
- 'unit-alliance-destroyer
- 'unit-battleship
- 'unit-alliance-submarine
- 'unit-balloon
- 'unit-gryphon-rider
+
'unit-town-hall
- 'unit-keep
- 'unit-castle
- 'unit-farm
- 'unit-alliance-barracks
- 'unit-elven-lumber-mill
- 'unit-alliance-blacksmith
- 'unit-alliance-watch-tower
- 'unit-alliance-guard-tower
- 'unit-alliance-cannon-tower
- 'unit-inventor
- 'unit-stables
- 'unit-church
- 'unit-mage-tower
- 'unit-gryphon-aviary
-
- 'unit-alliance-shipyard
- 'unit-alliance-foundry
- 'unit-alliance-refinery
- 'unit-alliance-oil-platform
+
;- - - - - - - - - - - - - - - - - - -
@@ -98,13 +65,7 @@
;- - - - - - - - - - - - - - - - - - -
'unit-gold-mine
- 'unit-oil-patch
- 'unit-dark-portal
- 'unit-circle-of-power
- 'unit-runestone
- 'unit-daemon
- 'unit-critter
; Placing this unit-types on map is not (yet?) supported.
; 'unit-dead-body
Index: demogame/ccl/icons.ccl
diff -u demogame/ccl/icons.ccl:1.8 demogame/ccl/icons.ccl:1.9
--- demogame/ccl/icons.ccl:1.8 Sat Oct 11 05:00:15 2003
+++ demogame/ccl/icons.ccl Mon Oct 13 11:15:34 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: icons.ccl,v 1.8 2003/10/11 09:00:15 martinxyz Exp $
+;; $Id: icons.ccl,v 1.9 2003/10/13 15:15:34 martinxyz Exp $
;; NOTE:
;; Splitting this file into races is a problem, because all
@@ -52,92 +52,16 @@
'size '(46 38) 'normal '(2 "tilesets/summer/icons.png"))
(define-icon 'icon-grunt 'tileset 'tileset-summer
'size '(46 38) 'normal '(3 "tilesets/summer/icons.png"))
-(define-icon 'icon-archer 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(4 "tilesets/summer/icons.png"))
-(define-icon 'icon-ranger 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(6 "tilesets/summer/icons.png"))
-(define-icon 'icon-knight 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(8 "tilesets/summer/icons.png"))
-(define-icon 'icon-paladin 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(10 "tilesets/summer/icons.png"))
-(define-icon 'icon-dwarves 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(12 "tilesets/summer/icons.png"))
-(define-icon 'icon-mage 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(14 "tilesets/summer/icons.png"))
-(define-icon 'icon-ballista 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(16 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-oil-tanker 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(18 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-transport 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(20 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-destroyer 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(22 "tilesets/summer/icons.png"))
-(define-icon 'icon-battleship 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(24 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-submarine 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(26 "tilesets/summer/icons.png"))
-(define-icon 'icon-balloon 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(28 "tilesets/summer/icons.png"))
-(define-icon 'icon-gryphon-rider 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(30 "tilesets/summer/icons.png"))
-(define-icon 'icon-daemon 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(37 "tilesets/summer/icons.png"))
-(define-icon 'icon-farm 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(38 "tilesets/summer/icons.png"))
(define-icon 'icon-pig-farm 'tileset 'tileset-summer
'size '(46 38) 'normal '(39 "tilesets/summer/icons.png"))
(define-icon 'icon-town-hall 'tileset 'tileset-summer
'size '(46 38) 'normal '(40 "tilesets/summer/icons.png"))
(define-icon 'icon-great-hall 'tileset 'tileset-summer
'size '(46 38) 'normal '(41 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-barracks 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(42 "tilesets/summer/icons.png"))
(define-icon 'icon-mythical-barracks 'tileset 'tileset-summer
'size '(46 38) 'normal '(43 "tilesets/summer/icons.png"))
-(define-icon 'icon-elven-lumber-mill 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(44 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-blacksmith 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(46 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-shipyard 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(48 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-refinery 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(50 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-foundry 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(52 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-oil-platform 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(54 "tilesets/summer/icons.png"))
-(define-icon 'icon-stables 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(56 "tilesets/summer/icons.png"))
-(define-icon 'icon-inventor 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(58 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-watch-tower 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(60 "tilesets/summer/icons.png"))
-(define-icon 'icon-church 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(62 "tilesets/summer/icons.png"))
-(define-icon 'icon-mage-tower 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(64 "tilesets/summer/icons.png"))
-(define-icon 'icon-keep 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(66 "tilesets/summer/icons.png"))
-(define-icon 'icon-castle-upgrade 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(68 "tilesets/summer/icons.png"))
-(define-icon 'icon-castle 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(70 "tilesets/summer/icons.png"))
-(define-icon 'icon-gryphon-aviary 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(72 "tilesets/summer/icons.png"))
(define-icon 'icon-gold-mine 'tileset 'tileset-summer
'size '(46 38) 'normal '(74 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-guard-tower 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(75 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-cannon-tower 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(76 "tilesets/summer/icons.png"))
-(define-icon 'icon-oil-patch 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(79 "tilesets/summer/icons.png"))
-(define-icon 'icon-dark-portal 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(80 "tilesets/summer/icons.png"))
-(define-icon 'icon-circle-of-power 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(81 "tilesets/summer/icons.png"))
-(define-icon 'icon-runestone 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(82 "tilesets/summer/icons.png"))
(define-icon 'icon-move-peasant 'tileset 'tileset-summer
'size '(46 38) 'normal '(83 "tilesets/summer/icons.png"))
(define-icon 'icon-move-faun 'tileset 'tileset-summer
@@ -148,8 +72,6 @@
'size '(46 38) 'normal '(86 "tilesets/summer/icons.png"))
(define-icon 'icon-build-basic 'tileset 'tileset-summer
'size '(46 38) 'normal '(87 "tilesets/summer/icons.png"))
-(define-icon 'icon-build-advanced 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(88 "tilesets/summer/icons.png"))
(define-icon 'icon-return-goods-peasant 'tileset 'tileset-summer
'size '(46 38) 'normal '(89 "tilesets/summer/icons.png"))
(define-icon 'icon-return-goods-faun 'tileset 'tileset-summer
@@ -160,82 +82,18 @@
'size '(46 38) 'normal '(92 "tilesets/summer/icons.png"))
(define-icon 'icon-mythical-wall 'tileset 'tileset-summer
'size '(46 38) 'normal '(93 "tilesets/summer/icons.png"))
-(define-icon 'icon-slow 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(94 "tilesets/summer/icons.png"))
-(define-icon 'icon-invisibility 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(95 "tilesets/summer/icons.png"))
-(define-icon 'icon-lightning 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(99 "tilesets/summer/icons.png"))
-(define-icon 'icon-flame-shield 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(100 "tilesets/summer/icons.png"))
-(define-icon 'icon-fireball 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(101 "tilesets/summer/icons.png"))
(define-icon 'icon-faun-magic 'tileset 'tileset-summer
'size '(46 38) 'normal '(103 "tilesets/summer/icons.png"))
-(define-icon 'icon-blizzard 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(105 "tilesets/summer/icons.png"))
-(define-icon 'icon-holy-vision 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(106 "tilesets/summer/icons.png"))
-(define-icon 'icon-heal 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(107 "tilesets/summer/icons.png"))
-(define-icon 'icon-exorcism 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(110 "tilesets/summer/icons.png"))
-(define-icon 'icon-critter 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(115 "tilesets/summer/icons.png"))
(define-icon 'icon-sword1 'tileset 'tileset-summer
'size '(46 38) 'normal '(116 "tilesets/summer/icons.png"))
-(define-icon 'icon-sword2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(117 "tilesets/summer/icons.png"))
-(define-icon 'icon-sword3 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(118 "tilesets/summer/icons.png"))
(define-icon 'icon-battle-axe1 'tileset 'tileset-summer
'size '(46 38) 'normal '(119 "tilesets/summer/icons.png"))
-(define-icon 'icon-arrow1 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(124 "tilesets/summer/icons.png"))
-(define-icon 'icon-arrow2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(125 "tilesets/summer/icons.png"))
-(define-icon 'icon-arrow3 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(126 "tilesets/summer/icons.png"))
-(define-icon 'icon-longbow 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(132 "tilesets/summer/icons.png"))
-(define-icon 'icon-ranger-scouting 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(133 "tilesets/summer/icons.png"))
-(define-icon 'icon-ranger-marksmanship 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(134 "tilesets/summer/icons.png"))
-(define-icon 'icon-ballista1 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(140 "tilesets/summer/icons.png"))
-(define-icon 'icon-ballista2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(141 "tilesets/summer/icons.png"))
(define-icon 'icon-alliance-demolish 'tileset 'tileset-summer
'size '(46 38) 'normal '(142 "tilesets/summer/icons.png"))
(define-icon 'icon-mythical-demolish 'tileset 'tileset-summer
'size '(46 38) 'normal '(143 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-cannon1 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(144 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-cannon2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(145 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-cannon3 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(146 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-armor1 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(153 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-armor2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(154 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-armor3 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(155 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-move 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(157 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-return-oil 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(159 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-ship-haul-oil 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(161 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-unload 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(162 "tilesets/summer/icons.png"))
(define-icon 'icon-alliance-shield1 'tileset 'tileset-summer
'size '(46 38) 'normal '(164 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-shield2 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(165 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-shield3 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(166 "tilesets/summer/icons.png"))
(define-icon 'icon-mythical-shield1 'tileset 'tileset-summer
'size '(46 38) 'normal '(167 "tilesets/summer/icons.png"))
(define-icon 'icon-alliance-patrol-land 'tileset 'tileset-summer
@@ -250,219 +108,4 @@
'size '(46 38) 'normal '(182 "tilesets/summer/icons.png"))
(define-icon 'icon-mythical-attack-ground 'tileset 'tileset-summer
'size '(46 38) 'normal '(183 "tilesets/summer/icons.png"))
-(define-icon 'icon-alliance-patrol-naval 'tileset 'tileset-summer
- 'size '(46 38) 'normal '(184 "tilesets/summer/icons.png"))
-;;=============================================================================
-;; Winter Tileset
-;;=============================================================================
-(define-icon 'icon-peasant 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(0 "tilesets/winter/icons.png"))
-(define-icon 'icon-faun 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(1 "tilesets/winter/icons.png"))
-(define-icon 'icon-footman 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(2 "tilesets/winter/icons.png"))
-(define-icon 'icon-grunt 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(3 "tilesets/winter/icons.png"))
-(define-icon 'icon-archer 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(4 "tilesets/winter/icons.png"))
-(define-icon 'icon-ranger 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(6 "tilesets/winter/icons.png"))
-(define-icon 'icon-knight 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(8 "tilesets/winter/icons.png"))
-(define-icon 'icon-paladin 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(10 "tilesets/winter/icons.png"))
-(define-icon 'icon-dwarves 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(12 "tilesets/winter/icons.png"))
-(define-icon 'icon-mage 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(14 "tilesets/winter/icons.png"))
-(define-icon 'icon-ballista 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(16 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-oil-tanker 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(18 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-transport 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(20 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-destroyer 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(22 "tilesets/winter/icons.png"))
-(define-icon 'icon-battleship 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(24 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-submarine 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(26 "tilesets/winter/icons.png"))
-(define-icon 'icon-balloon 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(28 "tilesets/winter/icons.png"))
-(define-icon 'icon-gryphon-rider 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(30 "tilesets/winter/icons.png"))
-(define-icon 'icon-daemon 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(37 "tilesets/winter/icons.png"))
-(define-icon 'icon-farm 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(38 "tilesets/winter/icons.png"))
-(define-icon 'icon-pig-farm 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(39 "tilesets/winter/icons.png"))
-(define-icon 'icon-town-hall 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(40 "tilesets/winter/icons.png"))
-(define-icon 'icon-great-hall 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(41 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-barracks 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(42 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-barracks 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(43 "tilesets/winter/icons.png"))
-(define-icon 'icon-elven-lumber-mill 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(44 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-blacksmith 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(46 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-shipyard 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(48 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-refinery 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(50 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-foundry 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(52 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-oil-platform 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(54 "tilesets/winter/icons.png"))
-(define-icon 'icon-stables 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(56 "tilesets/winter/icons.png"))
-(define-icon 'icon-inventor 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(58 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-watch-tower 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(60 "tilesets/winter/icons.png"))
-(define-icon 'icon-church 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(62 "tilesets/winter/icons.png"))
-(define-icon 'icon-mage-tower 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(64 "tilesets/winter/icons.png"))
-(define-icon 'icon-keep 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(66 "tilesets/winter/icons.png"))
-(define-icon 'icon-castle-upgrade 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(68 "tilesets/winter/icons.png"))
-(define-icon 'icon-castle 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(70 "tilesets/winter/icons.png"))
-(define-icon 'icon-gryphon-aviary 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(72 "tilesets/winter/icons.png"))
-(define-icon 'icon-gold-mine 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(74 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-guard-tower 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(75 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-cannon-tower 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(76 "tilesets/winter/icons.png"))
-(define-icon 'icon-oil-patch 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(79 "tilesets/winter/icons.png"))
-(define-icon 'icon-dark-portal 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(80 "tilesets/winter/icons.png"))
-(define-icon 'icon-circle-of-power 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(81 "tilesets/winter/icons.png"))
-(define-icon 'icon-runestone 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(82 "tilesets/winter/icons.png"))
-(define-icon 'icon-move-peasant 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(83 "tilesets/winter/icons.png"))
-(define-icon 'icon-move-faun 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(84 "tilesets/winter/icons.png"))
-(define-icon 'icon-repair 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(85 "tilesets/winter/icons.png"))
-(define-icon 'icon-harvest 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(86 "tilesets/winter/icons.png"))
-(define-icon 'icon-build-basic 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(87 "tilesets/winter/icons.png"))
-(define-icon 'icon-build-advanced 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(88 "tilesets/winter/icons.png"))
-(define-icon 'icon-return-goods-peasant 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(89 "tilesets/winter/icons.png"))
-(define-icon 'icon-return-goods-faun 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(90 "tilesets/winter/icons.png"))
-(define-icon 'icon-cancel 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(91 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-wall 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(92 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-wall 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(93 "tilesets/winter/icons.png"))
-(define-icon 'icon-slow 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(94 "tilesets/winter/icons.png"))
-(define-icon 'icon-invisibility 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(95 "tilesets/winter/icons.png"))
-(define-icon 'icon-lightning 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(99 "tilesets/winter/icons.png"))
-(define-icon 'icon-flame-shield 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(100 "tilesets/winter/icons.png"))
-(define-icon 'icon-fireball 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(101 "tilesets/winter/icons.png"))
-(define-icon 'icon-faun-magic 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(103 "tilesets/summer/icons.png"))
-(define-icon 'icon-blizzard 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(105 "tilesets/winter/icons.png"))
-(define-icon 'icon-holy-vision 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(106 "tilesets/winter/icons.png"))
-(define-icon 'icon-heal 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(107 "tilesets/winter/icons.png"))
-(define-icon 'icon-exorcism 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(110 "tilesets/winter/icons.png"))
-(define-icon 'icon-critter 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(115 "tilesets/winter/icons.png"))
-(define-icon 'icon-sword1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(116 "tilesets/winter/icons.png"))
-(define-icon 'icon-sword2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(117 "tilesets/winter/icons.png"))
-(define-icon 'icon-sword3 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(118 "tilesets/winter/icons.png"))
-(define-icon 'icon-battle-axe1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(119 "tilesets/winter/icons.png"))
-(define-icon 'icon-arrow1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(124 "tilesets/winter/icons.png"))
-(define-icon 'icon-arrow2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(125 "tilesets/winter/icons.png"))
-(define-icon 'icon-arrow3 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(126 "tilesets/winter/icons.png"))
-(define-icon 'icon-longbow 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(132 "tilesets/winter/icons.png"))
-(define-icon 'icon-ranger-scouting 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(133 "tilesets/winter/icons.png"))
-(define-icon 'icon-ranger-marksmanship 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(134 "tilesets/winter/icons.png"))
-(define-icon 'icon-ballista1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(140 "tilesets/winter/icons.png"))
-(define-icon 'icon-ballista2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(141 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-demolish 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(142 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-demolish 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(143 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-cannon1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(144 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-cannon2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(145 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-cannon3 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(146 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-armor1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(153 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-armor2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(154 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-armor3 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(155 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-move 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(157 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-return-oil 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(159 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-ship-haul-oil 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(161 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-unload 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(162 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-shield1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(164 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-shield2 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(165 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-shield3 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(166 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-shield1 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(167 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-patrol-land 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(178 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-patrol-land 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(179 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-stand-ground 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(180 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-stand-ground 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(181 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-attack-ground 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(182 "tilesets/winter/icons.png"))
-(define-icon 'icon-mythical-attack-ground 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(183 "tilesets/winter/icons.png"))
-(define-icon 'icon-alliance-patrol-naval 'tileset 'tileset-winter
- 'size '(46 38) 'normal '(184 "tilesets/winter/icons.png"))
-
-(define-icon-alias 'icon-polymorph 'icon-critter)
Index: demogame/ccl/menus.ccl
diff -u demogame/ccl/menus.ccl:1.5 demogame/ccl/menus.ccl:1.6
--- demogame/ccl/menus.ccl:1.5 Sun Oct 12 16:06:09 2003
+++ demogame/ccl/menus.ccl Mon Oct 13 11:15:35 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: menus.ccl,v 1.5 2003/10/12 20:06:09 martinxyz Exp $
+;; $Id: menus.ccl,v 1.6 2003/10/13 15:15:35 martinxyz Exp $
;;
;; load the keystroke helps
@@ -35,7 +35,7 @@
; FIXME: get them from tileset definition
(define race-names '("Alliance" "Mythical"))
-(define tileset-names '("Summer" "Winter" "None" "None"))
+(define tileset-names '("Summer" "None" "None" "None"))
(define map-default-tileset-names (append '("Map Default") tileset-names))
(define player-names '("Person" "Computer" "Rescue (Passive)" "Rescue
(Active)" "Neutral" "Nobody" ))
Index: demogame/ccl/missiles.ccl
diff -u demogame/ccl/missiles.ccl:1.4 demogame/ccl/missiles.ccl:1.5
--- demogame/ccl/missiles.ccl:1.4 Mon Oct 13 10:09:09 2003
+++ demogame/ccl/missiles.ccl Mon Oct 13 11:15:35 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: missiles.ccl,v 1.4 2003/10/13 14:09:09 martinxyz Exp $
+;; $Id: missiles.ccl,v 1.5 2003/10/13 15:15:35 martinxyz Exp $
;; NOTE: the missiles could be sorted for races, but did this make sense?
@@ -38,103 +38,10 @@
;; 'sleep sleep 'speed speed 'impact-missile missile)
;;
-(define-missile-type 'missile-lightning
- 'file "missiles/lightning.png" 'size '(32 32) 'frames 30
- 'class 'missile-class-point-to-point-with-hit 'sleep 1 'speed 16 'range 1
- 'draw-level 50)
-
-(define-missile-type 'missile-griffon-hammer
- 'file "missiles/gryphon_hammer.png" 'size '(32 32) 'frames 15
- 'impact-sound "fireball hit"
- 'class 'missile-class-point-to-point-3bounces 'sleep 1 'speed 16 'range 2
- 'draw-level 50 'impact-missile 'missile-explosion)
-
-(define-missile-type 'missile-dragon-breath
- 'file "missiles/dragon_breath.png" 'size '(32 32) 'frames 5
- 'impact-sound "fireball hit"
- 'class 'missile-class-point-to-point-3bounces 'sleep 1 'speed 16 'range 2
- 'draw-level 70 'impact-missile 'missile-explosion)
-
-(define-missile-type 'missile-fireball
- 'file "missiles/fireball.png" 'size '(32 32) 'frames 5
- 'impact-sound "fireball hit"
- 'draw-level 50 'class 'missile-class-point-to-point 'sleep 1 'speed 16
'range 1
- 'impact-missile 'missile-explosion)
-
-(define-missile-type 'missile-flame-shield
- 'file "missiles/flame_shield.png" 'size '(32 48) 'frames 6
- 'draw-level 50 'class 'missile-class-flame-shield 'sleep 2 'speed 4 'range 1)
-
-(define-missile-type 'missile-blizzard
- 'file "missiles/blizzard.png" 'size '(32 32) 'frames 4
- 'class 'missile-class-blizzard 'sleep 2 'speed 8 'range 1
- 'draw-level 100 'impact-missile 'missile-blizzard-hit)
-
(define-missile-type 'missile-death-and-decay
'file "missiles/death_and_decay.png" 'size '(32 32) 'frames 8
'draw-level 100 'class 'missile-class-death-decay 'sleep 1 'speed 0 'range 1)
-(define-missile-type 'missile-big-cannon
- 'file "missiles/big_cannon.png" 'size '(16 16) 'frames 20
- 'draw-level 50 'impact-sound "explosion"
- 'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 2
- 'impact-missile 'missile-cannon-tower-explosion)
-
-(define-missile-type 'missile-exorcism
- 'file "missiles/exorcism.png" 'size '(48 48) 'frames 10
- 'draw-level 50 'class 'missile-class-point-to-point 'sleep 1 'speed 16
'range 1)
-
-(define-missile-type 'missile-heal-effect
- 'file "missiles/heal_effect.png" 'size '(48 48) 'frames 10
- 'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 1 'speed 16
'range 1)
-
-(define-missile-type 'missile-touch-of-death
- 'file "missiles/touch_of_death.png" 'size '(32 32) 'frames 30
- 'draw-level 50 'class 'missile-class-point-to-point-with-hit 'sleep 1 'speed
16 'range 1)
-
-(define-missile-type 'missile-rune
- 'file "missiles/rune.png" 'size '(16 16) 'frames 4
- 'draw-level 20 'class 'missile-class-land-mine 'sleep 5 'speed 16 'range 1
- 'impact-missile 'missile-explosion)
-
-(define-missile-type 'missile-whirlwind
- 'file "missiles/tornado.png" 'size '(56 56) 'frames 4
- 'draw-level 50 'class 'missile-class-whirlwind 'sleep 2 'speed 2 'range 1)
-
-(define-missile-type 'missile-catapult-rock
- 'file "missiles/catapult_rock.png" 'size '(32 32) 'frames 15
- 'impact-sound "explosion"
- 'draw-level 50 'class 'missile-class-parabolic 'sleep 1 'speed 16 'range 2
- 'impact-missile 'missile-impact)
-
-(define-missile-type 'missile-ballista-bolt
- 'file "missiles/ballista_bolt.png" 'size '(64 64) 'frames 5
- 'draw-level 50 'impact-sound "explosion"
- 'class 'missile-class-parabolic 'sleep 1 'speed 16 'range 2
- 'impact-missile 'missile-impact)
-
-(define-missile-type 'missile-arrow
- 'file "missiles/arrow.png" 'size '(40 40) 'frames 5
- 'draw-level 50 'impact-sound "bow hit"
- 'class 'missile-class-point-to-point 'sleep 1 'speed 32 'range 0)
-
-(define-missile-type 'missile-axe
- 'file "missiles/axe.png" 'size '(32 32) 'frames 15
- 'impact-sound "bow hit"
- 'draw-level 50 'class 'missile-class-point-to-point 'sleep 1 'speed 32
'range 0)
-
-(define-missile-type 'missile-submarine-missile
- 'file "missiles/submarine_missile.png" 'size '(40 40) 'frames 5
- 'impact-sound "explosion"
- 'draw-level 50 'class 'missile-class-point-to-point 'sleep 1 'speed 16
'range 1
- 'impact-missile 'missile-impact)
-
-(define-missile-type 'missile-turtle-missile
- 'file "missiles/turtle_missile.png" 'size '(40 40) 'frames 5
- 'draw-level 50 'impact-sound "explosion"
- 'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1
- 'impact-missile 'missile-impact)
-
(define-missile-type 'missile-small-fire
'file "missiles/small_fire.png" 'size '(32 48) 'frames 6
'draw-level 45 'class 'missile-class-fire 'sleep 8 'speed 16 'range 1)
@@ -143,10 +50,6 @@
'file "missiles/big_fire.png" 'size '(48 48) 'frames 10
'draw-level 45 'class 'missile-class-fire 'sleep 8 'speed 16 'range 1)
-(define-missile-type 'missile-impact
- 'file "missiles/ballista-catapult_impact.png" 'size '(48 48) 'frames 10
- 'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 1 'speed 16
'range 1)
-
(define-missile-type 'missile-normal-spell
'file "missiles/normal_spell.png" 'size '(32 32) 'frames 6
'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 5 'speed 0
'range 1)
@@ -155,25 +58,6 @@
'file "missiles/explosion.png" 'size '(64 64) 'frames 20
'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 1 'speed 16
'range 1)
-(define-missile-type 'missile-small-cannon
- 'file "missiles/cannon.png" 'size '(32 32) 'frames 15
- 'draw-level 50 'impact-sound "explosion"
- 'class 'missile-class-parabolic 'sleep 1 'speed 16 'range 1
- 'impact-missile 'missile-cannon-explosion)
-
-(define-missile-type 'missile-cannon-explosion
- 'file "missiles/cannon_explosion.png" 'size '(32 32) 'frames 4
- 'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 1 'speed 16
'range 1)
-
-(define-missile-type 'missile-cannon-tower-explosion
- 'file "missiles/cannon-tower_explosion.png" 'size '(32 32) 'frames 4
- 'draw-level 50 'class 'missile-class-stay-with-delay 'sleep 1 'speed 16
'range 1)
-
-(define-missile-type 'missile-daemon-fire
- 'file "missiles/daemon_fire.png" 'size '(32 32) 'frames 15
- 'draw-level 70 'impact-sound "fireball hit"
- 'class 'missile-class-point-to-point 'sleep 1 'speed 16 'range 1)
-
(define-missile-type 'missile-green-cross
'file "missiles/green_cross.png" 'size '(32 32) 'frames 4
'draw-level 150 'class 'missile-class-cycle-once 'sleep 1 'speed 16 'range 1)
@@ -186,14 +70,6 @@
'size '(32 32) 'draw-level 50
'class 'missile-class-none 'sleep 1 'speed 16 'range 1)
-(define-missile-type 'missile-blizzard-hit
- 'file "missiles/blizzard.png" 'size '(32 32) 'frames 4
- 'draw-level 60 'class 'missile-class-stay-with-delay 'sleep 2 'speed 8
'range 1)
-
-(define-missile-type 'missile-death-coil
- 'file "missiles/touch_of_death.png" 'size '(32 32) 'frames 30
- 'draw-level 50 'class 'missile-class-point-to-point 'sleep 1 'speed 16
'range 1)
-
(define-missile-type 'missile-hit
'size '(15 15) 'draw-level 150
'class 'missile-class-hit 'sleep 1 'speed 1 'range 16)
@@ -201,12 +77,6 @@
(define-missile-type 'missile-custom
'size '(32 32) 'draw-level 50
'class 'missile-class-custom 'sleep 1 'speed 16 'range 1)
-
-(define-missile-type 'missile-critter-explosion
- 'file "missiles/catapult_rock.png" 'size '(32 32) 'frames 15
- 'impact-sound "explosion" 'draw-level 50
- 'class 'missile-class-hit 'sleep 1 'speed 16 'range 2
- 'impact-missile 'missile-impact 'can-hit-owner #t)
(define-burning-building
'(percent 0 missile missile-big-fire)
Index: demogame/ccl/mythical/ai.ccl
diff -u demogame/ccl/mythical/ai.ccl:1.2 demogame/ccl/mythical/ai.ccl:1.3
--- demogame/ccl/mythical/ai.ccl:1.2 Thu Oct 9 15:32:41 2003
+++ demogame/ccl/mythical/ai.ccl Mon Oct 13 11:15:36 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: ai.ccl,v 1.2 2003/10/09 19:32:41 martinxyz Exp $
+;; $Id: ai.ccl,v 1.3 2003/10/13 15:15:36 martinxyz Exp $
;; This is the minimum AI needed so the computer attacks with grunts only.
@@ -38,8 +38,6 @@
'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall)
;; Building can train which units.
- (list 'train 'unit-pig-farm
- 'unit-critter)
(list 'train 'unit-great-hall
'unit-faun)
(list 'train 'unit-mythical-barracks
Index: demogame/ccl/mythical/buttons.ccl
diff -u demogame/ccl/mythical/buttons.ccl:1.6
demogame/ccl/mythical/buttons.ccl:1.7
--- demogame/ccl/mythical/buttons.ccl:1.6 Thu Oct 9 15:32:41 2003
+++ demogame/ccl/mythical/buttons.ccl Mon Oct 13 11:15:36 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: buttons.ccl,v 1.6 2003/10/09 19:32:41 martinxyz Exp $
+;; $Id: buttons.ccl,v 1.7 2003/10/13 15:15:36 martinxyz Exp $
;; general commands -- almost all units have it -------------------------------
@@ -116,11 +116,6 @@
'for-unit '(unit-faun))
;; mythical buildings commands
-----------------------------------------------------
-
-(define-button 'pos 1 'level 0 'icon 'icon-critter
- 'action 'train-unit 'value 'unit-critter
- 'key "c" 'hint "TRAIN ~!CRITTER"
- 'for-unit '(unit-pig-farm))
(define-button 'pos 2 'level 0 'icon 'icon-faun-magic
'action 'research 'value 'upgrade-faun-magic
Index: demogame/ccl/mythical/units.ccl
diff -u demogame/ccl/mythical/units.ccl:1.16
demogame/ccl/mythical/units.ccl:1.17
--- demogame/ccl/mythical/units.ccl:1.16 Thu Oct 9 15:32:41 2003
+++ demogame/ccl/mythical/units.ccl Mon Oct 13 11:15:36 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: units.ccl,v 1.16 2003/10/09 19:32:41 martinxyz Exp $
+;; $Id: units.ccl,v 1.17 2003/10/13 15:15:36 martinxyz Exp $
; To add a new unit type:
; - add icons for all tilesets in ../icons.ccl
@@ -118,8 +118,7 @@
attack "faun-attack"))
(define-unit-type 'unit-pig-farm 'name "Pig Farm"
- 'files '(tileset-summer "tilesets/summer/mythical/buildings/farm.png"
- tileset-winter "tilesets/winter/mythical/buildings/farm.png")
+ 'files '(tileset-summer "tilesets/summer/mythical/buildings/farm.png")
'size '(64 64)
'animations 'animations-building 'icon 'icon-pig-farm
'costs '(time 100 gold 500 wood 250)
@@ -148,8 +147,7 @@
attack "pig-farm-attack"))
(define-unit-type 'unit-mythical-barracks 'name "Barracks"
- 'files '(tileset-summer "tilesets/summer/mythical/buildings/barracks.png"
- tileset-winter "tilesets/winter/mythical/buildings/barracks.png")
+ 'files '(tileset-summer "tilesets/summer/mythical/buildings/barracks.png")
'size '(96 96)
'animations 'animations-building 'icon 'icon-mythical-barracks
'costs '(time 200 gold 700 wood 450)
@@ -177,11 +175,10 @@
attack "mythical-barracks-attack"))
(define-unit-type 'unit-great-hall 'name "Great Hall"
- 'files '(tileset-summer "tilesets/summer/mythical/buildings/great_hall.png"
- tileset-winter "tilesets/winter/mythical/buildings/great_hall.png")
+ 'files '(tileset-summer "tilesets/summer/mythical/buildings/great_hall.png")
'size '(128 128)
'animations 'animations-building 'icon 'icon-great-hall
- 'costs '(time 255 gold 1200 wood 800)
+ 'costs '(time 255 gold 500 wood 800)
'repair-hp 4
'repair-costs '(gold 1 wood 1)
'construction 'construction-land
Index: demogame/ccl/sound.ccl
diff -u demogame/ccl/sound.ccl:1.7 demogame/ccl/sound.ccl:1.8
--- demogame/ccl/sound.ccl:1.7 Thu Oct 9 12:10:34 2003
+++ demogame/ccl/sound.ccl Mon Oct 13 11:15:35 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: sound.ccl,v 1.7 2003/10/09 16:10:34 martinxyz Exp $
+;; $Id: sound.ccl,v 1.8 2003/10/13 15:15:35 martinxyz Exp $
;; Uncomment this to enable threaded sound
;(sound-thread)
@@ -84,22 +84,14 @@
(define sound-click (make-sound "click" "ui/click.wav"))
;;----------------------------------------------------------------------------
-;; Define simple sounds. (FIXME: somebody must clean the order.)
-;;
-
-;;----------------------------------------------------------------------------
;; Define simple alliance sounds.
;;
-(make-sound "basic alliance voices ready" "alliance/basic_voices/ready.wav")
+
(make-sound "basic alliance voices help 1" "alliance/basic_voices/help/1.wav")
(make-sound "basic alliance voices help 2" "alliance/basic_voices/help/2.wav")
(make-sound "basic alliance voices dead" "alliance/basic_voices/dead.wav")
;;----------------------------------------------------------------------------
-;; Define simple alliance building.
-;;
-
-;;----------------------------------------------------------------------------
;; Define simple mythical sounds.
;;
(make-sound "basic mythical voices ready" "mythical/basic_voices/ready.wav")
@@ -111,78 +103,22 @@
;; Define simple misc sounds.
;;
(make-sound "building construction" "misc/building_construction.wav")
-(make-sound "ship sinking" "ships/sinking.wav")
-(make-sound "catapult-ballista movement"
"units/catapult-ballista/acknowledgement/1.wav")
-
- ;; building selection sounds
-(make-sound "blacksmith" "buildings/blacksmith.wav")
-(make-sound "church-selected" "alliance/buildings/church.wav")
-(make-sound "stables-selected" "alliance/buildings/stables.wav")
-(make-sound "farm-selected" "alliance/buildings/farm.wav")
(make-sound "gold-mine-selected" "neutral/buildings/gold_mine.wav")
-(make-sound "shipyard" "buildings/shipyard.wav")
-(make-sound "oil platform" "buildings/oil_platform.wav")
-(make-sound "oil refinery" "buildings/oil_refinery.wav")
-(make-sound "lumbermill" "buildings/lumbermill.wav")
(make-sound "transport docking" "misc/transport_docking.wav")
(make-sound "burning" "misc/burning.wav")
-(make-sound "gryphon-aviary-selected" "alliance/buildings/gryphon_aviary.wav")
-(make-sound "foundry" "buildings/foundry.wav")
-(make-sound "mage-tower-selected" "alliance/buildings/mage_tower.wav")
-
- ;; spells
-
-
-
-(make-sound "flame shield" "spells/flame_shield.wav")
-
-(make-sound "healing" "spells/healing.wav")
-(make-sound "holy vision" "spells/holy_vision.wav")
-(make-sound "blizzard" "spells/blizzard.wav")
-(make-sound "invisibility" "spells/invisibility.wav")
-(make-sound "polymorph" "spells/polymorph.wav")
-(make-sound "slow" "spells/slow.wav")
;; ready sounds
(make-sound "faun-ready" "mythical/faun/ready.wav")
-(make-sound "knight-ready" "alliance/units/knight/ready.wav")
-(make-sound "paladin-ready" "alliance/units/paladin/ready.wav")
-(make-sound "ships alliance ready" "alliance/ships/ready.wav")
-(make-sound "mage-ready" "alliance/units/mage/ready.wav")
(make-sound "peasant-ready" "alliance/units/peasant/ready.wav")
- ;; selection sounds
-(make-sound "gryphon-rider-selected"
"alliance/units/gryphon_rider/selected/1.wav")
-(make-sound "sheep selected" "neutral/units/sheep/selected/1.wav")
-(make-sound "seal selected" "neutral/units/seal/selected/1.wav")
-(make-sound "pig selected" "neutral/units/pig/selected/1.wav")
-(make-sound "warthog selected" "neutral/units/warthog/selected/1.wav")
- ;; annoyed sounds
-(make-sound "sheep annoyed" "neutral/units/sheep/annoyed/1.wav")
-(make-sound "seal annoyed" "neutral/units/seal/annoyed/1.wav")
-(make-sound "pig annoyed" "neutral/units/pig/annoyed/1.wav")
-(make-sound "warthog annoyed" "neutral/units/warthog/annoyed/1.wav")
-
- ;; attack sounds
-(make-sound "catapult-ballista attack" "missiles/catapult-ballista_attack.wav")
-(make-sound "fireball hit" "missiles/fireball_hit.wav")
-(make-sound "fireball throw" "missiles/fireball_throw.wav")
-(make-sound "bow throw" "missiles/bow_throw.wav")
-(make-sound "bow hit" "missiles/bow_hit.wav")
(make-sound "peasant attack" "alliance/units/peasant/attack.wav")
-(make-sound "lightning" "spells/lightning.wav")
-
;;----------------------------------------------------------------------------
;; Define sound groups.
;;
;; Acknowledgment sounds -------------------------------------------------
;;
-(make-sound "basic alliance voices acknowledge"
- (list "alliance/basic_voices/acknowledgement/1.wav"
- "alliance/basic_voices/acknowledgement/2.wav"
- "alliance/basic_voices/acknowledgement/3.wav"
- "alliance/basic_voices/acknowledgement/4.wav"))
+
(make-sound "basic mythical voices acknowledge"
(list "mythical/basic_voices/acknowledgement/1.wav"
"mythical/basic_voices/acknowledgement/2.wav"
@@ -193,39 +129,11 @@
"alliance/units/peasant/acknowledgement/2.wav"
"alliance/units/peasant/acknowledgement/3.wav"
"alliance/units/peasant/acknowledgement/4.wav"))
-(make-sound "knight-acknowledge"
- (list "alliance/units/knight/acknowledgement/1.wav"
- "alliance/units/knight/acknowledgement/2.wav"
- "alliance/units/knight/acknowledgement/3.wav"
- "alliance/units/knight/acknowledgement/4.wav"))
-(make-sound "mage-acknowledge"
- (list "alliance/units/mage/acknowledgement/1.wav"
- "alliance/units/mage/acknowledgement/2.wav"
- "alliance/units/mage/acknowledgement/3.wav"))
-(make-sound "paladin-acknowledge"
- (list "alliance/units/paladin/acknowledgement/1.wav"
- "alliance/units/paladin/acknowledgement/2.wav"
- "alliance/units/paladin/acknowledgement/3.wav"
- "alliance/units/paladin/acknowledgement/4.wav"))
-(make-sound "tanker acknowledge"
- (list "ships/tanker/acknowledgement/1.wav"))
-(make-sound "ships alliance acknowledge"
- (list "alliance/ships/acknowledgement/1.wav"
- "alliance/ships/acknowledgement/2.wav"
- "alliance/ships/acknowledgement/3.wav"))
-(make-sound "gryphon-rider-acknowledge"
- (list "alliance/units/gryphon_rider/acknowledgement/2.wav"))
;;
;; Selection sounds -----------------------------------------------------
;;
-(make-sound "basic alliance voices selected"
- (list "alliance/basic_voices/selected/1.wav"
- "alliance/basic_voices/selected/2.wav"
- "alliance/basic_voices/selected/3.wav"
- "alliance/basic_voices/selected/4.wav"
- "alliance/basic_voices/selected/5.wav"
- "alliance/basic_voices/selected/6.wav"))
+
(make-sound "basic mythical voices selected"
(list "mythical/basic_voices/selected/1.wav"
"mythical/basic_voices/selected/2.wav"
@@ -233,24 +141,7 @@
"mythical/basic_voices/selected/4.wav"
"mythical/basic_voices/selected/5.wav"
"mythical/basic_voices/selected/6.wav"))
-(make-sound "knight selected"
- (list "alliance/units/knight/selected/1.wav"
- "alliance/units/knight/selected/2.wav"
- "alliance/units/knight/selected/3.wav"
- "alliance/units/knight/selected/4.wav"))
-(make-sound "paladin selected"
- (list "alliance/units/paladin/selected/1.wav"
- "alliance/units/paladin/selected/2.wav"
- "alliance/units/paladin/selected/3.wav"
- "alliance/units/paladin/selected/4.wav"))
-(make-sound "ships alliance selected"
- (list "alliance/ships/selected/1.wav"
- "alliance/ships/selected/2.wav"
- "alliance/ships/selected/3.wav"))
-(make-sound "mage selected"
- (list "alliance/units/mage/selected/1.wav"
- "alliance/units/mage/selected/2.wav"
- "alliance/units/mage/selected/3.wav"))
+
(make-sound "peasant selected"
(list "alliance/units/peasant/selected/1.wav"
"alliance/units/peasant/selected/2.wav"
@@ -260,14 +151,7 @@
;;
;; Annoyed sounds --------------------------------------------------------
;;
-(make-sound "basic alliance voices annoyed"
- (list "alliance/basic_voices/annoyed/1.wav"
- "alliance/basic_voices/annoyed/2.wav"
- "alliance/basic_voices/annoyed/3.wav"
- "alliance/basic_voices/annoyed/4.wav"
- "alliance/basic_voices/annoyed/5.wav"
- "alliance/basic_voices/annoyed/6.wav"
- "alliance/basic_voices/annoyed/7.wav"))
+
(make-sound "basic mythical voices annoyed"
(list "mythical/basic_voices/annoyed/1.wav"
"mythical/basic_voices/annoyed/2.wav"
@@ -276,22 +160,7 @@
"mythical/basic_voices/annoyed/5.wav"
"mythical/basic_voices/annoyed/6.wav"
"mythical/basic_voices/annoyed/7.wav"))
-(make-sound "knight annoyed"
- (list "alliance/units/knight/annoyed/1.wav"
- "alliance/units/knight/annoyed/2.wav"
- "alliance/units/knight/annoyed/3.wav"))
-(make-sound "paladin annoyed"
- (list "alliance/units/paladin/annoyed/1.wav"
- "alliance/units/paladin/annoyed/2.wav"
- "alliance/units/paladin/annoyed/3.wav"))
-(make-sound "ships alliance annoyed"
- (list "alliance/ships/annoyed/1.wav"
- "alliance/ships/annoyed/2.wav"
- "alliance/ships/annoyed/3.wav"))
-(make-sound "mage annoyed"
- (list "alliance/units/mage/annoyed/1.wav"
- "alliance/units/mage/annoyed/2.wav"
- "alliance/units/mage/annoyed/3.wav"))
+
(make-sound "peasant annoyed"
(list "alliance/units/peasant/annoyed/1.wav"
"alliance/units/peasant/annoyed/2.wav"
@@ -321,107 +190,29 @@
;;----------------------------------------------------------------------------
;; Define selection sound groups.
-(make-sound-group "footman-selected"
- "basic alliance voices selected" "basic alliance voices annoyed")
+
(make-sound-group "grunt-selected"
"basic mythical voices selected" "basic mythical voices annoyed")
(make-sound-group "peasant-selected"
"peasant selected" "peasant annoyed")
-(make-sound-group "knight-selected"
- "knight selected" "knight annoyed")
-(make-sound-group "archer-selected"
- "elven archer-ranger selected" "elven archer-ranger annoyed")
-(make-sound-group "mage-selected"
- "mage selected" "mage annoyed")
-(make-sound-group "paladin-selected"
- "paladin selected" "paladin annoyed")
-(make-sound-group "dwarves-selected"
- "dwarven demolition squad selected" "dwarven demolition squad annoyed")
-(make-sound-group "alliance-oil-tanker-selected"
- "ships alliance selected" "ships alliance annoyed")
;;----------------------------------------------------------------------------
;; Define sound remapping. (FIXME: somebody must clean the order.)
;;
;; acknowledge sounds
-(map-sound "footman-acknowledge" "basic alliance voices acknowledge")
(map-sound "grunt-acknowledge" "basic mythical voices acknowledge")
(map-sound "faun-acknowledge" "basic mythical voices acknowledge")
-(map-sound "ballista-acknowledge" "catapult-ballista movement")
-(map-sound "archer-acknowledge" "elven archer-ranger acknowledge")
-(map-sound "ranger-acknowledge" "elven archer-ranger acknowledge")
-(map-sound "alliance-oil-tanker-acknowledge" "tanker acknowledge")
-(map-sound "alliance-transport-acknowledge" "ships alliance acknowledge")
-(map-sound "battleship-acknowledge" "ships alliance acknowledge")
-
;; ready sounds
-(map-sound "footman-ready" "basic alliance voices ready")
(map-sound "grunt-ready" "basic mythical voices ready")
-(map-sound "ballista-ready" "basic alliance voices ready")
-(map-sound "archer-ready" "elven archer-ranger ready")
-(map-sound "ranger-ready" "elven archer-ranger ready")
-(map-sound "alliance-oil-tanker-ready" "ships alliance ready")
-(map-sound "alliance-transport-ready" "ships alliance ready")
-(map-sound "battleship-ready" "ships alliance ready")
-
;; selection sounds
(map-sound "faun-selected" "grunt-selected")
-(map-sound "ballista-selected" "click")
-(map-sound "ranger-selected" "elven archer-ranger selected")
-(map-sound "alliance-transport-selected" "alliance-oil-tanker-selected")
-(map-sound "battleship-selected" "alliance-oil-tanker-selected")
-(map-sound "daemon-selected" "click")
-(map-sound "alliance-barracks-selected" "click")
(map-sound "mythical-barracks-selected" "click")
-(map-sound "alliance-watch-tower-selected" "click")
-(map-sound "alliance-shipyard-selected" "shipyard")
(map-sound "town-hall-selected" "click")
(map-sound "great-hall-selected" "click")
-(map-sound "elven-lumber-mill-selected" "lumbermill")
-(map-sound "alliance-foundry-selected" "foundry")
-(map-sound "alliance-blacksmith-selected" "blacksmith")
-(map-sound "alliance-refinery-selected" "oil refinery")
-(map-sound "alliance-oil-platform-selected" "oil platform")
-(map-sound "keep-selected" "click")
-(map-sound "castle-selected" "click")
-(map-sound "oil-patch-selected" "click")
-(map-sound "alliance-guard-tower-selected" "click")
-(map-sound "alliance-cannon-tower-selected" "click")
-
;; attack sounds
-(map-sound "footman-attack" "sword attack")
(map-sound "grunt-attack" "sword attack")
(map-sound "peasant-attack" "peasant attack")
(map-sound "faun-attack" "peasant attack")
-(map-sound "ballista-attack" "catapult-ballista attack")
-(map-sound "knight-attack" "sword attack")
-(map-sound "archer-attack" "bow throw")
-(map-sound "mage-attack" "lightning")
-(map-sound "paladin-attack" "sword attack")
-(map-sound "dwarves-attack" "sword attack")
-(map-sound "ranger-attack" "bow throw")
-
- ;; FIXME: what sound for ships?
-(map-sound "battleship-attack" "fireball throw")
-(map-sound "gryphon-rider-attack" "lightning")
-
-;; FIXME: what sound for those heroes?
-;; (map-sound "turalyon-attack")
-;; (map-sound "danath-attack")
-;; (map-sound "korgath-bladefist-attack")
-;; (map-sound "cho-gall-attack")
-;; (map-sound "lothar-attack")
-;; (map-sound "gul-dan-attack")
-;; (map-sound "uther-lightbringer-attack")
-;; (map-sound "zuljin-attack")
-;; (map-sound "daemon-attack")
-;; FIXME: what attack sounds for towers?
-;; (map-sound "alliance-guard-tower-attack")
-;; (map-sound "mythical-guard-tower-attack")
-;; (map-sound "alliance-cannon-tower-attack")
-;; (map-sound "mythical-cannon-tower-attack")
-(map-sound "critter-help" "basic mythical voices help 1")
-(map-sound "critter-dead" "explosion")
;; Define sounds used by game
;;
@@ -429,10 +220,6 @@
'placement-error (make-sound "placement error" "ui/placement_error.wav")
'placement-success (make-sound "placement success"
"ui/placement_success.wav")
'click sound-click
-; FIXME: Not ready
-; 'tree-chopping (make-sound "tree chopping" "tree_chopping.wav")
-; 'transport-docking
-; 'building-construction
'work-complete (list 'alliance (make-sound "basic alliance voices work
complete" "alliance/basic_voices/work_complete.wav"))
'work-complete (list 'mythical (make-sound "basic mythical voices work
complete" "mythical/basic_voices/work_complete.wav"))
Index: demogame/ccl/tilesets.ccl
diff -u demogame/ccl/tilesets.ccl:1.1 demogame/ccl/tilesets.ccl:1.2
--- demogame/ccl/tilesets.ccl:1.1 Sat Jul 26 09:39:14 2003
+++ demogame/ccl/tilesets.ccl Mon Oct 13 11:15:35 2003
@@ -26,14 +26,10 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: tilesets.ccl,v 1.1 2003/07/26 13:39:14 martinxyz Exp $
+;; $Id: tilesets.ccl,v 1.2 2003/10/13 15:15:35 martinxyz Exp $
;;=============================================================================
;; Load the different tileset definitions
-;;
-;; FIXME: need a way to automatic load all available tileset definitions
(define-tileset 'tileset-summer 'class "summer"
'file "ccl/tilesets/summer.ccl")
-(define-tileset 'tileset-winter 'class "winter"
- 'file "ccl/tilesets/winter.ccl")
Index: demogame/ccl/units.ccl
diff -u demogame/ccl/units.ccl:1.11 demogame/ccl/units.ccl:1.12
--- demogame/ccl/units.ccl:1.11 Sun Oct 12 16:06:09 2003
+++ demogame/ccl/units.ccl Mon Oct 13 11:15:35 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: units.ccl,v 1.11 2003/10/12 20:06:09 martinxyz Exp $
+;; $Id: units.ccl,v 1.12 2003/10/13 15:15:35 martinxyz Exp $
;; Load the animations for the units.
(ccl:load "ccl/anim.ccl")
@@ -37,79 +37,8 @@
;; NOTE: Save can generate this table.
;;
-
-
-
-
-
-
-
-
-
-(define-unit-type 'unit-daemon 'name "Daemon"
- 'files '(tileset-summer "neutral/units/daemon.png")
- 'size '(72 72)
- 'animations 'animations-daemon 'icon 'icon-daemon
- 'costs '(time 70 gold 500 oil 50)
- 'speed 14
- 'hit-points 60
- 'draw-level 60
- 'tile-size '(1 1) 'box-size '(31 31)
- 'sight-range 5 'computer-reaction-range 7 'person-reaction-range 5
- 'armor 3 'basic-damage 10 'piercing-damage 2 'missile 'missile-daemon-fire
- 'max-attack-range 3
- 'priority 63
- 'points 100
- 'demand 1
- 'type-fly
- 'right-attack
- 'can-attack
- 'can-target-land 'can-target-sea 'can-target-air
- 'air-unit
- 'detect-cloak
- 'organic
- 'selectable-by-rectangle
- 'sounds '(
- selected "daemon-selected"
- acknowledge "daemon-acknowledge"
- ready "daemon-ready"
- help "basic mythical voices help 1"
- dead "basic mythical voices dead"
- attack "daemon-attack"))
-
-(define-unit-type 'unit-critter 'name "Critter"
- 'files '(tileset-summer "tilesets/summer/neutral/units/critter.png"
- tileset-winter "tilesets/winter/neutral/units/critter.png")
- 'size '(32 32)
- 'animations 'animations-critter 'icon 'icon-critter
- 'speed 3
- 'hit-points 5
- 'draw-level 35
- 'tile-size '(1 1) 'box-size '(31 31)
- 'sight-range 2 'computer-reaction-range 20 'person-reaction-range 10
- 'basic-damage 80 'piercing-damage 0 'missile 'missile-critter-explosion
- 'max-attack-range 1
- 'priority 37
- 'points 1
- 'demand 1
- 'type-land
- 'right-move
- 'can-target-land
- 'land-unit
- 'random-movement-probability 100
- 'clicks-to-explode 10
- 'organic
- 'sounds '(
- selected "critter-selected"
- acknowledge "critter-acknowledge"
- ready "critter-ready"
- help "critter-help"
- dead "critter-dead"
- attack "critter-attack"))
-
(define-unit-type 'unit-gold-mine 'name "Gold Mine"
- 'files '(tileset-summer "tilesets/summer/neutral/buildings/gold_mine.png"
- tileset-winter "tilesets/winter/neutral/buildings/gold_mine.png")
+ 'files '(tileset-summer "tilesets/summer/neutral/buildings/gold_mine.png")
'size '(96 96)
'animations 'animations-building 'icon 'icon-gold-mine
'costs '(time 150)
@@ -134,113 +63,6 @@
dead "building destroyed"
attack "gold-mine-attack"))
-(define-unit-type 'unit-oil-patch 'name "Oil Patch"
- 'files '(tileset-summer
- "tilesets/summer/neutral/buildings/oil_patch.png")
- 'size '(96 96)
- 'animations 'animations-building 'icon 'icon-oil-patch
- 'speed 0
- 'hit-points 0
- 'draw-level 5
- 'tile-size '(3 3) 'box-size '(95 95)
- 'sight-range 0
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 0
- 'type-naval
- 'building
- 'gives-resource 'oil
- 'sounds '(
- selected "oil-patch-selected"
- acknowledge "oil-patch-acknowledge"
- ready "oil-patch-ready"
- help "oil-patch-help"
- dead "building destroyed"
- attack "oil-patch-attack"))
-
-(define-unit-type 'unit-circle-of-power 'name "Circle of Power"
- 'files '(tileset-summer "neutral/buildings/circle_of_power.png")
- 'size '(64 64)
- 'animations 'animations-building 'icon 'icon-circle-of-power
- 'speed 0
- 'hit-points 0
- 'draw-level 5
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 0
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 0
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building
- 'sounds '(
- selected "circle-of-power-selected"
- acknowledge "circle-of-power-acknowledge"
- ready "circle-of-power-ready"
- help "basic alliance voices help 2"
- dead "building destroyed"
- attack "circle-of-power-attack"))
-
-(define-unit-type 'unit-dark-portal 'name "Dark Portal"
- 'files '(tileset-summer "tilesets/summer/neutral/buildings/dark_portal.png"
- tileset-winter
- "tilesets/winter/neutral/buildings/dark_portal.png")
- 'size '(128 128)
- 'animations 'animations-building 'icon 'icon-dark-portal
- 'costs '(time 100 gold 3000 wood 3000 oil 1000)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1 oil 1)
- 'construction 'construction-land2
- 'speed 0
- 'hit-points 5000
- 'draw-level 40
- 'max-mana 255
- 'tile-size '(4 4) 'box-size '(127 127)
- 'sight-range 4
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 0
- 'corpse '(unit-destroyed-4x4-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building 'builder-outside
- 'teleporter
- 'sounds '(
- selected "dark-portal-selected"
- acknowledge "dark-portal-acknowledge"
- ready "dark-portal-ready"
- help "basic mythical voices help 2"
- dead "building destroyed"
- attack "dark-portal-attack"))
-
-(define-unit-type 'unit-runestone 'name "Runestone"
- 'files '(tileset-summer "neutral/buildings/runestone.png"
- tileset-winter "tilesets/winter/neutral/buildings/runestone.png")
- 'size '(64 64)
- 'animations 'animations-building 'icon 'icon-runestone
- 'costs '(time 175 gold 900 wood 500)
- 'repair-hp 4
- 'repair-costs '(gold 1 wood 1)
- 'construction 'construction-land2
- 'speed 0
- 'hit-points 5000
- 'draw-level 40
- 'max-mana 255
- 'tile-size '(2 2) 'box-size '(63 63)
- 'sight-range 4
- 'armor 20 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 15 'annoy-computer-factor 35
- 'points 150
- 'corpse '(unit-destroyed-2x2-place 0)
- 'explode-when-killed 'missile-explosion
- 'type-land
- 'building 'builder-outside
- 'sounds '(
- selected "runestone-selected"
- acknowledge "runestone-acknowledge"
- ready "runestone-ready"
- help "basic mythical voices help 2"
- dead "building destroyed"
- attack "runestone-attack"))
-
(define-unit-type 'unit-dead-body 'name "Dead Body"
'files '(tileset-summer "neutral/units/corpses.png")
'size '(72 72)
@@ -258,9 +80,7 @@
(define-unit-type 'unit-destroyed-1x1-place 'name "Destroyed 1x1 Place"
'files '(
- tileset-summer "tilesets/summer/neutral/buildings/small_destroyed_site.png"
- tileset-winter
- "tilesets/winter/neutral/buildings/small_destroyed_site.png")
+ tileset-summer
"tilesets/summer/neutral/buildings/small_destroyed_site.png")
'size '(32 32)
'animations 'animations-destroyed-place 'icon 'icon-peasant
'speed 0
@@ -276,9 +96,7 @@
'sounds '())
(define-unit-type 'unit-destroyed-2x2-place 'name "Destroyed 2x2 Place"
- 'files '(tileset-summer
"tilesets/summer/neutral/buildings/destroyed_site.png"
- tileset-winter
- "tilesets/winter/neutral/buildings/destroyed_site.png")
+ 'files '(tileset-summer
"tilesets/summer/neutral/buildings/destroyed_site.png")
'size '(64 64)
'animations 'animations-destroyed-place 'icon 'icon-peasant
'speed 0
@@ -325,35 +143,9 @@
'vanishes
'sounds '())
-(define-unit-type 'unit-revealer 'name "Dummy unit"
- 'size '(0 0)
- 'animations 'animations-building 'icon 'icon-holy-vision
- 'speed 0
- 'hit-points 0
- 'tile-size '(1 1) 'box-size '(1 1)
- 'sight-range 12
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 0
- 'decay-rate 1
- 'type-land
- 'building
- 'revealer
- 'detect-cloak
- 'sounds '())
-(define-unit-type 'unit-reveal-attacker 'name "Dummy unit"
- 'size '(0 0)
- 'animations 'animations-building 'icon 'icon-holy-vision
- 'speed 0
- 'hit-points 0
- 'tile-size '(1 1) 'box-size '(1 1)
- 'sight-range 1
- 'basic-damage 0 'piercing-damage 0 'missile 'missile-none
- 'priority 0
- 'decay-rate 1
- 'type-land
- 'building
- 'sounds '())
+
+
;; Load the different races
(ccl:load "ccl/alliance/units.ccl")
Index: demogame/ccl/upgrade.ccl
diff -u demogame/ccl/upgrade.ccl:1.4 demogame/ccl/upgrade.ccl:1.5
--- demogame/ccl/upgrade.ccl:1.4 Sun Oct 12 16:06:09 2003
+++ demogame/ccl/upgrade.ccl Mon Oct 13 11:15:35 2003
@@ -26,7 +26,7 @@
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
;;
-;; $Id: upgrade.ccl,v 1.4 2003/10/12 20:06:09 martinxyz Exp $
+;; $Id: upgrade.ccl,v 1.5 2003/10/13 15:15:35 martinxyz Exp $
;; Load the different races
(ccl:load "ccl/alliance/upgrade.ccl")
@@ -44,14 +44,8 @@
;;
-(define-allow 'unit-critter "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-daemon "AAAAAAAAAAAAAAAA")
(define-allow 'unit-gold-mine "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-oil-patch "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-circle-of-power "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-dark-portal "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-runestone "AAAAAAAAAAAAAAAA")
(define-allow 'unit-dead-body "AAAAAAAAAAAAAAAA")
(define-allow 'unit-destroyed-1x1-place "AAAAAAAAAAAAAAAA")
Index: demogame/puds/default.pud.gz
Index: demogame/scripts/removeunit.py
diff -u demogame/scripts/removeunit.py:1.2 demogame/scripts/removeunit.py:1.3
--- demogame/scripts/removeunit.py:1.2 Sat Oct 11 05:00:16 2003
+++ demogame/scripts/removeunit.py Mon Oct 13 11:15:50 2003
@@ -21,7 +21,7 @@
assert not unit
unit = u
if not unit:
- print 'unittype not found'
+ print 'unittype', type, 'not found'
sys.exit(1)
assert type.startswith('unit-')
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Stratagus-CVS] demogame ccl/anim.ccl ccl/buttons.ccl ccl/const...,
Martin Renold <=