private void AskToRemoveTargetLock() { CountermeasuresDecisionSubPhase selectTargetLockToDiscardDecision = (CountermeasuresDecisionSubPhase)Phases.StartTemporarySubPhaseNew( Name, typeof(CountermeasuresDecisionSubPhase), SubPhases.DecisionSubPhase.ConfirmDecision ); foreach (GenericToken token in HostShip.Tokens.GetAllTokens()) { if (token.GetType() == typeof(RedTargetLockToken)) { char letter = (token as GenericTargetLockToken).Letter; selectTargetLockToDiscardDecision.AddDecision ( "Target Lock " + letter, delegate { RemoveTargetLock(letter); } ); } } selectTargetLockToDiscardDecision.InfoText = "Select target lock to remove"; selectTargetLockToDiscardDecision.DefaultDecision = selectTargetLockToDiscardDecision.GetDecisions().First().Key; selectTargetLockToDiscardDecision.RequiredPlayer = HostShip.Owner.PlayerNo; selectTargetLockToDiscardDecision.Start(); }
private void AskToRemoveTargetLock() { CountermeasuresDecisionSubPhase selectTargetLockToDiscardDecision = (CountermeasuresDecisionSubPhase)Phases.StartTemporarySubPhaseNew( Name, typeof(CountermeasuresDecisionSubPhase), Triggers.FinishTrigger ); foreach (GenericToken token in HostShip.Tokens.GetAllTokens()) { if (token.GetType() == typeof(RedTargetLockToken)) { char letter = (token as GenericTargetLockToken).Letter; selectTargetLockToDiscardDecision.AddDecision ( "Target Lock " + letter, delegate { RemoveTargetLock(letter); } ); } } selectTargetLockToDiscardDecision.DescriptionShort = "Countermeasures"; selectTargetLockToDiscardDecision.DescriptionLong = "Select target lock to remove"; selectTargetLockToDiscardDecision.ImageSource = HostUpgrade; selectTargetLockToDiscardDecision.DefaultDecisionName = selectTargetLockToDiscardDecision.GetDecisions().First().Name; selectTargetLockToDiscardDecision.RequiredPlayer = HostShip.Owner.PlayerNo; selectTargetLockToDiscardDecision.Start(); }