def startup(self):
        HoodDataAI.HoodDataAI.startup(self)
        mins = ToontownGlobals.FactoryLaffMinimums[1]
        self.testElev0 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(self.air, self.air.mintMgr, ToontownGlobals.CashbotMintIntA, antiShuffle=0, minLaff=mins[0])
        self.testElev0.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev0)
        self.testElev1 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(self.air, self.air.mintMgr, ToontownGlobals.CashbotMintIntB, antiShuffle=0, minLaff=mins[1])
        self.testElev1.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev1)
        self.testElev2 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(self.air, self.air.mintMgr, ToontownGlobals.CashbotMintIntC, antiShuffle=0, minLaff=mins[2])
        self.testElev2.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev2)
        self.lobbyMgr = LobbyManagerAI.LobbyManagerAI(self.air, DistributedCashbotBossAI.DistributedCashbotBossAI)
        self.lobbyMgr.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyMgr)
        self.lobbyElevator = DistributedCFOElevatorAI.DistributedCFOElevatorAI(self.air, self.lobbyMgr, ToontownGlobals.CashbotLobby, antiShuffle=1)
        self.lobbyElevator.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyElevator)
        if simbase.config.GetBool('want-boarding-groups', 1):
            self.boardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(self.air, [self.lobbyElevator.doId], 8)
            self.boardingParty.generateWithRequired(ToontownGlobals.CashbotLobby)
        destinationZone = ToontownGlobals.CashbotLobby
        extDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(self.air, 0, DoorTypes.EXT_COGHQ, destinationZone, doorIndex=0, lockValue=FADoorCodes.CB_DISGUISE_INCOMPLETE)
        extDoorList = [
         extDoor0]
        intDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(self.air, 0, DoorTypes.INT_COGHQ, ToontownGlobals.CashbotHQ, doorIndex=0)
        intDoor0.setOtherDoor(extDoor0)
        intDoor0.zoneId = ToontownGlobals.CashbotLobby
        mintIdList = [
         self.testElev0.doId, self.testElev1.doId, self.testElev2.doId]
        if simbase.config.GetBool('want-boarding-groups', 1):
            self.mintBoardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(self.air, mintIdList, 4)
            self.mintBoardingParty.generateWithRequired(self.zoneId)
        for extDoor in extDoorList:
            extDoor.setOtherDoor(intDoor0)
            extDoor.zoneId = ToontownGlobals.CashbotHQ
            extDoor.generateWithRequired(ToontownGlobals.CashbotHQ)
            extDoor.sendUpdate('setDoorIndex', [extDoor.getDoorIndex()])
            self.addDistObj(extDoor)

        intDoor0.generateWithRequired(ToontownGlobals.CashbotLobby)
        intDoor0.sendUpdate('setDoorIndex', [intDoor0.getDoorIndex()])
        self.addDistObj(intDoor0)
예제 #2
0
    def createSafeZone(self):
        self.lobbyMgr = LobbyManagerAI.LobbyManagerAI(self.air, DistributedCashbotBossAI.DistributedCashbotBossAI)
        self.lobbyMgr.generateWithRequired(ToontownGlobals.CashbotLobby)
        
        self.lobbyElevator = DistributedCFOElevatorAI.DistributedCFOElevatorAI(self.air, self.lobbyMgr, ToontownGlobals.CashbotLobby, antiShuffle=1)
        self.lobbyElevator.generateWithRequired(ToontownGlobals.CashbotLobby)

        if simbase.config.GetBool('want-boarding-groups', 1):
            self.boardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(self.air, [self.lobbyElevator.doId], 8)
            self.boardingParty.generateWithRequired(ToontownGlobals.CashbotLobby)

        destinationZone = ToontownGlobals.CashbotLobby
        extDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(self.air, 0, DoorTypes.EXT_COGHQ, destinationZone, doorIndex=0, lockValue=FADoorCodes.CB_DISGUISE_INCOMPLETE)
        extDoorList = [extDoor0]
        intDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(self.air, 0, DoorTypes.INT_COGHQ, ToontownGlobals.CashbotHQ, doorIndex=0)
        intDoor0.setOtherDoor(extDoor0)
        intDoor0.zoneId = ToontownGlobals.CashbotLobby
        for extDoor in extDoorList:
            extDoor.setOtherDoor(intDoor0)
            extDoor.zoneId = ToontownGlobals.CashbotHQ
            extDoor.generateWithRequired(ToontownGlobals.CashbotHQ)
            extDoor.sendUpdate('setDoorIndex', [extDoor.getDoorIndex()])

        intDoor0.generateWithRequired(ToontownGlobals.CashbotLobby)
        intDoor0.sendUpdate('setDoorIndex', [intDoor0.getDoorIndex()])
        
        # Create mints
        mintTypes = [
            ToontownGlobals.CashbotMintIntA,
            ToontownGlobals.CashbotMintIntB,
            ToontownGlobals.CashbotMintIntC,
        ]
        mins = ToontownGlobals.FactoryLaffMinimums[1]
        self.elevators = []
        for index, mintType in enumerate(mintTypes):
            elevator = DistributedMintElevatorExtAI(self.air, self.air.mintMgr, mintType, antiShuffle=0, minLaff=mins[index])
            elevator.generateWithRequired(self.HOOD)
            self.elevators.append(elevator)
