29 lines
823 B
Python
29 lines
823 B
Python
from Event import Event
|
|
|
|
from events.EndGameEvent import EndGameEvent
|
|
from events.StartBallEvent import StartBallEvent
|
|
|
|
|
|
class EndBallEvent(Event):
|
|
def __init__(self, playerState):
|
|
self.playerState = playerState
|
|
super().__init__("End Of Ball Event")
|
|
|
|
def trigger(self, target):
|
|
super().trigger(target)
|
|
if self.playerState.replayBall or not self.playerState.hasBallScored:
|
|
StartBallEvent().trigger(None)
|
|
return
|
|
|
|
self.playerState().removeBall()
|
|
|
|
self.scorePoints()
|
|
self.playerState().reset()
|
|
|
|
if self.playerState().ballsLeft == 0:
|
|
EndGameEvent().trigger(None)
|
|
|
|
def scorePoints(self):
|
|
bonus = self.playerState().bonus * self.playerState().bonusMultiplier * 1000
|
|
self.playerState().addPoints(bonus)
|