protected virtual void OnDamageCalculated(DamageCalculatedEventArg e) { if (DamageCalculated != null) { //Invokes the delegates. DamageCalculated(e); } }
public void CalculateDamage(StandardCharacter attacker, StandardCharacter defender, bool isRangeAttack, bool hasRangePenalty, bool hasObstaclePenalty, bool hasHandToHandPenalty) { int minDmg = 0; int maxDmg = 0; int minKill = 0; int maxKill = 0; int avgKill = 0; CalculateDamage(attacker, defender, isRangeAttack, hasRangePenalty, hasObstaclePenalty, hasHandToHandPenalty, out minDmg, out maxDmg, out minKill, out maxKill, out avgKill); DamageCalculatedEventArg e2 = new DamageCalculatedEventArg(minDmg, maxDmg, minKill, maxKill, avgKill); OnDamageCalculated(e2); _statusMsg = string.Format("Damage {0}-{1}, Kill {2}-{3}, Avg Kill {4}", e2._minDamage, e2._maxDamage, e2._minKill, e2._maxKill, e2._avgKill); }