obfuz/Editor/Unity/ObfuzMenu.cs

57 lines
2.3 KiB
C#
Raw Normal View History

using Obfuz.EncryptionVM;
using Obfuz.Settings;
using Obfuz.Utils;
using System.IO;
2025-04-16 23:03:41 +08:00
using UnityEditor;
using UnityEngine;
using static UnityEditor.ObjectChangeEventStream;
using FileUtil = Obfuz.Utils.FileUtil;
2025-04-16 23:03:41 +08:00
2025-05-04 19:55:10 +08:00
namespace Obfuz.Unity
2025-04-16 23:03:41 +08:00
{
2025-04-17 22:02:48 +08:00
public static class ObfuzMenu
2025-04-16 23:03:41 +08:00
{
[MenuItem("Obfuz/Settings...", priority = 1)]
2025-04-16 23:03:41 +08:00
public static void OpenSettings() => SettingsService.OpenProjectSettings("Project/Obfuz");
[MenuItem("Obfuz/GenerateVM", priority = 62)]
public static void GenerateEncryptionVM()
{
EncryptionVMSettings settings = ObfuzSettings.Instance.encryptionVMSettings;
var generator = new VirtualMachineCodeGenerator(settings.codeGenerationSecret, settings.encryptionOpCodeCount);
generator.Generate(settings.codeOutputPath);
}
[MenuItem("Obfuz/SaveSecretFile", priority = 63)]
public static void SaveSecretFile()
{
ObfuzSettings settings = ObfuzSettings.Instance;
var secretBytes = KeyGenerator.GenerateKey(settings.secret, VirtualMachine.SecretKeyLength);
Obfuscator.SaveKey(secretBytes, settings.secretOutputPath);
}
2025-04-16 23:03:41 +08:00
[MenuItem("Obfuz/Documents/Quick Start")]
public static void OpenQuickStart() => Application.OpenURL("https://obfuz.doc.code-philosophy.com/docs/beginner/quickstart");
[MenuItem("Obfuz/Documents/FAQ")]
public static void OpenFAQ() => Application.OpenURL("https://obfuz.doc.code-philosophy.com/docs/help/faq");
[MenuItem("Obfuz/Documents/Common Errors")]
public static void OpenCommonErrors() => Application.OpenURL("https://obfuz.doc.code-philosophy.com/docs/help/commonerrors");
[MenuItem("Obfuz/Documents/Bug Report")]
public static void OpenBugReport() => Application.OpenURL("https://obfuz.doc.code-philosophy.com/docs/help/issue");
[MenuItem("Obfuz/Documents/GitHub")]
public static void OpenGitHub() => Application.OpenURL("https://github.com/focus-creative-games/obfuz");
[MenuItem("Obfuz/Documents/Gitee")]
public static void OpenGitee() => Application.OpenURL("https://gitee.com/focus-creative-games/obfuz");
2025-04-17 22:02:48 +08:00
[MenuItem("Obfuz/Documents/About")]
public static void OpenAbout() => Application.OpenURL("https://obfuz.doc.code-philosophy.com/docs/intro");
2025-04-16 23:03:41 +08:00
}
}