public void Move(BoardSquare currSquare, BoardSquare targetSquare) { throw new NotImplementedException(); }
public void Select(BoardSquare currSquare) { //Create Outline on Selected boardState[currSquare.XCoord, currSquare.YCoord].Selected = true; // set selected = true; in the BoardSquare Object List <BoardSquare> MovementOptions = new List <BoardSquare>(); //Get Diagonal Objects if They are On the Board // up left if (currSquare.XCoord > 0 && currSquare.YCoord > 0) { BoardSquare UpLeft = boardState[currSquare.XCoord - 1, currSquare.YCoord - 1]; MovementOptions.Add(UpLeft); } // up right // if(XCoord < 8 && YCoord > 2) {BoardSquare UpRight = Board[XCoord + 1, YCoord - 1];} if (currSquare.XCoord < 7 && currSquare.YCoord > 0) { BoardSquare UpRight = boardState[currSquare.XCoord + 1, currSquare.YCoord - 1]; MovementOptions.Add(UpRight); } // down left // if(XCoord > 2 && YCoord < 8) {BoardSquare DownLeft = Board[XCoord - 1, YCoord + 1];} if (currSquare.XCoord > 0 && currSquare.YCoord < 7) { BoardSquare DownLeft = boardState[currSquare.XCoord - 1, currSquare.YCoord + 1]; MovementOptions.Add(DownLeft); } // down right // if(XCoord < 8 && YCoord < 8) {BoardSquare DownRight = Board[XCoord + 1, YCoord + 1];} if (currSquare.XCoord < 7 && currSquare.YCoord < 7) { BoardSquare DownRight = boardState[currSquare.XCoord + 1, currSquare.YCoord + 1]; MovementOptions.Add(DownRight); } // Check for Presence foreach (BoardSquare moveOption in MovementOptions) { if (moveOption.Occupied == false) { //Case: Open => Ok to Move boardState[moveOption.XCoord, moveOption.YCoord].CanMove = true; // //Set JS to create outline OnHover } else if (moveOption.Occupied == true) { //Case: Occupied + Same Team => Cannot Move if (moveOption.TeamNumber == currSquare.TeamNumber) { boardState[moveOption.XCoord, moveOption.YCoord].CanMove = false; } //Case: Occupied + Other Team => Can Move and Take if (moveOption.TeamNumber != currSquare.TeamNumber) { boardState[moveOption.XCoord, moveOption.YCoord].CanMove = true; } // //Set JS to create outline OnHover } } }
public void Deselect(BoardSquare currSquare) { boardState[currSquare.XCoord, currSquare.YCoord].Selected = false; }