stratagus-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Stratagus-CVS] demogame ccl/ai.ccl ccl/anim.ccl ccl/editor.ccl...


From: Martin Renold
Subject: [Stratagus-CVS] demogame ccl/ai.ccl ccl/anim.ccl ccl/editor.ccl...
Date: Mon, 11 Aug 2003 01:57:07 -0400

CVSROOT:        /cvsroot/stratagus
Module name:    demogame
Branch:         
Changes by:     Martin Renold <address@hidden>  03/08/11 01:57:06

Modified files:
        ccl            : ai.ccl anim.ccl editor.ccl icons.ccl 
                         keystrokes.ccl sound.ccl units.ccl wc2.ccl 
        ccl/alliance   : units.ccl upgrade.ccl 
        ccl/mythical   : units.ccl upgrade.ccl 
Added files:
        graphics/alliance/units: peasant-with-gold.png 
                                 peasant-with-wood.png 
        graphics/mythical/units: faun-with-gold.png faun-with-wood.png 
        sounds/mythical/faun: ready.wav.gz 
Removed files:
        graphics/alliance/units: peasant_with_gold.png 
                                 peasant_with_wood.png 
        graphics/mythical/units: faun_with_gold.png faun_with_wood.png 
        sounds/mythical/peon: ready.wav.gz 

Log message:
        update for engine resource changes