예제 #3
0
    def startup(self):
        HoodDataAI.HoodDataAI.startup(self)

        mins = ToontownGlobals.FactoryLaffMinimums[1]

        # TODO: define these in a more modular way
        self.testElev0 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntA,
            antiShuffle=0,
            minLaff=mins[0])  # antiShufflePOI
        self.testElev0.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev0)

        self.testElev1 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntB,
            antiShuffle=0,
            minLaff=mins[1])  # antiShufflePOI
        self.testElev1.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev1)

        self.testElev2 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntC,
            antiShuffle=0,
            minLaff=mins[2])  # antiShufflePOI
        self.testElev2.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev2)

        # Lobby elevator
        self.lobbyMgr = LobbyManagerAI.LobbyManagerAI(
            self.air, DistributedCashbotBossAI.DistributedCashbotBossAI)
        self.lobbyMgr.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyMgr)

        self.lobbyElevator = DistributedCFOElevatorAI.DistributedCFOElevatorAI(
            self.air,
            self.lobbyMgr,
            ToontownGlobals.CashbotLobby,
            antiShuffle=1)  #antiShufflePOI
        self.lobbyElevator.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyElevator)

        if simbase.config.GetBool('want-boarding-groups', 1):
            self.boardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(
                self.air, [self.lobbyElevator.doId], 8)
            self.boardingParty.generateWithRequired(
                ToontownGlobals.CashbotLobby)

        # CogHQ Main building -> Lobby doors
        destinationZone = ToontownGlobals.CashbotLobby
        extDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(
            self.air,
            0,
            DoorTypes.EXT_COGHQ,
            destinationZone,
            doorIndex=0,
            lockValue=FADoorCodes.CB_DISGUISE_INCOMPLETE)
        extDoorList = [extDoor0]

        # Inside doors
        intDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(
            self.air,
            0,
            DoorTypes.INT_COGHQ,
            ToontownGlobals.CashbotHQ,
            doorIndex=0)
        intDoor0.setOtherDoor(extDoor0)
        intDoor0.zoneId = ToontownGlobals.CashbotLobby

        mintIdList = [
            self.testElev0.doId, self.testElev1.doId, self.testElev2.doId
        ]
        if simbase.config.GetBool('want-boarding-groups', 1):
            self.mintBoardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(
                self.air, mintIdList, 4)
            self.mintBoardingParty.generateWithRequired(self.zoneId)

        # Setup the doors and generate them
        for extDoor in extDoorList:
            # Tell them about each other
            extDoor.setOtherDoor(intDoor0)
            # Put them in the right zones
            extDoor.zoneId = ToontownGlobals.CashbotHQ
            # Now that they both now about each other, generate them:
            extDoor.generateWithRequired(ToontownGlobals.CashbotHQ)
            extDoor.sendUpdate("setDoorIndex", [extDoor.getDoorIndex()])
            self.addDistObj(extDoor)

        intDoor0.generateWithRequired(ToontownGlobals.CashbotLobby)
        intDoor0.sendUpdate("setDoorIndex", [intDoor0.getDoorIndex()])
        self.addDistObj(intDoor0)
