ang_ttt_gem 1.0.7 → 1.0.8
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/ang_ttt_gem/game.rb +9 -2
- metadata +1 -1
data/lib/ang_ttt_gem/game.rb
CHANGED
@@ -3,6 +3,7 @@ require "scoring"
|
|
3
3
|
require "validate"
|
4
4
|
require "human_player"
|
5
5
|
require "computer_player"
|
6
|
+
require "pry"
|
6
7
|
|
7
8
|
class Game
|
8
9
|
|
@@ -14,7 +15,7 @@ class Game
|
|
14
15
|
@validate = Validate.new
|
15
16
|
@players = []
|
16
17
|
end
|
17
|
-
|
18
|
+
|
18
19
|
def create_computer_player(mark)
|
19
20
|
@players << ComputerPlayer.new(mark)
|
20
21
|
end
|
@@ -28,6 +29,12 @@ class Game
|
|
28
29
|
@players[index].get_move(@board)
|
29
30
|
end
|
30
31
|
|
32
|
+
def player_can_make_move?(player)
|
33
|
+
move = get_player_move(player)
|
34
|
+
return true if move != false
|
35
|
+
return false if move == false
|
36
|
+
end
|
37
|
+
|
31
38
|
def move_valid?(move)
|
32
39
|
(0..8).include?(move)
|
33
40
|
end
|
@@ -35,7 +42,7 @@ class Game
|
|
35
42
|
def make_move_player(player, move)
|
36
43
|
index = player - 1
|
37
44
|
mark = @players[index].mark
|
38
|
-
|
45
|
+
false unless move_valid?(move)
|
39
46
|
make_move(move,mark)
|
40
47
|
prepare_display_state
|
41
48
|
end
|