Decompiled source of AReasonToFish v1.1.0

Plugins/AReasonToFish.dll

Decompiled 2 months ago
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using Jotunn;
using Jotunn.Configs;
using Jotunn.Entities;
using Jotunn.Managers;
using Jotunn.Utils;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("AReasonToFish")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("AReasonToFish")]
[assembly: AssemblyCopyright("Copyright ©  2021")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("e3243d22-4307-4008-ba36-9f326008cde5")]
[assembly: AssemblyFileVersion("0.0.1.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.6.2", FrameworkDisplayName = ".NET Framework 4.6.2")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.1.0")]
namespace AReasonToFish;

[BepInPlugin("com.jotunn.AReasonToFish", "AReasonToFish", "0.0.1")]
[BepInDependency(/*Could not decode attribute arguments.*/)]
internal class JotunnModStub : BaseUnityPlugin
{
	[HarmonyPatch(typeof(FishingFloat), "FixedUpdate")]
	private static class Fishing_Patch
	{
		private static void Prefix(ref float ___m_moveForce, ref float ___m_pullLineSpeed)
		{
			___m_pullLineSpeed = pullLineSpeedMultiplier.Value;
			___m_moveForce = forceMultiplier.Value;
		}
	}

	public const string PluginGUID = "com.jotunn.AReasonToFish";

	public const string PluginName = "AReasonToFish";

	public const string PluginVersion = "0.0.1";

	private AssetBundle AltProgBundle;

	private readonly Harmony harmony = new Harmony("fish.overhaul");

	private static ConfigEntry<float> pullLineSpeedMultiplier;

	private static ConfigEntry<float> forceMultiplier;

	private static GameObject fishingWeight;

	private static GameObject fishRawTroll;

	private static GameObject fishRawCod;

	private static GameObject fishRawTuna;

	private static GameObject fishRawHerring;

	private static GameObject fishRawTetra;

	private static GameObject fishRawGrouper;

	private static GameObject fishRawMagma;

	private static GameObject fishRawSalmon;

	private static GameObject trollFishStew;

	private static GameObject trollFishSkewer;

	private static GameObject meadBatteredCod;

	private static GameObject codTaco;

	private static GameObject tunaSandwitch;

	private static GameObject tunaSalad;

	private static GameObject pickledHerring;

	private static GameObject herringOnion;

	private static GameObject fishpop;

	private void Awake()
	{
		LoadAssets();
		pullLineSpeedMultiplier = ((BaseUnityPlugin)this).Config.Bind<float>("Modify pull speed", "pullLineSpeedMultiplier", 1.8f, "Speed multiplier");
		forceMultiplier = ((BaseUnityPlugin)this).Config.Bind<float>("Modify force", "forceMultiplier", 18f, "Force multiplier");
		harmony.PatchAll();
		PrefabManager.OnVanillaPrefabsAvailable += AddItems;
	}

	private void OnDestroy()
	{
		harmony.UnpatchSelf();
	}

	private void LoadAssets()
	{
		AltProgBundle = AssetUtils.LoadAssetBundleFromResources("areasontofish");
		Logger.LogInfo((object)("Embedded resources: " + string.Join(", ", typeof(JotunnModStub).Assembly.GetManifestResourceNames())));
		fishingWeight = AltProgBundle.LoadAsset<GameObject>("FishingWeight");
		fishRawTroll = AltProgBundle.LoadAsset<GameObject>("FishRawTroll");
		fishRawCod = AltProgBundle.LoadAsset<GameObject>("FishRawCod");
		fishRawTuna = AltProgBundle.LoadAsset<GameObject>("FishRawTuna");
		fishRawHerring = AltProgBundle.LoadAsset<GameObject>("FishRawHerring");
		fishRawTetra = AltProgBundle.LoadAsset<GameObject>("FishRawTetra");
		fishRawGrouper = AltProgBundle.LoadAsset<GameObject>("FishRawGrouper");
		fishRawMagma = AltProgBundle.LoadAsset<GameObject>("FishRawMagma");
		fishRawSalmon = AltProgBundle.LoadAsset<GameObject>("FishRawSalmon");
		trollFishStew = AltProgBundle.LoadAsset<GameObject>("TrollFishStew");
		trollFishSkewer = AltProgBundle.LoadAsset<GameObject>("TrollFishSkewer");
		meadBatteredCod = AltProgBundle.LoadAsset<GameObject>("MeadBatteredCod");
		codTaco = AltProgBundle.LoadAsset<GameObject>("FishTaco");
		tunaSandwitch = AltProgBundle.LoadAsset<GameObject>("FishSandwitch");
		tunaSalad = AltProgBundle.LoadAsset<GameObject>("SaladTuna");
		pickledHerring = AltProgBundle.LoadAsset<GameObject>("PickledHerring");
		herringOnion = AltProgBundle.LoadAsset<GameObject>("HerringsandOnions");
		fishpop = AltProgBundle.LoadAsset<GameObject>("FishPop");
	}

	private void AddItems()
	{
		//IL_0001: Unknown result type (might be due to invalid IL or missing references)
		//IL_0007: Expected O, but got Unknown
		//IL_0034: Unknown result type (might be due to invalid IL or missing references)
		//IL_003e: Expected O, but got Unknown
		//IL_004a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0050: Expected O, but got Unknown
		//IL_0082: Unknown result type (might be due to invalid IL or missing references)
		//IL_0088: Expected O, but got Unknown
		//IL_00b2: Unknown result type (might be due to invalid IL or missing references)
		//IL_00bc: Expected O, but got Unknown
		//IL_00bd: Unknown result type (might be due to invalid IL or missing references)
		//IL_00c3: Expected O, but got Unknown
		//IL_00e6: Unknown result type (might be due to invalid IL or missing references)
		//IL_00ed: Expected O, but got Unknown
		//IL_0181: Unknown result type (might be due to invalid IL or missing references)
		//IL_0188: Expected O, but got Unknown
		//IL_01c2: Unknown result type (might be due to invalid IL or missing references)
		//IL_01cc: Expected O, but got Unknown
		//IL_01d7: Unknown result type (might be due to invalid IL or missing references)
		//IL_01e1: Expected O, but got Unknown
		//IL_01ee: Unknown result type (might be due to invalid IL or missing references)
		//IL_01f5: Expected O, but got Unknown
		//IL_0289: Unknown result type (might be due to invalid IL or missing references)
		//IL_0290: Expected O, but got Unknown
		//IL_02ca: Unknown result type (might be due to invalid IL or missing references)
		//IL_02d4: Expected O, but got Unknown
		//IL_02df: Unknown result type (might be due to invalid IL or missing references)
		//IL_02e9: Expected O, but got Unknown
		//IL_02f4: Unknown result type (might be due to invalid IL or missing references)
		//IL_02fe: Expected O, but got Unknown
		//IL_030b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0312: Expected O, but got Unknown
		//IL_03a6: Unknown result type (might be due to invalid IL or missing references)
		//IL_03ad: Expected O, but got Unknown
		//IL_03de: Unknown result type (might be due to invalid IL or missing references)
		//IL_03e8: Expected O, but got Unknown
		//IL_03f5: Unknown result type (might be due to invalid IL or missing references)
		//IL_03fc: Expected O, but got Unknown
		//IL_0409: Unknown result type (might be due to invalid IL or missing references)
		//IL_0410: Expected O, but got Unknown
		//IL_0434: Unknown result type (might be due to invalid IL or missing references)
		//IL_043e: Expected O, but got Unknown
		//IL_044a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0454: Expected O, but got Unknown
		//IL_0466: Unknown result type (might be due to invalid IL or missing references)
		//IL_0470: Expected O, but got Unknown
		//IL_0471: Unknown result type (might be due to invalid IL or missing references)
		//IL_0478: Expected O, but got Unknown
		//IL_04b2: Unknown result type (might be due to invalid IL or missing references)
		//IL_04bc: Expected O, but got Unknown
		//IL_04c9: Unknown result type (might be due to invalid IL or missing references)
		//IL_04d0: Expected O, but got Unknown
		//IL_0505: Unknown result type (might be due to invalid IL or missing references)
		//IL_050c: Expected O, but got Unknown
		//IL_0546: Unknown result type (might be due to invalid IL or missing references)
		//IL_0550: Expected O, but got Unknown
		//IL_055d: Unknown result type (might be due to invalid IL or missing references)
		//IL_0564: Expected O, but got Unknown
		//IL_0599: Unknown result type (might be due to invalid IL or missing references)
		//IL_05a0: Expected O, but got Unknown
		//IL_05ce: Unknown result type (might be due to invalid IL or missing references)
		//IL_05d8: Expected O, but got Unknown
		//IL_05d9: Unknown result type (might be due to invalid IL or missing references)
		//IL_05e0: Expected O, but got Unknown
		//IL_060e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0618: Expected O, but got Unknown
		//IL_0619: Unknown result type (might be due to invalid IL or missing references)
		//IL_0620: Expected O, but got Unknown
		//IL_064f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0656: Expected O, but got Unknown
		//IL_06ea: Unknown result type (might be due to invalid IL or missing references)
		//IL_06f1: Expected O, but got Unknown
		//IL_0720: Unknown result type (might be due to invalid IL or missing references)
		//IL_0727: Expected O, but got Unknown
		//IL_07bb: Unknown result type (might be due to invalid IL or missing references)
		//IL_07c2: Expected O, but got Unknown
		//IL_07fc: Unknown result type (might be due to invalid IL or missing references)
		//IL_0806: Expected O, but got Unknown
		//IL_0811: Unknown result type (might be due to invalid IL or missing references)
		//IL_081b: Expected O, but got Unknown
		//IL_0828: Unknown result type (might be due to invalid IL or missing references)
		//IL_082f: Expected O, but got Unknown
		//IL_08c3: Unknown result type (might be due to invalid IL or missing references)
		//IL_08ca: Expected O, but got Unknown
		//IL_0904: Unknown result type (might be due to invalid IL or missing references)
		//IL_090e: Expected O, but got Unknown
		//IL_0919: Unknown result type (might be due to invalid IL or missing references)
		//IL_0923: Expected O, but got Unknown
		//IL_0939: Unknown result type (might be due to invalid IL or missing references)
		//IL_0940: Expected O, but got Unknown
		//IL_09d4: Unknown result type (might be due to invalid IL or missing references)
		//IL_09db: Expected O, but got Unknown
		//IL_0a15: Unknown result type (might be due to invalid IL or missing references)
		//IL_0a1f: Expected O, but got Unknown
		//IL_0a2a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0a34: Expected O, but got Unknown
		//IL_0a3f: Unknown result type (might be due to invalid IL or missing references)
		//IL_0a49: Expected O, but got Unknown
		//IL_0a56: Unknown result type (might be due to invalid IL or missing references)
		//IL_0a5d: Expected O, but got Unknown
		//IL_0af1: Unknown result type (might be due to invalid IL or missing references)
		//IL_0af8: Expected O, but got Unknown
		//IL_0b32: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b3c: Expected O, but got Unknown
		//IL_0b47: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b51: Expected O, but got Unknown
		//IL_0b67: Unknown result type (might be due to invalid IL or missing references)
		//IL_0b6e: Expected O, but got Unknown
		//IL_0c02: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c09: Expected O, but got Unknown
		//IL_0c43: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c4d: Expected O, but got Unknown
		//IL_0c5a: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c61: Expected O, but got Unknown
		//IL_0c96: Unknown result type (might be due to invalid IL or missing references)
		//IL_0c9d: Expected O, but got Unknown
		//IL_0ccb: Unknown result type (might be due to invalid IL or missing references)
		//IL_0cd5: Expected O, but got Unknown
		//IL_0cd6: Unknown result type (might be due to invalid IL or missing references)
		//IL_0cdd: Expected O, but got Unknown
		//IL_0d0c: Unknown result type (might be due to invalid IL or missing references)
		//IL_0d13: Expected O, but got Unknown
		//IL_0da7: Unknown result type (might be due to invalid IL or missing references)
		//IL_0dae: Expected O, but got Unknown
		//IL_0de8: Unknown result type (might be due to invalid IL or missing references)
		//IL_0df2: Expected O, but got Unknown
		//IL_0dfd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e07: Expected O, but got Unknown
		//IL_0e12: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e1c: Expected O, but got Unknown
		//IL_0e32: Unknown result type (might be due to invalid IL or missing references)
		//IL_0e39: Expected O, but got Unknown
		//IL_0ecd: Unknown result type (might be due to invalid IL or missing references)
		//IL_0ed4: Expected O, but got Unknown
		//IL_0f0e: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f18: Expected O, but got Unknown
		//IL_0f23: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f2d: Expected O, but got Unknown
		//IL_0f38: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f42: Expected O, but got Unknown
		//IL_0f58: Unknown result type (might be due to invalid IL or missing references)
		//IL_0f5f: Expected O, but got Unknown
		//IL_0ff3: Unknown result type (might be due to invalid IL or missing references)
		//IL_0ffa: Expected O, but got Unknown
		//IL_1034: Unknown result type (might be due to invalid IL or missing references)
		//IL_103e: Expected O, but got Unknown
		//IL_104b: Unknown result type (might be due to invalid IL or missing references)
		//IL_1052: Expected O, but got Unknown
		//IL_1087: Unknown result type (might be due to invalid IL or missing references)
		//IL_108e: Expected O, but got Unknown
		//IL_10bc: Unknown result type (might be due to invalid IL or missing references)
		//IL_10c6: Expected O, but got Unknown
		//IL_10c7: Unknown result type (might be due to invalid IL or missing references)
		//IL_10ce: Expected O, but got Unknown
		//IL_10fd: Unknown result type (might be due to invalid IL or missing references)
		//IL_1104: Expected O, but got Unknown
		//IL_1198: Unknown result type (might be due to invalid IL or missing references)
		//IL_119f: Expected O, but got Unknown
		//IL_11d9: Unknown result type (might be due to invalid IL or missing references)
		//IL_11e3: Expected O, but got Unknown
		//IL_11ee: Unknown result type (might be due to invalid IL or missing references)
		//IL_11f8: Expected O, but got Unknown
		//IL_1203: Unknown result type (might be due to invalid IL or missing references)
		//IL_120d: Expected O, but got Unknown
		//IL_1223: Unknown result type (might be due to invalid IL or missing references)
		//IL_122a: Expected O, but got Unknown
		//IL_12be: Unknown result type (might be due to invalid IL or missing references)
		//IL_12c5: Expected O, but got Unknown
		//IL_12ff: Unknown result type (might be due to invalid IL or missing references)
		//IL_1309: Expected O, but got Unknown
		//IL_1316: Unknown result type (might be due to invalid IL or missing references)
		//IL_131d: Expected O, but got Unknown
		//IL_1352: Unknown result type (might be due to invalid IL or missing references)
		//IL_1359: Expected O, but got Unknown
		//IL_1387: Unknown result type (might be due to invalid IL or missing references)
		//IL_1391: Expected O, but got Unknown
		//IL_1392: Unknown result type (might be due to invalid IL or missing references)
		//IL_1399: Expected O, but got Unknown
		//IL_13c8: Unknown result type (might be due to invalid IL or missing references)
		//IL_13cf: Expected O, but got Unknown
		//IL_1463: Unknown result type (might be due to invalid IL or missing references)
		//IL_146a: Expected O, but got Unknown
		//IL_14a4: Unknown result type (might be due to invalid IL or missing references)
		//IL_14ae: Expected O, but got Unknown
		//IL_14bb: Unknown result type (might be due to invalid IL or missing references)
		//IL_14c2: Expected O, but got Unknown
		//IL_14f7: Unknown result type (might be due to invalid IL or missing references)
		//IL_14fe: Expected O, but got Unknown
		//IL_152c: Unknown result type (might be due to invalid IL or missing references)
		//IL_1536: Expected O, but got Unknown
		//IL_1537: Unknown result type (might be due to invalid IL or missing references)
		//IL_153e: Expected O, but got Unknown
		//IL_156d: Unknown result type (might be due to invalid IL or missing references)
		//IL_1574: Expected O, but got Unknown
		//IL_1608: Unknown result type (might be due to invalid IL or missing references)
		//IL_160f: Expected O, but got Unknown
		//IL_1649: Unknown result type (might be due to invalid IL or missing references)
		//IL_1653: Expected O, but got Unknown
		//IL_1660: Unknown result type (might be due to invalid IL or missing references)
		//IL_1667: Expected O, but got Unknown
		//IL_169c: Unknown result type (might be due to invalid IL or missing references)
		//IL_16a3: Expected O, but got Unknown
		//IL_16d1: Unknown result type (might be due to invalid IL or missing references)
		//IL_16db: Expected O, but got Unknown
		//IL_16dc: Unknown result type (might be due to invalid IL or missing references)
		//IL_16e3: Expected O, but got Unknown
		//IL_1712: Unknown result type (might be due to invalid IL or missing references)
		//IL_1719: Expected O, but got Unknown
		ItemConfig val = new ItemConfig();
		val.Name = "Troll Fish Raw";
		val.Description = "Stanky";
		val.CraftingStation = "piece_cauldron";
		val.AddRequirement(new RequirementConfig("Fish5", 1, 0, false));
		CustomItem val2 = new CustomItem("TrollFishRaw", "FishRawTroll", val);
		val2.Recipe.Recipe.m_qualityResultAmountMultiplier = 3f;
		val2.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val2);
		CookingConversionConfig val3 = new CookingConversionConfig();
		val3.CookTime = 40f;
		((ConversionConfig)val3).FromItem = "TrollFishRaw";
		((ConversionConfig)val3).ToItem = "TrollFishCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val3));
		ItemConfig val4 = new ItemConfig();
		val4.Name = "Troll Fish Cooked";
		val4.Description = "Cooked troll fish";
		CustomItem val5 = new CustomItem("TrollFishCooked", "FishCooked", val4);
		val5.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val5.ItemDrop.m_itemData.m_shared.m_food = 50f;
		val5.ItemDrop.m_itemData.m_shared.m_foodStamina = 20f;
		val5.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val5.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val5);
		ItemConfig val6 = new ItemConfig();
		val6.Name = "Troll Fish Stew";
		val6.Description = "Troll Fish in a stew";
		val6.CraftingStation = "piece_cauldron";
		val6.MinStationLevel = 2;
		val6.AddRequirement(new RequirementConfig("TrollFishRaw", 1, 0, false));
		val6.AddRequirement(new RequirementConfig("Carrot", 1, 0, false));
		CustomItem val7 = new CustomItem("TrollStew", "TrollFishStew", val6);
		val7.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val7.ItemDrop.m_itemData.m_shared.m_food = 30f;
		val7.ItemDrop.m_itemData.m_shared.m_foodStamina = 55f;
		val7.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val7.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val7);
		ItemConfig val8 = new ItemConfig();
		val8.Name = "Troll Fish Skewer";
		val8.Description = "Troll Fish on a stick";
		val8.CraftingStation = "piece_cauldron";
		val8.MinStationLevel = 2;
		val8.AddRequirement(new RequirementConfig("TrollFishRaw", 1, 0, false));
		val8.AddRequirement(new RequirementConfig("Turnip", 1, 0, false));
		val8.AddRequirement(new RequirementConfig("Mushroom", 1, 0, false));
		CustomItem val9 = new CustomItem("TrollSkewer", "TrollFishSkewer", val8);
		val9.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val9.ItemDrop.m_itemData.m_shared.m_food = 60f;
		val9.ItemDrop.m_itemData.m_shared.m_foodStamina = 25f;
		val9.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val9.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val9);
		ItemConfig val10 = new ItemConfig();
		val10.Name = "Fishing Weights";
		val10.Description = "Adds wieght the end of a line";
		val10.CraftingStation = "forge";
		val10.AddRequirement(new RequirementConfig("Iron", 1, 0, false));
		CustomItem val11 = new CustomItem("FishingWeights", "FishingWeight", val10);
		ItemManager.Instance.AddItem(val11);
		RecipeConfig val12 = new RecipeConfig();
		val12.Item = "FishingBaitOcean";
		val12.CraftingStation = "piece_cauldron";
		val12.AddRequirement(new RequirementConfig("FishingWeights", 1, 0, false));
		val12.AddRequirement(new RequirementConfig("FishingBait", 20, 0, false));
		val12.Amount = 20;
		ItemManager.Instance.AddRecipe(new CustomRecipe(val12));
		ItemConfig val13 = new ItemConfig();
		val13.Name = "Coral Cod Raw";
		val13.Description = "What a catch";
		val13.CraftingStation = "piece_cauldron";
		val13.MinStationLevel = 2;
		val13.AddRequirement(new RequirementConfig("Fish8", 1, 0, false));
		CustomItem val14 = new CustomItem("CoralCodRaw", "FishRawCod", val13);
		val14.Recipe.Recipe.m_qualityResultAmountMultiplier = 3f;
		val14.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val14);
		ItemConfig val15 = new ItemConfig();
		val15.Name = "Tuna Raw";
		val15.Description = "Chichen of the sea";
		val15.CraftingStation = "piece_cauldron";
		val15.MinStationLevel = 2;
		val15.AddRequirement(new RequirementConfig("Fish3", 1, 0, false));
		CustomItem val16 = new CustomItem("TunaRaw", "FishRawTuna", val15);
		val16.Recipe.Recipe.m_qualityResultAmountMultiplier = 3f;
		val16.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val16);
		CookingConversionConfig val17 = new CookingConversionConfig();
		val17.CookTime = 40f;
		((ConversionConfig)val17).FromItem = "CoralCodRaw";
		((ConversionConfig)val17).ToItem = "CoralFishCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val17));
		CookingConversionConfig val18 = new CookingConversionConfig();
		val18.CookTime = 40f;
		((ConversionConfig)val18).FromItem = "TunaRaw";
		((ConversionConfig)val18).ToItem = "TunaFishCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val18));
		ItemConfig val19 = new ItemConfig();
		val19.Name = "Coral Cod Cooked";
		val19.Description = "Cooked Cod";
		val19.MinStationLevel = 2;
		CustomItem val20 = new CustomItem("CoralFishCooked", "FishCooked", val19);
		val20.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val20.ItemDrop.m_itemData.m_shared.m_food = 50f;
		val20.ItemDrop.m_itemData.m_shared.m_foodStamina = 10f;
		val20.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val20.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val20);
		ItemConfig val21 = new ItemConfig();
		val21.Name = "Tuna Cooked";
		val21.Description = "Cooked Tuna fish";
		val21.MinStationLevel = 2;
		CustomItem val22 = new CustomItem("TunaFishCooked", "FishCooked", val21);
		val22.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val22.ItemDrop.m_itemData.m_shared.m_food = 55f;
		val22.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val22.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val22.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val22);
		ItemConfig val23 = new ItemConfig();
		val23.Name = "Cod Fish Tacos";
		val23.Description = "Fish in a taco";
		val23.CraftingStation = "piece_cauldron";
		val23.MinStationLevel = 3;
		val23.AddRequirement(new RequirementConfig("CoralCodRaw", 1, 0, false));
		val23.AddRequirement(new RequirementConfig("BarleyFlour", 4, 0, false));
		CustomItem val24 = new CustomItem("CodTacos", "FishTaco", val23);
		val24.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val24.ItemDrop.m_itemData.m_shared.m_food = 70f;
		val24.ItemDrop.m_itemData.m_shared.m_foodStamina = 20f;
		val24.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1800f;
		val24.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val24);
		ItemConfig val25 = new ItemConfig();
		val25.Name = "Mead Battered Cod";
		val25.Description = "Its like bear battered.. but with mead";
		val25.CraftingStation = "piece_cauldron";
		val25.MinStationLevel = 2;
		val25.AddRequirement(new RequirementConfig("CoralCodRaw", 1, 0, false));
		val25.AddRequirement(new RequirementConfig("MeadTasty", 1, 0, false));
		val25.Amount = 1;
		CustomItem val26 = new CustomItem("MeadBCod", "MeadBatteredCod", val25);
		val26.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val26.ItemDrop.m_itemData.m_shared.m_food = 65f;
		val26.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val26.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val26.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val26);
		ItemConfig val27 = new ItemConfig();
		val27.Name = "Tuna Sandwitch";
		val27.Description = "Not sure what a sandwitch is";
		val27.CraftingStation = "piece_cauldron";
		val27.MinStationLevel = 3;
		val27.AddRequirement(new RequirementConfig("TunaSalad", 1, 0, false));
		val27.AddRequirement(new RequirementConfig("Dandelion", 1, 0, false));
		val27.AddRequirement(new RequirementConfig("Bread", 1, 0, false));
		CustomItem val28 = new CustomItem("TunaSandwitch", "FishSandwitch", val27);
		val28.ItemDrop.m_itemData.m_shared.m_foodRegen = 4f;
		val28.ItemDrop.m_itemData.m_shared.m_food = 75f;
		val28.ItemDrop.m_itemData.m_shared.m_foodStamina = 35f;
		val28.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1800f;
		val28.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val28);
		ItemConfig val29 = new ItemConfig();
		val29.Name = "Tuna Salad";
		val29.Description = "tuna paste really";
		val29.CraftingStation = "piece_cauldron";
		val29.MinStationLevel = 2;
		val29.AddRequirement(new RequirementConfig("TunaRaw", 1, 0, false));
		val29.AddRequirement(new RequirementConfig("MushroomYellow", 3, 0, false));
		val29.Amount = 1;
		CustomItem val30 = new CustomItem("TunaSalad", "SaladTuna", val29);
		val30.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val30.ItemDrop.m_itemData.m_shared.m_food = 65f;
		val30.ItemDrop.m_itemData.m_shared.m_foodStamina = 25f;
		val30.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val30.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val30);
		ItemConfig val31 = new ItemConfig();
		val31.Name = "Herring Raw";
		val31.Description = "Not as big as you thought";
		val31.CraftingStation = "piece_cauldron";
		val31.MinStationLevel = 2;
		val31.AddRequirement(new RequirementConfig("Fish6", 1, 0, false));
		CustomItem val32 = new CustomItem("HerringRaw", "FishRawHerring", val31);
		val32.Recipe.Recipe.m_qualityResultAmountMultiplier = 4f;
		val32.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val32);
		CookingConversionConfig val33 = new CookingConversionConfig();
		val33.CookTime = 40f;
		((ConversionConfig)val33).FromItem = "HerringRaw";
		((ConversionConfig)val33).ToItem = "HerringCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val33));
		ItemConfig val34 = new ItemConfig();
		val34.Name = "Herring Cooked";
		val34.Description = "Cooked Herring";
		val34.MinStationLevel = 2;
		CustomItem val35 = new CustomItem("HerringCooked", "FishCooked", val34);
		val35.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val35.ItemDrop.m_itemData.m_shared.m_food = 50f;
		val35.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val35.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val35.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val35);
		ItemConfig val36 = new ItemConfig();
		val36.Name = "Pickled Herring";
		val36.Description = "Smells bad.. and tastes bad";
		val36.CraftingStation = "piece_cauldron";
		val36.MinStationLevel = 2;
		val36.AddRequirement(new RequirementConfig("HerringRaw", 1, 0, false));
		val36.AddRequirement(new RequirementConfig("Thistle", 2, 0, false));
		val36.AddRequirement(new RequirementConfig("Ooze", 2, 0, false));
		val36.Amount = 1;
		CustomItem val37 = new CustomItem("PickledHerrings", "PickledHerring", val36);
		val37.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val37.ItemDrop.m_itemData.m_shared.m_food = 20f;
		val37.ItemDrop.m_itemData.m_shared.m_foodStamina = 75f;
		val37.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1800f;
		val37.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val37);
		ItemConfig val38 = new ItemConfig();
		val38.Name = "Herrings and Onions";
		val38.Description = "A classy dish";
		val38.CraftingStation = "piece_cauldron";
		val38.MinStationLevel = 2;
		val38.AddRequirement(new RequirementConfig("HerringRaw", 1, 0, false));
		val38.AddRequirement(new RequirementConfig("Onion", 2, 0, false));
		val38.AddRequirement(new RequirementConfig("Honey", 1, 0, false));
		val38.Amount = 1;
		CustomItem val39 = new CustomItem("HerringOnion", "HerringsandOnions", val38);
		val39.ItemDrop.m_itemData.m_shared.m_foodRegen = 3f;
		val39.ItemDrop.m_itemData.m_shared.m_food = 70f;
		val39.ItemDrop.m_itemData.m_shared.m_foodStamina = 20f;
		val39.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val39.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val39);
		ItemConfig val40 = new ItemConfig();
		val40.Name = "Tetra Raw";
		val40.Description = "Not as big as you thought";
		val40.CraftingStation = "piece_cauldron";
		val40.MinStationLevel = 2;
		val40.AddRequirement(new RequirementConfig("Fish4_cave", 1, 0, false));
		CustomItem val41 = new CustomItem("TetraRaw", "FishRawTetra", val40);
		val41.Recipe.Recipe.m_qualityResultAmountMultiplier = 4f;
		val41.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val41);
		CookingConversionConfig val42 = new CookingConversionConfig();
		val42.CookTime = 40f;
		((ConversionConfig)val42).FromItem = "TetraRaw";
		((ConversionConfig)val42).ToItem = "TetraCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val42));
		ItemConfig val43 = new ItemConfig();
		val43.Name = "Tetra Cooked";
		val43.Description = "Cooked cold Fish";
		val43.MinStationLevel = 2;
		CustomItem val44 = new CustomItem("TetraCooked", "FishCooked", val43);
		val44.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val44.ItemDrop.m_itemData.m_shared.m_food = 55f;
		val44.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val44.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val44.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val44);
		ItemConfig val45 = new ItemConfig();
		val45.Name = "Fish Pop";
		val45.Description = "A tasty treat with a hint of blueberry";
		val45.CraftingStation = "piece_cauldron";
		val45.MinStationLevel = 2;
		val45.AddRequirement(new RequirementConfig("TetraRaw", 1, 0, false));
		val45.AddRequirement(new RequirementConfig("FreezeGland", 1, 0, false));
		val45.AddRequirement(new RequirementConfig("Blueberries", 1, 0, false));
		val45.Amount = 1;
		CustomItem val46 = new CustomItem("Fishpop", "FishPop", val45);
		val46.ItemDrop.m_itemData.m_shared.m_foodRegen = 6f;
		val46.ItemDrop.m_itemData.m_shared.m_food = 30f;
		val46.ItemDrop.m_itemData.m_shared.m_foodStamina = 35f;
		val46.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1500f;
		val46.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val46);
		ItemConfig val47 = new ItemConfig();
		val47.Name = "Grouper Raw";
		val47.Description = "A grouper of tails";
		val47.CraftingStation = "piece_cauldron";
		val47.MinStationLevel = 2;
		val47.AddRequirement(new RequirementConfig("Fish7", 1, 0, false));
		CustomItem val48 = new CustomItem("GrouperRaw", "FishRawGrouper", val47);
		val48.Recipe.Recipe.m_qualityResultAmountMultiplier = 4f;
		val48.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val48);
		CookingConversionConfig val49 = new CookingConversionConfig();
		val49.CookTime = 40f;
		((ConversionConfig)val49).FromItem = "GrouperRaw";
		((ConversionConfig)val49).ToItem = "GrouperCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val49));
		ItemConfig val50 = new ItemConfig();
		val50.Name = "Grouper Cooked";
		val50.Description = "Cooked Grouper";
		val50.MinStationLevel = 2;
		CustomItem val51 = new CustomItem("GrouperCooked", "FishCooked", val50);
		val51.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val51.ItemDrop.m_itemData.m_shared.m_food = 60f;
		val51.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val51.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val51.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val51);
		ItemConfig val52 = new ItemConfig();
		val52.Name = "Magmafish Raw";
		val52.Description = "It might be hot but cook it anyway";
		val52.CraftingStation = "piece_cauldron";
		val52.MinStationLevel = 2;
		val52.AddRequirement(new RequirementConfig("Fish11", 1, 0, false));
		CustomItem val53 = new CustomItem("MagmaRaw", "FishRawMagma", val52);
		val53.Recipe.Recipe.m_qualityResultAmountMultiplier = 4f;
		val53.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val53);
		CookingConversionConfig val54 = new CookingConversionConfig();
		val54.CookTime = 40f;
		((ConversionConfig)val54).FromItem = "MagmaRaw";
		((ConversionConfig)val54).ToItem = "MagmaCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val54));
		ItemConfig val55 = new ItemConfig();
		val55.Name = "Magmafish Cooked";
		val55.Description = "Cooked Magmafish";
		val55.MinStationLevel = 2;
		CustomItem val56 = new CustomItem("MagmaCooked", "FishCooked", val55);
		val56.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val56.ItemDrop.m_itemData.m_shared.m_food = 60f;
		val56.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val56.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val56.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val56);
		ItemConfig val57 = new ItemConfig();
		val57.Name = "Northern Salmon Raw";
		val57.Description = "The coolest fish in the world";
		val57.CraftingStation = "piece_cauldron";
		val57.MinStationLevel = 2;
		val57.AddRequirement(new RequirementConfig("Fish10", 1, 0, false));
		CustomItem val58 = new CustomItem("SalmonRaw", "FishRawSalmon", val57);
		val58.Recipe.Recipe.m_qualityResultAmountMultiplier = 4f;
		val58.Recipe.Recipe.m_requireOnlyOneIngredient = true;
		ItemManager.Instance.AddItem(val58);
		CookingConversionConfig val59 = new CookingConversionConfig();
		val59.CookTime = 40f;
		((ConversionConfig)val59).FromItem = "SalmonRaw";
		((ConversionConfig)val59).ToItem = "SalmonCooked";
		ItemManager.Instance.AddItemConversion(new CustomItemConversion((ConversionConfig)(object)val59));
		ItemConfig val60 = new ItemConfig();
		val60.Name = "Northern Salmon Cooked";
		val60.Description = "Cooked Northern Salmon";
		val60.MinStationLevel = 2;
		CustomItem val61 = new CustomItem("SalmonCooked", "FishCooked", val60);
		val61.ItemDrop.m_itemData.m_shared.m_foodRegen = 2f;
		val61.ItemDrop.m_itemData.m_shared.m_food = 60f;
		val61.ItemDrop.m_itemData.m_shared.m_foodStamina = 15f;
		val61.ItemDrop.m_itemData.m_shared.m_foodBurnTime = 1200f;
		val61.ItemDrop.m_itemData.m_shared.m_weight = 0.5f;
		ItemManager.Instance.AddItem(val61);
		PrefabManager.OnVanillaPrefabsAvailable -= AddItems;
	}
}