Decompiled source of Infoholic v2.1.3

Infoholic.dll

Decompiled 4 months ago
using System;
using System.Collections;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using HarmonyLib;
using Infoholic.MonoBehaviours;
using TMPro;
using UnboundLib;
using UnboundLib.GameModes;
using UnboundLib.Utils.UI;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("Infoholic")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+e7e446df196a99348f6cdad52c010607f939e724")]
[assembly: AssemblyProduct("Infoholic")]
[assembly: AssemblyTitle("Infoholic")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace Infoholic
{
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInPlugin("com.penial.rounds.Infoholic", "Infoholic", "2.1.3")]
	[BepInProcess("Rounds.exe")]
	public class Infoholic : BaseUnityPlugin
	{
		[Serializable]
		[CompilerGenerated]
		private sealed class <>c
		{
			public static readonly <>c <>9 = new <>c();

			public static UnityAction <>9__23_0;

			public static UnityAction<bool> <>9__28_1;

			public static UnityAction<bool> <>9__28_2;

			public static UnityAction<bool> <>9__28_3;

			public static UnityAction<bool> <>9__28_4;

			public static UnityAction <>9__28_5;

			public static UnityAction<float> <>9__28_6;

			public static UnityAction<float> <>9__28_7;

			public static UnityAction<float> <>9__28_8;

			public static UnityAction<float> <>9__28_9;

			public static UnityAction<float> <>9__28_10;

			public static UnityAction <>9__28_12;

			public static UnityAction <>9__28_13;

			public static UnityAction<float> <>9__29_0;

			public static UnityAction<float> <>9__29_1;

			public static UnityAction<float> <>9__29_2;

			internal void <Start>b__23_0()
			{
				//IL_000d: Unknown result type (might be due to invalid IL or missing references)
				inSettings = true;
				previewStatsToggledPressed = false;
				SettingsPreview settingsPreview = new GameObject().AddComponent<SettingsPreview>();
			}

			internal void <NewGUI>b__28_1(bool value)
			{
				//IL_0012: Unknown result type (might be due to invalid IL or missing references)
				SettingsEnableMod = value;
				if (SettingsEnableMod)
				{
					SettingsPreview settingsPreview = new GameObject().AddComponent<SettingsPreview>();
					previewStatsToggledPressed = false;
				}
			}

			internal void <NewGUI>b__28_2(bool value)
			{
				SimpleMode = value;
			}

			internal void <NewGUI>b__28_3(bool value)
			{
				DisableDuringPickPhase = value;
				if (inPick & DisableDuringPickPhase)
				{
					statsToggledPressed = true;
				}
				if (inPick & !DisableDuringPickPhase)
				{
					statsToggledPressed = false;
				}
			}

			internal void <NewGUI>b__28_4(bool value)
			{
				DisableDuringBattlePhase = value;
				if (inBattle & DisableDuringBattlePhase)
				{
					statsToggledPressed = true;
				}
				if (inBattle & !DisableDuringBattlePhase)
				{
					statsToggledPressed = false;
				}
			}

			internal void <NewGUI>b__28_5()
			{
			}

			internal void <NewGUI>b__28_6(float value)
			{
				Opacity = value;
			}

			internal void <NewGUI>b__28_7(float value)
			{
				FontSize = value;
			}

			internal void <NewGUI>b__28_8(float value)
			{
				FontSpacing = value;
			}

			internal void <NewGUI>b__28_9(float value)
			{
				TextX = (int)value;
			}

			internal void <NewGUI>b__28_10(float value)
			{
				TextY = (int)value;
			}

			internal void <NewGUI>b__28_12()
			{
				previewStatsToggledPressed = false;
				inSettings = false;
			}

			internal void <NewGUI>b__28_13()
			{
				previewStatsToggledPressed = false;
				inSettings = false;
			}

			internal void <ColorSettingsGUI>b__29_0(float value)
			{
				ColorR = value;
			}

			internal void <ColorSettingsGUI>b__29_1(float value)
			{
				ColorG = value;
			}

			internal void <ColorSettingsGUI>b__29_2(float value)
			{
				ColorB = value;
			}
		}

		public const string AbbrModName = "IH";

		public const string ModInitials = "IH";

		private const string ModId = "com.penial.rounds.Infoholic";

		private const string ModName = "Infoholic";

		public const string Version = "2.1.3";

		private const string CompatibilityModName = "Infoholic";

		public static bool DebugMode;

		private static TextMeshProUGUI keyText;

		private static GameObject button;

		public static bool inGame;

		public static bool inPick;

		public static bool inBattle;

		public static bool inSettings;

		private bool detectKey;

		private bool haveDetectedKey;

		public static bool statsToggledPressed;

		public static bool previewStatsToggledPressed;

		public static float statsToggled;

		public static Infoholic instance { get; private set; }

		public static KeyCode DetectedKey
		{
			get
			{
				//IL_0012: Unknown result type (might be due to invalid IL or missing references)
				//IL_0015: Unknown result type (might be due to invalid IL or missing references)
				return (KeyCode)PlayerPrefs.GetInt(GetConfigKey("keybindcode"), 111);
			}
			set
			{
				//IL_000b: Unknown result type (might be due to invalid IL or missing references)
				//IL_0011: Expected I4, but got Unknown
				PlayerPrefs.SetInt(GetConfigKey("keybindcode"), (int)value);
			}
		}

		public static bool SettingsEnableMod
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("SettingsEnableMod"), 1) == 1;
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("SettingsEnableMod"), value ? 1 : 0);
			}
		}

		public static bool SimpleMode
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("SimpleMode"), 1) == 1;
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("SimpleMode"), value ? 1 : 0);
			}
		}

		public static bool DisableDuringPickPhase
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("DisableDuringPickPhase"), 0) == 1;
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("DisableDuringPickPhase"), value ? 1 : 0);
			}
		}

		public static bool DisableDuringBattlePhase
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("DisableDuringBattlePhase"), 0) == 1;
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("DisableDuringBattlePhase"), value ? 1 : 0);
			}
		}

		public static float Opacity
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("opacity"), 0.75f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("opacity"), value);
			}
		}

		public static float FontSize
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("fontsize"), 2f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("fontsize"), value);
			}
		}

		public static float FontSpacing
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("fontspacing"), 0f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("fontspacing"), value);
			}
		}

		public static int TextX
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("textx"), 0);
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("textx"), value);
			}
		}

		public static int TextY
		{
			get
			{
				return PlayerPrefs.GetInt(GetConfigKey("texty"), 0);
			}
			set
			{
				PlayerPrefs.SetInt(GetConfigKey("texty"), value);
			}
		}

		public static float ColorR
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("colorr"), 1f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("colorr"), value);
			}
		}

		public static float ColorG
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("colorg"), 1f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("colorg"), value);
			}
		}

		public static float ColorB
		{
			get
			{
				return PlayerPrefs.GetFloat(GetConfigKey("colorb"), 1f);
			}
			set
			{
				PlayerPrefs.SetFloat(GetConfigKey("colorb"), value);
			}
		}

		private void Awake()
		{
			//IL_0018: Unknown result type (might be due to invalid IL or missing references)
			//IL_001e: Expected O, but got Unknown
			instance = this;
			Unbound.RegisterClientSideMod("com.penial.rounds.Infoholic");
			Harmony val = new Harmony("com.penial.rounds.Infoholic");
			val.PatchAll();
		}

		private void Start()
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_006a: Expected O, but got Unknown
			Unbound.RegisterCredits("<color=#09ff00>I</color>nfo<color=#ff0000>h</color>olic", new string[1] { "Penial" }, new string[2] { "<b><color=#ff00df>GitHub (Source Code)</b></color>", "Penial's Steam Profile" }, new string[2] { "https://github.com/PikachuPenial/Infoholic", "https://steamcommunity.com/profiles/76561198168653752" });
			object obj = <>c.<>9__23_0;
			if (obj == null)
			{
				UnityAction val = delegate
				{
					//IL_000d: Unknown result type (might be due to invalid IL or missing references)
					inSettings = true;
					previewStatsToggledPressed = false;
					SettingsPreview settingsPreview = new GameObject().AddComponent<SettingsPreview>();
				};
				<>c.<>9__23_0 = val;
				obj = (object)val;
			}
			Unbound.RegisterMenu("Infoholic Settings", (UnityAction)obj, (Action<GameObject>)NewGUI, (GameObject)null, false);
			GameModeManager.AddHook("GameStart", (Func<IGameModeHandler, IEnumerator>)GameStart);
			GameModeManager.AddHook("GameEnd", (Func<IGameModeHandler, IEnumerator>)GameEnd);
			GameModeManager.AddHook("PickStart", (Func<IGameModeHandler, IEnumerator>)PickStart);
			GameModeManager.AddHook("RoundStart", (Func<IGameModeHandler, IEnumerator>)RoundStart);
		}

		private IEnumerator GameStart(IGameModeHandler gameModeHandler)
		{
			inGame = true;
			statsToggledPressed = false;
			if (SettingsEnableMod)
			{
				new GameObject().AddComponent<GameStatusUpdate>();
			}
			yield break;
		}

		private IEnumerator GameEnd(IGameModeHandler gameModeHandler)
		{
			inGame = false;
			inPick = false;
			inBattle = false;
			yield break;
		}

		private IEnumerator PickStart(IGameModeHandler gameModeHandler)
		{
			inPick = true;
			inBattle = false;
			if (DisableDuringBattlePhase)
			{
				statsToggledPressed = false;
			}
			if (DisableDuringPickPhase)
			{
				statsToggledPressed = true;
			}
			yield break;
		}

		private IEnumerator RoundStart(IGameModeHandler gameModeHandler)
		{
			inBattle = true;
			inPick = false;
			if (DisableDuringPickPhase)
			{
				statsToggledPressed = false;
			}
			if (DisableDuringBattlePhase)
			{
				statsToggledPressed = true;
			}
			yield break;
		}

		private void NewGUI(GameObject menu)
		{
			//IL_0042: Unknown result type (might be due to invalid IL or missing references)
			//IL_0065: Expected O, but got Unknown
			//IL_01d3: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_01de: Expected O, but got Unknown
			//IL_040d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0430: Expected O, but got Unknown
			//IL_0451: Unknown result type (might be due to invalid IL or missing references)
			//IL_0456: Unknown result type (might be due to invalid IL or missing references)
			//IL_045c: Expected O, but got Unknown
			//IL_0495: Unknown result type (might be due to invalid IL or missing references)
			//IL_049a: Unknown result type (might be due to invalid IL or missing references)
			//IL_04a0: Expected O, but got Unknown
			TextMeshProUGUI val = default(TextMeshProUGUI);
			MenuHandler.CreateText("INFOHOLIC SETTINGS", menu, ref val, 60, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			button = MenuHandler.CreateButton("SET TOGGLE KEYBIND", menu, (UnityAction)delegate
			{
				detectKey = true;
			}, 35, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateText("CURRENT TOGGLE KEYBIND: ", menu, ref keyText, 40, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			GameObject val2 = MenuHandler.CreateToggle(SettingsEnableMod, "<b><color=#09ff00>Enable</color></b> Mod", menu, (UnityAction<bool>)delegate(bool value)
			{
				//IL_0012: Unknown result type (might be due to invalid IL or missing references)
				SettingsEnableMod = value;
				if (SettingsEnableMod)
				{
					SettingsPreview settingsPreview = new GameObject().AddComponent<SettingsPreview>();
					previewStatsToggledPressed = false;
				}
			}, 50, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			GameObject val3 = MenuHandler.CreateToggle(SimpleMode, "<b><color=#00e5ff>Simplistic</color></b> Mode (less stats)", menu, (UnityAction<bool>)delegate(bool value)
			{
				SimpleMode = value;
			}, 50, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			GameObject val4 = MenuHandler.CreateToggle(DisableDuringPickPhase, "Hide on pick phase", menu, (UnityAction<bool>)delegate(bool value)
			{
				DisableDuringPickPhase = value;
				if (inPick & DisableDuringPickPhase)
				{
					statsToggledPressed = true;
				}
				if (inPick & !DisableDuringPickPhase)
				{
					statsToggledPressed = false;
				}
			}, 50, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			GameObject val5 = MenuHandler.CreateToggle(DisableDuringBattlePhase, "Hide on battle phase", menu, (UnityAction<bool>)delegate(bool value)
			{
				DisableDuringBattlePhase = value;
				if (inBattle & DisableDuringBattlePhase)
				{
					statsToggledPressed = true;
				}
				if (inBattle & !DisableDuringBattlePhase)
				{
					statsToggledPressed = false;
				}
			}, 50, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			object obj = <>c.<>9__28_5;
			if (obj == null)
			{
				UnityAction val6 = delegate
				{
				};
				<>c.<>9__28_5 = val6;
				obj = (object)val6;
			}
			GameObject menu2 = MenuHandler.CreateMenu("COLOR SETTINGS", (UnityAction)obj, menu, 35, true, true, ((Component)menu.transform.parent).gameObject, true, -1);
			ColorSettingsGUI(menu2);
			Slider opacitySlider = default(Slider);
			MenuHandler.CreateSlider("Opacity", menu, 50, 0f, 1f, Opacity, (UnityAction<float>)delegate(float value)
			{
				Opacity = value;
			}, ref opacitySlider, false, (Color?)null, (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider fontSizeSlider = default(Slider);
			MenuHandler.CreateSlider("Size", menu, 50, 0f, 5f, FontSize, (UnityAction<float>)delegate(float value)
			{
				FontSize = value;
			}, ref fontSizeSlider, false, (Color?)null, (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider fontSpacingSlider = default(Slider);
			MenuHandler.CreateSlider("Spacing", menu, 50, -3f, 2f, FontSpacing, (UnityAction<float>)delegate(float value)
			{
				FontSpacing = value;
			}, ref fontSpacingSlider, false, (Color?)null, (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider textX = default(Slider);
			MenuHandler.CreateSlider("X Offset", menu, 50, -75f, 75f, (float)TextX, (UnityAction<float>)delegate(float value)
			{
				TextX = (int)value;
			}, ref textX, true, (Color?)null, (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider textY = default(Slider);
			MenuHandler.CreateSlider("Y Offset", menu, 50, -75f, 75f, (float)TextY, (UnityAction<float>)delegate(float value)
			{
				TextY = (int)value;
			}, ref textY, true, (Color?)null, (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<b><color=#ff0000>Reset</color></b> all settings", menu, (UnityAction)delegate
			{
				TextX = 0;
				TextY = 0;
				Opacity = 0.75f;
				FontSize = 2f;
				FontSpacing = 0f;
				ColorR = 1f;
				ColorG = 1f;
				ColorB = 1f;
				textX.value = TextX;
				textY.value = TextY;
				opacitySlider.value = Opacity;
				fontSizeSlider.value = FontSize;
				fontSpacingSlider.value = FontSpacing;
			}, 40, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			UnityEvent goBackEvent = menu.GetComponentInChildren<GoBack>(true).goBackEvent;
			object obj2 = <>c.<>9__28_12;
			if (obj2 == null)
			{
				UnityAction val7 = delegate
				{
					previewStatsToggledPressed = false;
					inSettings = false;
				};
				<>c.<>9__28_12 = val7;
				obj2 = (object)val7;
			}
			goBackEvent.AddListener((UnityAction)obj2);
			ButtonClickedEvent onClick = ((Component)menu.transform.Find("Group/Back")).gameObject.GetComponent<Button>().onClick;
			object obj3 = <>c.<>9__28_13;
			if (obj3 == null)
			{
				UnityAction val8 = delegate
				{
					previewStatsToggledPressed = false;
					inSettings = false;
				};
				<>c.<>9__28_13 = val8;
				obj3 = (object)val8;
			}
			((UnityEvent)onClick).AddListener((UnityAction)obj3);
		}

		private void ColorSettingsGUI(GameObject menu)
		{
			//IL_009d: Unknown result type (might be due to invalid IL or missing references)
			//IL_010f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0181: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d9: Unknown result type (might be due to invalid IL or missing references)
			//IL_01fa: Expected O, but got Unknown
			//IL_0208: Unknown result type (might be due to invalid IL or missing references)
			//IL_0229: Expected O, but got Unknown
			//IL_0237: Unknown result type (might be due to invalid IL or missing references)
			//IL_0258: Expected O, but got Unknown
			//IL_0266: Unknown result type (might be due to invalid IL or missing references)
			//IL_0287: Expected O, but got Unknown
			//IL_0295: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b6: Expected O, but got Unknown
			//IL_02c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_02e5: Expected O, but got Unknown
			//IL_02f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0314: Expected O, but got Unknown
			//IL_0322: Unknown result type (might be due to invalid IL or missing references)
			//IL_0343: Expected O, but got Unknown
			TextMeshProUGUI val = default(TextMeshProUGUI);
			MenuHandler.CreateText("INFOHOLIC COLOR SETTINGS", menu, ref val, 60, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateText("CUSTOM", menu, ref val, 40, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider redSlider = default(Slider);
			MenuHandler.CreateSlider("RED", menu, 50, 0f, 1f, ColorR, (UnityAction<float>)delegate(float value)
			{
				ColorR = value;
			}, ref redSlider, false, (Color?)new Color(1f, 0f, 0f), (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider greenSlider = default(Slider);
			MenuHandler.CreateSlider("GREEN", menu, 50, 0f, 1f, ColorG, (UnityAction<float>)delegate(float value)
			{
				ColorG = value;
			}, ref greenSlider, false, (Color?)new Color(0f, 1f, 0f), (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			Slider blueSlider = default(Slider);
			MenuHandler.CreateSlider("BLUE", menu, 50, 0f, 1f, ColorB, (UnityAction<float>)delegate(float value)
			{
				ColorB = value;
			}, ref blueSlider, false, (Color?)new Color(0f, 0f, 1f), (Direction)0, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateText("PRESETS", menu, ref val, 40, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#ffffff>WHITE</color>", menu, (UnityAction)delegate
			{
				ColorR = 1f;
				ColorG = 1f;
				ColorB = 1f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#ff0000>RED</color>", menu, (UnityAction)delegate
			{
				ColorR = 1f;
				ColorG = 0f;
				ColorB = 0f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#ff8000>ORANGE</color>", menu, (UnityAction)delegate
			{
				ColorR = 1f;
				ColorG = 0.5f;
				ColorB = 0f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#ffff00>YELLOW</color>", menu, (UnityAction)delegate
			{
				ColorR = 1f;
				ColorG = 1f;
				ColorB = 0f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#00ff00>GREEN</color>", menu, (UnityAction)delegate
			{
				ColorR = 0f;
				ColorG = 1f;
				ColorB = 0f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#0000ff>BLUE</color>", menu, (UnityAction)delegate
			{
				ColorR = 0f;
				ColorG = 0f;
				ColorB = 1f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#8000ff>PURPLE</color>", menu, (UnityAction)delegate
			{
				ColorR = 0.5f;
				ColorG = 0f;
				ColorB = 1f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
			MenuHandler.CreateButton("<color=#ff66b3>PINK</color>", menu, (UnityAction)delegate
			{
				ColorR = 1f;
				ColorG = 0.4f;
				ColorB = 0.7f;
				redSlider.value = ColorR;
				greenSlider.value = ColorG;
				blueSlider.value = ColorB;
			}, 30, true, (Color?)null, (TMP_FontAsset)null, (Material)null, (TextAlignmentOptions?)null);
		}

		private void Update()
		{
			//IL_00da: Unknown result type (might be due to invalid IL or missing references)
			//IL_002f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0034: Unknown result type (might be due to invalid IL or missing references)
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			//IL_0043: Unknown result type (might be due to invalid IL or missing references)
			if (detectKey)
			{
				Array values = Enum.GetValues(typeof(KeyCode));
				foreach (KeyCode item in values)
				{
					if (Input.GetKeyDown(item))
					{
						DetectedKey = item;
						detectKey = false;
					}
				}
				if (button != null)
				{
					((TMP_Text)button.GetComponentInChildren<TextMeshProUGUI>()).text = "PRESS ANY KEY...";
				}
				haveDetectedKey = false;
			}
			else if (!haveDetectedKey && keyText != null && button != null)
			{
				((TMP_Text)keyText).text = "CURRENT TOGGLE KEYBIND: " + Enum.GetName(typeof(KeyCode), DetectedKey);
				((TMP_Text)button.GetComponentInChildren<TextMeshProUGUI>()).text = "SET TOGGLE KEYBIND";
				haveDetectedKey = true;
			}
			CheckIfInGame();
		}

		private void CheckIfInGame()
		{
			if (!GameManager.instance.isPlaying && inGame)
			{
				inGame = false;
			}
		}

		private static string GetConfigKey(string key)
		{
			return "IH_" + key;
		}
	}
}
namespace Infoholic.MonoBehaviours
{
	internal class GameStatusUpdate : MonoBehaviour
	{
		public class DestroyOnUnparent : MonoBehaviour
		{
			private void LateUpdate()
			{
				if ((Object)(object)((Component)this).gameObject.transform.parent == (Object)null)
				{
					Object.Destroy((Object)(object)((Component)this).gameObject);
				}
			}

			private void DestroyStats()
			{
				Object.Destroy((Object)(object)((Component)this).gameObject);
			}
		}

		private static TextMeshProUGUI healthText;

		private static TextMeshProUGUI livesText;

		private static TextMeshProUGUI blockCooldownText;

		private static TextMeshProUGUI blockCountText;

		private static TextMeshProUGUI movementSpeedText;

		private static TextMeshProUGUI jumpHeightText;

		private static TextMeshProUGUI playerSizeText;

		private static TextMeshProUGUI damageText;

		private static TextMeshProUGUI knockbackText;

		private static TextMeshProUGUI lifeStealText;

		private static TextMeshProUGUI bulletGrowthText;

		private static TextMeshProUGUI bulletSlowText;

		private static TextMeshProUGUI attackSpeedText;

		private static TextMeshProUGUI projectileSpeedText;

		private static TextMeshProUGUI projectileSimulationSpeedText;

		private static TextMeshProUGUI reloadTimeText;

		private static TextMeshProUGUI bulletGravityText;

		private static TextMeshProUGUI ammoText;

		private static TextMeshProUGUI bulletsText;

		private static TextMeshProUGUI rangeText;

		private static TextMeshProUGUI reflectsText;

		private static TextMeshProUGUI burstsText;

		private Player player;

		private Gun gun;

		private Block block;

		private Player getLocalPlayer()
		{
			Player player = null;
			PlayerManager.instance.players.ForEach(delegate(Player p)
			{
				if (p.data.view.IsMine && !((Behaviour)((Component)p).GetComponent<PlayerAPI>()).enabled)
				{
					player = p;
				}
			});
			return player;
		}

		private Gun getLocalPlayerGun()
		{
			return player.data.weaponHandler.gun;
		}

		private Block getLocalPlayerBlock()
		{
			return player.data.block;
		}

		private void Start()
		{
			//IL_0025: Unknown result type (might be due to invalid IL or missing references)
			//IL_007e: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0130: Unknown result type (might be due to invalid IL or missing references)
			//IL_017e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0189: Unknown result type (might be due to invalid IL or missing references)
			//IL_01e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0230: Unknown result type (might be due to invalid IL or missing references)
			//IL_023b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0294: Unknown result type (might be due to invalid IL or missing references)
			//IL_02e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_02ed: Unknown result type (might be due to invalid IL or missing references)
			//IL_0346: Unknown result type (might be due to invalid IL or missing references)
			//IL_0394: Unknown result type (might be due to invalid IL or missing references)
			//IL_039f: Unknown result type (might be due to invalid IL or missing references)
			//IL_03f8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0446: Unknown result type (might be due to invalid IL or missing references)
			//IL_0451: Unknown result type (might be due to invalid IL or missing references)
			//IL_04aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_04f8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0503: Unknown result type (might be due to invalid IL or missing references)
			//IL_055c: Unknown result type (might be due to invalid IL or missing references)
			//IL_05aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_05b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_060e: Unknown result type (might be due to invalid IL or missing references)
			//IL_065c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0667: Unknown result type (might be due to invalid IL or missing references)
			//IL_06c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_070e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0719: Unknown result type (might be due to invalid IL or missing references)
			//IL_0772: Unknown result type (might be due to invalid IL or missing references)
			//IL_07c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_07cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0824: Unknown result type (might be due to invalid IL or missing references)
			//IL_0872: Unknown result type (might be due to invalid IL or missing references)
			//IL_087d: Unknown result type (might be due to invalid IL or missing references)
			//IL_08d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_0924: Unknown result type (might be due to invalid IL or missing references)
			//IL_092f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0988: Unknown result type (might be due to invalid IL or missing references)
			//IL_09d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_09e1: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a3a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a88: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a93: Unknown result type (might be due to invalid IL or missing references)
			//IL_0aec: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b3a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b45: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b9e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bec: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bf7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c50: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c9e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ca9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d02: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d50: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d5b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0db4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e02: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e0d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e66: Unknown result type (might be due to invalid IL or missing references)
			//IL_0eb4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ebf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f18: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f66: Unknown result type (might be due to invalid IL or missing references)
			player = getLocalPlayer();
			gun = getLocalPlayerGun();
			block = getLocalPlayerBlock();
			healthText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)healthText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)healthText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)healthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)healthText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)healthText).fontSize = Infoholic.FontSize;
			((Graphic)healthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			livesText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)livesText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)livesText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)livesText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)livesText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)livesText).fontSize = Infoholic.FontSize;
			((Graphic)livesText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			blockCooldownText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)blockCooldownText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)blockCooldownText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)blockCooldownText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)blockCooldownText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)blockCooldownText).fontSize = Infoholic.FontSize;
			((Graphic)blockCooldownText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			blockCountText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)blockCountText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)blockCountText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)blockCountText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)blockCountText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)blockCountText).fontSize = Infoholic.FontSize;
			((Graphic)blockCountText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			damageText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)damageText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)damageText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)damageText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)damageText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)damageText).fontSize = Infoholic.FontSize;
			((Graphic)damageText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			knockbackText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)knockbackText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)knockbackText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)knockbackText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)knockbackText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)knockbackText).fontSize = Infoholic.FontSize;
			((Graphic)knockbackText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			lifeStealText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)lifeStealText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)lifeStealText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)lifeStealText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)lifeStealText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)lifeStealText).fontSize = Infoholic.FontSize;
			((Graphic)lifeStealText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletGrowthText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletGrowthText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletGrowthText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletGrowthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletGrowthText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletGrowthText).fontSize = Infoholic.FontSize;
			((Graphic)bulletGrowthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletSlowText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletSlowText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletSlowText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletSlowText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletSlowText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletSlowText).fontSize = Infoholic.FontSize;
			((Graphic)bulletSlowText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			movementSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)movementSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)movementSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)movementSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)movementSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)movementSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)movementSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			jumpHeightText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)jumpHeightText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)jumpHeightText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)jumpHeightText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)jumpHeightText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)jumpHeightText).fontSize = Infoholic.FontSize;
			((Graphic)jumpHeightText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			playerSizeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)playerSizeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)playerSizeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)playerSizeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)playerSizeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)playerSizeText).fontSize = Infoholic.FontSize;
			((Graphic)playerSizeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			attackSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)attackSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)attackSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)attackSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)attackSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)attackSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)attackSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			projectileSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)projectileSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)projectileSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)projectileSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)projectileSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)projectileSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)projectileSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			projectileSimulationSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)projectileSimulationSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)projectileSimulationSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)projectileSimulationSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)projectileSimulationSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)projectileSimulationSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)projectileSimulationSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			reloadTimeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)reloadTimeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)reloadTimeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)reloadTimeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)reloadTimeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)reloadTimeText).fontSize = Infoholic.FontSize;
			((Graphic)reloadTimeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletGravityText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletGravityText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletGravityText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletGravityText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletGravityText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletGravityText).fontSize = Infoholic.FontSize;
			((Graphic)bulletGravityText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			ammoText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)ammoText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)ammoText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)ammoText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)ammoText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)ammoText).fontSize = Infoholic.FontSize;
			((Graphic)ammoText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletsText).fontSize = Infoholic.FontSize;
			((Graphic)bulletsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			rangeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)rangeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)rangeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)rangeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)rangeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)rangeText).fontSize = Infoholic.FontSize;
			((Graphic)rangeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			reflectsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)reflectsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)reflectsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)reflectsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)reflectsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)reflectsText).fontSize = Infoholic.FontSize;
			((Graphic)reflectsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			burstsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)burstsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)burstsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)burstsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)burstsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)burstsText).fontSize = Infoholic.FontSize;
			((Graphic)burstsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			SetTextPosition();
		}

		public void Update()
		{
			//IL_03f1: Unknown result type (might be due to invalid IL or missing references)
			if (player != null && !((Object)(object)player == (Object)null))
			{
				((TMP_Text)healthText).text = $"HP: {player.data.health:f0} / {player.data.maxHealth:f0}";
				((TMP_Text)damageText).text = $"DMG: {gun.damage * 55f * gun.bulletDamageMultiplier:f0}";
				((TMP_Text)livesText).text = $"Lives: {player.data.stats.respawns + 1:f0}";
				((TMP_Text)blockCooldownText).text = $"Block CD: {block.Cooldown():f2}s";
				((TMP_Text)blockCountText).text = $"Block Count: {block.additionalBlocks + 1:f0}";
				((TMP_Text)movementSpeedText).text = $"Move SPD: {player.data.stats.movementSpeed:f2}";
				((TMP_Text)jumpHeightText).text = $"Jump Height: {player.data.stats.jump:f2}";
				((TMP_Text)playerSizeText).text = $"Player Size: {player.data.stats.sizeMultiplier:f2}";
				((TMP_Text)knockbackText).text = $"Knockback: {gun.knockback:f2}";
				((TMP_Text)lifeStealText).text = $"Life Steal: {player.data.stats.lifeSteal:f2}";
				((TMP_Text)bulletGrowthText).text = $"Damage Grow: {gun.damageAfterDistanceMultiplier:f2}";
				((TMP_Text)bulletSlowText).text = $"Bullet Slow: {gun.slow:f2}";
				((TMP_Text)attackSpeedText).text = $"Attack SPD: {gun.attackSpeed * gun.attackSpeedMultiplier:f2}s";
				((TMP_Text)projectileSpeedText).text = $"Bullet SPD: {gun.projectileSpeed:f2}";
				((TMP_Text)projectileSimulationSpeedText).text = $"Projectile SPD: {gun.projectielSimulatonSpeed:f2}";
				((TMP_Text)reloadTimeText).text = $"Reload Time: {(((Component)gun).GetComponentInChildren<GunAmmo>().reloadTime + ((Component)gun).GetComponentInChildren<GunAmmo>().reloadTimeAdd) * ((Component)gun).GetComponentInChildren<GunAmmo>().reloadTimeMultiplier:f2}s";
				((TMP_Text)bulletGravityText).text = $"Bullet Gravity: {gun.gravity:f2}";
				((TMP_Text)ammoText).text = $"Ammo: {((Component)gun).GetComponentInChildren<GunAmmo>().maxAmmo:f0}";
				((TMP_Text)bulletsText).text = $"Bullets: {gun.numberOfProjectiles:f0}";
				((TMP_Text)rangeText).text = $"Bullet Range: {gun.destroyBulletAfter:f2}";
				((TMP_Text)reflectsText).text = $"Bounces: {gun.reflects:f0}";
				((TMP_Text)burstsText).text = $"Bursts: {gun.bursts:f0}";
				UpdateTextScale();
				if (Input.GetKeyDown(Infoholic.DetectedKey))
				{
					Toggle();
				}
				if (!Infoholic.inGame)
				{
					Object.Destroy((Object)(object)((Component)this).gameObject);
				}
			}
		}

		private void Toggle()
		{
			if (!Infoholic.statsToggledPressed)
			{
				Infoholic.statsToggledPressed = true;
			}
			else
			{
				Infoholic.statsToggledPressed = false;
			}
		}

		private void SetTextPosition()
		{
			//IL_0259: Unknown result type (might be due to invalid IL or missing references)
			//IL_029c: Unknown result type (might be due to invalid IL or missing references)
			//IL_02df: Unknown result type (might be due to invalid IL or missing references)
			//IL_0322: Unknown result type (might be due to invalid IL or missing references)
			//IL_0365: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_03eb: Unknown result type (might be due to invalid IL or missing references)
			//IL_042e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0471: Unknown result type (might be due to invalid IL or missing references)
			//IL_04b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_04f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_053a: Unknown result type (might be due to invalid IL or missing references)
			//IL_057d: Unknown result type (might be due to invalid IL or missing references)
			//IL_05c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0603: Unknown result type (might be due to invalid IL or missing references)
			//IL_0646: Unknown result type (might be due to invalid IL or missing references)
			//IL_0689: Unknown result type (might be due to invalid IL or missing references)
			//IL_06cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_070f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0752: Unknown result type (might be due to invalid IL or missing references)
			//IL_0795: Unknown result type (might be due to invalid IL or missing references)
			//IL_07cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0046: Unknown result type (might be due to invalid IL or missing references)
			//IL_0089: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_010f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0152: Unknown result type (might be due to invalid IL or missing references)
			//IL_0195: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_020f: Unknown result type (might be due to invalid IL or missing references)
			if (Infoholic.SimpleMode)
			{
				((Component)healthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -22f + (float)Infoholic.TextY + Infoholic.FontSpacing * 6f, 0f);
				((Component)damageText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -23f + (float)Infoholic.TextY + Infoholic.FontSpacing * 5f, 0f);
				((Component)blockCooldownText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -24f + (float)Infoholic.TextY + Infoholic.FontSpacing * 4f, 0f);
				((Component)movementSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -25f + (float)Infoholic.TextY + Infoholic.FontSpacing * 3f, 0f);
				((Component)attackSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -26f + (float)Infoholic.TextY + Infoholic.FontSpacing * 2f, 0f);
				((Component)projectileSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -27f + (float)Infoholic.TextY + Infoholic.FontSpacing * 2f, 0f);
				((Component)projectileSimulationSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -28f + (float)Infoholic.TextY + Infoholic.FontSpacing * 1f, 0f);
				((Component)reloadTimeText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -29f + (float)Infoholic.TextY, 0f);
				return;
			}
			((Component)healthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -8f + (float)Infoholic.TextY + Infoholic.FontSpacing * 21f, 0f);
			((Component)damageText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -9f + (float)Infoholic.TextY + Infoholic.FontSpacing * 20f, 0f);
			((Component)livesText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -10f + (float)Infoholic.TextY + Infoholic.FontSpacing * 19f, 0f);
			((Component)blockCooldownText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -11f + (float)Infoholic.TextY + Infoholic.FontSpacing * 18f, 0f);
			((Component)blockCountText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -12f + (float)Infoholic.TextY + Infoholic.FontSpacing * 17f, 0f);
			((Component)knockbackText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -13f + (float)Infoholic.TextY + Infoholic.FontSpacing * 16f, 0f);
			((Component)lifeStealText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -14f + (float)Infoholic.TextY + Infoholic.FontSpacing * 15f, 0f);
			((Component)bulletGrowthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -15f + (float)Infoholic.TextY + Infoholic.FontSpacing * 14f, 0f);
			((Component)bulletSlowText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -16f + (float)Infoholic.TextY + Infoholic.FontSpacing * 13f, 0f);
			((Component)movementSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -17f + (float)Infoholic.TextY + Infoholic.FontSpacing * 12f, 0f);
			((Component)jumpHeightText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -18f + (float)Infoholic.TextY + Infoholic.FontSpacing * 11f, 0f);
			((Component)playerSizeText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -19f + (float)Infoholic.TextY + Infoholic.FontSpacing * 10f, 0f);
			((Component)attackSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -20f + (float)Infoholic.TextY + Infoholic.FontSpacing * 9f, 0f);
			((Component)projectileSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -21f + (float)Infoholic.TextY + Infoholic.FontSpacing * 8f, 0f);
			((Component)projectileSimulationSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -22f + (float)Infoholic.TextY + Infoholic.FontSpacing * 7f, 0f);
			((Component)reloadTimeText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -23f + (float)Infoholic.TextY + Infoholic.FontSpacing * 6f, 0f);
			((Component)bulletGravityText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -24f + (float)Infoholic.TextY + Infoholic.FontSpacing * 5f, 0f);
			((Component)ammoText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -25f + (float)Infoholic.TextY + Infoholic.FontSpacing * 4f, 0f);
			((Component)bulletsText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -26f + (float)Infoholic.TextY + Infoholic.FontSpacing * 3f, 0f);
			((Component)rangeText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -27f + (float)Infoholic.TextY + Infoholic.FontSpacing * 2f, 0f);
			((Component)reflectsText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -28f + (float)Infoholic.TextY + Infoholic.FontSpacing * 1f, 0f);
			((Component)burstsText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -29f + (float)Infoholic.TextY, 0f);
		}

		private void UpdateTextScale()
		{
			//IL_03df: Unknown result type (might be due to invalid IL or missing references)
			//IL_0408: Unknown result type (might be due to invalid IL or missing references)
			//IL_0431: Unknown result type (might be due to invalid IL or missing references)
			//IL_045a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0483: Unknown result type (might be due to invalid IL or missing references)
			//IL_04ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_04d5: Unknown result type (might be due to invalid IL or missing references)
			//IL_04fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0527: Unknown result type (might be due to invalid IL or missing references)
			//IL_0550: Unknown result type (might be due to invalid IL or missing references)
			//IL_0579: Unknown result type (might be due to invalid IL or missing references)
			//IL_05a2: Unknown result type (might be due to invalid IL or missing references)
			//IL_05cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_05f4: Unknown result type (might be due to invalid IL or missing references)
			//IL_061d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0646: Unknown result type (might be due to invalid IL or missing references)
			//IL_066f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0698: Unknown result type (might be due to invalid IL or missing references)
			//IL_06c1: Unknown result type (might be due to invalid IL or missing references)
			//IL_06ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_0713: Unknown result type (might be due to invalid IL or missing references)
			//IL_073c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0052: Unknown result type (might be due to invalid IL or missing references)
			//IL_007b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f6: Unknown result type (might be due to invalid IL or missing references)
			//IL_011f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0148: Unknown result type (might be due to invalid IL or missing references)
			//IL_0171: Unknown result type (might be due to invalid IL or missing references)
			//IL_019a: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c3: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_0215: Unknown result type (might be due to invalid IL or missing references)
			//IL_023e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0267: Unknown result type (might be due to invalid IL or missing references)
			//IL_0290: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_02e2: Unknown result type (might be due to invalid IL or missing references)
			//IL_030b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0334: Unknown result type (might be due to invalid IL or missing references)
			//IL_035d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0386: Unknown result type (might be due to invalid IL or missing references)
			//IL_03af: Unknown result type (might be due to invalid IL or missing references)
			if (!Infoholic.statsToggledPressed)
			{
				Infoholic.statsToggled = 0.4f;
			}
			else
			{
				Infoholic.statsToggled = 0f;
			}
			if (Infoholic.SimpleMode)
			{
				((Component)healthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)damageText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)livesText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)blockCooldownText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)blockCountText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)knockbackText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)lifeStealText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)bulletGrowthText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)bulletSlowText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)movementSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)jumpHeightText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)playerSizeText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)attackSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)projectileSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)projectileSimulationSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)reloadTimeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)bulletGravityText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)ammoText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)bulletsText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)rangeText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)reflectsText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
				((Component)burstsText).gameObject.transform.localScale = new Vector3(0f, 0f, 0f);
			}
			else
			{
				((Component)healthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)damageText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)livesText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)blockCooldownText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)blockCountText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)knockbackText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)lifeStealText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)bulletGrowthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)bulletSlowText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)movementSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)jumpHeightText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)playerSizeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)attackSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)projectileSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)projectileSimulationSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)reloadTimeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)bulletGravityText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)ammoText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)bulletsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)rangeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)reflectsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
				((Component)burstsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			}
		}
	}
	internal class SettingsPreview : MonoBehaviour
	{
		public class DestroyOnUnparent : MonoBehaviour
		{
			private void LateUpdate()
			{
				if ((Object)(object)((Component)this).gameObject.transform.parent == (Object)null)
				{
					Object.Destroy((Object)(object)((Component)this).gameObject);
				}
			}
		}

		private static TextMeshProUGUI healthText;

		private static TextMeshProUGUI livesText;

		private static TextMeshProUGUI blockCooldownText;

		private static TextMeshProUGUI blockCountText;

		private static TextMeshProUGUI movementSpeedText;

		private static TextMeshProUGUI jumpHeightText;

		private static TextMeshProUGUI playerSizeText;

		private static TextMeshProUGUI damageText;

		private static TextMeshProUGUI knockbackText;

		private static TextMeshProUGUI lifeStealText;

		private static TextMeshProUGUI bulletGrowthText;

		private static TextMeshProUGUI bulletSlowText;

		private static TextMeshProUGUI attackSpeedText;

		private static TextMeshProUGUI projectileSpeedText;

		private static TextMeshProUGUI projectileSimulationSpeedText;

		private static TextMeshProUGUI reloadTimeText;

		private static TextMeshProUGUI bulletGravityText;

		private static TextMeshProUGUI ammoText;

		private static TextMeshProUGUI bulletsText;

		private static TextMeshProUGUI rangeText;

		private static TextMeshProUGUI reflectsText;

		private static TextMeshProUGUI burstsText;

		private void Start()
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_005a: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_014a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0155: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_01fc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0207: Unknown result type (might be due to invalid IL or missing references)
			//IL_0260: Unknown result type (might be due to invalid IL or missing references)
			//IL_02ae: Unknown result type (might be due to invalid IL or missing references)
			//IL_02b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0312: Unknown result type (might be due to invalid IL or missing references)
			//IL_0360: Unknown result type (might be due to invalid IL or missing references)
			//IL_036b: Unknown result type (might be due to invalid IL or missing references)
			//IL_03c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0412: Unknown result type (might be due to invalid IL or missing references)
			//IL_041d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0476: Unknown result type (might be due to invalid IL or missing references)
			//IL_04c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_04cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0528: Unknown result type (might be due to invalid IL or missing references)
			//IL_0576: Unknown result type (might be due to invalid IL or missing references)
			//IL_0581: Unknown result type (might be due to invalid IL or missing references)
			//IL_05da: Unknown result type (might be due to invalid IL or missing references)
			//IL_0628: Unknown result type (might be due to invalid IL or missing references)
			//IL_0633: Unknown result type (might be due to invalid IL or missing references)
			//IL_068c: Unknown result type (might be due to invalid IL or missing references)
			//IL_06da: Unknown result type (might be due to invalid IL or missing references)
			//IL_06e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_073e: Unknown result type (might be due to invalid IL or missing references)
			//IL_078c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0797: Unknown result type (might be due to invalid IL or missing references)
			//IL_07f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_083e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0849: Unknown result type (might be due to invalid IL or missing references)
			//IL_08a2: Unknown result type (might be due to invalid IL or missing references)
			//IL_08f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_08fb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0954: Unknown result type (might be due to invalid IL or missing references)
			//IL_09a2: Unknown result type (might be due to invalid IL or missing references)
			//IL_09ad: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a06: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a54: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a5f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ab8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b06: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b11: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b6a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bb8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0bc3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c1c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c6a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c75: Unknown result type (might be due to invalid IL or missing references)
			//IL_0cce: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d1c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d27: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d80: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dce: Unknown result type (might be due to invalid IL or missing references)
			//IL_0dd9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e32: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e80: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e8b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ee4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0f32: Unknown result type (might be due to invalid IL or missing references)
			healthText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)healthText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)healthText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)healthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)healthText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)healthText).fontSize = Infoholic.FontSize;
			((Graphic)healthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			livesText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)livesText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)livesText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)livesText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)livesText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((Graphic)livesText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			blockCooldownText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)blockCooldownText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)blockCooldownText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)blockCooldownText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)blockCooldownText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)blockCooldownText).fontSize = Infoholic.FontSize;
			((Graphic)blockCooldownText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			blockCountText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)blockCountText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)blockCountText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)blockCountText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)blockCountText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)blockCountText).fontSize = Infoholic.FontSize;
			((Graphic)blockCountText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			damageText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)damageText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)damageText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)damageText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)damageText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)damageText).fontSize = Infoholic.FontSize;
			((Graphic)damageText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			knockbackText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)knockbackText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)knockbackText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)knockbackText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)knockbackText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)knockbackText).fontSize = Infoholic.FontSize;
			((Graphic)knockbackText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			lifeStealText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)lifeStealText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)lifeStealText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)lifeStealText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)lifeStealText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)lifeStealText).fontSize = Infoholic.FontSize;
			((Graphic)lifeStealText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletGrowthText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletGrowthText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletGrowthText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletGrowthText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletGrowthText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletGrowthText).fontSize = Infoholic.FontSize;
			((Graphic)bulletGrowthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletSlowText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletSlowText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletSlowText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletSlowText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletSlowText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletSlowText).fontSize = Infoholic.FontSize;
			((Graphic)bulletSlowText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			movementSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)movementSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)movementSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)movementSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)movementSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)movementSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)movementSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			jumpHeightText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)jumpHeightText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)jumpHeightText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)jumpHeightText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)jumpHeightText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)jumpHeightText).fontSize = Infoholic.FontSize;
			((Graphic)jumpHeightText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			playerSizeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)playerSizeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)playerSizeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)playerSizeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)playerSizeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)playerSizeText).fontSize = Infoholic.FontSize;
			((Graphic)playerSizeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			attackSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)attackSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)attackSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)attackSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)attackSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)attackSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)attackSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			projectileSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)projectileSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)projectileSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)projectileSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)projectileSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)projectileSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)projectileSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			projectileSimulationSpeedText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)projectileSimulationSpeedText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)projectileSimulationSpeedText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)projectileSimulationSpeedText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)projectileSimulationSpeedText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)projectileSimulationSpeedText).fontSize = Infoholic.FontSize;
			((Graphic)projectileSimulationSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			reloadTimeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)reloadTimeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)reloadTimeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)reloadTimeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)reloadTimeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)reloadTimeText).fontSize = Infoholic.FontSize;
			((Graphic)reloadTimeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletGravityText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletGravityText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletGravityText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletGravityText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletGravityText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletGravityText).fontSize = Infoholic.FontSize;
			((Graphic)bulletGravityText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			ammoText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)ammoText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)ammoText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)ammoText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)ammoText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)ammoText).fontSize = Infoholic.FontSize;
			((Graphic)ammoText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			bulletsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)bulletsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)bulletsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)bulletsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)bulletsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)bulletsText).fontSize = Infoholic.FontSize;
			((Graphic)bulletsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			rangeText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)rangeText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)rangeText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)rangeText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)rangeText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)rangeText).fontSize = Infoholic.FontSize;
			((Graphic)rangeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			reflectsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)reflectsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)reflectsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)reflectsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)reflectsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)reflectsText).fontSize = Infoholic.FontSize;
			((Graphic)reflectsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			burstsText = new GameObject().AddComponent<TextMeshProUGUI>();
			((Component)burstsText).gameObject.AddComponent<DestroyOnUnparent>();
			((TMP_Text)burstsText).transform.SetParent(((Component)this).gameObject.transform, false);
			((Component)burstsText).gameObject.transform.localScale = new Vector3(Infoholic.statsToggled, Infoholic.statsToggled, Infoholic.statsToggled);
			((Component)burstsText).gameObject.AddComponent<Canvas>().sortingLayerName = "MostFront";
			((TMP_Text)burstsText).fontSize = Infoholic.FontSize;
			((Graphic)burstsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
			SetTextPosition();
		}

		public void Update()
		{
			//IL_05f5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0047: Unknown result type (might be due to invalid IL or missing references)
			//IL_008b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0113: Unknown result type (might be due to invalid IL or missing references)
			//IL_0157: Unknown result type (might be due to invalid IL or missing references)
			//IL_019b: Unknown result type (might be due to invalid IL or missing references)
			//IL_01df: Unknown result type (might be due to invalid IL or missing references)
			//IL_0223: Unknown result type (might be due to invalid IL or missing references)
			//IL_0267: Unknown result type (might be due to invalid IL or missing references)
			//IL_02ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_02ef: Unknown result type (might be due to invalid IL or missing references)
			//IL_0333: Unknown result type (might be due to invalid IL or missing references)
			//IL_0377: Unknown result type (might be due to invalid IL or missing references)
			//IL_03bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_03ff: Unknown result type (might be due to invalid IL or missing references)
			//IL_0443: Unknown result type (might be due to invalid IL or missing references)
			//IL_0487: Unknown result type (might be due to invalid IL or missing references)
			//IL_04cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_050f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0553: Unknown result type (might be due to invalid IL or missing references)
			//IL_0597: Unknown result type (might be due to invalid IL or missing references)
			//IL_05db: Unknown result type (might be due to invalid IL or missing references)
			if (Infoholic.inSettings)
			{
				((TMP_Text)healthText).text = "HP: 100 / 100";
				((TMP_Text)healthText).fontSize = Infoholic.FontSize;
				((Graphic)healthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)damageText).text = "DMG: 55";
				((TMP_Text)damageText).fontSize = Infoholic.FontSize;
				((Graphic)damageText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)livesText).text = "Lives: 1";
				((TMP_Text)livesText).fontSize = Infoholic.FontSize;
				((Graphic)livesText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)blockCooldownText).text = "Block CD: 4.00s";
				((TMP_Text)blockCooldownText).fontSize = Infoholic.FontSize;
				((Graphic)blockCooldownText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)blockCountText).text = "Block Count: 1";
				((TMP_Text)blockCountText).fontSize = Infoholic.FontSize;
				((Graphic)blockCountText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)movementSpeedText).text = "Move SPD: 1.00";
				((TMP_Text)movementSpeedText).fontSize = Infoholic.FontSize;
				((Graphic)movementSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)jumpHeightText).text = "Jump Height: 1.00";
				((TMP_Text)jumpHeightText).fontSize = Infoholic.FontSize;
				((Graphic)jumpHeightText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)playerSizeText).text = "Player Size: 1.00";
				((TMP_Text)playerSizeText).fontSize = Infoholic.FontSize;
				((Graphic)playerSizeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)knockbackText).text = "Knockback: 1.00";
				((TMP_Text)knockbackText).fontSize = Infoholic.FontSize;
				((Graphic)knockbackText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)lifeStealText).text = "Life Steal: 0.00";
				((TMP_Text)lifeStealText).fontSize = Infoholic.FontSize;
				((Graphic)lifeStealText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)bulletGrowthText).text = "Damage Grow: 0.00";
				((TMP_Text)bulletGrowthText).fontSize = Infoholic.FontSize;
				((Graphic)bulletGrowthText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)bulletSlowText).text = "Bullet Slow: 0.00";
				((TMP_Text)bulletSlowText).fontSize = Infoholic.FontSize;
				((Graphic)bulletSlowText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)attackSpeedText).text = "Attack SPD: 0.30s";
				((TMP_Text)attackSpeedText).fontSize = Infoholic.FontSize;
				((Graphic)attackSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)projectileSpeedText).text = "Bullet SPD: 1.00";
				((TMP_Text)projectileSpeedText).fontSize = Infoholic.FontSize;
				((Graphic)projectileSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)projectileSimulationSpeedText).text = "Projectile SPD: 1.00";
				((TMP_Text)projectileSimulationSpeedText).fontSize = Infoholic.FontSize;
				((Graphic)projectileSimulationSpeedText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)reloadTimeText).text = "Reload Time: 2.00s";
				((TMP_Text)reloadTimeText).fontSize = Infoholic.FontSize;
				((Graphic)reloadTimeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)bulletGravityText).text = "Bullet Gravity: 1.00";
				((TMP_Text)bulletGravityText).fontSize = Infoholic.FontSize;
				((Graphic)bulletGravityText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)ammoText).text = "Ammo: 3";
				((TMP_Text)ammoText).fontSize = Infoholic.FontSize;
				((Graphic)ammoText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)bulletsText).text = "Bullets: 1";
				((TMP_Text)bulletsText).fontSize = Infoholic.FontSize;
				((Graphic)bulletsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)rangeText).text = "Bullet Range: 0";
				((TMP_Text)rangeText).fontSize = Infoholic.FontSize;
				((Graphic)rangeText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)reflectsText).text = "Bounces: 0";
				((TMP_Text)reflectsText).fontSize = Infoholic.FontSize;
				((Graphic)reflectsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				((TMP_Text)burstsText).text = "Bursts: 0";
				((TMP_Text)burstsText).fontSize = Infoholic.FontSize;
				((Graphic)burstsText).color = new Color(Infoholic.ColorR, Infoholic.ColorG, Infoholic.ColorB, Infoholic.Opacity);
				SetTextPosition();
				UpdateTextScale();
			}
			if (Input.GetKeyDown(Infoholic.DetectedKey))
			{
				Toggle();
			}
			if (Infoholic.inGame)
			{
				Object.Destroy((Object)(object)((Component)this).gameObject);
			}
			if (!Infoholic.SettingsEnableMod)
			{
				Object.Destroy((Object)(object)((Component)this).gameObject);
			}
			if (!Infoholic.inSettings)
			{
				Object.Destroy((Object)(object)((Component)this).gameObject);
			}
		}

		private void Toggle()
		{
			if (!Infoholic.previewStatsToggledPressed)
			{
				Infoholic.previewStatsToggledPressed = true;
			}
			else
			{
				Infoholic.previewStatsToggledPressed = false;
			}
		}

		private void SetTextPosition()
		{
			//IL_0259: Unknown result type (might be due to invalid IL or missing references)
			//IL_029c: Unknown result type (might be due to invalid IL or missing references)
			//IL_02df: Unknown result type (might be due to invalid IL or missing references)
			//IL_0322: Unknown result type (might be due to invalid IL or missing references)
			//IL_0365: Unknown result type (might be due to invalid IL or missing references)
			//IL_03a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_03eb: Unknown result type (might be due to invalid IL or missing references)
			//IL_042e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0471: Unknown result type (might be due to invalid IL or missing references)
			//IL_04b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_04f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_053a: Unknown result type (might be due to invalid IL or missing references)
			//IL_057d: Unknown result type (might be due to invalid IL or missing references)
			//IL_05c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0603: Unknown result type (might be due to invalid IL or missing references)
			//IL_0646: Unknown result type (might be due to invalid IL or missing references)
			//IL_0689: Unknown result type (might be due to invalid IL or missing references)
			//IL_06cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_070f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0752: Unknown result type (might be due to invalid IL or missing references)
			//IL_0795: Unknown result type (might be due to invalid IL or missing references)
			//IL_07cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0046: Unknown result type (might be due to invalid IL or missing references)
			//IL_0089: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cc: Unknown result type (might be due to invalid IL or missing references)
			//IL_010f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0152: Unknown result type (might be due to invalid IL or missing references)
			//IL_0195: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_020f: Unknown result type (might be due to invalid IL or missing references)
			if (Infoholic.SimpleMode)
			{
				((Component)healthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -22f + (float)Infoholic.TextY + Infoholic.FontSpacing * 6f, 0f);
				((Component)damageText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -23f + (float)Infoholic.TextY + Infoholic.FontSpacing * 5f, 0f);
				((Component)blockCooldownText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -24f + (float)Infoholic.TextY + Infoholic.FontSpacing * 4f, 0f);
				((Component)movementSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -25f + (float)Infoholic.TextY + Infoholic.FontSpacing * 3f, 0f);
				((Component)attackSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -26f + (float)Infoholic.TextY + Infoholic.FontSpacing * 2f, 0f);
				((Component)projectileSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -27f + (float)Infoholic.TextY + Infoholic.FontSpacing * 2f, 0f);
				((Component)projectileSimulationSpeedText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -28f + (float)Infoholic.TextY + Infoholic.FontSpacing * 1f, 0f);
				((Component)reloadTimeText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -29f + (float)Infoholic.TextY, 0f);
				return;
			}
			((Component)healthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -8f + (float)Infoholic.TextY + Infoholic.FontSpacing * 21f, 0f);
			((Component)damageText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -9f + (float)Infoholic.TextY + Infoholic.FontSpacing * 20f, 0f);
			((Component)livesText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -10f + (float)Infoholic.TextY + Infoholic.FontSpacing * 19f, 0f);
			((Component)blockCooldownText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -11f + (float)Infoholic.TextY + Infoholic.FontSpacing * 18f, 0f);
			((Component)blockCountText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -12f + (float)Infoholic.TextY + Infoholic.FontSpacing * 17f, 0f);
			((Component)knockbackText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -13f + (float)Infoholic.TextY + Infoholic.FontSpacing * 16f, 0f);
			((Component)lifeStealText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -14f + (float)Infoholic.TextY + Infoholic.FontSpacing * 15f, 0f);
			((Component)bulletGrowthText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -15f + (float)Infoholic.TextY + Infoholic.FontSpacing * 14f, 0f);
			((Component)bulletSlowText).gameObject.transform.position = new Vector3(4.6f + (float)Infoholic.TextX, -16f + (float)Infoholic.TextY + Infoholic.FontSpacing * 13