Class: StackWars::Player
- Inherits:
-
Object
- Object
- StackWars::Player
- Defined in:
- lib/stack_wars/player.rb
Instance Attribute Summary collapse
-
#color ⇒ Object
readonly
Returns the value of attribute color.
-
#reserves ⇒ Object
readonly
Returns the value of attribute reserves.
-
#successful_invasions ⇒ Object
readonly
Returns the value of attribute successful_invasions.
Instance Method Summary collapse
- #deploy_army ⇒ Object
-
#initialize(color) ⇒ Player
constructor
A new instance of Player.
- #invade_enemy_territory ⇒ Object
Constructor Details
#initialize(color) ⇒ Player
Returns a new instance of Player.
3 4 5 6 7 |
# File 'lib/stack_wars/player.rb', line 3 def initialize(color) @color = color @reserves = 3*Battlefield::SIZE @successful_invasions = 0 end |
Instance Attribute Details
#color ⇒ Object (readonly)
Returns the value of attribute color.
9 10 11 |
# File 'lib/stack_wars/player.rb', line 9 def color @color end |
#reserves ⇒ Object (readonly)
Returns the value of attribute reserves.
9 10 11 |
# File 'lib/stack_wars/player.rb', line 9 def reserves @reserves end |
#successful_invasions ⇒ Object (readonly)
Returns the value of attribute successful_invasions.
9 10 11 |
# File 'lib/stack_wars/player.rb', line 9 def successful_invasions @successful_invasions end |
Instance Method Details
#deploy_army ⇒ Object
11 12 13 14 |
# File 'lib/stack_wars/player.rb', line 11 def deploy_army raise Errors::IllegalMove unless @reserves > 0 @reserves -= 1 end |
#invade_enemy_territory ⇒ Object
16 17 18 |
# File 'lib/stack_wars/player.rb', line 16 def invade_enemy_territory @successful_invasions += 1 end |