Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View kevinnio's full-sized avatar

Kevin Perez kevinnio

View GitHub Profile
@kevinnio
kevinnio / nivel_9_beginner_rubywarrior.rb
Last active August 29, 2015 14:00
Código del nivel 9, modo Beginner de RubyWarrior
class Player
def initialize
@health = 0
end
def play_turn(warrior)
if warrior.feel.empty?
enemies_around = false
warrior.look.each do |space|
space.captive? ? enemies_around = false : enemies_around = space.enemy? # Don't attack if there's a captive in the way
@kevinnio
kevinnio / nivel_9_intermediate_rubywarrior.rb
Created May 6, 2014 23:44
Código del nivel 9, modo Intermediate
class Player
def play_turn(warrior)
@units = warrior.listen
@enemies = @units.select { |unit| unit.enemy? }
@captives = @units.select { |unit| unit.captive? }
@hurry_captives = @captives.select { |captive| captive.ticking? }
[@hurry_captives, @enemies, @captives].each do |units|
if not units.empty?
@kevinnio
kevinnio / nivel_1_beginner_rubywarrior.rb
Created May 7, 2014 00:09
Código del nivel 1, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
warrior.walk!
end
end
@kevinnio
kevinnio / nivel_2_beginner_rubywarrior.rb
Created May 7, 2014 00:10
Código del nivel 2, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
warrior.feel.empty? ? warrior.walk! : warrior.attack!
end
end
@kevinnio
kevinnio / nivel_3_beginner_rubywarrior.rb
Created May 7, 2014 00:13
Código del nivel 3, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
if warrior.feel.empty?
warrior.health < 20 ? warrior.rest! : warrior.walk!
else
warrior.attack!
end
end
end
@kevinnio
kevinnio / nivel_4_beginner_rubywarrior.rb
Created May 7, 2014 00:28
Código del nivel 4, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
@health = 0 if not @health
if warrior.feel.empty?
(warrior.health < 20 and not taking_damage? warrior) ? warrior.rest! : warrior.walk!
else
warrior.attack!
end
@health = warrior.health
@kevinnio
kevinnio / nivel_5_beginner_rubywarrior.rb
Created May 7, 2014 00:30
Código del nivel 5, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
@health = 0 if not @health
if warrior.feel.empty?
(warrior.health < 20 and not taking_damage? warrior) ? warrior.rest! : warrior.walk!
else
warrior.feel.captive? ? warrior.rescue! : warrior.attack!
end
@health = warrior.health
@kevinnio
kevinnio / nivel_6_beginner_rubywarrior.rb
Created May 7, 2014 00:49
Código del nivel 6, modo Beginner de RubyWarrior
class Player
def play_turn(warrior)
@health = 0 if not @health
@direction = :forward if not @direction
@direction = :forward if @direction == :backward and warrior.feel(@direction).wall?
if warrior.feel(@direction).empty?
if warrior.health < 20 and not taking_damage? warrior
warrior.rest!
else
@kevinnio
kevinnio / nivel_7_beginner_rubywarrior.rb
Created May 7, 2014 01:01
Código del nivel 7, modo Beginner de RubyWarrior
class Player
def initialize
@health = 0
end
def play_turn(warrior)
if warrior.feel.empty?
if warrior.health < 20 and not taking_damage? warrior
warrior.rest!
@kevinnio
kevinnio / nivel_8_beginner_rubywarrior.rb
Created May 7, 2014 01:15
Código del nivel 8, modo Beginner de RubyWarrior
class Player
def initialize
@health = 0
end
def play_turn(warrior)
if warrior.feel.empty?
if warrior.health < 20 and not taking_damage? warrior
warrior.rest!