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("SupernovaCards")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("SupernovaCards")]
[assembly: AssemblyTitle("SupernovaCards")]
[assembly: AssemblyVersion("1.0.0.0")]
public class ALiteralNuke : 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 = "A Literal Nuke";
val.Description = "Good Luck surviving >:)";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Divine");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.ibb.co/StNdV0j/image-9.png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+9900%",
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["damage"](100f);
}
}
public class BounceKING : 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 = "Bounce KING";
val.Description = "Bo-ing";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
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 = "Bounces",
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"](100f);
}
}
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 Compactedbarrage : 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 = "Compacted barrage";
val.Description = "Stacked bullets but very little damage";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Divine");
val.Theme = (CardThemeColorType)1;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[6]
{
new CardInfoStat
{
positive = true,
stat = "Projectiles",
amount = "+10",
simepleAmount = (SimpleAmount)2
},
new CardInfoStat
{
positive = false,
stat = "Damage",
amount = "-99%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "-50%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Bursts",
amount = "+2",
simepleAmount = (SimpleAmount)1
},
new CardInfoStat
{
positive = true,
stat = "Time Between Bullets",
amount = "+0 seconds",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+40",
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["projectiles"](10f);
dictionary["damage"](0.01f);
dictionary["attackSpeed"](0.5f);
dictionary["bursts"](2f);
dictionary["timeBetweenBullets"](0f);
dictionary["ammo"](40f);
}
}
public class Confuse : 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 = "Confuse";
val.Description = "You'd better be accurate";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Common");
val.Theme = (CardThemeColorType)3;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.ibb.co/PD6r64s/Confuse-Picture.png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "-200%",
simepleAmount = (SimpleAmount)0
}
};
return val;
}
}
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Dictionary<string, Action<float>> dictionary = new Dictionary<string, Action<float>>();
dictionary.Add("damage", delegate(float val)
{
gun.damage = val;
});
dictionary.Add("health", delegate(float val)
{
statModifiers.health = val;
});
dictionary.Add("reload", delegate(float val)
{
gun.reloadTime = val;
});
dictionary.Add("ammo", delegate(float val)
{
gun.ammo = (int)val;
});
dictionary.Add("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"](-1f);
}
}
public class Imindanger : 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 = "Im in danger";
val.Description = "Become Smol but be able to shoot quickly and more bounces";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
val.Theme = (CardThemeColorType)3;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://placehold.co/512x512/png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-99%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "-200%",
simepleAmount = (SimpleAmount)7
},
new CardInfoStat
{
positive = true,
stat = "Bounces",
amount = "+30",
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["health"](0.01f);
dictionary["attackSpeed"](-1f);
dictionary["bounces"](30f);
}
}
public class Snowlax : 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 = "Snowlax";
val.Description = "MASSIVE BOI";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
val.Theme = (CardThemeColorType)2;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.ibb.co/bsRHVNc/image-6.png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Health",
amount = "+8000%",
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"](81f);
}
}
public class Spammyboi : 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 = "Spammy boi";
val.Description = "Spam";
val.ModName = "SupernovaCards";
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[5]
{
new CardInfoStat
{
positive = true,
stat = "Reload Time",
amount = "-50%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "-50%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Ammunition",
amount = "+69",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Bursts",
amount = "+2",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Time Between Bullets",
amount = "+0.2 seconds",
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["reload"](0.5f);
dictionary["attackSpeed"](0.5f);
dictionary["ammo"](69f);
dictionary["bursts"](2f);
dictionary["timeBetweenBullets"](0.2f);
}
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("com.supernova.rounds.mod", "SupernovaCards", "0.0.7")]
[BepInProcess("Rounds.exe")]
public class SupernovaCardsPlugin : BaseUnityPlugin
{
private const string ModId = "com.supernova.rounds.mod";
private const string ModName = "SupernovaCards";
private const string ModVersion = "0.0.7";
private const string CompatabilityModName = "SupernovaCards";
private void Awake()
{
CardRegistry.RegisterCard<Snowlax>(hidden: false);
CardRegistry.RegisterCard<YOUREindanger>(hidden: false);
CardRegistry.RegisterCard<BounceKING>(hidden: false);
CardRegistry.RegisterCard<Imindanger>(hidden: false);
CardRegistry.RegisterCard<Compactedbarrage>(hidden: false);
CardRegistry.RegisterCard<Confuse>(hidden: false);
CardRegistry.RegisterCard<Spammyboi>(hidden: false);
CardRegistry.RegisterCard<ALiteralNuke>(hidden: false);
}
private void Start()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
new Harmony("com.supernova.rounds.mod").PatchAll();
}
}
public class YOUREindanger : 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 = "YOURE in danger";
val.Description = "DESTROY";
val.ModName = "SupernovaCards";
val.Rarity = RarityUtils.GetRarity("Legendary");
val.Theme = (CardThemeColorType)0;
val.Art = DeckSmithUtil.Instance.GetArtFromUrl("https://i.ibb.co/XzZrckD/image-5-Copy.png");
val.Stats = (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+900%",
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["damage"](10f);
}
}