Compare commits

...

2 Commits

Author SHA1 Message Date
Jonas Zeunert
06f3f76257 Magic sleep time 2022-06-06 22:02:44 +02:00
Jonas Zeunert
8f28dc2143 Fix: Stupid check if active 2022-06-06 22:02:16 +02:00

View File

@@ -80,6 +80,7 @@ class PlayerState:
def activate(self):
self.resetBall()
time.sleep(3)
self.isActive = True
def deactivate(self):
@@ -142,13 +143,13 @@ class PlayerState:
self.hasBallScored = False
def resetBall(self):
self.resetBanks()
self.resetTargets()
self.printSpecial()
self.upperPlayfieldTimer = None
self.upperPlayfieldTimeIter = iter(UPPER_PLAYFIELD_TIME)
self.resetBonus()
self.resetTargets()
self.resetBanks()
def resetBonus(self):
self.bonus = 0
@@ -196,10 +197,14 @@ class PlayerState:
self.specialDisplay.printGameTimeBonus(self.bonusTime)
def advanceRightOrangeSpecial(self):
if not self.isActive:
return
self.orangeSpecialRight = True
self.setOrangeSpecialLit()
def advanceLeftOrangeSpecial(self):
if not self.isActive:
return
self.orangeSpecialLeft = True
self.setOrangeSpecialLit()
@@ -213,6 +218,8 @@ class PlayerState:
Lamp("Special Orange").activate()
def advanceRedSpecial(self):
if not self.isActive:
return
self.redSpecial += 1
CHAMP_LAMPS.activateNext()
@@ -221,6 +228,8 @@ class PlayerState:
Lamp("Special Red").activate()
def advanceTunnelScore(self):
if not self.isActive:
return
try:
self.tunnelScore = next(self.tunnelScoreIter)
TUNNEL_SCORE_LAMPS.deactivateCurrent()
@@ -230,6 +239,8 @@ class PlayerState:
pass
def advanceTunnel(self):
if not self.isActive:
return
if self.tunnelLit == 5:
self.advanceTunnelScore()
TUNNEL_LAMPS.deactivate()
@@ -241,6 +252,8 @@ class PlayerState:
TUNNEL_NUMBER_LAMPS.activateNext()
def advanceBonus(self):
if not self.isActive:
return
if self.bonus >= 20:
return
@@ -248,14 +261,17 @@ class PlayerState:
BONUS_LAMPS.activateNext()
def advanceBonusMultiplier(self):
if not self.isActive:
return
try:
self.bonusMultiplier = next(self.bonusMultiplierIter)
BONUS_MULTIPLIER_LAMPS.activateNext()
except StopIteration:
pass
def setReplayBall(self):
if not self.isActive:
return
self.replayBall = True
def addPoints(self, points):
@@ -268,6 +284,8 @@ class PlayerState:
self.points += points
def addBall(self):
if not self.isActive:
return
self.ballsLeft += 1
self.specialDisplay.printBallsToPlay(self.ballsLeft)
@@ -279,6 +297,8 @@ class PlayerState:
self.specialDisplay.printBallsToPlay(self.ballsLeft)
def advanceUpperPlayfieldTime(self):
if not self.isActive:
return
try:
self.upperPlayfieldTime = next(self.upperPlayfieldTimeIter)
UPPER_PLAYFIELD_TIME_LAMPS.activateNext()
@@ -304,5 +324,7 @@ class PlayerState:
self.upperPlayfieldTimer = Timer(1, self.updatePlayfieldTime)
def addBonusTimeSecond(self):
if not self.isActive:
return
self.bonusTime += 1