Decompiled source of TheBozos v0.0.1

TheBozos.dll

Decompiled 3 weeks 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 ModdingUtils.Utils;
using ModsPlus;
using RarityLib.Utils;
using UnboundLib.Cards;
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("TheBozos")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("TheBozos")]
[assembly: AssemblyTitle("TheBozos")]
[assembly: AssemblyVersion("1.0.0.0")]
public class BeginnerBOZO : 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 = "Beginner BOZO";
			val.Description = "Get started with your BOZO powers";
			val.ModName = "TheBozos";
			val.Rarity = RarityUtils.GetRarity("Common");
			val.Theme = (CardThemeColorType)7;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+30%",
					simepleAmount = (SimpleAmount)1
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+3",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bursts",
					amount = "+1",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Time Between Bullets",
					amount = "+0.2 seconds",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bullet Speed",
					amount = "+100%",
					simepleAmount = (SimpleAmount)0
				}
			};
			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["damage"](1.3f);
		dictionary["bounces"](3f);
		dictionary["bursts"](1f);
		dictionary["timeBetweenBullets"](0.2f);
		dictionary["bulletSpeed"](2f);
	}
}
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 CertifiedBozo : 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
			//IL_0164: Unknown result type (might be due to invalid IL or missing references)
			//IL_0169: Unknown result type (might be due to invalid IL or missing references)
			//IL_0170: Unknown result type (might be due to invalid IL or missing references)
			//IL_017b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0186: Unknown result type (might be due to invalid IL or missing references)
			//IL_0188: Unknown result type (might be due to invalid IL or missing references)
			//IL_018e: Expected O, but got Unknown
			CardDetails val = new CardDetails();
			val.Title = "Certified Bozo";
			val.Description = "Bcome the ultimate BOZO";
			val.ModName = "TheBozos";
			val.Rarity = RarityUtils.GetRarity("Exotic");
			val.Theme = (CardThemeColorType)0;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.postimg.cc/hvGZGcMQ/image.png");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[7]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+150%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+100%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Reload Time",
					amount = "-31%",
					simepleAmount = (SimpleAmount)6
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bounces",
					amount = "+20",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bursts",
					amount = "+3",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Time Between Bullets",
					amount = "+0.5 seconds",
					simepleAmount = (SimpleAmount)0
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Bullet Speed",
					amount = "+50%",
					simepleAmount = (SimpleAmount)0
				}
			};
			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["damage"](2.5f);
		dictionary["health"](2f);
		dictionary["reload"](0.7f);
		dictionary["bounces"](20f);
		dictionary["bursts"](3f);
		dictionary["timeBetweenBullets"](0.5f);
		dictionary["bulletSpeed"](1.5f);
	}
}
public class ExperiencedJester : 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 = "Experienced Jester";
			val.Description = "Become an experienced Jester";
			val.ModName = "TheBozos";
			val.Rarity = RarityUtils.GetRarity("Uncommon");
			val.Theme = (CardThemeColorType)5;
			val.Art = DeckSmithUtil.Instance.GetArtFromUrl("data:image/png;base64,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");
			val.Stats = (CardInfoStat[])(object)new CardInfoStat[5]
			{
				new CardInfoStat
				{
					positive = true,
					stat = "Health",
					amount = "+50%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Damage",
					amount = "+50%",
					simepleAmount = (SimpleAmount)2
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Attack Speed",
					amount = "+200%",
					simepleAmount = (SimpleAmount)4
				},
				new CardInfoStat
				{
					positive = false,
					stat = "Reload Time",
					amount = "+70%",
					simepleAmount = (SimpleAmount)3
				},
				new CardInfoStat
				{
					positive = true,
					stat = "Ammunition",
					amount = "+10",
					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["health"](1.5f);
		dictionary["damage"](1.5f);
		dictionary["attackSpeed"](3f);
		dictionary["reload"](1.7f);
		dictionary["ammo"](10f);
	}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("com..rounds.modc", "TheBozos", "0.0.1")]
[BepInProcess("Rounds.exe")]
public class TheBozosPlugin : BaseUnityPlugin
{
	private const string ModId = "com..rounds.modc";

	private const string ModName = "TheBozos";

	private const string ModVersion = "0.0.1";

	private const string CompatabilityModName = "TheBozos";

	private void Awake()
	{
		CardRegistry.RegisterCard<ExperiencedJester>(hidden: false);
		CardRegistry.RegisterCard<BeginnerBOZO>(hidden: false);
		CardRegistry.RegisterCard<CertifiedBozo>(hidden: false);
	}

	private void Start()
	{
		//IL_0005: Unknown result type (might be due to invalid IL or missing references)
		new Harmony("com..rounds.modc").PatchAll();
	}
}