Decompiled source of RecipeAdditions v1.0.3

RecipeAdditions.dll

Decompiled a month ago
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Bootstrap;
using BepInEx.Core.Logging.Interpolation;
using BepInEx.Logging;
using BepInEx.Unity.IL2CPP;
using HarmonyLib;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;
using Il2CppSystem.Collections.Generic;
using Microsoft.CodeAnalysis;
using SSSGame;
using SandSailorStudio.Inventory;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("blacks7ar")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.3")]
[assembly: AssemblyInformationalVersion("1.0.0+cad1bce6a471a1fe59cf97e6b28e15ed63a01a02")]
[assembly: AssemblyProduct("RecipeAdditions")]
[assembly: AssemblyTitle("RecipeAdditions")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.3.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableAttribute : Attribute
	{
		public readonly byte[] NullableFlags;

		public NullableAttribute(byte P_0)
		{
			NullableFlags = new byte[1] { P_0 };
		}

		public NullableAttribute(byte[] P_0)
		{
			NullableFlags = P_0;
		}
	}
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)]
	internal sealed class NullableContextAttribute : Attribute
	{
		public readonly byte Flag;

		public NullableContextAttribute(byte P_0)
		{
			Flag = P_0;
		}
	}
	[CompilerGenerated]
	[Microsoft.CodeAnalysis.Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace RecipeAdditions
{
	public static class Helper
	{
		public static void InitializeDb()
		{
			//IL_026f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0276: Expected O, but got Unknown
			//IL_0070: Unknown result type (might be due to invalid IL or missing references)
			//IL_0076: Expected O, but got Unknown
			//IL_0104: Unknown result type (might be due to invalid IL or missing references)
			//IL_010a: Expected O, but got Unknown
			//IL_0198: Unknown result type (might be due to invalid IL or missing references)
			//IL_019e: Expected O, but got Unknown
			//IL_022c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0232: Expected O, but got Unknown
			bool flag = default(bool);
			try
			{
				Resources.LoadAll("", Type.GetType("SSSGame.ResourceInfo, Assembly-CSharp"));
				foreach (ItemInfo item in Resources.FindObjectsOfTypeAll<ItemInfo>())
				{
					if (!((Object)item).name.ToLower().Contains("Aska+"))
					{
						Plugin._ItemInfoDb.TryAdd(((Object)item).name, item);
					}
				}
				ManualLogSource rLogger = Plugin.RLogger;
				BepInExDebugLogInterpolatedStringHandler val = new BepInExDebugLogInterpolatedStringHandler(17, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral("Loaded ");
					((BepInExLogInterpolatedStringHandler)val).AppendFormatted<int>(Plugin._ItemInfoDb.Count);
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral(" itemInfo.");
				}
				rLogger.LogDebug(val);
				foreach (ItemInfoList item2 in Resources.FindObjectsOfTypeAll<ItemInfoList>())
				{
					if (!((Object)item2).name.Contains("Aska+"))
					{
						Plugin._ItemInfoListDb.TryAdd(((Object)item2).name, item2);
					}
				}
				ManualLogSource rLogger2 = Plugin.RLogger;
				val = new BepInExDebugLogInterpolatedStringHandler(21, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral("Loaded ");
					((BepInExLogInterpolatedStringHandler)val).AppendFormatted<int>(Plugin._ItemInfoListDb.Count);
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral(" ItemInfoList.");
				}
				rLogger2.LogDebug(val);
				foreach (CraftBlueprintInfo item3 in Resources.FindObjectsOfTypeAll<CraftBlueprintInfo>())
				{
					if (!((Object)item3).name.Contains("Aska+"))
					{
						Plugin._CraftBlueprintInfoDb.TryAdd(((Object)item3).name, item3);
					}
				}
				ManualLogSource rLogger3 = Plugin.RLogger;
				val = new BepInExDebugLogInterpolatedStringHandler(27, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral("Loaded ");
					((BepInExLogInterpolatedStringHandler)val).AppendFormatted<int>(Plugin._CraftBlueprintInfoDb.Count);
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral(" CraftBlueprintInfo.");
				}
				rLogger3.LogDebug(val);
				foreach (ItemCategoryInfo item4 in Resources.FindObjectsOfTypeAll<ItemCategoryInfo>())
				{
					if (!((Object)item4).name.Contains("Aska+"))
					{
						Plugin._ItemCategoryInfoDb.TryAdd(((Object)item4).name, item4);
					}
				}
				ManualLogSource rLogger4 = Plugin.RLogger;
				val = new BepInExDebugLogInterpolatedStringHandler(25, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral("Loaded ");
					((BepInExLogInterpolatedStringHandler)val).AppendFormatted<int>(Plugin._ItemCategoryInfoDb.Count);
					((BepInExLogInterpolatedStringHandler)val).AppendLiteral(" ItemCategoryInfo.");
				}
				rLogger4.LogDebug(val);
			}
			catch (Exception ex)
			{
				ManualLogSource rLogger5 = Plugin.RLogger;
				BepInExErrorLogInterpolatedStringHandler val2 = new BepInExErrorLogInterpolatedStringHandler(42, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Exception occured while loading games db: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<Exception>(ex);
				}
				rLogger5.LogError(val2);
			}
		}

		public static CraftBlueprintInfo CloneRecipe(this CraftBlueprintInfo craftInfo, string recipeName)
		{
			if ((Object)(object)craftInfo == (Object)null)
			{
				return null;
			}
			CraftBlueprintInfo val = ScriptableObject.CreateInstance<CraftBlueprintInfo>();
			((Object)val).name = recipeName;
			val.availableInTrialVersion = craftInfo.availableInTrialVersion;
			val.blueprintConditionsRules = craftInfo.blueprintConditionsRules;
			val.craftVolume = craftInfo.craftVolume;
			((BlueprintInfo)val).quantity = ((BlueprintInfo)craftInfo).quantity;
			((ItemInfo)val).category = ((ItemInfo)craftInfo).category;
			((BlueprintInfo)val).parts = ((BlueprintInfo)craftInfo).parts;
			((BlueprintInfo)val).cost = ((BlueprintInfo)craftInfo).cost;
			((BlueprintInfo)val).result = ((BlueprintInfo)craftInfo).result;
			val.interaction = craftInfo.interaction;
			((ItemInfo)val).icon = ((ItemInfo)craftInfo).icon;
			((ItemInfo)val).Localized = ((ItemInfo)craftInfo).Localized;
			((ItemInfo)val).localizedDescription = ((ItemInfo)craftInfo).localizedDescription;
			((ItemInfo)val).localizedLore = ((ItemInfo)craftInfo).localizedLore;
			((ItemInfo)val).localizedName = ((ItemInfo)craftInfo).localizedName;
			((ItemInfo)val).stackSize = ((ItemInfo)craftInfo).stackSize;
			((ItemInfo)val).spawnHeight = ((ItemInfo)craftInfo).spawnHeight;
			((ItemInfo)val)._cachedComponents = ((ItemInfo)craftInfo)._cachedComponents;
			((ItemInfo)val)._cachedComponentsTable = ((ItemInfo)craftInfo)._cachedComponentsTable;
			((ItemInfo)val).components = ((ItemInfo)craftInfo).components;
			((ItemInfo)val).attributes = ((ItemInfo)craftInfo).attributes;
			((ItemInfo)val).networkedInventoryAttributes = ((ItemInfo)craftInfo).networkedInventoryAttributes;
			((ItemInfo)val).processes = ((ItemInfo)craftInfo).processes;
			((ItemInfo)val).unique = ((ItemInfo)craftInfo).unique;
			((ItemInfo)val).previewImage = ((ItemInfo)craftInfo).previewImage;
			((ItemInfo)val).storageClass = ((ItemInfo)craftInfo).storageClass;
			((ItemInfo)val).spawnObject = ((ItemInfo)craftInfo).spawnObject;
			val._knowledgeManager = craftInfo._knowledgeManager;
			((ItemInfo)val).showTier = ((ItemInfo)craftInfo).showTier;
			((ItemInfo)val).colors = ((ItemInfo)craftInfo).colors;
			((ItemInfo)val).id = ((Object)val).GetHashCode();
			foreach (string item in new List<string> { "WorkshopBlueprints_T2", "WorkshopBlueprints_T1", "WorkshopBlueprints_T0" })
			{
				Plugin._ItemInfoListDb[item].itemInfoList.Add((ItemInfo)(object)val);
			}
			return val;
		}

		public static bool CheckAskaPlus()
		{
			if (!((BaseChainloader<BasePlugin>)(object)IL2CPPChainloader.Instance).Plugins.ContainsKey("askaplus.bepinex.mod"))
			{
				return false;
			}
			Plugin.RLogger.LogInfo((object)"AskaPlus is Installed, skipping 2 recipes (3xSticksFromFirewood and 10xSticksFromFirewood).");
			return true;
		}
	}
	[BepInPlugin("blacks7ar.RecipeAdditions", "RecipeAdditions", "1.0.3")]
	public class Plugin : BasePlugin
	{
		[HarmonyPatch]
		private static class Patch
		{
			[HarmonyPostfix]
			[HarmonyPatch(typeof(ItemDatabaseManager), "Awake")]
			private static void Awake_Postfix(ItemDatabaseManager __instance)
			{
				if ((Object)(object)__instance == (Object)null || (Object)(object)__instance._infoDatabase == (Object)null)
				{
					return;
				}
				Dictionary<int, ItemInfo> itemsMap = __instance._infoDatabase._itemsMap;
				if (itemsMap == null)
				{
					return;
				}
				foreach (CraftBlueprintInfo craftBlueprintInfo in _CraftBlueprintInfoList)
				{
					itemsMap[((ItemInfo)craftBlueprintInfo).id] = (ItemInfo)(object)craftBlueprintInfo;
				}
			}
		}

		private const string modGUID = "blacks7ar.RecipeAdditions";

		public const string modName = "RecipeAdditions";

		public const string modAuthor = "blacks7ar";

		public const string modVersion = "1.0.3";

		public static ManualLogSource RLogger;

		public static Dictionary<string, ItemInfo> _ItemInfoDb = new Dictionary<string, ItemInfo>();

		public static Dictionary<string, ItemInfoList> _ItemInfoListDb = new Dictionary<string, ItemInfoList>();

		public static Dictionary<string, CraftBlueprintInfo> _CraftBlueprintInfoDb = new Dictionary<string, CraftBlueprintInfo>();

		public static Dictionary<string, ItemCategoryInfo> _ItemCategoryInfoDb = new Dictionary<string, ItemCategoryInfo>();

		private static bool _AskaPlusInstalled;

		private static List<CraftBlueprintInfo> _CraftBlueprintInfoList = new List<CraftBlueprintInfo>();

		public override void Load()
		{
			//IL_0033: Unknown result type (might be due to invalid IL or missing references)
			RLogger = ((BasePlugin)this).Log;
			RLogger.LogInfo((object)"Mod loaded!");
			Helper.InitializeDb();
			_AskaPlusInstalled = Helper.CheckAskaPlus();
			CreateRecipes();
			new Harmony("blacks7ar.RecipeAdditions").PatchAll();
		}

		private static void CreateRecipes()
		{
			//IL_002e: Unknown result type (might be due to invalid IL or missing references)
			//IL_0033: Unknown result type (might be due to invalid IL or missing references)
			//IL_003a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0054: Expected O, but got Unknown
			//IL_00fd: Unknown result type (might be due to invalid IL or missing references)
			//IL_0104: Expected O, but got Unknown
			//IL_1f41: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f48: Expected O, but got Unknown
			//IL_0157: Unknown result type (might be due to invalid IL or missing references)
			//IL_015c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0164: Unknown result type (might be due to invalid IL or missing references)
			//IL_017e: Expected O, but got Unknown
			//IL_0227: Unknown result type (might be due to invalid IL or missing references)
			//IL_022e: Expected O, but got Unknown
			//IL_0283: Unknown result type (might be due to invalid IL or missing references)
			//IL_0288: Unknown result type (might be due to invalid IL or missing references)
			//IL_028f: Unknown result type (might be due to invalid IL or missing references)
			//IL_02a9: Expected O, but got Unknown
			//IL_0364: Unknown result type (might be due to invalid IL or missing references)
			//IL_036b: Expected O, but got Unknown
			//IL_03c2: Unknown result type (might be due to invalid IL or missing references)
			//IL_03c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_03cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_03e9: Expected O, but got Unknown
			//IL_04a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_04ab: Expected O, but got Unknown
			//IL_0790: Unknown result type (might be due to invalid IL or missing references)
			//IL_0795: Unknown result type (might be due to invalid IL or missing references)
			//IL_079c: Unknown result type (might be due to invalid IL or missing references)
			//IL_07b6: Expected O, but got Unknown
			//IL_07b7: Unknown result type (might be due to invalid IL or missing references)
			//IL_07bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_07c3: Unknown result type (might be due to invalid IL or missing references)
			//IL_07dd: Expected O, but got Unknown
			//IL_07de: Unknown result type (might be due to invalid IL or missing references)
			//IL_07e3: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_0804: Expected O, but got Unknown
			//IL_0805: Unknown result type (might be due to invalid IL or missing references)
			//IL_080a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0811: Unknown result type (might be due to invalid IL or missing references)
			//IL_082b: Expected O, but got Unknown
			//IL_0904: Unknown result type (might be due to invalid IL or missing references)
			//IL_090b: Expected O, but got Unknown
			//IL_050b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0510: Unknown result type (might be due to invalid IL or missing references)
			//IL_0517: Unknown result type (might be due to invalid IL or missing references)
			//IL_0531: Expected O, but got Unknown
			//IL_05ec: Unknown result type (might be due to invalid IL or missing references)
			//IL_05f3: Expected O, but got Unknown
			//IL_0961: Unknown result type (might be due to invalid IL or missing references)
			//IL_0966: Unknown result type (might be due to invalid IL or missing references)
			//IL_096d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0987: Expected O, but got Unknown
			//IL_0988: Unknown result type (might be due to invalid IL or missing references)
			//IL_098d: Unknown result type (might be due to invalid IL or missing references)
			//IL_0994: Unknown result type (might be due to invalid IL or missing references)
			//IL_09ae: Expected O, but got Unknown
			//IL_0a71: Unknown result type (might be due to invalid IL or missing references)
			//IL_0a78: Expected O, but got Unknown
			//IL_064a: Unknown result type (might be due to invalid IL or missing references)
			//IL_064f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0656: Unknown result type (might be due to invalid IL or missing references)
			//IL_0670: Expected O, but got Unknown
			//IL_0733: Unknown result type (might be due to invalid IL or missing references)
			//IL_073a: Expected O, but got Unknown
			//IL_0ace: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ad3: Unknown result type (might be due to invalid IL or missing references)
			//IL_0adb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0af5: Expected O, but got Unknown
			//IL_0af6: Unknown result type (might be due to invalid IL or missing references)
			//IL_0afb: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b02: Unknown result type (might be due to invalid IL or missing references)
			//IL_0b1c: Expected O, but got Unknown
			//IL_0bdf: Unknown result type (might be due to invalid IL or missing references)
			//IL_0be6: Expected O, but got Unknown
			//IL_0c3c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c41: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c48: Unknown result type (might be due to invalid IL or missing references)
			//IL_0c62: Expected O, but got Unknown
			//IL_0d25: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d2c: Expected O, but got Unknown
			//IL_0d82: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d87: Unknown result type (might be due to invalid IL or missing references)
			//IL_0d8f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0da9: Expected O, but got Unknown
			//IL_0e6c: Unknown result type (might be due to invalid IL or missing references)
			//IL_0e73: Expected O, but got Unknown
			//IL_0ec9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ece: Unknown result type (might be due to invalid IL or missing references)
			//IL_0ed5: Unknown result type (might be due to invalid IL or missing references)
			//IL_0eef: Expected O, but got Unknown
			//IL_0fb2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0fb9: Expected O, but got Unknown
			//IL_1010: Unknown result type (might be due to invalid IL or missing references)
			//IL_1015: Unknown result type (might be due to invalid IL or missing references)
			//IL_101d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1037: Expected O, but got Unknown
			//IL_10fa: Unknown result type (might be due to invalid IL or missing references)
			//IL_1101: Expected O, but got Unknown
			//IL_1157: Unknown result type (might be due to invalid IL or missing references)
			//IL_115c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1163: Unknown result type (might be due to invalid IL or missing references)
			//IL_117d: Expected O, but got Unknown
			//IL_1240: Unknown result type (might be due to invalid IL or missing references)
			//IL_1247: Expected O, but got Unknown
			//IL_129e: Unknown result type (might be due to invalid IL or missing references)
			//IL_12a3: Unknown result type (might be due to invalid IL or missing references)
			//IL_12ab: Unknown result type (might be due to invalid IL or missing references)
			//IL_12c5: Expected O, but got Unknown
			//IL_1388: Unknown result type (might be due to invalid IL or missing references)
			//IL_138f: Expected O, but got Unknown
			//IL_13e6: Unknown result type (might be due to invalid IL or missing references)
			//IL_13eb: Unknown result type (might be due to invalid IL or missing references)
			//IL_13f2: Unknown result type (might be due to invalid IL or missing references)
			//IL_140c: Expected O, but got Unknown
			//IL_14cf: Unknown result type (might be due to invalid IL or missing references)
			//IL_14d6: Expected O, but got Unknown
			//IL_152d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1532: Unknown result type (might be due to invalid IL or missing references)
			//IL_1539: Unknown result type (might be due to invalid IL or missing references)
			//IL_1553: Expected O, but got Unknown
			//IL_1616: Unknown result type (might be due to invalid IL or missing references)
			//IL_161d: Expected O, but got Unknown
			//IL_1674: Unknown result type (might be due to invalid IL or missing references)
			//IL_1679: Unknown result type (might be due to invalid IL or missing references)
			//IL_1680: Unknown result type (might be due to invalid IL or missing references)
			//IL_169a: Expected O, but got Unknown
			//IL_175d: Unknown result type (might be due to invalid IL or missing references)
			//IL_1764: Expected O, but got Unknown
			//IL_17bb: Unknown result type (might be due to invalid IL or missing references)
			//IL_17c0: Unknown result type (might be due to invalid IL or missing references)
			//IL_17c7: Unknown result type (might be due to invalid IL or missing references)
			//IL_17e1: Expected O, but got Unknown
			//IL_18a4: Unknown result type (might be due to invalid IL or missing references)
			//IL_18ab: Expected O, but got Unknown
			//IL_1902: Unknown result type (might be due to invalid IL or missing references)
			//IL_1907: Unknown result type (might be due to invalid IL or missing references)
			//IL_190e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1928: Expected O, but got Unknown
			//IL_19eb: Unknown result type (might be due to invalid IL or missing references)
			//IL_19f2: Expected O, but got Unknown
			//IL_1a49: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a4e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a55: Unknown result type (might be due to invalid IL or missing references)
			//IL_1a6f: Expected O, but got Unknown
			//IL_1b32: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b39: Expected O, but got Unknown
			//IL_1b90: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b95: Unknown result type (might be due to invalid IL or missing references)
			//IL_1b9c: Unknown result type (might be due to invalid IL or missing references)
			//IL_1bb6: Expected O, but got Unknown
			//IL_1c79: Unknown result type (might be due to invalid IL or missing references)
			//IL_1c80: Expected O, but got Unknown
			//IL_1cd7: Unknown result type (might be due to invalid IL or missing references)
			//IL_1cdc: Unknown result type (might be due to invalid IL or missing references)
			//IL_1ce3: Unknown result type (might be due to invalid IL or missing references)
			//IL_1cfd: Expected O, but got Unknown
			//IL_1dc0: Unknown result type (might be due to invalid IL or missing references)
			//IL_1dc7: Expected O, but got Unknown
			//IL_1e1e: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e23: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e2a: Unknown result type (might be due to invalid IL or missing references)
			//IL_1e44: Expected O, but got Unknown
			//IL_1f07: Unknown result type (might be due to invalid IL or missing references)
			//IL_1f0e: Expected O, but got Unknown
			bool flag = default(bool);
			try
			{
				CraftBlueprintInfo val = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("ThatchFromFibers");
				val.availableInTrialVersion = false;
				((BlueprintInfo)val).quantity = 1;
				List<ItemInfoQuantity> list = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 2,
						itemInfo = _ItemInfoDb["Item_Wood_BarkFibres"]
					}
				};
				((BlueprintInfo)val).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list.ToArray());
				((BlueprintInfo)val).result = _ItemInfoDb["Item_Wood_Thatch"];
				((ItemInfo)val).icon = ((BlueprintInfo)val).result.icon;
				((ItemInfo)val).Localized = false;
				((ItemInfo)val).localizedDescription = ((BlueprintInfo)val).result.localizedDescription;
				((ItemInfo)val).localizedLore = ((BlueprintInfo)val).result.localizedLore;
				((ItemInfo)val).localizedName = ((BlueprintInfo)val).result.localizedName;
				((ItemInfo)val).previewImage = ((BlueprintInfo)val).result.previewImage;
				((ItemInfo)val).spawnObject = ((BlueprintInfo)val).result.spawnObject;
				_CraftBlueprintInfoList.Add(val);
				ManualLogSource rLogger = RLogger;
				BepInExDebugLogInterpolatedStringHandler val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val).name);
				}
				rLogger.LogDebug(val2);
				CraftBlueprintInfo val3 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xThatchFromFibers");
				val3.availableInTrialVersion = false;
				((BlueprintInfo)val3).quantity = 10;
				List<ItemInfoQuantity> list2 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 20,
						itemInfo = _ItemInfoDb["Item_Wood_BarkFibres"]
					}
				};
				((BlueprintInfo)val3).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list2.ToArray());
				((BlueprintInfo)val3).result = _ItemInfoDb["Item_Wood_Thatch"];
				((ItemInfo)val3).icon = ((BlueprintInfo)val3).result.icon;
				((ItemInfo)val3).Localized = false;
				((ItemInfo)val3).localizedDescription = ((BlueprintInfo)val3).result.localizedDescription;
				((ItemInfo)val3).localizedLore = ((BlueprintInfo)val3).result.localizedLore;
				((ItemInfo)val3).localizedName = ((BlueprintInfo)val3).result.localizedName;
				((ItemInfo)val3).previewImage = ((BlueprintInfo)val3).result.previewImage;
				((ItemInfo)val3).spawnObject = ((BlueprintInfo)val3).result.spawnObject;
				_CraftBlueprintInfoList.Add(val3);
				ManualLogSource rLogger2 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val3).name);
				}
				rLogger2.LogDebug(val2);
				CraftBlueprintInfo val4 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("ThatchFromSticks");
				val4.availableInTrialVersion = false;
				((BlueprintInfo)val4).quantity = 1;
				List<ItemInfoQuantity> list3 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 1,
						itemInfo = _ItemInfoDb["Item_Wood_Sticks"]
					}
				};
				((BlueprintInfo)val4).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list3.ToArray());
				((BlueprintInfo)val4).result = _ItemInfoDb["Item_Wood_Thatch"];
				((ItemInfo)val4).icon = ((BlueprintInfo)val4).result.icon;
				((ItemInfo)val4).Localized = false;
				((ItemInfo)val4).localizedDescription = ((BlueprintInfo)val4).result.localizedDescription;
				((ItemInfo)val4).localizedLore = ((BlueprintInfo)val4).result.localizedLore;
				((ItemInfo)val4).localizedName = ((BlueprintInfo)val4).result.localizedName;
				((ItemInfo)val4).previewImage = ((BlueprintInfo)val4).result.previewImage;
				((ItemInfo)val4).spawnObject = ((BlueprintInfo)val4).result.spawnObject;
				_CraftBlueprintInfoList.Add(val4);
				ManualLogSource rLogger3 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val4).name);
				}
				rLogger3.LogDebug(val2);
				CraftBlueprintInfo val5 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xThatchFromSticks");
				val5.availableInTrialVersion = false;
				((BlueprintInfo)val5).quantity = 10;
				List<ItemInfoQuantity> list4 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 10,
						itemInfo = _ItemInfoDb["Item_Wood_Sticks"]
					}
				};
				((BlueprintInfo)val5).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list4.ToArray());
				((BlueprintInfo)val5).result = _ItemInfoDb["Item_Wood_Thatch"];
				((ItemInfo)val5).icon = ((BlueprintInfo)val5).result.icon;
				((ItemInfo)val5).Localized = false;
				((ItemInfo)val5).localizedDescription = ((BlueprintInfo)val5).result.localizedDescription;
				((ItemInfo)val5).localizedLore = ((BlueprintInfo)val5).result.localizedLore;
				((ItemInfo)val5).localizedName = ((BlueprintInfo)val5).result.localizedName;
				((ItemInfo)val5).previewImage = ((BlueprintInfo)val5).result.previewImage;
				((ItemInfo)val5).spawnObject = ((BlueprintInfo)val5).result.spawnObject;
				_CraftBlueprintInfoList.Add(val5);
				ManualLogSource rLogger4 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val5).name);
				}
				rLogger4.LogDebug(val2);
				if (!_AskaPlusInstalled)
				{
					CraftBlueprintInfo val6 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("3xSticksFromFirewood");
					val6.availableInTrialVersion = false;
					((BlueprintInfo)val6).quantity = 3;
					List<ItemInfoQuantity> list5 = new List<ItemInfoQuantity>
					{
						new ItemInfoQuantity
						{
							quantity = 1,
							itemInfo = _ItemInfoDb["Item_Wood_Firewood"]
						}
					};
					((BlueprintInfo)val6).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list5.ToArray());
					((BlueprintInfo)val6).result = _ItemInfoDb["Item_Wood_Sticks"];
					((ItemInfo)val6).icon = ((BlueprintInfo)val6).result.icon;
					((ItemInfo)val6).Localized = false;
					((ItemInfo)val6).localizedDescription = ((BlueprintInfo)val6).result.localizedDescription;
					((ItemInfo)val6).localizedLore = ((BlueprintInfo)val6).result.localizedLore;
					((ItemInfo)val6).localizedName = ((BlueprintInfo)val6).result.localizedName;
					((ItemInfo)val6).previewImage = ((BlueprintInfo)val6).result.previewImage;
					((ItemInfo)val6).spawnObject = ((BlueprintInfo)val6).result.spawnObject;
					_CraftBlueprintInfoList.Add(val6);
					ManualLogSource rLogger5 = RLogger;
					val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
					if (flag)
					{
						((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
						((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val6).name);
					}
					rLogger5.LogDebug(val2);
					CraftBlueprintInfo val7 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xSticksFromFirewood");
					val7.availableInTrialVersion = false;
					((BlueprintInfo)val7).quantity = 10;
					List<ItemInfoQuantity> list6 = new List<ItemInfoQuantity>
					{
						new ItemInfoQuantity
						{
							quantity = 3,
							itemInfo = _ItemInfoDb["Item_Wood_Firewood"]
						}
					};
					((BlueprintInfo)val7).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list6.ToArray());
					((BlueprintInfo)val7).result = _ItemInfoDb["Item_Wood_Sticks"];
					((ItemInfo)val7).icon = ((BlueprintInfo)val7).result.icon;
					((ItemInfo)val7).Localized = false;
					((ItemInfo)val7).localizedDescription = ((BlueprintInfo)val7).result.localizedDescription;
					((ItemInfo)val7).localizedLore = ((BlueprintInfo)val7).result.localizedLore;
					((ItemInfo)val7).localizedName = ((BlueprintInfo)val7).result.localizedName;
					((ItemInfo)val7).stackSize = 1;
					((ItemInfo)val7).previewImage = ((BlueprintInfo)val7).result.previewImage;
					((ItemInfo)val7).spawnObject = ((BlueprintInfo)val7).result.spawnObject;
					_CraftBlueprintInfoList.Add(val7);
					ManualLogSource rLogger6 = RLogger;
					val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
					if (flag)
					{
						((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
						((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val7).name);
					}
					rLogger6.LogDebug(val2);
				}
				CraftBlueprintInfo val8 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("ExplodingSackAlt");
				val8.availableInTrialVersion = false;
				((BlueprintInfo)val8).quantity = 1;
				List<ItemInfoQuantity> list7 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 2,
						itemInfo = _ItemInfoDb["Item_Magic_EyeOfOdin"]
					},
					new ItemInfoQuantity
					{
						quantity = 6,
						itemInfo = _ItemInfoDb["Item_Wood_Resin"]
					},
					new ItemInfoQuantity
					{
						quantity = 4,
						itemInfo = _ItemInfoDb["Item_Stone_SmallRaw"]
					},
					new ItemInfoQuantity
					{
						quantity = 2,
						itemInfo = _ItemInfoDb["Item_Materials_BasicRope"]
					}
				};
				((BlueprintInfo)val8).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list7.ToArray());
				((BlueprintInfo)val8).result = _ItemInfoDb["Item_Magic_ExplodingSack"];
				((ItemInfo)val8).category = _ItemCategoryInfoDb["Categ_Blueprints_Magic"];
				((ItemInfo)val8).icon = ((BlueprintInfo)val8).result.icon;
				((ItemInfo)val8).Localized = false;
				((ItemInfo)val8).localizedDescription = ((BlueprintInfo)val8).result.localizedDescription;
				((ItemInfo)val8).localizedLore = ((BlueprintInfo)val8).result.localizedLore;
				((ItemInfo)val8).localizedName = ((BlueprintInfo)val8).result.localizedName;
				((ItemInfo)val8).stackSize = 1;
				((ItemInfo)val8).previewImage = ((BlueprintInfo)val8).result.previewImage;
				((ItemInfo)val8).spawnObject = ((BlueprintInfo)val8).result.spawnObject;
				_CraftBlueprintInfoList.Add(val8);
				ManualLogSource rLogger7 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val8).name);
				}
				rLogger7.LogDebug(val2);
				CraftBlueprintInfo val9 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("JotunBloodAlt");
				val9.availableInTrialVersion = false;
				((BlueprintInfo)val9).quantity = 1;
				List<ItemInfoQuantity> list8 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 2,
						itemInfo = _ItemInfoDb["Item_Misc_CrawlerSack"]
					},
					new ItemInfoQuantity
					{
						quantity = 1,
						itemInfo = _ItemInfoDb["Item_Iron_Ore"]
					}
				};
				((BlueprintInfo)val9).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list8.ToArray());
				((BlueprintInfo)val9).result = _ItemInfoDb["Item_Magic_EyeOfOdin"];
				((ItemInfo)val9).icon = ((BlueprintInfo)val9).result.icon;
				((ItemInfo)val9).Localized = false;
				((ItemInfo)val9).localizedDescription = ((BlueprintInfo)val9).result.localizedDescription;
				((ItemInfo)val9).localizedLore = ((BlueprintInfo)val9).result.localizedLore;
				((ItemInfo)val9).localizedName = ((BlueprintInfo)val9).result.localizedName;
				((ItemInfo)val9).stackSize = 1;
				((ItemInfo)val9).previewImage = ((BlueprintInfo)val9).result.previewImage;
				((ItemInfo)val9).spawnObject = ((BlueprintInfo)val9).result.spawnObject;
				_CraftBlueprintInfoList.Add(val9);
				ManualLogSource rLogger8 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val9).name);
				}
				rLogger8.LogDebug(val2);
				CraftBlueprintInfo val10 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("5xJotunBloodAlt");
				val10.availableInTrialVersion = false;
				((BlueprintInfo)val10).quantity = 5;
				List<ItemInfoQuantity> list9 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 10,
						itemInfo = _ItemInfoDb["Item_Misc_CrawlerSack"]
					},
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Iron_Ore"]
					}
				};
				((BlueprintInfo)val10).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list9.ToArray());
				((BlueprintInfo)val10).result = _ItemInfoDb["Item_Magic_EyeOfOdin"];
				((ItemInfo)val10).icon = ((BlueprintInfo)val10).result.icon;
				((ItemInfo)val10).Localized = false;
				((ItemInfo)val10).localizedDescription = ((BlueprintInfo)val10).result.localizedDescription;
				((ItemInfo)val10).localizedLore = ((BlueprintInfo)val10).result.localizedLore;
				((ItemInfo)val10).localizedName = ((BlueprintInfo)val10).result.localizedName;
				((ItemInfo)val10).stackSize = 1;
				((ItemInfo)val10).previewImage = ((BlueprintInfo)val10).result.previewImage;
				((ItemInfo)val10).spawnObject = ((BlueprintInfo)val10).result.spawnObject;
				_CraftBlueprintInfoList.Add(val10);
				ManualLogSource rLogger9 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val10).name);
				}
				rLogger9.LogDebug(val2);
				CraftBlueprintInfo val11 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("FeathersFromFibers");
				val11.availableInTrialVersion = false;
				((BlueprintInfo)val11).quantity = 1;
				List<ItemInfoQuantity> list10 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 1,
						itemInfo = _ItemInfoDb["Item_Wood_BarkFibres"]
					}
				};
				((BlueprintInfo)val11).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list10.ToArray());
				((BlueprintInfo)val11).result = _ItemInfoDb["Item_Misc_Feathers"];
				((ItemInfo)val11).icon = ((BlueprintInfo)val11).result.icon;
				((ItemInfo)val11).Localized = false;
				((ItemInfo)val11).localizedDescription = ((BlueprintInfo)val11).result.localizedDescription;
				((ItemInfo)val11).localizedLore = ((BlueprintInfo)val11).result.localizedLore;
				((ItemInfo)val11).localizedName = ((BlueprintInfo)val11).result.localizedName;
				((ItemInfo)val11).stackSize = 1;
				((ItemInfo)val11).previewImage = ((BlueprintInfo)val11).result.previewImage;
				((ItemInfo)val11).spawnObject = ((BlueprintInfo)val11).result.spawnObject;
				_CraftBlueprintInfoList.Add(val11);
				ManualLogSource rLogger10 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val11).name);
				}
				rLogger10.LogDebug(val2);
				CraftBlueprintInfo val12 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xFeathersFromFibers");
				val12.availableInTrialVersion = false;
				((BlueprintInfo)val12).quantity = 1;
				List<ItemInfoQuantity> list11 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 10,
						itemInfo = _ItemInfoDb["Item_Wood_BarkFibres"]
					}
				};
				((BlueprintInfo)val12).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list11.ToArray());
				((BlueprintInfo)val12).result = _ItemInfoDb["Item_Misc_Feathers"];
				((ItemInfo)val12).icon = ((BlueprintInfo)val12).result.icon;
				((ItemInfo)val12).Localized = false;
				((ItemInfo)val12).localizedDescription = ((BlueprintInfo)val12).result.localizedDescription;
				((ItemInfo)val12).localizedLore = ((BlueprintInfo)val12).result.localizedLore;
				((ItemInfo)val12).localizedName = ((BlueprintInfo)val12).result.localizedName;
				((ItemInfo)val12).stackSize = 1;
				((ItemInfo)val12).previewImage = ((BlueprintInfo)val12).result.previewImage;
				((ItemInfo)val12).spawnObject = ((BlueprintInfo)val12).result.spawnObject;
				_CraftBlueprintInfoList.Add(val12);
				ManualLogSource rLogger11 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val12).name);
				}
				rLogger11.LogDebug(val2);
				CraftBlueprintInfo val13 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("ResinFromFirewood");
				val13.availableInTrialVersion = false;
				((BlueprintInfo)val13).quantity = 1;
				List<ItemInfoQuantity> list12 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 1,
						itemInfo = _ItemInfoDb["Item_Wood_Firewood"]
					}
				};
				((BlueprintInfo)val13).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list12.ToArray());
				((BlueprintInfo)val13).result = _ItemInfoDb["Item_Wood_Resin"];
				((ItemInfo)val13).icon = ((BlueprintInfo)val13).result.icon;
				((ItemInfo)val13).Localized = false;
				((ItemInfo)val13).localizedDescription = ((BlueprintInfo)val13).result.localizedDescription;
				((ItemInfo)val13).localizedLore = ((BlueprintInfo)val13).result.localizedLore;
				((ItemInfo)val13).localizedName = ((BlueprintInfo)val13).result.localizedName;
				((ItemInfo)val13).stackSize = 1;
				((ItemInfo)val13).previewImage = ((BlueprintInfo)val13).result.previewImage;
				((ItemInfo)val13).spawnObject = ((BlueprintInfo)val13).result.spawnObject;
				_CraftBlueprintInfoList.Add(val13);
				ManualLogSource rLogger12 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val13).name);
				}
				rLogger12.LogDebug(val2);
				CraftBlueprintInfo val14 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xResinFromFirewood");
				val14.availableInTrialVersion = false;
				((BlueprintInfo)val14).quantity = 10;
				List<ItemInfoQuantity> list13 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 10,
						itemInfo = _ItemInfoDb["Item_Wood_Firewood"]
					}
				};
				((BlueprintInfo)val14).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list13.ToArray());
				((BlueprintInfo)val14).result = _ItemInfoDb["Item_Wood_Resin"];
				((ItemInfo)val14).icon = ((BlueprintInfo)val14).result.icon;
				((ItemInfo)val14).Localized = false;
				((ItemInfo)val14).localizedDescription = ((BlueprintInfo)val14).result.localizedDescription;
				((ItemInfo)val14).localizedLore = ((BlueprintInfo)val14).result.localizedLore;
				((ItemInfo)val14).localizedName = ((BlueprintInfo)val14).result.localizedName;
				((ItemInfo)val14).stackSize = 1;
				((ItemInfo)val14).previewImage = ((BlueprintInfo)val14).result.previewImage;
				((ItemInfo)val14).spawnObject = ((BlueprintInfo)val14).result.spawnObject;
				_CraftBlueprintInfoList.Add(val14);
				ManualLogSource rLogger13 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val14).name);
				}
				rLogger13.LogDebug(val2);
				CraftBlueprintInfo val15 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("FibersFromSticks");
				val15.availableInTrialVersion = false;
				((BlueprintInfo)val15).quantity = 1;
				List<ItemInfoQuantity> list14 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 1,
						itemInfo = _ItemInfoDb["Item_Wood_Sticks"]
					}
				};
				((BlueprintInfo)val15).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list14.ToArray());
				((BlueprintInfo)val15).result = _ItemInfoDb["Item_Wood_BarkFibres"];
				((ItemInfo)val15).icon = ((BlueprintInfo)val15).result.icon;
				((ItemInfo)val15).Localized = false;
				((ItemInfo)val15).localizedDescription = ((BlueprintInfo)val15).result.localizedDescription;
				((ItemInfo)val15).localizedLore = ((BlueprintInfo)val15).result.localizedLore;
				((ItemInfo)val15).localizedName = ((BlueprintInfo)val15).result.localizedName;
				((ItemInfo)val15).stackSize = 1;
				((ItemInfo)val15).previewImage = ((BlueprintInfo)val15).result.previewImage;
				((ItemInfo)val15).spawnObject = ((BlueprintInfo)val15).result.spawnObject;
				_CraftBlueprintInfoList.Add(val15);
				ManualLogSource rLogger14 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val15).name);
				}
				rLogger14.LogDebug(val2);
				CraftBlueprintInfo val16 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("10xFibersFromSticks");
				val16.availableInTrialVersion = false;
				((BlueprintInfo)val16).quantity = 10;
				List<ItemInfoQuantity> list15 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 10,
						itemInfo = _ItemInfoDb["Item_Wood_Sticks"]
					}
				};
				((BlueprintInfo)val16).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list15.ToArray());
				((BlueprintInfo)val16).result = _ItemInfoDb["Item_Wood_BarkFibres"];
				((ItemInfo)val16).icon = ((BlueprintInfo)val16).result.icon;
				((ItemInfo)val16).Localized = false;
				((ItemInfo)val16).localizedDescription = ((BlueprintInfo)val16).result.localizedDescription;
				((ItemInfo)val16).localizedLore = ((BlueprintInfo)val16).result.localizedLore;
				((ItemInfo)val16).localizedName = ((BlueprintInfo)val16).result.localizedName;
				((ItemInfo)val16).stackSize = 1;
				((ItemInfo)val16).previewImage = ((BlueprintInfo)val16).result.previewImage;
				((ItemInfo)val16).spawnObject = ((BlueprintInfo)val16).result.spawnObject;
				_CraftBlueprintInfoList.Add(val16);
				ManualLogSource rLogger15 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val16).name);
				}
				rLogger15.LogDebug(val2);
				CraftBlueprintInfo val17 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("BerriesToSeeds");
				val17.availableInTrialVersion = false;
				((BlueprintInfo)val17).quantity = 10;
				List<ItemInfoQuantity> list16 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Berries"]
					}
				};
				((BlueprintInfo)val17).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list16.ToArray());
				((BlueprintInfo)val17).result = _ItemInfoDb["Item_Seeds_BerriesSeeds"];
				((ItemInfo)val17).icon = ((BlueprintInfo)val17).result.icon;
				((ItemInfo)val17).Localized = false;
				((ItemInfo)val17).localizedDescription = ((BlueprintInfo)val17).result.localizedDescription;
				((ItemInfo)val17).localizedLore = ((BlueprintInfo)val17).result.localizedLore;
				((ItemInfo)val17).localizedName = ((BlueprintInfo)val17).result.localizedName;
				((ItemInfo)val17).stackSize = 1;
				((ItemInfo)val17).previewImage = ((BlueprintInfo)val17).result.previewImage;
				((ItemInfo)val17).spawnObject = ((BlueprintInfo)val17).result.spawnObject;
				_CraftBlueprintInfoList.Add(val17);
				ManualLogSource rLogger16 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val17).name);
				}
				rLogger16.LogDebug(val2);
				CraftBlueprintInfo val18 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("BeetrootToSeeds");
				val18.availableInTrialVersion = false;
				((BlueprintInfo)val18).quantity = 10;
				List<ItemInfoQuantity> list17 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Beetroot"]
					}
				};
				((BlueprintInfo)val18).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list17.ToArray());
				((BlueprintInfo)val18).result = _ItemInfoDb["Item_Seeds_BeetrootSeeds"];
				((ItemInfo)val18).icon = ((BlueprintInfo)val18).result.icon;
				((ItemInfo)val18).Localized = false;
				((ItemInfo)val18).localizedDescription = ((BlueprintInfo)val18).result.localizedDescription;
				((ItemInfo)val18).localizedLore = ((BlueprintInfo)val18).result.localizedLore;
				((ItemInfo)val18).localizedName = ((BlueprintInfo)val18).result.localizedName;
				((ItemInfo)val18).stackSize = 1;
				((ItemInfo)val18).previewImage = ((BlueprintInfo)val18).result.previewImage;
				((ItemInfo)val18).spawnObject = ((BlueprintInfo)val18).result.spawnObject;
				_CraftBlueprintInfoList.Add(val18);
				ManualLogSource rLogger17 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val18).name);
				}
				rLogger17.LogDebug(val2);
				CraftBlueprintInfo val19 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("CabbageToSeeds");
				val19.availableInTrialVersion = false;
				((BlueprintInfo)val19).quantity = 10;
				List<ItemInfoQuantity> list18 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Cabbage"]
					}
				};
				((BlueprintInfo)val19).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list18.ToArray());
				((BlueprintInfo)val19).result = _ItemInfoDb["Item_Seeds_CabbageSeeds"];
				((ItemInfo)val19).icon = ((BlueprintInfo)val19).result.icon;
				((ItemInfo)val19).Localized = false;
				((ItemInfo)val19).localizedDescription = ((BlueprintInfo)val19).result.localizedDescription;
				((ItemInfo)val19).localizedLore = ((BlueprintInfo)val19).result.localizedLore;
				((ItemInfo)val19).localizedName = ((BlueprintInfo)val19).result.localizedName;
				((ItemInfo)val19).stackSize = 1;
				((ItemInfo)val19).previewImage = ((BlueprintInfo)val19).result.previewImage;
				((ItemInfo)val19).spawnObject = ((BlueprintInfo)val19).result.spawnObject;
				_CraftBlueprintInfoList.Add(val19);
				ManualLogSource rLogger18 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val19).name);
				}
				rLogger18.LogDebug(val2);
				CraftBlueprintInfo val20 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("CarrotToSeeds");
				val20.availableInTrialVersion = false;
				((BlueprintInfo)val20).quantity = 10;
				List<ItemInfoQuantity> list19 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Carrot"]
					}
				};
				((BlueprintInfo)val20).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list19.ToArray());
				((BlueprintInfo)val20).result = _ItemInfoDb["Item_Seeds_CarrotSeeds"];
				((ItemInfo)val20).icon = ((BlueprintInfo)val20).result.icon;
				((ItemInfo)val20).Localized = false;
				((ItemInfo)val20).localizedDescription = ((BlueprintInfo)val20).result.localizedDescription;
				((ItemInfo)val20).localizedLore = ((BlueprintInfo)val20).result.localizedLore;
				((ItemInfo)val20).localizedName = ((BlueprintInfo)val20).result.localizedName;
				((ItemInfo)val20).stackSize = 1;
				((ItemInfo)val20).previewImage = ((BlueprintInfo)val20).result.previewImage;
				((ItemInfo)val20).spawnObject = ((BlueprintInfo)val20).result.spawnObject;
				_CraftBlueprintInfoList.Add(val20);
				ManualLogSource rLogger19 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val20).name);
				}
				rLogger19.LogDebug(val2);
				CraftBlueprintInfo val21 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("FlaxToSeeds");
				val21.availableInTrialVersion = false;
				((BlueprintInfo)val21).quantity = 10;
				List<ItemInfoQuantity> list20 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Wood_PlantFlax"]
					}
				};
				((BlueprintInfo)val21).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list20.ToArray());
				((BlueprintInfo)val21).result = _ItemInfoDb["Item_Seeds_FlaxSeeds"];
				((ItemInfo)val21).icon = ((BlueprintInfo)val21).result.icon;
				((ItemInfo)val21).Localized = false;
				((ItemInfo)val21).localizedDescription = ((BlueprintInfo)val21).result.localizedDescription;
				((ItemInfo)val21).localizedLore = ((BlueprintInfo)val21).result.localizedLore;
				((ItemInfo)val21).localizedName = ((BlueprintInfo)val21).result.localizedName;
				((ItemInfo)val21).stackSize = 1;
				((ItemInfo)val21).previewImage = ((BlueprintInfo)val21).result.previewImage;
				((ItemInfo)val21).spawnObject = ((BlueprintInfo)val21).result.spawnObject;
				_CraftBlueprintInfoList.Add(val21);
				ManualLogSource rLogger20 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val21).name);
				}
				rLogger20.LogDebug(val2);
				CraftBlueprintInfo val22 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("GarlicToSeeds");
				val22.availableInTrialVersion = false;
				((BlueprintInfo)val22).quantity = 10;
				List<ItemInfoQuantity> list21 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Garlic"]
					}
				};
				((BlueprintInfo)val22).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list21.ToArray());
				((BlueprintInfo)val22).result = _ItemInfoDb["Item_Seeds_GarlicSeeds"];
				((ItemInfo)val22).icon = ((BlueprintInfo)val22).result.icon;
				((ItemInfo)val22).Localized = false;
				((ItemInfo)val22).localizedDescription = ((BlueprintInfo)val22).result.localizedDescription;
				((ItemInfo)val22).localizedLore = ((BlueprintInfo)val22).result.localizedLore;
				((ItemInfo)val22).localizedName = ((BlueprintInfo)val22).result.localizedName;
				((ItemInfo)val22).stackSize = 1;
				((ItemInfo)val22).previewImage = ((BlueprintInfo)val22).result.previewImage;
				((ItemInfo)val22).spawnObject = ((BlueprintInfo)val22).result.spawnObject;
				_CraftBlueprintInfoList.Add(val22);
				ManualLogSource rLogger21 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val22).name);
				}
				rLogger21.LogDebug(val2);
				CraftBlueprintInfo val23 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("OnionToSeeds");
				val23.availableInTrialVersion = false;
				((BlueprintInfo)val23).quantity = 10;
				List<ItemInfoQuantity> list22 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Food_Onion"]
					}
				};
				((BlueprintInfo)val23).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list22.ToArray());
				((BlueprintInfo)val23).result = _ItemInfoDb["Item_Seeds_OnionSeeds"];
				((ItemInfo)val23).icon = ((BlueprintInfo)val23).result.icon;
				((ItemInfo)val23).Localized = false;
				((ItemInfo)val23).localizedDescription = ((BlueprintInfo)val23).result.localizedDescription;
				((ItemInfo)val23).localizedLore = ((BlueprintInfo)val23).result.localizedLore;
				((ItemInfo)val23).localizedName = ((BlueprintInfo)val23).result.localizedName;
				((ItemInfo)val23).stackSize = 1;
				((ItemInfo)val23).previewImage = ((BlueprintInfo)val23).result.previewImage;
				((ItemInfo)val23).spawnObject = ((BlueprintInfo)val23).result.spawnObject;
				_CraftBlueprintInfoList.Add(val23);
				ManualLogSource rLogger22 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val23).name);
				}
				rLogger22.LogDebug(val2);
				CraftBlueprintInfo val24 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("ReedsToSeeds");
				val24.availableInTrialVersion = false;
				((BlueprintInfo)val24).quantity = 10;
				List<ItemInfoQuantity> list23 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Wood_PlantReeds"]
					}
				};
				((BlueprintInfo)val24).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list23.ToArray());
				((BlueprintInfo)val24).result = _ItemInfoDb["Item_Seeds_ReedsSeeds"];
				((ItemInfo)val24).icon = ((BlueprintInfo)val24).result.icon;
				((ItemInfo)val24).Localized = false;
				((ItemInfo)val24).localizedDescription = ((BlueprintInfo)val24).result.localizedDescription;
				((ItemInfo)val24).localizedLore = ((BlueprintInfo)val24).result.localizedLore;
				((ItemInfo)val24).localizedName = ((BlueprintInfo)val24).result.localizedName;
				((ItemInfo)val24).stackSize = 1;
				((ItemInfo)val24).previewImage = ((BlueprintInfo)val24).result.previewImage;
				((ItemInfo)val24).spawnObject = ((BlueprintInfo)val24).result.spawnObject;
				_CraftBlueprintInfoList.Add(val24);
				ManualLogSource rLogger23 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val24).name);
				}
				rLogger23.LogDebug(val2);
				CraftBlueprintInfo val25 = _CraftBlueprintInfoDb["Item_Binders_BasicRope"].CloneRecipe("SpruceToSeeds");
				val25.availableInTrialVersion = false;
				((BlueprintInfo)val25).quantity = 10;
				List<ItemInfoQuantity> list24 = new List<ItemInfoQuantity>
				{
					new ItemInfoQuantity
					{
						quantity = 5,
						itemInfo = _ItemInfoDb["Item_Wood_Sticks"]
					}
				};
				((BlueprintInfo)val25).parts = Il2CppReferenceArray<ItemInfoQuantity>.op_Implicit(list24.ToArray());
				((BlueprintInfo)val25).result = _ItemInfoDb["Item_Seeds_SpruceSeeds"];
				((ItemInfo)val25).icon = ((BlueprintInfo)val25).result.icon;
				((ItemInfo)val25).Localized = false;
				((ItemInfo)val25).localizedDescription = ((BlueprintInfo)val25).result.localizedDescription;
				((ItemInfo)val25).localizedLore = ((BlueprintInfo)val25).result.localizedLore;
				((ItemInfo)val25).localizedName = ((BlueprintInfo)val25).result.localizedName;
				((ItemInfo)val25).stackSize = 1;
				((ItemInfo)val25).previewImage = ((BlueprintInfo)val25).result.previewImage;
				((ItemInfo)val25).spawnObject = ((BlueprintInfo)val25).result.spawnObject;
				_CraftBlueprintInfoList.Add(val25);
				ManualLogSource rLogger24 = RLogger;
				val2 = new BepInExDebugLogInterpolatedStringHandler(16, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val2).AppendLiteral("Created Recipe: ");
					((BepInExLogInterpolatedStringHandler)val2).AppendFormatted<string>(((Object)val25).name);
				}
				rLogger24.LogDebug(val2);
			}
			catch (Exception ex)
			{
				ManualLogSource rLogger25 = RLogger;
				BepInExErrorLogInterpolatedStringHandler val26 = new BepInExErrorLogInterpolatedStringHandler(42, 1, ref flag);
				if (flag)
				{
					((BepInExLogInterpolatedStringHandler)val26).AppendLiteral("Exception occured while creating recipes: ");
					((BepInExLogInterpolatedStringHandler)val26).AppendFormatted<Exception>(ex);
				}
				rLogger25.LogError(val26);
			}
		}
	}
}