Patches:
Index: demogame/ccl/ai.ccl
diff -u demogame/ccl/ai.ccl:1.1 demogame/ccl/ai.ccl:1.2
--- demogame/ccl/ai.ccl:1.1     Sat Jul 26 09:39:14 2003
+++ demogame/ccl/ai.ccl Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: ai.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;(define (ai:sleep) () #t)
 
@@ -56,23 +56,23 @@
     (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-human-refinery
+       '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-peasant-with-gold
        '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-human-refinery
+       '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-peasant-with-wood
        '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-human-refinery
+       '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-human-oil-tanker 'unit-alliance-oil-platform)
-    (list 'build 'unit-human-oil-tanker-full 'unit-alliance-oil-platform)
+    (list 'build 'unit-alliance-oil-tanker 'unit-alliance-oil-platform)
+    (list 'build 'unit-alliance-oil-tanker-full 'unit-alliance-oil-platform)
     ;;
     ;; Building can train which units.
     ;;
@@ -88,7 +88,7 @@
     (list 'train 'unit-mage-tower 'unit-mage)
     (list 'train 'unit-gryphon-aviary 'unit-gryphon-rider)
     (list 'train 'unit-alliance-shipyard
-       'unit-human-oil-tanker 'unit-alliance-destroyer 'unit-alliance-transport
+       'unit-alliance-oil-tanker 'unit-alliance-destroyer 
'unit-alliance-transport
        'unit-alliance-submarine 'unit-battleship)
     ;;
     ;; Building can upgrade which upgrades.
@@ -122,7 +122,7 @@
        '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-human-refinery
+       '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)
@@ -130,7 +130,7 @@
        '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-human-refinery
+       '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)
@@ -138,7 +138,7 @@
        '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-human-refinery
+       '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)
@@ -146,13 +146,13 @@
     ;; Workers can collect which resource.
     ;;
     (list 'collect 'unit-peasant 'gold 'wood 'ore 'stone 'coal)
-    (list 'collect 'unit-human-oil-tanker 'oil )
+    (list 'collect 'unit-alliance-oil-tanker 'oil )
     ;;
     ;; Workers with resource.
     ;;
     (list 'with-goods 'unit-peasant-with-gold 'gold)
     (list 'with-goods 'unit-peasant-with-wood 'wood)
-    (list 'with-goods 'unit-human-oil-tanker-full 'oil )
+    (list 'with-goods 'unit-alliance-oil-tanker-full 'oil )
     ;;
     ;; Reduce unit limits.
     ;;
@@ -170,8 +170,8 @@
        'unit-paladin)
     (list 'unit-equiv 'unit-peasant
        'unit-peasant-with-gold 'unit-peasant-with-wood)
-    (list 'unit-equiv 'unit-human-oil-tanker
-       'unit-human-oil-tanker-full)
+    (list 'unit-equiv 'unit-alliance-oil-tanker
+       'unit-alliance-oil-tanker-full)
     (list 'unit-equiv 'unit-alliance-watch-tower
         'unit-alliance-guard-tower 'unit-alliance-cannon-tower) )
 
@@ -186,26 +186,26 @@
     (list 'build 'unit-peon
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall
        'unit-troll-lumber-mill 'unit-mythical-blacksmith 
'unit-mythical-watch-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms
        'unit-dragon-roost 'unit-dark-portal 'unit-runestone)
     (list 'build 'unit-peon-with-gold
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall
        'unit-troll-lumber-mill 'unit-mythical-blacksmith 
'unit-mythical-watch-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms
        'unit-dragon-roost 'unit-dark-portal 'unit-runestone)
     (list 'build 'unit-peon-with-wood
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall
        'unit-troll-lumber-mill 'unit-mythical-blacksmith 
'unit-mythical-watch-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms
        'unit-dragon-roost 'unit-dark-portal 'unit-runestone)
-    (list 'build 'unit-orc-oil-tanker 'unit-mythical-oil-platform)
-    (list 'build 'unit-orc-oil-tanker-full 'unit-mythical-oil-platform)
+    (list 'build 'unit-mythical-oil-tanker 'unit-mythical-oil-platform)
+    (list 'build 'unit-mythical-oil-tanker-full 'unit-mythical-oil-platform)
     ;;
     ;; Building can train which units.
     ;;
@@ -221,7 +221,7 @@
     (list 'train 'unit-temple-of-the-damned 'unit-death-knight)
     (list 'train 'unit-dragon-roost 'unit-dragon)
     (list 'train 'unit-mythical-shipyard
-       'unit-orc-oil-tanker 'unit-mythical-destroyer 'unit-mythical-transport
+       'unit-mythical-oil-tanker 'unit-mythical-destroyer 
'unit-mythical-transport
        'unit-mythical-submarine 'unit-ogre-juggernaught)
     ;;
     ;; Building can upgrade which upgrades.
@@ -256,7 +256,7 @@
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall 'unit-stronghold
        'unit-fortress 'unit-troll-lumber-mill 'unit-mythical-blacksmith
        'unit-mythical-watch-tower 'unit-mythical-guard-tower 
'unit-mythical-cannon-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms 'unit-dragon-roost 'unit-dark-portal
        'unit-runestone 'unit-mythical-transport)
@@ -264,7 +264,7 @@
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall 'unit-stronghold
        'unit-fortress 'unit-troll-lumber-mill 'unit-mythical-blacksmith
        'unit-mythical-watch-tower 'unit-mythical-guard-tower 
'unit-mythical-cannon-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms 'unit-dragon-roost 'unit-dark-portal
        'unit-runestone 'unit-mythical-transport)
@@ -272,7 +272,7 @@
        'unit-pig-farm 'unit-mythical-barracks 'unit-great-hall 'unit-stronghold
        'unit-fortress 'unit-troll-lumber-mill 'unit-mythical-blacksmith
        'unit-mythical-watch-tower 'unit-mythical-guard-tower 
'unit-mythical-cannon-tower
-       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-orc-refinery
+       'unit-orc-wall 'unit-mythical-shipyard 'unit-mythical-foundry 
'unit-mythical-refinery
        'unit-alchemist 'unit-ogre-mound 'unit-temple-of-the-damned
        'unit-altar-of-storms 'unit-dragon-roost 'unit-dark-portal
        'unit-runestone 'unit-mythical-transport)
@@ -280,13 +280,13 @@
     ;; Workers can collect which resource.
     ;;
     (list 'collect 'unit-peon 'gold 'wood 'ore 'stone 'coal)
-    (list 'collect 'unit-orc-oil-tanker 'oil )
+    (list 'collect 'unit-mythical-oil-tanker 'oil )
     ;;
     ;; Workers with resource.
     ;;
     (list 'with-goods 'unit-peon-with-gold 'gold)
     (list 'with-goods 'unit-peon-with-wood 'wood)
-    (list 'with-goods 'unit-orc-oil-tanker-full 'oil )
+    (list 'with-goods 'unit-mythical-oil-tanker-full 'oil )
     ;;
     ;; Reduce unit limits.
     ;;
@@ -304,8 +304,8 @@
        'unit-ogre-mage)
     (list 'unit-equiv 'unit-peon
        'unit-peon-with-gold 'unit-peon-with-wood)
-    (list 'unit-equiv 'unit-orc-oil-tanker
-       'unit-orc-oil-tanker-full)
+    (list 'unit-equiv 'unit-mythical-oil-tanker
+       'unit-mythical-oil-tanker-full)
     (list 'unit-equiv 'unit-mythical-watch-tower
         'unit-mythical-guard-tower 'unit-mythical-cannon-tower) )
 
@@ -877,7 +877,7 @@
 ;;
 (define (ai:refinery)
   (if (eq? (ai:get-race) race1)
-      'unit-human-refinery 'unit-orc-refinery) )
+      'unit-alliance-refinery 'unit-mythical-refinery) )
 
 ;;
 ;;     Foundry of the current race.
@@ -926,7 +926,7 @@
 ;;
 (define (ai:tanker)
   (if (eq? (ai:get-race) race1)
-      'unit-human-oil-tanker 'unit-orc-oil-tanker) )
+      'unit-alliance-oil-tanker 'unit-mythical-oil-tanker) )
 
 ;;
 ;;     Submarine of the current race.
Index: demogame/ccl/alliance/units.ccl
diff -u demogame/ccl/alliance/units.ccl:1.2 demogame/ccl/alliance/units.ccl:1.3
--- demogame/ccl/alliance/units.ccl:1.2 Tue Jul 29 14:13:22 2003
+++ demogame/ccl/alliance/units.ccl     Mon Aug 11 01:57:05 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.2 2003/07/29 18:13:22 martinxyz Exp $
+;;     $Id: units.ccl,v 1.3 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;=============================================================================
 ;;     Define unit-types.
@@ -66,7 +66,6 @@
     dead "basic alliance voices dead"
     attack "footman-attack"))
 
-
 ; common buttons for peasant, peasant-with-gold, ...
 (define (peasant-buttons with-goods)
     (if (= (get-global 'button-level) 0) (begin
@@ -104,15 +103,21 @@
        'hint (string-append "BUILD ELVEN ~!LUMBER MILL" "   " (get-cost-string 
'unit-elven-lumber-mill))
         'action (lambda() (command-build 'unit-elven-lumber-mill))))))
 
-(define-unit-type 'unit-peasant 'name "Peasant"
-  'files '(tileset-summer "alliance/units/peasant.png")
+; pre-declare all peasants (because they transform into each other)
+(define-unit-type 'unit-peasant)
+(define-unit-type 'unit-peasant-with-gold)
+(define-unit-type 'unit-peasant-with-wood)
+; this one seems to be for scenarios
+(define-unit-type 'unit-attack-peasant)
+
+(define peasant-common-args (list
+  'name "Peasant"
   'size '(72 72)
-  'draw-level 19
+  'draw-level 40
   'animations 'animations-peasant 'icon 'icon-peasant
   'costs '(time 45 gold 400)
   'speed 10
   'hit-points 30
-  'draw-level 40
   'tile-size '(1 1) 'box-size '(31 31)
   'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
   'basic-damage 3 'piercing-damage 2 'missile 'missile-none
@@ -122,13 +127,11 @@
   'demand 1
   'corpse '(unit-dead-body 6)
   'type-land
-  'right-harvest
   'can-attack
   'can-target-land
+  'can-repair
   'land-unit
-  'cower-worker
   'organic
-  'add-buttons (lambda () (peasant-buttons nil))
   'selectable-by-rectangle
   'sounds '(
     selected "peasant-selected"
@@ -136,73 +139,45 @@
     ready "peasant-ready"
     help "basic alliance voices help 1"
     dead "basic alliance voices dead"
-    attack "peasant-attack"))
+    attack "peasant-attack")))
 
-(define-unit-type 'unit-peasant-with-gold 'name "Peasant"
-  'files '(tileset-summer "alliance/units/peasant_with_gold.png")
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peasant
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 6)
-  'type-land
+(apply define-unit-type (append (list
+  'unit-peasant
+  'files '(tileset-summer "alliance/units/peasant.png")
   'right-harvest
-  'can-attack
-  'can-target-land
-  'land-unit
+  'harvester 'resource-harvested 'gold 'resource-capacity 100
+  'wait-at-resource 150 'wait-at-depot 150
+  'transform-when-loaded 'unit-peasant-with-gold
+  'cower-worker
+  'add-buttons (lambda () (peasant-buttons nil))
+  ) peasant-common-args))
+
+(apply define-unit-type (append (list
+  'unit-peasant-with-gold
+  'files '(tileset-summer "alliance/units/peasant-with-gold.png")
+  'right-harvest
+  'harvester 'resource-harvested 'gold 'resource-capacity 100
+  'wait-at-resource 150 'wait-at-depot 150
+  'transform-when-empty 'unit-peasant
   'cower-worker
-  'organic
-  'selectable-by-rectangle
   'add-buttons (lambda () (peasant-buttons 't))
-  'sounds '(
-    selected "peasant-with-gold-selected"
-    acknowledge "peasant-with-gold-acknowledge"
-    ready "peasant-with-gold-ready"
-    help "basic alliance voices help 1"
-    dead "basic alliance voices dead"
-    attack "peasant-with-gold-attack"))
+  ) peasant-common-args))
 
-(define-unit-type 'unit-peasant-with-wood 'name "Peasant"
-  'files '(tileset-summer "alliance/units/peasant_with_wood.png")
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peasant
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 6)
-  'type-land
+(apply define-unit-type (append (list
+  'unit-peasant-with-wood
+  'files '(tileset-summer "alliance/units/peasant-with-wood.png")
   'right-harvest
-  'can-attack
-  'can-target-land
-  'land-unit
   'cower-worker
-  'organic
-  'selectable-by-rectangle
   'add-buttons (lambda () (peasant-buttons 't))
-  'sounds '(
-    selected "peasant-with-wood-selected"
-    acknowledge "peasant-with-wood-acknowledge"
-    ready "peasant-with-wood-ready"
-    help "basic alliance voices help 1"
-    dead "basic alliance voices dead"
-    attack "peasant-with-wood-attack"))
+  ) peasant-common-args))
+
+(apply define-unit-type (append (list
+  'unit-attack-peasant
+  'use 'unit-peasant
+  'right-attack
+  ; FIXME: this one will need special buttons
+  'add-buttons (lambda () (peasant-buttons nil))
+  ) peasant-common-args))
 
 (define-unit-type 'unit-ballista 'name "Ballista"
   'files '(tileset-summer "alliance/units/ballista.png")
@@ -401,37 +376,6 @@
     dead "explosion"
     attack "dwarves-attack"))
 
-(define-unit-type 'unit-attack-peasant 'name "Peasant"
-  'use 'unit-peasant
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peasant
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 6)
-  'type-land
-  'right-attack
-  'can-attack
-  'can-target-land
-  'land-unit
-  'organic
-  'selectable-by-rectangle
-  'sounds '(
-    selected "peasant-selected"
-    acknowledge "peasant-acknowledge"
-    ready "peasant-ready"
-    help "basic alliance voices help 1"
-    dead "basic alliance voices dead"
-    attack "peasant-attack"))
-
 (define-unit-type 'unit-ranger 'name "Ranger"
   'use 'unit-archer
   'size '(72 72)
@@ -563,7 +507,10 @@
     dead "basic alliance voices dead"
     attack "white-mage-attack"))
 
-(define-unit-type 'unit-human-oil-tanker 'name "Oil tanker"
+; declaration
+(define-unit-type 'unit-alliance-oil-tanker-full)
+
+(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
@@ -580,9 +527,11 @@
   'demand 1
   'corpse '(unit-dead-body 12)
   'type-naval
-  'right-haul-oil
+  'right-harvest
   'sea-unit
-  'tanker
+  'harvester 'resource-harvested 'oil 'resource-capacity 100
+  'wait-at-resource 100 'wait-at-depot 100
+  'transform-when-loaded 'unit-alliance-oil-tanker-full
   'selectable-by-rectangle
   'sounds '(
     selected "alliance-oil-tanker-selected"
@@ -592,6 +541,37 @@
     dead "ship sinking"
     attack "alliance-oil-tanker-attack"))
 
+(define-unit-type 'unit-alliance-oil-tanker-full 'name "Oil tanker"
+  'files '(tileset-summer "alliance/units/oil_tanker_full.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
+  'harvester 'resource-harvested 'oil 'resource-capacity 100
+  'wait-at-resource 100 'wait-at-depot 100
+  'transform-when-empty 'unit-alliance-oil-tanker
+  '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)
@@ -1281,7 +1261,7 @@
     dead "building destroyed"
     attack "alliance-blacksmith-attack"))
 
-(define-unit-type 'unit-human-refinery 'name "Refinery"
+(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)
@@ -1328,7 +1308,7 @@
   'type-naval
   'building
   'must-build-on-top 'unit-oil-patch
-  'gives-oil
+  'gives-resource 'oil 'can-harvest
   'sounds '(
     selected "alliance-oil-platform-selected"
     acknowledge "alliance-oil-platform-acknowledge"
@@ -1476,6 +1456,7 @@
     dead "building destroyed"
     attack "alliance-cannon-tower-attack"))
 
+; FIXME: hardcoded magic unit type
 (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")
@@ -1502,31 +1483,3 @@
     dead "building destroyed"
     attack "alliance-wall-attack"))
 
-(define-unit-type 'unit-human-oil-tanker-full 'name "Oil tanker"
-  'files '(tileset-summer "alliance/units/oil_tanker_full.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-haul-oil
-  'sea-unit
-  'tanker
-  'selectable-by-rectangle
-  'sounds '(
-    selected "alliance-oil-tanker-full-selected"
-    acknowledge "alliance-oil-tanker-full-acknowledge"
-    ready "alliance-oil-tanker-full-ready"
-    help "basic alliance voices help 1"
-    dead "ship sinking"
-    attack "alliance-oil-tanker-full-attack"))
Index: demogame/ccl/alliance/upgrade.ccl
diff -u demogame/ccl/alliance/upgrade.ccl:1.1 
demogame/ccl/alliance/upgrade.ccl:1.2
--- demogame/ccl/alliance/upgrade.ccl:1.1       Sat Jul 26 09:39:14 2003
+++ demogame/ccl/alliance/upgrade.ccl   Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: upgrade.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;=============================================================================
@@ -252,7 +252,7 @@
 (define-allow 'unit-female-hero                        "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-flying-angle               "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-white-mage                 "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-human-oil-tanker           "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")
@@ -276,7 +276,7 @@
 (define-allow 'unit-alliance-foundry           "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-mage-tower                 "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-alliance-blacksmith                "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-human-refinery             "AAAAAAAAAAAAAAAA")
+(define-allow 'unit-alliance-refinery          "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-alliance-oil-platform              "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-keep                       "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-castle                     "AAAAAAAAAAAAAAAA")
@@ -286,7 +286,7 @@
 (define-allow 'unit-human-wall                 "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-peasant-with-gold          "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-peasant-with-wood          "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-human-oil-tanker-full      "AAAAAAAAAAAAAAAA")
+(define-allow 'unit-alliance-oil-tanker-full   "AAAAAAAAAAAAAAAA")
 
 ;;     - upgrades
 
@@ -369,7 +369,7 @@
   '(unit-elven-lumber-mill))
 (define-dependency 'unit-alliance-foundry
   '(unit-alliance-shipyard))
-(define-dependency 'unit-human-refinery
+(define-dependency 'unit-alliance-refinery
   '(unit-alliance-shipyard))
 (define-dependency 'unit-keep
   '(unit-alliance-barracks))
Index: demogame/ccl/anim.ccl
diff -u demogame/ccl/anim.ccl:1.2 demogame/ccl/anim.ccl:1.3
--- demogame/ccl/anim.ccl:1.2   Sun Jul 27 14:24:14 2003
+++ demogame/ccl/anim.ccl       Mon Aug 11 01:57:05 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.2 2003/07/27 18:24:14 martinxyz Exp $
+;;     $Id: anim.ccl,v 1.3 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;=============================================================================
 ;;     Define animations.
@@ -65,7 +65,7 @@
     #( 0 0   3  45) #( 0 0   3  50) #( 0 0 100  55) #( 3 0   1  55)))
 
 ;;------
-;;     Peasant, Peon, Peasant, Peon, Peasant, Peon, Peasant, Peon
+;;     Peasant, Faun, Peasant, Faun, Peasant, Faun, Peasant, Faun
 (define-animations 'animations-peasant
   'still '(    ; #5
     #( 0 0   4   0) #( 3 0   1   0))
Index: demogame/ccl/editor.ccl
diff -u demogame/ccl/editor.ccl:1.1 demogame/ccl/editor.ccl:1.2
--- demogame/ccl/editor.ccl:1.1 Sat Jul 26 09:39:14 2003
+++ demogame/ccl/editor.ccl     Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: editor.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 
 ;;     Set which icons to display
@@ -53,7 +53,7 @@
    'unit-dwarves
    'unit-ballista
 
-   'unit-human-oil-tanker
+   'unit-alliance-oil-tanker
    'unit-alliance-transport
    'unit-alliance-destroyer
    'unit-battleship
@@ -80,7 +80,7 @@
 
    'unit-alliance-shipyard
    'unit-alliance-foundry
-   'unit-human-refinery
+   'unit-alliance-refinery
    'unit-alliance-oil-platform
 
    'unit-female-hero
@@ -94,7 +94,7 @@
    'unit-attack-peasant
    'unit-peasant-with-gold
    'unit-peasant-with-wood
-   'unit-human-oil-tanker-full
+   'unit-alliance-oil-tanker-full
 
 ;- - - - - - - - - - - - - - - - - - -
 
@@ -109,7 +109,7 @@
    'unit-death-knight
    'unit-goblin-sappers
 
-   'unit-orc-oil-tanker
+   'unit-mythical-oil-tanker
    'unit-ogre-juggernaught
 
    'unit-eye-of-vision
@@ -123,7 +123,7 @@
    'unit-attack-peon
    'unit-peon-with-gold
    'unit-peon-with-wood
-   'unit-orc-oil-tanker-full
+   'unit-mythical-oil-tanker-full
 
 ;- - - - - - - - - - - - - - - - - - -
 
Index: demogame/ccl/icons.ccl
diff -u demogame/ccl/icons.ccl:1.1 demogame/ccl/icons.ccl:1.2
--- demogame/ccl/icons.ccl:1.1  Sat Jul 26 09:39:14 2003
+++ demogame/ccl/icons.ccl      Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: icons.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;     NOTE:
 ;;             Splitting this file into races is a problem, because all
@@ -59,7 +59,7 @@
 ;        could be done with a helper function
 (define-icon 'icon-peasant 'tileset 'tileset-summer
   'size '(46 38) 'normal '(0 "tilesets/summer/icons.png"))
-(define-icon 'icon-peon 'tileset 'tileset-summer
+(define-icon 'icon-faun 'tileset 'tileset-summer
   'size '(46 38) 'normal '(1 "tilesets/summer/icons.png"))
 (define-icon 'icon-footman 'tileset 'tileset-summer
   'size '(46 38) 'normal '(2 "tilesets/summer/icons.png"))
@@ -225,7 +225,7 @@
   '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-peon 'tileset 'tileset-summer
+(define-icon 'icon-move-faun 'tileset 'tileset-summer
   'size '(46 38) 'normal '(84 "tilesets/summer/icons.png"))
 (define-icon 'icon-repair 'tileset 'tileset-summer
   'size '(46 38) 'normal '(85 "tilesets/summer/icons.png"))
@@ -237,7 +237,7 @@
   '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-peon 'tileset 'tileset-summer
+(define-icon 'icon-return-goods-faun 'tileset 'tileset-summer
   'size '(46 38) 'normal '(90 "tilesets/summer/icons.png"))
 (define-icon 'icon-cancel 'tileset 'tileset-summer
   'size '(46 38) 'normal '(91 "tilesets/summer/icons.png"))
@@ -456,7 +456,7 @@
 
 (define-icon 'icon-peasant 'tileset 'tileset-winter
   'size '(46 38) 'normal '(0 "tilesets/winter/icons.png"))
-(define-icon 'icon-peon 'tileset 'tileset-winter
+(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"))
@@ -622,7 +622,7 @@
   '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-peon 'tileset 'tileset-winter
+(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"))
@@ -634,7 +634,7 @@
   '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-peon 'tileset 'tileset-winter
+(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"))
Index: demogame/ccl/keystrokes.ccl
diff -u demogame/ccl/keystrokes.ccl:1.1 demogame/ccl/keystrokes.ccl:1.2
--- demogame/ccl/keystrokes.ccl:1.1     Sat Jul 26 09:39:14 2003
+++ demogame/ccl/keystrokes.ccl Mon Aug 11 01:57:05 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: keystrokes.ccl,v 1.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: keystrokes.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ; FIXME: this should be a normal menu item, not a builtin command...
 ;;=============================================================================
@@ -59,7 +59,7 @@
 (add-keystroke-help "SPACE" "- goto last event")
 (add-keystroke-help "TAB" "- hide/unhide terrain")
 (add-keystroke-help "Ctrl-T" "- track unit")
-(add-keystroke-help "Alt-I" "- find idle peon")
+(add-keystroke-help "Alt-I" "- find idle faun")
 (add-keystroke-help "Alt-C" "- center on selected unit")
 (add-keystroke-help "Alt-V" "- next view port")
 (add-keystroke-help "Ctrl-V" "- previous view port")
Index: demogame/ccl/mythical/units.ccl
diff -u demogame/ccl/mythical/units.ccl:1.1 demogame/ccl/mythical/units.ccl:1.2
--- demogame/ccl/mythical/units.ccl:1.1 Sat Jul 26 09:39:14 2003
+++ demogame/ccl/mythical/units.ccl     Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: units.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;=============================================================================
 ;;     Define unit-types.
@@ -63,14 +63,22 @@
     dead "basic mythical voices dead"
     attack "grunt-attack"))
 
-(define-unit-type 'unit-peon 'name "Faun"
-  'files '(tileset-summer "mythical/units/faun.png")
+; pre-declare all fauns (because they transform into each other)
+; FIXME: magic name "unit-peon-*" hardcoded in the engine
+(define-unit-type 'unit-peon)
+(define-unit-type 'unit-peon-with-gold)
+(define-unit-type 'unit-peon-with-wood)
+; this one seems to be for scenarios
+(define-unit-type 'unit-attack-peon)
+
+(define faun-common-args (list
+  'name "Faun"
   'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peon
+  'draw-level 40
+  'animations 'animations-peasant 'icon 'icon-faun
   'costs '(time 45 gold 400)
   'speed 10
   'hit-points 30
-  'draw-level 40
   'tile-size '(1 1) 'box-size '(31 31)
   'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
   'basic-damage 3 'piercing-damage 2 'missile 'missile-none
@@ -78,22 +86,60 @@
   'priority 50
   'points 30
   'demand 1
-  'corpse '(unit-dead-body 0)
+  'corpse '(unit-dead-body 6)
   'type-land
-  'right-harvest
   'can-attack
   'can-target-land
+  'can-repair
   'land-unit
-  'cower-worker
   'organic
   'selectable-by-rectangle
   'sounds '(
-    selected "peon-selected"
-    acknowledge "peon-acknowledge"
-    ready "peon-ready"
+    selected "faun-selected"
+    acknowledge "faun-acknowledge"
+    ready "faun-ready"
     help "basic mythical voices help 1"
     dead "basic mythical voices dead"
-    attack "peon-attack"))
+    attack "faun-attack")))
+
+(apply define-unit-type (append (list
+  'unit-peon
+  'icon 'icon-faun
+  'files '(tileset-summer "mythical/units/faun.png")
+  'right-harvest
+  'harvester 'resource-harvested 'gold 'resource-capacity 100
+  'wait-at-resource 150 'wait-at-depot 150
+  'transform-when-loaded 'unit-peon-with-gold
+  'cower-worker
+  'add-buttons (lambda () (faun-buttons nil))
+  ) faun-common-args))
+
+(apply define-unit-type (append (list
+  'unit-peon-with-gold
+  'files '(tileset-summer "mythical/units/faun-with-gold.png")
+  'right-harvest
+  'harvester 'resource-harvested 'gold 'resource-capacity 100
+  'wait-at-resource 150 'wait-at-depot 150
+  'transform-when-empty 'unit-peon
+  'cower-worker
+  'add-buttons (lambda () (faun-buttons 't))
+  ) faun-common-args))
+
+(apply define-unit-type (append (list
+  'unit-peon-with-wood
+  'files '(tileset-summer "mythical/units/faun-with-wood.png")
+  'right-harvest
+  'cower-worker
+  'add-buttons (lambda () (faun-buttons 't))
+  ) faun-common-args))
+
+(apply define-unit-type (append (list
+  'unit-attack-peon
+  'use 'unit-peon
+  'right-attack
+  ; FIXME: this one will need special buttons
+  'add-buttons (lambda () (faun-buttons nil))
+  ) faun-common-args))
 
 (define-unit-type 'unit-catapult 'name "Catapult"
   'files '(tileset-summer "mythical/units/catapult.png")
@@ -291,37 +337,6 @@
     dead "explosion"
     attack "goblin-sappers-attack"))
 
-(define-unit-type 'unit-attack-peon 'name "Faun"
-  'use 'unit-peon
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peon
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 0)
-  'type-land
-  'right-attack
-  'can-attack
-  'can-target-land
-  'land-unit
-  'organic
-  'selectable-by-rectangle
-  'sounds '(
-    selected "peon-selected"
-    acknowledge "peon-acknowledge"
-    ready "peon-ready"
-    help "basic mythical voices help 1"
-    dead "basic mythical voices dead"
-    attack "peon-attack"))
-
 (define-unit-type 'unit-berserker 'name "Berserker"
   'use 'unit-axethrower
   'size '(72 72)
@@ -457,7 +472,10 @@
     dead "basic mythical voices dead"
     attack "beast-cry-attack"))
 
-(define-unit-type 'unit-orc-oil-tanker 'name "Oil tanker"
+; declaration
+(define-unit-type 'unit-mythical-oil-tanker-full)
+
+(define-unit-type 'unit-mythical-oil-tanker 'name "Oil tanker"
   'files '(tileset-summer "mythical/units/oil_tanker_empty.png")
   'size '(72 72)
   'animations 'animations-alliance-oil-tanker 'icon 'icon-mythical-oil-tanker
@@ -474,9 +492,11 @@
   'demand 1
   'corpse '(unit-dead-body 12)
   'type-naval
-  'right-haul-oil
+  'right-harvest
   'sea-unit
-  'tanker
+  'harvester 'resource-harvested 'oil 'resource-capacity 100
+  'wait-at-resource 100 'wait-at-depot 100
+  'transform-when-loaded 'unit-mythical-oil-tanker-full
   'selectable-by-rectangle
   'sounds '(
     selected "mythical-oil-tanker-selected"
@@ -486,6 +506,37 @@
     dead "ship sinking"
     attack "mythical-oil-tanker-attack"))
 
+(define-unit-type 'unit-mythical-oil-tanker-full 'name "Oil tanker"
+  'files '(tileset-summer "mythical/units/oil_tanker_full.png")
+  'size '(72 72)
+  'animations 'animations-alliance-oil-tanker 'icon 'icon-mythical-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
+  'harvester 'resource-harvested 'oil 'resource-capacity 100
+  'wait-at-resource 100 'wait-at-depot 100
+  'transform-when-empty 'unit-mythical-oil-tanker
+  'selectable-by-rectangle
+  'sounds '(
+    selected "mythical-oil-tanker-full-selected"
+    acknowledge "mythical-oil-tanker-full-acknowledge"
+    ready "mythical-oil-tanker-full-ready"
+    help "basic mythical voices help 1"
+    dead "ship sinking"
+    attack "mythical-oil-tanker-full-attack"))
+    
 (define-unit-type 'unit-mythical-transport 'name "Transport"
   'files '(tileset-summer "mythical/units/transport.png")
   'size '(72 72)
@@ -1242,7 +1293,7 @@
     dead "building destroyed"
     attack "mythical-blacksmith-attack"))
 
-(define-unit-type 'unit-orc-refinery 'name "Refinery"
+(define-unit-type 'unit-mythical-refinery 'name "Refinery"
   'files '(tileset-summer "tilesets/summer/mythical/buildings/refinery.png"
     tileset-winter "tilesets/winter/mythical/buildings/refinery.png")
   'size '(96 96)
@@ -1288,8 +1339,8 @@
   'corpse '(unit-destroyed-3x3-place 3)
   'type-naval
   'building
-  'gives-oil
   'must-build-on-top 'unit-oil-patch
+  'gives-resource 'oil 'can-harvest
   'sounds '(
     selected "mythical-oil-platform-selected"
     acknowledge "mythical-oil-platform-acknowledge"
@@ -1437,6 +1488,7 @@
     dead "building destroyed"
     attack "mythical-cannon-tower-attack"))
 
+; FIXME: hardcoded magic unit type
 (define-unit-type 'unit-orc-wall 'name "Wall"
   'use 'unit-human-wall
   'size '(32 32)
@@ -1462,95 +1514,3 @@
     dead "building destroyed"
     attack "mythical-wall-attack"))
 
-(define-unit-type 'unit-peon-with-gold 'name "Faun"
-  'files '(tileset-summer "mythical/units/faun_with_gold.png")
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peon
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 0)
-  'type-land
-  'right-harvest
-  'can-attack
-  'can-target-land
-  'land-unit
-  'cower-worker
-  'organic
-  'selectable-by-rectangle
-  'sounds '(
-    selected "peon-with-gold-selected"
-    acknowledge "peon-with-gold-acknowledge"
-    ready "peon-with-gold-ready"
-    help "basic mythical voices help 1"
-    dead "basic mythical voices dead"
-    attack "peon-with-gold-attack"))
-
-(define-unit-type 'unit-peon-with-wood 'name "Faun"
-  'files '(tileset-summer "mythical/units/faun_with_wood.png")
-  'size '(72 72)
-  'animations 'animations-peasant 'icon 'icon-peon
-  'costs '(time 45 gold 400)
-  'speed 10
-  'hit-points 30
-  'draw-level 40
-  'tile-size '(1 1) 'box-size '(31 31)
-  'sight-range 4 'computer-reaction-range 6 'person-reaction-range 4
-  'basic-damage 3 'piercing-damage 2 'missile 'missile-none
-  'max-attack-range 1
-  'priority 50
-  'points 30
-  'demand 1
-  'corpse '(unit-dead-body 0)
-  'type-land
-  'right-harvest
-  'can-attack
-  'can-target-land
-  'land-unit
-  'cower-worker
-  'organic
-  'selectable-by-rectangle
-  'sounds '(
-    selected "peon-with-wood-selected"
-    acknowledge "peon-with-wood-acknowledge"
-    ready "peon-with-wood-ready"
-    help "basic mythical voices help 1"
-    dead "basic mythical voices dead"
-    attack "peon-with-wood-attack"))
-
-(define-unit-type 'unit-orc-oil-tanker-full 'name "Oil tanker"
-  'files '(tileset-summer "mythical/units/oil_tanker_full.png")
-  'size '(72 72)
-  'animations 'animations-alliance-oil-tanker 'icon 'icon-mythical-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-haul-oil
-  'sea-unit
-  'tanker
-  'selectable-by-rectangle
-  'sounds '(
-    selected "mythical-oil-tanker-full-selected"
-    acknowledge "mythical-oil-tanker-full-acknowledge"
-    ready "mythical-oil-tanker-full-ready"
-    help "basic mythical voices help 1"
-    dead "ship sinking"
-    attack "mythical-oil-tanker-full-attack"))
Index: demogame/ccl/mythical/upgrade.ccl
diff -u demogame/ccl/mythical/upgrade.ccl:1.1 
demogame/ccl/mythical/upgrade.ccl:1.2
--- demogame/ccl/mythical/upgrade.ccl:1.1       Sat Jul 26 09:39:14 2003
+++ demogame/ccl/mythical/upgrade.ccl   Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: upgrade.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;=============================================================================
@@ -251,7 +251,7 @@
 (define-allow 'unit-evil-knight                "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-fad-man                    "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-beast-cry          "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-orc-oil-tanker             "AAAAAAAAAAAAAAAA")
+(define-allow 'unit-mythical-oil-tanker                "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-mythical-transport         "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-mythical-destroyer         "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-ogre-juggernaught          "AAAAAAAAAAAAAAAA")
@@ -277,7 +277,7 @@
 (define-allow 'unit-mythical-foundry                   "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-temple-of-the-damned       "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-mythical-blacksmith                "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-orc-refinery               "AAAAAAAAAAAAAAAA")
+(define-allow 'unit-mythical-refinery          "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-mythical-oil-platform              "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-stronghold                 "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-fortress                   "AAAAAAAAAAAAAAAA")
@@ -287,7 +287,7 @@
 (define-allow 'unit-orc-wall                   "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-peon-with-gold             "AAAAAAAAAAAAAAAA")
 (define-allow 'unit-peon-with-wood             "AAAAAAAAAAAAAAAA")
-(define-allow 'unit-orc-oil-tanker-full                "AAAAAAAAAAAAAAAA")
+(define-allow 'unit-mythical-oil-tanker-full           "AAAAAAAAAAAAAAAA")
 
 ;;     - upgrades
 
@@ -367,7 +367,7 @@
   '(unit-troll-lumber-mill))
 (define-dependency 'unit-mythical-foundry
   '(unit-mythical-shipyard))
-(define-dependency 'unit-orc-refinery
+(define-dependency 'unit-mythical-refinery
   '(unit-mythical-shipyard))
 (define-dependency 'unit-stronghold
   '(unit-mythical-barracks))
Index: demogame/ccl/sound.ccl
diff -u demogame/ccl/sound.ccl:1.1 demogame/ccl/sound.ccl:1.2
--- demogame/ccl/sound.ccl:1.1  Sat Jul 26 09:39:14 2003
+++ demogame/ccl/sound.ccl      Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: sound.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 (if (with-sound) (begin
 
@@ -169,7 +169,7 @@
 (make-sound "unholy armour" "spells/unholy_armor.wav")
 (make-sound "whirlwind" "spells/whirlwind.wav")
     ;; ready sounds
-(make-sound "peon-ready" "mythical/peon/ready.wav")
+(make-sound "faun-ready" "mythical/faun/ready.wav")
 (make-sound "death-knight-ready" "mythical/units/death_knight/ready.wav")
 (make-sound "dwarves-ready" 
"alliance/units/dwarven_demolition_squad/ready.wav")
 (make-sound "elven archer-ranger ready"
@@ -673,7 +673,7 @@
     ;; acknowledge sounds
 (map-sound "footman-acknowledge" "basic alliance voices acknowledge")
 (map-sound "grunt-acknowledge" "basic mythical voices acknowledge")
-(map-sound "peon-acknowledge" "basic mythical voices acknowledge")
+(map-sound "faun-acknowledge" "basic mythical voices acknowledge")
 (map-sound "ballista-acknowledge" "catapult-ballista movement")
 (map-sound "catapult-acknowledge" "catapult-ballista movement")
 (map-sound "archer-acknowledge" "elven archer-ranger acknowledge")
@@ -695,9 +695,9 @@
 (map-sound "gul-dan-acknowledge" "death-knight-acknowledge")
 (map-sound "uther-lightbringer-acknowledge" "paladin-acknowledge")
 (map-sound "zuljin-acknowledge" "troll axethrower-berserker acknowledge")
-(map-sound "peon-with-gold-acknowledge" "basic mythical voices acknowledge")
+(map-sound "faun-with-gold-acknowledge" "basic mythical voices acknowledge")
 (map-sound "peasant-with-gold-acknowledge" "peasant-acknowledge")
-(map-sound "peon-with-wood-acknowledge" "basic mythical voices acknowledge")
+(map-sound "faun-with-wood-acknowledge" "basic mythical voices acknowledge")
 (map-sound "peasant-with-wood-acknowledge" "peasant-acknowledge")
 (map-sound "alliance-oil-tanker-full-acknowledge" "tanker acknowledge")
 (map-sound "mythical-oil-tanker-full-acknowledge" "tanker acknowledge")
@@ -721,7 +721,7 @@
 (map-sound "gnomish-submarine-ready" "ships alliance ready")
 (map-sound "giant-turtle-ready" "ships mythical ready")
     ;;  selection sounds
-(map-sound "peon-selected" "grunt-selected")
+(map-sound "faun-selected" "grunt-selected")
 (map-sound "ballista-selected" "click")
 (map-sound "catapult-selected" "click")
 (map-sound "ranger-selected" "elven archer-ranger selected")
@@ -768,9 +768,9 @@
 (map-sound "mythical-guard-tower-selected" "click")
 (map-sound "alliance-cannon-tower-selected" "click")
 (map-sound "mythical-cannon-tower-selected" "click")
-(map-sound "peon-with-gold-selected" "peon-selected")
+(map-sound "faun-with-gold-selected" "faun-selected")
 (map-sound "peasant-with-gold-selected" "peasant-selected")
-(map-sound "peon-with-wood-selected" "peon-selected")
+(map-sound "faun-with-wood-selected" "faun-selected")
 (map-sound "peasant-with-wood-selected" "peasant-selected")
 (map-sound "alliance-oil-tanker-full-selected" "alliance-oil-tanker-selected")
 (map-sound "mythical-oil-tanker-full-selected" "mythical-oil-tanker-selected")
@@ -778,7 +778,7 @@
 (map-sound "footman-attack" "sword attack")
 (map-sound "grunt-attack" "sword attack")
 (map-sound "peasant-attack" "peasant attack")
-(map-sound "peon-attack" "peasant attack")
+(map-sound "faun-attack" "peasant attack")
 (map-sound "ballista-attack" "catapult-ballista attack")
 (map-sound "catapult-attack" "catapult-ballista attack")
 (map-sound "knight-attack" "sword attack")
@@ -825,9 +825,9 @@
 ;;     (map-sound "mythical-guard-tower-attack")
 ;;     (map-sound "alliance-cannon-tower-attack")
 ;;     (map-sound "mythical-cannon-tower-attack")
-(map-sound "peon-with-gold-attack" "peasant-attack")
+(map-sound "faun-with-gold-attack" "peasant-attack")
 (map-sound "peasant-with-gold-attack" "peasant-attack")
-(map-sound "peon-with-wood-attack" "peasant-attack")
+(map-sound "faun-with-wood-attack" "peasant-attack")
 (map-sound "peasant-with-wood-attack" "peasant-attack")
 
 (map-sound "critter-help" "basic mythical voices help 1")
Index: demogame/ccl/units.ccl
diff -u demogame/ccl/units.ccl:1.1 demogame/ccl/units.ccl:1.2
--- demogame/ccl/units.ccl:1.1  Sat Jul 26 09:39:14 2003
+++ demogame/ccl/units.ccl      Mon Aug 11 01:57:05 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.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: units.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ;; Load the animations for the units.
 (load "ccl/anim.ccl" #f #t)
@@ -194,7 +194,7 @@
   'corpse '(unit-destroyed-3x3-place 0)
   'type-land
   'building
-  'gives-gold
+  'gives-resource 'gold 'can-harvest
   'sounds '(
     selected "gold-mine-selected"
     acknowledge "gold-mine-acknowledge"
@@ -216,7 +216,7 @@
   'priority 0
   'type-naval
   'building
-  'oil-patch
+  'gives-resource 'oil
   'sounds '(
     selected "oil-patch-selected"
     acknowledge "oil-patch-acknowledge"
Index: demogame/ccl/wc2.ccl
diff -u demogame/ccl/wc2.ccl:1.1 demogame/ccl/wc2.ccl:1.2
--- demogame/ccl/wc2.ccl:1.1    Sat Jul 26 09:39:14 2003
+++ demogame/ccl/wc2.ccl        Mon Aug 11 01:57:05 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: wc2.ccl,v 1.1 2003/07/26 13:39:14 martinxyz Exp $
+;;     $Id: wc2.ccl,v 1.2 2003/08/11 05:57:05 martinxyz Exp $
 
 ; FIXME: get rid of this W*rCr*ft stuff
 
@@ -116,10 +116,10 @@
 ;;=============================================================================
 ;;     Define icon mapping from original number to internal symbol
 ;;
-;;     (define-icon-wc-names peasant peon ... )
+;;     (define-icon-wc-names peasant faun ... )
 
 (define-icon-wc-names
-    'icon-peasant 'icon-peon 'icon-footman 'icon-grunt 'icon-archer
+    'icon-peasant 'icon-faun 'icon-footman 'icon-grunt 'icon-archer
     'icon-axethrower 'icon-ranger 'icon-berserker 'icon-knight 'icon-ogre
     'icon-paladin 'icon-ogre-mage 'icon-dwarves 'icon-goblin-sappers 'icon-mage
     'icon-death-knight 'icon-ballista 'icon-catapult 'icon-alliance-oil-tanker
@@ -141,9 +141,9 @@
     'icon-fortress 'icon-gryphon-aviary 'icon-dragon-roost 'icon-gold-mine
     'icon-alliance-guard-tower 'icon-alliance-cannon-tower 
'icon-mythical-guard-tower
     'icon-mythical-cannon-tower 'icon-oil-patch 'icon-dark-portal
-    'icon-circle-of-power 'icon-runestone 'icon-move-peasant 'icon-move-peon
+    'icon-circle-of-power 'icon-runestone 'icon-move-peasant 'icon-move-faun
     'icon-repair 'icon-harvest 'icon-build-basic 'icon-build-advanced
-    'icon-return-goods-peasant 'icon-return-goods-peon 'icon-cancel
+    'icon-return-goods-peasant 'icon-return-goods-faun 'icon-cancel
     'icon-alliance-wall 'icon-mythical-wall 'icon-slow 'icon-invisibility 
'icon-haste
     'icon-runes 'icon-unholy-armor 'icon-lightning 'icon-flame-shield
     'icon-fireball 'icon-touch-of-darkness 'icon-death-coil 'icon-whirlwind




reply via email to

[Prev in Thread] Current Thread [Next in Thread]