using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using CardChoiceSpawnUniqueCardPatch.CustomCategories;
using HarmonyLib;
using Jotunn.Utils;
using Microsoft.CodeAnalysis;
using ModdingUtils.Extensions;
using ModdingUtils.MonoBehaviours;
using MrFuntikMod.Cards;
using MrFuntikMod.RoundsEffects;
using RarityLib.Utils;
using Sonigon;
using Sonigon.Internal;
using UnboundLib;
using UnboundLib.Cards;
using UnboundLib.GameModes;
using UnboundLib.Utils;
using UnityEngine;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("MrFuntikMod")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("MrFuntikMod")]
[assembly: AssemblyTitle("MrFuntikMod")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace Microsoft.CodeAnalysis
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
internal sealed class EmbeddedAttribute : Attribute
{
}
}
namespace System.Runtime.CompilerServices
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)]
internal sealed class NullableAttribute : Attribute
{
public readonly byte[] NullableFlags;
public NullableAttribute(byte P_0)
{
NullableFlags = new byte[1] { P_0 };
}
public NullableAttribute(byte[] P_0)
{
NullableFlags = P_0;
}
}
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)]
internal sealed class NullableContextAttribute : Attribute
{
public readonly byte Flag;
public NullableContextAttribute(byte P_0)
{
Flag = P_0;
}
}
}
namespace MFM.Mono
{
public class MaxHealthEffect : ReversibleEffect
{
private bool active;
private ColorEffect colorEffect;
private Color color = Color.clear;
public override void OnAwake()
{
((ReversibleEffect)this).SetLivesToEffect(int.MaxValue);
}
public override void OnStart()
{
base.applyImmediately = false;
active = false;
}
public override void OnUpdate()
{
if (HealthInRange())
{
((ReversibleEffect)this).ApplyModifiers();
}
else if (((ReversibleEffect)this).modifiersActive && !HealthInRange())
{
((ReversibleEffect)this).ClearModifiers(false);
}
if (!active && HealthInRange())
{
ApplyColorEffect();
active = true;
}
else if (active && !HealthInRange())
{
if ((Object)(object)colorEffect != (Object)null)
{
Object.Destroy((Object)(object)colorEffect);
}
active = false;
}
}
private void ApplyColorEffect()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Unknown result type (might be due to invalid IL or missing references)
//IL_0037: Unknown result type (might be due to invalid IL or missing references)
if (color != Color.clear)
{
colorEffect = ((Component)base.player).gameObject.AddComponent<ColorEffect>();
colorEffect.SetColor(color);
Debug.Log((object)"color is set!");
}
}
private bool HealthInRange()
{
return (double)base.data.health == (double)base.data.maxHealth;
}
public override void OnOnDisable()
{
((ReversibleEffect)this).ClearModifiers(false);
active = false;
}
public override void OnOnDestroy()
{
}
public void SetColor(Color color)
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
this.color = color;
}
}
}
namespace MrFuntikMod
{
internal class Assets
{
private static readonly AssetBundle Bundle = AssetUtils.LoadAssetBundleFromResources("myasset", typeof(MrFuntikMod).Assembly);
public static GameObject CHESS_KNIGHT_Art = Bundle.LoadAsset<GameObject>("C_CHESS_KNIGHT");
public static GameObject Narcissism_Art = Bundle.LoadAsset<GameObject>("C_narcissism");
public static GameObject CHESS_PAWN_Art = Bundle.LoadAsset<GameObject>("C_CHESS_PAWN");
public static GameObject CHESS_ROOK_Art = Bundle.LoadAsset<GameObject>("C_CHESS_ROOK");
public static GameObject CHESS_BISHOP_Art = Bundle.LoadAsset<GameObject>("C_CHESS_BISHOP");
public static GameObject unstable_gun_Art = Bundle.LoadAsset<GameObject>("C_unstable_gun");
public static GameObject NecroCardArt = Bundle.LoadAsset<GameObject>("C_necro_card");
public static GameObject Necro2CardArt = Bundle.LoadAsset<GameObject>("C_necro2_card");
public static GameObject Necro3CardArt = Bundle.LoadAsset<GameObject>("C_necro3_card");
public static AudioClip DemRes1 = Bundle.LoadAsset<AudioClip>("dem_res_1");
public static AudioClip DemRes2 = Bundle.LoadAsset<AudioClip>("dem_rev_2");
public static AudioClip DemRes3 = Bundle.LoadAsset<AudioClip>("dem_res_3");
public static AudioClip DemRes4 = Bundle.LoadAsset<AudioClip>("dem_res_4");
public static AudioClip DemRes5 = Bundle.LoadAsset<AudioClip>("dem_res_pontiff");
}
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInDependency(/*Could not decode attribute arguments.*/)]
[BepInPlugin("com.MrseFuntik.Rounds.MFM", "MrFuntikMod", "1.0.0")]
[BepInProcess("Rounds.exe")]
public class MrFuntikMod : BaseUnityPlugin
{
private const string ModId = "com.MrseFuntik.Rounds.MFM";
private const string ModName = "MrFuntikMod";
public const string Version = "1.0.0";
public const string ModInitials = "MFM";
internal static CardCategory NonNecroCard;
internal static CardCategory NecroCard2;
internal static CardCategory NecroCard3;
public static MrFuntikMod instance { get; private set; }
private void Awake()
{
//IL_001a: Unknown result type (might be due to invalid IL or missing references)
//IL_002e: Unknown result type (might be due to invalid IL or missing references)
//IL_003e: Unknown result type (might be due to invalid IL or missing references)
//IL_0044: Expected O, but got Unknown
RarityUtils.AddRarity("NecroCards", 0.2f, new Color(0.96f, 0.188f, 0.188f), new Color(0.96f, 0.188f, 0.188f));
Harmony val = new Harmony("com.MrseFuntik.Rounds.MFM");
val.PatchAll();
}
private void Start()
{
NonNecroCard = CustomCardCategories.instance.CardCategory("NonNecroCard");
NecroCard2 = CustomCardCategories.instance.CardCategory("NecroCard2");
NecroCard3 = CustomCardCategories.instance.CardCategory("NecroCard3");
instance = this;
CustomCard.BuildCard<CHESS_KNIGHT>();
CustomCard.BuildCard<NARCISSISM>();
CustomCard.BuildCard<Chess_pawn>();
CustomCard.BuildCard<CHESS_ROCK>();
CustomCard.BuildCard<ChessBishopCard>();
CustomCard.BuildCard<UnstableGunCard>();
CustomCard.BuildCard<Necronomicon_I>();
CustomCard.BuildCard<Necronomicon_II>();
CustomCard.BuildCard<Necronomicon_II_b>();
CustomCard.BuildCard<Necronomicon_II_c>();
CustomCard.BuildCard<Necronomicon_II_d>();
CustomCard.BuildCard<Necronomicon_II_e>();
CustomCard.BuildCard<Necronomicon_III>();
CustomCard.BuildCard<Necronomicon_III_b>();
CustomCard.BuildCard<Necronomicon_III_c>();
CustomCard.BuildCard<Necronomicon_III_d>();
CustomCard.BuildCard<Necronomicon_III_e>();
GameModeManager.AddHook("GameStart", (Func<IGameModeHandler, IEnumerator>)GameStart);
ExtensionMethods.ExecuteAfterSeconds((MonoBehaviour)(object)instance, 1f, (Action)delegate
{
foreach (Card value in CardManager.cards.Values)
{
if (!value.cardInfo.categories.Contains(NecroCard2) && !value.cardInfo.categories.Contains(NecroCard3))
{
value.cardInfo.categories = CollectionExtensions.AddToArray<CardCategory>(value.cardInfo.categories, NonNecroCard);
}
}
});
}
private IEnumerator GameStart(IGameModeHandler gm)
{
foreach (Player player in PlayerManager.instance.players)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(NecroCard2))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(NecroCard2);
}
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(NecroCard3);
}
((Component)player).gameObject.AddComponent<MFMBalanceMono>();
}
yield break;
}
}
}
namespace MrFuntikMod.RoundsEffects
{
public class FriendlyBulletsDealtDamageEffect : DealtDamageEffect
{
public float multiplier = 1f;
public override void DealtDamage(Vector2 damage, bool selfDamage, Player damagedPlayer = null)
{
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_000f: Unknown result type (might be due to invalid IL or missing references)
Player damagedPlayer2 = damagedPlayer;
if (!selfDamage && (!((Object)(object)damagedPlayer2 != (Object)null) || damagedPlayer2.teamID != ((Component)this).gameObject.GetComponent<Player>().teamID))
{
return;
}
if (damagedPlayer2.data.health - ((Vector2)(ref damage)).magnitude <= 0f)
{
damagedPlayer2.data.healthHandler.Heal(((Vector2)(ref damage)).magnitude * (1f - multiplier));
return;
}
ExtensionMethods.ExecuteAfterFrames((MonoBehaviour)(object)Unbound.Instance, 2, (Action)delegate
{
damagedPlayer2.data.healthHandler.Heal(((Vector2)(ref damage)).magnitude * (1f - multiplier));
});
}
}
}
namespace MrFuntikMod.Cards
{
internal class CHESS_KNIGHT : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
block.forceToAdd = 10f;
statModifiers.movementSpeed = 1.5f;
gun.damage = 1.15f;
statModifiers.numberOfJumps = 1;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "CHESS KNIGHT";
}
protected override string GetDescription()
{
return "Blocking pushes you forward." + Environment.NewLine + "Chess Battle Advanced!";
}
protected override GameObject GetCardArt()
{
return Assets.CHESS_KNIGHT_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)1;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = true,
stat = "Move Speed",
amount = "+50%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Jump",
amount = "+1",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)7;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Chess_pawn : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
statModifiers.health = 1.1f;
gun.damage = 1.1f;
gun.attackSpeed = 0.9090909f;
gun.ammo = 2;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "CHESS PAWN";
}
protected override string GetDescription()
{
return "Chess Battle Advanced!";
}
protected override GameObject GetCardArt()
{
return Assets.CHESS_PAWN_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)0;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
//IL_008d: Unknown result type (might be due to invalid IL or missing references)
//IL_0092: Unknown result type (might be due to invalid IL or missing references)
//IL_0099: Unknown result type (might be due to invalid IL or missing references)
//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
//IL_00af: Unknown result type (might be due to invalid IL or missing references)
//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
//IL_00b7: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[4]
{
new CardInfoStat
{
positive = true,
stat = "HP",
amount = "+10%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "DMG",
amount = "+10%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "+10%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Ammo",
amount = "+2",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)3;
}
public override string GetModName()
{
return "MFM";
}
}
internal class CHESS_ROCK : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
statModifiers.health = 1.3f;
block.cdMultiplier = 0.8f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
((Component)player).gameObject.AddComponent<ChessRookMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "CHESS ROOK";
}
protected override string GetDescription()
{
return "Blocking heals 12% of your max HP." + Environment.NewLine + "Chess Battle Advanced!";
}
protected override GameObject GetCardArt()
{
return Assets.CHESS_ROOK_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)1;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = true,
stat = "HP",
amount = "+30%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Block CD",
amount = "-20%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Cooldown",
amount = "4s",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)2;
}
public override string GetModName()
{
return "MFM";
}
}
internal class ChessBishopCard : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
gun.reflects = 2;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
//IL_0016: Unknown result type (might be due to invalid IL or missing references)
//IL_001b: Unknown result type (might be due to invalid IL or missing references)
gun.projectileColor = new Color(1f, 0.05f, 0f, 1f);
gun.projectileSpeed *= 2.25f;
if (gun.slow > 0f)
{
gun.slow *= 1.5f;
}
else
{
gun.slow += 1f;
}
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "CHESS BISHOP";
}
protected override string GetDescription()
{
return "Bullets slow the target when hit it." + Environment.NewLine + "Chess Battle Advanced!";
}
protected override GameObject GetCardArt()
{
return Assets.CHESS_BISHOP_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)1;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "+125%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Bounce",
amount = "+2",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)0;
}
public override string GetModName()
{
return "MFM";
}
}
internal class NARCISSISM : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
statModifiers.health = 1.3f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
ExtensionMethods.GetOrAddComponent<FriendlyBulletsDealtDamageEffect>(((Component)player).gameObject, false).multiplier /= 5f;
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "NARCISSISM";
}
protected override string GetDescription()
{
return "Be careful: bullets effects still apply";
}
protected override GameObject GetCardArt()
{
return Assets.Narcissism_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)0;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = true,
stat = "Friendly Fire",
amount = "-80%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "HP",
amount = "+30%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)8;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Necronomicon_I : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Necronomicon";
}
protected override string GetDescription()
{
return "Will you risk taking the side of <b><color=#7b1a9e>true evil</b></color>?";
}
protected override GameObject GetCardArt()
{
return Assets.NecroCardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Transforming</b></color>",
amount = "Start",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard2);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard2))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard2);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_II_b : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard2 };
statModifiers.movementSpeed = 1.4f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Dark: Haste";
}
protected override string GetDescription()
{
return "<b><color=#7b1a9e>Darkness</b></color> begins to flow through your veins...";
}
protected override GameObject GetCardArt()
{
return Assets.Necro2CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Move Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard3);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard3);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_II_c : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard2 };
gun.damage = 1.4f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Dark: Fury";
}
protected override string GetDescription()
{
return "<b><color=#7b1a9e>Darkness</b></color> begins to flow through your veins...";
}
protected override GameObject GetCardArt()
{
return Assets.Necro2CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Damage",
amount = "+40%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard3);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard3);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_II_d : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard2 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
gun.attackSpeed *= 0.71428573f;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Dark: Impatience";
}
protected override string GetDescription()
{
return "<b><color=#7b1a9e>Darkness</b></color> begins to flow through your veins...";
}
protected override GameObject GetCardArt()
{
return Assets.Necro2CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard3);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard3);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_II_e : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard2 };
block.cdMultiplier = 0.85f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Dark: Block";
}
protected override string GetDescription()
{
return "<b><color=#7b1a9e>Darkness</b></color> begins to flow through your veins...";
}
protected override GameObject GetCardArt()
{
return Assets.Necro2CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Block CD",
amount = "-15%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard3);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard3);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_II : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard2 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Player player2 = player;
gunAmmo.reloadTimeMultiplier *= 0.6f;
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Dark: Reload";
}
protected override string GetDescription()
{
return "<b><color=#7b1a9e>Darkness</b></color> begins to flow through your veins...";
}
protected override GameObject GetCardArt()
{
return Assets.Necro2CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[2]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Reload Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
public static IEnumerator NecroCardsPick(Player player)
{
Player player2 = player;
while (!CardChoice.instance.IsPicking)
{
yield return null;
}
if (CardChoice.instance.pickrID == player2.playerID)
{
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Add(MrFuntikMod.NonNecroCard);
CharacterStatModifiersExtension.GetAdditionalData(player2.data.stats).blacklistedCategories.Remove(MrFuntikMod.NecroCard3);
GameModeManager.AddOnceHook("PlayerPickEnd", (Func<IGameModeHandler, IEnumerator>)((IGameModeHandler gm) => EndNecroCardsPick(player2)));
}
else
{
GameModeManager.AddOnceHook("PlayerPickStart", (Func<IGameModeHandler, IEnumerator>)delegate
{
((MonoBehaviour)MrFuntikMod.instance).StartCoroutine(NecroCardsPick(player2));
return new List<object>().GetEnumerator();
});
}
}
public static IEnumerator EndNecroCardsPick(Player player)
{
if (!CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Contains(MrFuntikMod.NecroCard3))
{
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Add(MrFuntikMod.NecroCard3);
CharacterStatModifiersExtension.GetAdditionalData(player.data.stats).blacklistedCategories.Remove(MrFuntikMod.NonNecroCard);
}
yield break;
}
}
internal class Necronomicon_III_b : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
statModifiers.movementSpeed = 1.4f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard3 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
characterStats.respawns++;
((Component)player).gameObject.AddComponent<NecronomiconMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Evil: Haste";
}
protected override string GetDescription()
{
return "Become the embodiment of <b><color=#7b1a9e>true evil</b></color>";
}
protected override GameObject GetCardArt()
{
return Assets.Necro3CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Move Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Devil Trigger</b></color>",
amount = "Add",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Necronomicon_III_c : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
gun.damage = 1.4f;
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard3 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
characterStats.respawns++;
((Component)player).gameObject.AddComponent<NecronomiconMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Evil: Fury";
}
protected override string GetDescription()
{
return "Become the embodiment of <b><color=#7b1a9e>true evil</b></color>";
}
protected override GameObject GetCardArt()
{
return Assets.Necro3CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "DMG",
amount = "+40%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Devil Trigger</b></color>",
amount = "Add",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Necronomicon_III_d : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard3 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
gun.attackSpeed *= 0.71428573f;
characterStats.respawns++;
((Component)player).gameObject.AddComponent<NecronomiconMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Evil: Impatience";
}
protected override string GetDescription()
{
return "Become the embodiment of <b><color=#7b1a9e>true evil</b></color>";
}
protected override GameObject GetCardArt()
{
return Assets.Necro3CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Attack Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Devil Trigger</b></color>",
amount = "Add",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Necronomicon_III_e : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
block.cdMultiplier = 0.85f;
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard3 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
characterStats.respawns++;
((Component)player).gameObject.AddComponent<NecronomiconMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Evil: Block";
}
protected override string GetDescription()
{
return "Become the embodiment of <b><color=#7b1a9e>true evil</b></color>";
}
protected override GameObject GetCardArt()
{
return Assets.Necro3CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Block CD",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Devil Trigger</b></color>",
amount = "Add",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Necronomicon_III : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
cardInfo.allowMultiple = false;
statModifiers.health = 0.85f;
cardInfo.categories = (CardCategory[])(object)new CardCategory[1] { MrFuntikMod.NecroCard3 };
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
gunAmmo.reloadTimeMultiplier *= 0.6f;
characterStats.respawns++;
((Component)player).gameObject.AddComponent<NecronomiconMono>();
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "Word of Evil: Reload";
}
protected override string GetDescription()
{
return "Become the embodiment of <b><color=#7b1a9e>true evil</b></color>";
}
protected override GameObject GetCardArt()
{
return Assets.Necro3CardArt;
}
protected override Rarity GetRarity()
{
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return RarityUtils.GetRarity("NecroCards");
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[3]
{
new CardInfoStat
{
positive = false,
stat = "Health",
amount = "-15%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Reload Speed",
amount = "+40%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "<b><color=#7b1a9e>Devil Trigger</b></color>",
amount = "Add",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)4;
}
public override string GetModName()
{
return "MFM";
}
}
internal class Template : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
Debug.Log((object)("[MFM][Card] " + ((CustomCard)this).GetTitle() + " has been setup."));
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Debug.Log((object)string.Format("[{0}][Card] {1} has been added to player {2}.", "MFM", ((CustomCard)this).GetTitle(), player.playerID));
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
Debug.Log((object)string.Format("[{0}][Card] {1} has been removed from player {2}.", "MFM", ((CustomCard)this).GetTitle(), player.playerID));
}
protected override string GetTitle()
{
return "CardName";
}
protected override string GetDescription()
{
return null;
}
protected override GameObject GetCardArt()
{
return null;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)0;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[1]
{
new CardInfoStat
{
positive = true,
stat = "Effect",
amount = "No",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)7;
}
public override string GetModName()
{
return "MFM";
}
}
internal class UnstableGunCard : CustomCard
{
public override void SetupCard(CardInfo cardInfo, Gun gun, ApplyCardStats cardStats, CharacterStatModifiers statModifiers, Block block)
{
statModifiers.movementSpeed = 0.7f;
}
public override void OnAddCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
//IL_0016: Unknown result type (might be due to invalid IL or missing references)
//IL_001b: Unknown result type (might be due to invalid IL or missing references)
gun.projectileColor = new Color(1f, 0f, 0f, 1f);
Random random = new Random();
int num = random.Next(3, 5);
gun.damage *= (float)num * 1f;
int num2 = random.Next(3, 5);
gun.projectileSpeed *= (float)num2 * 1f;
gunAmmo.reloadTimeMultiplier *= 2.5f;
int maxAmmo = random.Next(1, 3);
gunAmmo.maxAmmo = maxAmmo;
}
public override void OnRemoveCard(Player player, Gun gun, GunAmmo gunAmmo, CharacterData data, HealthHandler health, Gravity gravity, Block block, CharacterStatModifiers characterStats)
{
}
protected override string GetTitle()
{
return "unstable gun";
}
protected override string GetDescription()
{
return "Careful! It's extremely unstable.";
}
protected override GameObject GetCardArt()
{
return Assets.unstable_gun_Art;
}
protected override Rarity GetRarity()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (Rarity)2;
}
protected override CardInfoStat[] GetStats()
{
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
//IL_000e: Unknown result type (might be due to invalid IL or missing references)
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
//IL_0020: Unknown result type (might be due to invalid IL or missing references)
//IL_002b: Unknown result type (might be due to invalid IL or missing references)
//IL_002d: Unknown result type (might be due to invalid IL or missing references)
//IL_0033: Expected O, but got Unknown
//IL_0035: Unknown result type (might be due to invalid IL or missing references)
//IL_003a: Unknown result type (might be due to invalid IL or missing references)
//IL_0041: Unknown result type (might be due to invalid IL or missing references)
//IL_004c: Unknown result type (might be due to invalid IL or missing references)
//IL_0057: Unknown result type (might be due to invalid IL or missing references)
//IL_0059: Unknown result type (might be due to invalid IL or missing references)
//IL_005f: Expected O, but got Unknown
//IL_0061: Unknown result type (might be due to invalid IL or missing references)
//IL_0066: Unknown result type (might be due to invalid IL or missing references)
//IL_006d: Unknown result type (might be due to invalid IL or missing references)
//IL_0078: Unknown result type (might be due to invalid IL or missing references)
//IL_0083: Unknown result type (might be due to invalid IL or missing references)
//IL_0085: Unknown result type (might be due to invalid IL or missing references)
//IL_008b: Expected O, but got Unknown
//IL_008d: Unknown result type (might be due to invalid IL or missing references)
//IL_0092: Unknown result type (might be due to invalid IL or missing references)
//IL_0099: Unknown result type (might be due to invalid IL or missing references)
//IL_00a4: Unknown result type (might be due to invalid IL or missing references)
//IL_00af: Unknown result type (might be due to invalid IL or missing references)
//IL_00b1: Unknown result type (might be due to invalid IL or missing references)
//IL_00b7: Expected O, but got Unknown
//IL_00b9: Unknown result type (might be due to invalid IL or missing references)
//IL_00be: Unknown result type (might be due to invalid IL or missing references)
//IL_00c5: Unknown result type (might be due to invalid IL or missing references)
//IL_00d0: Unknown result type (might be due to invalid IL or missing references)
//IL_00db: Unknown result type (might be due to invalid IL or missing references)
//IL_00dd: Unknown result type (might be due to invalid IL or missing references)
//IL_00e3: Expected O, but got Unknown
return (CardInfoStat[])(object)new CardInfoStat[5]
{
new CardInfoStat
{
positive = true,
stat = "DMG",
amount = "+200-300%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = true,
stat = "Bullet Speed",
amount = "+200-300%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = false,
stat = "Reload Time",
amount = "+150%",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = false,
stat = "Max Ammo",
amount = "1-2",
simepleAmount = (SimpleAmount)0
},
new CardInfoStat
{
positive = false,
stat = "Move Speed",
amount = "-30%",
simepleAmount = (SimpleAmount)0
}
};
}
protected override CardThemeColorType GetTheme()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0005: Unknown result type (might be due to invalid IL or missing references)
return (CardThemeColorType)0;
}
public override string GetModName()
{
return "MFM";
}
}
public class MFMBalanceMono : MonoBehaviour
{
private CardInfo[] newCards;
private float updateDelay = 0.1f;
private Player player;
private void Start()
{
player = ((Component)this).GetComponent<Player>();
}
public void Update()
{
updateDelay += Time.deltaTime;
if (!((double)updateDelay < 1.0))
{
float num = (float)((double)player.data.block.additionalBlocks * 0.20000000298023224 + 1.5);
if ((double)player.data.block.cooldown <= (double)num)
{
player.data.block.cooldown = num;
}
updateDelay = 0f;
}
}
}
public class ChessRookMono : ReversibleEffect
{
private float cooldown = 4f;
private float startTime;
private void Start()
{
base.player = ((Component)this).GetComponent<Player>();
CharacterData componentInParent = ((Component)this).GetComponentInParent<CharacterData>();
base.block = componentInParent.block;
base.gun = componentInParent.weaponHandler.gun;
Block block = base.block;
block.BlockAction = (Action<BlockTriggerType>)Delegate.Combine(block.BlockAction, new Action<BlockTriggerType>(OnBlock));
}
private void OnBlock(BlockTriggerType blockTrigger)
{
if (!((double)Time.time < (double)startTime + (double)cooldown))
{
ResetTimer();
base.player.data.healthHandler.Heal(base.data.maxHealth * 0.12f);
}
}
private void ResetTimer()
{
startTime = Time.time;
}
public void Destroy()
{
Object.Destroy((Object)(object)this);
}
}
public class NecronomiconBuffMono : ReversibleEffect
{
private bool setColor;
private bool setStats;
private float startTime;
private ColorEffect colorEffect;
private Color color = Color.red;
public void SetColor(Color color)
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
this.color = color;
}
public override void OnStart()
{
ResetTimer();
setColor = true;
}
public override void OnUpdate()
{
if (setColor)
{
ApplyColor();
setColor = false;
}
if (setStats)
{
((ReversibleEffect)this).ApplyModifiers();
}
}
private void ApplyColor()
{
//IL_0002: Unknown result type (might be due to invalid IL or missing references)
//IL_0007: Unknown result type (might be due to invalid IL or missing references)
//IL_0037: Unknown result type (might be due to invalid IL or missing references)
if (color != Color.clear)
{
colorEffect = ((Component)base.player).gameObject.AddComponent<ColorEffect>();
colorEffect.SetColor(color);
}
}
private void ResetTimer()
{
startTime = Time.time;
}
public override void OnOnDisable()
{
((ReversibleEffect)this).ClearModifiers(false);
Object.Destroy((Object)(object)colorEffect);
}
public override void OnOnDestroy()
{
((ReversibleEffect)this).ClearModifiers(false);
Object.Destroy((Object)(object)colorEffect);
}
}
public class NecronomiconMono : MonoBehaviour
{
private SoundParameterIntensity soundParameterIntensity = new SoundParameterIntensity(0.5f, (UpdateMode)0);
public static SoundEvent fieldsound;
public CharacterStatModifiers stats;
private bool canTrigger;
private bool applyStats;
private bool infBlockCD;
public Player player;
private Gun gun;
private readonly float updateDelay = 0.2f;
private float startTime;
private float effectStartTime;
private void Start()
{
player = ((Component)this).GetComponent<Player>();
stats = ((Component)this).GetComponent<CharacterStatModifiers>();
CharacterData componentInParent = ((Component)this).GetComponentInParent<CharacterData>();
ResetTimer();
canTrigger = true;
applyStats = false;
infBlockCD = false;
}
private void Update()
{
//IL_023b: Unknown result type (might be due to invalid IL or missing references)
//IL_0241: Unknown result type (might be due to invalid IL or missing references)
//IL_01a5: Unknown result type (might be due to invalid IL or missing references)
if (Time.time >= startTime + updateDelay)
{
if (stats.respawns > 0)
{
if (!canTrigger && stats.remainingRespawns > 0)
{
canTrigger = true;
}
if (stats.remainingRespawns == 0 && canTrigger)
{
NecronomiconBuffMono necronomiconBuffMono = ((Component)player).gameObject.AddComponent<NecronomiconBuffMono>();
((ReversibleEffect)necronomiconBuffMono).gunStatModifier.projectileSpeed_mult = 2f;
((ReversibleEffect)necronomiconBuffMono).gunStatModifier.damage_mult = 2f;
((ReversibleEffect)necronomiconBuffMono).gunStatModifier.attackSpeed_mult = 0.7f;
infBlockCD = true;
SoundContainer val = ScriptableObject.CreateInstance<SoundContainer>();
Random random = new Random();
int num = random.Next(1, 6);
if (num == 1)
{
val.audioClip[0] = Assets.DemRes1;
}
if (num == 2)
{
val.audioClip[0] = Assets.DemRes2;
}
if (num == 3)
{
val.audioClip[0] = Assets.DemRes3;
}
if (num == 4)
{
val.audioClip[0] = Assets.DemRes4;
}
if (num == 5)
{
val.audioClip[0] = Assets.DemRes5;
}
val.setting.volumeIntensityEnable = true;
fieldsound = ScriptableObject.CreateInstance<SoundEvent>();
fieldsound.soundContainerArray[0] = val;
soundParameterIntensity.intensity = (float)((double)((Component)this).transform.localScale.x * (double)Optionshandler.vol_Master * (double)Optionshandler.vol_Sfx / 1.2000000476837158) * 1.15f;
SoundManager.Instance.Play(fieldsound, ((Component)this).transform, (SoundParameterBase[])(object)new SoundParameterBase[1] { (SoundParameterBase)soundParameterIntensity });
canTrigger = false;
applyStats = true;
ResetEffectTimer();
}
}
ResetTimer();
if (infBlockCD)
{
player.data.block.RPCA_DoBlock(false, true, (BlockTriggerType)0, default(Vector3), false);
}
}
if (applyStats && Time.time >= effectStartTime + 5.75f)
{
Object.Destroy((Object)(object)((Component)((Component)this).GetComponent<Player>()).GetComponent<NecronomiconBuffMono>());
Debug.Log((object)"buff mono destroyed");
applyStats = false;
ResetEffectTimer();
infBlockCD = false;
}
}
private void ResetTimer()
{
startTime = Time.time;
}
private void ResetEffectTimer()
{
effectStartTime = Time.time;
}
public void Destroy()
{
Object.Destroy((Object)(object)this);
}
}
}