diff options
author | Martin DeMello <mdemello@google.com> | 2019-02-07 00:52:02 -0800 |
---|---|---|
committer | John Fultz <jfultz@wolfram.com> | 2019-02-07 16:20:28 -0600 |
commit | 9e93419a236f34cfb016461a7e37a1280177e05a (patch) | |
tree | 2196679c562381de0ae9ccc44835733d01c0dbf9 /bindings/ruby/test2_selfplay.rb | |
parent | d387d2e719f736d28db797d47ffc4fca29a202fa (diff) |
Add ruby bindings
Diffstat (limited to 'bindings/ruby/test2_selfplay.rb')
-rw-r--r-- | bindings/ruby/test2_selfplay.rb | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/bindings/ruby/test2_selfplay.rb b/bindings/ruby/test2_selfplay.rb new file mode 100644 index 0000000..3cc101b --- /dev/null +++ b/bindings/ruby/test2_selfplay.rb @@ -0,0 +1,47 @@ +require_relative 'quackle' +require_relative 'test_base' + + +dm = initialize_dm + +p1 = get_computer_player(dm) +p2 = get_computer_player(dm) + +# Create computer players +player1 = Quackle::Player.new('Compy1', Quackle::Player::ComputerPlayerType, 0) +player1.setComputerPlayer(p1) +puts player1.name + +player2 = Quackle::Player.new('Compy2', Quackle::Player::ComputerPlayerType, 1) +player2.setComputerPlayer(p2) +puts player2.name + +dm.seedRandomNumbers(42) + +game = Quackle::Game.new +players = Quackle::PlayerList.new + +players << player1 +players << player2 + +game.setPlayers(players) +game.associateKnownComputerPlayers +game.addPosition + + +50.times do + if game.currentPosition.gameOver + puts 'GAME OVER' + break + end + + player = game.currentPosition.currentPlayer + puts 'Player: ' + player.name + puts 'Rack : ' + player.rack.toString + + move = game.haveComputerPlay + puts 'Move: ' + move.toString + puts "Board: \n" + game.currentPosition.board.toString + + sleep(1) +end |