Decompiled source of Nevernameds Bestiary v1.7.0

NevernamedsInscryptionMod.dll

Decompiled 3 months ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using DiskCardGame;
using GBC;
using HarmonyLib;
using InscryptionAPI.Ascension;
using InscryptionAPI.Card;
using InscryptionAPI.Encounters;
using InscryptionAPI.Guid;
using InscryptionAPI.Helpers;
using NevernamedsSigils;
using Pixelplacement;
using TalkingCardUtility;
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.0", FrameworkDisplayName = "")]
[assembly: AssemblyCompany("NevernamedsInscryptionMod")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("NevernamedsInscryptionMod")]
[assembly: AssemblyTitle("NevernamedsInscryptionMod")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace TalkingCardUtility
{
	public static class TextureLoadUtility
	{
		public static Sprite ConvertTexToSprite(Texture2D tex, Vector2? pivot = null)
		{
			//IL_005f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0064: Unknown result type (might be due to invalid IL or missing references)
			//IL_0022: 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)
			Vector2 val = default(Vector2);
			((Vector2)(ref val))..ctor(0.5f, 0.5f);
			if (pivot.HasValue)
			{
				((Vector2)(ref val))..ctor(pivot.Value.x, pivot.Value.y);
			}
			((Texture)tex).filterMode = (FilterMode)0;
			return Sprite.Create(tex, new Rect(0f, 0f, (float)((Texture)tex).width, (float)((Texture)tex).height), val, 100f);
		}

		public static Texture2D LoadTex(string path)
		{
			//IL_000a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0010: Expected O, but got Unknown
			byte[] array = ExtractEmbeddedResource(path);
			Texture2D val = new Texture2D(2, 2);
			ImageConversion.LoadImage(val, array);
			((Texture)val).filterMode = (FilterMode)0;
			return val;
		}

		public static byte[] ExtractEmbeddedResource(string filePath)
		{
			filePath = filePath.Replace("/", ".");
			filePath = filePath.Replace("\\", ".");
			Assembly callingAssembly = Assembly.GetCallingAssembly();
			using Stream stream = callingAssembly.GetManifestResourceStream(filePath);
			if (stream == null)
			{
				return null;
			}
			byte[] array = new byte[stream.Length];
			stream.Read(array, 0, array.Length);
			return array;
		}
	}
	public static class DialogueEventGenerator
	{
		public static DialogueEvent GenerateEvent(string name, List<CustomLine> mainLines, List<List<CustomLine>> repeatLines, MaxRepeatsBehaviour afterMaxRepeats)
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_000d: Expected O, but got Unknown
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0044: Expected O, but got Unknown
			//IL_005d: Unknown result type (might be due to invalid IL or missing references)
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			DialogueEvent val = new DialogueEvent();
			List<Speaker> speakers = new List<Speaker> { (Speaker)0 };
			val.id = name;
			val.mainLines = new LineSet(mainLines.ConvertAll((CustomLine x) => x.ToLine(speakers)));
			val.repeatLines = repeatLines.ConvertAll((Converter<List<CustomLine>, LineSet>)((List<CustomLine> x) => new LineSet(x.ConvertAll((CustomLine x2) => x2.ToLine(speakers)))));
			val.maxRepeatsBehaviour = afterMaxRepeats;
			val.speakers = new List<Speaker>(speakers);
			DialogueDataUtil.Data?.events?.Add(val);
			return val;
		}
	}
	public class CustomLine
	{
		public Face p03Face;

		public Emotion emotion;

		public LetterAnimation letterAnimation;

		public Speaker speaker;

		public string text;

		public string specialInstruction;

		public StoryEvent storyCondition = (StoryEvent)0;

		public bool storyConditionMustBeMet;

		public Line ToLine(List<Speaker> speakers)
		{
			//IL_0003: Unknown result type (might be due to invalid IL or missing references)
			//IL_0023: Unknown result type (might be due to invalid IL or missing references)
			//IL_0028: Unknown result type (might be due to invalid IL or missing references)
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_002f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0034: Unknown result type (might be due to invalid IL or missing references)
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			//IL_003b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0040: Unknown result type (might be due to invalid IL or missing references)
			//IL_0042: Unknown result type (might be due to invalid IL or missing references)
			//IL_0047: 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_004f: Unknown result type (might be due to invalid IL or missing references)
			//IL_005e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0017: 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_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_008a: Unknown result type (might be due to invalid IL or missing references)
			//IL_008f: 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_00a1: Expected O, but got Unknown
			if (!speakers.Contains(speaker))
			{
				speakers.Add(speaker);
			}
			return new Line
			{
				p03Face = p03Face,
				emotion = emotion,
				letterAnimation = letterAnimation,
				speakerIndex = speakers.IndexOf(speaker),
				text = (text ?? ""),
				specialInstruction = (specialInstruction ?? ""),
				storyCondition = storyCondition,
				storyConditionMustBeMet = storyConditionMustBeMet
			};
		}

		public static implicit operator CustomLine(string str)
		{
			return new CustomLine
			{
				text = str
			};
		}

		public static implicit operator CustomLine((string, LetterAnimation, Emotion) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: 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_0025: Unknown result type (might be due to invalid IL or missing references)
			return new CustomLine
			{
				text = param.Item1,
				emotion = param.Item3,
				letterAnimation = param.Item2
			};
		}

		public static implicit operator CustomLine((string, LetterAnimation) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			CustomLine customLine = new CustomLine();
			(customLine.text, customLine.letterAnimation) = param;
			return customLine;
		}

		public static implicit operator CustomLine((string, LetterAnimation, Speaker) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: 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_0025: Unknown result type (might be due to invalid IL or missing references)
			return new CustomLine
			{
				text = param.Item1,
				speaker = param.Item3,
				letterAnimation = param.Item2
			};
		}

		public static implicit operator CustomLine((string, LetterAnimation, Speaker, Emotion) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: 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_0025: Unknown result type (might be due to invalid IL or missing references)
			//IL_002c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0031: Unknown result type (might be due to invalid IL or missing references)
			return new CustomLine
			{
				text = param.Item1,
				speaker = param.Item3,
				letterAnimation = param.Item2,
				emotion = param.Item4
			};
		}

		public static implicit operator CustomLine((string, Emotion) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			CustomLine customLine = new CustomLine();
			(customLine.text, customLine.emotion) = param;
			return customLine;
		}

		public static implicit operator CustomLine((string, Emotion, Speaker) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: 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_0025: Unknown result type (might be due to invalid IL or missing references)
			return new CustomLine
			{
				text = param.Item1,
				speaker = param.Item3,
				emotion = param.Item2
			};
		}

		public static implicit operator CustomLine((string, Speaker) param)
		{
			//IL_0014: Unknown result type (might be due to invalid IL or missing references)
			//IL_0019: Unknown result type (might be due to invalid IL or missing references)
			CustomLine customLine = new CustomLine();
			(customLine.text, customLine.speaker) = param;
			return customLine;
		}
	}
}
namespace NevernamedsInscryptionMod
{
	public static class CardExtensions
	{
		public static void WipeAllAbilities(this PlayableCard card)
		{
			//IL_0001: Unknown result type (might be due to invalid IL or missing references)
			//IL_0007: Expected O, but got Unknown
			CardModificationInfo val = new CardModificationInfo();
			val.negateAbilities = new List<Ability>();
			foreach (CardModificationInfo temporaryMod in card.TemporaryMods)
			{
				val.negateAbilities.AddRange(temporaryMod.abilities);
			}
			val.negateAbilities.AddRange(((Card)card).Info.Abilities);
			card.AddTemporaryMod(val);
		}

		public static void ArachnophobiaMode(this CardInfo card, string name)
		{
			card.portraitTex = Tools.ConvertTexToSprite(Tools.LoadTex("NevernamedsInscryptionMod/Resources/ArachnophobiaMode/" + name + "phobia.png"));
			TextureHelper.RegisterEmissionForSprite(card.portraitTex, Tools.ConvertTexToSprite(Tools.LoadTex("NevernamedsInscryptionMod/Resources/ArachnophobiaMode/" + name + "phobia_emission.png")));
			Debug.Log((object)("    Modified: " + name));
		}

		public static void ArachnophobiaModePixel(this CardInfo card, string name)
		{
			card.pixelPortrait = Tools.ConvertTexToSprite(Tools.LoadTex("NevernamedsInscryptionMod/Resources/ArachnophobiaMode/" + name + "phobia_pixel.png"));
			Debug.Log((object)("    Modified: " + name + " (Pixel)"));
		}
	}
	internal class CardSetupUtility
	{
		public static Dictionary<Tribe, string> TribalTailDefault = new Dictionary<Tribe, string>
		{
			{
				(Tribe)3,
				"Tail_Furry"
			},
			{
				(Tribe)2,
				"Tail_Bird"
			},
			{
				(Tribe)6,
				"Tail_Insect"
			},
			{
				(Tribe)4,
				"Tail_Furry"
			},
			{
				(Tribe)1,
				"Tail_Furry"
			},
			{
				NevernamedsTribes.Crustacean,
				"SigilNevernamed WrigglingPereiopod"
			},
			{
				NevernamedsTribes.Arachnid,
				"Tail_Insect"
			},
			{
				NevernamedsTribes.Rodent,
				"SigilNevernamed WormyTail"
			}
		};

		public static Dictionary<CardTemple, string> templeToPrefix = new Dictionary<CardTemple, string>
		{
			{
				(CardTemple)0,
				"BeastNevernamed"
			},
			{
				(CardTemple)2,
				"TechNevernamed"
			},
			{
				(CardTemple)1,
				"DeadNevernamed"
			},
			{
				(CardTemple)3,
				"WizardNevernamed"
			}
		};

