# HG changeset patch # User IBBoard # Date 1257785367 0 # Node ID e8e9026dd4eab2237894863f5a64de214e41fd67 # Parent 897c53d5a8aac384a6d976a26e5a44a39b75ee93 Fixes #216: Export unit abilities in to HTML * Add export of ability names in HTML * Restructure the equipment export code so that there is some degree of differentiation between equipments and abilities Re #213: Add abilities to units * Add initial stub "Abilities" property to unit that returns required abilities diff -r 897c53d5a8aa -r e8e9026dd4ea api/Exporters/WarFoundryHtmlExporter.cs --- a/api/Exporters/WarFoundryHtmlExporter.cs Mon Nov 09 12:30:05 2009 +0000 +++ b/api/Exporters/WarFoundryHtmlExporter.cs Mon Nov 09 16:49:27 2009 +0000 @@ -143,20 +143,50 @@ } StringBuilder sb = new StringBuilder(); - bool addSeparator = false; - - foreach (UnitEquipmentItem equip in unit.GetEquipment()) + UnitEquipmentItem[] unitEquipment = unit.GetEquipment (); + + if (unitEquipment.Length > 0) { - if (!addSeparator) + bool addSeparator = false; + + foreach (UnitEquipmentItem equip in unitEquipment) { - addSeparator = true; + if (!addSeparator) + { + addSeparator = true; + } + else + { + sb.Append(", "); + } + + sb.Append(Translation.GetTranslation("armyHtmlExportEquipAmountRatio", "{0} for {1}", equip.Name, unit.GetEquipmentAmountString(equip))); } - else + + sb.Append(". "); + } + + ICollection abilities = unit.Abilities; + + if (abilities.Count > 0) + { + bool addSeparator = false; + + foreach (Ability ability in abilities) { - sb.Append(", "); + if (!addSeparator) + { + addSeparator = true; + } + else + { + sb.Append(", "); + } + + sb.Append(ability.Name); } - - sb.Append(Translation.GetTranslation("armyHtmlExportEquipAmountRatio", "{0} for {1}", equip.Name, unit.GetEquipmentAmountString(equip))); + + sb.Append(". "); } XmlElement notes = doc.CreateElement("td"); diff -r 897c53d5a8aa -r e8e9026dd4ea api/Objects/Unit.cs --- a/api/Objects/Unit.cs Mon Nov 09 12:30:05 2009 +0000 +++ b/api/Objects/Unit.cs Mon Nov 09 16:49:27 2009 +0000 @@ -562,6 +562,17 @@ return amount; } + + /// + /// Default stub implementation of getting the unit's abilities - defaults to just the unit type's required abilities until we get a way to modify them + /// + public ICollection Abilities + { + get + { + return UnitType.GetRequiredAbilities(); + } + } } }