Decompiled source of In Game Timer v1.1.0

Mods/BBSIGT.dll

Decompiled 5 hours ago
using System;
using System.Diagnostics;
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BBSIGT;
using Il2Cpp;
using MelonLoader;
using Microsoft.CodeAnalysis;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: MelonInfo(typeof(Core), "BBSIGT", "1.1.0", "Caleb Orchard", null)]
[assembly: MelonGame("DefaultCompany", "BabySteps")]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("BBSIGT")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+72206ac23db2f82d508532b7f3c761e2aaf1227e")]
[assembly: AssemblyProduct("BBSIGT")]
[assembly: AssemblyTitle("BBSIGT")]
[assembly: NeutralResourcesLanguage("en-US")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace BBSIGT
{
	public class Core : MelonMod
	{
		private bool gameHasLoaded = false;

		private bool showGUI = false;

		private SaveGod saveGod;

		public override void OnSceneWasLoaded(int buildIndex, string sceneName)
		{
			((MelonMod)this).OnSceneWasLoaded(buildIndex, sceneName);
			if (!gameHasLoaded && sceneName == "SampleScene_player")
			{
				gameHasLoaded = true;
			}
		}

		public override void OnLateUpdate()
		{
			((MelonBase)this).OnLateUpdate();
			if (gameHasLoaded)
			{
				if ((Object)(object)saveGod == (Object)null)
				{
					saveGod = GameObject.Find("BigManagerPrefab/Menu").GetComponent<SaveGod>();
				}
				if (!((Object)(object)saveGod == (Object)null) && Input.GetKeyDown((KeyCode)111))
				{
					showGUI = !showGUI;
				}
			}
		}

		public override void OnGUI()
		{
			//IL_015c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0163: Expected O, but got Unknown
			//IL_0174: Unknown result type (might be due to invalid IL or missing references)
			//IL_01aa: Unknown result type (might be due to invalid IL or missing references)
			if (showGUI && !((Object)(object)saveGod == (Object)null))
			{
				float num = saveGod.GetPreciseTimePlayed();
				if (num < 0f)
				{
					num = 0f;
				}
				int num2 = (int)(num / 3600f);
				int value = (int)(num % 3600f / 60f);
				int value2 = (int)(num % 60f);
				int value3 = (int)(num * 100f % 100f);
				string text = ((num2 <= 0) ? $"{value:D2}:{value2:D2}.{value3:D2}" : $"{num2:D2}:{value:D2}:{value2:D2}.{value3:D2}");
				GUIStyle val = new GUIStyle(GUI.skin.label);
				val.fontSize = 32;
				val.normal.textColor = Color.white;
				val.alignment = (TextAnchor)2;
				Rect val2 = default(Rect);
				((Rect)(ref val2))..ctor((float)Screen.width - 260f, 10f, 250f, 60f);
				GUI.Label(val2, text, val);
			}
		}
	}
}