Esempio n. 1
0
    def load(self):
        StateData.load(self)
        if self.pgMusicFilename:
            self.music = base.loadMusic(self.pgMusicFilename)
        if self.battleMusicFile:
            self.battleMusic = base.loadMusic(self.battleMusicFile)
        if self.invasionMusicFiles:
            self.invasionMusic = None
        if self.bossBattleMusicFile:
            self.bossBattleMusic = base.loadMusic(self.bossBattleMusicFile)
        if self.interiorMusicFilename:
            self.interiorMusic = base.loadMusic(self.interiorMusicFilename)
        if self.tournamentMusicFiles:
            self.tournamentMusic = None
        self.createSafeZone(self.dnaFile)
        self.parentFSMState.addChild(self.fsm)
        width, height, fs, music, sfx, tex_detail, model_detail, aa, af = SettingsManager().getSettings('settings.json')
        if af == 'on':
            self.notify.info('Anisotropic Filtering is on, applying to textures.')
            for nodepath in self.geom.findAllMatches('*'):
                try:
                    for node in nodepath.findAllMatches('**'):
                        try:
                            node.findTexture('*').setAnisotropicDegree(8)
                        except:
                            pass

                except:
                    continue

        return
Esempio n. 2
0
 def unload(self):
     self.notify.info("unload()")
     if hasattr(self, 'loader'):
         self.loader.exit()
         self.loader.unload()
         del self.loader
     del self.parentFSM
     del self.fsm
     self.dnaStore.reset_nodes()
     self.dnaStore.reset_hood_nodes()
     self.dnaStore.reset_place_nodes()
     self.dnaStore.reset_hood()
     self.dnaStore.reset_fonts()
     self.dnaStore.reset_DNA_vis_groups()
     self.dnaStore.reset_textures()
     self.dnaStore.reset_block_numbers()
     self.dnaStore.reset_block_zones()
     self.dnaStore.reset_suit_points()
     del self.dnaStore
     self.deleteCurrentSky()
     self.stopSuitEffect(0)
     self.ignoreAll()
     ModelPool.garbageCollect()
     TexturePool.garbageCollect()
     StateData.unload(self)
Esempio n. 3
0
    def exit(self):
        StateData.exit(self)
        messenger.send('exitSafeZone')
        for link in self.linkTunnels:
            link.cleanup()

        self.linkTunnels = []
Esempio n. 4
0
 def load(self, zoneId):
     StateData.load(self)
     self.zoneId = zoneId
     self.branchZone = ZoneUtil.getBranchZone(zoneId)
     self.canonicalBranchZone = ZoneUtil.getCanonicalBranchZone(zoneId)
     self.music = base.loadMusic(self.musicFile)
     self.interiorMusic = base.loadMusic(self.interiorMusicFile)
 def __init__(self, parentFSM, doneEvent):
     self.parentFSM = parentFSM
     StateData.__init__(self, doneEvent)
     self.fsm = ClassicFSM('ShtickerBook', [
         State('off', self.enterOff, self.exitOff),
         State('optionPage', self.enterOptionPage, self.exitOptionPage,
               ['districtPage', 'off']),
         State('districtPage', self.enterDistrictPage,
               self.exitDistrictPage, ['optionPage', 'questPage', 'off']),
         State('questPage', self.enterQuestPage, self.exitQuestPage,
               ['inventoryPage', 'districtPage', 'off']),
         State('inventoryPage', self.enterInventoryPage,
               self.exitInventoryPage, ['mapPage', 'questPage', 'off']),
         State('mapPage', self.enterMapPage, self.exitMapPage,
               ['inventoryPage', 'off']),
         State('releaseNotesPage', self.enterReleaseNotesPage,
               self.exitReleaseNotesPage, ['mapPage', 'off']),
         State('adminPage', self.enterAdminPage, self.exitAdminPage,
               ['mapPage', 'namePage', 'off']),
         State('namePage', self.enterNamePage, self.exitNamePage,
               ['adminPage', 'off'])
     ], 'off', 'off')
     if base.localAvatar.getAdminToken() > -1:
         self.fsm.getStateNamed('mapPage').addTransition('adminPage')
     self.fsm.enterInitialState()
     self.entered = 0
     self.parentFSM.getStateNamed('shtickerBook').addChild(self.fsm)
