Decompiled source of CodeRotCards v1.0.2

CodeRotCards.dll

Decompiled a week ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using DeckSmithEffects;
using HarmonyLib;
using LuckLib;
using ModdingUtils.Utils;
using ModsPlus;
using RarityLib.Utils;
using UnboundLib.Cards;
using UnboundLib.GameModes;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("CodeRotCards")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("CodeRotCards")]
[assembly: AssemblyTitle("CodeRotCards")]
[assembly: AssemblyVersion("1.0.0.0")]
public class Adowablewiddlebaba : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Adowable widdle baba";
			val.Description = "ZZZ ";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Epic");
			val.Theme = (CardThemeColorType)6;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://raw.githubusercontent.com/modacc993/icons/main/pfp_3_sleeping.png?utm_source=chatgpt.com");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+70%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Movement Speed",
					amount = "-20%",
					simepleAmount = (SimpleAmount)8
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+8",
					simepleAmount = (SimpleAmount)4
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["health"](1.7f);
		dictionary["movementSpeed"](0.8f);
		dictionary["bounces"](8f);
	}
}
public class AngelicHeath : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: 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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_012e: 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_0136: Expected O, but got Unknown
			//IL_0138: Unknown result type (might be due to invalid IL or missing references)
			//IL_013d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0144: Unknown result type (might be due to invalid IL or missing references)
			//IL_014f: Unknown result type (might be due to invalid IL or missing references)
			//IL_015a: Unknown result type (might be due to invalid IL or missing references)
			//IL_015c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0162: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Angelic Heath";
			val.Description = "After years of relentless torture, Heath evolves into his true released divine form. Blessed with Gods conviction and the mercy of the heavens, Heath lives in prosperity for centuries.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Rare");
			val.Theme = (CardThemeColorType)3;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/a7cVYqD_d.jpeg?maxwidth=520&shape=thumb&fidelity=high");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+50%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "-70%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-70%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Luck",
					amount = "+25",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Damage",
					amount = "-40%",
					simepleAmount = (SimpleAmount)6
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Ammunition",
					amount = "-3",
					simepleAmount = (SimpleAmount)6
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["health"](1.5f);
		dictionary["attackSpeed"](0.3f);
		dictionary["reload"](0.3f);
		dictionary["luck"](25f);
		dictionary["damage"](0.6f);
		dictionary["ammo"](-3f);
	}
}
public static class CardRegistry
{
	private static Dictionary<Type, CardInfo> storedCardInfo = new Dictionary<Type, CardInfo>();

	public static void RegisterCard<T>(bool hidden = false) where T : CustomCard
	{
		CustomCard.BuildCard<T>((Action<CardInfo>)delegate(CardInfo c)
		{
			StoreCard<T>(c);
			if (hidden)
			{
				Cards.instance.AddHiddenCard(c);
			}
		});
	}

	private static void StoreCard<T>(CardInfo card) where T : CustomCard
	{
		storedCardInfo.Add(typeof(T), card);
	}

	public static CardInfo GetCard<T>() where T : CustomCard
	{
		if (storedCardInfo.TryGetValue(typeof(T), out var value))
		{
			return value;
		}
		return null;
	}

	public static CardInfo GetCard(Type T)
	{
		if (storedCardInfo.TryGetValue(T, out var value))
		{
			return value;
		}
		return null;
	}
}
public class CocoaThePussy : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Cocoa The Pussy";
			val.Description = "Cocoa is a domestic pussy. Unlike the savage, deadly counterpart reef, Cocoa only relies on her persistent screeching and appearance. Passive pussy.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)0;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/I95U5ig_d.jpeg?maxwidth=520&shape=thumb&fidelity=high");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = false,
					stat = "Damage",
					amount = "-10%",
					simepleAmount = (SimpleAmount)5
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+80%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "-30%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Ammunition",
					amount = "-3",
					simepleAmount = (SimpleAmount)6
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](0.9f);
		dictionary["movementSpeed"](1.8f);
		dictionary["attackSpeed"](0.7f);
		dictionary["ammo"](-3f);
	}
}
public class CODEROT : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "CODE ROT";
			val.Description = "Yup Yup Yup Yup. I fucking knew it holy fuck thats fucking code rot. May God Save our souls.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Epic");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/FBB5WED.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+60%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Time Between Bullets",
					amount = "-0.5 seconds",
					simepleAmount = (SimpleAmount)5
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+15",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+100%",
					simepleAmount = (SimpleAmount)3
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](1.6f);
		dictionary["timeBetweenBullets"](-0.5f);
		dictionary["bounces"](15f);
		dictionary["reload"](2f);
	}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("yup.yup.code.rot", "CodeRotCards", "1.0.2")]
