Skip to content

Jimzbeginner]) # *jspillers: 601* ( "code":http: github.com jspillers ruby warrior beginner tower ) # k776: 580 ( "code":http: wiki.github.com ryanb ruby warrior k776s beginner code ) h2. intermediate # jarod42 : 982 ([[code

jmzcray edited this page Nov 17, 2010 · 1 revision

Sorry for the messiness and Yes, I'm a dirty programmer... and I just learn ruby for only a day.

class Player
  def play_turn(warrior)
    # add your code here

    @backward ||= 0
    if warrior.look(:backward)[0].to_s == "nothing"
	if warrior.look(:backward)[1].to_s == "nothing"
	    if warrior.look(:backward)[2].to_s == "Wizard" or warrior.look(:backward)[2].to_s == "Thick Sludge" or warrior.look(:backward)[2].to_s == "Archer" or warrior.look(:backward)[2].to_s == "Sludge"
		warrior.shoot!(:backward)
		@backward = 1
	    elsif warrior.look(:backward)[2].to_s == "Captive"
		warrior.walk!(:backward)
		@backward = 1
	    end
	elsif warrior.look(:backward)[1].to_s == "Wizard" or warrior.look(:backward)[1].to_s == "Thick Sludge" or warrior.look(:backward)[1].to_s == "Archer" or warrior.look(:backward)[1].to_s == "Sludge"
	    warrior.shoot!(:backward)
	    @backward = 1
	elsif warrior.look(:backward)[1].to_s == "Captive"
		warrior.walk!(:backward)
		@backward = 1
	end
    elsif warrior.feel(:backward).enemy?
	    warrior.attack!(:backward)
	    @backward = 1
    elsif warrior.feel(:backward).captive?
	    warrior.rescue!(:backward)
	    @backward = 1
    end

    if @backward == 0
    	if warrior.look[0].to_s == "nothing"
	    if warrior.look[1].to_s == "nothing"
	    	if warrior.look[2].to_s == "Wizard" or warrior.look[2].to_s == "Thick Sludge" or warrior.look[2].to_s == "Archer" or warrior.look[2].to_s == "Sludge"
		    warrior.shoot!
	    	else
	 	    warrior.walk!
	    	end
	    elsif warrior.look[1].to_s == "Wizard" or warrior.look[1].to_s == "Thick Sludge" or warrior.look[1].to_s == "Archer" or warrior.look[1].to_s == "Sludge"
	    	warrior.shoot!
	    else
	    	warrior.walk!
	    end
    	elsif warrior.feel.captive?
	    warrior.rescue!
    	elsif warrior.feel.enemy?
	    warrior.attack!
    	elsif warrior.feel.wall?
	    warrior.pivot!
	end
    end
    @backward = 0
  end
end