wesnoth-cvs-commits
[Top][All Lists]
Advanced

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

[Wesnoth-cvs-commits] wesnoth src/actions.cpp src/actions.hpp src/uni...


From: John McNabb
Subject: [Wesnoth-cvs-commits] wesnoth src/actions.cpp src/actions.hpp src/uni...
Date: Tue, 29 Mar 2005 12:41:10 -0500

CVSROOT:        /cvsroot/wesnoth
Module name:    wesnoth
Branch:         
Changes by:     John McNabb <address@hidden>    05/03/29 17:41:09

Modified files:
        src            : actions.cpp actions.hpp unit_types.cpp 
                         unit_types.hpp 
        data/units     : Bowman.cfg Drake_Burner.cfg Drake_Clasher.cfg 
                         Drake_Fighter.cfg Drake_Fire.cfg 
                         Drake_Flameheart.cfg Drake_Flare.cfg 
                         Drake_Gladiator.cfg Drake_Glider.cfg 
                         Drake_Inferno.cfg Drake_Sky.cfg 
                         Drake_Slasher.cfg Drake_Warrior.cfg 
                         Elvish_Archer.cfg Elvish_Avenger.cfg 
                         Elvish_Marksman.cfg Elvish_Ranger.cfg 
                         Elvish_Sharpshooter.cfg Longbowman.cfg 
                         Master_Bowman.cfg Orcish_Archer.cfg 
                         Orcish_Crossbowman.cfg Poacher.cfg Skeleton.cfg 
                         Trapper.cfg Walking_Corpse.cfg Wall_Guard.cfg 

Log message:
        changelog

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/actions.cpp.diff?tr1=1.202&tr2=1.203&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/actions.hpp.diff?tr1=1.49&tr2=1.50&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/unit_types.cpp.diff?tr1=1.95&tr2=1.96&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/unit_types.hpp.diff?tr1=1.66&tr2=1.67&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Bowman.cfg.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Burner.cfg.diff?tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Clasher.cfg.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Fighter.cfg.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Fire.cfg.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Flameheart.cfg.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Flare.cfg.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Gladiator.cfg.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Glider.cfg.diff?tr1=1.17&tr2=1.18&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Inferno.cfg.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Sky.cfg.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Slasher.cfg.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Drake_Warrior.cfg.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Elvish_Archer.cfg.diff?tr1=1.20&tr2=1.21&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Elvish_Avenger.cfg.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Elvish_Marksman.cfg.diff?tr1=1.21&tr2=1.22&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Elvish_Ranger.cfg.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Elvish_Sharpshooter.cfg.diff?tr1=1.20&tr2=1.21&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Longbowman.cfg.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Master_Bowman.cfg.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Orcish_Archer.cfg.diff?tr1=1.20&tr2=1.21&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Orcish_Crossbowman.cfg.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Poacher.cfg.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Skeleton.cfg.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Trapper.cfg.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Walking_Corpse.cfg.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/data/units/Wall_Guard.cfg.diff?tr1=1.5&tr2=1.6&r1=text&r2=text

Patches:
Index: wesnoth/data/units/Bowman.cfg
diff -u wesnoth/data/units/Bowman.cfg:1.7 wesnoth/data/units/Bowman.cfg:1.8
--- wesnoth/data/units/Bowman.cfg:1.7   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Bowman.cfg       Tue Mar 29 17:41:09 2005
@@ -12,6 +12,7 @@
 level=1
 alignment=lawful
 advanceto=Longbowman
+undead_variation=archer
 cost=15
 usage=archer
 unit_description= _ "Immersed from childhood in the ways of archery, the young 
Bowmen are the most common ranged combatants in Wesnothian armies. They do not 
undergo as rigorous a training as the spearman or heavy infantry, because their 
battle tactic requires more finess than brute strength."
Index: wesnoth/data/units/Drake_Burner.cfg
diff -u wesnoth/data/units/Drake_Burner.cfg:1.22 
wesnoth/data/units/Drake_Burner.cfg:1.23
--- wesnoth/data/units/Drake_Burner.cfg:1.22    Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Burner.cfg Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Burner
 name= _ "Drake Burner"
@@ -13,6 +12,7 @@
 level=1
 alignment=neutral
 advanceto=Fire Drake,Drake Flare
