我正在编写井字游戏程序。该程序是热座型游戏(用户对用户)。我编写了程序的一部分,它在板上的任何地方打印一个 x,但我需要帮助才能使移动保持不变。现在它会在棋盘上你想要的位置放置一个 x,但它不会为下一步行动而保存。
这是代码(我还没有完成程序的其余部分):
class Game
def initialize
@board=Array.new
@board[1]="__|"
@board[2]="__"
@board[3]="|__"
@board[4]="\n__|"
@board[5]="__"
@board[6]="|__"
@board[7]="\n |"
@board[8]=" "
@board[9]="| "
@turn = "x"
end
def show_board
@board.each do |i|
print i
end
end
def set_turn #switches turns
if @turn == "x"
@turn == "o"
else @turn == "o"
@turn == "x"
end
end
def make_move
puts "Enter x coordinate"
x=gets.to_i
puts "Enter y coordinate"
y=gets.to_i
if y==1
if y==1
if x==1
@board[1]="_x|"
end
end
if y==2
if x==1
@board[2]="_x"
end
end
if y==3
if x==1
@board[3]="|x_"
end
end
if y==1
if x==2
@board[4]="\n_x|"
end
end
if y==2
if x==2
@board[5]="_x"
end
end
if y==3
if x==2
@board[6]="|x_"
end
end
if y==1
if x==3
@board[7]="\nx |"
end
end
if y==2
if x==3
@board[8]="x "
end
end
end
if y==3
if x==3
@board[9]="|x"
end
end
end
def check_win
end
end
class Square
def set_value
end
def value
end
def initialize
@value
end
end
g=Game.new
g.show_board
g.make_move
g.show_board