Пример #1
0
        public static void Main(string[] args)
        {
            CurrentBoard      = new Board();
            CurrentGameStatus = GameStatus.Inactive;
            PieceMoves.InitiateChessPieceMoves();
            PiecePseudoLegalMoves.GeneratePseudoLegalMoves(CurrentBoard);
            PieceLegalMoves.GenerateLegalMoves(CurrentBoard);
            EngineStopTokenSource = new CancellationTokenSource();
            BoardOrientation      = PieceColour.White;
            WhiteClock            = new ChessClock(PieceColour.White, new TimeSpan(0, 30, 0));
            BlackClock            = new ChessClock(PieceColour.Black, new TimeSpan(0, 30, 0));
            StrengthValue         = 7;
            CurrentMode           = GameMode.OnePlayer;
            CurrentGameHistory    = new GameHistory();

            Application.Init();
            win = new MainWindow();
            win.UpdateClock(WhiteClock);
            win.UpdateClock(BlackClock);
            win.InitWidgets();
            win.Show();
            Application.Run();

            /*
             * UCITransceiver uci = new UCITransceiver ("./stockfish_6_x64");
             * uci.Init ();
             * Console.WriteLine (uci.EngineName);
             * Console.WriteLine (uci.EngineAuthor);
             * uci.SendPosition ("rn2kbnr/ppq2pp1/2p1p2p/7P/3P4/3Q1NN1/PPP2PP1/R1B1K2R w KQkq - 0 11");
             * uci.Go ();
             * Thread.Sleep (5000);
             * Console.WriteLine (uci.StopAndGetBestMove ());
             * uci.Quit ();
             */
        }
Пример #2
0
 public static void ResetClock()
 {
     WhiteClock.Stop();
     BlackClock.Stop();
     WhiteClock = new ChessClock(PieceColour.White, new TimeSpan(0, 30, 0));
     BlackClock = new ChessClock(PieceColour.Black, new TimeSpan(0, 30, 0));
     win.UpdateClock(WhiteClock);
     win.UpdateClock(BlackClock);
 }
Пример #3
0
 public static void SetClock(TimeSpan time)
 {
     WhiteClock.Stop();
     BlackClock.Stop();
     WhiteClock = new ChessClock(PieceColour.White, time);
     BlackClock = new ChessClock(PieceColour.Black, time);
     win.UpdateClock(WhiteClock);
     win.UpdateClock(BlackClock);
 }
Пример #4
0
 public void UpdateClock(ChessClock clock)
 {
     if (clock.Colour == PieceColour.White)
     {
         WhiteClockLabel.Text = clock.TimeLeft.ToString("g");
     }
     else
     {
         BlackClockLabel.Text = clock.TimeLeft.ToString("g");
     }
 }