def destroy(self): g_eventBus.removeListener(GameEvent.SHOW_EXTENDED_INFO, self.__handleShowExtendedInfo, scope=_SCOPE) g_eventBus.removeListener(GameEvent.GUI_VISIBILITY, self.__handleGUIVisibility, scope=_SCOPE) self.__plugins.stop() g_settingsCore.interfaceScale.onScaleChanged -= self.updateMarkersScale ctrl = g_sessionProvider.getFeedback() if ctrl is not None: ctrl.onVehicleMarkerAdded -= self.__onVehicleMarkerAdded ctrl.onVehicleMarkerRemoved -= self.__onVehicleMarkerRemoved ctrl.onVehicleFeedbackReceived -= self.__onVehicleFeedbackReceived functional = g_sessionProvider.getDynSquadFunctional() if functional is not None: functional.onPlayerBecomeSquadman -= self.__onPlayerBecomeSquadman if self.__parentUI is not None: setattr(self.__parentUI.component, 'vehicleMarkersManager', None) self.__plugins.fini() self.__parentUI = None self.__ownUI = None self.__markersCanvasUI = None self.colorManager.dispossessUI() self.close() return
def start(self): self.active(True) self.__ownUI = GUI.WGVehicleMarkersCanvasFlash(self.movie) self.__ownUI.wg_inputKeyMode = 2 self.__ownUI.scaleProperties = GUI_SETTINGS.markerScaleSettings self.__ownUI.alphaProperties = GUI_SETTINGS.markerBgSettings self.__ownUIProxy = weakref.ref(self.__ownUI) self.__ownUIProxy().markerSetScale(g_settingsCore.interfaceScale.get()) g_settingsCore.interfaceScale.onScaleChanged += self.updateMarkersScale self.__parentUI.component.addChild(self.__ownUI, 'vehicleMarkersManager') self.__markersCanvasUI = self.getMember('vehicleMarkersCanvas') self.__plugins.init() ctrl = g_sessionProvider.getFeedback() if ctrl is not None: ctrl.onVehicleMarkerAdded += self.__onVehicleMarkerAdded ctrl.onVehicleMarkerRemoved += self.__onVehicleMarkerRemoved ctrl.onVehicleFeedbackReceived += self.__onVehicleFeedbackReceived functional = g_sessionProvider.getDynSquadFunctional() if functional is not None: functional.onPlayerBecomeSquadman += self.__onPlayerBecomeSquadman self.__plugins.start() g_eventBus.addListener(GameEvent.SHOW_EXTENDED_INFO, self.__handleShowExtendedInfo, scope=_SCOPE) g_eventBus.addListener(GameEvent.GUI_VISIBILITY, self.__handleGUIVisibility, scope=_SCOPE) return