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("FreeCardpack")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("FreeCardpack")] [assembly: AssemblyTitle("FreeCardpack")] [assembly: AssemblyVersion("1.0.0.0")] 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; } } public class Cheats : 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 //IL_01ea: Unknown result type (might be due to invalid IL or missing references) //IL_01ef: Unknown result type (might be due to invalid IL or missing references) //IL_01f6: Unknown result type (might be due to invalid IL or missing references) //IL_0201: Unknown result type (might be due to invalid IL or missing references) //IL_020c: Unknown result type (might be due to invalid IL or missing references) //IL_020e: Unknown result type (might be due to invalid IL or missing references) //IL_0214: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Cheats"; val.Description = "Welp ive won i turned on my cheats"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Divine"); val.Theme = (CardThemeColorType)4; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[10] { new CardInfoStat { positive = true, stat = "Damage", amount = "+500%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Health", amount = "+500%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-500%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "+100", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+10", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bursts", amount = "+10", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Time Between Bullets", amount = "-5 seconds", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Attack Speed", amount = "-500%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bounces", amount = "+100", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "+500%", 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"](6f); dictionary["health"](6f); dictionary["reload"](-4f); dictionary["ammo"](100f); dictionary["projectiles"](10f); dictionary["bursts"](10f); dictionary["timeBetweenBullets"](-5f); dictionary["attackSpeed"](-4f); dictionary["bounces"](100f); dictionary["bulletSpeed"](6f); } } public class CoreIllusionFormulas : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Core Illusion Formulas"; val.Description = "Your New Toolkit"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Attack Speed", amount = "+19%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Reload Time", amount = "+10%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Damage", amount = "-10%", 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.2f); dictionary["reload"](1.1f); dictionary["damage"](0.9f); } } public class Executioner : 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 CardDetails val = new CardDetails(); val.Title = "Executioner"; val.Description = "*placeholder*"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Damage", amount = "+25%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-15%", 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.25f); dictionary["reload"](0.86f); } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("", "FreeCardpack", "0.1.0")] [BepInProcess("Rounds.exe")] public class FreeCardpackPlugin : BaseUnityPlugin { private const string ModId = ""; private const string ModName = "FreeCardpack"; private const string ModVersion = "0.1.0"; private const string CompatabilityModName = "FreeCardpack"; private void Awake() { CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); CardRegistry.RegisterCard(hidden: false); 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 HeavyCaliber : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Heavy Caliber"; val.Description = "Slow but punishing shots"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Damage", amount = "+50%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "-25%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "+20%", 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["bulletSpeed"](0.75f); dictionary["reload"](1.21f); } } public class NO : 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 CardDetails val = new CardDetails(); val.Title = "NO"; val.Description = "NOOOOOO"; val.ModName = "FreeCardpack"; 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[2] { new CardInfoStat { positive = false, stat = "Damage", amount = "-50%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+3", 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"](0.5f); dictionary["projectiles"](3f); } } public class noname : 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 = "no name"; val.Description = "no name for this card yet"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); 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 = "+31%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Health", amount = "-31%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "+10%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "-3", 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.31f); dictionary["health"](0.7f); dictionary["reload"](1.1f); dictionary["ammo"](-3f); } } public class OverclockCore : 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 = "Overclock Core"; val.Description = "Overclock"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = false, stat = "Damage", amount = "-25%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-20%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "+35%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Attack Speed", amount = "+46%", 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"](0.75f); dictionary["health"](0.8f); dictionary["reload"](1.35f); dictionary["attackSpeed"](1.46f); } } public class ScatterCore : 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 CardDetails val = new CardDetails(); val.Title = "Scatter Core"; val.Description = "Scatter"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Projectiles", amount = "+2", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "-30%", 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["projectiles"](2f); dictionary["damage"](0.71f); } } public class SniperBuildStart : 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 = "Sniper Build Start"; val.Description = "Start building out your sniper"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Uncommon"); 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 = "+35%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "-2", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "+100%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-40%", 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.35f); dictionary["ammo"](-2f); dictionary["bulletSpeed"](2f); dictionary["reload"](0.6f); } } 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 = "FreeCardpack"; 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 SuppressiveFire : 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 CardDetails val = new CardDetails(); val.Title = "Suppressive Fire"; val.Description = "Bullet spam archetype"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Attack Speed", amount = "+25%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "-20%", 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.25f); dictionary["damage"](0.8f); } } public class Whatisspread : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "What is spread"; val.Description = "shoot multiple bullets stacked on top of each other"; val.ModName = "FreeCardpack"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Ammunition", amount = "+3", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+2", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "-20%", 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["ammo"](3f); dictionary["projectiles"](2f); dictionary["damage"](0.8f); } }