Mercurial > repos > IBDev-IBBoard.WarFoundry.API
diff api/Objects/UnitEquipmentItem.cs @ 92:729d9e54162c
Re #111: "Replace" button doesn't always enable
* Implement better fix:
* Make UnitEquipmentItem ID based on unit type ID and equipment item ID
* Make UnitEquipmentItem require UnitType at construction again
* Remove setter from EquipmentItemForUnit
* Make AddEquipmentItem method internal so that the UnitEquipmentItem and not the factory is responsible for setting up the reverse link
no-open-ticket
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Fri, 07 Aug 2009 19:49:21 +0000 |
parents | 46ad6f478203 |
children | 49a83020174e |
line wrap: on
line diff
--- a/api/Objects/UnitEquipmentItem.cs Fri Aug 07 19:22:08 2009 +0000 +++ b/api/Objects/UnitEquipmentItem.cs Fri Aug 07 19:49:21 2009 +0000 @@ -25,20 +25,36 @@ private string mutexGroup; private UnitType unitType; - public UnitEquipmentItem(EquipmentItem equipmentItem) + public UnitEquipmentItem(EquipmentItem equipmentItem, UnitType equipmentFor) { item = equipmentItem; + unitType = equipmentFor; + unitType.AddEquipmentItem(this); } public override string Name { - get { + get + { return item.Name; } - set { + set + { base.Name = value; } } + + public override string ID { + get + { + return (EquipmentForUnit == null ? base.ID : EquipmentForUnit.ID) + EquipmentItemID; + } + set + { + base.ID = value; + } + } + public string EquipmentItemID { @@ -92,14 +108,6 @@ public UnitType EquipmentForUnit { get { return unitType; } - set - { - if (value != null) - { - unitType = value; - unitType.AddEquipmentItem(this); - } - } } public bool IsRatioLimit @@ -221,7 +229,7 @@ { if (amount == WarFoundryCore.INFINITY) { - return "all"; + return "all"; //TODO: Translate } else {