def createFishingPonds(self): self.fishingPonds = [] fishingPondGroups = [] for zoneId in self.getZoneTable(): dnaData = self.air.dnaDataMap.get(zoneId, None) if dnaData.getName() == 'root': area = ZoneUtil.getCanonicalZoneId(zoneId) (foundFishingPonds, foundFishingPondGroups) = self.findFishingPonds(dnaData, zoneId, area) self.fishingPonds.extend(foundFishingPonds) fishingPondGroups.extend(foundFishingPondGroups) for fishingPond in self.fishingPonds: NPCToons.createNpcsInZone(self.air, fishingPond.zoneId) fishingSpots = [] for (dnaGroup, fishingPond) in zip(fishingPondGroups, self.fishingPonds): fishingSpots.extend(self.findFishingSpots(dnaGroup, fishingPond))
def startup(self): self.createLobbyManager() self.createLobbyElevator() self.extDoor = self.makeCogHQDoor(self.lobbyZoneId, 0, 0, self.lobbyFADoorCode) if simbase.config.GetBool('want-boarding-groups', True): self.createBoardingParty() self.npcs = NPCToons.createNpcsInZone(self.air, self.zoneId)
def setup(self, blockNumber): self.interior = DistributedHQInteriorAI.DistributedHQInteriorAI( blockNumber, self.air, self.interiorZone) self.interior.generateWithRequired(self.interiorZone) self.npcs = NPCToons.createNpcsInZone(self.air, self.interiorZone) door0 = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.EXT_HQ, doorIndex=0) door1 = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.EXT_HQ, doorIndex=1) insideDoor0 = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_HQ, doorIndex=0) insideDoor1 = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_HQ, doorIndex=1) door0.setOtherDoor(insideDoor0) insideDoor0.setOtherDoor(door0) door1.setOtherDoor(insideDoor1) insideDoor1.setOtherDoor(door1) door0.zoneId = self.exteriorZone door1.zoneId = self.exteriorZone insideDoor0.zoneId = self.interiorZone insideDoor1.zoneId = self.interiorZone door0.generateWithRequired(self.exteriorZone) door1.generateWithRequired(self.exteriorZone) door0.sendUpdate('setDoorIndex', [door0.getDoorIndex()]) door1.sendUpdate('setDoorIndex', [door1.getDoorIndex()]) insideDoor0.generateWithRequired(self.interiorZone) insideDoor1.generateWithRequired(self.interiorZone) insideDoor0.sendUpdate('setDoorIndex', [insideDoor0.getDoorIndex()]) insideDoor1.sendUpdate('setDoorIndex', [insideDoor1.getDoorIndex()]) self.door0 = door0 self.door1 = door1 self.insideDoor0 = insideDoor0 self.insideDoor1 = insideDoor1
def setup(self, blockNumber): self.kartShopInterior = DistributedKartShopInteriorAI( blockNumber, self.air, self.interiorZone) self.kartShopInterior.generateWithRequired(self.interiorZone) self.npcs = NPCToons.createNpcsInZone(self.air, self.interiorZone) self.outsideDoor0 = DistributedDoorAI( self.air, blockNumber, DoorTypes.EXT_KS, doorIndex=1) self.outsideDoor1 = DistributedDoorAI( self.air, blockNumber, DoorTypes.EXT_KS, doorIndex=2) self.insideDoor0 = DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_KS, doorIndex=1) self.insideDoor1 = DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_KS, doorIndex=2) self.outsideDoor0.setOtherDoor(self.insideDoor0) self.outsideDoor1.setOtherDoor(self.insideDoor1) self.insideDoor0.setOtherDoor(self.outsideDoor0) self.insideDoor1.setOtherDoor(self.outsideDoor1) self.outsideDoor0.zoneId = self.exteriorZone self.outsideDoor1.zoneId = self.exteriorZone self.insideDoor0.zoneId = self.interiorZone self.insideDoor1.zoneId = self.interiorZone self.outsideDoor0.generateWithRequired(self.exteriorZone) self.outsideDoor1.generateWithRequired(self.exteriorZone) self.insideDoor0.generateWithRequired(self.interiorZone) self.insideDoor1.generateWithRequired(self.interiorZone) self.outsideDoor0.sendUpdate('setDoorIndex', [self.outsideDoor0.getDoorIndex()]) self.outsideDoor1.sendUpdate('setDoorIndex', [self.outsideDoor1.getDoorIndex()]) self.insideDoor0.sendUpdate('setDoorIndex', [self.insideDoor0.getDoorIndex()]) self.insideDoor1.sendUpdate('setDoorIndex', [self.insideDoor1.getDoorIndex()])
def startup(self): self.createLobbyManager() self.createLobbyElevator() self.extDoor = self.makeCogHQDoor(self.lobbyZoneId, 0, 0, self.lobbyFADoorCode) if simbase.config.GetBool('want-boarding-groups', True): self.createBoardingParty() self.npcs = NPCToons.createNpcsInZone(self.air, self.zoneId)
def createFishingPonds(self): self.fishingPonds = [] fishingPondGroups = [] for zoneId in self.getZoneTable(): dnaData = self.air.dnaDataMap.get(zoneId, None) if dnaData.getName() == 'root': area = ZoneUtil.getCanonicalZoneId(zoneId) (foundFishingPonds, foundFishingPondGroups) = self.findFishingPonds( dnaData, zoneId, area) self.fishingPonds.extend(foundFishingPonds) fishingPondGroups.extend(foundFishingPondGroups) for fishingPond in self.fishingPonds: NPCToons.createNpcsInZone(self.air, fishingPond.zoneId) fishingSpots = [] for (dnaGroup, fishingPond) in zip(fishingPondGroups, self.fishingPonds): fishingSpots.extend(self.findFishingSpots(dnaGroup, fishingPond))
def __init__(self, block, air, zoneId, building): DistributedObjectAI.DistributedObjectAI.__init__(self, air) self.block = block self.zoneId = zoneId self.building = building self.npcs = NPCToons.createNpcsInZone(air, zoneId) self.fsm = ClassicFSM.ClassicFSM('DistributedToonInteriorAI', [ State.State('toon', self.enterToon, self.exitToon, ['beingTakenOver']), State.State('beingTakenOver', self.enterBeingTakenOver, self.exitBeingTakenOver, []), State.State('off', self.enterOff, self.exitOff, []) ], 'toon', 'off') self.fsm.enterInitialState()
def __init__(self, block, air, zoneId, building): DistributedObjectAI.DistributedObjectAI.__init__(self, air) self.block = block self.zoneId = zoneId self.building = building self.npcs = NPCToons.createNpcsInZone(air, zoneId) self.fsm = ClassicFSM.ClassicFSM( 'DistributedToonInteriorAI', [ State.State('toon', self.enterToon, self.exitToon, ['beingTakenOver']), State.State('beingTakenOver', self.enterBeingTakenOver, self.exitBeingTakenOver, []), State.State('off', self.enterOff, self.exitOff, []) ], 'toon', 'off') self.fsm.enterInitialState()
def setup(self, blockNumber): self.interior = DistributedPetshopInteriorAI.DistributedPetshopInteriorAI( blockNumber, self.air, self.interiorZone) self.interior.generateWithRequired(self.interiorZone) self.npcs = NPCToons.createNpcsInZone(self.air, self.interiorZone) door = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.EXT_STANDARD) insideDoor = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_STANDARD) door.setOtherDoor(insideDoor) insideDoor.setOtherDoor(door) door.zoneId = self.exteriorZone insideDoor.zoneId = self.interiorZone door.generateWithRequired(self.exteriorZone) insideDoor.generateWithRequired(self.interiorZone) self.door = door self.insideDoor = insideDoor
def setup(self, blockNumber): self.interior = DistributedGagshopInteriorAI.DistributedGagshopInteriorAI( blockNumber, self.air, self.interiorZone) self.interior.generateWithRequired(self.interiorZone) self.npcs = NPCToons.createNpcsInZone(self.air, self.interiorZone) door = DistributedDoorAI.DistributedDoorAI(self.air, blockNumber, DoorTypes.EXT_STANDARD) insideDoor = DistributedDoorAI.DistributedDoorAI( self.air, blockNumber, DoorTypes.INT_STANDARD) door.setOtherDoor(insideDoor) insideDoor.setOtherDoor(door) door.zoneId = self.exteriorZone insideDoor.zoneId = self.interiorZone door.generateWithRequired(self.exteriorZone) insideDoor.generateWithRequired(self.interiorZone) self.door = door self.insideDoor = insideDoor
def setup(self, blockNumber): self.kartShopInterior = DistributedKartShopInteriorAI( blockNumber, self.air, self.interiorZone) self.kartShopInterior.generateWithRequired(self.interiorZone) self.npcs = NPCToons.createNpcsInZone(self.air, self.interiorZone) self.outsideDoor0 = DistributedDoorAI(self.air, blockNumber, DoorTypes.EXT_KS, doorIndex=1) self.outsideDoor1 = DistributedDoorAI(self.air, blockNumber, DoorTypes.EXT_KS, doorIndex=2) self.insideDoor0 = DistributedDoorAI(self.air, blockNumber, DoorTypes.INT_KS, doorIndex=1) self.insideDoor1 = DistributedDoorAI(self.air, blockNumber, DoorTypes.INT_KS, doorIndex=2) self.outsideDoor0.setOtherDoor(self.insideDoor0) self.outsideDoor1.setOtherDoor(self.insideDoor1) self.insideDoor0.setOtherDoor(self.outsideDoor0) self.insideDoor1.setOtherDoor(self.outsideDoor1) self.outsideDoor0.zoneId = self.exteriorZone self.outsideDoor1.zoneId = self.exteriorZone self.insideDoor0.zoneId = self.interiorZone self.insideDoor1.zoneId = self.interiorZone self.outsideDoor0.generateWithRequired(self.exteriorZone) self.outsideDoor1.generateWithRequired(self.exteriorZone) self.insideDoor0.generateWithRequired(self.interiorZone) self.insideDoor1.generateWithRequired(self.interiorZone) self.outsideDoor0.sendUpdate('setDoorIndex', [self.outsideDoor0.getDoorIndex()]) self.outsideDoor1.sendUpdate('setDoorIndex', [self.outsideDoor1.getDoorIndex()]) self.insideDoor0.sendUpdate('setDoorIndex', [self.insideDoor0.getDoorIndex()]) self.insideDoor1.sendUpdate('setDoorIndex', [self.insideDoor1.getDoorIndex()])