using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using HarmonyLib;
using ModdingUtils.Utils;
using ModsPlus;
using RarityLib.Utils;
using UnboundLib.Cards;
using UnityEngine;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("GunnersExtraCards")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("GunnersExtraCards")]
[assembly: AssemblyTitle("GunnersExtraCards")]
[assembly: AssemblyVersion("1.0.0.0")]
public class ANiceSandwich : 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 = "A Nice Sandwich";
val.Description = "Salami, pepperoni, bacon, and all the things to make you feel strong again";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Uncommon");
val.Theme = (CardThemeColorType)6;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/60e53342de4d450f/ChatGPT%20Image%20Apr%2023,%202025,%2012_57_52%20AM.png?Expires=1839995936&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=i9soLjPsGaAVAwFqGmCGY61-WjSHpWlu33OJLF8YDmpMXKFuA~3i1Ubxr38lrY7D4DcIs9a0mHP9WZy5nTdh5Ji7FzliRANACarvI676GFTF4641PKCG40TSVts9aUOkGKwwMNj8MD56w6~Ma3a1hyHnbof1IBUwl7hTWQDx2KHHN7l1ttww4Z6nXZplistpD8CgXZusAdVKMlpNzQjKYeD3LVL07t9LGv7xst3GaEMFMs~OZ3qpXmJkaF0nTLixAGTrjmSM1WgIjQFCuKQS89fLsOcSLdLKU4bYqGzKfJ67hBmmoTFBDDtbhFWvdb8Kel6VydVDV6JFIptlisC0ww__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+10%",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+19%",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Reload Time",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["damage"](1.1f);
dictionary["health"](1.2f);
dictionary["reload"](0.9f);
}
}
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 ChaosGodsBlessing : SimpleCard
{
public override CardDetails Details
{
get
{
//IL_0000: Unknown result type (might be due to invalid IL or missing references)
//IL_0006: Expected O, but got Unknown
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_005c: Unknown result type (might be due to invalid IL or missing references)
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0068: Unknown result type (might be due to invalid IL or missing references)
//IL_0073: Unknown result type (might be due to invalid IL or missing references)
//IL_007e: Unknown result type (might be due to invalid IL or missing references)
//IL_0080: Unknown result type (might be due to invalid IL or missing references)
//IL_0086: Expected O, but got Unknown
//IL_0088: Unknown result type (might be due to invalid IL or missing references)
//IL_008d: Unknown result type (might be due to invalid IL or missing references)
//IL_0094: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
//IL_00b2: Expected O, but got Unknown
//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
//IL_00de: Expected O, but got Unknown
//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
//IL_0102: Unknown result type (might be due to invalid IL or missing references)
//IL_0104: Unknown result type (might be due to invalid IL or missing references)
//IL_010a: Expected O, but got Unknown
//IL_010c: Unknown result type (might be due to invalid IL or missing references)
//IL_0111: Unknown result type (might be due to invalid IL or missing references)
//IL_0118: Unknown result type (might be due to invalid IL or missing references)
//IL_0123: Unknown result type (might be due to invalid IL or missing references)
//IL_012e: Unknown result type (might be due to invalid IL or missing references)
//IL_0130: Unknown result type (might be due to invalid IL or missing references)
//IL_0136: Expected O, but got Unknown
//IL_0138: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: Unknown result type (might be due to invalid IL or missing references)
//IL_0144: Unknown result type (might be due to invalid IL or missing references)
//IL_014f: Unknown result type (might be due to invalid IL or missing references)
//IL_015a: Unknown result type (might be due to invalid IL or missing references)
//IL_015c: Unknown result type (might be due to invalid IL or missing references)
//IL_0162: Expected O, but got Unknown
CardDetails val = new CardDetails();
val.Title = "Chaos Gods Blessing";
val.Description = "Muahahaha";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
val.Theme = (CardThemeColorType)4;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/eac34314bc194c41/ChatGPT%20Image%20Apr%2023,%202025,%2001_07_37%20AM.png?Expires=1839996516&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=WzCOA2~foKyZJfMGhPGOZoJuQKb5huVUyc~cEAoZhfTggesksVMu-3nViJaXuHjymYWxDZ4vk4-evFnIm6~7J7qZ8F00hKIgSPoDJpVyaYUZhhfJBc5nk8MK6ucwy08BUNPzJfHegipcjYVtM77ZsdFt9vL5WeYxYlz6einC5jC7BfWvLxdK-m6AULLyhLvoU0dJcpjRWPvjx4VrviM5fISSgnKMlGeFv4QyiGfiTtoTdTXA4s36B3lSupFp4245EyXoeV-LoOcPOLTM9a1kRxXZ5bcHfNeOYFyO93aXqcVBecmKyanXnp7Ej5pHr6CrYmkL8DMwALnAuBwBg1RfOQ__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
{
new CardInfoStat
{
positive = true,
stat = "Bounces",
amount = "+10",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = true,
stat = "Projectiles",
amount = "+1",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-35%",
simepleAmount = (SimpleAmount)6
},
new CardInfoStat
{
positive = true,
stat = "Time Between Bullets",
amount = "+0.22 seconds",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Bursts",
amount = "+15",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+100%",
simepleAmount = (SimpleAmount)4
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["bounces"](10f);
dictionary["projectiles"](1f);
dictionary["damage"](0.65f);
dictionary["timeBetweenBullets"](0.22f);
dictionary["bursts"](15f);
dictionary["reload"](2f);
}
}
public class ConstantFiring : 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 = "Constant Firing";
val.Description = "Once you start you cant stop";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Rare");
val.Theme = (CardThemeColorType)3;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/8d90186bdca2403b/ChatGPT%20Image%20Apr%2019,%202025,%2010_54_05%20PM.png?Expires=1839729294&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=nIxoo8289gOgaoyhcTI3VsnlPoLKmrLnt53h5VlFR-5p8eVYwhoeeWwIxzvr7cL9BUfMFIe69qgR-gC-H9UmFg9Qxmhi27BN2Cb4PMaqnwYitXhpiWAXDf01zVPfnXov434sStcVt88QdvB7oYK3NNqb-M45VZOTRzjBiaxg0BbaUoOSFZEt1y7O3q0pocYcAC-52NU-aOo3Jy2jaJB9u3vFquFkZPCXpfX3O0N8FGLtRhszXgo~~chyL2cWAW5GuUEmktOQm1kqVrlolV8JyxCoGObKZByFj3e2~-Icp4dQUlTPNa6Ar3WU3pDYNlube2udfjDtlHYX8osypoaJvw__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = true,
stat = "Bursts",
amount = "+60",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = true,
stat = "Time Between Bullets",
amount = "+0.425 seconds",
simepleAmount = (SimpleAmount)2
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+1400%",
simepleAmount = (SimpleAmount)4
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["bursts"](60f);
dictionary["timeBetweenBullets"](0.425f);
dictionary["reload"](15f);
}
}
public class FatMansCannon : 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 = "Fat Mans Cannon";
val.Description = "Slow, but powerful";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Uncommon");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/4d3e30598b084bf3/ChatGPT%20Image%20Apr%2015,%202025,%2002_39_30%20PM.png?Expires=1839354028&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=c3v1X4EPTDuuQsyVtarbyZ3p9Zhlkt4~GMB53l37jx-3Il~1a5TTqUKfNyZ-rBk3lx~hm1IDtUOPcVfxRmV6kxTVLUP9yGaMJsRCXjzaNs3OjfD9Z9miyxfCZoewi8mbAdfb9O1zhGtjw8VVtGAXFdtyoKnMuQeMqMsKdVG~dTdD-5K8afBXCtvyIMyH2csWZN9Otl~jAQxz7yk4SDskpzn-H4qLaT7SZVuYibza0CX3gHJ~baC9D0HRDeG~DI-2-CGgvE1BbaZJy~Nmo5WBrxpP-CP3L6MMSpAF-FS8El4NPjRSdw8~whTePU1eHK-K7BG9BtbcZOizrw4~qHYUfg__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Bullet Speed",
amount = "-56%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+150%",
simepleAmount = (SimpleAmount)3
},
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+89%",
simepleAmount = (SimpleAmount)3
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["bulletSpeed"](0.45f);
dictionary["damage"](2.5f);
dictionary["health"](1.9f);
}
}
public class GatlingGun : 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 = "GatlingGun";
val.Description = "Hehe, gun fast";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Uncommon");
val.Theme = (CardThemeColorType)1;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/3163c1db2d9b4a4a/ChatGPT%20Image%20Apr%2014,%202025,%2009_34_51%20PM.png?Expires=1839292554&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=J5XFmuVKZ4miTPSEZzEoh0HsHGQVxxUip0kRZ6TwYn2qHoMdM4fh~5HkDrx2Omz9RSVV3uHUxqBkGMHaNrmJPX3LbSWj7xbJKuwLPEdDw0QV2uB0h8WkIMgX2HoCX32jk1STWWsWqy69qPZaGjEGcwDyunzJQ1IhjAIfUwcHyVjrGld59Xk8u4ixEJCdVvqtxDQTo6pZuYfE-UXfAukX3M91mBRMmEKIDj3PiUMQfF1UeRw3bZK-EcwNSUTg90KaVt3jrIgWBiksfa8ukBPKFqIwBlNb47pfp6WR06LYt4WiqnEXoS2P0br3AYjldYqZhrn049UrQPc7lJ68bJeSQg__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
{
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+20",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-83%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+150%",
simepleAmount = (SimpleAmount)3
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "-31%",
simepleAmount = (SimpleAmount)3
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["ammo"](20f);
dictionary["damage"](0.17f);
dictionary["reload"](2.5f);
dictionary["attackSpeed"](0.7f);
}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("com.gunnercards.rounds.mod", "GunnersExtraCards", "1.0.5")]
[BepInProcess("Rounds.exe")]
public class GunnersExtraCardsPlugin : BaseUnityPlugin
{
private const string ModId = "com.gunnercards.rounds.mod";
private const string ModName = "GunnersExtraCards";
private const string ModVersion = "1.0.5";
private const string CompatabilityModName = "GunnersExtraCards";
private void Awake()
{
CardRegistry.RegisterCard<OneThousandCuts>(hidden: false);
CardRegistry.RegisterCard<GatlingGun>(hidden: false);
CardRegistry.RegisterCard<Sniperman>(hidden: false);
CardRegistry.RegisterCard<OneShotPact>(hidden: false);
CardRegistry.RegisterCard<FatMansCannon>(hidden: false);
CardRegistry.RegisterCard<TitaniumPeashooter>(hidden: false);
CardRegistry.RegisterCard<TrampolinePark>(hidden: false);
CardRegistry.RegisterCard<SlightlyBetter>(hidden: false);
CardRegistry.RegisterCard<ConstantFiring>(hidden: false);
CardRegistry.RegisterCard<ANiceSandwich>(hidden: false);
CardRegistry.RegisterCard<TheHealthiestOrbAlive>(hidden: false);
CardRegistry.RegisterCard<SlowAndSteady>(hidden: false);
CardRegistry.RegisterCard<ChaosGodsBlessing>(hidden: false);
}
private void Start()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
new Harmony("com.gunnercards.rounds.mod").PatchAll();
}
}
public class OneShotPact : SimpleCard
{
public override CardDetails Details
{
get
{
//IL_0000: Unknown result type (might be due to invalid IL or missing references)
//IL_0006: Expected O, but got Unknown
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_005c: Unknown result type (might be due to invalid IL or missing references)
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0068: Unknown result type (might be due to invalid IL or missing references)
//IL_0073: Unknown result type (might be due to invalid IL or missing references)
//IL_007e: Unknown result type (might be due to invalid IL or missing references)
//IL_0080: Unknown result type (might be due to invalid IL or missing references)
//IL_0086: Expected O, but got Unknown
//IL_0088: Unknown result type (might be due to invalid IL or missing references)
//IL_008d: Unknown result type (might be due to invalid IL or missing references)
//IL_0094: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
//IL_00b2: Expected O, but got Unknown
//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
//IL_00de: Expected O, but got Unknown
//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
//IL_0102: Unknown result type (might be due to invalid IL or missing references)
//IL_0104: Unknown result type (might be due to invalid IL or missing references)
//IL_010a: Expected O, but got Unknown
//IL_010c: Unknown result type (might be due to invalid IL or missing references)
//IL_0111: Unknown result type (might be due to invalid IL or missing references)
//IL_0118: Unknown result type (might be due to invalid IL or missing references)
//IL_0123: Unknown result type (might be due to invalid IL or missing references)
//IL_012e: Unknown result type (might be due to invalid IL or missing references)
//IL_0130: Unknown result type (might be due to invalid IL or missing references)
//IL_0136: Expected O, but got Unknown
//IL_0138: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: Unknown result type (might be due to invalid IL or missing references)
//IL_0144: Unknown result type (might be due to invalid IL or missing references)
//IL_014f: Unknown result type (might be due to invalid IL or missing references)
//IL_015a: Unknown result type (might be due to invalid IL or missing references)
//IL_015c: Unknown result type (might be due to invalid IL or missing references)
//IL_0162: Expected O, but got Unknown
CardDetails val = new CardDetails();
val.Title = "One Shot Pact";
val.Description = "Trade almost all health for massive improvements";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Rare");
val.Theme = (CardThemeColorType)4;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/daa8813cdeb74b23/ChatGPT%20Image%20Apr%207,%202025,%2004_54_19%20PM.png?Expires=1838670911&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=lqXlSi0qjjODfV014Va5WUjR6HWyCENFgftD3gSyqmu9p2K1ZVPDhyb-9civQWajTetLxzRpFh9cpqdAJ5k6I4R9rMoRIlu11q0~wqblFtBW3grc2CFN1kFXPm6UuSSl6tidYh1l16dL-KRPPQ6lc3hEf2FjdR72w00OCSOBnuHszPUddZXJfRYPpIXvxj2ImCul1DnePlXyDWH5tVkCZVoohX62E2TcN7F3kBSeuCW1Zrb4XQKy~MQp5EmQ5EovKRD4fu13c0WhbLMjNgJqhf-OXBhByKy3TRpk945CEI~jOfbn4MKJNmElpTBnwVJD-4H4KB5dML3MN2gvs4ukhA__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-90%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+50%",
simepleAmount = (SimpleAmount)2
},
new CardInfoStat
{
positive = true,
stat = "Reload Time",
amount = "-20%",
simepleAmount = (SimpleAmount)6
},
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+3",
simepleAmount = (SimpleAmount)2
},
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "+50%",
simepleAmount = (SimpleAmount)2
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "+0%",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["health"](0.1f);
dictionary["damage"](1.5f);
dictionary["reload"](0.8f);
dictionary["ammo"](3f);
dictionary["bulletSpeed"](1.5f);
dictionary["attackSpeed"](1f);
}
}
public class OneThousandCuts : 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 = "One Thousand Cuts";
val.Description = "Lotsa Bullet, Not so much damage";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Rare");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/23dacd6569d546fe/ChatGPT%20Image%20Apr%2012,%202025,%2010_34_41%20PM.jpg?Expires=1839123357&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=Aw5KYZZXnsWqr1eRYUu3fHQu6AzMRJDBoEOnmkNjGOjwK10UmfKGzt6qB6nGGZpnE0jQ4zTsHS1Sm6nkcHtAQlybiYwnSUePu9vqlFWMH~~AZf59tm~xobRuerpL9cVbQlohZumrdL4bW4Vf2GM3GL7RHJOyy5KXzMTmW3l6e9w254uSNYbL6XZrfGIaPgJb0-YeIEmRt8zPg91ifwWqnKNCRrOjhpqQm~3HeMjn3c-UUCzJqLXXzss1hcCkZhoHkguHduuISS4nqlaY45M2w91qcENZb-RR7wT~zPL0NoD6CSaz0FMfxjHxDKfn1gQLVqeuymOwFRKpk29JGXED1g__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
{
new CardInfoStat
{
positive = true,
stat = "Bursts",
amount = "+25",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-90%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+100%",
simepleAmount = (SimpleAmount)3
},
new CardInfoStat
{
positive = true,
stat = "Time Between Bullets",
amount = "+0.029 seconds",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["bursts"](25f);
dictionary["damage"](0.1f);
dictionary["reload"](2f);
dictionary["timeBetweenBullets"](0.029f);
}
}
public class SlightlyBetter : SimpleCard
{
public override CardDetails Details
{
get
{
//IL_0000: Unknown result type (might be due to invalid IL or missing references)
//IL_0006: Expected O, but got Unknown
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_005c: Unknown result type (might be due to invalid IL or missing references)
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0068: Unknown result type (might be due to invalid IL or missing references)
//IL_0073: Unknown result type (might be due to invalid IL or missing references)
//IL_007e: Unknown result type (might be due to invalid IL or missing references)
//IL_0080: Unknown result type (might be due to invalid IL or missing references)
//IL_0086: Expected O, but got Unknown
//IL_0088: Unknown result type (might be due to invalid IL or missing references)
//IL_008d: Unknown result type (might be due to invalid IL or missing references)
//IL_0094: Unknown result type (might be due to invalid IL or missing references)
//IL_009f: Unknown result type (might be due to invalid IL or missing references)
//IL_00aa: Unknown result type (might be due to invalid IL or missing references)
//IL_00ac: Unknown result type (might be due to invalid IL or missing references)
//IL_00b2: Expected O, but got Unknown
//IL_00b4: Unknown result type (might be due to invalid IL or missing references)
//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
//IL_00c0: Unknown result type (might be due to invalid IL or missing references)
//IL_00cb: Unknown result type (might be due to invalid IL or missing references)
//IL_00d6: Unknown result type (might be due to invalid IL or missing references)
//IL_00d8: Unknown result type (might be due to invalid IL or missing references)
//IL_00de: Expected O, but got Unknown
//IL_00e0: Unknown result type (might be due to invalid IL or missing references)
//IL_00e5: Unknown result type (might be due to invalid IL or missing references)
//IL_00ec: Unknown result type (might be due to invalid IL or missing references)
//IL_00f7: Unknown result type (might be due to invalid IL or missing references)
//IL_0102: Unknown result type (might be due to invalid IL or missing references)
//IL_0104: Unknown result type (might be due to invalid IL or missing references)
//IL_010a: Expected O, but got Unknown
//IL_010c: Unknown result type (might be due to invalid IL or missing references)
//IL_0111: Unknown result type (might be due to invalid IL or missing references)
//IL_0118: Unknown result type (might be due to invalid IL or missing references)
//IL_0123: Unknown result type (might be due to invalid IL or missing references)
//IL_012e: Unknown result type (might be due to invalid IL or missing references)
//IL_0130: Unknown result type (might be due to invalid IL or missing references)
//IL_0136: Expected O, but got Unknown
//IL_0138: Unknown result type (might be due to invalid IL or missing references)
//IL_013d: Unknown result type (might be due to invalid IL or missing references)
//IL_0144: Unknown result type (might be due to invalid IL or missing references)
//IL_014f: Unknown result type (might be due to invalid IL or missing references)
//IL_015a: Unknown result type (might be due to invalid IL or missing references)
//IL_015c: Unknown result type (might be due to invalid IL or missing references)
//IL_0162: Expected O, but got Unknown
CardDetails val = new CardDetails();
val.Title = "Slightly Better";
val.Description = "I'm just better than you";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Uncommon");
val.Theme = (CardThemeColorType)3;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/36540c02f2024a67/ChatGPT%20Image%20Apr%2019,%202025,%2009_07_18%20PM.png?Expires=1839722893&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=wRX~--e9DZidJHtU-v7NOVDj-2Kmi3r6Oqh1qQdeI90hfzO0EZHrhcj~77mJ3zVCg9A5D0enDIserU374aZyoSwwkpruTXHPlenpVNfBr5AD4GMsmkhyTHe-aBLphkrzgPdCwDjw2cP8k0pFa9h3YMpn0RfJiexsY5l1hZzuFDVt397AzCFP2UZEeWmvDk9e6a~7PBwtjstLUMb3AIB6yK9zV6fnLlY7~Mz7htuGstI5IMxNdnSqssCLyYgdNTY3RmDakhrscxZBpafnWR7GwW~nFdc~BtkSBA8GLeGDXgA~lCRA2FttXOC5~mzjhevIR5DV6wIcaD0NJgukrOvSEg__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+12%",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+12%",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Reload Time",
amount = "-12%",
simepleAmount = (SimpleAmount)5
},
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+1",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "-12%",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "+12%",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["damage"](1.12f);
dictionary["health"](1.12f);
dictionary["reload"](0.88f);
dictionary["ammo"](1f);
dictionary["attackSpeed"](0.88f);
dictionary["bulletSpeed"](1.12f);
}
}
public class SlowAndSteady : 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 = "Slow And Steady";
val.Description = "...wins the race";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Epic");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/5273dfd978374ec6/ChatGPT%20Image%20Apr%2023,%202025,%2001_04_17%20AM.png?Expires=1839996315&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=yecvMarMwojG7bKt3CtIH7vrKmY3c2KXUo1pRe3IXKyZyaf0zlWypC1CACSnLAk3ykArZ3KRrgiChTJqN56ot7VTzCNK2QD4f7~-CD8p9NIHprcGXjI6pMB4Bk3ebKFYKF6le-~ibCbracK1cHT0LlzQS0s3VCqPyx6HG4cdhIGLycp37wkrscE1qPpfIv2EYf~fD0UHyTURRwKl1ksp6eiH9MfwvvqwgAEvOkyl1UjtDIE2KAjgvvDt9h56EdtrZgB1u-D2OAaqyEgRjQobwXJ~mpRUxl~MS2x7Jx0pJuTxlwKD4HkJ7vL0aQpYWDGKnpOcmPZWWC0UAdzA7iVf-w__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+300%",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = false,
stat = "Bullet Speed",
amount = "-67%",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["damage"](4f);
dictionary["bulletSpeed"](0.33f);
}
}
public class Sniperman : 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 = "Sniperman";
val.Description = "Camp in the corner";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Uncommon");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/76edde8d71874b91/ChatGPT%20Image%20Apr%2014,%202025,%2009_38_47%20PM.png?Expires=1839292782&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=vwKBjR2CbHfXSn1Y-RWeC3d88Ozix14waZw7iSIShfrNjjjCZZ~WQVAj-kqhPXtXbTpd9uFPuQdOdjeDi-atTtJbvMoccDYlEqenSFzENDjGtksaoFVNaYw2W2GkTpG4DUb-Ev04LefhSV7JUwF0MxHL7O7t-CfJUylFsWl~B9BFGl2tbLnlQmgUxsYXrqbsV6y64i-XCBlpQubo8xqn9umZJIgnKCo2~SfpKY05BpxrEAFV-Zfy2gDV~db2jcJkYytOVDAM-PmZIL6B~~Z6HAlLUR12s1aqRXlMoaAODdp~Y6MlJLswuEr88O490m34X5VN9GURwnnzdzc94u3YAw__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+200%",
simepleAmount = (SimpleAmount)3
},
new CardInfoStat
{
positive = false,
stat = "Ammunition",
amount = "-2",
simepleAmount = (SimpleAmount)6
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+70%",
simepleAmount = (SimpleAmount)3
},
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "+150%",
simepleAmount = (SimpleAmount)3
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["damage"](3f);
dictionary["ammo"](-2f);
dictionary["reload"](1.7f);
dictionary["bulletSpeed"](2.5f);
}
}
public class TheHealthiestOrbAlive : 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 = "The Healthiest Orb Alive";
val.Description = "You've never even been sick!";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
val.Theme = (CardThemeColorType)2;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/780a55fa2c954ea6/ChatGPT%20Image%20Apr%2023,%202025,%2001_11_09%20AM.png?Expires=1839996723&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=rK7y80c9qu628Di7z9ilFrsiEdUsC67ztCvhrWKOGmHUevhGnJgQJdxSCO7fzJ6KtQeLZ4oaZZJWB-sZ3iCAplAfTe6pRZTMdAoUd1s6nPa9BRgGprqWedVaLQZ~DVhfQSkIeirsMEzhAf66aG~9CKYH7FLx4FA40zBrMNmmusueOcJVCdQY258Xp6TMT3tPmzjXhcwCerq-GcH-ETlJHXdPEXgEt6gXgj4oePYofBOQcrF9qB5NuP1dYu5W8irsWhdPlKMauPpB4dEUqzeNOwt2IkZYFmzP89DZ2XWWB1qQtsMXQEyuyquUPOUYD8szZyvgkchXDb2W1OVX050JxA__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+250%",
simepleAmount = (SimpleAmount)4
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["health"](3.5f);
}
}
public class TitaniumPeashooter : 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 = "Titanium Peashooter";
val.Description = "The opposite of a glass cannon";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Rare");
val.Theme = (CardThemeColorType)2;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/012f9de71453480a/ChatGPT%20Image%20Apr%2019,%202025,%2009_03_22%20PM.png?Expires=1839722670&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=AV4~9yNuYwLWP8Zr1cF4EzY6HPCYLUI06GLXXp5099wS~TG3WzGiscFgmYAylxspEmZy7DkI1prLfwkI08DG2nv5Gvbn1dh9cgqvRV1IZpMgVghdm8qE-x1avVx568AjM6Eu-l2t80moyCIfRI09JXVe4rOWmlUECJZWDvQ20uDJVM5sMwSzdRodRA6z2942yEm~ivgzd-EuVfORv771c2~nAEpgi0Je5sub36T5wFajJx4FmTSX-~0DyMFmXO8xuB5p-snrF8P~0ugetw2hPQyi~1aIM69IZvHsDNbZfFC1JkDJOCiLVovP7LAI794twMTaDuhOdskbZnHvdhD7DA__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+150%",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-40%",
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("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["health"](2.5f);
dictionary["damage"](0.6f);
}
}
public class TrampolinePark : 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 = "Trampoline Park";
val.Description = "Too many bounces";
val.ModName = "GunnersExtraCards";
val.Rarity = RarityUtils.GetRarity("Rare");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://media-hosting.imagekit.io/6925a1bd2a554aa9/ChatGPT%20Image%20Apr%2019,%202025,%2009_10_56%20PM.png?Expires=1839723122&Key-Pair-Id=K2ZIVPTIP2VGHC&Signature=I7I6-ITubPUa1QHW4Uj2PfYbdjGRosemMLVonmj1E2wfZi9YCf0FOt6w~Srx7ahLo0jn-pCvhPRqxzeI8J77CEV51NfeVe2Xqhu0xk1JN3VnB2TVqvW21A2L4H9FKA6KivSJcJW1IVaHm3ure5UHw5rmswAxRxZc~Gq-IncyPsxVbyQBa8DB0UB7ep4~G9QznT~x9wVKe2xmAcH88MiuPfea-oirAf7n1jbf8cQT28ZT0EGPYCPEF7AZL9jZQV7MHPSSfYJfY9nQ8gYowIhJCrVx5l64csdsEdnw1h7D4MisZrpx3YRYMtdRD~XjquRFzDick6Hi4diD2aG3R6wPEw__");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[4]
{
new CardInfoStat
{
positive = true,
stat = "Bounces",
amount = "+10",
simepleAmount = (SimpleAmount)4
},
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+3",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-31%",
simepleAmount = (SimpleAmount)6
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+39%",
simepleAmount = (SimpleAmount)0
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("projectiles", delegate(float val)
{
gun.numberOfProjectiles = Mathf.Max(1, (int)val);
});
dictionary.Add("bursts", delegate(float val)
{
gun.bursts = (int)val;
});
dictionary.Add("timeBetweenBullets", delegate(float val)
{
gun.timeBetweenBullets = val;
});
dictionary.Add("attackSpeed", delegate(float val)
{
gun.attackSpeed = val;
});
dictionary.Add("bounces", delegate(float val)
{
gun.reflects = (int)val;
});
dictionary.Add("bulletSpeed", delegate(float val)
{
gun.projectileSpeed = val;
});
dictionary["bounces"](10f);
dictionary["ammo"](3f);
dictionary["damage"](0.7f);
dictionary["reload"](1.4f);
}
}