Decompiled source of RemoteSignalTranslator v1.0.1

BepInEx\plugins\RemoteSignalTranslator\RemoteSignalTranslator.dll

Decompiled an hour ago
using System.Diagnostics;
using System.Drawing;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using ChatCommandAPI;
using ChatCommandAPI.Utils;
using HarmonyLib;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: AssemblyTitle("RemoteSignalTranslator")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("RemoteSignalTranslator")]
[assembly: AssemblyCopyright("Copyright ©  2026")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("0F10D8DF-E840-4F4C-BF67-12214079366B")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace RemoteSignalTranslator;

[BepInPlugin("2unhy2.RemoteSignalTranslator", "RemoteSignalTranslator", "1.0.1")]
[BepInDependency(/*Could not decode attribute arguments.*/)]
public class Plugin : BaseUnityPlugin
{
	public const string ModGuid = "2unhy2.RemoteSignalTranslator";

	public const string ModName = "RemoteSignalTranslator";

	public const string ModVersion = "1.0.1";

	private readonly Harmony harmony = new Harmony("2unhy2.RemoteSignalTranslator");

	private void Awake()
	{
		((BaseUnityPlugin)this).Logger.LogInfo((object)"RemoteSignalTranslator has loaded successfully!");
		harmony.PatchAll();
		new SignalCommand();
	}
}
public class SignalCommand : Command
{
	public override string Name => "Signal Translator";

	public override string Description => "Send a Signal Translator message remotely.";

	public override string Command => "sig";

	public override string[] Syntax => new string[1] { "<message>" };

	public override void Invoke(string args)
	{
		HUDManager instance = HUDManager.Instance;
		if (string.IsNullOrEmpty(args))
		{
			Chat.Print("<color=#B084F5>[RemoteSignalTranslator]</color> Enter a message after /sig.", (Color?)null);
			return;
		}
		SignalTranslator val = Object.FindObjectOfType<SignalTranslator>();
		if ((Object)(object)val == (Object)null)
		{
			Chat.Print("<color=#B084F5>[RemoteSignalTranslator]</color> You need to purchase the Signal Translator first.", (Color?)null);
			return;
		}
		float num = Time.realtimeSinceStartup - val.timeLastUsingSignalTranslator;
		if (num < 8f)
		{
			int num2 = Mathf.CeilToInt(8f - num);
			Chat.Print($"<color=#B084F5>[RemoteSignalTranslator]</color> Signal Translator ready in {num2}s.", (Color?)null);
		}
		else
		{
			instance.UseSignalTranslatorServerRpc(args);
		}
	}
}