+undead_variation=winged
 cost=21
 usage=archer
 unit_description= _ "Not only can a Drake Burner wield its claws with deadly 
skill, but it still possesses the fire-breathing abilities of its remote 
ancestors. Enemies would be well advised to keep their distance. The most 
skilled Burners will often go on to become Fire Drakes who seek to master their 
internal fire, or Drake Flares who aspire to be leaders of their kind."
@@ -69,4 +69,4 @@
                        image_diagonal="projectiles/fireball-nw.png"
                [/missile_frame]
        [/attack]
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Clasher.cfg
diff -u wesnoth/data/units/Drake_Clasher.cfg:1.16 
wesnoth/data/units/Drake_Clasher.cfg:1.17
--- wesnoth/data/units/Drake_Clasher.cfg:1.16   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Clasher.cfg        Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Clasher
 name= _ "Drake Clasher"
@@ -13,6 +12,7 @@
 level=1
 alignment=neutral
 advanceto=Drake Gladiator,Drake Slasher
+undead_variation=winged
 cost=19
 usage=fighter
 unit_description= _ "With their stumpy vestigial wings and inability to use 
their great internal fire as a weapon some may think that these Drakes are 
disadvantaged; they would be mistaken. To compensate they have become great 
craftsmen that can fabricate weapons with emerald edges, and wear heavy armour. 
The Clashers' weapons of choice are the sword and spear, which they use to 
great effect. The greatest Clashers can become Drake Gladiators or Slashers."
Index: wesnoth/data/units/Drake_Fighter.cfg
diff -u wesnoth/data/units/Drake_Fighter.cfg:1.19 
wesnoth/data/units/Drake_Fighter.cfg:1.20
--- wesnoth/data/units/Drake_Fighter.cfg:1.19   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Fighter.cfg        Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Fighter
 name= _ "Drake Fighter"
@@ -13,6 +12,7 @@
 level=1
 alignment=neutral
 advanceto=Drake Warrior
+undead_variation=winged
 cost=17
 usage=fighter
 unit_description= _ "Drake Fighters wield curved scimitars with deadly skill, 
and possess the fire breathing skills of their ancestors. The most skilled 
Fighters go on to join the ranks of the elite Drake Warriors."
@@ -74,4 +74,4 @@
        [/missile_frame]
 [/attack]
 
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Fire.cfg
diff -u wesnoth/data/units/Drake_Fire.cfg:1.18 
wesnoth/data/units/Drake_Fire.cfg:1.19
--- wesnoth/data/units/Drake_Fire.cfg:1.18      Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Fire.cfg   Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Fire Drake
 name= _ "Fire Drake"
@@ -13,6 +12,7 @@
 level=2
 alignment=neutral
 advanceto=Inferno Drake
+undead_variation=winged
 cost=37
 usage=archer
 unit_description= _ "The great fire drakes equip themselves with silver plated 
armour to defend themselves from serious injuries. Although their melee 
technique is primitive, they have mastered their internal fire and are to be 
feared. The most ferocious Fire Drakes become the flying configurations known 
as Drake Infernos."
@@ -65,4 +65,4 @@
        [/missile_frame]
 [/attack]
 
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Flameheart.cfg
diff -u wesnoth/data/units/Drake_Flameheart.cfg:1.18 
wesnoth/data/units/Drake_Flameheart.cfg:1.19
--- wesnoth/data/units/Drake_Flameheart.cfg:1.18        Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Flameheart.cfg     Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Flameheart
 name= _ "Drake Flameheart"
@@ -15,6 +14,7 @@
 alignment=neutral
 ability=leadership
 advanceto=null
+undead_variation=winged
 cost=65
 usage=mixed fighter
 unit_description= _ "There is an old saying that, 'The generals in Drake 
armies have fire in their veins instead of blood'. Nobody would doubt the truth 
in that saying after facing these towering creatures of sheer devastation... 
However, between their crackling flames and their wicked swords, few who meet 
them survive to confirm this saying."
@@ -75,4 +75,4 @@
                image_diagonal="projectiles/fireball-big-nw.png"
        [/missile_frame]
 [/attack]
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Flare.cfg
diff -u wesnoth/data/units/Drake_Flare.cfg:1.16 
wesnoth/data/units/Drake_Flare.cfg:1.17
--- wesnoth/data/units/Drake_Flare.cfg:1.16     Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Flare.cfg  Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Flare
 name= _ "Drake Flare"
