public void FighterAddedEvent_FiredByAddMethod() { _logger.Subscribe(EventType.FighterAdded, _humanTeam); IFighter fighterToAdd = FighterFactory.GetFighter(FighterType.Egg, 1, magicType: MagicType.Fire); _humanTeam.Add(fighterToAdd); List <EventLog> logs = _logger.Logs; Assert.AreEqual(1, logs.Count); EventLog log = logs[0]; Assert.AreEqual(EventType.FighterAdded, log.Type); FighterAddedEventArgs e = log.E as FighterAddedEventArgs; Assert.NotNull(e); Assert.AreEqual(fighterToAdd, e.Fighter); }
public void Add(IFighter newFighter, bool setupDisplayNamesAfterAdd = true) { newFighter.Killed += _onFighterKilled; newFighter.SetTeam(this); Fighters.Add(newFighter); if (setupDisplayNamesAfterAdd) { SetupDisplayNames(); } Shade fighterAsShade = newFighter as Shade; if (fighterAsShade != null) { fighterAsShade.FighterSealed += _onFighterSealed; } FighterAddedEventArgs e = new FighterAddedEventArgs(newFighter); OnFighterAdded(e); }
private void _logFighterAdded(object sender, FighterAddedEventArgs e) { Logs.Add(new EventLog(EventType.FighterAdded, sender, e)); }
public void OnFighterAdded(FighterAddedEventArgs e) { FighterAdded?.Invoke(this, e); }