예제 #1
0
        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();
        }
예제 #2
0
        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();
        }