private void AskToSelectTimedBomb(Action callback) { GeniusBombDecisionSubPhase selectBombToDrop = (GeniusBombDecisionSubPhase)Phases.StartTemporarySubPhaseNew( "Select bomb to drop", typeof(GeniusBombDecisionSubPhase), callback ); foreach (var timedBombInstalled in BombsManager.GetBombsToDrop(HostShip, BombTypeRestriction)) { selectBombToDrop.AddDecision( timedBombInstalled.UpgradeInfo.Name, delegate { SelectBomb(timedBombInstalled); } ); } selectBombToDrop.DescriptionShort = "\"Genius\""; selectBombToDrop.DescriptionLong = "Select a device to drop"; selectBombToDrop.ImageSource = HostUpgrade; selectBombToDrop.DefaultDecisionName = BombsManager.GetBombsToDrop(HostShip, BombTypeRestriction).First().UpgradeInfo.Name; selectBombToDrop.RequiredPlayer = HostShip.Owner.PlayerNo; selectBombToDrop.Start(); }
private void AskToSelectTimedBomb(Action callback) { GeniusBombDecisionSubPhase selectBombToDrop = (GeniusBombDecisionSubPhase)Phases.StartTemporarySubPhaseNew( "Select bomb to drop", typeof(GeniusBombDecisionSubPhase), callback ); foreach (var timedBombInstalled in BombsManager.GetTimedBombsInstalled(HostShip)) { selectBombToDrop.AddDecision( timedBombInstalled.Name, delegate { SelectBomb(timedBombInstalled); } ); } selectBombToDrop.InfoText = "Select bomb to drop"; selectBombToDrop.DefaultDecisionName = BombsManager.GetTimedBombsInstalled(HostShip).First().Name; selectBombToDrop.RequiredPlayer = HostShip.Owner.PlayerNo; selectBombToDrop.Start(); }