Esempio n. 6
0
 def exit(self):
     StateData.exit(self)
     if self._requestStatus.get('how', None) != 'doorOut':
         base.transitions.noTransitions()
     del self._requestStatus
     self.fsm.request('off')
     return
Esempio n. 7
0
 def load(self):
     StateData.load(self)
     self.book_contents = loader.loadModel('phase_3.5/models/gui/stickerbook_gui.bam')
     self.book_texture = self.book_contents.find('**/big_book')
     self.book_open = loader.loadSfx('phase_3.5/audio/sfx/GUI_stickerbook_open.mp3')
     self.book_close = loader.loadSfx('phase_3.5/audio/sfx/GUI_stickerbook_delete.mp3')
     self.book_turn = loader.loadSfx('phase_3.5/audio/sfx/GUI_stickerbook_turn.mp3')
Esempio n. 8
0
 def load(self):
     StateData.load(self)
     self.loadingLabel = OnscreenText(text='Loading...',
                                      font=CIGlobals.getToonFont(),
                                      pos=(0, 0.1, 0),
                                      scale=0.08,
                                      parent=aspect2d)
Esempio n. 9
0
 def exit(self):
     StateData.exit(self)
     if not self._requestStatus.get(
             'how', None) in ['doorOut', 'elevatorIn', 'IDK']:
         base.transitions.noTransitions()
     del self._requestStatus
     self.fsm.request('off')
    def unload(self):
        StateData.unload(self)

        base.waterReflectionMgr.clearWaterNodes()

        if self.animatedFish:
            self.animatedFish.cleanup()
            self.animatedFish.removeNode()
            self.animatedFish = None

        if self.linkTunnels is not None:
            for link in self.linkTunnels:
                link.cleanup()
        self.linkTunnels = None
        if self.nodeList is not None:
            for node in self.nodeList:
                node.removeNode()
        self.nodeList = None

        self.parentFSMState.removeChild(self.fsm)
        del self.parentFSMState
        del self.animatedFish
        base.disableAndRemovePhysicsNodes(self.geom)
        self.geom.removeNode()
        del self.geom
        del self.fsm
        del self.hood
        del self.playground
        del self.safeZoneSong
        del self.interiorSong
        self.ignoreAll()
Esempio n. 11
0
 def __init__(self, book, parentFSM):
     self.book = book
     self.parentFSM = parentFSM
     StateData.__init__(self, 'optionPageDone')
     self.fsm = ClassicFSM('OptionPage', [State('off', self.enterOff, self.exitOff), State('basePage', self.enterBasePage, self.exitBasePage), State('displayPage', self.enterDisplayPage, self.exitDisplayPage)], 'off', 'off')
     self.fsm.enterInitialState()
     self.parentFSM.getStateNamed('optionPage').addChild(self.fsm)
    def unload(self):
        self.parentFSMState.removeChild(self.fsm)
        del self.parentFSMState
        del self.fsm
        del self.streetClass
        base.disablePhysicsNodes(self.landmarkBlocks)
        self.landmarkBlocks.removeNode()
        del self.landmarkBlocks
        self.hood.dnaStore.resetSuitPoints()
        self.hood.dnaStore.resetBattleCells()
        del self.hood
        del self.nodeDict
        del self.zoneDict
        del self.fadeInDict
        del self.fadeOutDict
        del self.nodeList
        del self.zoneVisDict

        base.disablePhysicsNodes(self.geom)
        self.geom.removeNode()
        del self.geom
        del self.streetSong
        del self.interiorSong

        #CIGlobals.doSceneCleanup()

        StateData.unload(self)
Esempio n. 13
0
    def unload(self):
        self.cleanupOutdoorLighting()

        if hasattr(self, 'loader'):
            self.loader.exit()
            self.loader.unload()
            del self.loader
        del self.parentFSM
        del self.fsm
        self.dnaStore.reset_nodes()
        self.dnaStore.reset_hood_nodes()
        self.dnaStore.reset_place_nodes()
        self.dnaStore.reset_hood()
        self.dnaStore.reset_fonts()
        self.dnaStore.reset_DNA_vis_groups()
        self.dnaStore.reset_materials()
        self.dnaStore.reset_block_numbers()
        self.dnaStore.reset_block_zones()
        self.dnaStore.reset_suit_points()
        del self.dnaStore
        self.ignoreAll()

        #CIGlobals.doSceneCleanup()

        StateData.unload(self)