예제 #4
0
    def startup(self):
        self.notify.info('Creating zone... Cashbot HQ')
        HoodDataAI.HoodDataAI.startup(self)
        mins = ToontownGlobals.FactoryLaffMinimums[1]
        self.testElev0 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntA,
            self.zoneId,
            antiShuffle=0,
            minLaff=mins[0])
        self.testElev0.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev0)
        self.testElev1 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntB,
            self.zoneId,
            antiShuffle=0,
            minLaff=mins[1])
        self.testElev1.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev1)
        self.testElev2 = DistributedMintElevatorExtAI.DistributedMintElevatorExtAI(
            self.air,
            self.air.mintMgr,
            ToontownGlobals.CashbotMintIntC,
            self.zoneId,
            antiShuffle=0,
            minLaff=mins[2])
        self.testElev2.generateWithRequired(ToontownGlobals.CashbotHQ)
        self.addDistObj(self.testElev2)
        self.lobbyMgr = LobbyManagerAI.LobbyManagerAI(
            self.air, DistributedCashbotBossAI.DistributedCashbotBossAI)
        self.lobbyMgr.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyMgr)
        self.lobbyElevator = DistributedCFOElevatorAI.DistributedCFOElevatorAI(
            self.air,
            self.lobbyMgr,
            ToontownGlobals.CashbotLobby,
            antiShuffle=1)
        self.lobbyElevator.generateWithRequired(ToontownGlobals.CashbotLobby)
        self.addDistObj(self.lobbyElevator)
        if simbase.config.GetBool('want-boarding-groups', 1):
            self.boardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(
                self.air, [self.lobbyElevator.doId], 8)
            self.boardingParty.generateWithRequired(
                ToontownGlobals.CashbotLobby)
        if simbase.config.GetBool('want-suit-planners', 1):
            sp = DistributedSuitPlannerAI.DistributedSuitPlannerAI(
                self.air, ToontownGlobals.CashbotHQ)
            sp.generateWithRequired(ToontownGlobals.CashbotHQ)
            sp.d_setZoneId(ToontownGlobals.CashbotHQ)
            sp.initTasks()
            self.air.suitPlanners[ToontownGlobals.CashbotHQ] = sp
            self.notify.debug('Created new SuitPlanner at %s' % self.zoneId)
        destinationZone = ToontownGlobals.CashbotLobby
        extDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(
            self.air,
            0,
            DoorTypes.EXT_COGHQ,
            destinationZone,
            doorIndex=0,
            lockValue=FADoorCodes.CB_DISGUISE_INCOMPLETE)
        extDoorList = [extDoor0]
        intDoor0 = DistributedCogHQDoorAI.DistributedCogHQDoorAI(
            self.air,
            0,
            DoorTypes.INT_COGHQ,
            ToontownGlobals.CashbotHQ,
            doorIndex=0)
        intDoor0.setOtherDoor(extDoor0)
        intDoor0.zoneId = ToontownGlobals.CashbotLobby
        episodeElevator = DistributedShortChangeElevatorAI.DistributedShortChangeElevatorAI(
            self.air, 0, 0, -65, 0, 180, 0, 0, 0)
        episodeElevator.generateWithRequired(
            ToontownGlobals.CashbotShortChangeOffice)
        episodeElevator2 = DistributedShortChangeOfficeElevatorAI.DistributedShortChangeOfficeElevatorAI(
            self.air, 0, 0, -65, 0, 180, 0, 0, 0)
        episodeElevator2.generateWithRequired(
            ToontownGlobals.CashbotHighriseHallway)
        episodeElevator3 = DistributedShortChangeOfficeToBarElevatorAI.DistributedShortChangeOfficeToBarElevatorAI(
            self.air, 0, 0, -65, 0, 180, 0, 0, 0)
        episodeElevator3.generateWithRequired(
            ToontownGlobals.CashbotHighriseHallway)
        episodeElevator4 = DistributedShortChangeBarElevatorAI.DistributedShortChangeBarElevatorAI(
            self.air, 0, 0, -65, 0, 180, 0, 0, 0)
        episodeElevator4.generateWithRequired(ToontownGlobals.CashbotBar)
        mintIdList = [
            self.testElev0.doId, self.testElev1.doId, self.testElev2.doId
        ]
        if simbase.config.GetBool('want-boarding-groups', 1):
            self.mintBoardingParty = DistributedBoardingPartyAI.DistributedBoardingPartyAI(
                self.air, mintIdList, 4)
            self.mintBoardingParty.generateWithRequired(self.zoneId)
        for extDoor in extDoorList:
            extDoor.setOtherDoor(intDoor0)
            extDoor.zoneId = ToontownGlobals.CashbotHQ
            extDoor.generateWithRequired(ToontownGlobals.CashbotHQ)
            extDoor.sendUpdate('setDoorIndex', [extDoor.getDoorIndex()])
            self.addDistObj(extDoor)

        intDoor0.generateWithRequired(ToontownGlobals.CashbotLobby)
        intDoor0.sendUpdate('setDoorIndex', [intDoor0.getDoorIndex()])
        self.addDistObj(intDoor0)