def disable(self): getBase().tentacles.remove(self) if self.krakenRequest: self.cr.relatedObjectMgr.abortRequest(self.krakenRequest) self.krakenRequest = None if self.avRequest: self.cr.relatedObjectMgr.abortRequest(self.avRequest) self.avRequest = None if self.shipRequest: self.cr.relatedObjectMgr.abortRequest(self.shipRequest) self.shipRequest = None self.avatarId = 0 taskMgr.remove(self.uniqueName('grabDelay')) kraken = self.getKraken() if kraken: kraken.removeGrabberTentacle(self.doId) self.ignore('f8') self.ignore(self.uniqueName('enterRange')) self.ignore(self.uniqueName('exitRange')) self.creature.disable() self.slideBase.detachNode() if self.rangeCollisions: self.rangeCollisions.detachNode() self.rangeCollisions = None DistributedCreature.disable(self)
def setupCreature(self, avatarType): DistributedCreature.setupCreature(self, avatarType) self.slideBase = NodePath('slideBase') self.slider = self.slideBase.attachNewNode('slider') self.creature.reparentTo(self.slider) self.initializeMonstrousTags(self.creature) self.creature.getGeomNode().hide(OTPRender.ShadowCameraBitmask)
def __init__(self, cr): DistributedCreature.__init__(self, cr) self.shipRequest = None self.emergeIval = None self.moveTask = None self.rockingDampen = 0 self.emerged = 0 self.emergeIval = None
def delete(self): self.creature.delete() self.krakenId = 0 self.locatorId = -1 self.slider = None self.slideBase = None self.creature = None DistributedCreature.delete(self)
def announceGenerate(self): DistributedCreature.announceGenerate(self) self.accept('f8', self.grabAvatar, extraArgs = [ localAvatar]) self.creature.hide() self.accept(self.uniqueName('enterRange'), self.withinRange) self.accept(self.uniqueName('exitRange'), self.withoutRange) self.creature.setPythonTag('tentacle', self) if not hasattr(base, 'tentacles'): getBase().tentacles = [] getBase().tentacles.append(self)
def __init__(self, cr): DistributedCreature.__init__(self, cr) self.krakenId = 0 self.krakenRequest = None self.avatarId = 0 self.avRequest = None self.shipRequest = None self.moveTask = None self.rockingDampen = 0 self.emerged = 0 self.emergeIval = None self.locatorId = -1 self.rangeCollisions = None self.collisionsSet = False
def __init__(self, cr): DistributedCreature.__init__(self, cr) self.body = loader.loadModel("models/char/live_kraken_zero") self.body.find("**/kraken_high_tentacles").hide() self.body.reparentTo(self) self.body.setZ(-140) self.body.setH(90) self.targetShipId = None self.grabberTentacles = {} self.holderTentacles = {} self.doomTentacles = {} self.shipRomRequest = None self.dampen = [0, 0] self.rTask = None self.sinkCutsceneIval = None self.sinkShipIval = None self.sinkEffectsNode = None self.submergeInterval = self.body.posInterval(1, (0, 0, -140), (0, 0, -110)) self.emergeInterval = self.body.posInterval(4, (0, 0, -110), (0, 0, -140)) getBase().kraken = self self.createGameFSM()
def __init__(self, cr): DistributedCreature.__init__(self, cr) self.body = loader.loadModel('models/char/live_kraken_zero') self.body.find('**/kraken_high_tentacles').hide() self.body.reparentTo(self) self.body.setZ(-140) self.body.setH(90) self.targetShipId = None self.grabberTentacles = {} self.holderTentacles = {} self.doomTentacles = {} self.shipRomRequest = None self.dampen = [0, 0] self.rTask = None self.sinkCutsceneIval = None self.sinkShipIval = None self.sinkEffectsNode = None self.submergeInterval = self.body.posInterval(1, (0, 0, -140), (0, 0, -110)) self.emergeInterval = self.body.posInterval(4, (0, 0, -110), (0, 0, -140)) getBase().kraken = self self.createGameFSM()
def disable(self): self.removeBossEffect() DistributedCreature.disable(self)
def announceGenerate(self): DistributedCreature.announceGenerate(self) if not self.isInInvasion(): avType = CreatureTypes[self.avatarType.getNonBossType()] self.addBossEffect(avType)
def setupCreature(self, avatarType): self.loadBossData(self.getUniqueId(), avatarType) DistributedCreature.setupCreature(self, avatarType)
def __init__(self, cr): DistributedCreature.__init__(self, cr) Boss.__init__(self, cr)
def delete(self): if getBase().khead == self: getBase().khead = None DistributedCreature.delete(self)
def __init__(self, cr): DistributedCreature.__init__(self, cr) self.krakenId = 0
def delete(self): DistributedCreature.delete(self)
def loop(self, *args, **kw): if (args or args[0] == 'idle') and kw.get('animName') == 'idle' or kw.get('newAnim') == 'idle': kw['restart'] = 0 DistributedCreature.loop(self, *args, **kw)
def announceGenerate(self): DistributedCreature.announceGenerate(self) getBase().khead = self
def loop(self, *args, **kw): if (args or args[0] == 'idle' ) and kw.get('animName') == 'idle' or kw.get('newAnim') == 'idle': kw['restart'] = 0 DistributedCreature.loop(self, *args, **args)
def setupCreature(self, avatarType): DistributedCreature.setupCreature(self, avatarType)
def setupCreature(self, avatarType): DistributedCreature.setupCreature(self, avatarType) self.initializeMonstrousTags(self.creature) self.creature.getGeomNode().hide(OTPRender.ShadowCameraBitmask) self.creature.setupCollisions()
def __init__(self, cr): DistributedCreature.__init__(self, cr, SeaSerpent())