Exemplo n.º 1
0
 private void OnGamePropertyChanged(object sender, PropertyChangedEventArgs e)
 {
     if (e.PropertyName == nameof(CurrentPlayer))
     {
         OnNewPlayer?.Invoke(this, new PropertyChangedEventArgs(nameof(CurrentPlayer)));
     }
     else if (e.PropertyName == nameof(CurrentLocation))
     {
         OnNewLocation?.Invoke(this, new PropertyChangedEventArgs(nameof(CurrentLocation)));
     }
     else if (e.PropertyName == nameof(CurrentMonster))
     {
         OnNewMonster?.Invoke(this, new PropertyChangedEventArgs(nameof(CurrentMonster)));
     }
 }
Exemplo n.º 2
0
        private void Minion_OnDeath(IMonster minion, ulong reward)
        {
            OnMonsterDeath?.Invoke(minion, reward);
            Minions.Remove((Minion)minion);

            if (Minions.Count == 0)
            {
                _currentMonster = Boss;
            }
            else
            {
                _currentMonster = Minions.First();
            }

            OnNewMonster?.Invoke(_currentMonster);
        }