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("DontUseThisMod")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("DontUseThisMod")] [assembly: AssemblyTitle("DontUseThisMod")] [assembly: AssemblyVersion("1.0.0.0")] public class Autoclicker : 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_005d: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) //IL_0069: Unknown result type (might be due to invalid IL or missing references) //IL_0074: Unknown result type (might be due to invalid IL or missing references) //IL_007f: Unknown result type (might be due to invalid IL or missing references) //IL_0081: Unknown result type (might be due to invalid IL or missing references) //IL_0087: Expected O, but got Unknown //IL_0089: Unknown result type (might be due to invalid IL or missing references) //IL_008e: Unknown result type (might be due to invalid IL or missing references) //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_00a0: Unknown result type (might be due to invalid IL or missing references) //IL_00ab: Unknown result type (might be due to invalid IL or missing references) //IL_00ad: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown //IL_00b5: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00c1: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00d9: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Expected O, but got Unknown //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00e6: Unknown result type (might be due to invalid IL or missing references) //IL_00ed: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_0105: Unknown result type (might be due to invalid IL or missing references) //IL_010b: Expected O, but got Unknown //IL_010d: Unknown result type (might be due to invalid IL or missing references) //IL_0112: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Unknown result type (might be due to invalid IL or missing references) //IL_0124: Unknown result type (might be due to invalid IL or missing references) //IL_012f: 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 //IL_0139: Unknown result type (might be due to invalid IL or missing references) //IL_013e: Unknown result type (might be due to invalid IL or missing references) //IL_0145: Unknown result type (might be due to invalid IL or missing references) //IL_0150: Unknown result type (might be due to invalid IL or missing references) //IL_015b: Unknown result type (might be due to invalid IL or missing references) //IL_015d: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Expected O, but got Unknown //IL_0165: Unknown result type (might be due to invalid IL or missing references) //IL_016a: Unknown result type (might be due to invalid IL or missing references) //IL_0171: Unknown result type (might be due to invalid IL or missing references) //IL_017c: Unknown result type (might be due to invalid IL or missing references) //IL_0187: Unknown result type (might be due to invalid IL or missing references) //IL_0189: Unknown result type (might be due to invalid IL or missing references) //IL_018f: Expected O, but got Unknown //IL_0191: Unknown result type (might be due to invalid IL or missing references) //IL_0196: Unknown result type (might be due to invalid IL or missing references) //IL_019d: Unknown result type (might be due to invalid IL or missing references) //IL_01a8: Unknown result type (might be due to invalid IL or missing references) //IL_01b3: Unknown result type (might be due to invalid IL or missing references) //IL_01b5: Unknown result type (might be due to invalid IL or missing references) //IL_01bb: Expected O, but got Unknown //IL_01bd: Unknown result type (might be due to invalid IL or missing references) //IL_01c2: Unknown result type (might be due to invalid IL or missing references) //IL_01c9: Unknown result type (might be due to invalid IL or missing references) //IL_01d4: Unknown result type (might be due to invalid IL or missing references) //IL_01df: Unknown result type (might be due to invalid IL or missing references) //IL_01e1: Unknown result type (might be due to invalid IL or missing references) //IL_01e7: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Auto clicker"; val.Description = "One click"; val.ModName = "DontUseThisMod"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[9] { new CardInfoStat { positive = true, stat = "Attack Speed", amount = "+60%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bursts", amount = "+3", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-50%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "+40", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+6", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "+50%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "+10%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-99%", simepleAmount = (SimpleAmount)7 }, new CardInfoStat { positive = false, stat = "Time Between Bullets", amount = "+5 seconds", simepleAmount = (SimpleAmount)0 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { Dictionary> dictionary = new Dictionary>(); 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["attackSpeed"](1.6f); dictionary["bursts"](3f); dictionary["reload"](0.5f); dictionary["ammo"](40f); dictionary["projectiles"](6f); dictionary["bulletSpeed"](1.5f); dictionary["damage"](1.1f); dictionary["health"](0.01f); dictionary["timeBetweenBullets"](5f); } } public static class CardRegistry { private static Dictionary storedCardInfo = new Dictionary(); public static void RegisterCard(bool hidden = false) where T : CustomCard { CustomCard.BuildCard((Action)delegate(CardInfo c) { StoreCard(c); if (hidden) { Cards.instance.AddHiddenCard(c); } }); } private static void StoreCard(CardInfo card) where T : CustomCard { storedCardInfo.Add(typeof(T), card); } public static CardInfo GetCard() 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; } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("", "DontUseThisMod", "1.3.0")] [BepInProcess("Rounds.exe")] public class DontUseThisModPlugin : BaseUnityPlugin { private const string ModId = ""; private const string ModName = "DontUseThisMod"; private const string ModVersion = "1.3.0"; private const string CompatabilityModName = "DontUseThisMod"; private void Awake() { CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); } private void Start() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) new Harmony("").PatchAll(); } } public class Sun : 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 = "Sun"; val.Description = "The actual Suns card"; val.ModName = "DontUseThisMod"; val.Rarity = RarityUtils.GetRarity("Exotic"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Damage", amount = "+50%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Health", amount = "-10%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "+10%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "+5", simepleAmount = (SimpleAmount)0 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { Dictionary> dictionary = new Dictionary>(); 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["health"](0.9f); dictionary["reload"](1.1f); dictionary["ammo"](5f); } } public class Test : 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 = "Test"; val.Description = "test card"; val.ModName = "DontUseThisMod"; val.Rarity = RarityUtils.GetRarity("Divine"); val.Theme = (CardThemeColorType)0; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[7] { new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "+500%", simepleAmount = (SimpleAmount)4 }, new CardInfoStat { positive = true, stat = "Attack Speed", amount = "+500%", simepleAmount = (SimpleAmount)4 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-500%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Time Between Bullets", amount = "-10 seconds", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bursts", amount = "+10", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+10", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "+100", simepleAmount = (SimpleAmount)0 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { Dictionary> dictionary = new Dictionary>(); 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["bulletSpeed"](6f); dictionary["attackSpeed"](6f); dictionary["reload"](-4f); dictionary["timeBetweenBullets"](-10f); dictionary["bursts"](10f); dictionary["projectiles"](10f); dictionary["ammo"](100f); } }