@@ -15,6 +14,7 @@
 level=2
 alignment=neutral
 advanceto=Drake Flameheart
+undead_variation=winged
 cost=37
 usage=mixed fighter
 unit_description= _ "Drake Flares aspire to be leaders of their kind. While 
their mastery of their internal fire is not as great as some of their kin these 
Drakes have broader aspirations. They are skilled with swords, and they aspire 
to be the greatest of their kind."
@@ -65,4 +65,4 @@
                image_diagonal="projectiles/fireball-nw.png"
        [/missile_frame]
 [/attack]
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Gladiator.cfg
diff -u wesnoth/data/units/Drake_Gladiator.cfg:1.12 
wesnoth/data/units/Drake_Gladiator.cfg:1.13
--- wesnoth/data/units/Drake_Gladiator.cfg:1.12 Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Gladiator.cfg      Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Gladiator
 name= _ "Drake Gladiator"
@@ -14,6 +13,7 @@
 alignment=neutral
 advanceto=null
 #advanceto=Drake Omnirage
+undead_variation=winged
 cost=35
 usage=fighter
 unit_description= _ "With their stumpy vestigial wings and inability to use 
their great internal fire as a weapon some may think that these Drakes are 
disadvantaged, they would be mistaken. Drakes Gladiators protect their 
vulnerable hides with thick brass armour and they arm themselves with as many 
emerald edged weapons as possible to fend off whatever opponents may await 
them."
@@ -76,4 +76,4 @@
        [/sound]
 [/attack]
 
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Glider.cfg
diff -u wesnoth/data/units/Drake_Glider.cfg:1.17 
wesnoth/data/units/Drake_Glider.cfg:1.18
--- wesnoth/data/units/Drake_Glider.cfg:1.17    Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Glider.cfg Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Drake Glider
 name= _ "Drake Glider"
@@ -13,7 +12,7 @@
 level=1
 alignment=neutral
 advanceto=Sky Drake
-#advanceto=null
+undead_variation=winged
 cost=15
 usage=scout
 unit_description= _ "Drake Gliders wear as little armour as possible so they 
can quickly escape their foes when they leave their caves. These Drakes are 
competent fighters, possessing the internal fire common to many of their kin. 
Gliders can also effectively use their speed to viciously slam their opponents 
into submission. The best gliders can look forward to being accepted into the 
ranks of the high flying Sky Drakes."
Index: wesnoth/data/units/Drake_Inferno.cfg
diff -u wesnoth/data/units/Drake_Inferno.cfg:1.14 
wesnoth/data/units/Drake_Inferno.cfg:1.15
--- wesnoth/data/units/Drake_Inferno.cfg:1.14   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Inferno.cfg        Tue Mar 29 17:41:09 2005
@@ -1,4 +1,3 @@
-
 [unit]
 id=Inferno Drake
 name= _ "Inferno Drake"
@@ -13,6 +12,7 @@
 level=3
 alignment=neutral
 advanceto=null
+undead_variation=winged
 cost=65
 usage=archer
 unit_description= _ "The flying configurations known as Drake Infernos wear 
massive gold armour that is almost impenetrable. These drakes are also 
practically immune to fire as they have adjusted to hiding in the cones of 
volcanoes. Drake Infernos have utterly mastered their internal fire, and rival 
their predecessors the Dragons in their ability to use it."
@@ -65,4 +65,4 @@
        [/missile_frame]
 [/attack]
 
-[/unit]
\ No newline at end of file
+[/unit]
Index: wesnoth/data/units/Drake_Sky.cfg
diff -u wesnoth/data/units/Drake_Sky.cfg:1.18 
wesnoth/data/units/Drake_Sky.cfg:1.19
--- wesnoth/data/units/Drake_Sky.cfg:1.18       Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Sky.cfg    Tue Mar 29 17:41:09 2005
@@ -13,6 +13,7 @@
 alignment=neutral
 #advanceto=Hurricane Drake,Tornado drake
 advanceto=null
+undead_variation=winged
 cost=25
 usage=scout
 unit_description= _ "Sky drakes are truly the kings of the sky. Using their 