Esempio n. 14
0
 def __init__(self, hood, parentFSMState, doneEvent):
     StateData.__init__(self, doneEvent)
     self.hood = hood
     self.parentFSMState = parentFSMState
     self.fsm = ClassicFSM('safeZoneLoader', [
         State('off', self.enterOff, self.exitOff),
         State('playground', self.enterPlayground, self.exitPlayground,
               ['quietZone']),
         State('toonInterior', self.enterToonInterior,
               self.exitToonInterior, ['quietZone']),
         State('quietZone', self.enterQuietZone, self.exitQuietZone,
               ['playground', 'toonInterior'])
     ], 'off', 'off')
     self.placeDoneEvent = 'placeDone'
     self.place = None
     self.playground = None
     self.battleMusic = None
     self.invasionMusic = None
     self.invasionMusicFiles = None
     self.interiorMusic = None
     self.bossBattleMusic = None
     self.music = None
     self.tournamentMusic = None
     self.linkTunnels = []
     self.szHolidayDNAFile = None
     self.animatedFish = None
     return
Esempio n. 15
0
    def exit(self):
        if self.isEntered:

            if self.header:
                # Hide the header at the top of the page.
                self.header.hide()
        StateData.exit(self)
Esempio n. 16
0
 def load(self, zoneId):
     StateData.load(self)
     self.zoneId = zoneId
     self.branchZone = ZoneUtil.getBranchZone(zoneId)
     self.canonicalBranchZone = ZoneUtil.getCanonicalBranchZone(zoneId)
     self.music = base.loadMusic(self.musicFile)
     self.interiorMusic = base.loadMusic(self.interiorMusicFile)
    def enter(self, requestStatus):
        StateData.enter(self)
        if base.localAvatar.zoneId < ZoneUtil.DynamicZonesBegin:
            self.findAndMakeLinkTunnels()
        self.fsm.enterInitialState()
        messenger.send('enterSafeZone')
        self.setState(requestStatus['where'], requestStatus)
        # Delete party gate
        partyGate = self.geom.find('**/prop_party_gate_DNARoot')
        if not partyGate.isEmpty():
            partyGate.removeNode()
        del partyGate
        # Delete pet shop
        petShop = self.geom.find('**/*pet_shop_DNARoot*')
        if not petShop.isEmpty():
            fish = petShop.find(
                '**/animated_prop_PetShopFishAnimatedProp_DNARoot')
            if fish:
                """
                self.animatedFish = Actor('phase_4/models/props/exteriorfish-zero.bam', {'chan' :
                    'phase_4/models/props/exteriorfish-swim.bam'})
                #self.animatedFish.reparentTo(hidden)#petShop)
                #self.animatedFish.setPos(fish.getPos())
                #self.animatedFish.loop('chan')
                #self.animatedFish.cleanup()
                """
                fish.removeNode()
            #petShop.removeNode()
        #del petShop

        CIGlobals.preRenderScene(self.geom)
Esempio n. 18
0
    def __init__(self, doneEvent, moveOn = 1):
        StateData.__init__(self, doneEvent)
        self.fsm = ClassicFSM('quietZone',
                        [State('off',
                        self.enterOff,
                        self.exitOff,
                        ['waitForQuietZoneResponse']),

                        State('waitForQuietZoneResponse',
                        self.enterWaitForQuietZoneResponse,
                        self.exitWaitForQuietZoneResponse,
                        ['waitForSetZoneResponse']),

                        State('waitForSetZoneResponse',
                        self.enterWaitForSetZoneResponse,
                        self.exitWaitForSetZoneResponse,
                        ['waitForSetZoneComplete']),

                        State('waitForSetZoneComplete',
                        self.enterWaitForSetZoneComplete,
                        self.exitWaitForSetZoneComplete,
                        ['off'])],
                        'off', 'off')
        self.fsm.enterInitialState()
        self.moveOn = moveOn
