Decompiled source of OverBlocked v0.2.1
OverBlocked.dll
Decompiled a month 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("OverBlocked")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("OverBlocked")] [assembly: AssemblyTitle("OverBlocked")] [assembly: AssemblyVersion("1.0.0.0")] public class ArmoredShell : 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 = "Armored Shell"; val.Description = "Gives you a new defense stat, should be more good on tank people"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)2; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Armor Health", amount = "+125", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Ammunition", amount = "-3", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-31%", simepleAmount = (SimpleAmount)6 } }; 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["blocksamount"](1f); dictionary["ammo"](-3f); dictionary["health"](0.7f); } 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"](125f); } } public class Broccoli : 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 = "Broccoli"; val.Description = "Good food to stay healthy."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Rare"); val.Theme = (CardThemeColorType)6; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Movement Speed", amount = "+19%", simepleAmount = (SimpleAmount)1 }, new CardInfoStat { positive = true, stat = "Block Cooldown", amount = "-20%", simepleAmount = (SimpleAmount)5 }, new CardInfoStat { positive = false, stat = "Health", amount = "-31%", simepleAmount = (SimpleAmount)6 } }; 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["movementspeed"](1.2f); dictionary["blockcooldown"](0.8f); dictionary["health"](0.7f); } 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 CSHarpDLL : 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 = "CSHarpDLL"; val.Description = "Today we learn CSharp guys.. GET READY"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)5; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Movement Speed", amount = "+19%", simepleAmount = (SimpleAmount)1 }, new CardInfoStat { positive = false, stat = "Damage", amount = "-20%", simepleAmount = (SimpleAmount)5 } }; 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["movementspeed"](1.2f); dictionary["damage"](0.8f); } 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 DefinitiveBlocking : 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 = "Definitive Blocking"; val.Description = "Something to start blocking"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-50%", simepleAmount = (SimpleAmount)6 } }; 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["blocksamount"](1f); dictionary["health"](0.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; } }, { "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 DiamondShell : 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 = "Diamond Shell"; val.Description = "Gucci Diamant :D"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Legendary"); val.Theme = (CardThemeColorType)1; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Armor Health", amount = "+150", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-20%", simepleAmount = (SimpleAmount)5 }, new CardInfoStat { positive = false, stat = "Movement Speed", amount = "-10%", simepleAmount = (SimpleAmount)5 } }; 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["health"](0.8f); dictionary["movementspeed"](0.9f); } 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"](150f); } } public class ExfulgatedTrinity : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_0104: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Expected O, but got Unknown //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_0136: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Exfulgated Trinity"; val.Description = "Ximochiua se tlen nopa chikuasej dioses"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Mythical"); val.Theme = (CardThemeColorType)0; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[5] { new CardInfoStat { positive = true, stat = "Health", amount = "+60%", simepleAmount = (SimpleAmount)3 }, new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+5", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Bullet Speed", amount = "-150%", simepleAmount = (SimpleAmount)7 }, new CardInfoStat { positive = false, stat = "Lifesteal", amount = "-31%", simepleAmount = (SimpleAmount)6 }, new CardInfoStat { positive = false, stat = "Reload Time", amount = "-70%", 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["health"](1.6f); dictionary["blocksamount"](5f); dictionary["bulletSpeed"](-0.5f); dictionary["lifesteal"](0.7f); dictionary["reload"](0.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 FatGrease : 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 = "Fat Grease"; val.Description = "Die harder while mocking them hard."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)5; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Health", amount = "+89%", simepleAmount = (SimpleAmount)3 }, new CardInfoStat { positive = false, stat = "Movement Speed", amount = "-40%", simepleAmount = (SimpleAmount)6 } }; 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["health"](1.9f); dictionary["movementspeed"](0.6f); } 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 FieryDivinium : SimpleCard { public override CardDetails Details { get { //IL_0000: Unknown result type (might be due to invalid IL or missing references) //IL_0006: Expected O, but got Unknown //IL_002d: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) //IL_0061: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Unknown result type (might be due to invalid IL or missing references) //IL_0073: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_0086: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0094: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00b2: Expected O, but got Unknown //IL_00b4: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00c0: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d6: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Expected O, but got Unknown //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_0102: Unknown result type (might be due to invalid IL or missing references) //IL_0104: Unknown result type (might be due to invalid IL or missing references) //IL_010a: Expected O, but got Unknown //IL_010c: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) //IL_0118: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_012e: Unknown result type (might be due to invalid IL or missing references) //IL_0130: Unknown result type (might be due to invalid IL or missing references) //IL_0136: Expected O, but got Unknown //IL_0138: Unknown result type (might be due to invalid IL or missing references) //IL_013d: Unknown result type (might be due to invalid IL or missing references) //IL_0144: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_015a: Unknown result type (might be due to invalid IL or missing references) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_0162: Expected O, but got Unknown //IL_0164: Unknown result type (might be due to invalid IL or missing references) //IL_0169: Unknown result type (might be due to invalid IL or missing references) //IL_0170: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_0186: Unknown result type (might be due to invalid IL or missing references) //IL_0188: Unknown result type (might be due to invalid IL or missing references) //IL_018e: Expected O, but got Unknown CardDetails val = new CardDetails(); val.Title = "Fiery Divinium"; val.Description = "FEAR THE POWER OF A DIVINIUM ROUND"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Unique"); val.Theme = (CardThemeColorType)0; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[7] { new CardInfoStat { positive = true, stat = "Health", amount = "+400%", simepleAmount = (SimpleAmount)4 }, new CardInfoStat { positive = true, stat = "Movement Speed", amount = "+50%", simepleAmount = (SimpleAmount)3 }, new CardInfoStat { positive = true, stat = "Lifesteal", amount = "+50%", simepleAmount = (SimpleAmount)3 }, new CardInfoStat { positive = true, stat = "Block Cooldown", amount = "-50%", simepleAmount = (SimpleAmount)7 }, new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+5", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Heal Amount", amount = "+250", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Total Jumps", 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["health"](5f); dictionary["movementspeed"](1.5f); dictionary["lifesteal"](1.5f); dictionary["blockcooldown"](0.5f); dictionary["blocksamount"](5f); dictionary["blockhealamount"](250f); dictionary["numberofjumps"](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; } }, { "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 Gigantous : 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 = "Gigantous"; val.Description = "Just imagine.. lemme scale my man."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Trinket"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Health", amount = "+10%", simepleAmount = (SimpleAmount)1 }, new CardInfoStat { positive = false, stat = "Size", amount = "+10%", simepleAmount = (SimpleAmount)1 } }; 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["health"](1.1f); dictionary["size"](1.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 GoingAboveandBeyond : 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 = "Going Above and Beyond"; val.Description = "Strike higher and stronger"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)4; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Block Cooldown", amount = "-40%", simepleAmount = (SimpleAmount)6 }, new CardInfoStat { positive = false, stat = "Health", amount = "-50%", simepleAmount = (SimpleAmount)6 } }; 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["blockcooldown"](0.6f); dictionary["health"](0.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; } }, { "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 GoingBelowAndStronger : 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 = "Going Below And Stronger"; val.Description = "Strike fattier you fat f**k"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)4; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Health", amount = "+89%", simepleAmount = (SimpleAmount)3 }, new CardInfoStat { positive = true, stat = "Additional Blocks", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Block Cooldown", amount = "+50%", simepleAmount = (SimpleAmount)3 } }; return val; } } public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block) { Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>(); dictionary.Add("damage", delegate(float val) { gun.damage = val; }); dictionary.Add("health", delegate(float val) { statModifiers.health = val; }); dictionary.Add("reload", delegate(float val) { gun.reloadTime = val; }); dictionary.Add("ammo", delegate(float val) { gun.ammo = (int)val; }); dictionary.Add("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["health"](1.9f); dictionary["blocksamount"](1f); dictionary["blockcooldown"](1.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; } }, { "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 GoldShell : 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 = "Gold Shell"; val.Description = "not strong either"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Rare"); val.Theme = (CardThemeColorType)1; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Armor Health", amount = "+70", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Movement Speed", amount = "-10%", simepleAmount = (SimpleAmount)5 } }; 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["movementspeed"](0.9f); } 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"](70f); } } public class GravityModulator : 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 = "Gravity Modulator"; val.Description = "Inverts or Reverts its Gravity around you... No.. it does not add effects, YET..."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Common"); val.Theme = (CardThemeColorType)3; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[1] { new CardInfoStat { positive = true, stat = "Gravity", amount = "-31%", simepleAmount = (SimpleAmount)5 } }; 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["gravity"](0.7f); } 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 GuardianAngel : 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 = "Guardian Angel"; val.Description = "Revive my child."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Rare"); val.Theme = (CardThemeColorType)4; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[4] { new CardInfoStat { positive = true, stat = "Respawns", amount = "+1", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = true, stat = "Armor Health", amount = "+45", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-31%", simepleAmount = (SimpleAmount)6 }, new CardInfoStat { positive = false, stat = "Damage", amount = "-50%", simepleAmount = (SimpleAmount)6 } }; 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["respawns"](1f); dictionary["health"](0.7f); dictionary["damage"](0.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>(); 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"](45f); } } public class HealingInstinct : 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 = "Healing Instinct"; val.Description = "Instinctly healing yourself while fighting opponents is a good idea"; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Legendary"); val.Theme = (CardThemeColorType)2; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[3] { new CardInfoStat { positive = true, stat = "Heal Amount", amount = "+200", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Health", amount = "-40%", simepleAmount = (SimpleAmount)6 }, new CardInfoStat { positive = false, stat = "Damage", amount = "-60%", 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["blockhealamount"](200f); dictionary["health"](0.6f); dictionary["damage"](0.4f); } 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 Infinitode : 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 = "Infinitode"; val.Description = "Do you have now enough ? HUH ??......."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Epic"); val.Theme = (CardThemeColorType)4; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { new CardInfoStat { positive = true, stat = "Total Jumps", amount = "+9999", simepleAmount = (SimpleAmount)0 }, new CardInfoStat { positive = false, stat = "Movement Speed", amount = "-40%", simepleAmount = (SimpleAmount)6 } }; 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["numberofjumps"](9999f); dictionary["movementspeed"](0.6f); } 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 InterceperReloaded : 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 = "Interceper Reloaded"; val.Description = "your Armor regenerates a little faster."; val.ModName = "OverBlocked"; val.Rarity = RarityUtils.GetRarity("Uncommon"); val.Theme = (CardThemeColorType)2; val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png"); val.Stats = (CardInfoStat[])(object)new CardInfoStat[2] { 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 c