Sha256: e6f905265f2030a7ffc843d4da5f70bd9d8f068df1816b1d6066600279e8c66b

Contents?: true

Size: 558 Bytes

Versions: 1

Compression:

Stored size: 558 Bytes

Contents

require_relative "player"

module StudioGame
  class BerserkPlayer < Player
    def initialize(name, health = 100)
      super(name, health)
      @boost_count = 0
    end

    def berserk?
      @boost_count > 5
    end

    def boost
      super
      @boost_count += 1
      puts "#{@name} is berserk!" if berserk?
    end

    def drain
      berserk? ? boost : super
    end
  end

  if __FILE__ == $0
    berserker = BerserkPlayer.new("berserker", 50)
    6.times { berserker.boost }
    2.times { berserker.drain }
    puts berserker.health
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jadens_first_gem-1.0.0 lib/studio_game/berserk_player.rb