Esempio n. 19
0
    def __init__(self, parentFSM, doneEvent):
        StateData.__init__(self, "playGameDone")
        self.doneEvent = doneEvent
        self.fsm = ClassicFSM('World', [State('off', self.enterOff, self.exitOff, ['quietZone']),
                State('quietZone', self.enterQuietZone, self.exitQuietZone, ['TTHood',
                    'BRHood', 'DLHood', 'MLHood', 'DGHood', 'DDHood', 'MGHood', 'CTCHood', 'CTHood']),
                State('TTHood', self.enterTTHood, self.exitTTHood, ['quietZone']),
                State('BRHood', self.enterBRHood, self.exitBRHood, ['quietZone']),
                State('DLHood', self.enterDLHood, self.exitDLHood, ['quietZone']),
                State('MLHood', self.enterMLHood, self.exitMLHood, ['quietZone']),
                State('DGHood', self.enterDGHood, self.exitDGHood, ['quietZone']),
                State('DDHood', self.enterDDHood, self.exitDDHood, ['quietZone']),
                State('MGHood', self.enterMGHood, self.exitMGHood, ['quietZone']),
                State('CTCHood', self.enterCTCHood, self.exitCTCHood, ['quietZone']),
                State('CTHood', self.enterCTHood, self.exitCTHood, ['quietZone'])],
                'off', 'off')
        self.fsm.enterInitialState()

        self.parentFSM = parentFSM
        self.parentFSM.getStateNamed('playGame').addChild(self.fsm)

        self.hoodDoneEvent = 'hoodDone'
        self.hood = None
        self.quietZoneDoneEvent = uniqueName('quietZoneDone')
        self.quietZoneStateData = None
        self.place = None
        self.lastHood = None
        self.suitManager = None
Esempio n. 20
0
    def exit(self):
        self.__disableInteraction()
        del self.lastBookPage

        base.localAvatar.disableChatInput()

        StateData.exit(self)
Esempio n. 21
0
 def exit(self):
     StateData.exit(self)
     if self._requestStatus.get('how', None) != 'doorOut':
         base.transitions.noTransitions()
     del self._requestStatus
     self.fsm.request('off')
     return
Esempio n. 22
0
 def __init__(self, doneEvent):
     StateData.__init__(self, doneEvent)
     self.fsm = ClassicFSM('Walk', [
         State('off', self.enterOff, self.exitOff, ['walking', 'deadWalking']),
         State('walking', self.enterWalking, self.exitWalking),
         State('deadWalking', self.enterDeadWalking, self.exitDeadWalking)],
         'off', 'off')
     self.fsm.enterInitialState()
Esempio n. 23
0
    def load(self):
        StateData.load(self)
        if self.storageDNAFile:
            loadDNAFile(self.dnaStore, self.storageDNAFile)
        if self.holidayDNAFile:
            loadDNAFile(self.dnaStore, self.holidayDNAFile)

        self.setupOutdoorLighting()
 def unload(self):
     StateData.unload(self)
     self.loadingLabel.destroy()
     self.loadingLabel = None
     for request in self.requestsContainer.values():
         for element in request:
             element.destroy()
     self.requestsContainer = {}
Esempio n. 25
0
 def __init__(self, doneEvent, moveOn = 1):
     StateData.__init__(self, doneEvent)
     self.fsm = ClassicFSM('quietZone', [State('off', self.enterOff, self.exitOff, ['waitForQuietZoneResponse']),
      State('waitForQuietZoneResponse', self.enterWaitForQuietZoneResponse, self.exitWaitForQuietZoneResponse, ['waitForSetZoneResponse']),
      State('waitForSetZoneResponse', self.enterWaitForSetZoneResponse, self.exitWaitForSetZoneResponse, ['waitForSetZoneComplete']),
      State('waitForSetZoneComplete', self.enterWaitForSetZoneComplete, self.exitWaitForSetZoneComplete, ['off'])], 'off', 'off')
     self.fsm.enterInitialState()
     self.moveOn = moveOn
 def exit(self):
     StateData.exit(self)
     messenger.send('exitSafeZone')
     for link in self.linkTunnels:
         link.cleanup()
     if self.animatedFish:
         self.animatedFish.stop('chan')
     self.linkTunnels = []
 def exit(self):
     StateData.exit(self)
     if self.window:
         self.upgradesPurchased = False
         self.window.delete()
         self.requestedHp = None
         self.healCooldownDoneSfx = None
         self.originalSupply = {}
