Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
 private void _logFighterAdded(object sender, FighterAddedEventArgs e)
 {
     Logs.Add(new EventLog(EventType.FighterAdded, sender, e));
 }
Esempio n. 4
0
 public void OnFighterAdded(FighterAddedEventArgs e)
 {
     FighterAdded?.Invoke(this, e);
 }