using System.Diagnostics.CodeAnalysis; using ADOFAIRenderer.Core; using HarmonyLib; using UnityEngine; using UnityEngine.UI; namespace ADOFAIRenderer.Patch.Game; [HarmonyPatch(typeof(scrShowIfDebug))] // ReSharper disable once InconsistentNaming public static class scrShowIfDebugPatch { [HarmonyPostfix] [HarmonyPatch("Update")] [SuppressMessage("ReSharper", "InconsistentNaming")] private static void IgnoreInput(Text ___txt, Color ___defaultColor) { if (!RenderManager.IsActive) return; ___txt.enabled = true; ___txt.text = "Render"; if (RenderManager.Instance) { if (RenderManager.Instance.countdown > 0) ___txt.text = $"Render in {RenderManager.Instance.countdown}s.."; if (RenderManager.Instance.endFrame != -1) { var elapsedFrames = RenderManager.Instance.frameCount - RenderManager.Instance.endFrame; var remainingTime = RenderManager.Instance.Configuration.DelayAfterEnd - elapsedFrames / RenderManager.Instance.Configuration.RenderFPS; if (remainingTime < 0) remainingTime = 0; ___txt.text += $"\nWaiting for {remainingTime:F1}s.."; } } ___txt.color = ___defaultColor; } }