Class: StudioGame::BerserkPlayer

Inherits:
Player
  • Object
show all
Defined in:
lib/berserk_player_class.rb

Instance Attribute Summary

Attributes inherited from Player

#health, #name

Instance Method Summary collapse

Methods inherited from Player

#<=>, #each_found_treasure, #found_treasure, #points, #score, #to_s

Methods included from Playable

#strong?

Constructor Details

#initialize(name, health = 100) ⇒ BerserkPlayer

overwrites the default method when Player.new is created! Default health is now 100.



4
5
6
7
# File 'lib/berserk_player_class.rb', line 4

def initialize(name, health=100) #overwrites the default method when Player.new is created! Default health is now 100.
    super(name, health)
    @w00t_count = 0
end

Instance Method Details

#berserk?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/berserk_player_class.rb', line 9

def berserk? 
    @w00t_count > 5
end

#blamObject



19
20
21
# File 'lib/berserk_player_class.rb', line 19

def blam
    berserk? ? w00t : super #ternary operator rocks. woot if berserk is true, super if false
end

#w00tObject



13
14
15
16
17
# File 'lib/berserk_player_class.rb', line 13

def w00t
    super #kind of like "apply all" here where super calls and applies the whole regular Player w00t method.
    @w00t_count +=1 #additional w00t method instructions specific to berserker subclass.
    puts "#{@name} is berserk!" if berserk? #fancy if statement (prints a warning when statement is true!)
end