Decompiled source of Precipice v0.0.5

Precipice.dll

Decompiled 16 hours ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using Microsoft.CodeAnalysis;
using RWF;
using RarityBundle;
using TMPro;
using UnboundLib;
using UnboundLib.GameModes;
using UnboundLib.Utils;
using UnboundLib.Utils.UI;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(/*Could not decode attribute arguments.*/)]
[assembly: TargetFramework(".NETFramework,Version=v4.7.1", FrameworkDisplayName = ".NET Framework 4.7.1")]
[assembly: SecurityPermission(8, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(/*Could not decode attribute arguments.*/)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
[BepInPlugin("Systems.R00t.Precipice", "Precipice", "0.0.5")]
[BepInProcess("Rounds.exe")]
public class ModPack : BaseUnityPlugin
{
	private const string ModId = "Systems.R00t.Precipice";

	private const string ModName = "Precipice";

	public const string Version = "0.0.5";

	public static Dictionary<string, Rarity> cards;

	private void Awake()
	{
		//IL_0020: Unknown result type (might be due to invalid IL or missing references)
		GameModeManager.AddHook("GameStart", (Func<IGameModeHandler, IEnumerator>)([CompilerGenerated] (IGameModeHandler gm) => ToggleCards()), 800);
		new Harmony("Systems.R00t.Precipice").PatchAll();
	}

	private void Start()
	{
		//IL_000a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0014: Expected O, but got Unknown
		ExtensionMethods.ExecuteAfterFrames((MonoBehaviour)(object)this, 20, (Action)([CompilerGenerated] () =>
		{
			//IL_002f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0057: Unknown result type (might be due to invalid IL or missing references)
			//IL_0067: Unknown result type (might be due to invalid IL or missing references)
			//IL_048b: Unknown result type (might be due to invalid IL or missing references)
			//IL_049b: Unknown result type (might be due to invalid IL or missing references)
			//IL_04ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_04df: Unknown result type (might be due to invalid IL or missing references)
			//IL_054f: Unknown result type (might be due to invalid IL or missing references)
			//IL_056b: Unknown result type (might be due to invalid IL or missing references)
			//IL_060b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0657: Unknown result type (might be due to invalid IL or missing references)
			//IL_0697: Unknown result type (might be due to invalid IL or missing references)
			//IL_074f: Unknown result type (might be due to invalid IL or missing references)
			//IL_078f: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ff: Unknown result type (might be due to invalid IL or missing references)
			//IL_087b: Unknown result type (might be due to invalid IL or missing references)
			//IL_08df: Unknown result type (might be due to invalid IL or missing references)
			//IL_0907: 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_093f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0997: Unknown result type (might be due to invalid IL or missing references)
			//IL_09a7: Unknown result type (might be due to invalid IL or missing references)
			//IL_09b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0adf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ae4: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b1d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b22: Unknown result type (might be due to invalid IL or missing references)
			Dictionary<string, Rarity> obj = new Dictionary<string, Rarity>();
			obj.Add("__BSC__Yeetus", (Rarity)(-1));
			obj.Add("__BSC__Random confringo", (Rarity)(-1));
			obj.Add("__BSC__Copycat", (Rarity)(-1));
			obj.Add("__BSC__Snap effect", RarityBundle.Scarce);
			obj.Add("__BSC__Get over here", (Rarity)(-1));
			obj.Add("__BSC__Quadratics", (Rarity)(-1));
			obj.Add("__BSC__Pong", RarityBundle.Exotic);
			obj.Add("__CC__Distill", RarityBundle.Epic);
			obj.Add("__CC__Drift Mines", (Rarity)(-1));
			obj.Add("__CC__An actual gun", (Rarity)(-1));
			obj.Add("__CC__Shock Blast", (Rarity)(-1));
			obj.Add("__CPC__Delayed Sentry", (Rarity)(-1));
			obj.Add("__CPC__Sentry Gun", (Rarity)(-1));
			obj.Add("__CPC__P.A.G.", (Rarity)(-1));
			obj.Add("__CPC__Reverse Thrusters", (Rarity)(-1));
			obj.Add("__CPC__Chainmail Armor", (Rarity)(-1));
			obj.Add("__CPC__Diamond Armor", (Rarity)(-1));
			obj.Add("__CPC__Gold Armor", (Rarity)(-1));
			obj.Add("__CPC__Iron Armor", (Rarity)(-1));
			obj.Add("__CPC__Leather Armor", (Rarity)(-1));
			obj.Add("__CPC__Netherite Armor", (Rarity)(-1));
			obj.Add("__CPC__Diamond Axe", (Rarity)(-1));
			obj.Add("__CPC__Gold Axe", (Rarity)(-1));
			obj.Add("__CPC__Iron Axe", (Rarity)(-1));
			obj.Add("__CPC__Netherite Axe", (Rarity)(-1));
			obj.Add("__CPC__Stone Axe", (Rarity)(-1));
			obj.Add("__CPC__Wooden Axe", (Rarity)(-1));
			obj.Add("__CPC__Crafting Table", (Rarity)(-1));
			obj.Add("__CPC__Diamond Hoe", (Rarity)(-1));
			obj.Add("__CPC__Gold Hoe", (Rarity)(-1));
			obj.Add("__CPC__Iron Hoe", (Rarity)(-1));
			obj.Add("__CPC__Netherite Hoe", (Rarity)(-1));
			obj.Add("__CPC__Stone Hoe", (Rarity)(-1));
			obj.Add("__CPC__Wooden Hoe", (Rarity)(-1));
			obj.Add("__CPC__Diamond Sword", (Rarity)(-1));
			obj.Add("__CPC__Gold Sword", (Rarity)(-1));
			obj.Add("__CPC__Iron Sword", (Rarity)(-1));
			obj.Add("__CPC__Netherite Sword", (Rarity)(-1));
			obj.Add("__CPC__Stone Sword", (Rarity)(-1));
			obj.Add("__CPC__Wooden Sword", (Rarity)(-1));
			obj.Add("__Curse__Air Resistance", (Rarity)(-1));
			obj.Add("__Curse__Ammo Regulations", (Rarity)(-1));
			obj.Add("__Curse__Anime Physics", (Rarity)(-1));
			obj.Add("__Curse__Counterfeit Ammo", (Rarity)(-1));
			obj.Add("__Curse__Crooked Legs", (Rarity)(-1));
			obj.Add("__Curse__Damnation", (Rarity)(-1));
			obj.Add("__Curse__Defective Trigger", (Rarity)(-1));
			obj.Add("__Curse__Driven to Earth", (Rarity)(-1));
			obj.Add("__Curse__Fragile Body", (Rarity)(-1));
			obj.Add("__Curse__Heavy Shields", (Rarity)(-1));
			obj.Add("__Curse__Lead Bullets", (Rarity)(-1));
			obj.Add("__Curse__Misaligned Sights", (Rarity)(-1));
			obj.Add("__Curse__Misfire", (Rarity)(-1));
			obj.Add("__Curse__Needle Bullets", (Rarity)(-1));
			obj.Add("__Curse__Pasta Shells", (Rarity)(-1));
			obj.Add("__Curse__Take A Number", (Rarity)(-1));
			obj.Add("__Curse__Uncomfortable Defense", (Rarity)(-1));
			obj.Add("__Curse__Wild Shots", (Rarity)(-1));
			obj.Add("__Curse__Tired Body", (Rarity)(-1));
			obj.Add("__Curse__Group Winning", (Rarity)(-1));
			obj.Add("__Curse__Seeping Corruption", (Rarity)(-1));
			obj.Add("__Curse__Bleeding Wounds", (Rarity)(-1));
			obj.Add("__Curse__Eroding Darkness", (Rarity)(-1));
			obj.Add("__Curse__Fumbled Mags", (Rarity)(-1));
			obj.Add("__Curse__Momentary Confusion", (Rarity)(-1));
			obj.Add("__Curse__Poisonous Trauma", (Rarity)(-1));
			obj.Add("__Curse__Shaky Bullets", (Rarity)(-1));
			obj.Add("__Curse__Weak Mind", (Rarity)(-1));
			obj.Add("__Curse__Severed Fate", (Rarity)(-1));
			obj.Add("__Curse__Slow Reflexes", (Rarity)(-1));
			obj.Add("__Curse__Missed Opportunities", (Rarity)(-1));
			obj.Add("__Curse__Greed", (Rarity)(-1));
			obj.Add("__GearUP__Chompy Bullet", (Rarity)(-1));
			obj.Add("__GearUP__Guardians Charm", (Rarity)(-1));
			obj.Add("__GearUP__Hollow Life", (Rarity)(-1));
			obj.Add("__GearUP__Shield Battery", (Rarity)(-1));
			obj.Add("__GearUP__Size Normalizer", (Rarity)(-1));
			obj.Add("__GearUP__Tactical Scanner", (Rarity)(-1));
			obj.Add("__GearUP__Tiberium Bullet", (Rarity)(-1));
			obj.Add("__GearUP__Glyph CAD Module", (Rarity)(-1));
			obj.Add("__GearUP__Divination Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Geometric Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Influence Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Magick Fragments", (Rarity)(-1));
			obj.Add("__GearUP__Potency Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Replication Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Time Glyph", (Rarity)(-1));
			obj.Add("__GearUP__Gun Parts", (Rarity)(-1));
			obj.Add("__GearUP__Medical Parts", (Rarity)(-1));
			obj.Add("__GearUP__Arcane Sun", (Rarity)(-1));
			obj.Add("__GearUP__Lifeforce Duorbity", (Rarity)(-1));
			obj.Add("__GearUP__Lifeforce Blast! ", (Rarity)(-1));
			obj.Add("__GearUP__Orb-literation!", (Rarity)(-1));
			obj.Add("__GearUP__Portal Magick", (Rarity)(-1));
			obj.Add("__GearUP__Rolling Borbwark", (Rarity)(-1));
			obj.Add("__GearUP__Arc of Bullets", RarityBundle.Exotic);
			obj.Add("__GearUP__Parallel Bullets", RarityBundle.Exotic);
			obj.Add("__Cats__Lightsaber", RarityBundle.Epic);
			obj.Add("__PFFC__Jester", (Rarity)(-1));
			obj.Add("__PFFC__King Of Fools", (Rarity)(-1));
			obj.Add("__PFFC__Jokes on you!", (Rarity)(-1));
			obj.Add("__PFFC__Way of the Jester", RarityBundle.Epic);
			obj.Add("__PFFC__Wildcard", (Rarity)(-1));
			obj.Add("__PFFC__Juggernaut", (Rarity)(-1));
			obj.Add("__PFFC__Armor Plating", (Rarity)(-1));
			obj.Add("__PFFC__Conditioning", (Rarity)(-1));
			obj.Add("__PFFC__Size Matters", (Rarity)(-1));
			obj.Add("__PFFC__Steroids", (Rarity)(-1));
			obj.Add("__PFFC__Marksman", (Rarity)(-1));
			obj.Add("__PFFC__Armor-Piercing Rounds", (Rarity)(-1));
			obj.Add("__PFFC__Barret .50 Cal", RarityBundle.Mythical);
			obj.Add("__PFFC__Sniper Rifle Extended Mag", (Rarity)(-1));
			obj.Add("__SM__Magic Missile", RarityBundle.Legendary);
			obj.Add("__RSC__Astronomer", (Rarity)(-1));
			obj.Add("__RSC__Bigger Barriers", (Rarity)(-1));
			obj.Add("__RSC__Dark Harvest", (Rarity)(-1));
			obj.Add("__RSC__Domain Extension", (Rarity)(-1));
			obj.Add("__RSC__Faster Barriers", (Rarity)(-1));
			obj.Add("__RSC__Gravity Well", (Rarity)(-1));
			obj.Add("__RSC__Harvest Sickle", (Rarity)(-1));
			obj.Add("__RSC__Harvester", (Rarity)(-1));
			obj.Add("__RSC__Hitscan", (Rarity)(-1));
			obj.Add("__RSC__Sharper Scythes", (Rarity)(-1));
			obj.Add("__RSC__Twin Scythes", (Rarity)(-1));
			obj.Add("Barrage", (Rarity)(-1));
			obj.Add("Big Bullet", RarityBundle.Trinket);
			obj.Add("BombsAway", (Rarity)(-1));
			obj.Add("Bouncy", (Rarity)(-1));
			obj.Add("Buckshot", (Rarity)(-1));
			obj.Add("Burst", (Rarity)(-1));
			obj.Add("Careful planning", (Rarity)(-1));
			obj.Add("Chase", RarityBundle.Scarce);
			obj.Add("ChillingPresence", (Rarity)(-1));
			obj.Add("Cold bullets", (Rarity)(-1));
			obj.Add("Combine", (Rarity)(-1));
			obj.Add("Dazzle", (Rarity)(-1));
			obj.Add("Decay", RarityBundle.Exotic);
			obj.Add("Defender", (Rarity)(-1));
			obj.Add("Demonic pact", (Rarity)(-1));
			obj.Add("DrillAmmo", (Rarity)(-1));
			obj.Add("Echo", (Rarity)(-1));
			obj.Add("EMP", (Rarity)(-1));
			obj.Add("Empower", (Rarity)(-1));
			obj.Add("Explosive bullet", (Rarity)(-1));
			obj.Add("Fast ball", (Rarity)(-1));
			obj.Add("Fast forward", (Rarity)(-1));
			obj.Add("Frost slam", (Rarity)(-1));
			obj.Add("Glasscannon", (Rarity)(-1));
			obj.Add("Grow", (Rarity)(-1));
			obj.Add("Healing field", (Rarity)(-1));
			obj.Add("Homing", (Rarity)(-1));
			obj.Add("HUGE", RarityBundle.Scarce);
			obj.Add("Implode", (Rarity)(-1));
			obj.Add("Leach", (Rarity)(-1));
			obj.Add("Lifestealer", (Rarity)(-1));
			obj.Add("Mayhem", (Rarity)(-1));
			obj.Add("Overpower", RarityBundle.Rare);
			obj.Add("Parasite", (Rarity)(-1));
			obj.Add("Quick Reload", (Rarity)(-1));
			obj.Add("Quick Shot", (Rarity)(-1));
			obj.Add("RadarShot", (Rarity)(-1));
			obj.Add("Radiance", (Rarity)(-1));
			obj.Add("Remote", (Rarity)(-1));
			obj.Add("Riccochet", (Rarity)(-1));
			obj.Add("Saw", (Rarity)(-1));
			obj.Add("Scavenger", RarityBundle.Rare);
			obj.Add("Shield Charge", (Rarity)(-1));
			obj.Add("Shields up", (Rarity)(-1));
			obj.Add("Shockwave", (Rarity)(-1));
			obj.Add("Silence", (Rarity)(-1));
			obj.Add("Sneaky bullets", (Rarity)(-1));
			obj.Add("SPRAY", (Rarity)(-1));
			obj.Add("Static field", (Rarity)(-1));
			obj.Add("Steady shot", (Rarity)(-1));
			obj.Add("Supernova", (Rarity)(-1));
			obj.Add("Tank", RarityBundle.Uncommon);
			obj.Add("TargetBounce", (Rarity)(-1));
			obj.Add("TasteOfBlood", (Rarity)(-1));
			obj.Add("Teleport", (Rarity)(-1));
			obj.Add("Thruster", (Rarity)(-1));
			obj.Add("Timed detonation", (Rarity)(-1));
			obj.Add("Wind up", (Rarity)(-1));
			obj.Add("__WB__69=420", (Rarity)(-1));
			obj.Add("__WB__Good maths", RarityBundle.Rare);
			obj.Add("__WB__Blood Thirst", (Rarity)(-1));
			obj.Add("__WB__Dr Michael Morbius", (Rarity)(-1));
			obj.Add("__WB__Its Morbin Time", RarityBundle.Scarce);
			obj.Add("__WB__Morb Screech", (Rarity)(-1));
			obj.Add("__WB__Tickets to the Morbius Movie", (Rarity)(-1));
			obj.Add("__WB__Natural twenty", RarityBundle.Epic);
			obj.Add("__TSC__White Hole", RarityBundle.Exotic);
			obj.Add("__TSC__Black Hole", (Rarity)(-1));
			obj.Add("__WWC__Adrenaline Rush", (Rarity)(-1));
			obj.Add("__WWC__Aggressive Venting", (Rarity)(-1));
			obj.Add("__WWC__Basic Physics", (Rarity)(-1));
			obj.Add("__WWC__Boomerang", (Rarity)(-1));
			obj.Add("__WWC__Endurance Training", (Rarity)(-1));
			obj.Add("__WWC__Vampirism", RarityBundle.Exotic);
			obj.Add("__WWC__Immovable Object", RarityBundle.Trinket);
			obj.Add("__WWC__Unstoppable Force", RarityBundle.Trinket);
			obj.Add("Root-Card  Cake_Toggle (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Backup_ShotGun (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Up_Down (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Stun_Dart (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Witch_Time (Root)", (Rarity)(-1));
			obj.Add("Root-Card  TooSoon (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Simulacrum (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Ouroboros (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Contract (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Cursed_Rune (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Lilith_Deal (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Dark_Queen (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Genie (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Garlic (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Johnson (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Old_Poison (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Partical_Wave (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Quick_Shield (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Anything (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Momentum (Root)", (Rarity)(-1));
			obj.Add("Root-Card  Rejuvenation (Root)", (Rarity)(-1));
			cards = obj;
			((MonoBehaviour)this).StartCoroutine(ToggleCards());
			List<string> val = new List<string>();
			Enumerator<string, IGameModeHandler> enumerator = GameModeManager.handlers.Keys.GetEnumerator();
			try
			{
				while (enumerator.MoveNext())
				{
					string current = enumerator.Current;
					if (current != "Deathmatch")
					{
						val.Add(current);
					}
				}
			}
			finally
			{
				((IDisposable)enumerator).Dispose();
			}
			Enumerator<string> enumerator2 = val.GetEnumerator();
			try
			{
				while (enumerator2.MoveNext())
				{
					GameModeManager.RemoveHandler(enumerator2.Current);
				}
			}
			finally
			{
				((IDisposable)enumerator2).Dispose();
			}
		}));
	}

	[IteratorStateMachine(/*Could not decode attribute arguments.*/)]
	private IEnumerator ToggleCards()
	{
		List<CardInfo> val = new List<CardInfo>();
		List<CardInfo> val2 = new List<CardInfo>();
		Enumerator<string, Card> enumerator = CardManager.cards.GetEnumerator();
		try
		{
			while (enumerator.MoveNext())
			{
				KeyValuePair<string, Card> current = enumerator.Current;
				if (cards.ContainsKey(((ConfigEntryBase)current.Value.config).Definition.Key))
				{
					val.Add(current.Value.cardInfo);
					if ((int)cards[((ConfigEntryBase)current.Value.config).Definition.Key] != -1)
					{
						current.Value.cardInfo.rarity = cards[((ConfigEntryBase)current.Value.config).Definition.Key];
					}
				}
				else
				{
					val2.Add(current.Value.cardInfo);
				}
			}
		}
		finally
		{
			((IDisposable)enumerator).Dispose();
		}
		CardManager.EnableCards(val.ToArray(), true);
		CardManager.DisableCards(val2.ToArray(), true);
		yield break;
	}
}
[Serializable]
[HarmonyPatch(/*Could not decode attribute arguments.*/)]
public class PatchToggleText : Object
{
	[Serializable]
	[CompilerGenerated]
	private sealed class <>c : Object
	{
		public static readonly <>c <>9 = new <>c();

		public static UnityAction <>9__0_1;

		public static Action <>9__0_0;

		internal void <Postfix>b__0_0()
		{
			//IL_0069: Unknown result type (might be due to invalid IL or missing references)
			//IL_006e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0074: Expected O, but got Unknown
			Transform obj = ((Component)MainMenuHandler.instance).transform.Find("Canvas/ListSelector/MODS/Group/Grid/Scroll View/Viewport/Content");
			((TMP_Text)((Component)obj.GetChild(0)).GetComponentInChildren<TextMeshProUGUI>()).text = "View Cards".ToUpper();
			((UnityEventBase)((Component)obj.GetChild(0)).GetComponent<Button>().onClick).RemoveAllListeners();
			ButtonClickedEvent onClick = ((Component)obj.GetChild(0)).GetComponent<Button>().onClick;
			object obj2 = <>9__0_1;
			if (obj2 == null)
			{
				UnityAction val = delegate
				{
					UpdateTogleCards.Fix();
				};
				<>9__0_1 = val;
				obj2 = (object)val;
			}
			((UnityEvent)onClick).AddListener((UnityAction)obj2);
		}

		internal void <Postfix>b__0_1()
		{
			UpdateTogleCards.Fix();
		}
	}

	public static void Postfix()
	{
		//IL_001b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0020: Unknown result type (might be due to invalid IL or missing references)
		//IL_0026: Expected O, but got Unknown
		Unbound instance = Unbound.Instance;
		object obj = <>c.<>9__0_0;
		if (obj == null)
		{
			Action val = delegate
			{
				//IL_0069: Unknown result type (might be due to invalid IL or missing references)
				//IL_006e: Unknown result type (might be due to invalid IL or missing references)
				//IL_0074: Expected O, but got Unknown
				Transform obj2 = ((Component)MainMenuHandler.instance).transform.Find("Canvas/ListSelector/MODS/Group/Grid/Scroll View/Viewport/Content");
				((TMP_Text)((Component)obj2.GetChild(0)).GetComponentInChildren<TextMeshProUGUI>()).text = "View Cards".ToUpper();
				((UnityEventBase)((Component)obj2.GetChild(0)).GetComponent<Button>().onClick).RemoveAllListeners();
				ButtonClickedEvent onClick = ((Component)obj2.GetChild(0)).GetComponent<Button>().onClick;
				object obj3 = <>c.<>9__0_1;
				if (obj3 == null)
				{
					UnityAction val2 = delegate
					{
						UpdateTogleCards.Fix();
					};
					<>c.<>9__0_1 = val2;
					obj3 = (object)val2;
				}
				((UnityEvent)onClick).AddListener((UnityAction)obj3);
			};
			<>c.<>9__0_0 = val;
			obj = (object)val;
		}
		ExtensionMethods.ExecuteAfterFrames((MonoBehaviour)(object)instance, 40, (Action)obj);
	}
}
[Serializable]
[HarmonyPatch(/*Could not decode attribute arguments.*/)]
public class PatchGameMods : Object
{
	public static void Prefix(ref string id)
	{
		if (id != null)
		{
			id = "Deathmatch";
		}
	}
}
[Serializable]
[HarmonyPatch(/*Could not decode attribute arguments.*/)]
public class PatchGameModButton : Object
{
	public static void Postfix()
	{
		PrivateRoomHandler.instance.gameModeButton.SetActive(false);
	}
}
public class UpdateTogleCards : Object
{
	public static bool setup;

	public static void Fix()
	{
		//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_0113: Unknown result type (might be due to invalid IL or missing references)
		//IL_0118: Unknown result type (might be due to invalid IL or missing references)
		//IL_004c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0051: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a2: Unknown result type (might be due to invalid IL or missing references)
		//IL_00a7: Unknown result type (might be due to invalid IL or missing references)
		//IL_00b8: Unknown result type (might be due to invalid IL or missing references)
		//IL_00bd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0198: Unknown result type (might be due to invalid IL or missing references)
		//IL_019e: Expected O, but got Unknown
		//IL_01d5: Unknown result type (might be due to invalid IL or missing references)
		//IL_01da: Unknown result type (might be due to invalid IL or missing references)
		//IL_01e0: Unknown result type (might be due to invalid IL or missing references)
		//IL_01e5: Unknown result type (might be due to invalid IL or missing references)
		ToggleCardsMenuHandler.SetActive(ToggleCardsMenuHandler.cardMenuCanvas.transform, true);
		if (setup)
		{
			return;
		}
		setup = true;
		Enumerator<string, List<GameObject>> enumerator = ToggleCardsMenuHandler.instance.cardObjectsInCategory.Values.GetEnumerator();
		try
		{
			while (enumerator.MoveNext())
			{
				List<GameObject> current = enumerator.Current;
				List<GameObject> val = new List<GameObject>();
				Enumerator<GameObject> enumerator2 = current.GetEnumerator();
				try
				{
					while (enumerator2.MoveNext())
					{
						GameObject current2 = enumerator2.Current;
						if (CardManager.cards[((Object)current2).name].enabled)
						{
							Object.Destroy((Object)(object)current2.GetComponent<Button>());
							try
							{
								current2.GetComponentInChildren<CardInfo>().rarity = CardManager.cards[((Object)current2).name].cardInfo.rarity;
								Enumerator<CardRarityColor> enumerator3 = Enumerable.ToList<CardRarityColor>((IEnumerable<CardRarityColor>)(object)current2.GetComponentsInChildren<CardRarityColor>()).GetEnumerator();
								try
								{
									while (enumerator3.MoveNext())
									{
										enumerator3.Current.Toggle(true);
									}
								}
								finally
								{
									((IDisposable)enumerator3).Dispose();
								}
							}
							catch (Object)
							{
							}
						}
						else
						{
							val.Add(current2);
						}
					}
				}
				finally
				{
					((IDisposable)enumerator2).Dispose();
				}
				enumerator2 = val.GetEnumerator();
				try
				{
					while (enumerator2.MoveNext())
					{
						GameObject current3 = enumerator2.Current;
						ToggleCardsMenuHandler.cardObjs.Remove(current3);
						current.Remove(current3);
						Object.DestroyImmediate((Object)(object)current3);
					}
				}
				finally
				{
					((IDisposable)enumerator2).Dispose();
				}
			}
		}
		finally
		{
			((IDisposable)enumerator).Dispose();
		}
		Transform val3 = (Transform)typeof(ToggleCardsMenuHandler).GetField("categoryContent", (BindingFlags)36).GetValue((object)ToggleCardsMenuHandler.instance);
		Dictionary<string, Transform> val4 = new Dictionary<string, Transform>();
		int childCount = val3.childCount;
		for (int i = 0; i < childCount; i++)
		{
			Transform child = val3.GetChild(i);
			val4.Add(((Object)child).name, child);
		}
		Enumerator<string, Transform> enumerator4 = val4.GetEnumerator();
		try
		{
			while (enumerator4.MoveNext())
			{
				KeyValuePair<string, Transform> current4 = enumerator4.Current;
				Toggle componentInChildren = ((Component)current4.Value).GetComponentInChildren<Toggle>();
				if (componentInChildren != null)
				{
					((Component)componentInChildren).gameObject.SetActive(false);
				}
				if (ToggleCardsMenuHandler.instance.cardObjectsInCategory.ContainsKey(current4.Key) && ToggleCardsMenuHandler.instance.cardObjectsInCategory[current4.Key].Count == 0)
				{
					((Component)current4.Value).gameObject.SetActive(false);
				}
			}
		}
		finally
		{
			((IDisposable)enumerator4).Dispose();
		}
		((Component)ToggleCardsMenuHandler.cardMenuCanvas.transform.Find("CardMenu/Top/ToggleAll")).gameObject.SetActive(false);
		((Component)ToggleCardsMenuHandler.cardMenuCanvas.transform.Find("CardMenu/Top/Help")).gameObject.SetActive(false);
	}
}
[BepInPlugin("pykess.rounds.plugins.rayhitreflectpatch", "No Hit Reflect Patch", "999999999.999999999.999999999")]
[BepInProcess("Rounds.exe")]
public class DisableBouncePatch : BaseUnityPlugin
{
}