[BepInProcess("Rounds.exe")]
public class CodeRotCardsPlugin : BaseUnityPlugin
{
	private const string ModId = "yup.yup.code.rot";

	private const string ModName = "CodeRotCards";

	private const string ModVersion = "1.0.2";

	private const string CompatabilityModName = "CodeRotCards";

	private void Awake()
	{
		CardRegistry.RegisterCard<HeathPWarren>(hidden: false);
		CardRegistry.RegisterCard<ThomasGarden>(hidden: false);
		CardRegistry.RegisterCard<EvilReef>(hidden: false);
		CardRegistry.RegisterCard<Pieceofshitcow>(hidden: false);
		CardRegistry.RegisterCard<OP>(hidden: false);
		CardRegistry.RegisterCard<PassiveReef>(hidden: false);
		CardRegistry.RegisterCard<CODEROT>(hidden: false);
		CardRegistry.RegisterCard<DemonicPieceofShitCow>(hidden: false);
		CardRegistry.RegisterCard<ReefAlmighty>(hidden: false);
		CardRegistry.RegisterCard<HarrisonPisshead>(hidden: false);
		CardRegistry.RegisterCard<CocoaThePussy>(hidden: false);
		CardRegistry.RegisterCard<Lucathemog>(hidden: false);
		CardRegistry.RegisterCard<AngelicHeath>(hidden: false);
		CardRegistry.RegisterCard<PrepubescentJolliffe>(hidden: false);
		CardRegistry.RegisterCard<NaughtyHeath>(hidden: false);
		CardRegistry.RegisterCard<DUMBASS>(hidden: false);
		CardRegistry.RegisterCard<PeterLizard>(hidden: false);
		CardRegistry.RegisterCard<Adowablewiddlebaba>(hidden: false);
		CardRegistry.RegisterCard<KingPeterLizerd>(hidden: false);
		CardRegistry.RegisterCard<Thatsfeelwhenbrohack>(hidden: false);
	}

