Class: Rubykon::MoveValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/rubykon/move_validator.rb

Instance Method Summary collapse

Instance Method Details

#trusted_valid?(identifier, color, game) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
18
19
20
# File 'lib/rubykon/move_validator.rb', line 14

def trusted_valid?(identifier, color, game)
  board = game.board
  spot_unoccupied?(identifier, board) &&
    no_ko_move?(identifier, game) &&
    no_suicide_move?(identifier, color, game)

end

#valid?(identifier, color, game) ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
7
8
9
10
11
12
# File 'lib/rubykon/move_validator.rb', line 4

def valid?(identifier, color, game)
  board = game.board
  no_double_move?(color, game) &&
    (Game.pass?(identifier) ||
    (move_on_board?(identifier, board) &&
      spot_unoccupied?(identifier, board) &&
      no_suicide_move?(identifier, color, game) &&
      no_ko_move?(identifier, game)))
end