Decompiled source of ShipHomeDecor v1.0.0

ShipHomeDecor.dll

Decompiled 8 months ago
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.Configuration;
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("ShipHomeDecor")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("ShipHomeDecor")]
[assembly: AssemblyCopyright("Copyright ©  2024")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("ad7b2178-8fd3-46f1-ade0-65dd2786ff38")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace ShipHomeDecor;

public class Config
{
	public static Config Instance;

	public static ConfigEntry<int> sofaPrice;

	public static ConfigEntry<int> gamerChairPrice;

	public static void Load()
	{
		sofaPrice = Plugin.cfg.Bind<int>("Furniture", "SofaPrice", 250, "How much should the sofa cost?");
		gamerChairPrice = Plugin.cfg.Bind<int>("Furniture", "GamerChairPrice", 150, "How much should the gamer chair cost?");
	}
}
[BepInPlugin("calciumsalt.ShipHomeDecor", "Ship Home Decor", "1.0.0")]
public class Plugin : BaseUnityPlugin
{
	public static ConfigFile cfg;

	private const string modGUID = "calciumsalt.ShipHomeDecor";

	private const string modName = "Ship Home Decor";

	private const string modVersion = "1.0.0";

	private readonly Harmony harmony = new Harmony("calciumsalt.ShipHomeDecor");

	private static Plugin Instance;

	private void Awake()
	{
		cfg = ((BaseUnityPlugin)this).Config;
		Config.Load();
		if ((Object)(object)Instance == (Object)null)
		{
			Instance = this;
		}
		harmony.PatchAll(typeof(Plugin));
		string text = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "couchmod");
		AssetBundle val = AssetBundle.LoadFromFile(text);
		UnlockablesList val2 = val.LoadAsset<UnlockablesList>("Assets/CouchDecor.asset");
		UnlockableItem val3 = val2.unlockables[0];
		UnlockableItem val4 = val2.unlockables[1];
		TerminalNode val5 = val.LoadAsset<TerminalNode>("Assets/CouchTerminalNode.asset");
		TerminalNode val6 = val.LoadAsset<TerminalNode>("Assets/GamerChairTerminalNode 1.asset");
		Unlockables.RegisterUnlockable(val3, (StoreType)2, (TerminalNode)null, (TerminalNode)null, val5, Config.sofaPrice.Value);
		Unlockables.RegisterUnlockable(val4, (StoreType)2, (TerminalNode)null, (TerminalNode)null, val6, Config.gamerChairPrice.Value);
		NetworkPrefabs.RegisterNetworkPrefab(val3.prefabObject);
		NetworkPrefabs.RegisterNetworkPrefab(val4.prefabObject);
		Utilities.FixMixerGroups(val3.prefabObject);
		Utilities.FixMixerGroups(val4.prefabObject);
	}
}