static void RefreshDCFlags() { try { if (Helpers.InStartupMenu) { return; } Log.Called(); SimulationManager.instance.ForcedSimulationPaused = true; NetInfoUtil.RestoreFlags(); NetInfoUtil.RestoreMaxTurnAngles(); NetInfoUtil.FixMaxTurnAngles(); NetInfoUtil.FixDCFlags(); } catch (Exception ex) { ex.Log(); } finally { SimulationManager.instance.ForcedSimulationPaused = false; } SimulationManager.instance.AddAction(delegate() { NetInfoUtil.UpdateAllNodeRenderers(); }); }
public static void Unload() { Log.Debug("LifeCycle.Unload() called"); UninstallHarmony(); NetInfoUtil.RestoreMaxTurnAngles(); NetInfoUtil.UnloadDCTextures(); }
public static void AfterLoad() { LogCalled(); SimulationManager.instance.AddAction(delegate() { NetInfoUtil.UpdateAllNodeRenderers(); }); UI.DCRTool.Create(); }
public static void Load() { Log.Debug("LifeCycle.Load() called"); CheckMedianCommons.Init(); InstallHarmony(); NetInfoUtil.LoadDCTextures(); NetInfoUtil.FixMaxTurnAngles(); }
public static void ExitToMainMenu() { if (!Loaded) { return; // protect against Disabling mod from main menu. } LogCalled(); UI.DCRTool.Release(); NetInfoUtil.RestoreFlags(); NetInfoUtil.RestoreMaxTurnAngles(); NetInfoUtil.UnloadDCTextures(); Loaded = false; }
static void GenerateFamilyLUT(IEnumerable <string> infoNames, TrackType trackType = TrackType.All) { var infos = infoNames.Select(name => NetInfoUtil.GetInfo(name, throwOnError: false)); infos = infos.Where(info => info != null); var trackFamily = TrackFamily.CreateFamily(infos, trackType); foreach (var subFamily in trackFamily.SubFamilyDict.Values) { subFamily.GenerateExtraMeshes(); subFamily.AddStationsToLUT(); } }
public static void SimulationDataReady() { try { LogCalled(); if (!Loaded) { NetInfoUtil.GenerateDCTextures(); NetInfoUtil.FixMaxTurnAngles(); NetInfoUtil.FixDCFlags(); if (DCRConfig.Config.RefreshOnStartup) { DCRSettings.RefreshNetworks(); } } Loaded = true; } catch (Exception e) { Log.Exception(e); } }