我通过红宝石学习编程,我发现了真棒Rubywarrior由Railscasts瑞恩·贝茨。 不幸的是,我停留在我的代码被扔了语法错误消息($意外结束)。
我不要求的答案,我想那种出自己,但如果有人能指出哪里我的代码是从得到的错误,这将是超级。 谢谢!
class Player
def initialize
@maxhealth = 20
@dying = 7
@previoushealth = @maxhealth
@health = warrior.health
@warrior = warrior
end
def play_turn(warrior)
# If there are no enemies, rest until health is 100%
turn_start_check(warrior)
actions(warrior)
turn_end_check(warrior)
end
def actions(warrior)
if @damaged_since_last_turn
warrior.shoot!
elsif
@health < @maxhealth
warrior.rest!
else
warrior.walk!
end
end
def hurt?(warrior)
warrior.health < 20
end
def healthy?(warrior)
warrior.health = 20
end
def alone?(warrior)
warrior.feel.empty?
end
def should_i_move?(warrior)
if healthy? and alone?
warrior.rest!
else
warrior.walk!
end
# Put code here for if health from previous turn is less than last term
# If true don't rest and keep moving forward
def turn_start_check(warrior)
@damaged_since_last_turn = @previoushealth > warrior.health
end
def turn_end_check(warrior)
@previoushealth = warrior.health
end
end