momentum and fire breath as weapons these drakes are the bane of many. They can 
swiftly swoop down on prey, and are usually long gone before anyone can stop 
them."
Index: wesnoth/data/units/Drake_Slasher.cfg
diff -u wesnoth/data/units/Drake_Slasher.cfg:1.14 
wesnoth/data/units/Drake_Slasher.cfg:1.15
--- wesnoth/data/units/Drake_Slasher.cfg:1.14   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Slasher.cfg        Tue Mar 29 17:41:09 2005
@@ -13,6 +13,7 @@
 level=2 
 alignment=neutral 
 advanceto=null 
+undead_variation=winged
 cost=35
 usage=fighter 
 unit_description= _ "With their stumpy vestigial wings and inability to use 
their great internal fire as a weapon some may think that these Drakes are 
disadvantaged, they would be mistaken. To compensate they have become great 
craftsmen that can fabricate weapons with emerald edges, and wear heavy armour. 
The Slashers' weapon of choice is the halberd, which they use to great effect."
Index: wesnoth/data/units/Drake_Warrior.cfg
diff -u wesnoth/data/units/Drake_Warrior.cfg:1.23 
wesnoth/data/units/Drake_Warrior.cfg:1.24
--- wesnoth/data/units/Drake_Warrior.cfg:1.23   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Drake_Warrior.cfg        Tue Mar 29 17:41:09 2005
@@ -13,6 +13,7 @@
 level=2
 alignment=neutral
 advanceto=null
+undead_variation=winged
 cost=31
 usage=fighter
 unit_description= _ "Drake Warriors wield swords with great skill, and possess 
the fire breathing skills of their ancestors."
Index: wesnoth/data/units/Elvish_Archer.cfg
diff -u wesnoth/data/units/Elvish_Archer.cfg:1.20 
wesnoth/data/units/Elvish_Archer.cfg:1.21
--- wesnoth/data/units/Elvish_Archer.cfg:1.20   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Elvish_Archer.cfg        Tue Mar 29 17:41:09 2005
@@ -14,6 +14,7 @@
 level=1
 alignment=neutral
 advanceto=Elvish Ranger,Elvish Marksman
+undead_variation=archer
 cost=18
 usage=archer
 unit_description= _ "Elvish Archers are trained from youth in archery, and so 
skilled in long-range combat. Able to fire many arrows quickly and accurately, 
these Archers make up a large portion of the Elvish military."
Index: wesnoth/data/units/Elvish_Avenger.cfg
diff -u wesnoth/data/units/Elvish_Avenger.cfg:1.23 
wesnoth/data/units/Elvish_Avenger.cfg:1.24
--- wesnoth/data/units/Elvish_Avenger.cfg:1.23  Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Elvish_Avenger.cfg       Tue Mar 29 17:41:09 2005
@@ -14,6 +14,7 @@
 level=3
 alignment=neutral
 advanceto=null
+undead_variation=archer
 cost=80
 ability=ambush
 usage=mixed fighter
Index: wesnoth/data/units/Elvish_Marksman.cfg
diff -u wesnoth/data/units/Elvish_Marksman.cfg:1.21 
wesnoth/data/units/Elvish_Marksman.cfg:1.22
--- wesnoth/data/units/Elvish_Marksman.cfg:1.21 Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Elvish_Marksman.cfg      Tue Mar 29 17:41:09 2005
@@ -14,6 +14,7 @@
 level=2
 alignment=neutral
 advanceto=Elvish Sharpshooter
+undead_variation=archer
 cost=60
 usage=archer
 unit_description= _ "Elvish Marksman are expert in use of the bow. Their skill 
guarantees them a 60% chance to hit enemies, even those hidden in difficult 
terrain. This great skill with the bow compensates for their lack of skill in 
melee combat and lesser speed."
Index: wesnoth/data/units/Elvish_Ranger.cfg
diff -u wesnoth/data/units/Elvish_Ranger.cfg:1.23 
wesnoth/data/units/Elvish_Ranger.cfg:1.24
--- wesnoth/data/units/Elvish_Ranger.cfg:1.23   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Elvish_Ranger.cfg        Tue Mar 29 17:41:09 2005
@@ -14,6 +14,7 @@
 level=2
 alignment=neutral
 advanceto=Elvish Avenger
+undead_variation=archer
 cost=40
 usage=mixed fighter
 ability=ambush
