ruby-warriorの履歴

ハマってしまった…


https://www.bloc.io/ruby-warrior/#/warriors/13781/levels/6
の途中コード

class Player
  def play_turn(warrior)
    if !@is_rescued
      if warrior.feel(:backward).captive?
        warrior.rescue!(:backward)
        @is_rescued = true
      else
        warrior.walk!(:backward)
      end
    else
      if !warrior.feel.empty?
        warrior.attack!
      elsif @health && @health > warrior.health
        if @is_full
          warrior.walk!
        else
          warrior.walk!(:backward)
        end
      elsif warrior.health < 20
        warrior.rest!
        if @health == 20
          @is_full = true
        end                        
      else warrior.feel.empty?
        warrior.walk!      
      end
    end
    @health = warrior.health        
  end
end