def splitShip(self): if not self.isSplit: self.isSplit = True self.modelGeom.instanceTo(self.clipParent2) planeNode1 = NodePath(PlaneNode('planeNode1', Plane(Vec4(0, 1, 0, 0)))) planeNode1.reparentTo(self.clipParent1) planeNode1.setY(ShipGlobals.getShipSplitOffset(self.shipClass)) self.clipParent1.setClipPlane(planeNode1) planeNode2 = NodePath(PlaneNode('planeNode2', Plane(Vec4(0, -1, 0, 0)))) planeNode2.reparentTo(self.clipParent2) planeNode2.setY(ShipGlobals.getShipSplitOffset(self.shipClass)) self.clipParent2.setClipPlane(planeNode2)
def spawnDoomTentacle(self): targetShip = self.getTargetShip() if targetShip and not self.doomTentacle: self.doomTentacle = DoomTentacle(self.uniqueName) self.doomTentacle.reparentTo(self) self.doomTentacle.setScale(targetShip.dimensions[1] / 400) self.doomTentacle.setEffectsScale(targetShip.dimensions[1] / 100) self.doomTentacle.setPos( targetShip, -targetShip.dimensions[0] / 1.3, -1 * ShipGlobals.getShipSplitOffset(targetShip.shipClass) + 2, -15) self.doomTentacle.setHpr(targetShip, 90, 0, 0) self.doomTentacle.setPlayRate(1.2, 'emerge') self.doomTentacle.play('emerge')
def spawnDoomTentacle(self): targetShip = self.getTargetShip() if targetShip and not (self.doomTentacle): self.doomTentacle = DoomTentacle(self.uniqueName) self.doomTentacle.reparentTo(self) self.doomTentacle.setScale(targetShip.dimensions[1] / 400) self.doomTentacle.setEffectsScale(targetShip.dimensions[1] / 100) self.doomTentacle.setPos( targetShip, -targetShip.dimensions[0] / 1.3, -1 * ShipGlobals.getShipSplitOffset(targetShip.shipClass) + 2, -15, ) self.doomTentacle.setHpr(targetShip, 90, 0, 0) self.doomTentacle.setPlayRate(1.2, "emerge") self.doomTentacle.play("emerge")