Example #1
0
        public static void handleHighlighting(int x, int y)
        {
            if ((wait_for_timer && !multi_jump) || wait_for_computer || MainPage.game_state == GameState.END_GAME || !canMove())
            {
                return;
            }
            if (!logic.isSelectable(y, x))
            {
                return;
            }

            Checker HIGHLIGHTED_PIECE = spaces[x, y].getChecker();

            if (checkerX != -1 && checkerY != -1)
            {
                spaces[checkerX, checkerY].getChecker().toggleHighlight();
            }

            //if the already highlighted piece is the same as the one being clicked
            if (checkerX != -1 && checkerY != -1 && HIGHLIGHTED_PIECE.Equals(spaces[checkerX, checkerY].getChecker()))
            {
                checkerX = checkerY = -1;
                return;
            }
            else //otherwise, a piece is either being clicked for the first time or is switching highlights.
            {
                checkerX = x;
                checkerY = y;
                HIGHLIGHTED_PIECE.toggleHighlight();
            }
        }