Class: TicTacToe::ComputerPlayer
- Inherits:
-
Object
- Object
- TicTacToe::ComputerPlayer
- Defined in:
- lib/computer_player/computer_player.rb
Instance Method Summary collapse
- #decide_move(board) ⇒ Object
- #find_winning_cell(board, mark) ⇒ Object
-
#initialize ⇒ ComputerPlayer
constructor
A new instance of ComputerPlayer.
- #random_move(board) ⇒ Object
Constructor Details
#initialize ⇒ ComputerPlayer
Returns a new instance of ComputerPlayer.
5 6 7 |
# File 'lib/computer_player/computer_player.rb', line 5 def initialize @triples = [ [1,2,3], [4,5,6], [7,8,9], [1,4,7], [2,5,8], [3,6,9], [1,5,9], [3,5,7] ] end |
Instance Method Details
#decide_move(board) ⇒ Object
9 10 11 12 13 |
# File 'lib/computer_player/computer_player.rb', line 9 def decide_move(board) return find_winning_cell(board, "O") if find_winning_cell(board, "O") != nil return find_winning_cell(board, "X") if find_winning_cell(board, "X") != nil return random_move(board) end |
#find_winning_cell(board, mark) ⇒ Object
15 16 17 18 |
# File 'lib/computer_player/computer_player.rb', line 15 def find_winning_cell(board, mark) return find_cell(board, mark) if find_cell(board, mark) != nil return nil end |
#random_move(board) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/computer_player/computer_player.rb', line 20 def random_move(board) while(true) trial_number = rand(9) + 1 if board[trial_number-1] == nil return trial_number end end end |