def commence(self=self): NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus["how"], [requestStatus]) base.playMusic(self.music, looping=1, volume=0.8) base.transitions.irisIn() mint = bboard.get(DistributedMint.DistributedMint.ReadyPost) self.loader.hood.spawnTitleText(mint.mintId, mint.floorNum)
def __enableControlInterface(self): gui = loader.loadModel("phase_3.5/models/gui/avatar_panel_gui") self.closeButton = DirectButton( image=( gui.find("**/CloseBtn_UP"), gui.find("**/CloseBtn_DN"), gui.find("**/CloseBtn_Rllvr"), gui.find("**/CloseBtn_UP"), ), relief=None, scale=2, text=TTLocalizer.CashbotCraneLeave, text_scale=0.04, text_pos=(0, -0.07), text_fg=VBase4(1, 1, 1, 1), pos=(1.05, 0, -0.82), command=self.__exitCrane, ) self.accept("escape", self.__exitCrane) self.accept("control", self.__controlPressed) self.accept("control-up", self.__controlReleased) self.accept("InputState-forward", self.__upArrow) self.accept("InputState-reverse", self.__downArrow) self.accept("InputState-turnLeft", self.__leftArrow) self.accept("InputState-turnRight", self.__rightArrow) taskMgr.add(self.__watchControls, "watchCraneControls") taskMgr.doMethodLater(5, self.__displayCraneAdvice, self.craneAdviceName) taskMgr.doMethodLater(10, self.__displayMagnetAdvice, self.magnetAdviceName) NametagGlobals.setOnscreenChatForced(1) self.arrowVert = 0 self.arrowHorz = 0 return
def exit(self): if not self.entered: return self.entered = 0 messenger.send('stickerBookExited') base.playSfx(self.closeSound) self.pages[self.currPageIndex].exit() base.render.show() setBlackBackground = 0 for obj in base.cr.doId2do.values(): if isinstance(obj, DistributedFireworkShow.DistributedFireworkShow) or isinstance(obj, DistributedPartyFireworksActivity.DistributedPartyFireworksActivity): setBlackBackground = 1 if setBlackBackground: base.setBackgroundColor(Vec4(0, 0, 0, 1)) else: base.setBackgroundColor(ToontownGlobals.DefaultBackgroundColor) gsg = base.win.getGsg() if gsg: base.render.prepareScene(gsg) NametagGlobals.setMin2dAlpha(self.oldMin2dAlpha) NametagGlobals.setMax2dAlpha(self.oldMax2dAlpha) base.setCellsAvailable([base.rightCells[0]], 1) self.__isOpen = 0 self.hide() self.hideButton() cleanupDialog('globalDialog') self.pageTabFrame.hide() self.ignore('shtiker-page-done') self.ignore(ToontownGlobals.StickerBookHotkey) self.ignore(ToontownGlobals.OptionsPageHotkey) self.ignore('arrow_right') self.ignore('arrow_left') if base.config.GetBool('want-qa-regression', 0): self.notify.info('QA-REGRESSION: SHTICKERBOOK: Close')
def commence(self = self): NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus['how'], [requestStatus]) base.playMusic(self.music, looping=1, volume=0.8) base.transitions.irisIn() CountryClub = bboard.get(DistributedCountryClub.DistributedCountryClub.ReadyPost) self.loader.hood.spawnTitleText(CountryClub.countryClubId, CountryClub.floorNum)
def exit(self): self.ignoreAll() messenger.send('exitToonInterior') self._telemLimiter.destroy() del self._telemLimiter NametagGlobals.setMasterArrowsOn(0) self.loader.activityMusic.stop()
def exitReward(self): self.ignore('clientCleanup') taskMgr.remove('countUpTask') taskMgr.remove('countDownTask') taskMgr.remove('celebrate') taskMgr.remove('purchase-trans') taskMgr.remove('delayAdd') taskMgr.remove('delaySubtract') for toon in self.toons: toon.detachNode() del self.toons if hasattr(self, 'toonsKeep'): for delayDelete in self.toonsKeep: delayDelete.destroy() del self.toonsKeep for counter in self.counters: counter.reparentTo(hidden) for total in self.totalCounters: total.reparentTo(hidden) self.foreground.reparentTo(hidden) self.backgroundL.reparentTo(hidden) self.backgroundR.reparentTo(hidden) self.sidewalk.reparentTo(hidden) self.sidewalkL.reparentTo(hidden) self.sidewalkR.reparentTo(hidden) self.door.reparentTo(hidden) self.title.reparentTo(self.frame) self.rewardDoubledJellybeanLabel.hide() base.camLens.setMinFov(settings['fov']/(4./3.)) NametagGlobals.setOnscreenChatForced(0)
def enterControlled(self, avId): self.avId = avId self.toon = base.cr.doId2do.get(avId, None) if self.toon: self.toon.stopSmooth() self.toon.stopPosHprBroadcast() for feet in self.toon.getPieces(('legs', 'feet')): feet.hide() self.toon.reparentTo(self.toonSeat) self.toon.dropShadow.hide() self.notify.debug('setting pos of toon%s' % self.toon.doId) self.toon.setPosHpr(0, 0, 0, 0, 0, 0) self.toon.loop('sit') if self.toon.doId == localAvatar.doId: self.notify.debug('calling send currentPosition') self.toon.sendCurrentPosition() self.doHeadScale(self.toon, 1.75) self.toon.setShear(0, 0, 0) NametagGlobals.setOnscreenChatForced(1) if self.localVehicle: camera.reparentTo(self.cameraNode) camera.setPosHpr(0, -33, 16, 0, -10, 0) self.physicsMgr.attachPhysicalNode(self.node()) self.__enableControlInterface() self.__createPieWindshield() self.startPosHprBroadcast() self.engineSfxTrack = self.generateEngineStartTrack() self.engineSfxTrack.start() else: self.startSmooth() taskName = 'updateNonlocalVehicle-%s' % avId self.updateNonLocalTask = taskMgr.add(self.__updateNonlocalVehicle, taskName) return
def commence(self = self): NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus['how'], [requestStatus]) base.playMusic(self.music, looping=1, volume=0.8) base.transitions.irisIn() stage = bboard.get(DistributedStage.DistributedStage.ReadyPost) self.loader.hood.spawnTitleText(stage.stageId)
def exitReward(self): self.notify.info('exitReward()') self.clearInterval(self.uniqueName('floorReward')) self._removeMembersKeep() NametagGlobals.setMasterArrowsOn(1) for toon in self.toons: toon.startSmooth()
def exitControlled(self): if self.localVehicle: self.stopPosHprBroadcast() self.__disableControlInterface() self.physicsMgr.removePhysicalNode(self.node()) self.cleanupParticles() camera.reparentTo(localAvatar) camera.setPos(localAvatar.cameraPositions[0][0]) camera.setHpr(0, 0, 0) self.engineSfxTrack.finish() self.engineSfxTrack = self.generateEngineStopTrack() else: self.stopSmooth() taskMgr.remove(self.updateNonLocalTask) if self.toon and not self.toon.isDisabled() and not self.toon.isEmpty(): self.toon.dropShadow.show() self.doHeadScale(self.toon, None) self.toon.setPosHpr(self.geom[0], 0, 8, 0, 0, 0, 0) for feet in self.toon.getPieces(('legs', 'feet')): feet.show() self.toon.reparentTo(render) self.toon.loop('neutral') self.toon.startSmooth() NametagGlobals.setOnscreenChatForced(0) base.camLens.setMinFov(settings['fov']/(4./3.))
def exitFLM(self): self.notify.debug("FriendsListManager: exitFLM()") if self._preserveFriendsList: return if not self._entered: return self._entered = False self.ignore("openFriendsList") self.ignore("clickedNametag") base.localAvatar.setFriendsListButtonActive(0) NametagGlobals.setMasterNametagsActive(0) if self.avatarPanel: self.avatarPanel.cleanup() self.avatarPanel = None self.ignore("gotoAvatar") self.ignore("friendAvatar") self.ignore("avatarDetails") FriendsListPanel.hideFriendsList() ToontownFriendSecret.hideFriendSecret() if base.cr.friendManager: base.cr.friendManager.setAvailable(0) self.ignore("friendInvitation") FriendInviter.hideFriendInviter() ToonAvatarDetailPanel.hideAvatarDetail() ToonTeleportPanel.hideTeleportPanel() return
def __unmakeGui(self): self.notify.debug('__unmakeGui') if not self.madeGui: return if self.flashingLabel: self.flashingLabel.finish() self.flashingLabel = None NametagGlobals.setMasterArrowsOn(1) self.__disableAimInterface() self.upButton.unbind(DGG.B1PRESS) self.upButton.unbind(DGG.B1RELEASE) self.downButton.unbind(DGG.B1PRESS) self.downButton.unbind(DGG.B1RELEASE) self.leftButton.unbind(DGG.B1PRESS) self.leftButton.unbind(DGG.B1RELEASE) self.rightButton.unbind(DGG.B1PRESS) self.rightButton.unbind(DGG.B1RELEASE) self.aimPad.destroy() del self.aimPad del self.fireButton del self.upButton del self.downButton del self.leftButton del self.rightButton self.madeGui = 0 return
def enter(self, requestStatus, visibilityFlag = 1, arrowsOn = 1): teleportDebug(requestStatus, 'Street.enter(%s)' % (requestStatus,)) self._ttfToken = None self.fsm.enterInitialState() base.playMusic(self.loader.music, looping=1, volume=0.8) self.loader.geom.reparentTo(render) if visibilityFlag: self.visibilityOn() base.localAvatar.setGeom(self.loader.geom) base.localAvatar.setOnLevelGround(1) self._telemLimiter = TLGatherAllAvs('Street', RotationLimitToH) NametagGlobals.setMasterArrowsOn(arrowsOn) self.zone = ZoneUtil.getBranchZone(requestStatus['zoneId']) def __lightDecorationOn__(): geom = base.cr.playGame.getPlace().loader.geom self.halloweenLights = geom.findAllMatches('**/*light*') self.halloweenLights += geom.findAllMatches('**/*lamp*') self.halloweenLights += geom.findAllMatches('**/prop_snow_tree*') for light in self.halloweenLights: light.setColorScaleOff(1) if base.cr.newsManager.isHolidayRunning(ToontownGlobals.HALLOWEEN) and self.loader.hood.spookySkyFile: lightsOff = Sequence(LerpColorScaleInterval(base.cr.playGame.hood.loader.geom, 0.1, Vec4(0.55, 0.55, 0.65, 1)), Func(self.loader.hood.startSpookySky)) lightsOff.start() else: self.loader.hood.startSky() lightsOn = LerpColorScaleInterval(base.cr.playGame.hood.loader.geom, 0.1, Vec4(1, 1, 1, 1)) lightsOn.start() self.accept('doorDoneEvent', self.handleDoorDoneEvent) self.accept('DistributedDoor_doorTrigger', self.handleDoorTrigger) self.enterZone(requestStatus['zoneId']) self.tunnelOriginList = base.cr.hoodMgr.addLinkTunnelHooks(self, self.loader.nodeList) self.fsm.request(requestStatus['how'], [requestStatus])
def exitReward(self): self.notify.debug('exitReward()') self.ignore('resumeAfterReward') self.movie.resetReward(finish=1) self._removeMembersKeep() NametagGlobals.setMasterArrowsOn(1) Emote.globalEmote.releaseAll(base.localAvatar, 'dbattle, exitReward')
def resetDisplayProperties(self, pipe, properties): if base.win: currentProperties = base.win.getProperties() gsg = base.win.getGsg() else: currentProperties = WindowProperties.getDefault() gsg = None newProperties = WindowProperties(currentProperties) newProperties.addProperties(properties) if base.pipe != pipe: self.apiChanged = 1 gsg = None if gsg == None or currentProperties.getFullscreen() != newProperties.getFullscreen() or currentProperties.getParentWindow() != newProperties.getParentWindow(): self.notify.debug('window properties: %s' % properties) self.notify.debug('gsg: %s' % gsg) base.pipe = pipe if not base.openMainWindow(props=properties, gsg=gsg, keepCamera=True): self.notify.warning('OPEN MAIN WINDOW FAILED') return 0 self.notify.info('OPEN MAIN WINDOW PASSED') base.disableShowbaseMouse() NametagGlobals.setCamera(base.cam) NametagGlobals.setMouseWatcher(base.mouseWatcherNode) base.graphicsEngine.renderFrame() base.graphicsEngine.renderFrame() base.graphicsEngine.openWindows() if base.win.isClosed(): self.notify.info('Window did not open, removing.') base.closeWindow(base.win) return 0 else: self.notify.debug('Adjusting properties') base.win.requestProperties(properties) base.graphicsEngine.renderFrame() return 1
def enterBuildingReward(self, ts): self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) self.movie.playReward( ts, self.uniqueName('building-reward'), self.__handleBuildingRewardDone, noSkip=True) return None
def enterBattleFour(self): self.cleanupIntervals() self.releaseToons(finalBattle=1) self.accept('clickedNametag', self.__clickedNameTag) self.accept('friendAvatar', self.__handleFriendAvatar) self.accept('avatarDetails', self.__handleAvatarDetails) NametagGlobals.setMasterArrowsOn(0) NametagGlobals.setMasterNametagsActive(1)
def exitIntroduction(self): self.notify.debug('DistributedBossCog.exitIntroduction:') intervalName = 'IntroductionMovie' self.clearInterval(intervalName) self.unstickToons() self.releaseToons() NametagGlobals.setMasterArrowsOn(1) ElevatorUtils.closeDoors(self.leftDoor, self.rightDoor, self.elevatorType)
def commence(self=self): NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus['how'], [requestStatus]) base.playMusic(self.music, looping=1, volume=0.8) base.transitions.irisIn() CountryClub = bboard.get( DistributedCountryClub.DistributedCountryClub.ReadyPost) self.loader.hood.spawnTitleText(CountryClub.countryClubId, CountryClub.floorNum)
def exit(self): if self.isEntered == 0: return self.isEntered = 0 NametagGlobals.setOnscreenChatForced(0) self.__cleanupFirstPage() self.ignoreAll() self.accept('clientCleanup', self.unload) self.hide()
def exitReward(self): self.notify.debug("exitReward()") self.clearInterval(self.uniqueName("floorReward"), finish=1) self._removeMembersKeep() NametagGlobals.setMasterArrowsOn(1) for toon in self.toons: toon.startSmooth() return None
def enterCountryClubReward(self, ts): self.notify.debug("enterCountryClubReward()") self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send("localToonConfrontedCountryClubBoss") self.movie.playReward(ts, self.uniqueName("building-reward"), self.__handleCountryClubRewardDone)
def exitReward(self): self.notify.debug('exitReward()') self.clearInterval(self.uniqueName('floorReward')) self._removeMembersKeep() NametagGlobals.setMasterArrowsOn(1) for toon in self.toons: toon.startSmooth() return None
def enterBuildingReward(self, ts): self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) self.movie.playReward(ts, self.uniqueName('building-reward'), self.__handleBuildingRewardDone, noSkip=True) return None
def enterMintReward(self, ts): self.notify.debug('enterMintReward()') self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send('localToonConfrontedMintBoss') self.movie.playReward(ts, self.uniqueName('building-reward'), self.__handleMintRewardDone)
def enterFactoryReward(self, ts): self.notify.info('enterFactoryReward()') self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send('localToonConfrontedForeman') self.movie.playReward(ts, self.uniqueName('building-reward'), self.__handleFactoryRewardDone, noSkip=True)
def enterFactoryReward(self, ts): self.notify.info('enterFactoryReward()') self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send('localToonConfrontedForeman') self.movie.playReward(ts, self.uniqueName('building-reward'), self.__handleFactoryRewardDone)
def exitPrepareBattleThree(self): intervalName = 'PrepareBattleThreeMovie' self.clearInterval(intervalName) self.unstickToons() self.releaseToons() if self.newState == 'BattleThree': self.movieCrane.request('Free') NametagGlobals.setMasterArrowsOn(1) ElevatorUtils.closeDoors(self.leftDoor, self.rightDoor, ElevatorConstants.ELEVATOR_CFO) taskMgr.remove(self.uniqueName('physics'))
def enterIntroduction(self): self.controlToons() ElevatorUtils.openDoors(self.leftDoor, self.rightDoor, self.elevatorType) NametagGlobals.setMasterArrowsOn(0) intervalName = 'IntroductionMovie' delayDeletes = [] seq = Parallel(self.showTitleText(), Sequence(self.makeIntroductionMovie(delayDeletes), Func(self.__beginBattleOne)), name=intervalName) seq.delayDeletes = delayDeletes seq.start() self.storeInterval(seq, intervalName)
def enterIntroduction(self): self.controlToons() ElevatorUtils.openDoors(self.leftDoor, self.rightDoor, self.elevatorType) NametagGlobals.setMasterArrowsOn(0) intervalName = 'IntroductionMovie' delayDeletes = [] seq = Sequence(self.makeIntroductionMovie(delayDeletes), Func(self.__beginBattleOne), name=intervalName) seq.delayDeletes = delayDeletes seq.start() self.storeInterval(seq, intervalName)
def enter(self, requestStatus): self.zoneId = requestStatus["zoneId"] self.fsm.enterInitialState() messenger.send("enterToonInterior") self.accept("doorDoneEvent", self.handleDoorDoneEvent) self.accept("DistributedDoor_doorTrigger", self.handleDoorTrigger) volume = requestStatus.get("musicVolume", 0.7) base.playMusic(self.loader.activityMusic, looping=1, volume=volume) self._telemLimiter = TLGatherAllAvs("ToonInterior", RotationLimitToH) NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus["how"], [requestStatus])
def enter(self, requestStatus, bossCog): self.zoneId = requestStatus['zoneId'] BattlePlace.BattlePlace.enter(self) self.fsm.enterInitialState() self.bossCog = bossCog if self.bossCog: self.bossCog.d_avatarEnter() self._telemLimiter = TLGatherAllAvs('CogHQBossBattle', RotationLimitToH) NametagGlobals.setMasterArrowsOn(1) base.localAvatar.inventory.setRespectInvasions(0) self.fsm.request(requestStatus['how'], [requestStatus])
def enterStageReward(self, ts): self.notify.debug('enterStageReward()') self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send('localToonConfrontedStageBoss') self.movie.playReward(ts, self.uniqueName('building-reward'), self._DistributedStageBattle__handleStageRewardDone)
def enter(self, requestStatus): self.zoneId = requestStatus['zoneId'] self.fsm.enterInitialState() messenger.send('enterToonInterior') self.accept('doorDoneEvent', self.handleDoorDoneEvent) self.accept('DistributedDoor_doorTrigger', self.handleDoorTrigger) volume = requestStatus.get('musicVolume', 0.7) base.playMusic(self.loader.activityMusic, looping=1, volume=volume) self._telemLimiter = TLGatherAllAvs('ToonInterior', RotationLimitToH) NametagGlobals.setMasterArrowsOn(1) self.fsm.request(requestStatus['how'], [requestStatus])
def exit(self): NametagGlobals.setMasterArrowsOn(0) self._telemLimiter.destroy() del self._telemLimiter if hasattr(base, 'factoryReady'): del base.factoryReady base.localAvatar.inventory.setRespectInvasions(1) self.fsm.requestFinalState() self.loader.music.stop() self.music.stop() self.ignoreAll()
def exitPrepareBattleThree(self): intervalName = 'PrepareBattleThreeMovie' self.clearInterval(intervalName) self.unstickToons() self.releaseToons() if self.newState == 'BattleThree': self.movieCrane.request('Free') self.movieSafe.request('Initial') NametagGlobals.setMasterArrowsOn(1) ElevatorUtils.closeDoors(self.leftDoor, self.rightDoor, ElevatorConstants.ELEVATOR_CFO) taskMgr.remove(self.uniqueName('physics'))
def generateName(self): v4 = self.getState() v56 = NametagGlobals.getNameFg(self.group.getColorCode(), v4) v54 = NametagGlobals.getNameBg(self.group.getColorCode(), v4) self.name_frame = Vec4(*self.group.getNameFrame()) self.name_frame[0] -= NametagGlobals._card_pad[0] self.name_frame[1] += NametagGlobals._card_pad[1] self.name_frame[2] -= NametagGlobals._card_pad[2] self.name_frame[3] += NametagGlobals._card_pad[3] self.field_396 = 1 v47 = None if v54[3] != 0.0: card = CardMaker('nametag') card.setFrame(self.name_frame) card.setColor(v54) if NametagGlobals._nametag_card: card.setSourceGeometry(NametagGlobals._nametag_card.node(), NametagGlobals._nametag_card_frame) self.np_372 = self.np_top.attachNewNode(card.generate()) self.np_372.setTransparency(1) v47 = self.np_372.find('**/+GeomNode') label86 = False if self.is_3d: if self.group.name_icon: self.group.name_icon.instanceTo(self.np_top) if v47: self.np_360 = self.group.copyNameTo(v47) self.np_360.setDepthWrite(0) self.np_360.setY( -0.01) # Panda3D 1.10 hack to prevent z-fighting. v47.node().setEffect(DecalEffect.make()) else: label86 = True else: label86 = True if label86: self.np_360 = self.group.copyNameTo(self.np_top) if self.has_draw_order: bin = config.GetString('nametag-fixed-bin', 'fixed') self.name_icon.setBin(bin, self.draw_order + 1) self.np_360.setBin(bin, self.draw_order + 2) self.np_360.setColor(v56) if v56[3] != 1.0: self.np_360.setTransparency(1)
def enterCountryClubReward(self, ts): self.notify.debug('enterCountryClubReward()') self.disableCollision() self.delayDeleteMembers() if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.bossBattle: messenger.send('localToonConfrontedCountryClubBoss') self.movie.playReward(ts, self.uniqueName('building-reward'), self.__handleCountryClubRewardDone, noSkip=True)
def postOpenWindow(self): NametagGlobals.setCamera(base.cam) if base.wantEnviroDR: base.cam.node().setCameraMask(OTPRender.MainCameraBitmask) else: base.cam.node().setCameraMask(OTPRender.MainCameraBitmask | OTPRender.EnviroCameraBitmask) NametagGlobals.setMouseWatcher(base.mouseWatcherNode) if base.wantEnviroDR: base.setupEnviroCamera() if self.config.GetBool('show-tex-mem', False): if not self.texmem or self.texmem.cleanedUp: self.toggleTexMem()
def enterWaitForToons(self): self.cleanupIntervals() self.hide() if self.gotAllToons: self.__doneWaitForToons() else: self.accept('gotAllToons', self.__doneWaitForToons) self.transitions = Transitions.Transitions(loader) self.transitions.IrisModelName = 'phase_3/models/misc/iris' self.transitions.FadeModelName = 'phase_3/models/misc/fade' self.transitions.fadeScreen(alpha=1) NametagGlobals.setMasterArrowsOn(0)
def exit(self): NametagGlobals.setMasterArrowsOn(0) bboard.remove(DistributedCountryClub.DistributedCountryClub.ReadyPost) self._telemLimiter.destroy() del self._telemLimiter base.cr.forbidCheesyEffects(0) base.localAvatar.inventory.setRespectInvasions(1) self.fsm.requestFinalState() self.loader.music.stop() self.music.stop() self.ignoreAll() del self.CountryClubReadyWatcher
def enter(self, requestStatus): self.zoneId = requestStatus['zoneId'] Place.Place.enter(self) self.fsm.enterInitialState() base.playMusic(self.loader.music, looping=1, volume=0.8) self.loader.geom.reparentTo(render) self.accept('doorDoneEvent', self.handleDoorDoneEvent) self.accept('DistributedDoor_doorTrigger', self.handleDoorTrigger) NametagGlobals.setMasterArrowsOn(1) how = requestStatus['how'] self.fsm.request(how, [requestStatus]) self._telemLimiter = TLGatherAllAvs('CogHQLobby', RotationLimitToH)
def enter(self, requestStatus, visibilityFlag=1, arrowsOn=1): teleportDebug(requestStatus, 'Street.enter(%s)' % (requestStatus, )) self._ttfToken = None self.fsm.enterInitialState() base.playMusic(self.loader.music, looping=1, volume=0.8) self.loader.geom.reparentTo(render) if visibilityFlag: self.visibilityOn() base.localAvatar.setGeom(self.loader.geom) base.localAvatar.setOnLevelGround(1) self._telemLimiter = TLGatherAllAvs('Street', RotationLimitToH) NametagGlobals.setMasterArrowsOn(arrowsOn) self.zone = ZoneUtil.getBranchZone(requestStatus['zoneId']) def __lightDecorationOn__(): geom = base.cr.playGame.getPlace().loader.geom self.halloweenLights = geom.findAllMatches('**/*light*') self.halloweenLights += geom.findAllMatches('**/*lamp*') self.halloweenLights += geom.findAllMatches('**/prop_snow_tree*') for light in self.halloweenLights: light.setColorScaleOff(1) newsManager = base.cr.newsManager if newsManager: holidayIds = base.cr.newsManager.getDecorationHolidayId() if (ToontownGlobals.HALLOWEEN_COSTUMES in holidayIds or ToontownGlobals.SPOOKY_COSTUMES in holidayIds) and self.loader.hood.spookySkyFile: lightsOff = Sequence( LerpColorScaleInterval(base.cr.playGame.hood.loader.geom, 0.1, Vec4(0.55, 0.55, 0.65, 1)), Func(self.loader.hood.startSpookySky)) lightsOff.start() else: self.loader.hood.startSky() lightsOn = LerpColorScaleInterval( base.cr.playGame.hood.loader.geom, 0.1, Vec4(1, 1, 1, 1)) lightsOn.start() else: self.loader.hood.startSky() lightsOn = LerpColorScaleInterval( base.cr.playGame.hood.loader.geom, 0.1, Vec4(1, 1, 1, 1)) lightsOn.start() self.accept('doorDoneEvent', self.handleDoorDoneEvent) self.accept('DistributedDoor_doorTrigger', self.handleDoorTrigger) self.enterZone(requestStatus['zoneId']) self.tunnelOriginList = base.cr.hoodMgr.addLinkTunnelHooks( self, self.loader.nodeList, self.zoneId) self.fsm.request(requestStatus['how'], [requestStatus]) self.replaceStreetSignTextures() return
def enter(self, requestStatus): self.zoneId = requestStatus['zoneId'] BattlePlace.BattlePlace.enter(self) self.fsm.enterInitialState() base.playMusic(self.loader.music, looping=1, volume=0.8) self.loader.geom.reparentTo(render) self.nodeList = [self.loader.geom] self._telemLimiter = TLGatherAllAvs('CogHQExterior', RotationLimitToH) self.accept('doorDoneEvent', self.handleDoorDoneEvent) self.accept('DistributedDoor_doorTrigger', self.handleDoorTrigger) NametagGlobals.setMasterArrowsOn(1) self.tunnelOriginList = base.cr.hoodMgr.addLinkTunnelHooks(self, self.nodeList, self.zoneId) how = requestStatus['how'] self.fsm.request(how, [requestStatus])
def exit(self): base.camLens.setMinFov(ToontownGlobals.DefaultCameraFov / (4.0 / 3.0)) self.guiTopBar.hide() self.guiBottomBar.hide() self.music.stop() self.fsm.request('Done') self.toon.stopBlink() self.toon.stopLookAroundNow() self.toon.reparentTo(hidden) self.room.reparentTo(hidden) self.mickey.reparentTo(hidden) self.mickey.stop() self.minnie.reparentTo(hidden) self.minnie.stop() NametagGlobals.setMasterNametagsActive(0)
def exit(self, visibilityFlag=1): if visibilityFlag: self.visibilityOff() self.loader.geom.reparentTo(hidden) self._telemLimiter.destroy() del self._telemLimiter def __lightDecorationOff__(): for light in self.halloweenLights: light.reparentTo(hidden) NametagGlobals.setMasterArrowsOn(0) self.loader.hood.stopSky() self.loader.music.stop() base.localAvatar.setGeom(render) base.localAvatar.setOnLevelGround(0)
def setDisplayName(self, name): self.display_name = name if name and self.name_font: text_node = NametagGlobals.getTextNode() text_node.setFont(self.name_font) text_node.setWordwrap(self.getNameWordwrap()) text_node.setAlign(TextNode.ACenter) text_node.setText(name) gen = text_node.generate() self.node = gen self.name_frame = text_node.getCardActual() if self.has_shadow: self.node = PandaNode('name') self.node.addChild(gen) pos = Point3(self.shadow[0], 0, -self.shadow[1]) attached = NodePath.anyPath(self.node).attachNewNode(gen.copySubgraph()) attached.setPos(pos) attached.setColor(0, 0, 0, 1) else: self.node = None self.updateContentsAll()
def enterReward(self, ts): self.notify.debug('enterReward()') self.disableCollision() self.delayDeleteMembers() Emote.globalEmote.disableAll(base.localAvatar, 'dbattle, enterReward') if self.hasLocalToon(): NametagGlobals.setMasterArrowsOn(0) if self.localToonActive() == 0: self.removeInactiveLocalToon(base.localAvatar) for toon in self.toons: toon.startSmooth() self.accept('resumeAfterReward', self.handleResumeAfterReward) if self.interactiveProp: self.interactiveProp.gotoVictory() self.playReward(ts)
def enterFLM(self): self.notify.debug('FriendsListManager: enterFLM()') if self._preserveFriendsList: self._preserveFriendsList = 0 return self._entered = True self.accept('openFriendsList', self.__openFriendsList) self.accept('clickedNametag', self.__handleClickedNametag) base.localAvatar.setFriendsListButtonActive(1) NametagGlobals.setMasterNametagsActive(1) self.accept('gotoAvatar', self.__handleGotoAvatar) self.accept('friendAvatar', self.__handleFriendAvatar) self.accept('avatarDetails', self.__handleAvatarDetails) self.accept('friendInvitation', self.__handleFriendInvitation) if base.cr.friendManager: base.cr.friendManager.setAvailable(1)
def handleAvatarResponseMsg(self, di): self.loadingScreen.endStep('waitForAv') self.cleanupWaitingForDatabase() avatarId = di.getUint32() returnCode = di.getUint8() if returnCode == 0: dclass = self.dclassesByName['DistributedPlayerPirate'] NametagGlobals.setMasterArrowsOn(0) self.loadingScreen.show(waitForLocation=True, expectedLoadScale=4) self.loadingScreen.beginStep('LocalAvatar', 36, 120) localAvatar = LocalPirate(self) localAvatar.dclass = dclass if __dev__: __builtins__['lu'] = self.getDo localAvatar.doId = avatarId self.localAvatarDoId = avatarId self.doId2do[avatarId] = localAvatar parentId = None zoneId = None localAvatar.setLocation(parentId, zoneId) localAvatar.generate() localAvatar.updateAllRequiredFields(dclass, di) locUID = localAvatar.getReturnLocation() if __dev__ and not getBase().config.GetBool( 'login-location-used-pcr', False): bp.loginCfg() ConfigVariableBool('login-location-used-pcr').setValue(True) config_location = getBase().config.GetString( 'login-location', '').lower() config_location_uid = PLocalizer.LocationUids.get( config_location) if config_location and config_location_uid: locUID = config_location_uid localAvatar.setReturnLocation(locUID) if locUID: self.loadingScreen.showTarget(locUID) self.loadingScreen.showHint(locUID) else: locUID = '1150922126.8dzlu' localAvatar.setReturnLocation(locUID) self.loadingScreen.showTarget(jail=True) self.loadingScreen.endStep('LocalAvatar') self.loginFSM.request('playingGame') else: self.notify.error('Bad avatar: return code %d' % returnCode)
def enterPrepareBattleThree(self): self.controlToons() NametagGlobals.setMasterArrowsOn(0) intervalName = 'PrepareBattleThreeMovie' delayDeletes = [] self.movieCrane = self.cranes[0] self.movieSafe = self.safes[1] self.movieCrane.request('Movie') seq = Sequence(self.makePrepareBattleThreeMovie(delayDeletes, self.movieCrane, self.movieSafe), Func(self.__beginBattleThree), name=intervalName) seq.delayDeletes = delayDeletes seq.start() self.storeInterval(seq, intervalName) self.endVault.unstash() self.evWalls.stash() self.midVault.unstash() self.__showResistanceToon(False) taskMgr.add(self.__doPhysics, self.uniqueName('physics'), priority=25)
def getNameWordwrap(self): if self.wordwrap > 0.0: return self.wordwrap wordwrap = NametagGlobals.getNameWordwrap() return {self.CCToonBuilding: 8.0, self.CCSuitBuilding: 8.0, self.CCHouseBuilding: 10.0}.get(self.color_code, wordwrap)
def enter(self): base.camLens.setMinFov(ToontownGlobals.MakeAToonCameraFovRetro / (4.0 / 3.0)) base.playMusic(self.music, looping=1, volume=self.musicVolume) self.toon.startBlink() self.toon.startLookAround() self.toon.reparentTo(render) self.toon.setPosHprScale(-1.5, -2.0, 0, 200, 0, 0, 1.2, 1.2, 1.2) self.toon.loop('neutral') self.room.reparentTo(render) camera.setPosHpr(0.75, -22, 5.35, 0, -7.12, 0) if self.warp: if self.toon.style.torso[1] == 's': self.toon.gender = 's' self.host = self.mickey self.minnie.reparentTo(hidden) else: self.toon.gender = 'd' self.host = self.minnie self.mickey.reparentTo(hidden) self.host.setPickable(0) self.host.reparentTo(render) self.host.loop('neutral') self.host.setPosHpr(4.9, -1.9, 0, 160, 0, 0) self.toon.reparentTo(render) self.toon.loop('neutral') self.toon.setPosHpr(-4.09, -2, 0, 200, 0, 0) else: self.mickey.reparentTo(render) self.mickey.loop('neutral') self.mickey.setPosHpr(4.2, -1.9, 0, 160, 0, 0) self.minnie.reparentTo(render) self.minnie.loop('neutral') self.minnie.setPosHpr(-2.7, -1.9, 0, 210, 0, 0) NametagGlobals.setMasterNametagsActive(1) self.guiTopBar.show() self.guiBottomBar.show() self.guiCancelButton.show() if self.warp: self.progressing = 0 self.guiLastButton.hide() self.fsm.request('NameShop') else: self.fsm.request('GenderShop')
def enter(self): if self.isEntered == 1: return self.isEntered = 1 if self.isLoaded == 0: self.load() self.show() self.introText.show() self.getSecret.show() self.enterSecretText.show() self.enterSecret.show() self.ok1.show() self.ok2.hide() self.cancel.hide() self.nextText.hide() self.secretText.hide() base.localAvatar.chatMgr.fsm.request('otherDialog') self.enterSecret['focus'] = 1 NametagGlobals.setOnscreenChatForced(1)