Mercurial > repos > IBBoard.WarFoundry.API
diff api/Requirements/UnitExclusion.cs @ 0:520818033bb6
Initial commit of WarFoundry code
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Fri, 19 Dec 2008 15:57:51 +0000 |
parents | |
children | 306558904c2a |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/api/Requirements/UnitExclusion.cs Fri Dec 19 15:57:51 2008 +0000 @@ -0,0 +1,41 @@ +using System; +using System.Text; +using IBBoard.WarFoundry.API.Objects; + +namespace IBBoard.WarFoundry.API.Requirements +{ + /// <summary> + /// Summary description for UnitMaxNumberRequirement. + /// </summary> + public class UnitExclusion : FailedUnitRequirement + { + private string unitList; + private UnitType type; + + public UnitExclusion(UnitRequirement req, UnitType unitType, UnitType[] excludingTypes) : base(req) + { + type = unitType; + + if (excludingTypes.Length > 1) + { + StringBuilder sb = new StringBuilder(excludingTypes[0].Name); + + for (int i = 1; i<excludingTypes.Length; i++) + { + sb.Append(", "+excludingTypes[i].Name); + } + + unitList = sb.ToString(); + } + else + { + unitList = excludingTypes[0].Name; + } + } + + public override string Description + { + get { return "The army cannot have any of the following units to include a unit of type "+type.Name+": "+unitList; } + } + } +}