Files
TEngine/UnityProject/Packages/com.code-philosophy.obfuz/Editor/Settings/AssemblySettings.cs
2025-07-26 08:10:41 +08:00

42 lines
1.3 KiB
C#

using Obfuz.Editor;
using System;
using System.Collections.Generic;
using UnityEngine;
namespace Obfuz.Settings
{
[Serializable]
public class AssemblySettings
{
[Tooltip("name of assemblies to obfuscate, please don't add 'Obfuz.Runtime'")]
public string[] assembliesToObfuscate;
[Tooltip("name of assemblies not obfuscated but reference assemblies to obfuscated ")]
public string[] nonObfuscatedButReferencingObfuscatedAssemblies;
[Tooltip("additional assembly search paths")]
public string[] additionalAssemblySearchPaths;
[Tooltip("obfuscate Obfuz.Runtime")]
public bool obfuscateObfuzRuntime = true;
public List<string> GetAssembliesToObfuscate()
{
var asses = new List<string>(assembliesToObfuscate ?? Array.Empty<string>());
if (obfuscateObfuzRuntime && !asses.Contains(ConstValues.ObfuzRuntimeAssemblyName))
{
asses.Add(ConstValues.ObfuzRuntimeAssemblyName);
}
return asses;
}
public List<string> GetObfuscationRelativeAssemblyNames()
{
var asses = GetAssembliesToObfuscate();
asses.AddRange(nonObfuscatedButReferencingObfuscatedAssemblies ?? Array.Empty<string>());
return asses;
}
}
}