private static void CheckMissedAttack() { if (hitsCounter > 0) { Attacker.CallOnAttackHitAsAttacker(); Defender.CallOnAttackHitAsDefender(); Triggers.ResolveTriggers(TriggerTypes.OnAttackHit, FinishAttack); } else { Attacker.CallOnAttackMissedAsAttacker(); Defender.CallOnAttackMissedAsDefender(); FinishAttack(); } }
private static void CalculateAttackResults(Ship.GenericShip attacker, Ship.GenericShip defender) { DiceRollAttack.RemoveAllFailures(); if (DiceRollAttack.Successes > 0) { Attacker.CallOnAttackHitAsAttacker(); Defender.CallOnAttackHitAsDefender(); Triggers.ResolveTriggers(TriggerTypes.OnAttackHit, delegate { ResolveCombatDamage(SufferDamage); }); } else { Attacker.CallOnAttackMissedAsAttacker(); Defender.CallOnAttackMissedAsDefender(); Triggers.ResolveTriggers(TriggerTypes.OnAttackMissed, SufferDamage); } }