Ejemplo n.º 1
0
 def close(self, animate=True):
     if not self._open:
         return
     if animate:
         self._finishIval()
         self._ival = Sequence(
             Parallel(
                 SoundInterval(self._closeSfx),
                 self._leftDoor.posInterval(
                     self.getOpenCloseDuration(),
                     ElevatorUtils.getLeftClosePoint(
                         ElevatorConstants.ELEVATOR_NORMAL),
                     startPos=ElevatorUtils.getLeftOpenPoint(
                         ElevatorConstants.ELEVATOR_NORMAL),
                     blendType='easeIn'),
                 self._rightDoor.posInterval(
                     self.getOpenCloseDuration(),
                     ElevatorUtils.getRightClosePoint(
                         ElevatorConstants.ELEVATOR_NORMAL),
                     startPos=ElevatorUtils.getRightOpenPoint(
                         ElevatorConstants.ELEVATOR_NORMAL),
                     blendType='easeIn')))
         self._ival.start()
     else:
         ElevatorUtils.closeDoors(self._leftDoor,
                                  self._rightDoor,
                                  type=ElevatorConstants.ELEVATOR_NORMAL)
     self._open = False
 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)
Ejemplo n.º 3
0
 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 close(self, animate = True):
     if not self._open:
         return
     if animate:
         self._finishIval()
         self._ival = Sequence(Parallel(SoundInterval(self._closeSfx), self._leftDoor.posInterval(self.getOpenCloseDuration(), ElevatorUtils.getLeftClosePoint(ElevatorConstants.ELEVATOR_NORMAL), startPos=ElevatorUtils.getLeftOpenPoint(ElevatorConstants.ELEVATOR_NORMAL), blendType='easeIn'), self._rightDoor.posInterval(self.getOpenCloseDuration(), ElevatorUtils.getRightClosePoint(ElevatorConstants.ELEVATOR_NORMAL), startPos=ElevatorUtils.getRightOpenPoint(ElevatorConstants.ELEVATOR_NORMAL), blendType='easeIn')))
         self._ival.start()
     else:
         ElevatorUtils.closeDoors(self._leftDoor, self._rightDoor, type=ElevatorConstants.ELEVATOR_NORMAL)
     self._open = False
Ejemplo n.º 5
0
 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'))
Ejemplo n.º 6
0
 def loadEnvironment(self):
     DistributedBossCog.DistributedBossCog.loadEnvironment(self)
     self.midVault = loader.loadModel('phase_10/models/cogHQ/MidVault.bam')
     self.endVault = loader.loadModel('phase_10/models/cogHQ/EndVault.bam')
     self.lightning = loader.loadModel('phase_10/models/cogHQ/CBLightning.bam')
     self.magnet = loader.loadModel('phase_10/models/cogHQ/CBMagnet.bam')
     self.craneArm = loader.loadModel('phase_10/models/cogHQ/CBCraneArm.bam')
     self.controls = loader.loadModel('phase_10/models/cogHQ/CBCraneControls.bam')
     self.stick = loader.loadModel('phase_10/models/cogHQ/CBCraneStick.bam')
     self.safe = loader.loadModel('phase_10/models/cogHQ/CBSafe.bam')
     self.eyes = loader.loadModel('phase_10/models/cogHQ/CashBotBossEyes.bam')
     self.cableTex = self.craneArm.findTexture('MagnetControl')
     self.eyes.setPosHprScale(4.5, 0, -2.5, 90, 90, 0, 0.4, 0.4, 0.4)
     self.eyes.reparentTo(self.neck)
     self.eyes.hide()
     self.midVault.setPos(0, -222, -70.7)
     self.endVault.setPos(84, -201, -6)
     self.geom = NodePath('geom')
     self.midVault.reparentTo(self.geom)
     self.endVault.reparentTo(self.geom)
     self.endVault.findAllMatches('**/MagnetArms').detach()
     self.endVault.findAllMatches('**/Safes').detach()
     self.endVault.findAllMatches('**/MagnetControlsAll').detach()
     cn = self.endVault.find('**/wallsCollision').node()
     cn.setIntoCollideMask(OTPGlobals.WallBitmask | ToontownGlobals.PieBitmask)
     self.door1 = self.midVault.find('**/SlidingDoor1/')
     self.door2 = self.midVault.find('**/SlidingDoor/')
     self.door3 = self.endVault.find('**/SlidingDoor/')
     elevatorModel = loader.loadModel('phase_10/models/cogHQ/CFOElevator')
     elevatorOrigin = self.midVault.find('**/elevator_origin')
     elevatorOrigin.setScale(1)
     elevatorModel.reparentTo(elevatorOrigin)
     leftDoor = elevatorModel.find('**/left_door')
     leftDoor.setName('left-door')
     rightDoor = elevatorModel.find('**/right_door')
     rightDoor.setName('right-door')
     self.setupElevator(elevatorOrigin)
     ElevatorUtils.closeDoors(leftDoor, rightDoor, ElevatorConstants.ELEVATOR_CFO)
     walls = self.endVault.find('**/RollUpFrameCillison')
     walls.detachNode()
     self.evWalls = self.replaceCollisionPolysWithPlanes(walls)
     self.evWalls.reparentTo(self.endVault)
     self.evWalls.stash()
     floor = self.endVault.find('**/EndVaultFloorCollision')
     floor.detachNode()
     self.evFloor = self.replaceCollisionPolysWithPlanes(floor)
     self.evFloor.reparentTo(self.endVault)
     self.evFloor.setName('floor')
     plane = CollisionPlane(Plane(Vec3(0, 0, 1), Point3(0, 0, -50)))
     planeNode = CollisionNode('dropPlane')
     planeNode.addSolid(plane)
     planeNode.setCollideMask(ToontownGlobals.PieBitmask)
     self.geom.attachNewNode(planeNode)
     self.geom.reparentTo(render)
 def exitElevator(self):
     intervalName = 'ElevatorMovie'
     self.clearInterval(intervalName)
     self.elevatorMusic.stop()
     ElevatorUtils.closeDoors(self.leftDoor, self.rightDoor, self.elevatorType)
Ejemplo n.º 8
0
 def exitElevator(self):
     intervalName = 'ElevatorMovie'
     self.clearInterval(intervalName)
     self.elevatorMusic.stop()
     ElevatorUtils.closeDoors(self.leftDoor, self.rightDoor,
                              self.elevatorType)