Add: Bonus Event

This commit is contained in:
Jonas Zeunert
2022-02-21 23:18:33 +01:00
parent 011ff20365
commit 05c26080ab
5 changed files with 58 additions and 6 deletions

View File

@@ -18,7 +18,30 @@ from events.RedSpecialEvent import RedSpecialEvent
from events.OrangeSpecialEvent import OrangeSpecialEvent
from events.SpinnerEvent import SpinnerEvent
from events.FixedTargetEvent import FixedTargetEvent
from events.BonusEvent import BonusEvent
BONUS_EVENT_TARGETS = [
"Left Inlane",
"Right Inlane",
"Right Outlane Kicker",
"Canal Button Bottom",
"Canal Button Middle Bottom",
"Canal Button Middle Top",
"Canal Button Top",
"Fixed Target 1",
"Fixed Target 2",
"Fixed Target 3",
"Fixed Target 4",
"Fixed Target 5",
"Left Bank Left",
"Left Bank Middle Left",
"Left Bank Middle Right",
"Left Bank Right",
"Right Bank Left",
"Right Bank Middle",
"Right Bank Right",
]
class EventFactory:
def __init__(self, targets, currentPlayer):
self.targets = targets
@@ -123,5 +146,13 @@ class EventFactory:
self.__registerEventToTarget(event, self.targets["Fixed Target 5"])
return event
def createBonusEvent(self):
event = BonusEvent(self.currentPlayer)
self.__registerEventToTargets(event, BONUS_EVENT_TARGETS)
def __registerEventToTargets(self, event, targetNames):
for targetName in targetNames:
self.__registerEventToTarget(event, self.targets[targetName])
def __registerEventToTarget(self, event, target):
target.on(target.hit_key, event.trigger)