Index: wesnoth/data/units/Elvish_Sharpshooter.cfg
diff -u wesnoth/data/units/Elvish_Sharpshooter.cfg:1.20 
wesnoth/data/units/Elvish_Sharpshooter.cfg:1.21
--- wesnoth/data/units/Elvish_Sharpshooter.cfg:1.20     Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Elvish_Sharpshooter.cfg  Tue Mar 29 17:41:09 2005
@@ -14,6 +14,7 @@
 level=3
 alignment=neutral
 advanceto=null
+undead_variation=archer
 cost=90
 usage=archer
 unit_description= _ "The most elite archers in all of Wesnoth, Elvish 
Sharpshooters are incredibly accurate, guaranteed a 60% chance to hit when 
attacking, even when firing very quickly. Sharpshooters are excellent at 
picking off entrenched enemies."
Index: wesnoth/data/units/Longbowman.cfg
diff -u wesnoth/data/units/Longbowman.cfg:1.5 
wesnoth/data/units/Longbowman.cfg:1.6
--- wesnoth/data/units/Longbowman.cfg:1.5       Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Longbowman.cfg   Tue Mar 29 17:41:09 2005
@@ -13,6 +13,7 @@
 level=2
 alignment=lawful
 advanceto=Master Bowman
+undead_variation=archer
 cost=32
 usage=archer
 unit_description= _ "Longbowmen carry the huge specialized bows that they have 
learned to handle after years of combat. Their missiles can pierce even armor."
Index: wesnoth/data/units/Master_Bowman.cfg
diff -u wesnoth/data/units/Master_Bowman.cfg:1.9 
wesnoth/data/units/Master_Bowman.cfg:1.10
--- wesnoth/data/units/Master_Bowman.cfg:1.9    Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Master_Bowman.cfg        Tue Mar 29 17:41:09 2005
@@ -12,6 +12,7 @@
 level=3
 alignment=lawful
 advanceto=null
+undead_variation=archer
 cost=45
 usage=archer
 unit_description= _ "Master Bowmen have reached the highest levels of skill 
with the bow that any human can hope to attain. Their power with this deadly 
weapon is surpassed only by that of the Elves."
Index: wesnoth/data/units/Orcish_Archer.cfg
diff -u wesnoth/data/units/Orcish_Archer.cfg:1.20 
wesnoth/data/units/Orcish_Archer.cfg:1.21
--- wesnoth/data/units/Orcish_Archer.cfg:1.20   Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Orcish_Archer.cfg        Tue Mar 29 17:41:09 2005
@@ -11,6 +11,7 @@
 level=1
 alignment=chaotic
 advanceto=Orcish Crossbowman
+undead_variation=archer
 cost=12
 usage=archer
 unit_description= _ "Orcish Archers are considered by many of their fellow 
orcs to be a lesser caste of warrior, for attacking their enemies from a 
distance. However, since most orcs won't learn how to handle a bow, he is an 
indispensable part of the orcish army."
Index: wesnoth/data/units/Orcish_Crossbowman.cfg
diff -u wesnoth/data/units/Orcish_Crossbowman.cfg:1.11 
wesnoth/data/units/Orcish_Crossbowman.cfg:1.12
--- wesnoth/data/units/Orcish_Crossbowman.cfg:1.11      Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Orcish_Crossbowman.cfg   Tue Mar 29 17:41:09 2005
@@ -11,6 +11,7 @@
 level=2
 alignment=chaotic
 advanceto=null
+undead_variation=archer
 cost=24
 usage=archer
 unit_description= _ "Orcish Crossbowmen try to compensate for their lack of 
skill with the raw power of their weapon. While they are not as effective as 
the Elvish Marksmen in long-range combat, they are sturdier and can handle 
themselves a little better than the Elves in close combat."
Index: wesnoth/data/units/Poacher.cfg
diff -u wesnoth/data/units/Poacher.cfg:1.10 wesnoth/data/units/Poacher.cfg:1.11
--- wesnoth/data/units/Poacher.cfg:1.10 Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Poacher.cfg      Tue Mar 29 17:41:09 2005
@@ -11,6 +11,7 @@
 level=1
 alignment=chaotic
 advanceto=Trapper
+undead_variation=archer
 cost=14
 usage=archer
 unit_description= _ "Poachers rely on their hunting experience and are most 
