У вас, вероятно, должен быть какой-то класс среды, чтобы отслеживать всех ваших персонажей.Это может быть расширено, чтобы разрешить перемещение и т. Д. Нечто сверхпростое может выглядеть так:
class Environment
def initialize(player, baddies)
@player = player
@baddies = baddies
end
def play_game
@baddies.each do |baddie|
baddie.interact(@player)
end
end
end
baddies = 3.times.map do
Opponent.new
end
Environment.new(Player.new, baddies).play_game
Кроме того, ваш код в представленном виде не будет работать.Ваши hurt
методы действуют так, как будто они принимают параметр amount
, но вы никогда этого не объявляете;Вы вызываете player.add_points, но не определяете этот метод. Дайте мне знать, если у вас есть другие конкретные вопросы