mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-12-26 13:12:30 -06:00
63 lines
2.3 KiB
Python
Executable file
63 lines
2.3 KiB
Python
Executable file
from pandac.PandaModules import *
|
|
from toontown.toonbase.ToontownGlobals import *
|
|
from direct.showbase import DirectObject
|
|
from direct.directnotify import DirectNotifyGlobal
|
|
from toontown.toontowngui import TTDialog
|
|
from otp.otpbase import OTPLocalizer
|
|
from toontown.toontowngui import ToonHeadDialog
|
|
from direct.gui.DirectGui import DGG
|
|
from otp.otpbase import OTPGlobals
|
|
from toontown.toonbase import TTLocalizer
|
|
|
|
class GroupInvitee(ToonHeadDialog.ToonHeadDialog):
|
|
notify = DirectNotifyGlobal.directNotify.newCategory('GroupInvitee')
|
|
|
|
def __init__(self):
|
|
pass
|
|
|
|
def make(self, party, toon, leaderId, merger, **kw):
|
|
self.leaderId = leaderId
|
|
self.avName = toon.getName()
|
|
self.av = toon
|
|
self.avId = toon.doId
|
|
self.avDNA = toon.getStyle()
|
|
self.party = party
|
|
if merger:
|
|
text = TTLocalizer.BoardingInviteeMergeMessage % self.avName
|
|
else:
|
|
text = TTLocalizer.BoardingInviteeMessage % self.avName
|
|
style = TTDialog.TwoChoice
|
|
buttonTextList = [OTPLocalizer.FriendInviteeOK, OTPLocalizer.FriendInviteeNo]
|
|
command = self.__handleButton
|
|
optiondefs = (('dialogName', 'GroupInvitee', None),
|
|
('text', text, None),
|
|
('style', style, None),
|
|
('buttonTextList', buttonTextList, None),
|
|
('command', command, None),
|
|
('image_color', (1.0, 0.89, 0.77, 1.0), None),
|
|
('geom_scale', 0.2, None),
|
|
('geom_pos', (-0.1, 0, -0.025), None),
|
|
('pad', (0.075, 0.075), None),
|
|
('topPad', 0, None),
|
|
('midPad', 0, None),
|
|
('scale', 0.75, None))
|
|
self.defineoptions(kw, optiondefs)
|
|
ToonHeadDialog.ToonHeadDialog.__init__(self, self.avDNA)
|
|
self.initialiseoptions(GroupInvitee)
|
|
self.show()
|
|
return
|
|
|
|
def cleanup(self):
|
|
ToonHeadDialog.ToonHeadDialog.cleanup(self)
|
|
|
|
def forceCleanup(self):
|
|
self.party.requestRejectInvite(self.leaderId, self.avId)
|
|
self.cleanup()
|
|
|
|
def __handleButton(self, value):
|
|
place = base.cr.playGame.getPlace()
|
|
if value == DGG.DIALOG_OK and place and not place.getState() == 'elevator':
|
|
self.party.requestAcceptInvite(self.leaderId, self.avId)
|
|
else:
|
|
self.party.requestRejectInvite(self.leaderId, self.avId)
|
|
self.cleanup()
|