using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Logging; using HarmonyLib; using LethalLib.Modules; 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("Fantasy_Life_Items")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Fantasy_Life_Items")] [assembly: AssemblyCopyright("Copyright © 2026")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("ffd37077-b020-4218-9b3e-3d93d52c9f49")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] [assembly: AssemblyVersion("1.0.0.0")] namespace Fantasy_Life_Items; [BepInPlugin("Fantasy_Life_Scrap", "Fantasy_Life_Scrap", "0.1.0")] public class Fantasy_Life_Items : BaseUnityPlugin { private const string modGUID = "Fantasy_Life_Scrap"; private const string modName = "Fantasy_Life_Scrap"; private const string modVersion = "0.1.0"; private readonly Harmony harmony = new Harmony("Fantasy_Life_Scrap"); private static Fantasy_Life_Items instance; internal ManualLogSource mls; private void Awake() { if ((Object)(object)instance == (Object)null) { instance = this; string text = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "fantasy_life_items"); AssetBundle val = AssetBundle.LoadFromFile(text); Item val2 = val.LoadAsset("Assets/Item models/Silver_Dragon_Plush/Silver_Dragon.asset"); NetworkPrefabs.RegisterNetworkPrefab(val2.spawnPrefab); Utilities.FixMixerGroups(val2.spawnPrefab); Items.RegisterScrap(val2, 19, (LevelTypes)128); Items.RegisterScrap(val2, 22, (LevelTypes)512); Items.RegisterScrap(val2, 12, (LevelTypes)256); Item val3 = val.LoadAsset("Assets/Item models/Bounty_Gold/Gold_Bounty.asset"); NetworkPrefabs.RegisterNetworkPrefab(val3.spawnPrefab); Utilities.FixMixerGroups(val3.spawnPrefab); Items.RegisterScrap(val3, 19, (LevelTypes)4096); Items.RegisterScrap(val3, 12, (LevelTypes)512); Items.RegisterScrap(val3, 10, (LevelTypes)128); Items.RegisterScrap(val3, 1, (LevelTypes)8192); Item val4 = val.LoadAsset("Assets/Item models/Bounty_iron/Iron_Bounty.asset"); NetworkPrefabs.RegisterNetworkPrefab(val4.spawnPrefab); Utilities.FixMixerGroups(val4.spawnPrefab); Items.RegisterScrap(val4, 25, (LevelTypes)64); Items.RegisterScrap(val4, 35, (LevelTypes)2048); Items.RegisterScrap(val4, 50, (LevelTypes)8192); Items.RegisterScrap(val4, 30, (LevelTypes)32); Items.RegisterScrap(val4, 35, (LevelTypes)128); Items.RegisterScrap(val4, 15, (LevelTypes)512); Item val5 = val.LoadAsset("Assets/Item models/Bounty_wood/Wooden_Bounty.asset"); NetworkPrefabs.RegisterNetworkPrefab(val5.spawnPrefab); Utilities.FixMixerGroups(val5.spawnPrefab); Items.RegisterScrap(val5, 75, (LevelTypes)4); Items.RegisterScrap(val5, 80, (LevelTypes)8192); Items.RegisterScrap(val5, 33, (LevelTypes)8); Items.RegisterScrap(val5, 90, (LevelTypes)32); Items.RegisterScrap(val5, 28, (LevelTypes)2048); Items.RegisterScrap(val5, 32, (LevelTypes)16); Items.RegisterScrap(val5, 30, (LevelTypes)64); Item val6 = val.LoadAsset("Assets/Item models/Colins_staff/Colins staff.asset"); NetworkPrefabs.RegisterNetworkPrefab(val6.spawnPrefab); Utilities.FixMixerGroups(val6.spawnPrefab); Items.RegisterScrap(val6, 70, (LevelTypes)4); Items.RegisterScrap(val6, 65, (LevelTypes)8); Items.RegisterScrap(val6, 60, (LevelTypes)32); Item val7 = val.LoadAsset("Assets/Item models/Doomstone/Doomstone.asset"); NetworkPrefabs.RegisterNetworkPrefab(val7.spawnPrefab); Utilities.FixMixerGroups(val7.spawnPrefab); Items.RegisterScrap(val7, 20, (LevelTypes)4096); Items.RegisterScrap(val7, 15, (LevelTypes)128); Items.RegisterScrap(val7, 19, (LevelTypes)512); Items.RegisterScrap(val7, 5, (LevelTypes)2048); Items.RegisterScrap(val7, 8, (LevelTypes)8192); Item val8 = val.LoadAsset("Assets/Item models/Frog_plush/Frog_Plush.asset"); NetworkPrefabs.RegisterNetworkPrefab(val8.spawnPrefab); Utilities.FixMixerGroups(val8.spawnPrefab); Items.RegisterScrap(val8, 22, (LevelTypes)64); Items.RegisterScrap(val8, 25, (LevelTypes)16); Items.RegisterScrap(val8, 20, (LevelTypes)2048); Item val9 = val.LoadAsset("Assets/Item models/Gigante_plush/Gigante_Plush.asset"); NetworkPrefabs.RegisterNetworkPrefab(val9.spawnPrefab); Utilities.FixMixerGroups(val9.spawnPrefab); Items.RegisterScrap(val9, 32, (LevelTypes)4096); Items.RegisterScrap(val9, 28, (LevelTypes)512); Items.RegisterScrap(val9, 25, (LevelTypes)128); Items.RegisterScrap(val9, 15, (LevelTypes)2048); Items.RegisterScrap(val9, 20, (LevelTypes)8192); Items.RegisterScrap(val9, 15, (LevelTypes)32); Item val10 = val.LoadAsset("Assets/Item models/Goddess_Ship/Goddess_Ship.asset"); NetworkPrefabs.RegisterNetworkPrefab(val10.spawnPrefab); Utilities.FixMixerGroups(val10.spawnPrefab); Items.RegisterScrap(val10, 3, (LevelTypes)4096); Items.RegisterScrap(val10, 1, (LevelTypes)512); Item val11 = val.LoadAsset("Assets/Item models/Gold_Dragon_Plush/Gold_Dragon.asset"); NetworkPrefabs.RegisterNetworkPrefab(val11.spawnPrefab); Utilities.FixMixerGroups(val11.spawnPrefab); Items.RegisterScrap(val11, 5, (LevelTypes)4); Items.RegisterScrap(val11, 20, (LevelTypes)8); Items.RegisterScrap(val11, 45, (LevelTypes)32); Items.RegisterScrap(val11, 45, (LevelTypes)4096); Item val12 = val.LoadAsset("Assets/Item models/Lightning_Wraith_plush/Lightning_Wraith.asset"); NetworkPrefabs.RegisterNetworkPrefab(val12.spawnPrefab); Utilities.FixMixerGroups(val12.spawnPrefab); Items.RegisterScrap(val12, 12, (LevelTypes)8); Items.RegisterScrap(val12, 20, (LevelTypes)32); Items.RegisterScrap(val12, 25, (LevelTypes)2048); Items.RegisterScrap(val12, 15, (LevelTypes)128); Item val13 = val.LoadAsset("Assets/Item models/Lord_of_The_Dead_Plush/Lord_of_the_dead_plush.asset"); NetworkPrefabs.RegisterNetworkPrefab(val13.spawnPrefab); Utilities.FixMixerGroups(val13.spawnPrefab); Items.RegisterScrap(val13, 11, (LevelTypes)8); Items.RegisterScrap(val13, 15, (LevelTypes)32); Items.RegisterScrap(val13, 25, (LevelTypes)128); Items.RegisterScrap(val13, 30, (LevelTypes)512); Item val14 = val.LoadAsset("Assets/Item models/Napdragon_Plush/Napdragon.asset"); NetworkPrefabs.RegisterNetworkPrefab(val14.spawnPrefab); Utilities.FixMixerGroups(val14.spawnPrefab); Items.RegisterScrap(val14, 35, (LevelTypes)8); Items.RegisterScrap(val14, 30, (LevelTypes)4); Items.RegisterScrap(val14, 15, (LevelTypes)2048); Items.RegisterScrap(val14, 35, (LevelTypes)16); Items.RegisterScrap(val14, 25, (LevelTypes)64); Item val15 = val.LoadAsset("Assets/Item models/Olivias_ship/Olivia's_ship.asset"); NetworkPrefabs.RegisterNetworkPrefab(val15.spawnPrefab); Utilities.FixMixerGroups(val15.spawnPrefab); Items.RegisterScrap(val15, 19, (LevelTypes)4096); Items.RegisterScrap(val15, 15, (LevelTypes)512); Items.RegisterScrap(val15, 13, (LevelTypes)128); Item val16 = val.LoadAsset("Assets/Item models/Silverfang_Plush/Silverfang_plush.asset"); NetworkPrefabs.RegisterNetworkPrefab(val16.spawnPrefab); Utilities.FixMixerGroups(val16.spawnPrefab); Items.RegisterScrap(val16, 27, (LevelTypes)128); Items.RegisterScrap(val16, 30, (LevelTypes)512); Items.RegisterScrap(val16, 15, (LevelTypes)256); Item val17 = val.LoadAsset("Assets/Item models/Sword_of_Heroes/Sword_of_Heroes.asset"); NetworkPrefabs.RegisterNetworkPrefab(val17.spawnPrefab); Utilities.FixMixerGroups(val17.spawnPrefab); Items.RegisterScrap(val17, 4, (LevelTypes)4096); Items.RegisterScrap(val17, 1, (LevelTypes)512); val17.spawnPrefab.GetComponent(); Harmony.CreateAndPatchAll(Assembly.GetExecutingAssembly(), "Fantasy_Life_Scrap"); } mls = Logger.CreateLogSource("Fantasy_Life_Scrap"); mls.LogInfo((object)"Fantasy_Life_Items has awakened"); } }