	private void Start()
	{
		//IL_0005: Unknown result type (might be due to invalid IL or missing references)
		new Harmony("yup.yup.code.rot").PatchAll();
	}
}
public class DemonicPieceofShitCow : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Demonic Piece of Shit Cow";
			val.Description = "As he collects the souls of innocent calves, the Demonic Piece of Shit Cow evolves into a beast beyond comprehension. It grows so powerful that no other cow  can rival it.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Legendary");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/RvEA1Tx.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+150%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+250%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Movement Speed",
					amount = "-60%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+150%",
					simepleAmount = (SimpleAmount)3
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](2.5f);
		dictionary["health"](3.5f);
		dictionary["movementSpeed"](0.4f);
		dictionary["reload"](2.5f);
	}
}
public class DUMBASS : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "DUMBASS";
			val.Description = "Haha Stupid ass thought he was smooth but in reality he is just a loser. Prick. Make other players fatter just by hanging around them";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)6;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://raw.githubusercontent.com/modacc993/icons/main/pfp_1_selfie.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Enemy Size Per Hit",
					amount = "+30%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "-90%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Damage",
					amount = "-90%",
					simepleAmount = (SimpleAmount)7
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["attackSpeed"](0.1f);
		dictionary["damage"](0.1f);
	}

	protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
	{
		EffectHelper.Add<GrowRayEffect>(player, gun, gunAmmo, data, health, gravity, block, characterStats, 30f);
	}

	protected override void Removed(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
	{
		EffectHelper.Remove<GrowRayEffect>(player, 30f);
	}
}
public class EvilReef : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: 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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_012e: 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_0136: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Evil Reef";
			val.Description = "Reef discovers hypercaty. Distraught, he resorts to violence in an attempt to quench his thirst for blood. ";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Legendary");
			val.Theme = (CardThemeColorType)7;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/2Tz1lSD.jpeg");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+90%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+20%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+6",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+40%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Bullet Speed",
					amount = "-50%",
					simepleAmount = (SimpleAmount)7
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](1.9f);
		dictionary["health"](1.2f);
		dictionary["bounces"](6f);
		dictionary["movementSpeed"](1.4f);
		dictionary["bulletSpeed"](0.5f);
	}
}
public class HarrisonPisshead : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Harrison Pisshead";
			val.Description = "Pathological Underachiever who, despite his tall stature, bounces around friend groups like a horny ping pong ball";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)0;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/n8HAsTw.jpeg");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "-10%",
					simepleAmount = (SimpleAmount)5
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Ammunition",
					amount = "-2",
					simepleAmount = (SimpleAmount)6
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+10",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "-10%",
					simepleAmount = (SimpleAmount)5
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](0.9f);
		dictionary["ammo"](-2f);
		dictionary["bounces"](10f);
		dictionary["health"](0.9f);
	}
}
public class HeathPWarren : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Heath P Warren";
			val.Description = "Feel your legs evolve as you transform into the swift Heath Warren. His overwhelming speed blitzed him to the title Fastest in year 11. Cursed with bad luck.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Uncommon");
			val.Theme = (CardThemeColorType)0;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/JXp2qdl.jpeg");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+250%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Luck",
					amount = "-20",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "-20%",
					simepleAmount = (SimpleAmount)2
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["movementSpeed"](3.5f);
		dictionary["luck"](-20f);
		dictionary["attackSpeed"](0.8f);
	}
}
public class KingPeterLizerd : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: 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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_012e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0131: Unknown result type (might be due to invalid IL or missing references)
			//IL_0137: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "King Peter Lizerd";
			val.Description = "Fear him because he is evil and bad";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Legendary");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://raw.githubusercontent.com/modacc993/icons/main/Shadow%20Realm%20Lizard%20King.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+70%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+50%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Damage/sec Standing Still",
					amount = "+35%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Enemy Size Per Hit",
					amount = "+10%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Attack Speed",
					amount = "+40%",
					simepleAmount = (SimpleAmount)9
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](1.7f);
		dictionary["poison"](1f);
		dictionary["movementSpeed"](1.5f);
		dictionary["attackSpeed"](1.4f);
	}

	protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
	{
		EffectHelper.Add<SigmaStanceEffect>(player, gun, gunAmmo, data, health, gravity, block, characterStats, 35f);
		EffectHelper.Add<GrowRayEffect>(player, gun, gunAmmo, data, health, gravity, block, characterStats, 10f);
	}

	protected override void Removed(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
	{
		EffectHelper.Remove<SigmaStanceEffect>(player, 35f);
		EffectHelper.Remove<GrowRayEffect>(player, 10f);
	}
}
public class Lucathemog : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Luca the mog";
			val.Description = "With unmatched versatility and self-confidence, luca wiggles his way into any friend group. Unfortunately, he is a loser and is bald.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Uncommon");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/MIZ6dX5_d.jpeg?maxwidth=520&shape=thumb&fidelity=high");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-40%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Projectiles",
					amount = "+3",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+20%",
					simepleAmount = (SimpleAmount)1
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Luck",
					amount = "-25",
					simepleAmount = (SimpleAmount)7
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["reload"](0.6f);
		dictionary["projectiles"](3f);
		dictionary["health"](1.2f);
		dictionary["luck"](-25f);
	}
}
public class NaughtyHeath : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Naughty Heath";
			val.Description = "Careful. He bites. Hard.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)8;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/yrMfYBP_d.jpeg?maxwidth=520&shape=thumb&fidelity=high");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+100%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Bullet Speed",
					amount = "-70%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+50%",
					simepleAmount = (SimpleAmount)3
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary["damage"](2f);
		dictionary["bulletSpeed"](0.3f);
		dictionary["movementSpeed"](1.5f);
	}
}
public class OP : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "OP";
			val.Description = "Yup Yup Yup Yup Yup, I knew it. Your IQ plummets, and along with it, goes Heath P Warren. May God save us all.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Exotic");
			val.Theme = (CardThemeColorType)3;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/BTxauJa.jpeg");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+20%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-50%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Luck",
					amount = "-20",
					simepleAmount = (SimpleAmount)6
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Health",
					amount = "-20%",
					simepleAmount = (SimpleAmount)5
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["damage"](1.2f);
		dictionary["reload"](0.5f);
		dictionary["luck"](-20f);
		dictionary["health"](0.8f);
	}
}
public class PassiveReef : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: 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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_012e: 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_0136: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Passive Reef";
			val.Description = "Reef is cool, calm, and collected. He excels in catching rabbits and small sheep. Unfortunately, one hit by a car and he's done for.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Epic");
			val.Theme = (CardThemeColorType)3;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/7DXBu0y.jpeg");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+80%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-70%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Movement Speed",
					amount = "+70%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Health",
					amount = "-60%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Luck",
					amount = "+50",
					simepleAmount = (SimpleAmount)4
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["damage"](1.8f);
		dictionary["reload"](0.3f);
		dictionary["movementSpeed"](1.7f);
		dictionary["health"](0.4f);
		dictionary["luck"](50f);
	}
}
public class PeterLizard : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_0102: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: 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_0123: Unknown result type (might be due to invalid IL or missing references)
			//IL_012e: 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_0136: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Peter Lizard";
			val.Description = "Peter Lizard cowers in fear and drops his tail off at the sound of a fart. He is slimy af tho and can survive situations that should have meant iminent death.";
			val.ModName = "CodeRotCards";
			val.Rarity = RarityUtils.GetRarity("Uncommon");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://raw.githubusercontent.com/modacc993/icons/main/pfp_2_lizard.png?utm_source=chatgpt.com");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+20%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Extra Lives",
					amount = "+1",
					simepleAmount = (SimpleAmount)1
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Luck",
					amount = "+15",
					simepleAmount = (SimpleAmount)1
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Damage",
					amount = "-30%",
					simepleAmount = (SimpleAmount)7
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Attack Speed",
					amount = "+30%",
					simepleAmount = (SimpleAmount)6
				}
			};
			return val;
		}
	}

	public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
	{
		Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
		dictionary.Add("damage", delegate(float val)
		{
			gun.damage = val;
		});
		dictionary.Add("health", delegate(float val)
		{
			statModifiers.health = val;
		});
		dictionary.Add("reload", delegate(float val)
		{
			gun.reloadTime = val;
		});
		dictionary.Add("ammo", delegate(float val)
		{
			gun.ammo = (int)val;
		});
		dictionary.Add("projectiles", delegate(float val)
		{
			gun.numberOfProjectiles = Mathf.Max(1, (int)val);
		});
		dictionary.Add("bursts", delegate(float val)
		{
			gun.bursts = (int)val;
		});
		dictionary.Add("timeBetweenBullets", delegate(float val)
		{
			gun.timeBetweenBullets = val;
		});
		dictionary.Add("attackSpeed", delegate(float val)
		{
			gun.attackSpeed = val;
		});
		dictionary.Add("bounces", delegate(float val)
		{
			gun.reflects = (int)val;
		});
		dictionary.Add("bulletSpeed", delegate(float val)
		{
			gun.projectileSpeed = val;
		});
		dictionary.Add("movementSpeed", delegate(float val)
		{
			statModifiers.movementSpeed = val;
		});
		dictionary.Add("extraLives", delegate(float val)
		{
			statModifiers.respawns = (int)val;
		});
		dictionary.Add("poison", delegate(float val)
		{
			if (!(val <= 0f))
			{
				GameObject val2 = Resources.Load<GameObject>("0 cards/Poison");
				if ((Object)(object)val2 == (Object)null)
				{
					GameObject[] array = Resources.LoadAll<GameObject>("0 cards");
					foreach (GameObject val3 in array)
					{
						CardInfo component = val3.GetComponent<CardInfo>();
						if ((Object)(object)component != (Object)null && component.cardName != null && component.cardName.Trim().ToLower() == "poison")
						{
							val2 = val3;
							break;
						}
					}
				}
				Gun val4 = (((Object)(object)val2 == (Object)null) ? null : val2.GetComponent<Gun>());
				if ((Object)(object)val4 == (Object)null || val4.objectsToSpawn == null)
				{
					Debug.LogWarning("[DeckSmith] Could not find the game's Poison card");
				}
				else
				{
					List<ObjectsToSpawn> list = new List<ObjectsToSpawn>((IEnumerable<ObjectsToSpawn>)(((object)gun.objectsToSpawn) ?? ((object)new ObjectsToSpawn[0])));
					list.AddRange(val4.objectsToSpawn);
					gun.objectsToSpawn = list.ToArray();
				}
			}
		});
		dictionary.Add("luck", delegate(float val)
		{
			Luck val2 = ((Component)cardInfo).gameObject.GetComponent<Luck>();
			if ((Object)(object)val2 == (Object)null)
			{
				val2 = ((Component)cardInfo).gameObject.AddComponent<Luck>();
			}
			val2.LuckAdd = (int)val;
		});
		dictionary["health"](1.2f);
		dictionary["extraLives"](1f);
		dictionary["luck"](15f);
		dictionary["damage"](0.7f);
		dictionary["attackSpeed"](1.3f);
	}
}
public class Pieceofshitcow : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0000: Unknown result type (might be due to invalid IL or missing references)
			//IL_0006: Expected O, but got Unknown
			//IL_002d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0061: Unknown result type (might be due to invalid IL or missing references)
			//IL_0068: Unknown result type (might be due to invalid IL or missing references)
			//IL_0073: 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_0080: Unknown result type (might be due to invalid IL or missing references)
			//IL_0086: Expected O, but got Unknown
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0094: Unknown result type (might be due to invalid IL or missing references)
			//IL_009f: Unknown result type (might be due to invalid IL or missing references)
			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
			//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b2: Expected O, but got Unknown
			//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
			//IL_00de: Expected O, but got Unknown
			//IL_00e0: Unknown result type (might be due to invalid IL or