		public static CardInfo NewCard(string internalName, string displayname, int power, int health, List<CardMetaCategory> categories, CardTemple temple, string description, int bloodCost = 0, int bonesCost = 0, int energyCost = 0, List<GemType> gemsCost = null, List<Ability> abilities = null, Texture2D defaultTex = null, Texture2D emissionTex = null, Texture2D pixelTex = null, Texture2D altTexture = null, Texture2D altTextureEmission = null, Texture2D titleGraphic = null, List<Texture> decals = null, List<Appearance> appearanceBehaviour = null, List<Tribe> tribes = null, bool preventSignature = false, List<Trait> traits = null, string defaultTailCard = null, string defaultEvolutionCard = null, string defaultEvolutionName = null, int defaultEvolutionTurns = 1, string defaultFrozenCard = null, Texture2D tailLostTexture = null, List<SpecialTriggeredAbility> specialAbilities = null, SpecialStatIcon variableStat = 0, bool hideStats = false, bool onePerDeck = false, GameObject animatedPortrait = null, bool flipPortraitWhenStrafing = false, string overrideDamID = null, string overrideDamBlockedDialogue = null, string overrideFactoryConduitSpawn = null, string overrideRabbitHoleSpawn = null, string overrideAntSpawnerSpawn = null, string overrideBellistID = null, string overrideBellistBlockedDialogue = null, string overrideSquirrelShedderId = null, string overrideSkeletonCrewID = null, string overrideBeesWithinID = null, string twisterForm = null, string transformerForm = null, string overrideLeftClaw = null, string overrideRightClaw = null, string customDoomedLifespan = null, string customGutSpewerGuts = null, string customExplodingCorpseGuts = null, string customOrganThiefGuts = null, string harbingerLeaveBehind = null, string tramplerLeaveBehind = null, string flightyLeaveBehind = null, string parthenogenesisOverride = null, string sigilShedderDef = null, bool preventBones = false, bool preventCampfire = false, bool preventSigilVictim = false, bool preventSigilHost = false, bool customGiftBearerSpawnsRares = false, string erraticLeaveBehind = null, bool preventPlay = false, string fatalFlankDef = null, bool allStrikesDoubled = false, string phantasmicLeaveBehind = null, bool preventCampfireHealth = false, bool preventCampfireDamage = false, string venatorForm = null, string bloodbornForm = null)
		{
			//IL_0018: 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_0046: Unknown result type (might be due to invalid IL or missing references)
			//IL_005b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0077: Unknown result type (might be due to invalid IL or missing references)
			//IL_0079: Unknown result type (might be due to invalid IL or missing references)
			//IL_0088: Unknown result type (might be due to invalid IL or missing references)
			//IL_010c: Unknown result type (might be due to invalid IL or missing references)
			//IL_010f: Invalid comparison between Unknown and I4
			//IL_0116: 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_017c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0181: Unknown result type (might be due to invalid IL or missing references)
			//IL_0193: Expected O, but got Unknown
			//IL_01af: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c4: Unknown result type (might be due to invalid IL or missing references)
			//IL_01c9: Unknown result type (might be due to invalid IL or missing references)
			//IL_01d6: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ef: Expected O, but got Unknown
			//IL_0729: Unknown result type (might be due to invalid IL or missing references)
			//IL_072c: Invalid comparison between Unknown and I4
			//IL_077a: Unknown result type (might be due to invalid IL or missing references)
			//IL_077d: Invalid comparison between Unknown and I4
			//IL_07f7: Unknown result type (might be due to invalid IL or missing references)
			//IL_07b8: Unknown result type (might be due to invalid IL or missing references)
			//IL_07bb: Invalid comparison between Unknown and I4
			//IL_080c: Unknown result type (might be due to invalid IL or missing references)
			internalName = internalName.Replace("Nevernamed ", "");
			internalName = (templeToPrefix.ContainsKey(temple) ? templeToPrefix[temple] : "Nevernamed") + " " + internalName;
			CardInfo val = CardManager.New(templeToPrefix.ContainsKey(temple) ? templeToPrefix[temple] : "Nevernamed", internalName, displayname, power, health, description);
			val.metaCategories = categories;
			val.temple = temple;
			val.cost = bloodCost;
			val.cardComplexity = (CardComplexity)1;
			val.bonesCost = bonesCost;
			val.gemsCost = ((gemsCost != null) ? gemsCost : new List<GemType>());
			val.energyCost = energyCost;
			val.abilities = ((abilities != null) ? abilities : new List<Ability>());
			val.tribes = ((tribes != null) ? tribes : new List<Tribe>());
			val.traits = ((traits != null) ? traits : new List<Trait>());
			if (specialAbilities != null && specialAbilities.Count > 0)
			{
				CardExtensions.AddSpecialAbilities(val, specialAbilities.ToArray());
			}
			if ((int)variableStat > 0)
			{
				val.specialStatIcon = variableStat;
			}
			if (!string.IsNullOrEmpty(defaultEvolutionName))
			{
				val.defaultEvolutionName = defaultEvolutionName;
			}
			if (!string.IsNullOrEmpty(defaultEvolutionCard))
			{
				CardExtensions.SetEvolve(val, defaultEvolutionCard, defaultEvolutionTurns, (IEnumerable<CardModificationInfo>)null);
			}
			if (!string.IsNullOrEmpty(defaultFrozenCard))
			{
				CardExtensions.SetIceCube(val, defaultFrozenCard, (IEnumerable<CardModificationInfo>)null);
			}
			if (!string.IsNullOrEmpty(defaultTailCard))
			{
				val.tailParams = new TailParams
				{
					tail = CardLoader.GetCardByName(defaultTailCard)
				};
			}
			else if (val.tribes.Count > 0 && TribalTailDefault.ContainsKey(val.tribes[0]))
			{
				val.tailParams = new TailParams
				{
					tail = CardLoader.GetCardByName(TribalTailDefault[val.tribes[0]])
				};
			}
			if (!string.IsNullOrEmpty(overrideDamID))
			{
				CardExtensions.SetExtendedProperty(val, "CustomDamDefinition", (object)overrideDamID);
			}
			if (!string.IsNullOrEmpty(overrideDamBlockedDialogue))
			{
				CardExtensions.SetExtendedProperty(val, "CustomDamDefinitionDialogue", (object)overrideDamID);
			}
			if (!string.IsNullOrEmpty(overrideRabbitHoleSpawn))
			{
				CardExtensions.SetExtendedProperty(val, "CustomRabbitHoleDefinition", (object)overrideRabbitHoleSpawn);
			}
			if (!string.IsNullOrEmpty(overrideAntSpawnerSpawn))
			{
				CardExtensions.SetExtendedProperty(val, "CustomAntSpawnerDefinition", (object)overrideAntSpawnerSpawn);
			}
			if (!string.IsNullOrEmpty(overrideFactoryConduitSpawn))
			{
				CardExtensions.SetExtendedProperty(val, "CustomFactoryConduitDefinition", (object)overrideFactoryConduitSpawn);
			}
			if (!string.IsNullOrEmpty(overrideBellistID))
			{
				CardExtensions.SetExtendedProperty(val, "CustomBellDefinition", (object)overrideBellistID);
			}
			if (!string.IsNullOrEmpty(overrideBellistBlockedDialogue))
			{
				CardExtensions.SetExtendedProperty(val, "CustomBellDefinitionDialogue", (object)overrideBellistBlockedDialogue);
			}
			if (!string.IsNullOrEmpty(overrideSquirrelShedderId))
			{
				CardExtensions.SetExtendedProperty(val, "CustomSquirrelShedderDefinition", (object)overrideSquirrelShedderId);
			}
			if (!string.IsNullOrEmpty(overrideSkeletonCrewID))
			{
				CardExtensions.SetExtendedProperty(val, "CustomSkeletonCrewDefinition", (object)overrideSkeletonCrewID);
			}
			if (!string.IsNullOrEmpty(overrideBeesWithinID))
			{
				CardExtensions.SetExtendedProperty(val, "CustomBeesWithinDefinition", (object)overrideBeesWithinID);
			}
			if (!string.IsNullOrEmpty(twisterForm))
			{
				CardExtensions.SetExtendedProperty(val, "TwisterTransformation", (object)twisterForm);
			}
			if (!string.IsNullOrEmpty(venatorForm))
			{
				CardExtensions.SetExtendedProperty(val, "VenatorTransformation", (object)venatorForm);
			}
			if (!string.IsNullOrEmpty(bloodbornForm))
			{
				CardExtensions.SetExtendedProperty(val, "BloodBornTransformation", (object)bloodbornForm);
			}
			if (!string.IsNullOrEmpty(transformerForm))
			{
				CardExtensions.SetExtendedProperty(val, "CustomTransformerTransformation", (object)transformerForm);
			}
			if (!string.IsNullOrEmpty(overrideLeftClaw))
			{
				CardExtensions.SetExtendedProperty(val, "ClawedLeftClawOverride", (object)overrideLeftClaw);
			}
			if (!string.IsNullOrEmpty(overrideRightClaw))
			{
				CardExtensions.SetExtendedProperty(val, "ClawedRightClawOverride", (object)overrideRightClaw);
			}
			if (!string.IsNullOrEmpty(customGutSpewerGuts))
			{
				CardExtensions.SetExtendedProperty(val, "GutSpewerGutOverride", (object)customGutSpewerGuts);
			}
			if (!string.IsNullOrEmpty(customExplodingCorpseGuts))
			{
				CardExtensions.SetExtendedProperty(val, "ExplodingCorpseGutOverride", (object)customExplodingCorpseGuts);
			}
			if (!string.IsNullOrEmpty(customOrganThiefGuts))
			{
				CardExtensions.SetExtendedProperty(val, "OrganThiefGutOverride", (object)customOrganThiefGuts);
			}
			if (!string.IsNullOrEmpty(parthenogenesisOverride))
			{
				CardExtensions.SetExtendedProperty(val, "ParthenogenesisOverride", (object)parthenogenesisOverride);
			}
			if (!string.IsNullOrEmpty(sigilShedderDef))
			{
				CardExtensions.SetExtendedProperty(val, "OverrideSigilShedderDefinition", (object)sigilShedderDef);
			}
			if (!string.IsNullOrEmpty(fatalFlankDef))
			{
				CardExtensions.SetExtendedProperty(val, "FatalFlankOverride", (object)fatalFlankDef);
			}
			if (!string.IsNullOrEmpty(harbingerLeaveBehind))
			{
				CardExtensions.SetExtendedProperty(val, "HarbingerLeaveBehind", (object)harbingerLeaveBehind);
			}
			if (!string.IsNullOrEmpty(tramplerLeaveBehind))
			{
				CardExtensions.SetExtendedProperty(val, "TramplerLeaveBehind", (object)tramplerLeaveBehind);
			}
			if (!string.IsNullOrEmpty(flightyLeaveBehind))
			{
				CardExtensions.SetExtendedProperty(val, "FlightyLeaveBehind", (object)flightyLeaveBehind);
			}
			if (!string.IsNullOrEmpty(erraticLeaveBehind))
			{
				CardExtensions.SetExtendedProperty(val, "ErraticLeaveBehind", (object)erraticLeaveBehind);
			}
			if (!string.IsNullOrEmpty(phantasmicLeaveBehind))
			{
				CardExtensions.SetExtendedProperty(val, "PhantasmicLeaveBehind", (object)phantasmicLeaveBehind);
			}
			if (!string.IsNullOrEmpty(customDoomedLifespan))
			{
				CardExtensions.SetExtendedProperty(val, "CustomDoomedDuration", (object)customDoomedLifespan);
			}
			if (preventBones)
			{
				CardExtensions.SetExtendedProperty(val, "PreventBones", (object)"Yes");
			}
			if (preventCampfire)
			{
				CardExtensions.SetExtendedProperty(val, "BannedFromCampfire", (object)"Yes");
			}
			if (preventCampfireDamage)
			{
				CardExtensions.SetExtendedProperty(val, "BannedFromCampfireDamage", (object)"Yes");
			}
			if (preventCampfireHealth)
			{
				CardExtensions.SetExtendedProperty(val, "BannedFromCampfireHealth", (object)"Yes");
			}
			if (preventSigilVictim)
			{
				CardExtensions.SetExtendedProperty(val, "BannedSigilTransferVictim", (object)"Yes");
			}
			if (preventSigilHost)
			{
				CardExtensions.SetExtendedProperty(val, "BannedSigilTransferTarget", (object)"Yes");
			}
			if (customGiftBearerSpawnsRares)
			{
				CardExtensions.SetExtendedProperty(val, "CustomGiftBearerSpawnsRare", (object)"Yes");
			}
			if (preventPlay)
			{
				CardExtensions.SetExtendedProperty(val, "PreventPlay", (object)"Yes");
			}
			if (allStrikesDoubled)
			{
				CardExtensions.SetExtendedProperty(val, "AllStrikesDoubled", (object)"Yes");
			}
			if ((Object)(object)defaultTex != (Object)null)
			{
				CardExtensions.SetPortrait(val, defaultTex, (FilterMode?)null);
			}
			if ((Object)(object)emissionTex != (Object)null)
			{
				CardExtensions.SetEmissivePortrait(val, emissionTex, (FilterMode?)null);
			}
			if ((Object)(object)pixelTex != (Object)null)
			{
				CardExtensions.SetPixelPortrait(val, pixelTex, (FilterMode?)null);
			}
			if ((Object)(object)altTexture != (Object)null)
			{
				CardExtensions.SetAltPortrait(val, altTexture, (FilterMode?)null);
			}
			if ((Object)(object)altTextureEmission != (Object)null)
			{
				CardExtensions.SetEmissiveAltPortrait(val, altTextureEmission, (FilterMode?)null);
			}
			if ((Object)(object)titleGraphic != (Object)null)
			{
				val.titleGraphic = (Texture)(object)titleGraphic;
			}
			if ((Object)(object)tailLostTexture != (Object)null)
			{
				CardExtensions.SetLostTailPortrait(val, tailLostTexture, (FilterMode?)(FilterMode)0);
			}
			val.hideAttackAndHealth = hideStats;
			val.onePerDeck = onePerDeck;
			val.animatedPortrait = animatedPortrait;
			val.flipPortraitForStrafe = flipPortraitWhenStrafing;
			List<Texture> list = new List<Texture>();
			if ((int)temple == 2)
			{
				list.AddRange(new List<Texture>
				{
					(Texture)(object)Plugin.blankDecal,
					(Texture)(object)Plugin.blankDecal2
				});
			}
			if (decals != null)
			{
				list.AddRange(decals);
			}
			if (!preventSignature)
			{
				if ((int)temple == 0)
				{
					if (appearanceBehaviour != null && appearanceBehaviour.Contains((Appearance)7))
					{
						list.Add((Texture)(object)Plugin.raresignaturetex);
					}
					else
					{
						list.Add((Texture)(object)Plugin.signaturetex);
					}
				}
				else if ((int)temple == 2)
				{
					list.Add((Texture)(object)Plugin.techsignature);
				}
			}
			val.decals = list;
			if (appearanceBehaviour != null)
			{
				CardExtensions.AddAppearances(val, appearanceBehaviour.ToArray());
			}
			CardManager.Add(templeToPrefix.ContainsKey(temple) ? templeToPrefix[temple] : "Nevernamed", val);
			return val;
		}
	}
	[BepInPlugin("nevernamedscustominscryptioncards", "Nevernamed's Deck", "1.3.0.0")]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	[BepInDependency(/*Could not decode attribute arguments.*/)]
	public class Plugin : BaseUnityPlugin
	{
		public const string PluginGuid = "nevernamedscustominscryptioncards";

