# HG changeset patch # User IBBoard # Date 1302364862 0 # Node ID d34ae0057a3996f13ec71c9cf62dee1f59b7f01e # Parent 44a6539fadf9256ffb8d7f4a0beadf34b39b2cfc Re #27: Unit requirements * Obsolete methods using the old requirements system * Switch to new IRequirement objects diff -r 44a6539fadf9 -r d34ae0057a39 API/Objects/Army.cs --- a/API/Objects/Army.cs Sat Apr 09 15:51:39 2011 +0000 +++ b/API/Objects/Army.cs Sat Apr 09 16:01:02 2011 +0000 @@ -227,21 +227,25 @@ } } + [Obsolete] public List CanAddUnit(Unit unit) { return CanAddUnitType(unit.UnitType); } + [Obsolete] public List CanAddUnitType(UnitType unitType) { return unitType.CanAddToArmy(this); } + [Obsolete] public List CanRemoveUnit(Unit unit) { return CanRemoveUnitType(unit.UnitType); } + [Obsolete] public List CanRemoveUnitType(UnitType unitType) { return unitType.CanRemoveFromArmy(this); diff -r 44a6539fadf9 -r d34ae0057a39 API/Objects/UnitType.cs --- a/API/Objects/UnitType.cs Sat Apr 09 15:51:39 2011 +0000 +++ b/API/Objects/UnitType.cs Sat Apr 09 16:01:02 2011 +0000 @@ -8,6 +8,7 @@ using IBBoard.Limits; using IBBoard.Logging; using IBBoard.WarFoundry.API.Requirements; +using IBBoard.WarFoundry.API.Objects.Requirement; namespace IBBoard.WarFoundry.API.Objects { @@ -23,7 +24,7 @@ private double baseUnitCost; private double costPerTrooper; private Stats stats; - private List requirements = new List(); + private List requirements = new List(); private Dictionary equipment = new Dictionary(); private Dictionary> equipmentExclusionGroups = new Dictionary>(); private List equipmentKeyOrder = new List(); @@ -457,53 +458,27 @@ } } - public void AddRequirement(UnitRequirement requirement) + public void AddRequirement(IRequirement requirement) { requirements.Add(requirement); } - - public UnitRequirement[] Requirements + + public IRequirement[] GetRequirements() { - get { return requirements.ToArray(); } + return requirements.ToArray(); } - + + [Obsolete] public List CanAddToArmy(Army army) { List failures = new List(); - - if (requirements!=null && requirements.Count > 0) - { - foreach (UnitRequirement requirement in requirements) - { - FailedUnitRequirement failure = (FailedUnitRequirement)requirement.CanAddToWarFoundryObject(army); - - if (failure!=null) - { - failures.Add(failure); - } - } - } - return failures; } - + + [Obsolete] public List CanRemoveFromArmy(Army army) { List failures = new List(); - - if (requirements!=null && requirements.Count > 0) - { - foreach (UnitRequirement requirement in requirements) - { - FailedUnitRequirement failure = (FailedUnitRequirement)requirement.CanRemoveFromWarFoundryObject(army); - - if (failure!=null) - { - failures.Add(failure); - } - } - } - return failures; }