Decompiled source of BCM v2.5.5
BCM.dll
Decompiled 2 weeks ago
The result has been truncated due to the large size, download it to view full contents!
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 JARL.Armor; using JARL.Armor.Bases; using JARL.Armor.Builtin; 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("BCM")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("BCM")] [assembly: AssemblyTitle("BCM")] [assembly: AssemblyVersion("1.0.0.0")] public class Backwards : 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 = "Backwards"; val.Description = "Trade aim for da win"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)7; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "-400%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "+1000%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["bulletSpeed"](-3f); dictionary["damage"](11f); dictionary["reload"](2f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInPlugin("bunnie.cards.mod", "BCM", "2.5.5")] [BepInProcess("Rounds.exe")] public class BCMPlugin : BaseUnityPlugin { private const string ModId = "bunnie.cards.mod"; private const string ModName = "BCM"; private const string ModVersion = "2.5.5"; private const string CompatabilityModName = "BCM"; private void Awake() { //IL_00c8: Unknown result type (might be due to invalid IL or missing references) //IL_00cd: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00e3: Unknown result type (might be due to invalid IL or missing references) CardRegistry.RegisterCard<Kamehameha>(hidden: false); CardRegistry.RegisterCard<PlinkoTime>(hidden: false); CardRegistry.RegisterCard<InfiniteBullets>(hidden: false); CardRegistry.RegisterCard<OneShotWonder>(hidden: false); CardRegistry.RegisterCard<RealBulletsNow>(hidden: false); CardRegistry.RegisterCard<SonicDaHedgehog>(hidden: false); CardRegistry.RegisterCard<TheWholeClip>(hidden: false); CardRegistry.RegisterCard<MachineGun>(hidden: false); CardRegistry.RegisterCard<SmolAndSpeedy>(hidden: false); CardRegistry.RegisterCard<KingOfBlocks>(hidden: false); CardRegistry.RegisterCard<Invincible>(hidden: false); CardRegistry.RegisterCard<GigaGlassCannon>(hidden: false); CardRegistry.RegisterCard<SizeTrade>(hidden: false); CardRegistry.RegisterCard<FlippedButMighty>(hidden: false); CardRegistry.RegisterCard<Lightweight>(hidden: false); CardRegistry.RegisterCard<ReverseGlassCannon>(hidden: false); CardRegistry.RegisterCard<Generalbuff>(hidden: false); CardRegistry.RegisterCard<FlightTime>(hidden: false); CardRegistry.RegisterCard<TurretMode>(hidden: false); CardRegistry.RegisterCard<HeavyDuty>(hidden: false); CardRegistry.RegisterCard<IronClad>(hidden: false); CardRegistry.RegisterCard<LeatherClad>(hidden: false); CardRegistry.RegisterCard<SilkClad>(hidden: false); CardRegistry.RegisterCard<RaidBoss>(hidden: false); CardRegistry.RegisterCard<LilBuff>(hidden: false); CardRegistry.RegisterCard<Backwards>(hidden: false); CardRegistry.RegisterCard<EchoBullets>(hidden: false); CardRegistry.RegisterCard<BigChungus>(hidden: false); CardRegistry.RegisterCard<SniperRifle>(hidden: false); RarityUtils.AddRarity("Exordium", 0.003f, Color32.op_Implicit(new Color32((byte)199, (byte)209, (byte)130, (byte)0)), Color32.op_Implicit(new Color32((byte)0, (byte)199, (byte)209, (byte)0))); } private void Start() { //IL_0005: Unknown result type (might be due to invalid IL or missing references) new Harmony("bunnie.cards.mod").PatchAll(); } } public class BigChungus : 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 = "Big Chungus"; val.Description = "U Fat Now XD"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Health", amount = "+400%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Movement Speed", amount = "-90%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Gravity", amount = "+200%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Size", amount = "+200%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["health"](5f); dictionary["movementspeed"](0.1f); dictionary["gravity"](3f); dictionary["size"](3f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } 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 EchoBullets : 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 = "Echo Bullets"; val.Description = "They come back now"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Bounces", amount = "+5", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bursts", amount = "+3", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Time Between Bullets", amount = "+10 seconds", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "-25%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["bounces"](5f); dictionary["bursts"](3f); dictionary["timeBetweenBullets"](10f); dictionary["damage"](0.75f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class FlightTime : 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 = "Flight Time"; val.Description = "I BELIVE I CAN FLY!"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Gravity", amount = "-99%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Movement Speed", amount = "+100%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Total Jumps", amount = "+10000", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["gravity"](0.01f); dictionary["movementspeed"](2f); dictionary["numberofjumps"](10000f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class FlippedButMighty : 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 = "Flipped But Mighty"; val.Description = "Hope There's a Ceiling"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Exotic"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Damage", amount = "+150%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Gravity", amount = "-125%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "-200%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Movement Speed", amount = "-200%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["damage"](2.5f); dictionary["gravity"](-0.25f); dictionary["bulletSpeed"](-1f); dictionary["movementspeed"](-1f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class Generalbuff : 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 //IL_0217: Unknown result type (might be due to invalid IL or missing references) //IL_021c: Unknown result type (might be due to invalid IL or missing references) //IL_0223: Unknown result type (might be due to invalid IL or missing references) //IL_022e: Unknown result type (might be due to invalid IL or missing references) //IL_0239: Unknown result type (might be due to invalid IL or missing references) //IL_023b: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Expected O, but got Unknown //IL_0244: Unknown result type (might be due to invalid IL or missing references) //IL_0249: Unknown result type (might be due to invalid IL or missing references) //IL_0250: Unknown result type (might be due to invalid IL or missing references) //IL_025b: Unknown result type (might be due to invalid IL or missing references) //IL_0266: Unknown result type (might be due to invalid IL or missing references) //IL_0268: Unknown result type (might be due to invalid IL or missing references) //IL_026e: Expected O, but got Unknown //IL_0271: Unknown result type (might be due to invalid IL or missing references) //IL_0276: Unknown result type (might be due to invalid IL or missing references) //IL_027d: Unknown result type (might be due to invalid IL or missing references) //IL_0288: Unknown result type (might be due to invalid IL or missing references) //IL_0293: Unknown result type (might be due to invalid IL or missing references) //IL_0295: Unknown result type (might be due to invalid IL or missing references) //IL_029b: Expected O, but got Unknown //IL_029e: Unknown result type (might be due to invalid IL or missing references) //IL_02a3: Unknown result type (might be due to invalid IL or missing references) //IL_02aa: Unknown result type (might be due to invalid IL or missing references) //IL_02b5: Unknown result type (might be due to invalid IL or missing references) //IL_02c0: Unknown result type (might be due to invalid IL or missing references) //IL_02c2: Unknown result type (might be due to invalid IL or missing references) //IL_02c8: Expected O, but got Unknown //IL_02cb: Unknown result type (might be due to invalid IL or missing references) //IL_02d0: Unknown result type (might be due to invalid IL or missing references) //IL_02d7: Unknown result type (might be due to invalid IL or missing references) //IL_02e2: Unknown result type (might be due to invalid IL or missing references) //IL_02ed: Unknown result type (might be due to invalid IL or missing references) //IL_02ef: Unknown result type (might be due to invalid IL or missing references) //IL_02f5: Expected O, but got Unknown //IL_02f8: Unknown result type (might be due to invalid IL or missing references) //IL_02fd: Unknown result type (might be due to invalid IL or missing references) //IL_0304: Unknown result type (might be due to invalid IL or missing references) //IL_030f: Unknown result type (might be due to invalid IL or missing references) //IL_031a: Unknown result type (might be due to invalid IL or missing references) //IL_031c: Unknown result type (might be due to invalid IL or missing references) //IL_0322: Expected O, but got Unknown //IL_0325: Unknown result type (might be due to invalid IL or missing references) //IL_032a: Unknown result type (might be due to invalid IL or missing references) //IL_0331: Unknown result type (might be due to invalid IL or missing references) //IL_033c: Unknown result type (might be due to invalid IL or missing references) //IL_0347: Unknown result type (might be due to invalid IL or missing references) //IL_0349: Unknown result type (might be due to invalid IL or missing references) //IL_034f: Expected O, but got Unknown //IL_0352: Unknown result type (might be due to invalid IL or missing references) //IL_0357: Unknown result type (might be due to invalid IL or missing references) //IL_035e: Unknown result type (might be due to invalid IL or missing references) //IL_0369: Unknown result type (might be due to invalid IL or missing references) //IL_0374: Unknown result type (might be due to invalid IL or missing references) //IL_0376: Unknown result type (might be due to invalid IL or missing references) //IL_037c: Expected O, but got Unknown //IL_037f: Unknown result type (might be due to invalid IL or missing references) //IL_0384: Unknown result type (might be due to invalid IL or missing references) //IL_038b: Unknown result type (might be due to invalid IL or missing references) //IL_0396: Unknown result type (might be due to invalid IL or missing references) //IL_03a1: Unknown result type (might be due to invalid IL or missing references) //IL_03a3: Unknown result type (might be due to invalid IL or missing references) //IL_03a9: Expected O, but got Unknown //IL_03ac: Unknown result type (might be due to invalid IL or missing references) //IL_03b1: Unknown result type (might be due to invalid IL or missing references) //IL_03b8: Unknown result type (might be due to invalid IL or missing references) //IL_03c3: Unknown result type (might be due to invalid IL or missing references) //IL_03ce: Unknown result type (might be due to invalid IL or missing references) //IL_03d0: Unknown result type (might be due to invalid IL or missing references) //IL_03d6: Expected O, but got Unknown //IL_03d9: Unknown result type (might be due to invalid IL or missing references) //IL_03de: Unknown result type (might be due to invalid IL or missing references) //IL_03e5: Unknown result type (might be due to invalid IL or missing references) //IL_03f0: Unknown result type (might be due to invalid IL or missing references) //IL_03fb: Unknown result type (might be due to invalid IL or missing references) //IL_03fd: Unknown result type (might be due to invalid IL or missing references) //IL_0403: Expected O, but got Unknown //IL_0406: Unknown result type (might be due to invalid IL or missing references) //IL_040b: Unknown result type (might be due to invalid IL or missing references) //IL_0412: Unknown result type (might be due to invalid IL or missing references) //IL_041d: Unknown result type (might be due to invalid IL or missing references) //IL_0428: Unknown result type (might be due to invalid IL or missing references) //IL_042a: Unknown result type (might be due to invalid IL or missing references) //IL_0430: Expected O, but got Unknown //IL_0433: Unknown result type (might be due to invalid IL or missing references) //IL_0438: Unknown result type (might be due to invalid IL or missing references) //IL_043f: Unknown result type (might be due to invalid IL or missing references) //IL_044a: Unknown result type (might be due to invalid IL or missing references) //IL_0455: Unknown result type (might be due to invalid IL or missing references) //IL_0457: Unknown result type (might be due to invalid IL or missing references) //IL_045d: Expected O, but got Unknown //IL_0460: Unknown result type (might be due to invalid IL or missing references) //IL_0465: Unknown result type (might be due to invalid IL or missing references) //IL_046c: Unknown result type (might be due to invalid IL or missing references) //IL_0477: Unknown result type (might be due to invalid IL or missing references) //IL_0482: Unknown result type (might be due to invalid IL or missing references) //IL_0484: Unknown result type (might be due to invalid IL or missing references) //IL_048a: Expected O, but got Unknown //IL_048d: Unknown result type (might be due to invalid IL or missing references) //IL_0492: Unknown result type (might be due to invalid IL or missing references) //IL_0499: Unknown result type (might be due to invalid IL or missing references) //IL_04a4: Unknown result type (might be due to invalid IL or missing references) //IL_04af: Unknown result type (might be due to invalid IL or missing references) //IL_04b1: Unknown result type (might be due to invalid IL or missing references) //IL_04b7: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "General buff"; val.Description = "A little buff to everything"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[25] { new CardInfoStat { positive = true, stat = "Damage", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Health", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "-5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammunition", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Attack Speed", amount = "-5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bounces", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Bullet Speed", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Block Cooldown", amount = "-5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Lifesteal", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Size", amount = "-5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Movement Speed", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectile Size", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Projectiles", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Heal Amount", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Respawns", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Total Jumps", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Slow", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Knockback", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Gravity", amount = "-5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Ammo Regeneration", amount = "+5%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Health", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Regeneration", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Regen Cooldown", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Spread", amount = "-5%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["damage"](1.05f); dictionary["health"](1.05f); dictionary["reload"](0.96f); dictionary["ammo"](1f); dictionary["attackSpeed"](0.96f); dictionary["bounces"](1f); dictionary["bulletSpeed"](1.05f); dictionary["blocksamount"](1f); dictionary["blockcooldown"](0.96f); dictionary["lifesteal"](1.05f); dictionary["size"](0.96f); dictionary["movementspeed"](1.05f); dictionary["projectilesize"](1.05f); dictionary["projectiles"](1f); dictionary["blockhealamount"](1f); dictionary["respawns"](1f); dictionary["numberofjumps"](1f); dictionary["slow"](1.05f); dictionary["knockback"](1.05f); dictionary["gravity"](0.96f); dictionary["ammoregeneration"](1.05f); dictionary["spread"](0.96f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>(); dictionary.Add("armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; }); dictionary.Add("armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; }); dictionary.Add("regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } }); dictionary.Add("reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } }); dictionary["armorHealth"](1f); dictionary["armorRegen"](1f); dictionary["regenCooldownSeconds"](1f); } } public class GigaGlassCannon : 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 = "Giga Glass Cannon"; val.Description = "DAMAGE!!!!!!"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Rare"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Damage", amount = "+9900%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Health", amount = "-99%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["damage"](100f); dictionary["health"](0.01f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class HeavyDuty : 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 Duty"; val.Description = "Heavy hitting but Heavy"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Movement Speed", amount = "-25%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Gravity", amount = "+200%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Damage", amount = "+200%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["movementspeed"](0.75f); dictionary["gravity"](3f); dictionary["damage"](3f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class InfiniteBullets : 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 CardDetails val = new CardDetails(); val.Title = "Infinite Bullets"; val.Description = "It just gives you infinite bullets, it's quite simple."; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)1; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[1] { new CardInfoStat { positive = false, stat = "Reload Time", amount = "-100%", simepleAmount = (SimpleAmount)7 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>(); dictionary.Add("damage", delegate(float val) { gun.damage = val; }); dictionary.Add("health", delegate(float val) { statModifiers.health = val; }); dictionary.Add("reload", delegate(float val) { gun.reloadTime = val; }); dictionary.Add("ammo", delegate(float val) { gun.ammo = (int)val; }); dictionary.Add("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["reload"](0f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }, { "regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } } }, { "reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } } } }; } } public class Invincible : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_0104: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Expected O, but got Unknown //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_0136: Expected O, but got Unknown //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Unknown result type (might be due to invalid IL or missing references) //IL_0144: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Unknown result type (might be due to invalid IL or missing references) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Invincible"; val.Description = "Time To Win"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Exordium"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[6] { new CardInfoStat { positive = true, stat = "Health", amount = "+9900%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Respawns", amount = "+10000", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Health", amount = "+1000000", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Regeneration", amount = "+1000000", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Regen Cooldown", amount = "+0", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Size", amount = "-75%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["health"](100f); dictionary["respawns"](10000f); dictionary["size"](0.25f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>(); dictionary.Add("armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; }); dictionary.Add("armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; }); dictionary.Add("regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } }); dictionary.Add("reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } }); dictionary["armorHealth"](1000000f); dictionary["armorRegen"](1000000f); dictionary["regenCooldownSeconds"](0f); } } public class IronClad : 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 = "Iron Clad"; val.Description = "It's armour time!"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Armor Health", amount = "+200", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Regeneration", amount = "+2", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Regen Cooldown", amount = "+1", simepleAmount = (SimpleAmount)0 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { new Dictionary<string, Action<float>> { { "damage", delegate(float val) { gun.damage = val; } }, { "health", delegate(float val) { statModifiers.health = val; } }, { "reload", delegate(float val) { gun.reloadTime = val; } }, { "ammo", delegate(float val) { gun.ammo = (int)val; } }, { "ammoregeneration", delegate(float val) { gun.ammoReg = val; } }, { "projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); } }, { "projectilesize", delegate(float val) { gun.projectileSize = val; } }, { "bursts", delegate(float val) { gun.bursts = (int)val; } }, { "timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; } }, { "knockback", delegate(float val) { gun.knockback = val; } }, { "attackSpeed", delegate(float val) { gun.attackSpeed = val; } }, { "bounces", delegate(float val) { gun.reflects = (int)val; } }, { "bulletSpeed", delegate(float val) { gun.projectileSpeed = val; } }, { "blocksamount", delegate(float val) { block.additionalBlocks = (int)val; } }, { "blockhealamount", delegate(float val) { block.healing = (int)val; } }, { "blockcooldown", delegate(float val) { block.cdMultiplier = val; } }, { "lifesteal", delegate(float val) { statModifiers.lifeSteal = val; } }, { "respawns", delegate(float val) { statModifiers.respawns = (int)val; } }, { "numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; } }, { "gravity", delegate(float val) { statModifiers.gravity = val; } }, { "size", delegate(float val) { statModifiers.sizeMultiplier = val; } }, { "movementspeed", delegate(float val) { statModifiers.movementSpeed = val; } }, { "spread", delegate(float val) { gun.spread = (int)val; } }, { "slow", delegate(float val) { gun.slow = val; } } }; } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>(); dictionary.Add("armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; }); dictionary.Add("armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; }); dictionary.Add("regenCooldownSeconds", delegate(float val) { if (armor.ArmorRegenCooldownSeconds < val) { armor.ArmorRegenCooldownSeconds = val; } }); dictionary.Add("reactivateAfterSeconds", delegate(float val) { armor.reactivateArmorType = (ArmorReactivateType)1; if (armor.reactivateArmorValue < val) { armor.reactivateArmorValue = val; } }); dictionary["armorHealth"](200f); dictionary["armorRegen"](2f); dictionary["regenCooldownSeconds"](1f); } } public class Kamehameha : 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 //IL_0190: Unknown result type (might be due to invalid IL or missing references) //IL_0195: Unknown result type (might be due to invalid IL or missing references) //IL_019c: Unknown result type (might be due to invalid IL or missing references) //IL_01a7: Unknown result type (might be due to invalid IL or missing references) //IL_01b2: Unknown result type (might be due to invalid IL or missing references) //IL_01b4: Unknown result type (might be due to invalid IL or missing references) //IL_01ba: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Kamehameha"; val.Description = "Time to go super saiyan"; val.ModName = "BCM"; val.Rarity = RarityUtils.GetRarity("Mythical"); val.Theme = (CardThemeColorType)0; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("C:\\Users\\logan\\Documents\\rounds mod\\data\\CardIcon.png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[8] { new CardInfoStat { positive = false, stat = "Damage", amount = "+9900%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Ammunition", amount = "+100", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Attack Speed", amount = "-2000%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Bullet Speed", amount = "+400%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Bursts", amount = "+100", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Time Between Bullets", amount = "+0.2 seconds", simepleAmount = (SimpleAmount)1 }, new CardInfoStat { positive = false, stat = "Health", amount = "+100%", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Reload Time", amount = "+400%", 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("ammoregeneration", delegate(float val) { gun.ammoReg = val; }); dictionary.Add("projectiles", delegate(float val) { gun.numberOfProjectiles = Mathf.Max(1, (int)val); }); dictionary.Add("projectilesize", delegate(float val) { gun.projectileSize = val; }); dictionary.Add("bursts", delegate(float val) { gun.bursts = (int)val; }); dictionary.Add("timeBetweenBullets", delegate(float val) { gun.timeBetweenBullets = val; }); dictionary.Add("knockback", delegate(float val) { gun.knockback = val; }); dictionary.Add("attackSpeed", delegate(float val) { gun.attackSpeed = val; }); dictionary.Add("bounces", delegate(float val) { gun.reflects = (int)val; }); dictionary.Add("bulletSpeed", delegate(float val) { gun.projectileSpeed = val; }); dictionary.Add("blocksamount", delegate(float val) { block.additionalBlocks = (int)val; }); dictionary.Add("blockhealamount", delegate(float val) { block.healing = (int)val; }); dictionary.Add("blockcooldown", delegate(float val) { block.cdMultiplier = val; }); dictionary.Add("lifesteal", delegate(float val) { statModifiers.lifeSteal = val; }); dictionary.Add("respawns", delegate(float val) { statModifiers.respawns = (int)val; }); dictionary.Add("numberofjumps", delegate(float val) { statModifiers.numberOfJumps = (int)val; }); dictionary.Add("gravity", delegate(float val) { statModifiers.gravity = val; }); dictionary.Add("size", delegate(float val) { statModifiers.sizeMultiplier = val; }); dictionary.Add("movementspeed", delegate(float val) { statModifiers.movementSpeed = val; }); dictionary.Add("spread", delegate(float val) { gun.spread = (int)val; }); dictionary.Add("slow", delegate(float val) { gun.slow = val; }); dictionary["damage"](100f); dictionary["ammo"](100f); dictionary["attackSpeed"](-19f); dictionary["bulletSpeed"](5f); dictionary["bursts"](100f); dictionary["timeBetweenBullets"](0.2f); dictionary["health"](2f); dictionary["reload"](5f); } protected override void Added(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats) { ArmorBase armor = ArmorFramework.ArmorHandlers[player].GetArmorByType<DefaultArmor>(); new Dictionary<string, Action<float>> { { "armorHealth", delegate(float val) { ArmorBase obj2 = armor; obj2.MaxArmorValue += (float)(int)val; } }, { "armorRegen", delegate(float val) { ArmorBase obj = armor; obj.ArmorRegenerationRate += val; } }