player_score.rb done
This commit is contained in:
1 parent
b2cef2f27c
commit
629429e1f2
1 file changed
+31
-12
+31
-12
@@ -15,34 +15,53 @@
|
||||
# Le score doit être accessible en lecture mais pas modifiable directement.
|
||||
|
||||
class Player
|
||||
# À compléter.
|
||||
attr_reader :name, :score
|
||||
|
||||
def initialize(name)
|
||||
@name = name
|
||||
@score = 0
|
||||
end
|
||||
|
||||
def add_points(points)
|
||||
if points.is_a?(Integer) && points.positive?
|
||||
@score += points
|
||||
end
|
||||
end
|
||||
|
||||
def winner?
|
||||
@score >= 5
|
||||
end
|
||||
|
||||
def reset_score
|
||||
@score = 0
|
||||
end
|
||||
end
|
||||
|
||||
player = Player.new("Alice")
|
||||
|
||||
# Résultats attendus :
|
||||
#
|
||||
# player.name
|
||||
puts player.name
|
||||
# => "Alice"
|
||||
#
|
||||
# player.score
|
||||
puts player.score
|
||||
# => 0
|
||||
#
|
||||
# player.add_points(2)
|
||||
# player.score
|
||||
player.add_points(2)
|
||||
puts player.score
|
||||
# => 2
|
||||
#
|
||||
# player.add_points(-1)
|
||||
# player.score
|
||||
player.add_points(-1)
|
||||
puts player.score
|
||||
# => 2
|
||||
#
|
||||
# player.winner?
|
||||
puts player.winner?
|
||||
# => false
|
||||
#
|
||||
# player.add_points(3)
|
||||
# player.winner?
|
||||
player.add_points(3)
|
||||
puts player.winner?
|
||||
# => true
|
||||
#
|
||||
# player.reset_score
|
||||
# player.score
|
||||
player.reset_score
|
||||
puts player.score
|
||||
# => 0
|
||||
Reference in new issue
Block a user