예제 #1
0
    def stop(self):
        self.__isStarted = False
        import SoundGroups
        SoundGroups.g_instance.changePlayMode(0)
        aih_global_binding.clear()
        for control in self.__ctrls.itervalues():
            control.destroy()

        replayCtrl = BattleReplay.g_replayCtrl
        if replayCtrl.isRecording:
            replayCtrl.setPlayerVehicleID(0)
        if self.__remoteCameraSender is not None:
            self.__remoteCameraSender.destroy()
            self.__remoteCameraSender = None
        self.onCameraChanged.clear()
        self.onCameraChanged = None
        self.onPostmortemVehicleChanged.clear()
        self.onPostmortemVehicleChanged = None
        self.onPostmortemKillerVisionEnter.clear()
        self.onPostmortemKillerVisionEnter = None
        self.onPostmortemKillerVisionExit.clear()
        self.onPostmortemKillerVisionExit = None
        self.__targeting.enable(False)
        self.__killerVehicleID = None
        if self.__onRecreateDevice in g_guiResetters:
            g_guiResetters.remove(self.__onRecreateDevice)
        BigWorld.player().arena.onPeriodChange -= self.__onArenaStarted
        self.settingsCore.onSettingsChanged -= self.__onSettingsChanged
        BigWorld.player().consistentMatrices.onVehicleMatrixBindingChanged -= self.__onVehicleChanged
        ComponentSystem.destroy(self)
        CallbackDelayer.destroy(self)
        return
 def destroy(self):
     self.__trackScrollCtl = None
     if self.__vehicle is not None:
         self.deactivate()
     self.__destroySystems()
     ComponentSystem.destroy(self)
     self.__typeDesc = None
     self.highlighter.destroy()
     if self.__vibrationsCtrl is not None:
         self.__vibrationsCtrl.destroy()
         self.__vibrationsCtrl = None
     if self.__lightFxCtrl is not None:
         self.__lightFxCtrl.destroy()
         self.__lightFxCtrl = None
     if self.__auxiliaryFxCtrl is not None:
         self.__auxiliaryFxCtrl.destroy()
         self.__auxiliaryFxCtrl = None
     if self.__boundEffects is not None:
         self.__boundEffects.destroy()
     self.__vehicleStickers = None
     self.onModelChanged = None
     if self.__crashedTracksCtrl is not None:
         self.__crashedTracksCtrl.destroy()
         self.__crashedTracksCtrl = None
     self.__chassisOcclusionDecal.destroy()
     self.__chassisOcclusionDecal = None
     self.__chassisShadowForwardDecal.destroy()
     self.__chassisShadowForwardDecal = None
     self.__compoundModel = None
     CallbackDelayer.destroy(self)
     return
예제 #3
0
 def onLeaveWorld(self):
     ComponentSystem.destroy(self)
     DetachedTurret.allTurrets.remove(self)
     ProjectileAwareEntities.removeEntity(self)
     self.__detachConfirmationTimer.cancel()
     self.__detachConfirmationTimer = None
     self.__isBeingPulledCallback.destroy()
     self.__isBeingPulledCallback = None
     return
예제 #4
0
 def onLeaveWorld(self):
     ComponentSystem.deactivate(self)
     ComponentSystem.destroy(self)
     if self.__clickSound is not None:
         if self.__clickSound.isPlaying:
             self.__clickSound.stop()
         self.__clickSound.releaseMatrix()
         self.__clickSound = None
     self.highlight(False)
     return
 def onLeaveWorld(self):
     ComponentSystem.deactivate(self)
     ComponentSystem.destroy(self)
     DetachedTurret.allTurrets.remove(self)
     self.__detachConfirmationTimer.cancel()
     self.__detachConfirmationTimer = None
     self.__isBeingPulledCallback.destroy()
     self.__isBeingPulledCallback = None
     if self.__vehicleStickers is not None:
         self.__vehicleStickers.detach()
         self.__vehicleStickers = None
     return
예제 #6
0
 def destroy(self):
     if self.__vehicle is not None:
         self.deactivate()
     self.__destroySystems()
     ComponentSystem.destroy(self)
     self.__typeDesc = None
     if self.__boundEffects is not None:
         self.__boundEffects.destroy()
     self.__vehicleStickers = None
     self.onModelChanged = None
     self.__chassisDecal.destroy()
     self.__chassisDecal = None
     self.__compoundModel = None
     CallbackDelayer.destroy(self)
     return
 def destroy(self):
     ComponentSystem.deactivate(self)
     ComponentSystem.destroy(self)
     self.__vDesc = None
     self.__vState = None
     self.__loadState.unload()
     self.__loadState.destroy()
     self.__loadState = None
     self.__curBuildInd = 0
     self.__vEntity = None
     self.settingsCore.onSettingsChanged -= self.__onSettingsChanged
     self.itemsCache.onSyncCompleted -= self.__onItemsCacheSyncCompleted
     g_eventBus.removeListener(CameraRelatedEvents.CAMERA_ENTITY_UPDATED,
                               self.__handleEntityUpdated)
     return
예제 #8
0
 def destroy(self):
     if self.__vehicle is not None:
         self.deactivate()
     self.__destroySystems()
     fashions = VehiclePartsTuple(None, None, None, None)
     self.__setFashions(fashions, self.__isTurretDetached)
     ComponentSystem.destroy(self)
     self.__typeDesc = None
     if self.__boundEffects is not None:
         self.__boundEffects.destroy()
     self.__vehicleStickers = None
     self.onModelChanged = None
     self.__chassisDecal.destroy()
     self.__chassisDecal = None
     self.__compoundModel = None
     CallbackDelayer.destroy(self)
     return
예제 #9
0
 def destroy(self):
     ComponentSystem.deactivate(self)
     ComponentSystem.destroy(self)
     self.__onLoadedCallback = None
     self.__vDesc = None
     self.__vState = None
     self.__isLoaded = False
     self.__curBuildInd = 0
     self.__vEntityId = None
     if self.__smCb is not None:
         BigWorld.cancelCallback(self.__smCb)
         self.__smCb = None
     if self.__smRemoveCb is not None:
         BigWorld.cancelCallback(self.__smRemoveCb)
         self.__smRemoveCb = None
     self.settingsCore.onSettingsChanged -= self.__onSettingsChanged
     self.itemsCache.onSyncCompleted -= self.__onItemsCacheSyncCompleted
     return
 def destroy(self):
     ComponentSystem.destroy(self)
     self._onUpdate.clear()
     self.__syncDataObjects.clear()
 def destroy(self):
     ComponentSystem.destroy(self)
     self._onUpdate.clear()
     self.__syncDataObjects.clear()