Decompiled source of ProMaxFlashLight v1.1.0

HuluoboProlights.dll

Decompiled a day ago
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
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: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: AssemblyVersion("0.0.0.0")]
namespace huluoboProlights;

[BepInPlugin("hlb.Prolights", "huluoboProlights", "1.1.0")]
[BepInDependency(/*Could not decode attribute arguments.*/)]
public class HuluoboProlights : BaseUnityPlugin
{
	private const string GUID = "hlb.Prolights";

	private const string Name = "huluoboProlights";

	private const string Version = "1.1.0";

	private Harmony harmony;

	private static AssetBundle bundle;

	private void Awake()
	{
		//IL_0059: Unknown result type (might be due to invalid IL or missing references)
		//IL_0063: Expected O, but got Unknown
		string directoryName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
		bundle = AssetBundle.LoadFromFile(Path.Combine(directoryName, "01huluoboProlights"));
		LoadShopAsset("FlashlightmpromaxLight", 100);
		LoadShopAsset("FlashlightmpromaxPlusLight", 180);
		LoadShopAsset("FlashlightmpromaxplusultraLight", 300);
		harmony = new Harmony("hlb.Prolights");
		harmony.PatchAll();
	}

	private static void LoadShopAsset(string assetName, int jiage)
	{
		Item val = bundle.LoadAsset<Item>("Assets/01huluoboProlights/" + assetName + ".asset");
		Utilities.FixMixerGroups(val.spawnPrefab);
		NetworkPrefabs.RegisterNetworkPrefab(val.spawnPrefab);
		TerminalNode val2 = ScriptableObject.CreateInstance<TerminalNode>();
		val2.clearPreviousText = true;
		val2.displayText = val.itemName;
		Items.RegisterShopItem(val, (TerminalNode)null, (TerminalNode)null, val2, jiage);
	}
}