checkers/checkers.rb

50 lines
778 B
Ruby
Raw Normal View History

2011-08-26 16:25:10 +02:00
#!/usr/bin/ruby
2011-08-26 23:55:45 +02:00
TEAM_1_MAN = ' w '
TEAM_1_KING = ' W '
TEAM_2_MAN = ' b '
TEAM_2_KING = ' B '
BOARD_EMPTY = ' _ '
BOARD_SIZE = 8
2011-08-26 16:25:10 +02:00
class Board
def initialize()
2011-08-26 23:55:45 +02:00
@board = Array.new(BOARD_SIZE) {|i| Array.new(BOARD_SIZE, BOARD_EMPTY)}
0.step(BOARD_SIZE) {|i|
peice = (i < 3 ? TEAM_1_MAN : TEAM_2_MAN)
if [0,2,5,7].include? i
start = 1
elsif [1,6].include? i
start = 0
else
next
end
start.step(BOARD_SIZE,2) {|j|
@board[i][j] = peice
}
}
2011-08-26 16:25:10 +02:00
end
2011-08-26 17:26:55 +02:00
def to_s()
2011-08-26 23:55:45 +02:00
str = ' '
0.step(BOARD_SIZE) {|i|
str += ' ' + i.to_s + ' '
}
str += "\n"
i = 0;
@board.each {|row|
str += ('A'.ord + i).chr + ' '
i += 1
2011-08-26 17:26:55 +02:00
row.each {|cell|
str += cell
}
str += "\n"
}
return str
2011-08-26 16:25:10 +02:00
end
2011-08-26 17:26:55 +02:00
2011-08-26 16:25:10 +02:00
end
b = Board.new()
2011-08-26 17:26:55 +02:00
puts b.to_s