def knockKnockTrack(self, avatar, duration):
     if avatar is None:
         return
     self.rimshot = base.loadSfx('phase_5/audio/sfx/AA_heal_telljoke.ogg')
     self.knockSfx = base.loadSfx('phase_5/audio/sfx/GUI_knock_%s.ogg' % random.randint(1, 4))
     joke = KnockKnockJokes[self.propId % len(KnockKnockJokes)]
     place = base.cr.playGame.getPlace()
     doorName = TTLocalizer.DoorNametag
     self.nametag = None
     self.nametagNP = None
     doorNP = render.find('**/KnockKnockDoorSphere_' + str(self.propId) + ';+s')
     if doorNP.isEmpty():
         self.notify.warning('Could not find KnockKnockDoorSphere_%s' % self.propId)
         return
     self.nametag = NametagGroup()
     self.nametag.setAvatar(doorNP)
     self.nametag.setFont(ToontownGlobals.getToonFont())
     self.nametag.setSpeechFont(ToontownGlobals.getToonFont())
     self.nametag.setName(doorName)
     self.nametag.setActive(0)
     self.nametag.manage(base.marginManager)
     self.nametag.getNametag3d().setBillboardOffset(4)
     nametagNode = self.nametag.getNametag3d()
     self.nametagNP = render.attachNewNode(nametagNode)
     self.nametagNP.setName('knockKnockDoor_nt_' + str(self.propId))
     pos = doorNP.getBounds().getCenter()
     self.nametagNP.setPos(pos + Vec3(0, 0, avatar.getHeight() + 2))
     d = duration * 0.125
     track = Sequence(Parallel(Sequence(Wait(d * 0.5), SoundInterval(self.knockSfx)), Func(self.nametag.setChat, TTLocalizer.DoorKnockKnock, CFSpeech), Wait(d)), Func(avatar.setChatAbsolute, TTLocalizer.DoorWhosThere, CFSpeech | CFTimeout, openEnded=0), Wait(d), Func(self.nametag.setChat, joke[0], CFSpeech), Wait(d), Func(avatar.setChatAbsolute, joke[0] + TTLocalizer.DoorWhoAppendix, CFSpeech | CFTimeout, openEnded=0), Wait(d), Func(self.nametag.setChat, joke[1], CFSpeech))
     if avatar == base.localAvatar:
         track.append(Func(self.sendUpdate, 'requestToonup'))
     track.append(Parallel(SoundInterval(self.rimshot, startTime=2.0), Wait(d * 4)))
     track.append(Func(self.cleanupTrack))
     track.delayDelete = DelayDelete.DelayDelete(avatar, 'knockKnockTrack')
     return track
 def setupNametag(self):
     if self.nametag == None:
         self.nametag = NametagGroup()
         self.nametag.setFont(ToontownGlobals.getBuildingNametagFont())
         if TTLocalizer.BuildingNametagShadow:
             self.nametag.setShadow(*TTLocalizer.BuildingNametagShadow)
         self.nametag.setContents(Nametag.CName)
         self.nametag.setColorCode(NametagGroup.CCSuitBuilding)
         self.nametag.setActive(0)
         self.nametag.setAvatar(self.getElevatorModel())
         name = self.cr.playGame.dnaStore.getTitleFromBlockNumber(self.bldg.block)
         if not name:
             name = TTLocalizer.CogsInc
         else:
             name += TTLocalizer.CogsIncExt
         self.nametag.setName(name)
         self.nametag.manage(base.marginManager)
Beispiel #3
0
 def setupNametag(self):
     if not self.wantsNametag():
         return
     if self.doorIndex != 0:
         return
     if self.nametag == None:
         self.nametag = NametagGroup()
         self.nametag.setFont(ToontownGlobals.getBuildingNametagFont())
         if TTLocalizer.BuildingNametagShadow:
             self.nametag.setShadow(*TTLocalizer.BuildingNametagShadow)
         self.nametag.setContents(Nametag.CName)
         self.nametag.setColorCode(NametagGroup.CCToonBuilding)
         self.nametag.setActive(0)
         self.nametag.setAvatar(self.getDoorNodePath())
         self.nametag.setObjectCode(self.block)
         name = self.cr.playGame.dnaStore.getTitleFromBlockNumber(self.block)
         self.nametag.setName(name)
         self.nametag.manage(base.marginManager)
