diff API/Objects/Requirement/RequiresNoMoreThanNOfUnitTypeRequirement.cs @ 453:dace3b7779ca

Re #379: Fix validation of requirements to check for unit * Restructure all validation messages to a common base system that will translate better * Update "No More Than" texts to differentiate two contexts (adding and validating)
author IBBoard <dev@ibboard.co.uk>
date Sun, 29 Jan 2012 20:05:25 +0000
parents 3882b533d99d
children afc6410e4efc
line wrap: on
line diff
--- a/API/Objects/Requirement/RequiresNoMoreThanNOfUnitTypeRequirement.cs	Sun Jan 29 19:39:25 2012 +0000
+++ b/API/Objects/Requirement/RequiresNoMoreThanNOfUnitTypeRequirement.cs	Sun Jan 29 20:05:25 2012 +0000
@@ -18,7 +18,6 @@
 
 		public RequiresNoMoreThanNOfUnitTypeRequirement(params UnitType[] limitedUnitTypes)
 		{
-			FailureStringPrefix = "Army cannot contain more than: ";
 			limitedTypes = new List<UnitCountRequirementData>();
 
 			foreach (UnitType unitType in limitedUnitTypes)
@@ -141,15 +140,17 @@
 			return hash;
 		}
 
-		protected string FailureStringPrefix { get; set; }
-
-		protected override string GetValidationFailedMessage (Army army)
+		protected override string ValidationFailedMessage
 		{
-			StringBuilder sb = new StringBuilder();
-			sb.Append(FailureStringPrefix);
-			sb.Append(String.Join("; ", GetFailedRequirements(army).ToArray()));
-			sb.Append(".");
-			return sb.ToString();
+			get
+			{
+				return "Army cannot contain more than: {0}.";
+			}
+		}
+
+		protected override string GetFailedRequirementsString(Army army)
+		{
+			return String.Join("; ", GetFailedRequirements(army).ToArray());
 		}
 
 		private List<string> GetFailedRequirements(Army army)
@@ -169,13 +170,9 @@
 			return failures;
 		}
 
-		protected override string GetAllowsAddingFailedMessage(UnitType toAdd, Army toArmy)
+		protected override string GetFailedAddingRequirementsString(UnitType toAdd, Army toArmy)
 		{
-			StringBuilder sb = new StringBuilder();
-			sb.Append(FailureStringPrefix);
-			sb.Append(String.Join("; ", GetFailedAddingRequirements(toAdd, toArmy).ToArray()));
-			sb.Append(".");
-			return sb.ToString();
+			return String.Join("; ", GetFailedAddingRequirements(toAdd, toArmy).ToArray());
 		}
 
 		private List<string> GetFailedAddingRequirements(UnitType unitType, Army army)