Decompiled source of JohnathanAgainBecauseTheFirstOneSucked v0.1.0

JohnathanAgainBecauseTheFirstOneSucked.dll

Decompiled 6 months ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using HarmonyLib;
using Microsoft.CodeAnalysis;
using ModdingUtils.Utils;
using ModsPlus;
using RarityLib.Utils;
using UnboundLib.Cards;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyCompany("JohnathanAgainBecauseTheFirstOneSucked")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("JohnathanAgainBecauseTheFirstOneSucked")]
[assembly: AssemblyTitle("JohnathanAgainBecauseTheFirstOneSucked")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: AssemblyVersion("1.0.0.0")]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
public class Basketball : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Basketball";
			val.Description = "swag";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Divine");
			val.Theme = (CardThemeColorType)6;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://images.emojiterra.com/google/android-10/512px/1f3c0.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Something",
					amount = "+yippee%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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("bulletSize", delegate(float val)
		{
			gun.projectileSize = val;
		});
		dictionary.Add("ammoReg", delegate(float val)
		{
			gun.ammoReg = val;
		});
		dictionary.Add("coolDown", delegate(float val)
		{
			block.cdMultiplier = val;
		});
		dictionary["damage"](100f);
		dictionary["health"](6f);
		dictionary["reload"](0.5f);
		dictionary["ammo"](100f);
		dictionary["attackSpeed"](100f);
		dictionary["bulletSpeed"](0.2f);
		dictionary["timeBetweenBullets"](5f);
		dictionary["bursts"](3f);
		dictionary["bulletSize"](0.5f);
		dictionary["coolDown"](0f);
		dictionary["ammoReg"](1000f);
	}
}
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
	{
		CardInfo value;
		return storedCardInfo.TryGetValue(typeof(T), out value) ? value : null;
	}

	public static CardInfo GetCard(Type T)
	{
		CardInfo value;
		return storedCardInfo.TryGetValue(T, out value) ? value : null;
	}
}
public class cryemoji : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "cry emoji";
			val.Description = "haha!!";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media.istockphoto.com/id/1408363720/vector/loudly-crying-emoticon.jpg?s=612x612&w=0&k=20&c=oqmC21THjO4uB86BR58opOIkmcBE0n47Bf0QmUdMFcA=");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[2]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+30%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+50%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](1.3f);
		dictionary["health"](1.5f);
	}
}
public class dissapointed : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			//IL_00e7: 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_00f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: Expected O, but got Unknown
			//IL_0113: Unknown result type (might be due to invalid IL or missing references)
			//IL_0118: Unknown result type (might be due to invalid IL or missing references)
			//IL_011f: Unknown result type (might be due to invalid IL or missing references)
			//IL_012a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0135: Unknown result type (might be due to invalid IL or missing references)
			//IL_0137: Unknown result type (might be due to invalid IL or missing references)
			//IL_013d: Expected O, but got Unknown
			//IL_013f: 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_014b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0156: Unknown result type (might be due to invalid IL or missing references)
			//IL_0161: Unknown result type (might be due to invalid IL or missing references)
			//IL_0163: Unknown result type (might be due to invalid IL or missing references)
			//IL_0169: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "dissapointed";
			val.Description = "hes so sad";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Exotic");
			val.Theme = (CardThemeColorType)2;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://www.dictionary.com/e/wp-content/uploads/2018/08/disappointed-face.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Ammunition",
					amount = "-3",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Projectiles",
					amount = "+1",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+1",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](2f);
		dictionary["health"](2f);
		dictionary["reload"](2f);
		dictionary["ammo"](-3f);
		dictionary["projectiles"](1f);
		dictionary["bounces"](1f);
	}
}
public class EMERGENCYFROGSITUATION : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "EMERGENCY FROG SITUATION";
			val.Description = "EMERGENCY FROG SITUATION!!";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Legendary");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgflip.com/89szll.gif");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+500%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+1000%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-50%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](6f);
		dictionary["health"](11f);
		dictionary["reload"](0.5f);
	}
}
public class Happyemoji : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Happy emoji";
			val.Description = "hes so happy";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Trinket");
			val.Theme = (CardThemeColorType)3;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://cdn.pixabay.com/photo/2020/12/27/20/25/smile-5865209_1280.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+10%",
					simepleAmount = (SimpleAmount)1
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](1.1f);
	}
}
[BepInPlugin("com.johnathan.rounds.mod", "JohnathanAgainBecauseTheFirstOneSucked", "0.1.0")]
[BepInProcess("Rounds.exe")]
public class JohnathanAgainBecauseTheFirstOneSuckedPlugin : BaseUnityPlugin
{
	private const string ModId = "com.johnathan.rounds.mod";

	private const string ModName = "JohnathanAgainBecauseTheFirstOneSucked";

	private const string ModVersion = "0.1.0";

	private const string CompatabilityModName = "JohnathanAgainBecauseTheFirstOneSucked";

	private void Awake()
	{
		CardRegistry.RegisterCard<JohnathanGun>(hidden: false);
		CardRegistry.RegisterCard<JohnathanBullet>(hidden: false);
		CardRegistry.RegisterCard<EMERGENCYFROGSITUATION>(hidden: false);
		CardRegistry.RegisterCard<Nerd>(hidden: false);
		CardRegistry.RegisterCard<Basketball>(hidden: false);
		CardRegistry.RegisterCard<nuhuh>(hidden: false);
		CardRegistry.RegisterCard<thinkingemoji>(hidden: false);
		CardRegistry.RegisterCard<Owlemoji>(hidden: false);
		CardRegistry.RegisterCard<Yawnemoji>(hidden: false);
		CardRegistry.RegisterCard<Happyemoji>(hidden: false);
		CardRegistry.RegisterCard<cryemoji>(hidden: false);
		CardRegistry.RegisterCard<dissapointed>(hidden: false);
	}