Esempio n. 28
0
 def exit(self):
     StateData.exit(self)
     if self.window:
         self.window.delete()
         self.newHealth = None
         self.healCooldownDoneSfx = None
         self.originalSupply = {}
     return
Esempio n. 29
0
 def enter(self):
     if not self.isEntered:
         if self.wantHeader:
             # Create the header at the top of the page.
             self.header = OnscreenText(text=self.title,
                                        pos=(0, 0.62, 0),
                                        scale=0.12)
     StateData.enter(self)
Esempio n. 30
0
 def enter(self):
     StateData.enter(self)
     self.avMoney = base.localAvatar.getMoney()
     self.window = ShopWindow(self, image = 'phase_4/maps/FrameBlankA.jpg')
     self.window.setup()
     self.window.setOKCommand(self.confirmPurchase)
     self.window.setCancelCommand(self.cancelPurchase)
     self.window.makePages(self.distShop.getItems())
     self.window.setPage(0)
 def __init__(self, loader, doneEvent):
     StateData.__init__(self, doneEvent)
     self.loader = loader
     self.zoneId = None
     self.track = None
     self.firstPerson = FirstPerson()
     self.lastBookPage = 'mapPage'
     self.useFirstPerson = config.GetBool('want-firstperson-battle')
     return
Esempio n. 32
0
 def __init__(self, book, parentFSM):
     self.book = book
     self.parentFSM = parentFSM
     StateData.__init__(self, 'adminPageDone')
     self.fsm = ClassicFSM('AdminPage', [State('off', self.enterOff, self.exitOff),
      State('basePage', self.enterBasePage, self.exitBasePage),
      State('kickSection', self.enterKickSection, self.exitKickSection),
      State('sysMsgSection', self.enterSysMsgSection, self.exitSysMsgSection)], 'off', 'off')
     self.fsm.enterInitialState()
     self.parentFSM.getStateNamed('adminPage').addChild(self.fsm)
Esempio n. 33
0
 def load(self):
     StateData.load(self)
     if self.storageDNAFile:
         loadDNAFile(self.dnaStore, self.storageDNAFile)
     if self.holidayDNAFile:
         loadDNAFile(self.dnaStore, self.holidayDNAFile)
     if not base.cr.holidayManager.getHoliday() == HolidayType.CHRISTMAS:
         self.createNormalSky()
     else:
         self.createSpookySky()
Esempio n. 34
0
 def load(self):
     StateData.load(self)
     self.walkDoneEvent = "walkDone"
     self.walkStateData = PublicWalk(self.fsm, self.walkDoneEvent)
     self.walkStateData.load()
     if not self.interior and (
             base.cr.holidayManager.getHoliday() == HolidayType.CHRISTMAS
             or base.cr.playGame.getCurrentWorldName() == 'BRHood'):
         self.snowEffect.load()
     self.__acceptEvents()
Esempio n. 35
0
 def __init__(self, brain):
     StateData.__init__(self, 'behaviorDone')
     self.brain = brain
     self.goon = self.brain.goon
     self.suit = self.goon
     self.battle = self.goon.dispatch
     self.bspLoader = self.goon.cEntity.getLoader()
     self.air = self.goon.air
     self.behaviorStartTime = 0
     self.avIds = self.goon.dispatch.getAvatars()
Esempio n. 36
0
 def enter(self, hoodId, zoneId, avId):
     StateData.enter(self)
     whereName = ZoneUtil.getWhereName(zoneId)
     loaderName = ZoneUtil.getLoaderName(zoneId)
     self.fsm.request('quietZone', [{'zoneId': zoneId,
         'hoodId': hoodId,
         'where': whereName,
         'how': 'teleportIn',
         'avId': avId,
         'shardId': None,
         'loader': loaderName}])
