toontown-just-works/toontown/fishing/FourCornerBingo.py
2024-07-07 18:08:39 -05:00

35 lines
1.4 KiB
Python

from direct.directnotify import DirectNotifyGlobal
from toontown.fishing import BingoGlobals
from toontown.fishing import BingoCardBase
class FourCornerBingo(BingoCardBase.BingoCardBase):
notify = DirectNotifyGlobal.directNotify.newCategory('FourCornerBingo')
corners = [0,
BingoGlobals.CARD_ROWS - 1,
BingoGlobals.CARD_COLS * (BingoGlobals.CARD_ROWS - 1),
BingoGlobals.CARD_COLS * BingoGlobals.CARD_ROWS - 1]
def __init__(self, cardSize = BingoGlobals.CARD_SIZE, rowSize = BingoGlobals.CARD_ROWS, colSize = BingoGlobals.CARD_COLS):
BingoCardBase.BingoCardBase.__init__(self, cardSize, rowSize, colSize)
self.gameType = BingoGlobals.FOURCORNER_CARD
def checkForWin(self, id):
corners = self.corners
if self.cellCheck(corners[0]) and self.cellCheck(corners[1]) and self.cellCheck(corners[2]) and self.cellCheck(corners[3]):
return BingoGlobals.WIN
return BingoGlobals.NO_UPDATE
def checkForColor(self, id):
topLeft, topRight, bottomLeft, bottomRight = (0, 0, 0, 0)
if id == self.corners[0]:
topLeft = 1
elif id == self.corners[1]:
topRight = 1
elif id == self.corners[2]:
bottomLeft = 1
elif id == self.corners[3]:
bottomRight = 1
return topLeft or topRight or bottomLeft or bottomRight
def checkForBingo(self):
return self.checkForWin(0)