コード例 #1
0
    def createGardenManager(self):
        if not config.GetBool('want-gardening', False):
            return

        if not self.estate:
            return

        if not self.getAvatarId():
            return

        av = self.air.doId2do.get(self.getAvatarId())
        if av is not None:
            if av.getGardenStarted():
                self.gardenManager = GardenManagerAI(self.air, self.estate)
                self.gardenManager.loadGarden(av.doId)

            return

        def __gotOwner(dclass, fields, self=self):
            if dclass != self.air.dclassesByName['DistributedToonAI']:
                return

            gardenStarted = fields['setGardenStarted'][0]
            if gardenStarted:
                self.gardenManager = GardenManagerAI(self.air, self.estate)
                self.gardenManager.loadGarden(self.getAvatarId())

        self.air.dbInterface.queryObject(self.air.dbId, self.getAvatarId(),
                                         __gotOwner)
コード例 #2
0
 def __gotOwner(dclass, fields, self=self):
     if dclass != self.air.dclassesByName['DistributedToonAI']:
         return
     gardenStarted = fields['setGardenStarted'][0]
     if gardenStarted:
         self.gardenManager = GardenManagerAI(self.air, self.estate)
         self.gardenManager.loadGarden(self.getAvatarId())
コード例 #3
0
    def placeStarterGarden(self):
        av = self.air.doId2do.get(self.avatarId)
        if av is None:
            return

        if av.getGardenStarted():
            self.notify.warning('Avatar %s tried to start their garden twice!' % self.avatarId)
            return

        # State that the avatar has started gardening
        av.b_setGardenStarted(1)

        # Create the GardenManagerAI
        self.gardenManager = GardenManagerAI(self.air, self)
        self.gardenManager.loadGarden()
コード例 #4
0
 def placeStarterGarden(self):
     if not config.GetBool('want-gardening', False):
         return
     else:
         if not self.estate:
             return
         av = self.air.doId2do.get(self.getAvatarId())
         if av is None:
             return
         if av.getGardenStarted():
             self.notify.warning(
                 'Avatar %s tried to start their garden twice!' %
                 self.getAvatarId())
             return
         av.b_setGardenStarted(1)
         self.gardenManager = GardenManagerAI(self.air, self.estate)
         self.gardenManager.loadGarden(av.doId)
         return
コード例 #5
0
    def createGardenManager(self):
        if not self.avatarId:
            return

        av = self.air.doId2do.get(self.avatarId)
        if av is not None:
            if av.getGardenStarted():
                self.gardenManager = GardenManagerAI(self.air, self)
                self.gardenManager.loadGarden()
            return

        def __gotOwner(dclass, fields, self=self):
            if dclass != self.air.dclassesByName['DistributedToonAI']:
                return

            gardenStarted = fields['setGardenStarted'][0]
            if gardenStarted:
                self.gardenManager = GardenManagerAI(self.air, self)
                self.gardenManager.loadGarden()

        self.air.dbInterface.queryObject(self.air.dbId, self.avatarId, __gotOwner)