module TicTacToeRZ::GameRules::GameOverRules
Public Class Methods
game_over?(board)
click to toggle source
# File lib/tic_tac_toe_rz/tictactoeruby.core/game_rules/game_over_rules.rb, line 9 def self.game_over?(board) raise Exceptions::NilReferenceError, "board" if board.nil? result = board[0] == board[1] && board[1] == board[2] || board[3] == board[4] && board[4] == board[5] || board[6] == board[7] && board[7] == board[8] || board[0] == board[3] && board[3] == board[6] || board[1] == board[4] && board[4] == board[7] || board[2] == board[5] && board[5] == board[8] || board[0] == board[4] && board[4] == board[8] || board[2] == board[4] && board[4] == board[6] end
win_for_player?(player_symbol, board)
click to toggle source
# File lib/tic_tac_toe_rz/tictactoeruby.core/game_rules/game_over_rules.rb, line 21 def self.win_for_player?(player_symbol, board) raise Exceptions::NilReferenceError, "board" if board.nil? raise Exceptions::InvalidValueError, "player_symbol" if !Validators::PlayerSymbolValidator.valid?(player_symbol) result = (board[0] == player_symbol && board[1] == player_symbol && board[2] == player_symbol) || (board[3] == player_symbol && board[4] == player_symbol && board[5] == player_symbol) || (board[6] == player_symbol && board[7] == player_symbol && board[8] == player_symbol) || (board[0] == player_symbol && board[3] == player_symbol && board[6] == player_symbol) || (board[1] == player_symbol && board[4] == player_symbol && board[7] == player_symbol) || (board[2] == player_symbol && board[5] == player_symbol && board[8] == player_symbol) || (board[0] == player_symbol && board[4] == player_symbol && board[8] == player_symbol) || (board[2] == player_symbol && board[4] == player_symbol && board[6] == player_symbol) end