wmlunits: replaced hero-icon.png with leader-crown.png...

...for faction leaders, and fixed some problems with attacks modified
from the base_unit
This commit is contained in:
Elias Pschernig 2008-05-02 12:34:46 +00:00
parent f4cd28143b
commit 8f65cf9741
2 changed files with 33 additions and 3 deletions

View file

@ -79,6 +79,7 @@ class ImageCollector:
bases = [os.path.join(self.datadir, "core/images")]
else:
bases = [os.path.join(self.datadir, "core/images")]
bases += [os.path.join(self.datadir, "core/images/attacks")]
binpaths = self.pathes_per_campaign.get(c, [])
binpaths.reverse()
for x in binpaths:

View file

@ -341,7 +341,8 @@ class HTMLOutput:
write("<col class=\"col%d\" />" % i)
write("</colgroup>")
pic = image_collector.add_image("mainline", "misc/hero-icon.png")
pic = image_collector.add_image("mainline",
"../../../images/misc/leader-crown.png")
crownimage = os.path.join("../pics", pic)
ms = None
for row in range(len(rows)):
@ -496,6 +497,8 @@ class HTMLOutput:
write(html_header % {"path" : "../"})
self.write_navbar()
base_unit = self.wesnoth.get_base_unit(unit)
# Write unit name, picture and description.
uid = unit.get_text_val("id")
uname = self.wesnoth.get_unit_value(unit, "name")
@ -590,15 +593,41 @@ class HTMLOutput:
# Write info about attacks.
write("<table class=\"unitinfo\">\n")
for attack in unit.get_all("attack"):
def copy_attributes(copy_from, copy_to):
for c in copy_from.children():
if isinstance(c, wmldata.DataText):
copy_to.set_text_val(c.name, c.data)
# Use attacks of base_units as base, if we have one.
attacks = []
if base_unit:
attacks = base_unit.get_all("attack")
for i, attack in enumerate(unit.get_all("attack")):
aid = attack.get_text_val("name")
if aid:
for already in attacks:
if already.get_text_val("name") == aid:
copy_attributes(attack, already)
break
else:
attacks.append(attack)
else:
copy_attributes(attack, attacks[i])
for attack in attacks:
write("<tr>")
aid = attack.get_text_val("name")
aname = attack.get_text_val("description")
icon = attack.get_text_val("icon")
if not icon:
icon = "attacks/%s.png" % aid
if not icon:
sys.stderr.write("Warning: " + uid + " has attack icon.\n")
picname = image_collector.add_image(unit.campaign, icon)
icon = os.path.join("../pics", picname)
write("<td><img src=\"%s\" alt=\"(image)\"/></td>" % icon)