		private const string PluginName = "Nevernamed's Deck";

		private const string PluginVersion = "1.3.0.0";

		public static Texture2D signaturetex;

		public static Texture2D techsignature;

		public static Texture2D raresignaturetex;

		public static Texture2D blankDecal;

		public static Texture2D blankDecal2;

		public static AssetBundle bundle;

		public static Dictionary<string, string> arachnophobiaModifications = new Dictionary<string, string>
		{
			{ "BeastNevernamed Anansi", "anansi" },
			{ "BeastNevernamed Ararach", "ararach" },
			{ "BeastNevernamed BlackWidow", "blackwidow" },
			{ "BeastNevernamed BrownRecluse", "brownrecluse" },
			{ "BeastNevernamed Bugbear", "bugbear" },
			{ "BeastNevernamed CamelSpider", "camelspider" },
			{ "BeastNevernamed CellarSpider", "cellarspider" },
			{ "BeastNevernamed CrabSpider", "crabspider" },
			{ "BeastNevernamed CrayfishDuo", "crayfish" },
			{ "BeastNevernamed CrayfishBi", "crayfish" },
			{ "BeastNevernamed Deathstalker", "deathstalker" },
			{ "BeastNevernamed DyingSpider", "dyingspider" },
			{ "BeastNevernamed Emmet", "emmet" },
			{ "BeastNevernamed GiftSpider", "giftspider" },
			{ "BeastNevernamed Huntsman", "huntsman" },
			{ "BeastNevernamed Isopod", "isopod" },
			{ "BeastNevernamed ItsyBitsy", "itsybitsy" },
			{ "BeastNevernamed Jorogumo", "jorogumo" },
			{ "BeastNevernamed JumpingSpider", "jumpingspider" },
			{ "BeastNevernamed Kokyangwuti", "kokyangwuti" },
			{ "BeastNevernamed LengSpider", "lengspider" },
			{ "BeastNevernamed LittleMiss", "littlemiss" },
			{ "BeastNevernamed LynxSpider", "lynxspider" },
			{ "BeastNevernamed Tarantula", "tarantula" },
			{ "BeastNevernamed Sicarius", "sicarius" },
			{ "BeastNevernamed SicariusBuried", "sicariusburied" },
			{ "BeastNevernamed Neocarus", "neocarus" },
			{ "BeastNevernamed NeocarusTwo", "neocarus" },
			{ "BeastNevernamed NeocarusThree", "neocarus" },
			{ "BeastNevernamed Macracantha", "macracantha" },
			{ "BeastNevernamed MacracanthaBi", "macracantha" },
			{ "BeastNevernamed MacracanthaTri", "macracantha" },
			{ "BeastNevernamed OrbWeaver", "orbweaver" },
			{ "BeastNevernamed SeaSpider", "seaspider" },
			{ "BeastNevernamed WhiteTailed", "whitetailed" },
			{ "BeastNevernamed WanderingSpider", "wanderingspider" },
			{ "BeastNevernamed Bannana", "bannana" },
			{ "BeastNevernamed Harvestman", "harvestman" },
			{ "BeastNevernamed YellowSacSpider", "yellowsacspider" }
		};

		public static Dictionary<string, string> arachnophobiaModificationsPixel = new Dictionary<string, string>
		{
			{ "BeastNevernamed CrayfishDuo", "crayfish" },
			{ "BeastNevernamed CrayfishBi", "crayfish" },
			{ "BeastNevernamed DyingSpider", "dyingspider" },
			{ "BeastNevernamed Huntsman", "huntsman" },
			{ "BeastNevernamed Bugbear", "bugbear" },
			{ "BeastNevernamed Kokyangwuti", "kokyangwuti" },
			{ "BeastNevernamed Emmet", "emmet" },
			{ "BeastNevernamed CrabSpider", "crabspider" },
			{ "BeastNevernamed LengSpider", "lengspider" }
		};

		internal static ConfigEntry<bool> arachnophobiaMode;

		public static readonly CardMetaCategory P03KayceesWizardRegion = GuidManager.GetEnumValue<CardMetaCategory>("zorro.inscryption.infiniscryption.p03kayceerun", "WizardRegionCards");

		public static readonly CardMetaCategory P03KayceesBastionRegion = GuidManager.GetEnumValue<CardMetaCategory>("zorro.inscryption.infiniscryption.p03kayceerun", "TechRegionCards");

		public static readonly CardMetaCategory P03KayceesNatureRegion = GuidManager.GetEnumValue<CardMetaCategory>("zorro.inscryption.infiniscryption.p03kayceerun", "NatureRegionCards");

		public static readonly CardMetaCategory P03KayceesUndeadRegion = GuidManager.GetEnumValue<CardMetaCategory>("zorro.inscryption.infiniscryption.p03kayceerun", "UndeadRegionCards");

		public static readonly CardMetaCategory P03KayceesNeutralRegion = GuidManager.GetEnumValue<CardMetaCategory>("zorro.inscryption.infiniscryption.p03kayceerun", "NeutralRegionCards");

		public static readonly CardMetaCategory ExcludeFromAct2Endless = GuidManager.GetEnumValue<CardMetaCategory>("mrfantastik.inscryption.infact2", "ExcludeFromAct2Endless");

