def onEnterWorld(self, prereqs): self.model = prereqs[self.__vehDescr.turret['models']['exploded']] self.__gunModel = prereqs[self.__vehDescr.gun['models']['exploded']] node = self.model.node('HP_gunJoint', Math.Matrix()) node.attach(self.__gunModel) self.__detachConfirmationTimer.onEnterWorld() self.__vehDescr.keepPrereqs(prereqs) turretDescr = self.__vehDescr.turret if self.isUnderWater == 0: self.__detachmentEffects = _TurretDetachmentEffects( self.model, turretDescr['turretDetachmentEffects'], self.isCollidingWithWorld == 1) self.__reactors.append(self.__detachmentEffects) else: self.__detachmentEffects = None self.__hitEffects[ TankComponentNames.TURRET] = turretHitEffects = _HitEffects( self.model) self.__hitEffects[ TankComponentNames.GUN] = gunHitEffects = _HitEffects( self.__gunModel) self.__reactors.append(turretHitEffects) self.__reactors.append(gunHitEffects) self.__componentsDesc = (self.__vehDescr.turret, self.__vehDescr.gun) for desc in self.__componentsDesc: desc['hitTester'].loadBspModel() from AvatarInputHandler.CallbackDelayer import CallbackDelayer self.__isBeingPulledCallback = CallbackDelayer() self.__isBeingPulledCallback.delayCallback(self.__checkIsBeingPulled(), self.__checkIsBeingPulled) DetachedTurret.allTurrets.append(self)
def __init__(self): self.__callbackDelayer = CallbackDelayer() self.__selectedAreas = {} self.__wings = {} if _ENABLE_DEBUG_DRAW: self.debugPolyLine = Flock.DebugPolyLine() self.debugPoints = [] self.debugDirs = []