protected override void Unload() { ModuleInstance = null; GameService.Pathing.NewMapLoaded -= _onNewMapLoaded; _moduleControls.ForEach(c => c.Dispose()); _moduleControls.Clear(); _allPathableResourceManagers.ForEach(GameService.Pathing.UnregisterPathableResourceManager); foreach (IPathable <Entity> pathable in PackFormat.TacO.Readers.MarkerPackReader.Pathables) { GameService.Pathing.UnregisterPathable(pathable); } PackFormat.TacO.Readers.MarkerPackReader.Pathables.Clear(); PackFormat.TacO.Readers.MarkerPackReader.Categories.Clear(); }
protected override void Unload() { // Unsubscribe from events GameService.Pathing.NewMapLoaded -= _onNewMapLoaded; // Dispose all controls _moduleControls.ForEach(c => c.Dispose()); _moduleControls.Clear(); _mapIcon.Dispose(); _mapIconMenu.Dispose(); _mapIcon = null; _mapIconMenu = null; // Unload and dispose all loaded pathables UnloadAllPathables(); // Release static reference to this module instance ModuleInstance = null; }
public MarkersAndPathsModule([Import("ModuleParameters")] ModuleParameters moduleParameters) : base(moduleParameters) { ModuleInstance = this; }