Compare commits
2 Commits
5db0d3f03d
...
06f3f76257
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
06f3f76257 | ||
|
|
8f28dc2143 |
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user