class Engine

Constants

DIFFICULTY_LEVELS

Attributes

difficulty[RW]

Public Class Methods

difficulty_level() click to toggle source
# File lib/ttt-cli/engine.rb, line 50
def self.difficulty_level
  level = CommandLine::Display.difficulty
  DIFFICULTY_LEVELS[level.to_sym]
end
game_mode() click to toggle source
# File lib/ttt-cli/engine.rb, line 45
def self.game_mode
  mode = CommandLine::Display.game_mode
  mode.to_sym
end
is_singleplayer?(mode) click to toggle source
# File lib/ttt-cli/engine.rb, line 33
def self.is_singleplayer?(mode)
  mode == :singleplayer
end
reset_counters() click to toggle source
# File lib/ttt-cli/engine.rb, line 55
def self.reset_counters
  @@draws = 0
  @@losses = 0
  @@wins = 0
end
set_difficulty() click to toggle source
# File lib/ttt-cli/engine.rb, line 37
def self.set_difficulty
  if @@game_mode == :singleplayer
    Engine.difficulty_level
  else
    HardAI
  end
end
set_game_mode(mode) click to toggle source
# File lib/ttt-cli/engine.rb, line 20
def self.set_game_mode(mode) # todo
  if Engine.is_singleplayer?(mode)
    Engine.reset_counters if @@game_mode == :hotseat || @@game_mode == :observer
    @@game_mode = :singleplayer
  elsif mode == :hotseat
    Engine.reset_counters if @@game_mode == :singleplayer || @@game_mode == :observer
    @@game_mode = :hotseat
  else
    Engine.reset_counters if @@game_mode == :singleplayer || @@game_mode == :hotseat
    @@game_mode = :observer
  end
end

Public Instance Methods

draws() click to toggle source
# File lib/ttt-cli/engine.rb, line 69
def draws
  @@draws
end
game_mode() click to toggle source
# File lib/ttt-cli/engine.rb, line 61
def game_mode
  @@game_mode
end
losses() click to toggle source
# File lib/ttt-cli/engine.rb, line 73
def losses
  @@losses
end
wins() click to toggle source
# File lib/ttt-cli/engine.rb, line 65
def wins
  @@wins
end