valuable at night and in forests and swamps."
Index: wesnoth/data/units/Skeleton.cfg
diff -u wesnoth/data/units/Skeleton.cfg:1.16 
wesnoth/data/units/Skeleton.cfg:1.17
--- wesnoth/data/units/Skeleton.cfg:1.16        Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Skeleton.cfg     Tue Mar 29 17:41:09 2005
@@ -54,4 +54,16 @@
                sound=sword-swish.wav
                [/sound]
        [/attack]
+
+[variation]
+variation_name=archer
+id=Skeleton
+name= _ "Skeleton Archer"
+race=undead
+experience=0
+level=0
+alignment=chaotic
+advanceto=Skeleton Archer
+[/variation]
+
 [/unit]
Index: wesnoth/data/units/Trapper.cfg
diff -u wesnoth/data/units/Trapper.cfg:1.9 wesnoth/data/units/Trapper.cfg:1.10
--- wesnoth/data/units/Trapper.cfg:1.9  Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Trapper.cfg      Tue Mar 29 17:41:09 2005
@@ -11,6 +11,7 @@
 level=2
 alignment=chaotic
 advanceto=null
+undead_variation=archer
 cost=26
 usage=archer
 unit_description= _ "Trappers usually work supplying food for bandits and 
outlaws. Their hunting experience makes them most valuable at night and in 
forests and swamps."
Index: wesnoth/data/units/Walking_Corpse.cfg
diff -u wesnoth/data/units/Walking_Corpse.cfg:1.19 
wesnoth/data/units/Walking_Corpse.cfg:1.20
--- wesnoth/data/units/Walking_Corpse.cfg:1.19  Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Walking_Corpse.cfg       Tue Mar 29 17:41:09 2005
@@ -32,4 +32,44 @@
                sound=zombie-attack.wav
                [/sound]
        [/attack]
+
+[variation]
+variation_name=winged
+id=Walking Corpse
+name= _ "Winged Corpse"
+race=undead
+
+image=undead-zombie.png
+image_defensive=undead-zombie-defend.png
+hitpoints=18
+movement_type=undeadfoot
+movement=4
+experience=24
+level=0
+alignment=chaotic
+advanceto=null
+cost=5
+usage=fighter
+unit_description= _ "Winged Corpses are the bodies of dead drakes, re-animated 
by dark magic. Although weak in combat, these zombies can spread their curse to 
those they kill, increasing the army of undead."
+get_hit_sound=zombie-hit.wav
+       [attack]
+       name=fist
+       type=impact
+       range=short
+       damage=5
+       number=2
+       special=plague
+               [frame]
+               begin=-200
+               end=100
+               image=undead-zombie-attack.png  
+               [/frame]
+               [sound]
+               time=-200
+               sound=zombie-attack.wav
+               [/sound]
+       [/attack]
+[/variation]
+
 [/unit]
+
Index: wesnoth/data/units/Wall_Guard.cfg
diff -u wesnoth/data/units/Wall_Guard.cfg:1.5 
wesnoth/data/units/Wall_Guard.cfg:1.6
--- wesnoth/data/units/Wall_Guard.cfg:1.5       Sun Mar 27 23:06:16 2005
+++ wesnoth/data/units/Wall_Guard.cfg   Tue Mar 29 17:41:09 2005
@@ -26,6 +26,7 @@
 level=2
 alignment=lawful
 advanceto=null
+undead_variation=archer
 cost=32
 ability=skirmisher,regenerates
 usage=archer