Esempio n. 37
0
 def enter(self):
     StateData.enter(self)
     self.avMoney = base.localAvatar.getMoney()
     self.origHealth = base.localAvatar.getHealth()
     self.window = ShopWindow(self, image='phase_4/maps/FrameBlankA.jpg')
     self.window.setup()
     self.window.setOKCommand(self.confirmPurchase)
     self.window.setCancelCommand(self.cancelPurchase)
     self.window.makePages(self.distShop.getItems())
     self.window.setPage(0)
     self.healCooldownDoneSfx = base.loadSfx(self.healCooldownDoneSoundPath)
 def load(self):
     StateData.load(self)
     self.book_contents = loader.loadModel(
         "phase_3.5/models/gui/stickerbook_gui.bam")
     self.book_texture = self.book_contents.find('**/big_book')
     self.book_open = loader.loadSfx(
         "phase_3.5/audio/sfx/GUI_stickerbook_open.ogg")
     self.book_close = loader.loadSfx(
         "phase_3.5/audio/sfx/GUI_stickerbook_delete.ogg")
     self.book_turn = loader.loadSfx(
         "phase_3.5/audio/sfx/GUI_stickerbook_turn.ogg")
Esempio n. 39
0
 def exit(self):
     if not self.entered:
         return
     self.entered = 0
     base.setBackgroundColor(CIGlobals.DefaultBackgroundColor)
     render.show()
     self.book_img.destroy()
     del self.book_img
     self.book_close.play()
     self.fsm.request('off')
     StateData.exit(self)
 def exit(self):
     if not self.entered:
         return
     self.entered = 0
     base.setBackgroundColor(CIGlobals.DefaultBackgroundColor)
     render.show()
     self.book_img.destroy()
     del self.book_img
     self.book_close.play()
     self.fsm.request('off')
     StateData.exit(self)
Esempio n. 41
0
 def unload(self):
     if self.ival:
         self.ival.finish()
         self.ival = None
     if self.topBar:
         self.topBar.destroy()
         self.topBar = None
     if self.btmBar:
         self.btmBar.destroy()
         self.btmBar = None
     StateData.unload(self)
Esempio n. 42
0
 def __init__(self, parentFSM):
     StateData.__init__(self, 'avChooseDone')
     self.avChooseFSM = ClassicFSM('avChoose', [State('getToonData', self.enterGetToonData, self.exitGetToonData),
      State('avChoose', self.enterAvChoose, self.exitAvChoose),
      State('waitForToonDelResponse', self.enterWaitForToonDelResponse, self.exitWaitForToonDelResponse),
      State('off', self.enterOff, self.exitOff)], 'off', 'off')
     self.avChooseFSM.enterInitialState()
     self.parentFSM = parentFSM
     self.parentFSM.getStateNamed('avChoose').addChild(self.avChooseFSM)
     self.pickAToon = None
     self.setAvatarsNone()
     return
Esempio n. 43
0
 def enter(self):
     if self.entered:
         return
     self.entered = 1
     StateData.enter(self)
     render.hide()
     base.setBackgroundColor(0.05, 0.15, 0.4)
     self.book_img = OnscreenImage(image=self.book_texture, scale=(2, 1, 1.5))
     self.book_open.play()
     if base.localAvatar.getAdminToken() > -1:
         self.fsm.request('adminPage')
     else:
         self.fsm.request('mapPage')
Esempio n. 44
0
 def __init__(self, hood, parentFSMState, doneEvent):
     self.hood = hood
     self.parentFSMState = parentFSMState
     StateData.__init__(self, doneEvent)
     self.fsm = ClassicFSM('TownLoader', [State('start', self.enterStart, self.exitStart, ['quietZone', 'street']),
      State('street', self.enterStreet, self.exitStreet, ['quietZone']),
      State('toonInterior', self.enterToonInterior, self.exitToonInterior, ['quietZone']),
      State('quietZone', self.enterQuietZone, self.exitQuietZone, ['street', 'toonInterior']),
      State('final', self.enterFinal, self.exitFinal, ['start'])], 'start', 'final')
     self.branchZone = None
     self.canonicalBranchZone = None
     self.placeDoneEvent = 'placeDone'
     self.linkTunnels = []
     return
