From 4077d8eeff09db7705193c844f63df17201e21f9 Mon Sep 17 00:00:00 2001 From: Sam Byass Date: Tue, 24 Nov 2020 21:48:25 +0000 Subject: [PATCH] Fix issue if last mod in load order pre-loads patches, and show tips while loading :) --- 1.1-1.2/Assemblies/BetterLoading.dll | Bin 82944 -> 84480 bytes Source/LoadingScreen.cs | 38 ++++++++++++++++++ Source/ModContentPackMirror .cs | 20 +++++++++ .../Stage/InitialLoad/3StageApplyPatches.cs | 17 ++++++++ .../InitialLoad/6StageResolveDefDatabases.cs | 6 +++ 5 files changed, 81 insertions(+) create mode 100644 Source/ModContentPackMirror .cs diff --git a/1.1-1.2/Assemblies/BetterLoading.dll b/1.1-1.2/Assemblies/BetterLoading.dll index 547b8b03e763d4fa3149167ffa39d99850dd7f3b..58d3f66a1485b0330b57eb777a453037f92d6072 100644 GIT binary patch literal 84480 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 literal 82944 zcmbq+31C#!_4j%2&Agd;nJhDtOdtW0KoW+@LK1dFAcTDp5Kuq_0z_E?gOh+u$S@Re zD^^j&rCLDTaQ(ZrwOWO0U8-$ytJ+$GqE^MVwbm8C-#PcqWF~-Z{i5%@dzO3dx#ym{ zy!-AOrp]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 _tips; + private static string? _currentTip; + private static long _timeLastTipShown; + private const int _ticksPerTip = 5 * 10_000_000; //3 seconds + /// /// The load list used at game boot. /// @@ -307,6 +314,31 @@ public void OnGUI() rect.height += 100; //Allow for wrapping Text.Anchor = TextAnchor.UpperCenter; Widgets.Label(rect, "Current: " + currentStageText); + + //Draw loading lines + Text.Font = GameFont.Medium; + rect.y += 120; + if (!_tipsAvailable) + { + Widgets.Label(rect, "Gameplay tips will be shown here once the game loads them (after stage 7 completes)"); + } + else + { + //Load tips if required + _tips ??= DefDatabase.AllDefsListForReading.SelectMany(set => set.tips).InRandomOrder().ToList(); + + if (_currentTip == null || (DateTime.Now.Ticks - _timeLastTipShown) >= _ticksPerTip) + { + //No tip chosen yet, or time for next tip - pick another and reset timer. + _currentTip = _tips.Pop(); + _timeLastTipShown = DateTime.Now.Ticks; + } + + //Draw tip. + Widgets.Label(rect, _currentTip); + } + Text.Font = GameFont.Small; + rect.height -= 100; //Remove increased height //Render global progress bar. @@ -609,5 +641,11 @@ private void DrawSaveFileLoad() barRect = new Rect(rect.x, rect.y + 25, rect.width - 24, 20); Widgets.FillableBar(barRect, currentStage <= EnumLoadingStage.FinalizeLoad ? 0 : 1); } + + public static void MarkTipsNowAvailable() + { + Log.Message("[BetterLoading] Tips should now be available. Showing..."); + _tipsAvailable = true; + } } } \ No newline at end of file diff --git a/Source/ModContentPackMirror .cs b/Source/ModContentPackMirror .cs new file mode 100644 index 0000000..d5e1d19 --- /dev/null +++ b/Source/ModContentPackMirror .cs @@ -0,0 +1,20 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using JetBrains.Annotations; +using Verse; + +namespace BetterLoading +{ + public static class ModContentPackMirror + { + private static readonly FieldInfo PatchesField = typeof(ModContentPack).GetField("patches", BindingFlags.NonPublic | BindingFlags.Instance); + + public static List? GetPatches(ModContentPack instance) + { + return (List?) PatchesField.GetValue(instance); + } + } +} \ No newline at end of file diff --git a/Source/Stage/InitialLoad/3StageApplyPatches.cs b/Source/Stage/InitialLoad/3StageApplyPatches.cs index 522aff2..4828825 100755 --- a/Source/Stage/InitialLoad/3StageApplyPatches.cs +++ b/Source/Stage/InitialLoad/3StageApplyPatches.cs @@ -74,11 +74,28 @@ public override bool IsCompleted() public override void DoPatching(Harmony instance) { + instance.Patch(AccessTools.Method(typeof(LoadedModManager), nameof(LoadedModManager.ApplyPatches)), new HarmonyMethod(typeof(StageApplyPatches), nameof(PreApplyPatches))); + instance.Patch(AccessTools.Method(typeof(ModContentPack), "LoadPatches"), new HarmonyMethod(typeof(StageApplyPatches), nameof(PreLoadPatches)), new HarmonyMethod(typeof(StageApplyPatches), nameof(PostLoadPatches))); instance.Patch(AccessTools.Method(typeof(PatchOperation), nameof(PatchOperation.Apply)), new HarmonyMethod(typeof(StageApplyPatches), nameof(PostApplyPatch))); } + public static void PreApplyPatches() + { + //Reset this in case the patch was triggered early + _currentModNum = 0; + //Some mods load their patches before this point - remove them (e.g. DocWorld) + foreach (var modContentPack in LoadedModManager.RunningMods) + { + if (ModContentPackMirror.GetPatches(modContentPack) != null) + { + Log.Message($"[BetterLoading] Removing {modContentPack.Name} from the list of mods to load patches from - its patches have already been loaded."); + _modList.Remove(modContentPack); + } + } + } + public static void PreLoadPatches(ModContentPack __instance) { _loadingPatches = true; diff --git a/Source/Stage/InitialLoad/6StageResolveDefDatabases.cs b/Source/Stage/InitialLoad/6StageResolveDefDatabases.cs index ea3ab66..65a8968 100755 --- a/Source/Stage/InitialLoad/6StageResolveDefDatabases.cs +++ b/Source/Stage/InitialLoad/6StageResolveDefDatabases.cs @@ -49,6 +49,12 @@ public override void BecomeActive() inst = LoadingScreen.GetStageInstance(); } + public override void BecomeInactive() + { + base.BecomeInactive(); + LoadingScreen.MarkTipsNowAvailable(); + } + public override void DoPatching(Harmony instance) { instance.Patch(