		public static readonly CardMetaCategory GrimoraChoiceNode = GuidManager.GetEnumValue<CardMetaCategory>("arackulele.inscryption.grimoramod", "GrimoraModChoiceNode");

		private void Awake()
		{
			//IL_0026: Unknown result type (might be due to invalid IL or missing references)
			//IL_002c: Expected O, but got Unknown
			bundle = LoadBundle("NevernamedsInscryptionMod/Resources/TalkingCards/nnscryptionbundle");
			((BaseUnityPlugin)this).Logger.LogInfo((object)"Loaded Nevernamed's Deck!");
			Harmony val = new Harmony("nevernamedscustominscryptioncards.harmonypatcher");
			val.PatchAll();
			signaturetex = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Other/signature.png");
			techsignature = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Other/techsignature.png");
			raresignaturetex = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Other/signaturerare.png");
			blankDecal = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Other/blankdecaltex.png");
			blankDecal2 = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Other/blankdecaltex.png");
			AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)57).Info.canStack = true;
			AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)51).Info.canStack = true;
			AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)12).Info.canStack = true;
			AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)1).Info.canStack = true;
			AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)79).Info.canStack = true;
			AbilityExtensions.AddMetaCategories(AbilityExtensions.AbilityByID((IEnumerable<FullAbility>)AbilityManager.BaseGameAbilities, (Ability)71).Info, (AbilityMetaCategory[])(object)new AbilityMetaCategory[2]
			{
				(AbilityMetaCategory)1,
				default(AbilityMetaCategory)
			});
			CardExtensions.SetPixelPortrait(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "!STATIC!GLITCH"), Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/staticpixel.png"), (FilterMode?)null);
			CardExtensions.SetPixelPortrait(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "PackRat"), Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/packrat_pixel.png"), (FilterMode?)null);
			CardExtensions.SetPixelPortrait(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "Boulder"), Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/boulder_pixel.png"), (FilterMode?)null);
			CardExtensions.SetExtendedProperty(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "BatteryBot"), "GBCMycologistFusedVersion", (object)"TechNevernamed SporenergyBot");
			CardExtensions.SetExtendedProperty(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "Family"), "GBCMycologistFusedVersion", (object)"DeadNevernamed TheSporekers");
			CardExtensions.SetExtendedProperty(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "Warren"), "GBCMycologistFusedVersion", (object)"BeastNevernamed Sporren");
			CardExtensions.SetExtendedProperty(CardExtensions.CardByName((IEnumerable<CardInfo>)CardManager.BaseGameCards, "MasterOrlu"), "GBCMycologistFusedVersion", (object)"WizardNevernamed MasterSporlu");
			arachnophobiaMode = ((BaseUnityPlugin)this).Config.Bind<bool>("General", "Arachnophobia Mode", false, "Replaces the portraits of spider and spiderlike cards to be less realistic.");
			CreateCopyOnInsects.Init();
			LiliputianPileup.Init();
			OpposedShifter.Init();
			GrueAttackColourOverride.Init();
			BoardWipe.Init();
			CreateCharredLump.Init();
			ChaosCardBehaviour.Init();
			WizardOfOz.Init();
			BlankObelisk.Init();
			SquirrelObelisk.Init();
			MendingObelisk.Init();
			PoppingToad.Init();
			BeachedWhale.Init();
			ExplodingAnt.Init();
			AntLarva.Init();
			Copycat.Init();
			Finch.Init();
			Whippoorwill.Init();
			Earthworm.Init();
			VelvetWorm.Init();
			Nematode.Init();
			Marmot.Init();
			TeWheke.Init();
			Cobra.Init();
			KingCobra.Init();
			Capybara.Init();
			Leech.Init();
			DeBug.Init();
			BloatedLeech.Init();
			Mayfly.Init();
			Goose.Init();
			Silkworm.Init();
			Dodo.Init();
			Bugbear.Init();
			Octopus.Init();
			BlindMouse.Init();
			RabidDog.Init();
			Impossibeast.Init();
			Monarch.Init();
			Salamander.Init();
			GreenFang.Init();
			WildBoar.Init();
			Basilisk.Init();
			TrapjawAnt.Init();
			BobbitWorm.Init();
			CursedChild.Init();
			ToothBug.Init();
			JumpingSpider.Init();
			Phouka.Init();
			Brollachan.Init();
			Taurobolium.Init();
			Spambot.Init();
			LoneWolf.Init();
			CamelSpider.Init();
			Mistake.Init();
			Chupacabra.Init();
			Scarab.Init();
			Khepri.Init();
			Huntaway.Init();
			Parrot.Init();
			Karkinos.Init();
			TasmanianDevil.Init();
			ReEm.Init();
			Ladybug.Init();
			Areion.Init();
			Bison.Init();
			Dermestid.Init();
			Huntsman.Init();
			Springbok.Init();
			Crayfish.Init();
			CowardlyLion.Init();
			TheBlob.Init();
			DeerGod.Init();
			Skinwalker.Init();
			BlueRinged.Init();
			Stonefish.Init();
			SelkieSkin.Init();
			BlindScorpion.Init();
			ThornedCordyceps.Init();
			VisceraTentacle.Init();
			Dhole.Init();
			DudEgg.Init();
			NightMare.Init();
			NightmareFuel.Init();
			Frid.Init();
			Urchin.Init();
			OrbWeaver.Init();
			Barnacle.Init();
			Pygarg.Init();
			SpectralTarsier.Init();
			YaraMaYhaWho.Init();
			ManTis.Init();
			Anansi.Init();
			Gadreel.Init();
			Gnat.Init();
			RhinoBeetle.Init();
			BlackDog.Init();
			Boneworm.Init();
			CarrionFly.Init();
			Pig.Init();
			StarnosedMole.Init();
			BlackGiantSquirrel.Init();
			Empusa.Init();
			BoardTentacle.Init();
			Scylla.Init();
			Bakunawa.Init();
			Kokyangwuti.Init();
			TheFlesh.Init();
			Antlion.Init();
			CactusAnt.Init();
			NoEyeDeer.Init();
			DyingSpider.Init();
			ExplodingBunny.Init();
			Lion.Init();
			BrownRecluse.Init();
			TermiteQueen.Init();
			TermiteKingCard.Init();
			Starling.Init();
			Jackal.Init();
			Isopod.Init();
			Mealybug.Init();
			TitanicIsopod.Init();
			LittleBlue.Init();
			Dingo.Init();
			Dormouse.Init();
			CellarSpider.Init();
			Grue.Init();
			Emmet.Init();
			SnakeEyes.Init();
			Hallucigenia.Init();
			CrabSpider.Init();
			TurtleDove.Init();
			LengSpider.Init();
			Mugwump.Init();
			WhiteTailed.Init();
			DikDik.Init();
			ThickLizard.Init();
			Tick.Init();
			AlligatorGar.Init();
			Fangtooth.Init();
			Pufferfish.Init();
			StarvedRat.Init();
			Myrmecoleon.Init();
			Locust.Init();
			FeatherlessBiped.Init();
			BaldEagle.Init();
			Blowfly.Init();
			FlyingFish.Init();
			Macracantha.Init();
			Popweasel.Init();
			MauiDolphin.Init();
			EagerHatcling.Init();
			SandDollar.Init();
			Nidhoggr.Init();
			RedCard.Init();
			Handragora.Init();
			GiantEarthworm.Init();
			DireRat.Init();
			MoleLizard.Init();
			Moeraki.Init();
			Fantail.Init();
			Harvestman.Init();
			Squidge.Init();
			Albatross.Init();
			AlbatrossChick.Init();
			ThornyDevil.Init();
			FauxDeathcards.Init();
			AderynYCorph.Init();
			RedPanda.Init();
			GiftSpider.Init();
			Gruagach.Init();
			Wishpoosh.Init();
			SeaSpider.Init();
			CanopicHawk.Init();
			AnnoyingDog.Init();
			HiveCrawler.Init();
			Biscione.Init();
			Niao.Init();
			BlackWidow.Init();
			Bowerbird.Init();
			Talbot.Init();
			BloodRedDog.Init();
			BombardierBeetle.Init();
			HotDog.Init();
			Labrats.Init();
			Ararach.Init();
			HeartOfHarts.Init();
			Charybdis.Init();
			ThePack.Init();
			BloodWolf.Init();
			InfectedAnt.Init();
			Macaque.Init();
			Glochidium.Init();
			ConeSnail.Init();
			WhipWorm.Init();
			RedMite.Init();
			Trapezia.Init();
			MayflySwarm.Init();
			Jorogumo.Init();
			CagedBeasts.Init();
			ColossalSquid.Init();
			Masok.Init();
			Vodyanoy.Init();
			Oddfang.Init();
			DiseasedCur.Init();
			BlastTermite.Init();
			ScaleTick.Init();
			CharredLump.Init();
			Kuchipatchi.Init();
			Wyrm.Init();
			Deepstaria.Init();
			LeafcutterAnt.Init();
			DireBeaver.Init();
			Antingaw.Init();
			PeaCrab.Init();
			BrineShrimp.Init();
			Hippopotamus.Init();
			Cow.Init();
			Anemone.Init();
			BoneClutter.Init();
			Hyena.Init();
			EarlyBird.Init();
			Livyatan.Init();
			Warg.Init();
			ParrotFish.Init();
			Fjalar.Init();
			Gullinkambi.Init();
			BeastOfExmoor.Init();
			WhirlingWhimpus.Init();
			Helhest.Init();
			GhostNudi.Init();
			Cockle.Init();
			Coral.Init();
			Chicken.Init();
			Aspidochelone.Init();
			Hammerkop.Init();
			Sphinx.Init();
			Gibbon.Init();
			Hafgufa.Init();
			Neocarus.Init();
			Megaladaptis.Init();
			Goldfinch.Init();
			GoldenCalf.Init();
			SpiderMonkey.Init();
			FrogCrab.Init();
			Ibis.Init();
			Minokawa.Init();
			Terrashot.Init();
			Hugag.Init();
			Crucibulum.Init();
			Roperite.Init();
			Wapaloosie.Init();
			StrangeTurtle.Init();
			Balaur.Init();
			Zmeu.Init();
			Shagamaw.Init();
			Lemur.Init();
			Pachylemur.Init();
			CactusCat.Init();
			Snoligoster.Init();
			MoleCrab.Init();
			Loris.Init();
			Peccary.Init();
			KillerBeehive.Init();
			WanderingSpider.Init();
			BatBomb.Init();
			ItemTentacle.Init();
			Bluebottle.Init();
			Buzzard.Init();
			MethuselahMouse.Init();
			Bolotnik.Init();
			Calygreyhound.Init();
			Bandito.Init();
			Skua.Init();
			Candiru.Init();
			DungBeetle.Init();
			Shrimp.Init();
			Prawn.Init();
			Lobster.Init();
			Sandhopper.Init();
			LittleMiss.Init();
			ItsyBitsy.Init();
			GastricBrooder.Init();
			Archerfish.Init();
			DraculaAnt.Init();
			VampireBat.Init();
			BlueWhale.Init();
			WhiteWhale.Init();
			Changeling.Init();
			AmorphousShame.Init();
			FetchCard.Init();
			ChaosCard.Init();
			BlackEgg.Init();
			TummyBug.Init();
			SeaLouse.Init();
			Ahuizotl.Init();
			Mongoose.Init();
			Krill.Init();
			Gorilla.Init();
			Chimpanzee.Init();
			Piure.Init();
			Sicarius.Init();
			WastingDeer.Init();
			AxehandleHound.Init();
			Gull.Init();
			WorldTurtle.Init();
			Macrobacterium.Init();
			GiftHorse.Init();
			Kiwi.Init();
			Caracal.Init();
			Baboon.Init();
			InfantBaboon.Init();
			Gymnure.Init();
			Coinchenn.Init();
			Budgerigar.Init();
			Hookworm.Init();
			Curruid.Init();
			Camel.Init();
			SpinyApe.Init();
			Reptilicus.Init();
			CrookedMouse.Init();
			FireflySquid.Init();
			VampireSquid.Init();
			EnchantedNightcrawler.Init();
			CurlyLeggedCat.Init();
			ScaleTentacle.Init();
			Skvader.Init();
			KingCrab.Init();
			Omukade.Init();
			Elwetritsch.Init();
			Powelliphanta.Init();
			RatQueen.Init();
			PackRatKing.Init();
			TerribilePescecane.Init();
			Moray.Init();
			Hornet.Init();
			SeaMonk.Init();
			HisPresence.Init();
			LynxSpider.Init();
			Blockhead.Init();
			YellowSacSpider.Init();
			EggSac.Init();
			Fennec.Init();
			Minnow.Init();
			LionsManeJelly.Init();
			Moa.Init();
			WildHare.Init();
			Puffin.Init();
			Crab.Init();
			Hummingbird.Init();
			Leatherback.Init();
			Woodpecker.Init();
			MantaRay.Init();
			Bannana.Init();
			AngelShark.Init();
			FishingCat.Init();
			Batfly.Init();
			Camazotz.Init();
			Anaconda.Init();
			DynaMite.Init();
			Chameleon.Init();
			Deathstalker.Init();
			Theow.Init();
			SunWukong.Init();
			PrarieDog.Init();
			Dove.Init();
			Takahe.Init();
			Bellbird.Init();
			BlackKite.Init();
			Darter.Init();
			Pidgeon.Init();
			Chuman.Init();
			SeaNettle.Init();
			Hogfish.Init();
			Scapegoat.Init();
			Gazelle.Init();
			StuntedGrizzly.Init();
			BoxJelly.Init();
			DropBear.Init();
			MoonJelly.Init();
			Copepod.Init();
			Anteater.Init();
			Cowbird.Init();
			Dolphin.Init();
			Tapeworm.Init();
			Tarantula.Init();
			Kusimanse.Init();
			YetiCrab.Init();
			Hagfish.Init();
			Bobcat.Init();
			TurtleFrog.Init();
			if ((Object)(object)bundle != (Object)null)
			{
				PallasNoctua.Init();
				DecoratorCrab.Init();
				CustomStoat.Init();
				CustomStinkbug.Init();
				CustomStuntedWolf.Init();
				Cyclops.Init();
				Husky.Init();
				Woodmouse.Init();
				BrazenBull.Init();
				HappyFaceSpider.Init();
			}
			Keepers.Init();
			TheBlobAct2.Init();
			Firelight.Init();
			Ziburinis.Init();
			DentalMage.Init();
			GoreyGirl.Init();
			TheGoodDoctor.Init();
			CrystalHealer.Init();
			CamDrone.Init();
			BatTery.Init();
			MagicTrap.Init();
			Gembrain.Init();
			EnergyCube.Init();
			CrookedWraith.Init();
			BustedBot.Init();
			CapybaraAct2.Init();
			Sluagh.Init();
			Hypermage.Init();
			RenegadeSorcerer.Init();
			Mermage.Init();
			Photocopier.Init();
			Nanomachines.Init();
			ChaosEngine.Init();
			QT.Init();
			LuckyCoin.Init();
			MagicBag.Init();
			FearGorta.Init();
			SmiteMage.Init();
			DeathsDoor.Init();
			LiliputianSkeleton.Init();
			Chochin.Init();
			Wight.Init();
			StrikeDrone.Init();
			Bishop.Init();
			Rook.Init();
			Wiztank.Init();
			Cremator.Init();
			Dozer.Init();
			PidgeonBot.Init();
			Trenchfoot.Init();
			Oz.Init();
			Scarecrow.Init();
			IIEyes.Init();
			MorphMage.Init();
			Moxcrafter.Init();
			Professor.Init();
			Druid.Init();
			RageMage.Init();
			MoleMage.Init();
			H4wk.Init();
			Counstabot.Init();
			Flammenwarlock.Init();
			Helidrone.Init();
			Sparky.Init();
			VesselLord.Init();
			Foddroid.Init();
			VesselBall.Init();
			RedCap.Init();
			Jikininki.Init();
			Talos.Init();
			Enchantress.Init();
			Trojan.Init();
			Bellbot.Init();
			Nosferat.Init();
			Bhoot.Init();
			Adipocere.Init();
			BloodySack.Init();
			PrototypeGiftbot.Init();
			AceLord.Init();
			PincerMage.Init();
			Conjurer.Init();
			Dicebot.Init();
			PortalMage.Init();
			Necrophidius.Init();
			DrClaphamLee.Init();
			SanguineSlime.Init();
			Yorick.Init();
			Pishacha.Init();
			PalidOoze.Init();
			Forevenant.Init();
			Vila.Init();
			Viscount.Init();
			Suangi.Init();
			Shtriga.Init();
			Mavka.Init();
			Vrykolakas.Init();
			Pricolici.Init();
			MagicHat.Init();
			Pawn.Init();
			Tallock.Init();
			Babai.Init();
			Lobasta.Init();
			Strigoi.Init();
			ChickenBones.Init();
			ChiralCrawler.Init();
			Vodyanitsa.Init();
			ZhaleznyChalavek.Init();
			Cubit.Init();
			GolemArm.Init();
			FisherMage.Init();
			Kodoku.Init();
			Nixie.Init();
			TestGhost.Init();
			SpoonBender.Init();
			MagisterGeneral.Init();
			Merle.Init();
			Diviner.Init();
			GoblinMage.Init();
			FleshPillar.Init();
			WhiteMage.Init();
			Jester.Init();
			EsotericMox.Init();
			SurgemMagister.Init();
			ArtfulMagister.Init();
			MagnusMagister.Init();
			Catron.Init();
			RitualFlesh.Init();
			SorcerersApprentice.Init();
			WickedWitch.Init();
			Vaconda.Init();
			WonderousWall.Init();
			Clanklion.Init();
			Witchfinder.Init();
			Bloodbag.Init();
			Jumpscare.Init();
			Ghost.Init();
			GhostTrain.Init();
			HodgePodge.Init();
			Unravelled.Init();
			P4kBot.Init();
			MrNeedlemouth.Init();
			ElectricEel.Init();
			TinMan.Init();
			StageMagician.Init();
			SelflessCell.Init();
			KnightCell.Init();
			BloodKnight.Init();
			Octomancer.Init();
			GlueMage.Init();
			CrimsonPaladin.Init();
			HostileInjector.Init();
			LiveWire.Init();
			StimulantConduit.Init();
			Composer.Init();
			MirrorLord.Init();
			Gristle.Init();
			MotherMatryoshka.Init();
			Tr1ckb0t.Init();
			Hambone.Init();
			EnchantedBlade.Init();
			ShadowChild.Init();
			FalseProphet.Init();
			Handmaster.Init();
			GiftConduit.Init();
			BustedConduit.Init();
			GrimChanter.Init();
			TurtleMine.Init();
			AxeMurderer.Init();
			Energem.Init();
			Recyclotron.Init();
			FileShredder.Init();
			Malbot.Init();
			PupilOfGun.Init();
			Famine.Init();
			Death.Init();
			Boil.Init();
			Pestilence.Init();
			War.Init();
			Mandrake.Init();
			FlankGunner.Init();
			GiantClam.Init();
			FogMachine.Init();
			ShieldMage.Init();
			Turret.Init();
			MysteryGolem.Init();
			Techromancer.Init();
			BloodWitch.Init();
			VortexCaster.Init();
			GrandHighIllusionist.Init();
			Tlamacazqui.Init();
			Techtacles.Init();
			Molly.Init();
			Replicant.Init();
			StandardBearer.Init();
			PracticeSage.Init();
			Mageskull.Init();
			Dowser.Init();
			ClumsyPupil.Init();
			JumperCable.Init();
			Automamox.Init();
			LunarCell.Init();
			GreenArchmage.Init();
			Mourner.Init();
			FrogR.Init();
			GemFrog.Init();
			BloodCell.Init();
			Lockbot.Init();
			Necravager.Init();
			ZombieRaider.Init();
			Drawtomaton.Init();
			Lancer.Init();
			Mandroid.Init();
			ThePunishment.Init();
			BodySnatcher.Init();
			HighCalibre.Init();
			CattleRustler.Init();
			Belladin.Init();
			BindWarden.Init();
			Tim.Init();
			Voltcaster.Init();
			FileSearcher.Init();
			SentryConduit.Init();
			QuillConduit.Init();
			NanoConduit.Init();
			SteamConduit.Init();
			Speyeral.Init();
			MastersBones.Init();
			SpinyCell.Init();
			DiceGoblin.Init();
			SpiritWalker.Init();
			Sibyl.Init();
			IronMaiden.Init();
			BoneCell.Init();
			StimCell.Init();
			InstallationWizard.Init();
			PinnacleMox.Init();
			Skelemagnus.Init();
			Ribcage.Init();
			TempleTrap.Init();
			Vitrioleuse.Init();
			Ossuary.Init();
			Nisse.Init();
			EnchantedBoulder.Init();
			Prodigy.Init();
			Monk.Init();
			SuperDuper.Init();
			Jeweler.Init();
			Bloodstopper.Init();
			Anchimayen.Init();
			MobiusGolem.Init();
			Crusher.Init();
			Undertecher.Init();
			Shieldrone.Init();
			Omnibot.Init();
			Reavance.Init();
			Growbot.Init();
			Balloondroid.Init();
			LazySusan.Init();
			RemoteBot.Init();
			PylonBot.Init();
			TripleGunner.Init();
			MiniModulo.Init();
			ToyRobot.Init();
			Scoopy.Init();
			DocBuzz.Init();
			CatalogueKeeper.Init();
			Energunner.Init();
			Sc0rp10.Init();
			Submachine.Init();
			Magnetick.Init();
			Orbot.Init();
			TestDummy.Init();
			BotPrinter.Init();
			CodeThief.Init();
			ShockTrooper.Init();
			Rover.Init();
			DrainDrone.Init();
			ViridescentDroid.Init();
			WildCell.Init();
			Rockette.Init();
			Enginoid.Init();
			Lvl2FactoryConduit.Init();
			Omegear.Init();
			Flammaball.Init();
			BootingBot.Init();
			Magnedroid.Init();
			BallDroid.Init();
			TimeFly.Init();
			SporenergyBot.Init();
			Sporren.Init();
			TheSporekers.Init();
			MasterSporlu.Init();
			StarterDecks.Init();
			CardManager.ModifyCardList += delegate(List<CardInfo> cards)
			{
				if (arachnophobiaMode.Value)
				{
					Debug.Log((object)"Arachnophobia Mode Enabled: Modifying Spider Portraits");
					foreach (CardInfo item in cards.FindAll((CardInfo x) => arachnophobiaModifications.ContainsKey(((Object)x).name)))
					{
						item.ArachnophobiaMode(arachnophobiaModifications[((Object)item).name]);
					}
				}
				foreach (CardInfo card in cards)
				{
					if (((Object)card).name == "SigilNevernamed MoreFish")
					{
						card.metaCategories.Add((CardMetaCategory)3);
					}
				}
				return cards;
			};
			((MonoBehaviour)this).StartCoroutine(Late());
		}

		public static AssetBundle LoadBundle(string path)
		{
			using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(path.Replace("\\", ".").Replace("/", "."));
			return AssetBundle.LoadFromStream(stream);
		}

		private void Start()
		{
			MayflyEncounter.Init();
			ThickLizardEncounter.Init();
		}

		public static IEnumerator Late()
		{
			yield return null;
			List<CardInfo> BeastCards = ScriptableObjectLoader<CardInfo>.AllData.FindAll((CardInfo x) => (int)x.temple == 0);
			List<CardInfo> TechCards = ScriptableObjectLoader<CardInfo>.AllData.FindAll((CardInfo x) => (int)x.temple == 2);
			List<CardInfo> UndeadCards = ScriptableObjectLoader<CardInfo>.AllData.FindAll((CardInfo x) => (int)x.temple == 1);
			List<CardInfo> MoxCards = ScriptableObjectLoader<CardInfo>.AllData.FindAll((CardInfo x) => (int)x.temple == 3);
			List<CardInfo> ModBeasts = BeastCards.FindAll((CardInfo x) => ((Object)x).name.StartsWith("BeastNevernamed"));
			List<CardInfo> ModTech = TechCards.FindAll((CardInfo x) => ((Object)x).name.StartsWith("TechNevernamed"));
			List<CardInfo> ModUndead = UndeadCards.FindAll((CardInfo x) => ((Object)x).name.StartsWith("DeadNevernamed"));
			List<CardInfo> ModWizards = MoxCards.FindAll((CardInfo x) => ((Object)x).name.StartsWith("WizardNevernamed"));
			List<CardInfo> CommonBeasts = BeastCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains((CardMetaCategory)1));
			List<CardInfo> CommonModdedBeasts = ModBeasts.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains((CardMetaCategory)1));
			List<CardInfo> RareBeasts = BeastCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareModdedBeasts = ModBeasts.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonWizards = MoxCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonModdedWizards = ModWizards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareWizards = MoxCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareModdedWizards = ModWizards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonUndead = UndeadCards.FindAll((CardInfo x) => !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonModdedUndead = ModUndead.FindAll((CardInfo x) => !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareUndead = UndeadCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareModdedUndead = ModUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonTech = TechCards.FindAll((CardInfo x) => !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareTech = TechCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonModdedTech = ModTech.FindAll((CardInfo x) => !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareModdedTech = ModTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonTech2 = CommonTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5));
			List<CardInfo> RareTech2 = RareTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5));
			List<CardInfo> CommonModdedTech2 = CommonModdedTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5));
			List<CardInfo> RareModdedTech2 = RareModdedTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5));
			List<CardInfo> CommonBeasts2 = BeastCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonModdedBeasts2 = ModBeasts.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && !x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareBeasts2 = BeastCards.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> RareModdedBeasts2 = ModBeasts.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5) && x.metaCategories.Contains((CardMetaCategory)3));
			List<CardInfo> CommonTech3 = CommonTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)2) || x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains(P03KayceesBastionRegion) || x.metaCategories.Contains(P03KayceesNatureRegion) || x.metaCategories.Contains(P03KayceesUndeadRegion) || x.metaCategories.Contains(P03KayceesWizardRegion));
			List<CardInfo> RareTech3 = RareTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)2) || x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains(P03KayceesBastionRegion) || x.metaCategories.Contains(P03KayceesNatureRegion) || x.metaCategories.Contains(P03KayceesUndeadRegion) || x.metaCategories.Contains(P03KayceesWizardRegion));
			List<CardInfo> CommonModdedTech3 = CommonModdedTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)2) || x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains(P03KayceesBastionRegion) || x.metaCategories.Contains(P03KayceesNatureRegion) || x.metaCategories.Contains(P03KayceesUndeadRegion) || x.metaCategories.Contains(P03KayceesWizardRegion));
			List<CardInfo> RareModdedTech3 = RareModdedTech.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)2) || x.metaCategories.Contains((CardMetaCategory)0) || x.metaCategories.Contains(P03KayceesBastionRegion) || x.metaCategories.Contains(P03KayceesNatureRegion) || x.metaCategories.Contains(P03KayceesUndeadRegion) || x.metaCategories.Contains(P03KayceesWizardRegion));
			Debug.Log((object)$"All Cards Total: {ModBeasts.Count + ModTech.Count + ModUndead.Count + ModWizards.Count}/{BeastCards.Count + TechCards.Count + UndeadCards.Count + MoxCards.Count}");
			Debug.Log((object)$"BeastNevernamed Cards Total: {ModBeasts.Count}/{BeastCards.Count}\n");
			Debug.Log((object)$"    Act 1 Total: Common({CommonModdedBeasts.Count}/{CommonBeasts.Count}) Rare({RareModdedBeasts.Count}/{RareBeasts.Count}) All({CommonModdedBeasts.Count + RareModdedBeasts.Count}/{CommonBeasts.Count + RareBeasts.Count})");
			PrintForTribe("Canine", (Tribe)3, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Bird", (Tribe)2, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Reptile", (Tribe)5, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Hooved", (Tribe)4, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Insect", (Tribe)6, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Squirrel", (Tribe)1, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Arachnid", NevernamedsTribes.Arachnid, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Crustacean", NevernamedsTribes.Crustacean, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			PrintForTribe("Rodent", NevernamedsTribes.Rodent, CommonBeasts, RareBeasts, CommonModdedBeasts, RareModdedBeasts);
			Debug.Log((object)$"        Untribed: Common ({CommonModdedBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count}/{CommonBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count}) Rare ({RareModdedBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count}/{RareBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count}) All ({CommonModdedBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count + RareModdedBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count}/{CommonBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count + RareBeasts.FindAll((CardInfo x) => x.tribes.Count == 0).Count})\n");
			Debug.Log((object)$"    Act 2 Total: Common({CommonModdedBeasts2.Count}/{CommonBeasts2.Count}) Rare({RareModdedBeasts2.Count}/{RareBeasts2.Count}) All({CommonModdedBeasts2.Count + RareModdedBeasts2.Count}/{CommonBeasts2.Count + RareBeasts2.Count})");
			Debug.Log((object)"----------------------------------------------------------------");
			Debug.Log((object)$"TechNevernamed Cards Total: {ModTech.Count}/{TechCards.Count}\n");
			Debug.Log((object)$"    Act 2 Total: Common ({CommonModdedTech2.Count}/{CommonTech2.Count}) Rare ({RareModdedTech2.Count}/{RareTech2.Count}) All({CommonModdedTech2.Count + RareModdedTech2.Count}/{CommonTech2.Count + RareTech2.Count})");
			Debug.Log((object)$"    Act 3 Total: Common ({CommonModdedTech3.Count}/{CommonTech3.Count}) Rare ({RareModdedTech3.Count}/{RareTech3.Count}) All({CommonModdedTech3.Count + RareModdedTech3.Count}/{CommonTech3.Count + RareTech3.Count})");
			Debug.Log((object)"----------------------------------------------------------------");
			Debug.Log((object)$"DeadNevernamed Cards Total: {ModUndead.Count}/{UndeadCards.Count}\n");
			Debug.Log((object)$"    Act 2 Total: Common({CommonModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count}/{CommonUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count}) Rare({RareModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count}/{RareUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count}) All({CommonModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count + RareModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count}/{CommonUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count + RareUndead.FindAll((CardInfo x) => x.metaCategories.Contains((CardMetaCategory)5)).Count})");
			Debug.Log((object)string.Format("    Grimoramod Total: Common({0}/{1}) Rare({2}/{3}) All({4}/{5})", CommonModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode)).Count, CommonUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode) || ((Object)x).name.StartsWith("arackulele.inscryption.grimoramod")).Count, RareModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode)).Count, RareUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode) || ((Object)x).name.StartsWith("arackulele.inscryption.grimoramod")).Count, CommonModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode)).Count + RareModdedUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode)).Count, CommonUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode) || ((Object)x).name.StartsWith("arackulele.inscryption.grimoramod")).Count + RareUndead.FindAll((CardInfo x) => x.metaCategories.Contains(GrimoraChoiceNode) || ((Object)x).name.StartsWith("arackulele.inscryption.grimoramod")).Count));
			Debug.Log((object)"----------------------------------------------------------------");
			Debug.Log((object)$"WizardNevernamed Cards Total: {ModWizards.Count}/{MoxCards.Count}\n");
			Debug.Log((object)$"    Act 2 Total: Common({CommonModdedWizards.Count}/{CommonWizards.Count}) Rare({RareModdedWizards.Count}/{RareWizards.Count}) All({CommonModdedWizards.Count + RareModdedWizards.Count}/{CommonWizards.Count + RareWizards.Count})");
			Debug.Log((object)$"        Free: Common({CommonModdedWizards.FindAll((CardInfo x) => x.gemsCost.Count == 0).Count}/{CommonWizards.FindAll((CardInfo x) => x.gemsCost.Count == 0).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => x.gemsCost.Count == 0).Count}/{RareWizards.FindAll((CardInfo x) => x.gemsCost.Count == 0).Count})");
			Debug.Log((object)$"        Blue: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)2 })).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)2 })).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)2 })).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)2 })).Count})");
			Debug.Log((object)$"        Green: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)0 })).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)0 })).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)0 })).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)0 })).Count})");
			Debug.Log((object)$"        Orange: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)1 })).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)1 })).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)1 })).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType> { (GemType)1 })).Count})");
			Debug.Log((object)$"        Blue/Green: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)2,
				(GemType)0
			})).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)2,
				(GemType)0
			})).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)2,
				(GemType)0
			})).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)2,
				(GemType)0
			})).Count})");
			Debug.Log((object)$"        Green/Orange: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)0
			})).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)0
			})).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)0
			})).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)0
			})).Count})");
			Debug.Log((object)$"        Green/Blue: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2
			})).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2
			})).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2
			})).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2
			})).Count})");
			Debug.Log((object)$"        All Mox: Common({CommonModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2,
				(GemType)0
			})).Count}/{CommonWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2,
				(GemType)0
			})).Count}) Rare({RareModdedWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2,
				(GemType)0
			})).Count}/{RareWizards.FindAll((CardInfo x) => isJustGems(x, new List<GemType>
			{
				(GemType)1,
				(GemType)2,
				(GemType)0
			})).Count})");
		}

		public static void PrintForTribe(string name, Tribe tribe, List<CardInfo> commons, List<CardInfo> rares, List<CardInfo> moddedcommons, List<CardInfo> moddedrares)
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_0008: Unknown result type (might be due to invalid IL or missing references)
			Debug.Log((object)$"        {name}: Common ({moddedcommons.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count}/{commons.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count}) Rare ({moddedrares.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count}/{rares.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count}) All ({moddedcommons.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count + moddedrares.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count}/{commons.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count + rares.FindAll((CardInfo x) => x.IsOfTribe(tribe)).Count})");
		}

		public static bool isJustGems(CardInfo inf, List<GemType> gems)
		{
			bool result = true;
			if (gems.Contains((GemType)2) != inf.gemsCost.Contains((GemType)2))
			{
				result = false;
			}
			if (gems.Contains((GemType)0) != inf.gemsCost.Contains((GemType)0))
			{
				result = false;
			}
			if (gems.Contains((GemType)1) != inf.gemsCost.Contains((GemType)1))
			{
				result = false;
			}
			return result;
		}
	}
	internal static class AderynYCorph
	{
		public static void Init()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			CardInfo val = CardSetupUtility.NewCard(categories: new List<CardMetaCategory> { (CardMetaCategory)3 }, description: "The corpse bird. It's appearance portends the end.", bloodCost: 0, bonesCost: 5, energyCost: 0, gemsCost: null, abilities: new List<Ability> { GiftBearerCustom.ability }, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/aderynycorph.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { (Tribe)2 }, internalName: "Nevernamed AderynYCorph", displayname: "Aderyn Y corph", power: 2, health: 2, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/aderynycorph_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
			CardExtensions.SetExtendedProperty(val, "GiftBearerCustomPoolIdentifier", (object)"AderynYCorphGiftBearerPool");
		}
	}
	internal static class Ahuizotl
	{
		public static void Init()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory> { (CardMetaCategory)3 }, description: "It lurks below the water, until the time is ripe to rend the land for prey.", bloodCost: 1, bonesCost: 0, energyCost: 0, gemsCost: null, abilities: new List<Ability>
			{
				Carnivore.ability,
				CoastGuard.ability
			}, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/ahuizotl.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { (Tribe)3 }, internalName: "Nevernamed Ahuizotl", displayname: "Ahuizotl", power: 1, health: 2, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/ahuizotl_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Albatross
	{
		public static void Init()
		{
			//IL_0056: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1,
				(CardMetaCategory)5,
				(CardMetaCategory)4
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/albatross.png");
			CardSetupUtility.NewCard(abilities: new List<Ability>
			{
				(Ability)19,
				Downdraft.ability
			}, defaultTex: val, tribes: new List<Tribe> { (Tribe)2 }, pixelTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/albatross_pixel.png"), internalName: "Nevernamed Albatross", displayname: "Albatross", power: 3, health: 1, categories: categories, temple: (CardTemple)0, description: "The noble albatross. It's vast wingspan creates an impressive downdraft.", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/albatross_emission.png"), altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class AlbatrossChick
	{
		public static void Init()
		{
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1,
				(CardMetaCategory)4,
				(CardMetaCategory)5
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/albatrosschick.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { (Ability)5 }, defaultTex: val, tribes: new List<Tribe> { (Tribe)2 }, pixelTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/albatrosschick_pixel.png"), internalName: "Nevernamed AlbatrossChick", displayname: "Albatross Chick", power: 1, health: 1, categories: categories, temple: (CardTemple)0, description: "The young of the immense albatross, it seems almost lost inside of it's own down.", bloodCost: 1, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/albatrosschick_emission.png"), altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: "BeastNevernamed Albatross", defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class AlligatorGar
	{
		public static void Init()
		{
			//IL_0038: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory>(), description: "Toxic gar roe, will kill anything that swallows it.", bloodCost: 0, bonesCost: 3, energyCost: 0, gemsCost: null, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/garroe.png"), emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/garroe_emission.png"), internalName: "Nevernamed GarRoe", displayname: "Gar Roe", power: 0, health: 1, temple: (CardTemple)0, abilities: new List<Ability>
			{
				Caustic.ability,
				(Ability)5
			}, pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, tribes: new List<Tribe>(), preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: "BeastNevernamed AlligatorGar", defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
			List<CardMetaCategory> categories2 = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/alligatorgar.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { (Ability)10 }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed AlligatorGar", displayname: "Alligator Gar", power: 2, health: 1, categories: categories2, temple: (CardTemple)0, description: "The ferocious Alligator Gar. It squirts out it's toxic eggs when frightened.", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/alligatorgar_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: "BeastNevernamed GarRoe", defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class AmorphousShame
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/amorphousshame.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { PunchingBag.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed AmorphousShame", displayname: "Amorphous Shame", power: 1, health: 3, categories: categories, temple: (CardTemple)0, description: "...such a shame...", bloodCost: 1, bonesCost: 1, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/amorphousshame_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Anaconda
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anaconda.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { UnbalancedLeadership.ability }, defaultTex: val, tribes: new List<Tribe> { (Tribe)5 }, internalName: "Nevernamed Anaconda", displayname: "Anaconda", power: 2, health: 1, categories: categories, temple: (CardTemple)0, description: "Don't... don't say it. I have heard it all before, and it is not funny.", bloodCost: 0, bonesCost: 6, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anaconda_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Anansi
	{
		public static void Init()
		{
			//IL_0047: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory> { (CardMetaCategory)3 }, description: "Anansi, the many legged trickster. He attacks multiple times per turn, in flagrant disregard for the rules.", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, abilities: new List<Ability>(), defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anansi.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { NevernamedsTribes.Arachnid }, internalName: "Nevernamed Anansi", displayname: "Anansi", power: 1, health: 5, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anansi_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0, hideStats: false, onePerDeck: false, animatedPortrait: null, flipPortraitWhenStrafing: false, overrideDamID: null, overrideDamBlockedDialogue: null, overrideFactoryConduitSpawn: null, overrideRabbitHoleSpawn: null, overrideAntSpawnerSpawn: null, overrideBellistID: null, overrideBellistBlockedDialogue: null, overrideSquirrelShedderId: null, overrideSkeletonCrewID: null, overrideBeesWithinID: null, twisterForm: null, transformerForm: null, overrideLeftClaw: null, overrideRightClaw: null, customDoomedLifespan: null, customGutSpewerGuts: null, customExplodingCorpseGuts: null, customOrganThiefGuts: null, harbingerLeaveBehind: null, tramplerLeaveBehind: null, flightyLeaveBehind: null, parthenogenesisOverride: null, sigilShedderDef: null, preventBones: false, preventCampfire: false, preventSigilVictim: false, preventSigilHost: false, customGiftBearerSpawnsRares: false, erraticLeaveBehind: null, preventPlay: false, fatalFlankDef: null, allStrikesDoubled: true);
		}
	}
	internal static class Anemone
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anemone.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Gooey.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed Anemone", displayname: "Anemone", power: 0, health: 2, categories: categories, temple: (CardTemple)0, description: "The soft, unassuming anemone- it seems to have remarkable potential for propagation, but no means as of yet...", bloodCost: 1, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anemone_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: "Ananenome", defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0, hideStats: false, onePerDeck: false, animatedPortrait: null, flipPortraitWhenStrafing: false, overrideDamID: "BeastNevernamed Anemone", overrideDamBlockedDialogue: null, overrideFactoryConduitSpawn: "BeastNevernamed Anemone", overrideRabbitHoleSpawn: "BeastNevernamed Anemone", overrideAntSpawnerSpawn: "BeastNevernamed Anemone", overrideBellistID: "BeastNevernamed Anemone", overrideBellistBlockedDialogue: null, overrideSquirrelShedderId: "BeastNevernamed Anemone", overrideSkeletonCrewID: "BeastNevernamed Anemone", overrideBeesWithinID: "BeastNevernamed Anemone", twisterForm: null, transformerForm: null, overrideLeftClaw: "BeastNevernamed Anemone", overrideRightClaw: "BeastNevernamed Anemone");
		}
	}
	internal static class AngelShark
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/angelshark.png");
			CardSetupUtility.NewCard(abilities: new List<Ability>
			{
				EvenStrike.ability,
				(Ability)13
			}, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed AngelShark", displayname: "Angel Shark", power: 1, health: 1, categories: categories, temple: (CardTemple)0, description: "Despite the name, it is far from divine.", bloodCost: 0, bonesCost: 5, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/angelshark_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class AnnoyingDog
	{
		public static void Init()
		{
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/annoyingdog.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { (Ability)76 }, defaultTex: val, tribes: new List<Tribe> { (Tribe)3 }, internalName: "Nevernamed AnnoyingDog", displayname: "Annoying Dog", power: 3, health: 3, categories: categories, temple: (CardTemple)0, description: "That irritating canine...", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/annoyingdog_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Anteater
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anteater.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Insectivore.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed Anteater", displayname: "Anteater", power: 1, health: 3, categories: categories, temple: (CardTemple)0, description: "The slothly anteater only attacks with vigour when presented with a meal.", bloodCost: 0, bonesCost: 5, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/anteater_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Antingaw
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/antingaw.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { BloodFromStone.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed Antingaw", displayname: "Antingaw", power: 1, health: 2, categories: categories, temple: (CardTemple)0, description: "A peculiar mollusk. It gathers sustenance from burrowing into barren rock...", bloodCost: 1, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/antingaw_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Antlion
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/antlion.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Allure.ability }, defaultTex: val, tribes: new List<Tribe> { (Tribe)6 }, internalName: "Nevernamed Antlion", displayname: "Antlion", power: 2, health: 3, categories: categories, temple: (CardTemple)0, description: "The larvae of the antlion. It's skill for trapping knows no match... in the insect world.", bloodCost: 0, bonesCost: 6, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/antlion_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Ararach
	{
		public static void Init()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0053: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory> { (CardMetaCategory)3 }, description: "The infinilegged crawler, the Ararach never settles on a definitive strategy of attack for long...", bloodCost: 0, bonesCost: 5, energyCost: 0, gemsCost: null, abilities: new List<Ability> { ChaosStrike.ability }, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/ararach.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { NevernamedsTribes.Arachnid }, internalName: "Nevernamed Ararach", displayname: "Ararach", power: 2, health: 1, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/ararach_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Archerfish
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/archerfish.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Lurk.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed Archerfish", displayname: "Archerfish", power: 1, health: 1, categories: categories, temple: (CardTemple)0, description: "The archerfish is quick to retaliate to any confrontation with a precise jet of water.", bloodCost: 0, bonesCost: 5, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/archerfish_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Aspidochelone
	{
		public static void Init()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0036: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory> { (CardMetaCategory)3 }, description: "That ruthless spiny turtle... it shares it's spines with it's comrades..", bloodCost: 3, bonesCost: 0, energyCost: 0, gemsCost: null, abilities: new List<Ability>
			{
				PointNemo.ability,
				SubaquaticSpines.ability
			}, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/aspidochelone.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { (Tribe)5 }, internalName: "Nevernamed Aspidochelone", displayname: "Aspidochelone", power: 3, health: 2, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/aspidochelone_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class AxehandleHound
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/axehandlehound.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Cleaving.ability }, defaultTex: val, tribes: new List<Tribe> { (Tribe)3 }, internalName: "Nevernamed AxehandleHound", displayname: "Axehandle Hound", power: 1, health: 2, categories: categories, temple: (CardTemple)0, description: "The peculiar axehandle hound. It uses it's sharp, bladed nose to cut clean through it's foes with the cold precision of a lumberjack...", bloodCost: 1, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/axehandlehound_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Baboon
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/baboon.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { Spurred.ability }, defaultTex: val, tribes: new List<Tribe>(), internalName: "Nevernamed Baboon", displayname: "Baboon", power: 2, health: 2, categories: categories, temple: (CardTemple)0, description: "Far more vicious than its name and appearance would betray- it needs only a reason to strike.", bloodCost: 0, bonesCost: 6, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/baboon_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Bakunawa
	{
		public static void Init()
		{
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory>
			{
				(CardMetaCategory)3,
				(CardMetaCategory)5,
				(CardMetaCategory)4
			}, description: "The lengthy Bakunawa, terror of the sea and skies.", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, abilities: new List<Ability>
			{
				(Ability)13,
				(Ability)102,
				(Ability)19
			}, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bakunawa.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe> { (Tribe)5 }, pixelTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/bakunawa_pixel.png"), internalName: "Nevernamed Bakunawa", displayname: "Bakunawa", power: 4, health: 4, temple: (CardTemple)0, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bakunawa_emission.png"), altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Balaur
	{
		public static void Init()
		{
			//IL_002a: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard("Nevernamed Balaur", "Balaur", 2, 1, new List<CardMetaCategory> { (CardMetaCategory)3 }, (CardTemple)0, "The three-headed Balaur dragon. It lashes out with each of it's maws when threatened.", 2, 0, 0, null, new List<Ability> { Sentriple.ability }, Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/balaur.png"), Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/balaur_emission.png"), null, null, null, null, null, new List<Appearance> { (Appearance)7 }, new List<Tribe> { (Tribe)5 }, preventSignature: false, null, null, null, null, 1, null, null, null, (SpecialStatIcon)0);
		}
	}
	internal static class BaldEagle
	{
		public static void Init()
		{
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/baldeagle.png");
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val2 = val;
			CardSetupUtility.NewCard(abilities: new List<Ability>
			{
				(Ability)19,
				(Ability)23
			}, defaultTex: val2, tribes: new List<Tribe> { (Tribe)2 }, internalName: "Nevernamed BaldEagle", displayname: "Bald Eagle", power: 4, health: 4, categories: categories, temple: (CardTemple)0, description: "Truly the most patriotic of birds.", bloodCost: 3, bonesCost: 0, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/baldeagle_emission.png"), pixelTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/baldeagle_pixel.png"), altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: new List<Appearance>(), preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Bandito
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0049: Unknown result type (might be due to invalid IL or missing references)
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			}, description: "A peculiar deathcard- no matter how many times I tear it to pieces, I always find it back in my deck...", bloodCost: 2, bonesCost: 0, energyCost: 0, gemsCost: null, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bandito.png"), internalName: "Nevernamed Bandito", displayname: "Bandito", power: 1, health: 3, temple: (CardTemple)0, abilities: new List<Ability>
			{
				Enraged.ability,
				Cheater.ability
			}, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bandito_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, tribes: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Bannana
	{
		public static void Init()
		{
			//IL_003d: Unknown result type (might be due to invalid IL or missing references)
			//IL_004f: Unknown result type (might be due to invalid IL or missing references)
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bannana.png");
			CardSetupUtility.NewCard(abilities: new List<Ability> { WaveringStrike.ability }, defaultTex: val, tribes: new List<Tribe> { NevernamedsTribes.Arachnid }, internalName: "Nevernamed Bannana", displayname: "Bannana", power: 2, health: 1, categories: categories, temple: (CardTemple)0, description: "Such a small, sweet spider... It couldn't hurt a fl- ...oh", bloodCost: 0, bonesCost: 4, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/bannana_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: null, preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Barnacle
	{
		public static void Init()
		{
			//IL_003f: Unknown result type (might be due to invalid IL or missing references)
			//IL_004b: Unknown result type (might be due to invalid IL or missing references)
			//IL_005d: Unknown result type (might be due to invalid IL or missing references)
			Texture2D val = Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/barnacle.png");
			List<CardMetaCategory> categories = new List<CardMetaCategory>
			{
				(CardMetaCategory)0,
				(CardMetaCategory)1
			};
			Texture2D val2 = val;
			CardSetupUtility.NewCard(abilities: new List<Ability>
			{
				ReturnStrike.ability,
				Abstain.ability
			}, defaultTex: val2, tribes: new List<Tribe> { NevernamedsTribes.Crustacean }, internalName: "Nevernamed Barnacle", displayname: "Barnacle", power: 1, health: 2, categories: categories, temple: (CardTemple)0, description: "The unimpressive barnacle. Anything that strikes it will be torn to shreds on it's rough shell.", bloodCost: 0, bonesCost: 3, energyCost: 0, gemsCost: null, emissionTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/barnacle_emission.png"), pixelTex: null, altTexture: null, altTextureEmission: null, titleGraphic: null, decals: null, appearanceBehaviour: new List<Appearance>(), preventSignature: false, traits: null, defaultTailCard: null, defaultEvolutionCard: null, defaultEvolutionName: null, defaultEvolutionTurns: 1, defaultFrozenCard: null, tailLostTexture: null, specialAbilities: null, variableStat: (SpecialStatIcon)0);
		}
	}
	internal static class Basilisk
	{
		public static void Init()
		{
			CardSetupUtility.NewCard(categories: new List<CardMetaCategory>
			{
				(CardMetaCategory)3,
				(CardMetaCategory)5,
				(CardMetaCategory)4
			}, description: "The grim basilisk. Life withers and dies under it's mere gaze.", bloodCost: 3, bonesCost: 0, energyCost: 0, gemsCost: null, abilities: new List<Ability>
			{
				(Ability)62,
				(Ability)4
			}, defaultTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/Cards/basilisk.png"), appearanceBehaviour: new List<Appearance> { (Appearance)7 }, tribes: new List<Tribe>
			{
				(Tribe)5,
				(Tribe)2
			}, pixelTex: Tools.LoadTex("NevernamedsInscryptionMod/Resources/PixelCards/basilisk_pixel.png"), internalName: "Nev