У меня есть класс Board
, который создает хэш:
class Board
attr_accessor :board
def initialize
@board = {}
end
def generate_board
i = 0
until i == 8
@board[i] = [" . ", " . ", " . ", " . ", " . ", " . ", " . "," . "]
i += 1
end
end
end
и я пытаюсь получить к нему доступ из другого класса:
class Pawn
def legal_moves
possible_moves = []
if @board[@position[0] + 1][@position[1] + 1].is_a? Piece
possible_moves << [[@position[0] + 1, @position[1] + 1]]
end
if @board[@position[0] + 1][@position[1] - 1].is_a? Piece
possible_moves << [[@position[0] + 1, @position[1] - 1]]
end
@legal_moves = possible_moves
end
end
Как я могу получить доступ к этому сохраненному состоянию доски, не создавая новый объект доски? Я не могу создать новый объект платы, потому что состояние доски должно быть постоянным. Я уже создал оригинальный экземпляр в другом классе, который играет в игру.