public void AddUnit(WarUnit unit)
 {
     WarUnits.Add(unit);
 }
Esempio n. 2
0
 public bool IsOpponent(WarUnit unit)
 {
     return Side.IsOpponent(unit.Side);
 }
Esempio n. 3
0
 public void HealMP(Situation situation, WarUnit doer, int value)
 {
     int newValue = _status.Params[StatusKey.MP] + value;
     _status.Params[StatusKey.MP] = newValue <= _status.MaxMP ? newValue : _status.MaxMP;
 }
Esempio n. 4
0
 public void ExpendMP(Situation situation, WarUnit doer, int value)
 {
     int newValue = _status.Params[StatusKey.MP] - value;
     _status.Params[StatusKey.MP] = newValue > 0 ? newValue : _status.MaxMP;
 }
Esempio n. 5
0
        public void Die(Situation situation, WarUnit doer)
        {
            _status.Params[StatusKey.HP] = 0;
            Map.UnDeploy(this, Location);

            if (_area != null)
                _area.Units.Remove(_unit);

            DiedEvent.InvokeIfNotNull(situation, this, doer);
        }
Esempio n. 6
0
 public void DamageHP(Situation situation, WarUnit doer, int value)
 {
     int newValue = _status.Params[StatusKey.HP] - value;
     _status.Params[StatusKey.HP] = newValue > 0 ? newValue : 0;
     DamageEvent.InvokeIfNotNull(situation, this, doer, value);
     if (!Alive)
         Die(situation, doer);
 }