private void DropBomb(object sender, System.EventArgs e) { DecisionSubPhase.ConfirmDecisionNoCallback(); BombsManager.RegisterBombDropTriggerIfAvailable(HostShip, TriggerTypes.OnAbilityDirect); Triggers.ResolveTriggers(TriggerTypes.OnAbilityDirect, Triggers.FinishTrigger); }
private void StartRemoteDeployment(object sender, EventArgs e) { SubPhases.DecisionSubPhase.ConfirmDecisionNoCallback(); BombsManager.RegisterBombDropTriggerIfAvailable( HostShip, TriggerTypes.OnAbilityDirect, type: HostUpgrade.GetType() ); Triggers.ResolveTriggers( TriggerTypes.OnAbilityDirect, FinishRemoteDeployment ); }
private void DeployRemote(object sender, EventArgs e) { SubPhases.DecisionSubPhase.ConfirmDecisionNoCallback(); BombsManager.RegisterBombDropTriggerIfAvailable( HostShip, TriggerTypes.OnAbilityDirect, type: HostUpgrade.GetType() ); Triggers.ResolveTriggers( TriggerTypes.OnAbilityDirect, delegate { HostUpgrade.State.SpendCharge(); Triggers.FinishTrigger(); } ); }
private void DropBomb(object sender, EventArgs e) { if (!HostShip.IsStressed && HasAvailableDevice()) { BombsManager.RegisterBombDropTriggerIfAvailable( HostShip, TriggerTypes.OnAbilityDirect, onlyDrop: false, isRealDrop: false ); Triggers.ResolveTriggers(TriggerTypes.OnAbilityDirect, Triggers.FinishTrigger); } else { Triggers.FinishTrigger(); } }