public void OutOfPlay(string unitName) { bool removalRequired = false; UniqueUnit removalReference = new UniqueUnit(""); foreach (UniqueUnit entry in activeUnits) { if (entry.name == unitName) { entry.count--; if (entry.count < 1) { removalReference = entry; removalRequired = true; } break; } } if (removalRequired) { activeUnits.Remove(removalReference); widgetScript.RemoveCenterFill(); } uniqueActiveUnits = activeUnits.Count; }
public void UnitLost(string unitName) { bool removalRequired = false; UniqueUnit removalReference = new UniqueUnit(""); foreach (UniqueUnit entry in totalUnits) { if (entry.name == unitName) { entry.count--; if (entry.count < 1) { removalReference = entry; removalRequired = true; } break; } } if (removalRequired) { totalUnits.Remove(removalReference); widgetScript.RemoveOutline(); if (totalUnits.Count == 0) { widgetScript.HideWidget(); } } uniqueTotalUnits = totalUnits.Count; }