/// <summary> /// Adds the Countermeasure to this item's data. /// </summary> /// <param name="cm">The Countermeasure.</param> public void AddCountermeasure(Countermeasure cm) { D.Assert(!Countermeasures.Contains(cm)); D.Assert(!cm.IsOperational); Countermeasures.Add(cm); cm.onIsOperationalChanged += OnCountermeasureIsOperationalChanged; // no need to Recalc max countermeasure-related values as this occurs when IsOperational changes }
private void OnCountermeasureIsOperationalChanged(Countermeasure cm) { D.Log("{0}'s {1}.IsOperational is now {2}.", FullName, cm.Name, cm.IsOperational); RecalcDefensiveStrength(); }