예제 #1
0
        public MainWindow()
        {
            InitializeComponent();

            aiLoader = ((App)App.Current).AiLoader;

            Board.WhitePlayer = SetupService.FetchWhitePlayer();
            Board.BlackPlayer = SetupService.FetchBlackPlayer();

            gameMatch = new GameMatch(GameStateFactory.StandardStartGameState(), Board.WhitePlayer, Board.BlackPlayer);
            Info.UpdateFromGameMatch(gameMatch);

            dispatcherTimer.Tick    += DispatcherTimer_Tick;
            dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
            dispatcherTimer.Start();
        }
예제 #2
0
        private static IGamePlayer FetchPlayer(GameParameter gameParameter)
        {
            IGamePlayer gamePlayer;

            switch (gameParameter.PlayerType)
            {
            case PlayerType.Human:
                gamePlayer = new HumanPlayer();
                break;

            case PlayerType.AI:
                gamePlayer = new AiLoader().LoadFromJsonfile(gameParameter.FilePath).First();
                break;

            case PlayerType.Random:
                gamePlayer = new RandomGamePlayer();
                break;

            default:
                throw new ApplicationException($"Unknown player type '{gameParameter.PlayerType}'");
            }
            return(gamePlayer);
        }
예제 #3
0
        public void Setup()
        {
            aiLoader = new AiLoader();

            contestantSerialiser = new ContestantSerialiser();
        }