Files
flippr-game/factories/DisplayFactory.py
Jonas Zeunert 3c28d8f41c damn
2022-08-30 18:25:49 +02:00

24 lines
955 B
Python

from displays.PlayerDisplay import PlayerDisplay
from displays.SpecialDisplay import SpecialDisplay
import config
import logging
class DisplayFactory:
def __init__(self, displayNames):
self.displayNames = displayNames
def createDisplays(self):
displays = [None] * config.MAX_PLAYERS
for display in self.displayNames:
if "Player" in display['name']:
id = int(display['name'].replace("Player_", ""))
displays[id] = PlayerDisplay(display['name'])
return displays
def createSpecialDisplay(self):
name = next(displayName['name'] for displayName in self.displayNames if "Special" in displayName['name'])
return SpecialDisplay(name)
def createPlayerDisplay(self, id):
name = next(displayName['name'] for displayName in self.displayNames if "Player" in displayName['name'] and str(id) in displayName['name'])
return PlayerDisplay(name)