oldschool-toontown/otp/uberdog/OtpAvatarManager.py
2019-12-30 01:00:16 -05:00

86 lines
2.9 KiB
Python

from pickle import loads, dumps
from direct.distributed import DistributedObject
from direct.directnotify import DirectNotifyGlobal
notify = DirectNotifyGlobal.directNotify.newCategory('AvatarManager')
class OtpAvatarManager(DistributedObject.DistributedObject):
notify = notify
OnlineEvent = 'GlobalAvatarManagerOnline'
def __init__(self, cr):
DistributedObject.DistributedObject.__init__(self, cr)
self.avatars = {}
def delete(self):
self.ignoreAll()
self.cr.avatarManager = None
DistributedObject.DistributedObject.delete(self)
return
def online(self):
messenger.send(OtpAvatarManager.OnlineEvent)
def sendRequestAvatarList(self):
self.sendUpdate('requestAvatarList', [0])
def rejectAvatarList(self, result):
messenger.send('avatarListFailed', [result])
def avatarListResponse(self, pickleData):
avatars = loads(pickleData)
messenger.send('avatarList', [avatars])
def rejectCreateAvatar(self, result):
messenger.send('createdNewAvatarFailed', [result])
def createAvatarResponse(self, avatarId, subId, access, founder):
self.notify.info('new avatarId: %s subId: %s access: %s founder: %s' % (avatarId,
subId,
access,
founder))
messenger.send('createdNewAvatar', [avatarId, subId])
def sendRequestRemoveAvatar(self, avatarId, subId, confirmPassword):
self.sendUpdate('requestRemoveAvatar', [0,
avatarId,
subId,
confirmPassword])
def rejectRemoveAvatar(self, reasonId):
messenger.send('rejectRemoveAvatar', [reasonId])
def removeAvatarResponse(self, avatarId, subId):
messenger.send('removeAvatarResponse', [avatarId, subId])
def sendRequestShareAvatar(self, avatarId, subId, shared):
self.sendUpdate('requestShareAvatar', [0,
avatarId,
subId,
shared])
def rejectShareAvatar(self, reasonId):
messenger.send('rejectShareAvatar', [reasonId])
def shareAvatarResponse(self, avatarId, subId, shared):
messenger.send('shareAvatarResponse', [avatarId, subId, shared])
def sendRequestAvatarSlot(self, subId, slot):
self.sendUpdate('requestAvatarSlot', [0, subId, slot])
def rejectAvatarSlot(self, reasonId, subId, slot):
messenger.send('rejectAvatarSlot', [reasonId, subId, slot])
def avatarSlotResponse(self, subId, slot):
messenger.send('avatarSlotResponse', [subId, slot])
def sendRequestPlayAvatar(self, avatarId, subId):
self.sendUpdate('requestPlayAvatar', [0, avatarId, subId])
def rejectPlayAvatar(self, reasonId, avatarId):
messenger.send('rejectPlayAvatar', [reasonId, avatarId])
def playAvatarResponse(self, avatarId, subId, access, founder):
messenger.send('playAvatarResponse', [avatarId,
subId,
access,
founder])