Esempio n. 45
0
 def __init__(self, parentFSM, doneEvent, dnaStore, hoodId):
     StateData.__init__(self, doneEvent)
     self.parentFSM = parentFSM
     self.doneEvent = doneEvent
     self.dnaStore = dnaStore
     self.hoodId = hoodId
     self.id = None
     self.titleText = None
     self.suitFog = None
     self.suitLight = None
     self.suitLightColor = (0.4, 0.4, 0.4, 1)
     self.suitFogData = [(0.3, 0.3, 0.3), 0.0025]
     self.titleColor = (1, 1, 1, 1)
     return
Esempio n. 46
0
 def enter(self, requestStatus):
     StateData.enter(self)
     hoodId = requestStatus['hoodId']
     zoneId = requestStatus['zoneId']
     rootZone = ZoneUtil.getZoneId(hoodId)
     if base.localAvatar.getLastHood() != rootZone and hoodId != CIGlobals.MinigameArea:
         base.localAvatar.b_setLastHood(rootZone)
     if not base.localAvatar.hasDiscoveredHood(rootZone):
         hoodsDiscovered = list(base.localAvatar.getHoodsDiscovered())
         hoodsDiscovered.append(rootZone)
         base.localAvatar.b_setHoodsDiscovered(hoodsDiscovered)
     text = self.getHoodText(zoneId)
     self.titleText = OnscreenText(text, fg=self.titleColor, font=CIGlobals.getMickeyFont(), scale=0.15, pos=(0, -0.65))
     self.titleText.hide()
Esempio n. 47
0
 def unload(self):
     self.book_texture.removeNode()
     del self.book_texture
     self.book_contents.removeNode()
     del self.book_contents
     loader.unloadSfx(self.book_open)
     del self.book_open
     loader.unloadSfx(self.book_close)
     del self.book_close
     loader.unloadSfx(self.book_turn)
     del self.book_turn
     del self.fsm
     del self.parentFSM
     del self.entered
     StateData.unload(self)
Esempio n. 48
0
 def enter(self, requestStatus):
     StateData.enter(self)
     if base.localAvatar.zoneId < 61000:
         self.findAndMakeLinkTunnels()
     self.fsm.enterInitialState()
     messenger.send('enterSafeZone')
     self.setState(requestStatus['where'], requestStatus)
     partyGate = self.geom.find('**/prop_party_gate_DNARoot')
     if not partyGate.isEmpty():
         partyGate.removeNode()
     del partyGate
     petShop = self.geom.find('**/prop_pet_shop_DNARoot')
     if not petShop.isEmpty():
         petShop.removeNode()
     del petShop
Esempio n. 49
0
 def __init__(self, parentFSM, doneEvent):
     self.parentFSM = parentFSM
     StateData.__init__(self, doneEvent)
     self.fsm = ClassicFSM('ShtickerBook', [State('off', self.enterOff, self.exitOff),
      State('optionPage', self.enterOptionPage, self.exitOptionPage, ['districtPage', 'off']),
      State('districtPage', self.enterDistrictPage, self.exitDistrictPage, ['optionPage', 'questPage', 'off']),
      State('questPage', self.enterQuestPage, self.exitQuestPage, ['inventoryPage', 'districtPage', 'off']),
      State('inventoryPage', self.enterInventoryPage, self.exitInventoryPage, ['mapPage', 'questPage', 'off']),
      State('mapPage', self.enterMapPage, self.exitMapPage, ['releaseNotesPage', 'inventoryPage', 'off']),
      State('releaseNotesPage', self.enterReleaseNotesPage, self.exitReleaseNotesPage, ['mapPage', 'off']),
      State('adminPage', self.enterAdminPage, self.exitAdminPage, ['releaseNotesPage', 'off'])], 'off', 'off')
     if base.localAvatar.getAdminToken() > -1:
         self.fsm.getStateNamed('releaseNotesPage').addTransition('adminPage')
     self.fsm.enterInitialState()
     self.entered = 0
     self.parentFSM.getStateNamed('shtickerBook').addChild(self.fsm)
