Mercurial > repos > IBBoard.WarFoundry.API
annotate API/Objects/Requirement/RequiresNoMoreThanNOfUnitTypeRequirement.cs @ 487:248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
* Add null adding context
* Add initial skeleton of "N units per M models in parent unit" requirement
* Update use of context
* Standardise some of "is applicable" testing
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Fri, 27 Jul 2012 20:31:12 +0100 |
parents | e0641e0eb86c |
children |
rev | line source |
---|---|
356 | 1 // This file (RequiresNoMoreThanNOfUnitTypeRequirement.cs) is a part of the IBBoard.WarFoundry.API project and is copyright 2011 IBBoard |
2 // | |
3 // The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license. | |
4 using System; | |
5 using IBBoard.WarFoundry.API.Objects; | |
6 using System.Collections.Generic; | |
362
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
7 using System.Text; |
480
e0641e0eb86c
Re #410: "N units per M models in parent" requirement
IBBoard <dev@ibboard.co.uk>
parents:
479
diff
changeset
|
8 using IBBoard.WarFoundry.API.Objects.Requirement.Context; |
356 | 9 |
10 namespace IBBoard.WarFoundry.API.Objects.Requirement | |
11 { | |
12 /// <summary> | |
13 /// A requirement where a WarFoundryObject cannot be taken in an army if more than N of a UnitType will be in the army. | |
14 /// </summary> | |
458 | 15 public abstract class RequiresNoMoreThanNOfUnitTypeRequirement<OBJECT_TYPE> : AbstractUnitRequirement<OBJECT_TYPE> where OBJECT_TYPE : IWarFoundryObject |
356 | 16 { |
427
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
17 public static readonly string REQUIREMENT_ID = "RequiresNoMoreThanNUnits"; |
356 | 18 |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
19 public RequiresNoMoreThanNOfUnitTypeRequirement(OBJECT_TYPE allowedObject, params UnitType[] limitedUnitTypes) : base(allowedObject, limitedUnitTypes) |
356 | 20 { |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
21 //Do nothing special |
356 | 22 } |
23 | |
427
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
24 public override string RequirementID |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
25 { |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
26 get |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
27 { |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
28 return REQUIREMENT_ID; |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
29 } |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
30 } |
3882b533d99d
Re #27: Define unit requirements
IBBoard <dev@ibboard.co.uk>
parents:
419
diff
changeset
|
31 |
479
f48c49b53738
Re #410: "N units per M models in parent" requirement
IBBoard <dev@ibboard.co.uk>
parents:
462
diff
changeset
|
32 protected override bool IsApplicable(Army toArmy, AddingContext context) |
461
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
33 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
34 return false; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
35 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
36 |
479
f48c49b53738
Re #410: "N units per M models in parent" requirement
IBBoard <dev@ibboard.co.uk>
parents:
462
diff
changeset
|
37 protected override bool IsApplicable(IWarFoundryObject toObject, AddingContext context) |
461
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
38 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
39 bool isApplicable = false; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
40 UnitType unitType = GetUnitTypeFromObject(toObject); |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
41 |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
42 if (unitType != null) |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
43 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
44 isApplicable = IsApplicable(unitType); |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
45 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
46 |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
47 return isApplicable; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
48 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
49 |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
50 private bool IsApplicable(UnitType unitType) |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
51 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
52 bool isApplicable = false; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
53 foreach (UnitCountRequirementData requirement in ConstraintTypes) |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
54 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
55 if (requirement.UnitType.Equals(unitType)) |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
56 { |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
57 isApplicable = true; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
58 break; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
59 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
60 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
61 return isApplicable; |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
62 } |
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
63 |
479
f48c49b53738
Re #410: "N units per M models in parent" requirement
IBBoard <dev@ibboard.co.uk>
parents:
462
diff
changeset
|
64 protected override Validation CheckAllowsAdding(IWarFoundryObject wfObject, Army toArmy, AddingContext context) |
461
f0594621e4a0
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
458
diff
changeset
|
65 { |
356 | 66 Validation canAdd = Validation.Passed; |
67 | |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
68 foreach (UnitCountRequirementData limit in ConstraintTypes) |
356 | 69 { |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
70 if (GetUnitTypeCount(toArmy, limit.UnitType, wfObject, context) > limit.Count) |
356 | 71 { |
72 canAdd = Validation.Failed; | |
73 break; | |
74 } | |
75 } | |
76 | |
77 return canAdd; | |
78 } | |
79 | |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
80 private int GetUnitTypeCount(Army toArmy, UnitType unitType, IWarFoundryObject wfObject, AddingContext context) |
356 | 81 { |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
82 return toArmy.GetUnitTypeCount(unitType) + GetCountFromObject(wfObject, unitType) + GetCountFromContext(context); |
356 | 83 } |
84 | |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
85 private int GetCountFromObject(IWarFoundryObject wfObject, UnitType limitedType, AddingContext context) |
356 | 86 { |
87 return (limitedType.Equals(wfObject) || (wfObject is Unit && ((Unit)wfObject).UnitType.Equals(limitedType))) ? 1 : 0; | |
88 } | |
89 | |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
90 protected virtual int GetCountFromContext(AddingContext context) |
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
91 { |
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
92 return 0; |
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
93 } |
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
94 |
356 | 95 /// <summary> |
96 /// Adds a requirement for there to be no more than maxCount of a given UnitType | |
97 /// </summary> | |
98 /// <param name='unitType'> | |
99 /// The unit type to limit. | |
100 /// </param> | |
101 /// <param name='minCount'> | |
102 /// The maximum number of that type that must exist. | |
103 /// </param> | |
104 public void AddUnitTypeRequirement(UnitType unitType, int maxCount) | |
105 { | |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
106 ConstraintTypes.Add(new UnitCountRequirementData(unitType, maxCount)); |
356 | 107 } |
108 | |
109 /// <summary> | |
110 /// Adds a requirement for there to be none of a given UnitType | |
111 /// </summary> | |
112 /// <param name='unitType'> | |
113 /// The unit type to limit. | |
114 /// </param> | |
455
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
115 public override void AddUnitTypeRequirement(UnitType unitType) |
356 | 116 { |
117 AddUnitTypeRequirement(unitType, 0); | |
118 } | |
119 | |
120 /// <summary> | |
121 /// Checks whether the supplied army is currently valid according to this requirement. | |
122 /// </summary> | |
123 /// <returns> | |
124 /// A <code>Validation</code> enum to show the result of the validation | |
125 /// </returns> | |
126 /// <param name='toValidate'> | |
127 /// The army to validate | |
128 /// </param> | |
358
dbe7ccb1e557
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
357
diff
changeset
|
129 public override Validation ValidatesArmy(Army army) |
356 | 130 { |
458 | 131 Validation canAdd = Validation.NotApplicable; |
132 int allowedTypeCount = GetObjectCountFromArmy(army, AllowedObject); | |
133 | |
134 if (allowedTypeCount > 0) | |
356 | 135 { |
458 | 136 canAdd = Validation.Passed; |
137 | |
138 foreach (UnitCountRequirementData limit in ConstraintTypes) | |
356 | 139 { |
458 | 140 if (army.GetUnitTypeCount(limit.UnitType) > limit.Count) |
141 { | |
142 canAdd = Validation.Failed; | |
143 break; | |
144 } | |
356 | 145 } |
146 } | |
458 | 147 else |
148 { | |
149 canAdd = Validation.NotApplicable; | |
150 } | |
356 | 151 |
152 return canAdd; | |
153 } | |
154 | |
453
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
155 protected override string ValidationFailedMessage |
358
dbe7ccb1e557
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
357
diff
changeset
|
156 { |
453
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
157 get |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
158 { |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
159 return "Army cannot contain more than: {0}."; |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
160 } |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
161 } |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
162 |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
163 protected override string GetFailedRequirementsString(Army army) |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
164 { |
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
165 return String.Join("; ", GetFailedRequirements(army).ToArray()); |
362
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
166 } |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
167 |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
168 private List<string> GetFailedRequirements(Army army) |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
169 { |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
170 List<string> failures = new List<string>(); |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
171 |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
172 foreach (UnitCountRequirementData requirement in ConstraintTypes) |
362
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
173 { |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
174 int unitCount = army.GetUnitTypeCount(requirement.UnitType); |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
175 |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
176 if (unitCount > requirement.Count) |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
177 { |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
178 failures.Add(requirement.Count + " × " + requirement.UnitType.Name + " (have " + unitCount + ")"); |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
179 } |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
180 } |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
181 |
c19e61262400
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
358
diff
changeset
|
182 return failures; |
358
dbe7ccb1e557
Re #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
357
diff
changeset
|
183 } |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
184 |
487
248df19652f9
Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents:
480
diff
changeset
|
185 protected override string GetFailedAddingRequirementsString(IWarFoundryObject toAdd, Army toArmy, AddingContext context) |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
186 { |
453
dace3b7779ca
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
427
diff
changeset
|
187 return String.Join("; ", GetFailedAddingRequirements(toAdd, toArmy).ToArray()); |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
188 } |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
189 |
455
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
190 private List<string> GetFailedAddingRequirements(IWarFoundryObject toAdd, Army army) |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
191 { |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
192 List<string> failures = new List<string>(); |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
193 |
457
8e01c3174cc3
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
455
diff
changeset
|
194 foreach (UnitCountRequirementData requirement in ConstraintTypes) |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
195 { |
455
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
196 int unitCount = GetUnitTypeCount(army, requirement.UnitType, toAdd); |
364
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
197 |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
198 if (unitCount > requirement.Count) |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
199 { |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
200 failures.Add(requirement.Count + " × " + requirement.UnitType.Name + " (would have " + unitCount + ")"); |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
201 } |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
202 } |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
203 |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
204 return failures; |
0dd8dbe8afe9
Fixes #345: Add failure message to requirements
IBBoard <dev@ibboard.co.uk>
parents:
362
diff
changeset
|
205 } |
455
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
206 |
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
207 protected override int GetObjectCountFromArmy(Army toArmy) |
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
208 { |
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
209 return 0; |
afc6410e4efc
Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
453
diff
changeset
|
210 } |
356 | 211 } |
212 } | |
213 |