Index: wesnoth/src/actions.cpp
diff -u wesnoth/src/actions.cpp:1.202 wesnoth/src/actions.cpp:1.203
--- wesnoth/src/actions.cpp:1.202       Sun Mar 27 23:06:16 2005
+++ wesnoth/src/actions.cpp     Tue Mar 29 17:41:08 2005
@@ -1,4 +1,4 @@
-/* $Id: actions.cpp,v 1.202 2005/03/27 23:06:16 gruikya Exp $ */
+/* $Id: actions.cpp,v 1.203 2005/03/29 17:41:08 darthfool Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -265,8 +265,15 @@
        }
 
        static const std::string plague_string("plague");
-       res.attacker_plague = !d->second.type().not_living() && 
(res.attacker_special == plague_string)
-                             && !map.is_village(defender);
+       res.attacker_plague = !d->second.type().not_living() && 
+         (res.attacker_special.substr(0,6) == plague_string) && 
+         strcmp(d->second.type().undead_variation().c_str(),"null") && 
+         !map.is_village(defender);
+       if(res.attacker_special.size()>8){ //plague(type) used
+         
res.attacker_plague_type=res.attacker_special.substr(7,res.attacker_special.size()-8);
+       }else{//plague type is that of attacker
+         res.attacker_plague_type= a->second.type().id();
+       }
        res.defender_plague = false;
 
        static const std::string slow_string("slow");
@@ -403,8 +410,16 @@
                        res.amount_defender_drains = 0;
                }
 
-               res.defender_plague = !a->second.type().not_living() && 
(res.defender_special == plague_string)
-                                     && !map.is_village(attacker);
+               res.defender_plague = !a->second.type().not_living() && 
+                 (res.defender_special.substr(0,6) == plague_string) &&
+                 strcmp(a->second.type().undead_variation().c_str(),"null") &&
+                 !map.is_village(attacker);
+               if(res.defender_special.size()>8){ //plague(type) used
+                       
res.defender_plague_type=res.defender_special.substr(7,res.defender_special.size()-8);
+               }else{//plague type is that of attacker
+                       res.defender_plague_type= d->second.type().id();
+               }
+
                res.defender_slows = (defend.special() == slow_string);
 
                static const std::string first_strike = "firststrike";
@@ -655,7 +670,7 @@
                                }
                        }
 
-                       if(dies) {
+                       if(dies) {//attacker kills defender
                                attackerxp = 
game_config::kill_experience*d->second.type().level();
                                if(d->second.type().level() == 0)
                                        attackerxp = 
game_config::kill_experience/2;
@@ -667,6 +682,7 @@
 
                                gamemap::location loc = d->first;
                                gamemap::location attacker_loc = a->first;
+                               std::string undead_variation = 
d->second.type().undead_variation();
                                const int defender_side = d->second.side();
                                LOG_NG << "firing die event\n";
                                game_events::fire("die",loc,a->first);
@@ -678,12 +694,29 @@
                                        d = units.end();
                                }
 
-                               //plague units make clones of themselves on the 
target hex
+                               //plague units make new units on the target hex
                                if(stats.attacker_plague) {
-                                       a = units.find(attacker_loc);
-                                       if(a != units.end()) {
-                                               
units.insert(std::pair<gamemap::location,unit>(loc,a->second));
-                                               gui.draw_tile(loc.x,loc.y);
+                                       a = units.find(attacker_loc); 
+                                       
game_data::unit_type_map::const_iterator reanimitor;
+                                       LOG_NG<<"trying to reanimate 
"<<stats.attacker_plague_type<<std::endl;
+                                       reanimitor = 
info.unit_types.find(stats.attacker_plague_type);
+                                       LOG_NG<<"found unit 
type:"<<reanimitor->second.id()<<std::endl;
+                                       
+                                       if(reanimitor != info.unit_types.end()) 
{
+                                              unit 
newunit=unit(&reanimitor->second,a->second.side(),false,true);
+                                              //apply variation                
                               
+                                              
if(strcmp(undead_variation.c_str(),"null")){
+                                                config mod;
+                                                config& 
variation=mod.add_child("effect");
+                                                
variation["apply_to"]="variation";
+                                                
variation["name"]=undead_variation;
+                                                
newunit.add_modification("variation",mod);
+                                              }
+
+                                              
units.insert(std::pair<gamemap::location,unit>(loc,newunit));
+                                              gui.draw_tile(loc.x,loc.y);
+                                       }else{
+                                              LOG_NG<<"unit not 
reanimated"<<std::endl;
                                        }
                                }
                                
recalculate_fog(map,state,info,units,teams,defender_side-1);
@@ -801,7 +834,7 @@
                                }
                        }
                                
-                       if(dies) {
+                       if(dies) {//defender kills attacker
                                defenderxp = 
game_config::kill_experience*a->second.type().level();
                                if(a->second.type().level() == 0)
                                        defenderxp = 
game_config::kill_experience/2;
@@ -811,6 +844,7 @@
                                defenderxp = 0;
                                attackerxp = 0;
 
+                               std::string undead_variation = 
a->second.type().undead_variation();
                                gamemap::location loc = a->first;
                                gamemap::location defender_loc = d->first;
                                const int attacker_side = a->second.side();
@@ -823,12 +857,29 @@
                                        a = units.end();
                                }
 
-                               //plague units make clones of themselves on the 
target hex.
+                               //plague units make new units on the target hex.
                                if(stats.defender_plague) {
-                                       d = units.find(defender_loc);
-                                       if(d != units.end()) {
-                                               
units.insert(std::pair<gamemap::location,unit>(loc,d->second));
-                                               gui.draw_tile(loc.x,loc.y);
+                                       d = units.find(defender_loc); 
+                                       
game_data::unit_type_map::const_iterator reanimitor;
+                                       LOG_NG<<"trying to reanimate 
"<<stats.defender_plague_type<<std::endl;
+                                       reanimitor = 
info.unit_types.find(stats.defender_plague_type);
+                                       LOG_NG<<"found unit 
type:"<<reanimitor->second.id()<<std::endl;
+                                       
+                                       if(reanimitor != info.unit_types.end()) 
{
+                                              unit 
newunit=unit(&reanimitor->second,d->second.side(),false,true);
+                                              //apply variation
+                                              
if(strcmp(undead_variation.c_str(),"null")){
+                                                config mod;
+                                                config& 
variation=mod.add_child("effect");
+                                                
variation["apply_to"]="variation";
+                                                
variation["name"]=undead_variation;
+                                                
newunit.add_modification("variation",mod);
+                                              }
+
+                                              
units.insert(std::pair<gamemap::location,unit>(loc,newunit));
+                                              gui.draw_tile(loc.x,loc.y);
+                                       }else{
+                                              LOG_NG<<"unit not 
reanimated"<<std::endl;
                                        }
                                }
                                gui.recalculate_minimap();
Index: wesnoth/src/actions.hpp
diff -u wesnoth/src/actions.hpp:1.49 wesnoth/src/actions.hpp:1.50
--- wesnoth/src/actions.hpp:1.49        Wed Mar  9 20:48:42 2005
+++ wesnoth/src/actions.hpp     Tue Mar 29 17:41:09 2005
@@ -1,4 +1,4 @@
-/* $Id: actions.hpp,v 1.49 2005/03/09 20:48:42 ydirson Exp $ */
+/* $Id: actions.hpp,v 1.50 2005/03/29 17:41:09 darthfool Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -55,6 +55,7 @@
        int ndefends, nattacks;
        int attack_with, defend_with;
        bool attacker_plague, defender_plague;
+        std::string attacker_plague_type, defender_plague_type;
        bool attacker_slows, defender_slows;
        bool to_the_death, defender_strikes_first;
        std::string attacker_special, defender_special;
Index: wesnoth/src/unit_types.cpp
diff -u wesnoth/src/unit_types.cpp:1.95 wesnoth/src/unit_types.cpp:1.96
--- wesnoth/src/unit_types.cpp:1.95     Sun Mar 27 23:06:17 2005
+++ wesnoth/src/unit_types.cpp  Tue Mar 29 17:41:09 2005
@@ -1,4 +1,4 @@
-/* $Id: unit_types.cpp,v 1.95 2005/03/27 23:06:17 gruikya Exp $ */
+/* $Id: unit_types.cpp,v 1.96 2005/03/29 17:41:09 darthfool Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -900,6 +900,12 @@
        return cfg_.get_children("advancement");
 }
 
+const std::string& unit_type::undead_variation() const
+{
+        return cfg_["undead_variation"];
+}
+
+
 
 const std::string& unit_type::usage() const
 {
Index: wesnoth/src/unit_types.hpp
diff -u wesnoth/src/unit_types.hpp:1.66 wesnoth/src/unit_types.hpp:1.67
--- wesnoth/src/unit_types.hpp:1.66     Sun Mar 27 23:06:17 2005
+++ wesnoth/src/unit_types.hpp  Tue Mar 29 17:41:09 2005
@@ -1,4 +1,4 @@
-/* $Id: unit_types.hpp,v 1.66 2005/03/27 23:06:17 gruikya Exp $ */
+/* $Id: unit_types.hpp,v 1.67 2005/03/29 17:41:09 darthfool Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -165,6 +165,8 @@
 
        const unit_type& get_gender_unit_type(unit_race::GENDER gender) const;
        const unit_type& get_variation(const std::string& name) const;
+        //info on the type of unit that the unit reanimates as
+        const std::string& undead_variation() const;
 
        int num_traits() const;
 




reply via email to

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