Esempio n. 50
0
 def unload(self):
     self.notify.info('unload()')
     if hasattr(self, 'loader'):
         self.loader.exit()
         self.loader.unload()
         del self.loader
     del self.parentFSM
     del self.fsm
     self.dnaStore.resetAll()
     del self.dnaStore
     self.deleteCurrentSky()
     self.stopSuitEffect(0)
     self.ignoreAll()
     ModelPool.garbageCollect()
     TexturePool.garbageCollect()
     StateData.unload(self)
Esempio n. 51
0
 def __init__(self, distShop, doneEvent):
     StateData.__init__(self, doneEvent)
     self.distShop = distShop
     self.destroyEvent = self.distShop.destroyEvent
     self.origHealth = None
     self.avMoney = base.localAvatar.getMoney()
     self.healCooldownDoneSoundPath = 'phase_3.5/audio/sfx/tt_s_gui_sbk_cdrSuccess.mp3'
     self.healCooldownDoneSfx = None
     self.newHealth = None
     self.pages = 1
     self.window = None
     self.upgradesPurchased = False
     self.originalSupply = {}
     self.healCooldowns = {}
     self.newHealCooldowns = {}
     self.acceptOnce(self.destroyEvent, self.destroy)
     return
Esempio n. 52
0
 def unload(self):
     StateData.unload(self)
     self.parentFSMState.removeChild(self.fsm)
     del self.parentFSMState
     self.geom.removeNode()
     del self.geom
     del self.fsm
     del self.hood
     del self.playground
     del self.music
     del self.interiorMusic
     del self.battleMusic
     del self.bossBattleMusic
     del self.tournamentMusic
     self.ignoreAll()
     ModelPool.garbageCollect()
     TexturePool.garbageCollect()
Esempio n. 53
0
 def __init__(self, hood, parentFSMState, doneEvent):
     StateData.__init__(self, doneEvent)
     self.hood = hood
     self.parentFSMState = parentFSMState
     self.fsm = ClassicFSM('safeZoneLoader', [State('off', self.enterOff, self.exitOff),
      State('playground', self.enterPlayground, self.exitPlayground, ['quietZone']),
      State('toonInterior', self.enterToonInterior, self.exitToonInterior, ['quietZone']),
      State('quietZone', self.enterQuietZone, self.exitQuietZone, ['playground', 'toonInterior'])], 'off', 'off')
     self.placeDoneEvent = 'placeDone'
     self.place = None
     self.playground = None
     self.battleMusic = None
     self.invasionMusic = None
     self.invasionMusicFiles = None
     self.interiorMusic = None
     self.bossBattleMusic = None
     self.music = None
     self.tournamentMusic = None
     self.linkTunnels = []
     return
Esempio n. 54
0
 def unload(self):
     self.parentFSMState.removeChild(self.fsm)
     del self.parentFSMState
     del self.fsm
     del self.streetClass
     self.landmarkBlocks.removeNode()
     del self.landmarkBlocks
     self.hood.dnaStore.resetSuitPoints()
     self.hood.dnaStore.resetBattleCells()
     del self.hood
     del self.nodeDict
     del self.zoneDict
     del self.fadeInDict
     del self.fadeOutDict
     del self.nodeList
     self.geom.removeNode()
     del self.geom
     del self.music
     del self.interiorMusic
     ModelPool.garbageCollect()
     TexturePool.garbageCollect()
     StateData.unload(self)
Esempio n. 55
0
 def exit(self):
     self.fsm.request('off')
     StateData.exit(self)
Esempio n. 56
0
 def unload(self):
     self.cleanup()
     StateData.unload(self)
Esempio n. 57
0
 def exit(self):
     self.currentAttack.cleanup()
     StateData.exit(self)
Esempio n. 58
0
 def enter(self, ts = 0):
     StateData.enter(self)
     self.currentAttack.doAttack(ts)
Esempio n. 59
0
 def load(self, attackName):
     StateData.load(self)
     className = self.attackName2attackClass[attackName]
     self.currentAttack = className(self, self.suit)
Esempio n. 60
0
 def __init__(self, doneEvent, suit, target):
     StateData.__init__(self, doneEvent)
     self.suit = suit
     self.target = target
     self.currentAttack = None
     return