コード例 #1
0
        /// <summary>
        ///     Resets previously loaded singleplayer control and loads new, resetted one.
        /// </summary>
        private void LoadSingleplayerControls()
        {
            singleplayerGameOptionsControl?.Dispose();

            singleplayerGameOptionsControl = new SingleplayerGameOptionsControl
            {
                Parent = singleplayerTabPage,
                Dock   = DockStyle.Fill
            };
            singleplayerGameOptionsControl.OnNewGameStarted += StartNewGame;
            singleplayerGameOptionsControl.OnGameLoaded     += LoadGame;
            singleplayerGameOptionsControl.Show();
        }
コード例 #2
0
        /// <summary>
        ///     Loads proper screens starting newly created game the game.
        /// </summary>
        /// <param name="game">Instance representing the game to be started.</param>
        private void LoadInGameScreen(Game game)
        {
            switch (game.GameType)
            {
            case GameType.SinglePlayer:
                // remove previous
                singleplayerGameOptionsControl?.Dispose();
                singleplayerGameOptionsControl = null;
                // load game screen
                inGame = new InGameControl
                {
                    Parent = singleplayerTabPage,
                    Dock   = DockStyle.Fill
                };
                break;

            case GameType.MultiplayerHotseat:
                // remove previous
                hotseatGameOptionsControl?.Dispose();
                hotseatGameOptionsControl = null;
                // load game screen
                inGame = new InGameControl
                {
                    Parent = multiplayerTabPage,
                    Dock   = DockStyle.Fill
                };
                break;

            case GameType.MultiplayerNetwork:
                // removes previous
                networkGameOptionsControl?.Dispose();
                networkGameOptionsControl = null;
                // loads game screens
                inGame = new InGameControl
                {
                    Parent = multiplayerTabPage,
                    Dock   = DockStyle.Fill
                };
                break;
            }
            inGame.Initialize(game);
            inGame.Show();
        }