	private void Start()
	{
		//IL_0005: Unknown result type (might be due to invalid IL or missing references)
		new Harmony("com.johnathan.rounds.mod").PatchAll();
	}
}
public class JohnathanBullet : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Johnathan Bullet";
			val.Description = "Your bullets are now johnathan";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Legendary");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/DZqzav0.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+400%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bullet Speed",
					amount = "+4900%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](5f);
		dictionary["bulletSpeed"](50f);
		dictionary["reload"](2f);
	}
}
public class JohnathanGun : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Johnathan Gun";
			val.Description = "Johnathan";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Divine");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.imgur.com/z84eLlc.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "hmmm",
					amount = "+?%",
					simepleAmount = (SimpleAmount)2
				}
			};
			return val;
		}
	}

	public virtual 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("blockCooldown", delegate(float val)
		{
			block.cdMultiplier = val;
		});
		dictionary["damage"](100f);
		dictionary["health"](0.1f);
		dictionary["reload"](100f);
		dictionary["bounces"](100f);
		dictionary["attackSpeed"](100f);
		dictionary["blockCooldown"](1000f);
	}
}
public class Nerd : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			//IL_00e7: 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_00f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Nerd";
			val.Description = "Uhm Ackshually";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Trinket");
			val.Theme = (CardThemeColorType)1;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://c.tenor.com/xCc58fEqFREAAAAC/tenor.gif");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+10%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "+10%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-10%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+10%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](1.1f);
		dictionary["attackSpeed"](1.1f);
		dictionary["reload"](0.9f);
		dictionary["health"](1.1f);
	}
}
public class nuhuh : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			//IL_00e7: 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_00f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "nuh uh";
			val.Description = "nuh uh!";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Epic");
			val.Theme = (CardThemeColorType)0;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.redd.it/k2p4a2n7dk0b1.gif");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+50%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](2f);
		dictionary["health"](1.5f);
		dictionary["reload"](2f);
		dictionary["attackSpeed"](2f);
	}
}
public class Owlemoji : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Owl emoji";
			val.Description = "I just kinda said it and it became a joke somehow";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Exotic");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://images.emojiterra.com/google/android-11/512px/1f989.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+50%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Time Between Bullets",
					amount = "+0.5 seconds",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bursts",
					amount = "+3",
					simepleAmount = (SimpleAmount)0
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](1.5f);
		dictionary["timeBetweenBullets"](0.5f);
		dictionary["bursts"](3f);
	}
}
public class thinkingemoji : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			//IL_00e7: 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_00f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0112: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "thinking emoji";
			val.Description = "hmmmmm";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Mythical");
			val.Theme = (CardThemeColorType)4;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://images.emojiterra.com/google/android-12l/512px/1f914.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+500%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+400%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-50%",
					simepleAmount = (SimpleAmount)5
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Ammunition",
					amount = "-10",
					simepleAmount = (SimpleAmount)9
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](6f);
		dictionary["health"](5f);
		dictionary["reload"](0.5f);
		dictionary["ammo"](-10f);
	}
}
public class Yawnemoji : SimpleCard
{
	public override CardDetails Details
	{
		get
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			//IL_0063: 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_006f: Unknown result type (might be due to invalid IL or missing references)
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0085: Unknown result type (might be due to invalid IL or missing references)
			//IL_0087: Unknown result type (might be due to invalid IL or missing references)
			//IL_008d: Expected O, but got Unknown
			//IL_008f: 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_009b: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00b9: Expected O, but got Unknown
			//IL_00bb: 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_00c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_00d2: Unknown result type (might be due to invalid IL or missing references)
			//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_00df: Unknown result type (might be due to invalid IL or missing references)
			//IL_00e5: Expected O, but got Unknown
			//IL_00e7: 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_00f3: Unknown result type (might be due to invalid IL or missing references)
			//IL_00fe: Unknown result type (might be due to invalid IL or missing references)
			//IL_0109: Unknown result type (might be due to invalid IL or missing references)
			//IL_010b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0111: Expected O, but got Unknown
			//IL_0113: Unknown result type (might be due to invalid IL or missing references)
			//IL_0118: Unknown result type (might be due to invalid IL or missing references)
			//IL_011f: Unknown result type (might be due to invalid IL or missing references)
			//IL_012a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0135: Unknown result type (might be due to invalid IL or missing references)
			//IL_0137: Unknown result type (might be due to invalid IL or missing references)
			//IL_013d: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Yawn emoji";
			val.Description = "just so ez";
			val.ModName = "JohnathanAgainBecauseTheFirstOneSucked";
			val.Rarity = RarityUtils.GetRarity("Divine");
			val.Theme = (CardThemeColorType)3;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://static-00.iconduck.com/assets.00/yawning-face-emoji-502x512-jaqnmri2.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+9900%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "+9900%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Health",
					amount = "-50%",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+9900%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Ammunition",
					amount = "-100",
					simepleAmount = (SimpleAmount)7
				}
			};
			return val;
		}
	}

	public virtual 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["damage"](100f);
		dictionary["attackSpeed"](100f);
		dictionary["health"](0.5f);
		dictionary["reload"](100f);
		dictionary["ammo"](-100f);
	}
}