Beispiel #4
0
 def __setupNametag(self):
     if self.nametag:
         self.clearNametag()
     if self.name == '':
         houseName = ''
     else:
         houseName = TTLocalizer.AvatarsHouse % TTLocalizer.GetPossesive(
             self.name)
     self.nametag = NametagGroup()
     self.nametag.setFont(ToontownGlobals.getBuildingNametagFont())
     if TTLocalizer.BuildingNametagShadow:
         self.nametag.setShadow(*TTLocalizer.BuildingNametagShadow)
     self.nametag.setContents(Nametag.CName)
     self.nametag.setColorCode(NametagGroup.CCHouseBuilding)
     self.nametag.setActive(0)
     self.nametag.setAvatar(self.house)
     self.nametag.setObjectCode(self.doId)
     self.nametag.setName(houseName)
     self.nametag.manage(base.marginManager)
Beispiel #5
0
 def __init__(self, other=None):
     Actor.__init__(self, None, None, other, flattenable=0, setFinal=1)
     ShadowCaster.__init__(self)
     self.__font = OTPGlobals.getInterfaceFont()
     self.name = ''
     self.soundChatBubble = None
     self.avatarType = ''
     self.nametagNodePath = None
     self.__nameVisible = 1
     self.nametag = NametagGroup()
     self.nametag.setAvatar(self)
     self.nametag.setFont(OTPGlobals.getInterfaceFont())
     self.nametag.setSpeechFont(OTPGlobals.getInterfaceFont())
     self.nametag2dContents = Nametag.CName | Nametag.CSpeech
     self.nametag2dDist = Nametag.CName | Nametag.CSpeech
     self.nametag2dNormalContents = Nametag.CName | Nametag.CSpeech
     self.nametag3d = self.attachNewNode('nametag3d')
     self.nametag3d.setTag('cam', 'nametag')
     self.nametag3d.setLightOff()
     self.getGeomNode().showThrough(OTPRender.ShadowCameraBitmask)
     self.nametag3d.hide(OTPRender.ShadowCameraBitmask)
     self.collTube = None
     self.scale = 1.0
     self.height = 0.0
     self.style = None
     self.understandable = 1
     self.setPlayerType(NametagGroup.CCNormal)
     self.ghostMode = 0
     self.__chatParagraph = None
     self.__chatMessage = None
     self.__chatFlags = 0
     self.__chatPageNumber = None
     self.__chatAddressee = None
     self.__chatDialogueList = []
     self.__chatSet = 0
     self.__chatLocal = 0
     self.__currentDialogue = None
 def __createNametag(self, parent):
     if self.nametagGroup == None:
         self.nametagGroup = NametagGroup()
         self.nametagGroup.setFont(ToontownGlobals.getToonFont())
         self.nametagGroup.setSpeechFont(ToontownGlobals.getToonFont())
         self.nametagGroup.setActive(0)
         self.nametagGroup.setAvatar(self.partyPlannerHead)
         self.nametagGroup.manage(base.marginManager)
         self.nametagGroup.setColorCode(self.nametagGroup.CCNonPlayer)
         self.nametagGroup.getNametag2d().setContents(0)
         self.nametagNode = NametagFloat2d()
         self.nametagNode.setContents(Nametag.CName)
         self.nametagGroup.addNametag(self.nametagNode)
         self.nametagGroup.setName(base.cr.partyManager.getPartyPlannerName())
         self.nametagNP = parent.attachNewNode(self.nametagNode)
         nametagPos = self.gui.find('**/step_01_partymanPeteNametag_locator').getPos()
         self.nametagNP.setPosHprScale(nametagPos[0], 0, nametagPos[2], 0, 0, 0, 0.1, 1, 0.1)
         self.chatNode = NametagFloat2d()
         self.chatNode.setContents(Nametag.CSpeech | Nametag.CThought)
         self.nametagGroup.addNametag(self.chatNode)
         self.nametagGroup.setChat(TTLocalizer.PartyPlannerInstructions, CFSpeech)
         self.chatNP = parent.attachNewNode(self.chatNode)
         chatPos = self.gui.find('**/step_01_partymanPeteText_locator').getPos()
         self.chatNP.setPosHprScale(chatPos[0], 0, chatPos[2], 0, 0, 0, 0.08, 1, 0.08)