OPS.Obfuscator.Editor
Setup here your styles.
Border around the content.
Rendering the gui.
Rendering the gui.
Setup here your styles.
Border around the content.
Rendering the gui.
Rendering the gui.
Text the header shows.
Setup here your styles.
Height of the header.
Rendering the gui.
Is this Row enabled or disabled.
The row content.
Render the row with _RowIndex.
Key for the settings element.
Load from settings as enum.
Store in settings as enum.
Action when the drop down value changed.
Call onValueChanged if it is not null!
Key for the settings element.
Load from settings as string.
Store in settings as string.
Selected Index in DropDownValues.
Valid options for the DropDown.
Action when the drop down value changed.
Call onValueChanged if it is not null!
Key for the settings element.
Load from settings as string.
Store in settings as string.
Key for the settings element.
Load from settings as string.
Store in settings as string.
Key array for the settings elements.
Load from settings as string to bool array.
Store in settings as string to bool array.
Key for the settings element.
Load from settings as string.
Store in settings as string.
Render the header.
Render the header or dont.
Enable the header or dont.
Render the description.
Render the description or dont.
Enable the description or dont.
Render the content.
Render the content or dont.
Enable the content or dont.
Rendering of the gui.
Renderer rows in the content.
Adds the _Row to the row list.
Called after _Row got add to the row list.
Setup the content.
Override for custom content setup.
Rendering the gui.
Custom rendering of the gui.
Setup the content.
Override for custom content setup.
Rendering the gui.
Custom rendering of the gui.
Setup the content.
Override for custom content setup.
Rendering the gui.
Custom rendering of the gui.
If no row content got assigned, but a setting, you can use it here to load the row content.
Store row content to settings.
Is this Row enabled or disabled.
Error notification.
Warning notification.
Info notification.
Min Height of this row.
Setup the row.
Override for custom row setup.
Text describing the row.
Set if the Text should be bold.
The row content.
The row content as T.
Render the row with _RowIndex.
Override to change how the row content will be rendered.
Key for the settings element.
Load from settings as array.
Store in settings as array.
Key for the settings element.
Load from settings as bool.
Store in settings as bool.
Key for the settings element.
Load from settings as string.
Store in settings as string.
Make a class version able and allow to load from a different version.
The version of this object.
Load current object from a different old version.
Internal path helper for the obfuscator.
Move a File _From _To with _Retries if not successfully at first.
Reference a file in the filesystem.
Path to the file.
A component has a name, description and short description.
Components name.
Components long description.
Components short description.
Implementation of a simple key, value data container.
Stores dynamic data in a string key and object value format.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
Contains key to value data.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
A project executes steps and passed their output as input to the next one.
Active Report for the project. Used for logging.
Stores if some of the runned steps failed.
Output of the last runned step.
Loads, proceses and unlaods a step. Returns if it failed.
A project executes steps and passed their output as input to the next one.
Active Report for the project. Used for logging.
Stores if some of the runned steps failed.
Loads, proceses and unlaods a step. Returns if it failed.
Abstract implementation of a pipeline.
A step needs the step belonging too.
Step this Pipeline belongs too.
All Pipeline Components.
Returns a List of all PipelineComponents inherit or are TPipelineComponent.
Add an _PipelineComponent.
Process the pipeline.
Returns true, if the processing succeeded.
Custom pipeline process.
Return true, if the processing succeeded.
Also data can be passed to _StepOutput.
Abstract base class for a component in a pipeline process.
Pipeline this Component belongs too.
Assigns the Pipeline Component to _Pipeline.
Components name.
Components description.
Components short description.
Return whether the component is activated or deactivated for the pipeline processing.
Is the first hook / event in the pipeline process. Getting called before each other hook / event was called.
Read here data from the step input from the previous next step. The step was already loaded at this point.
Is the last hook / event in the pipeline process. Getting called after each other hook / event was called.
Add here data to the step output if you wish to pass it to the next step.
Returns the name of the pipeline component.
Interface describing a component in a pipeline process.
Pipeline this component belongs too.
Assigns the Pipeline Component to _Pipeline.
Return whether the component is activated or deactivated for the pipeline processing.
Is the first hook / event in the pipeline process. Getting called before each other hook / event was called.
Read here data from the step input from the previous next step. The step was already loaded at this point.
Is the last hook / event in the pipeline process. Getting called after each other hook / event was called.
Add here data to the step output if you wish to pass it to the next step.
A pipeline does a processing for a input and returns an output.
Step this Pipeline belongs too.
Components in this Pipeline.
Process the pipeline.
Also you can add data to the _StepOutput being passed to the next step.
Interface for a step output.
Each step output is also a input for the next step.
Returns if the step processing failed!
Interface for a step input.
Abstract implementation of a step.
Name of the step.
Shared Settings for this project.
Pipeline for this project.
Is the DataContainer for this class and shared for the pipeline.
Load and Initialize the Project.
Custom Load and Initialize of the Project.
Returns if the project got already loaded.
Reference.
Pre process after pipeline run.
Process the pipeline and return an output.
Post process after pipeline run.
Unload and Deinitialize the Project.
Custom Unload and Deinitialize of the Project.
A step belongs to a project and processes a pipeline.
Name of the step.
Shared Settings for this project.
Pipeline for this project.
Is the DataContainer for this class and shared for the pipeline.
Load the project up.
Project got loaded.
Process the step and return an output.
Unloads the project.
An object storing logs as an report.
Reporting level.
A report for a project.
Settings for a component.
Name of the ComponentSettings.
Add to a class if it is a settings owner.
The settings class.
Element inside a ASetting.
Type of the Setting.
Key of the Setting.
Value of the Setting as String.
Value Array of the Setting as String Array.
Abstract json serializeable settings.
Helper: Parse String to bool.
Helper: Parse bool to String.
Helper: Parse String to Int32.
Helper: Parse Int32 to String.
Key, Value
Returns true if the SettingElementArray contains an element with _Key.
Returns the SettingElement belonging to _Key.
Does not check if the element is already added. Just appends it to the array!
Add or update a setting element.
Add or update a setting element.
Add or update a setting element.
Add or update a setting element.
Add or update a setting element.
Get a setting. If this does not exist _Default will be returned.
Get a setting. If this does not exist _Default will be returned.
Get a setting. If this does not exist _Default will be returned.
Get a setting. If this does not exist _Default will be returned.
Get a setting. If setting with _Key does not exist, an empty array will be returned.
Type of the settings element.
Abstract unity build settings.
Target building to.
Target group building to.
Active unity build report;
Building to il2cpp.
Build is compressed.
Build into a project.
Abstract unity editor settings.
Helper class for dotnet assemblies.
Returns all loadable types in _Assembly.
Returns all loadable types in the domain.
Extension for Type.
True: Type is an Array or List.
Returns the ElementType of the _Type, if the _Type is a Array or List, else returns null.
True: Type is an IEnumerable.
True: Type is an ICollection.
Reflection helper class for member.
Returns the name of a member from a _FullName.
Removes the method parameter, if has one.
Example: MyMethod(...), returns MyMethod.
Returns true if _Name contains parameter.
_ParameterIndex represents the index in _Name, where the parameter after "(" starts.
Example: MyMethod(...), returns true and _ParameterIndex as 9.
Helper class for Types.
Removes the member name and following parameters.
Example: System.String MyNamespace.MyType.MyMethod(...), returns System.String MyNamespace.MyType.
Returns true if _Name contains a member (method/field/property/event).
_MemberIndex represents the index in _Name, where the member name after "." starts.
Example: System.String MyNamespace.MyType.MyMethod(...), returns true and _MemberIndex as 34.
Contains all members in the project and its belonging group.
Set up the AMemberCache using the assemblies from _Step.
The used Step.
TMemberDefinition, TMemberKey.
TMemberKey, TMemberDefinition.
Returns the original key for _MemberDefinition.
If there is non, returns null!
Returns the TMemberDefinition by its original key.
If there is non, returns null!
Add _MemberDefinition to the key to member dictionaries.
Override for custom action on add to member key and member cache.
Return false if something went wrong!
Add the _MemberDefinition only to the member cache.
Override for custom action on add to member.
Return false if something went wrong!
Contains all members in the project and its belonging group.
Set up the AMemberGroupCache using the assemblies from _Step.
TMemberDefinition, its belonging Group.
Each virtual TMemberDefinition is added here!
Maps a type to all its virtual TMemberDefinition and in its bases and interfaces.
Returns if the _MemberDefinition is virtual.
True: Member _Left and _Right match.
Returns all virtual TMember of _TypeDefinition and its bases and interfaces.
Adds the _MemberDefinition to an already existing group or to a new one.
Adds _MemberDefinition to _Group and returns it.
If _MemberDefinition is already in a group, merge this one and _Group.
Update all groups of all virtual members in _TypeDefinition.
Returns the MemberGroup of _MemberDefinition, if it has one.
Interface for a MemberCache.
Returns the Key of _MemberDefinition.
If _MemberDefinition is not part of the cache, returns null.
Returns the member by its _OriginalMemberKey.
If there is no member with _OriginalMemberKey, returns null.
Add a member only to the cache.
Cache of all members of TMemberDefinition with TMemberKey.
Returns the Key of _MemberDefinition.
If _MemberDefinition is not part of the cache, returns null.
Returns the member by its _OriginalMemberKey.
If there is no member with _OriginalMemberKey, returns null.
Add a member only to the cache.
Group of Members inside a MemberCache. The Members are related to each other through inheritance/override and sharing the same name.
The name for the group.
All MemberDefinitions in the group.
All root MemberDefinitions in this group. These are either interfaces (and the types implemented the interface) and/or types that root those members.
Add _MemberDefinition to the group.
Returns if some of the members is in an external (not obfuscated) assembly.
The obfuscated name of the group.
All members in the group.
All root members in this groups. Those are interfaces and types declaring those member.
Add _MemberDefinition to group.
Returns if some of the members is in an external (not obfuscated) assembly.
Set up the FieldCache using the assemblies from _Step.
Set up the EventCache using the assemblies from _Step.
Set up the PropertyCache using the assemblies from _Step.
Contains all methods in the project and its belonging group.
Set up the MethodCache using the assemblies from _Step.
Returns if the method is virtual.
Returns if the _Left and _Right member match.
Set up the TypeCache using the assemblies from _Step.
Original FullName, List of TypeKeys matching the FullName
Add the _TypeDefinition only to the hierarchy.
Extendend Type Full Name, Extendend Base Type Full Name
Check here if a _TypeDefinition inherits from _FromType.
Advantage here is, you can check also the assembly.
Check here if a _TypeDefinition inherits from type with original _FullName.
Does not check for a specific assembly.
Helper class for cloning member.
Tries to create a sub type for _SourceType with a namespace _SubTypeNamespace and type name _SubTypeName.
The created _SubType will be added an empty constructor.
Makes a type reference a generic reference.
Tries to clone a type. It will NOT be added to some assembly!
Tries to clone a field. It will NOT be added to some type!
Tries to clone a method. It will NOT be added to some type!
Clones the GenericParameters from _Source to _Target.
Clones the variables from _Source to _Target.
Clone the method paramter from _Source to _Target.
Clones all the Instruction from _Source to _Target.
Clones the _Instruction in _TargetAssemblyDefinition context.
Clones and returns a _SourceExceptionHandler.
Clone the given parameter definition.
Target assembly.
The original parameter definition.
A clone of the original parameter definition.
Clone the given custom attribute.
Target assembly
The original custom attribute.
A clone of the original custom attribute.
Clone the given generic parameter.
Target assembly.
Target parameter owner.
The original generic parameter.
A clone of the original generic parameter.
Extension class for IMemberDefinition.
Tries to resolve _MemberReference. If failed, returns false.
Tries to resolve _MemberReference. If failed, returns false.
Returns the extended full name of a MemberReference.
Looks like: '[AssemblyName] FullName'.
Returns the extended original full name of a MemberReference.
Looks like: '[AssemblyName] Original FullName'.
Extension class for IMemberDefinition.
Helper for IMemberDefinition.
Returns the name of a member inside a _FullName.
Does not remove generic parameter.
Returns the extended full name of a IMemberDefinition.
Looks like: '[AssemblyName] FullName'.
Returns the extended original full name of a IMemberDefinition.
Looks like: '[AssemblyName] Original FullName'.
Returns true, if has any generic parameters.
If has so, _GenericParameterCount will contain the count of them.
Simplifies _Name (Member Name). Simplifies means, if _Name has a generic parameter (`2) it will be removed.
Get the full return type of a name or fullname. If there is none, returns null.
Remove the return type from _Name. Either it is a name or fullname.
Helper for IL Instructions.
Calculates the stack usage.
Instruction to calculate
Updated with number of stack pushes
Updated with number of stack pops or -1 if the stack should be cleared.
Calculates the stack usage.
Instruction to calculate
true if method has a return value
Updated with number of stack pushes
Updated with number of stack pops or -1 if the stack should be cleared.
Calculates the stack usage for a method call.
Instruction to calculate
The instruction code.
Updated with number of stack pushes
Updated with number of stack pops or -1 if the stack should be cleared.
Calculates the stack usage for a not method call.
Instruction to calculate
The instruction code.
true if method has a return value
Updated with number of stack pushes
Updated with number of stack pops or -1 if the stack should be cleared.
Returns the extended full name of a MemberReference.
Looks like: '[AssemblyName] FullName'.
Tries to resolve _MemberReference. If could not be resolves, returns false.
Helper for mono cecil field references.
Make _FieldReference generic with _GenericArguments.
Helper for mono cecil method references.
Make _MethodReference generic with _GenericArguments.
The _MethodReference DeclaringType has generic parameter.
The MethodReference itself has no custom generic parameter, but is in a generic type. So make TypeReference generic.
Helper for methods.
Removes the method parameter, if has one.
Example: MyMethod(...), returns MyMethod.
Returns true if _Name contains parameter.
_ParameterIndex represents the index in _Name, where the parameter after "(" starts.
Example: MyMethod(...), returns true and _ParameterIndex as 9.
Helper for type references.
Returns the Assembly name of _TypeReference.
If the scope is null, returns null.
Returns the name of the assembly of an metadataScope.
Make _TypeReference generic with _Arguments.
Helper for accessibility.
Returns the EAccessibilityLevel of a member.
Returns the EAccessibilityLevel of a member.
Returns the EAccessibilityLevel of a member.
Returns the EAccessibilityLevel of a member.
Returns the EAccessibilityLevel of a member.
Helper for types.
Outputs the _Namespace and _Name by _Fullname.
If _Fullname is a nested type, namespace is empty.
Returns true if the _FullName is nested (Containing a '/').
TypeKey of System.Attribute
True: The Type is a System.Attribute.
True: The Type is a generic type.
Returns a types name without the generic ` suffix.
For example: MyType`2 => MyType
Returns a types name without the generic ` suffix.
For example: MyType`2 => MyType
True: The Type is an abstract type.
True: The Type is a static type.
Determine if the given type is a struct (also known as "value type") and not a struct-alike (f.e. primitive).
The type to check.
True if the type is a struct, and not primitive or similar.
TypeKey of System.Object
True: The _TypeDefinition IsSerializable or has System.SerializableAttribute.
True: The _TypeDefinition or any base IsSerializable or has System.SerializableAttribute.
True: _TypeDefinition has System.SerializableAttribute.
Returns if the type _Type inherits from type with original _TypeKey.
Returns if the type _Type inherits from type with original fullname _FullName.
Returns if the _TypeDefinition has an empty constructor.
Find the default constructor of a TypeDefinition.
Add an empty constructor to _TypeDefinition which exists / or will be added in / to _ModuleDefinition.
Returns all constructor, but the static constructor.
Returns the staticc constructor.
Create an empty static constructor for _TypeDefinition.
Returns a list of all members of type TMemberDefinition in _TypeDefinition, sharing the name _OriginalName searching base types.
Returns a list of all members of type TMemberDefinition sharing the name _OriginalName.
Returns the required members in _TypeDefinition.
TMemberDefinition as TypeDefinition will return all nested types.
TMemberDefinition as MethodDefinition will return all methods.
TMemberDefinition as FieldDefinition will return all fields.
TMemberDefinition as PropertyDefinition will return all properties.
TMemberDefinition as EventDefinition will return all events.
Else will return null!
Removes the member name and following parameters (if there are some, else returns _Name).
Example: System.String MyNamespace.MyType::MyMethod(...), returns System.String MyNamespace.MyType.
Returns true if _Name contains a member (method/field/property/event).
_MemberIndex represents the index in _Name, where the member name after "::" starts.
Example: System.String MyNamespace.MyType::MyMethod(...), returns true and _MemberIndex as 34.
Returns the FieldDefinition with the original name _OriginalFieldName.
Returns the FieldDefinition with the original name _OriginalFieldName.
Returns the FieldDefinition to _PropertyDefinition if there is some.
Else returns null.
Returns the FieldDefinition to _EventDefinition if there is some.
Else returns null.
Returns the PropertyDefinition with the original name _OriginalPropertyName.
Returns the PropertyDefinition with the original name _OriginalPropertyName.
Returns the PropertyDefinition belonging to _FieldDefinition if _FieldDefinition is created through a Property.
If there is none returns null.
Used as key for events.
Used for deserialization.
The Type the method belongs too.
Assembly this member is in.
Fullname of this method.
Name only of the method.
Serialize to _Value.
Deserialize from _Value.
Static helper class for member keys.
Returns the matching _MemberKey for _MemberReference.
Returns the matching _MemberKey for _MemberDefinition.
Tries to create a _MemberKey based on _MemberType.
Used as key for properties.
Used for deserialization.
The Type the method belongs too.
Assembly this member is in.
Fullname of this method.
Name only of the method.
Serialize to _Value.
Deserialize from _Value.
The Assembly the member is in.
The full name of the member.
The name of the member.
Serialize this key to _Value.
(Needs an empty constructor!)
Deserialize this key from _Value.
(Needs an empty constructor!)
Used as key for fields.
Used for deserialization.
The Type the method belongs too.
Assembly this member is in.
Fullname of this method.
Name only of the method.
Serialize to _Value.
Deserialize from _Value.
Used as key for methods.
Used for deserialization.
The Type the method belongs too.
Assembly this member is in.
Fullname of this method.
Name only of the method.
Returns the count of GenericParameters the Method has.
Get: Creates Property Serialization_FullName and assigns to Field serialization_FullName.
Set: Extracts and assigns to Field FullName, Name and GenericParameterCount.
Serialize to _Value.
Deserialize from _Value.
Used as key for types.
Used for deserialization.
Simplified name of the assembly this Type is in.
Fullname of this type.
Namespace only of the type. (Nested have NONE!)
Name only of the type.
Returns the count of GenericParameters the Type has.
Serialize to _Value.
Deserialize from _Value.
Maps a member reference to a value object.
Add or override for _Reference the _Value.
Maps a member key to a value object.
Add or override for _Key the _Value.
Get the value for _Key.
Get all the member keys sharing the same _Value.
Get all the member keys sharing the same _Value as list of TMemberKey.
Mapping from the original key of a member to its obfuscated name.
The Member Type this mapping is for.
(Original) Member Full Name, Obfuscated Name.
Obfuscated Name without generic suffix (simplified), List of (Original) Member Full Name.
Add or override an obfuscated name for a extended full name.
For example: System.Void Method().
Get the obfuscated name for a member based on its original full name.
For example: System.Void Method().
Returns a list of all members original keys by its obfuscated name or simplified obfuscated name.
If there is none, returns an empty list.
Returns a list of all members original keys as TMemberKey by its obfuscated name or simplified obfuscated name.
If there is none, returns an empty list.
Enumerator for mapping.
Serialize to custom json object.
Deserialize from custom json object.
MemberReference, (Original) Member Key
Add a _Reference, and its resolved definitions original member key.
Helper for CustomAttribute and ICustomAttributeProvider.
True: The _Attributes collection contains a attribute with _AttributeName or (_AttributeName + "Attribute")
If there is a CustomAttribute with _AttributeName in _AttributeProvider,
returns true and the _CustomAttribute.
Remove all custom attributes in _AttributeProvider with _AttributeFullName.
Get resolveable CustomAttributes.
Iterate all resolve able arguments in all custom attributes, includes children.
Iterate all custom attribute arguments, includes children.
Iterate all CustomAttributeNamedArgument ( either field or property ) in _CustomAttributeProvider.
Iterate all CustomAttributeNamedArgument in _CustomAttributeNamedArgumentEnumerable.
Tries to get a properties or fields value as TObject by its _Name.
Helper class for mono assemblies.
Returns the full file path of a _Assembly name.
Returns the ReaderParameters for a assembly.
Returns the writer parameter for a assembly.
Loads an AssemblyDefinition at _AssemblyFilePath.
Save an _AssemblyDefinition at _AssemblyFilePath.
Removes the _Assembly from the build. Deletes it from the staging area. So can only be callen after the assembly got build.
Get all Types sorted, nested included.
Returns a ordered list of all nested types (iterates through their nested types too) for a _TypeDefinition.
Returns the count of all types. Include _Nested in count via true/false.
Returns the count of all types. Include _Nested in count via true/false.
Returns the count of all methods in all types including nested ones.
Returns the count of all methods in all types including nested ones.
Returns the count of all fields in all types including nested ones.
Returns the count of all fields in all types including nested ones.
Returns the count of all properties in all types including nested ones.
Returns the count of all properties in all types including nested ones.
Returns the count of all events in all types including nested ones.
Returns the count of all events in all types including nested ones.
True: Some base class is a MonoBehaviour.
True: Some base class is a NetworkBehaviour.
True: Some base class is a ScriptableObject.
True: Some base class is a Playable.
True: Some base class is a PlayableAsset.
True: Some base class is a PlayableBehaviour.
True: The _TypeDefinition has a field that is serializable.
True: The _TypeDefinition or any base has a field that is serializable.
Helper for FieldDefinitions.
True: The field has the Unity SerializeField attribute.
Helper class for Unitys AssemblyDefinition Assets.
Returns a list of assembly definition files.
True: Is a test assembly! Applies only for Unity 2019.2 or later, else Test Assemblies are not included in UnityEditor.Compilation.
True: Is a unity assembly defintion file assembly.
True: Is a pre compiled assembly. (Extern assembly)
Used to resolve all available assemblies.
Registers an Assembly directly to be searchable for resolving.
Contains the AssemblyDefinition and infos over the TypeDefinitions.
Belonging AssemblyLoadInfo. Contains informations about how to process the assembly.
Loaded AssemblyDefinition.
Returns an ordered list of TypeDefinitions.
The list is ordered in a way, that first the nested TypeDefinitions are added, than the TypeDefinition itself.
Helps for the obfuscation.
Adds the _CurrentType to the _SortedList.
The list is ordered in a way, that first the nested TypeDefinitions are added, than the TypeDefinition itself.
Helps for the obfuscation.
Cached and sorted types in this AssemblyDefinition.
Get all types in the AssemblyDefinition, sort them an assign them to cachedTypes.
Returns all TypeDefinition in this Assembly sorted.
This is cached!
Returns true if the AssemblyDefinition contains _TypeDefinition.
Returns true if the AssemblyDefinition contains a TypeDefinition with _Namespace and _Name.
Adds the _TypeDefinition only to the AssemblyDefinitions _ModuleDefinition and then resorts this assembly type cache!
Returns the Name of the AssemblyDefinition.
Contains informations about to load assemblies.
Full file path to the assembly.
True: Is a assembly build through unity. Those assemblies dont need a a backup.
True: Is a assembly imported to unity. Those assemblies need a a backup.
True: A assembly that wont get obfuscated, but gets referenced and may be used by obfuscation components.
True: Gets obfuscated.
Setup here your styles.
Border around the content.
Renders the row at _Index.
Rendering the gui.
Setup here your styles.
Border around the content.
Rendering the gui.
Text the header shows.
Settings.
Load content by settings.
Store content to settings.
Is activate able header.
Settings used to active/deactive.
The header checkbox value.
Setup here your styles.
Height of the header.
Is foldout or not.
Foldin texture.
Foldout texture.
Checkbox for the activation.
Rendering the gui.
The settings belonging to this component.
Is a pro setting.
Value / Full file path.
Value / The stack trace..
Scrollview position 2d.
Static ObfuscatorStyle_Pro reference.
Static ObfuscatorStyle reference.
Scrollview position 2d.
Obfuscator Text
Activate or Deactive Obfuscation.
The tab index.
Setup a cache about unity assets.
Contains all extensions should be iterated.
Extension (containing the dot '.prefab' for example), Array of Relative File Paths.
Returns an Array of all full file paths for assets with _Extension.
Returns a dictionary with all extensions and UnityAssetReference.
Load the UnityAssetCache.
Unload the UnityAssetCache.
Helper for Unity Assets and Assets Files.
Refresh the AssetDatabase. If failed returns false.
Reads and returns an unity assets file at _FilePath.
Updates all the MonoScripts in _AssetsFile with the passed one in _OldToNewDictionary.
Saves the _AssetsFile at _FilePath and _Override it if, there is already a file.
Represents a unity asset file reference.
Returns the relative path including name and extension. For example Assets/[Directory]/[Asset][Extension].
Returns the RelativeFilePath.
Name of the file, without extension.
Extension only, contains the dot.
Represents a unity asset in text form at _RelativeFilePath.
Helper class for obfuscator components.
Returns if MonoBehaviour Assets can be overriden.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
The ObfuscatorCategory of a CompatibilityComponent is always Compatibility.
Shown gui in the obfuscator settings window.
Helper class for compatibility components.
Returns a list of all obfuscator compatibility components.
Returns a list of all user plugins.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return false, if the renaming of this event is not allowed!
Modify the obfuscated event name if has to.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return false, if the renaming of this property is not allowed!
Modify the obfuscated property name if has to.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return false, if the renaming of this field is not allowed!
Modify the obfuscated field name if has to.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return false, if the renaming of this method is not allowed!
Modify the obfuscated method name if has to.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return true, to skip the whole type and all its members!
Return false, if the renaming of this type is not allowed!
Modify the obfuscated type name if has to.
A component independent from the pipeline process. Allows custom compatibility to plugins / assets.
All compatibility component are called in the belonging member obfuscation component.
Return true, to skip the whole namespace and all its members!
Return false, if the renaming of this namespace is not allowed!
Modify the obfuscated namespace name if has to.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
False: Either Obfuscator Free or CObfuscate_Field_Serializable is false.
True: CObfuscate_Field_Serializable is true.
False: Either Obfuscator Free or CObfuscate_Field_Public_Unity is false.
True: CObfuscate_Field_Public_Unity is true.
The settings key for this component in the obfuscator settings.
Component of the obfuscator.
Pipeline this Component belongs too.
Returns the DataContainer of the belonging Pipeline.
Returns the Step this Pipeline belongs to.
True: The _AssemblyLoadInfo should be processed by this component.
Prepare / preprocess the assembly before it will be loaded.
Is a special hook called independently from the pipeline process itself.
Postprocess the assembly after it was obfuscated and saved.
Is a special hook called independently from the pipeline process itself.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Interface over a post assembly build component.
Return true if the _AssemblyLoadInfo can be processed by this component.
Prepare / preprocess the assembly before it will be loaded.
Is a special hook called independently from the pipeline process itself.
Postprocess the assembly after it was obfuscated and saved.
Is a special hook called independently from the pipeline process itself.
Interface over a custom post assembly build plugin component.
Find member names here.
Called after Analyse and before Obfuscate.
Abstract base class for MonoBehaviour Obfuscation.
Validate if MonoBehaviours are obfuscatable in general.
Check if MonoBehaviours in general should be obfuscated.
Validates if the namespace and class name getting obfuscated.
Only both together can be obfuscated.
Returns just true.
Returns just true.
Obfuscation of MonoBehaviours by renaming.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
True: The _AssemblyLoadInfo should be processed by this component.
The step output data key for the MonobehaviourObfuscationMapping.
A mapping of the original monobehaviour type to the obfuscated monobehaviour type.
Validate if MonoBehaviours are obfuscatable in general.
Validates if the namespace and class name getting obfuscated.
Only both together can be obfuscated.
Returns true.
Map the unobfuscated MonoBehaviours to the obfuscated MonoBehaviours.
Process only if MonoBehaviour, not generic and not abstract!
Adds the unobfuscated MonoBehaviours to the obfuscated MonoBehaviours map to the _StepOutput.
Obfuscation of MonoBehaviours by renaming and subtype generation.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
True: The _AssemblyLoadInfo should be processed by this component.
A list of all referenced types of unity mono scripts in the scene and prefabs.
Reads all the referenced MonoScripts read by PreBuild AnalyseMonoScriptComponent.
Evaluate all the obfuscate able MonoBehaviours.
Random class.
List of whole existing namespaces.
List of all split namespaces.
List of all first namespaces.
List of all type names (not generic or abstract ones).
Unions the namespaces and names inside _AssemblyInfo to the lists.
Find all kind of names for an assembly.
Returns a namespace with a length of at least 1.
The namespace gets randomized based on existing namespaces.
Returns a random namespace with length 0 to 5.
Return a random name of _NameList.
Return a random type name.
A mapping of the possible types that should be obfuscated via subtype.
True: Type is a MonoBehaviour, not generic, not abstract and in the referenced list!
Return: True: Is not sealed and has an empty constructor. False: Else.
Out: An cause why not obfuscatable.
Validates if the namespace and class name getting obfuscated.
Only both together can be obfuscated.
Obfuscate MonoBehaviours.
Create and add _TypeDefinition with _OriginalTypeKey to _AssemblyInfo.
True: Could create and add a fake subtype.
False: There is already a type with the same namespace and name.
True: Can use this namespace and name for cloning!
Create a sub type for _BaseType with a namespace _SubTypeNamespace and type name _SubTypeName.
The created _SubType will be added an empty constructor.
Returns just true.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Check if Playables in general should be obfuscated.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Check if ScriptableObjects in general should be obfuscated.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Add the 'GetTypeReferences' in all the Modules of _AssemblyInfo.
Add the 'Custom Attributes' TypeReferences of _AssemblyInfo.
Returns a list of all TypeReference in _AssemblyDefinition CustomAttributes.
Returns a list of all TypeReference of the CustomAttributes in _TypeDefinition, and its members.
CustomAttributes have ConstructorArguments and Properties and Fields.
CustomAttributes having a Value. If it is a TypeReference, it is a reference.
CustomAttributeNamedArgument have a Name and an Argument. The Name has to be overriden if the belonging Property or Field got obfuscated.
The Argument does maybe recursive reference a TypeReference.
If the Value of _CustomAttributeArgument is a TypeReference return it else null.
Checks if the whole Type and members should be skipped!
Skip the whole namespace?
Analyse the Types to check if they can be obfuscated.
Check Compatibility Components.
Find names for the member to obfuscate.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Shown gui in the obfuscator settings window.
Add the 'GetTypeReferences' in all the Modules of _AssemblyInfo.
Add the 'Custom Attributes' TypeReferences of _AssemblyInfo.
Returns a list of all TypeReference in _AssemblyDefinition CustomAttributes.
Returns a list of all TypeReference of the CustomAttributes in _TypeDefinition, and its members.
CustomAttributes have ConstructorArguments and Properties and Fields.
CustomAttributes having a Value. If it is a TypeReference, it is a reference.
CustomAttributeNamedArgument have a Name and an Argument. The Name has to be overriden if the belonging Property or Field got obfuscated.
The Argument does maybe recursive reference a TypeReference.
If the Value of _CustomAttributeArgument is a TypeReference return it else null.
Checks if the whole Type and members should be skipped!
Skip the whole type?
Analyse the Types to check if they can be obfuscated.
Check Compatibility Components.
Find names for the member to obfuscate.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Add the 'GetMemberReferences' in all the Modules of _AssemblyInfo.
Find the MethodReferences inside the Overrides and Instructions of _AssemblyInfo.
Analyse the Methods to check if they can be obfuscated.
Check Compatibility Components.
Analyse the Method groups.
And check if some other Method in group getting skipped.
Find names for the member to obfuscate.
Inherit from this component if you want to obfuscate members.
TMemberReference is the type of reference this component works with. The ones getting renamed too.
TMemberKey the type of key used to identify the references.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Shown gui in the obfuscator settings window.
Contains a mapping of all member references inside the to obfuscate assemblies.
Add a _MemberReference to the memberReferenceMapping if _MemberReference can be resolved and is in to obfuscate assemblies.
Return all the references this component will obfuscate too.
Mark the Members to not rename here.
Find names for the member to obfuscate.
Obfuscate the member and references with the previous found names.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Add the 'GetMemberReferences' in all the Modules of _AssemblyInfo.
Find the FieldReference inside the Instructions of _AssemblyInfo.
Skip _FieldDefinition with _Cause.
If Field belongs to a Property, skip Property too!
Skip the _PropertyDefinitions get and set methods with _Cause.
Skip the _EventDefinition add and remove methods with _Cause.
Analyse the Fields to check if they can be obfuscated.
Check Compatibility Components.
Find names for the member to obfuscate.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Skip the _EventDefinition with _Cause.
If Event belongs to a Field, skip Field too!
Skip the _EventDefinition add and remove methods with _Cause.
Analyse the Properties to check if they can be obfuscated.
Check Compatibility Components.
Analyse the Method groups.
And check if some other Method in group getting skipped.
Find names for the member to obfuscate.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Skip the _PropertyDefinition with _Cause.
If Property belongs to a Field, skip Field too!
Skip the _PropertyDefinitions get and set methods with _Cause.
Analyse the Properties to check if they can be obfuscated.
Check Compatibility Components.
Analyse the Method groups.
And check if some other Method in group getting skipped.
Find names for the member to obfuscate.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Obfuscation of MonoBehaviours by renaming.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Returns the gui container.
True: The _AssemblyLoadInfo should be processed by this component.
Returns just true.
Returns just true.
Returns just true.
Map the unobfuscated MonoBehaviours to the obfuscated MonoBehaviours.
Adds the tampering recognition type and method to _AssemblyInfo.
Returns the Method also.
Adds the _TamperingRecognitionMethod to all static constructors in _AssemblyInfo.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Clone methods in types and randomize operands.
True: Skip _TypeDefinition for random code generation.
Clone methods in _TypeDefinition and randomize instructions.
Returns a list of all cloneable methods in _TypeDefinition.
The type contains a method with the name _MethodName.
Clones a method with random values.
If cannot be cloned or a choosen name already got used, returns null.
Randomize Int/Float/Double/String operands.
Create a random string.
Shuffle all methods in _TypeDefinition.
Represents a block of instructions in the control flow process.
The instructions in the block.
The block ordered number.
Randomizer.
Represents a random index from int - max to max.
Returns a random index from int - max to max.
Helper class to parse a method instructions into blocks.
Parse _MethodDefinition instructions into a ordered block list.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
True: The _AssemblyLoadInfo should be processed by this component.
True: Skip _TypeDefinition for random code generation.
Returns a list of all control flow protect able methods in _TypeDefinition.
Clone methods in _TypeDefinition and randomize instructions.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Return whether the component is activated or deactivated for the pipeline processing.
A list of all references animation methods.
Analyse the Methods to check if they can be obfuscated.
This component skips methods which are refered by Unity Events.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Return whether the component is activated or deactivated for the pipeline processing.
A list of all references unity event methods.
Reads the analysed Unity Events assigned in the Pre Build Step.
Search methods to skip.
Analyse the Methods to check if they can be obfuscated.
Does nothing.
Does nothing.
Does nothing.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
True: StringReflectionComponent is active.
HashSet of all strings inside the project.
Analyse the Methods strings.
Analyse the Types and Methods to check if they can be obfuscated.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The settings key for this component in the obfuscator settings.
Category this Component belongs too.
Component helper for the post assembly build step.
Returns all post assembly build components.
Returns a list of all user plugins.
Used to process assemblies.
Analyse an _AssemblyInfo the first time.
Analyse an _AssemblyInfo the second time, after all other components have already analysed it the first time.
Apply obfuscation to the _AssemblyInfo here.
Callen after the assemblies got obfuscated.
Returns assemblies and assembly dependencies to process.
Return a list of all assemblies should be used for obfuscation.
Either ones that should be obfuscated or only loaded as helper.
Return a list of all directories containing assemblies referenced in the to obfuscate assemblies.
The post assembly build pipeline.
Project this Pipeline belongs too.
DataContainer of the Project.
Settings of the Project.
Processes the whole obfuscation pipeline.
Contains all the data the obfuscation project needs.
All pipeline obfuscator components.
All obfuscator compatibility components.
Information about to load assemblies.
Directory path to all assembly dependencies.
Contains the to obfuscate assemblies.
Contains the helper assemblies.
Used to resolve assemblies and their types.
MemberType, Cache
Contains the cache of all members.
Manages what types/members should or should not get obfuscated. And their renaming mapping.
Output object for the post assembly build step.
Stores dynamic data in a string key and object value format.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
Returns if the pipeline processing failed!
Represents a collection of IMemberKeyMapping for each EMemberType, to map IMemberKeys to obfuscated names.
Get the IMemberKeyMapping by _MemberType.
Add a _MemberKey with obfuscated _Name to the mapping of _MemberType.
Get the obfuscated name of _MemberKey in the mapping of _MemberType.
Returns all IMemberKey sharing the same obfsucated _Name in the mapping of _MemberType.
Returns all IMemberKey sharing the same obfsucated _Name in all member types.
Reprensents the Obfuscator after version 4.0 mapping.
Always Version 4.0.
Load this version 4.0 mapping from another older version.
Dictionary of a mapping, which maps keys to obfuscated names.
Add a _MemberType to _MemberKeyMapping entry.
Returns the IMemberKeyMapping belonging to _MemberType.
Add _MemberKey with obfuscated _Name to mapping of _MemberType.
Add a whole _MemberKeyMapping to IMemberKeyMapping for _MemberType.
Returns the obfuscated name for _MemberKey in mapping of _MemberType.
Returns all IMemberKey sharing the same _Name in _MemberType mapping.
Returns all IMemberKey sharing the same _Name in all MemberType to IMemberKeyMapping Mappings.
Generator used to generate a obfuscated name.
All unique charaters in this charset.
The length of charset.
Assign a charset used for obfuscation.
True: No obfuscated member will share the same name.
False: Obfuscated member of different member types may share the same name.
Global index for obfuscation.
Dictionary between member and its index.
Returns the next index.
Generate a next name for a member using a predefined pattern.
Generate a next name under a specific index using a predefined pattern.
Use with caution! Watch out for same names in the same type.
Generate a new name under a specific index using a predefined pattern.
After each character a _Seperator can/will be added.
Use with caution! Watch out for same names in the same type.
Contains the mappings, and the shall rename/not rename stuff.
The rename manager belongs to a PostAssemblyBuildStep.
The used project.
Load the RenameManager.
Unload the Renamemanager.
Member Type, Dictionary of Original Keys and a List of not obfuscation cause.
Do not obfuscate _MemberDefinition of _MemberType with _Cause of not obfuscation.
Returns if the _MemberDefinition of _MemberType will be not obfuscated.
True: Getting NOT obfuscated.
False: Getting obfuscated.
Returns the list of not obfuscation cause.
If there is no cause null will be returned.
Returns the count of the to not obfuscate member per type.
The original mapping (from original key to name) of the assembly members.
The current obfuscation mapping.
The loaded obfuscation mapping.
Setup the original mapping.
Get a unique name for _MemberDefinition of _MemberType.
Will check the loaded, current or original mapping with _Tries for a unique name.
Add _ObfuscatedName for _MemberDefinition of _MemberType to the current mapping.
Returns the obfuscated name of _MemberDefinition of _MemberType.
The method first checks in the current mapping, if there is a obfuscated name, and returns it.
If there is none, it checks the loaded mapping and returns it.
If non found, returns null.
Load a mapping used as reference.
Save the current mapping.
Returns true if the _Name is free and not used either in the loaded, current or original mapping.
Used to generate obfuscated names.
Reprensents the Obfuscator pre version 4.0 mapping.
Always Version 3.0.
Not needed.
Dictionary of a mapping, which maps keys to obfuscated names.
Add a _MemberType to _MemberKeyMapping entry.
Returns the IMemberKeyMapping belonging to _MemberType.
Not needed.
Not needed.
Not needed.
Not needed.
Loads the mapping from a file at _FilePath.
Name of the step.
Settings used for the editor.
Settings used for the current build.
Shared data container for the project.
Load the DataContainer.
Unload the DataContainer.
Shared settings for the project.
Load the Obfuscator Settings.
Unload the Obfuscator Settings.
Loads the components if they are not already loaded.
Get the assembly load infos from the components.
Get all component dependencies.
Run the prepare process on _AssemblyLoadInfoList for all active IAssemblyProcessingComponent.
Returns a List of all CompatibilityComponents inherit or are TObfuscationCompatibilityComponent.
Run the post process on _AssemblyLoadInfoList for all active IAssemblyProcessingComponent.
Unload all components.
Pipeline for the project.
Load the Obfuscator Pipeline.
Unload the Obfuscator Pipeline.
Load all AssemblyLoadInfos.
Load all the dependency directories.
Prepare and loads the assemblies contained in AssemblyLoadInfoList. Important: AssemblyCache has to be loaded!
Saves the assemblies from AssemblyList.
Disposes all to obfuscate and helper assemblies.
True: _AssemblyName is in the to obfuscate assemblies.
Get the AssemblyInfo, from the to obfuscate assemblies, by _AssemblyName.
Load the AssemblyResolver. Important: AssemblyDependencyDirectoryPathList and AssemblyLoadInfoList must be set!
Disposes the AssemblyResolver.
Load the type/member caches.
Returns the IMemberCache for TCache.
Unload the type and member caches.
Load up and setup the RenameManager.
Unload the RenameManager.
Get the AssemblyInfo, from the to obfuscate assemblies, for _TypeDefinition.
If _TypeDefinition is not part of the to obfuscate assemblies, null will be returned.
True: _TypeReferences Scope/Assembly is in the to obfuscate assemblies.
Tries to resolve the a type in all assemblies and their dependencies.
If this cannot be resolved, returns null!
Add _TypeDefinition to the main module of _AssemblyInfo.
Add _TypeDefinition to the TypeCache.
Add _TypeDefinition to the _ModuleDefinition of _AssemblyInfo.
Add _TypeDefinition to the TypeCache.
Custom Load and Initialize of the Project.
Saves the assemblies if processing did not fail.
Custom Unload and Deinitialize of the Project.
Contains all the data for the post build needed.
All pipeline pre build components components.
Component of the post assets build.
Pipeline this Component belongs too.
Returns the Step this Pipeline belongs to.
Callen after the project getting build.
Component helper for the post build step.
Returns all post build components.
Returns a list of all user plugins.
Interface over the post assets build component hooks.
Callen after the project assets getting build.
Interface over a custom post assets build plugin component.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Return whether the component is activated or deactivated for the pipeline processing.
A mapping of the original monobehaviour type to the obfuscated monobehaviour type.
Read an AssetsFile at _Path and override the MonoScripts with the obfuscated one.
Project this Pipeline belongs too.
DataContainer of the Project.
Settings of the Project.
Processes the whole post build pipeline.
Output object for the post assets build step.
Name of the step.
Settings used for the editor.
Settings used for the current build.
Shared data container for the project.
Load the DataContainer.
Unload the DataContainer.
Shared settings for the project.
Load the Obfuscator Settings.
Unload the Obfuscator Settings.
Loads the components if they are not already loaded.
Unload all components.
Pipeline for the project.
Load the PreBuild Pipeline.
Unload the PreBuild Pipeline.
Custom Load and Initialize of the Project.
Custom Unload and Deinitialize of the Project.
Contains all the data for the post build needed.
All pipeline pre build components components.
Component of the pre build.
Pipeline this Component belongs too.
Returns the Step this Pipeline belongs to.
Callen after the project getting build.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Return whether the component is activated or deactivated for the pipeline processing.
A mapping of the original monobehaviour type to the obfuscated monobehaviour type.
Read an AssetsFile at _Path and override the MonoScripts with the obfuscated one.
Returns the globalgamemanagers.assets file path for _UnityBuildReport.
Returns the globalgamemanagers.assets file path if is mac build.
Returns the globalgamemanagers.assets file path if is windows or linux build.
Returns the globalgamemanagers.assets file path if is windows or linux visual studio build.
Component helper for the post build step.
Returns all post build components.
Returns a list of all user plugins.
Interface over the pre build component hooks.
Callen after the project getting build.
Interface over a custom pre build plugin component.
Project this Pipeline belongs too.
DataContainer of the Project.
Settings of the Project.
Processes the whole post build pipeline.
Output object for the pre build step.
Stores dynamic data in a string key and object value format.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
Returns if the pipeline processing failed!
Name of the step.
Settings used for the editor.
Settings used for the current build.
Shared data container for the project.
Load the DataContainer.
Unload the DataContainer.
Shared settings for the project.
Load the Obfuscator Settings.
Unload the Obfuscator Settings.
Loads the components if they are not already loaded.
Unload all components.
Pipeline for the project.
Load the PreBuild Pipeline.
Unload the PreBuild Pipeline.
Custom Load and Initialize of the Project.
Custom Unload and Deinitialize of the Project.
Contains all the data for the pre build needed.
All pipeline pre build components components.
Cache of all Unity Assets needed by IAssetProcessingComponent.
Component of the pre build.
Pipeline this Component belongs too.
Returns the Step this Pipeline belongs to.
Callen before the project getting build.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Return whether the component is activated or deactivated for the pipeline processing.
The step output data key for the ReferencedAnimationMethodHashSet.
A list of all references animation methods.
Extensions of supported model files.
Extensions of supported animation files.
Returns a duplicate free list of methods in _AnimationClip.
Return the extensions of assets, should be processed by this component.
Analyse Assets pre build.
Process Assets pre build but after 'OnAnalyse_Assets(...)'.
This component analyses Unity Components for Unity Events.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
Return whether the component is activated or deactivated for the pipeline processing.
Does nothing.
The step output data key for the ReferencedEventMethodHashSet.
A list of all references event methods.
Contains a list of already searched objects as hash, so they will not be iterated twice.
Searchs the passed _Component for Unity Events, to later skip their refered method names.
Search the passed _Object for Unity Events.
Adds the found methods in the passed _UnityEventBase to the ReferencedEventMethodHashSet.
Does nothing.
Stores the ReferencedEventMethodHashSet in the _StepOutput.
Component helper for the pre build step.
Returns all pre build components.
Returns a list of all user plugins.
Analyse or manipulate a Unity Component pre build.
Analyse a Unity Component before the build starts.
Process a Unity Component before the build starts but directly after 'OnAnalyse_Component(...)'.
Name of the component.
Description, descriping what this component does.
Short description, descriping short what this component does.
The step output data key for the ReferencedMonoScriptTypeList.
A list of all referenced types of unity mono scripts in the scene and prefabs.
Interface over a custom pre build plugin component.
Interface over the pre build component hooks.
Callen before the project getting build.
Project this Pipeline belongs too.
DataContainer of the Project.
Settings of the Project.
Processes the whole pre build pipeline.
Get all scenes currently open in the editor.
Get all enabled scenes in Build Settings.
Load multiple scenes in the editor.
Returns a list of all components in _Scene.
Return a list of all components in the prefabs references through _UnityAssetCache.
Output object for the pre build step.
Stores dynamic data in a string key and object value format.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
Returns if the pipeline processing failed!
Input object for the pre build step.
Stores dynamic data in a string key and object value format.
Returns true if the data container has data for a key.
Add _Data for _Key.
If the _Key already exists, decide if it should be overriden.
Return the data at _Key. If the data does not exist, return _Default.
Name of the step.
Settings used for the editor.
Settings used for the current build.
Shared data container for the project.
Load the DataContainer.
Unload the DataContainer.
Shared settings for the project.
Load the Obfuscator Settings.
Unload the Obfuscator Settings.
Loads the components if they are not already loaded.
Unload all components.
Pipeline for the project.
Load the PreBuild Pipeline.
Unload the PreBuild Pipeline.
Get the extensions should be processed by the IAssetProcessingComponent.
Custom Load and Initialize of the Project.
Custom Unload and Deinitialize of the Project.
Is a component with a gui.
The settings key for this component in the obfuscator settings.
The category in the obfuscator settings window this component should be displayed.
Shown gui in the obfuscator settings window.
Platform the unity editor is running on.
Returns the simplified name for the assembly where a type can be found,
for example, a type whose module is "Assembly.dll", "Assembly" would be
returned.
Helper class for Unity SerializedProperties.
Type and Path cache.
Matches
Matches Type and PropertyPath to FieldInfo and FielType.
Returns all MonoScript references in _Object without duplicates.
Search through variables of an object with SerializedObject.
Returns found MonoScripts.
Search through variables of an object with SerializedObject.
Returns found MonoScripts.
Get the FieldInfo and _FieldType for _Property.
Returns the script type the _Property belongs too.
Returns the FieldInfo and _FieldType of _Host at _PropertyPath.
Obfuscator unity build settings.
Returns if is a standalone build target.
The platform built to.
Additional dependencies. Enter the full path of the directory of the dependency.
Assemblies used in the obfuscation process.
Either you can add all the assemblies you want to obfuscate here,
or the obfuscator adds them based on the obfuscation settings.
Active editor platform.
Obfuscator Settings Version.
All Component Settings.
Get or Create and Get the ComponentSettings with _Settings_Name.
Return _Setting as boolean from ComponentSettings with name _ComponentSettings_Name.
Return _Setting as string from ComponentSettings with name _ComponentSettings_Name.
Return _Setting as array from ComponentSettings with name _ComponentSettings_Name.
Returns the file path of the setting file.
Stores the settings to a file.
Loads the settings from a file.
If the files does not exists, returns an empty default setting.
The start point for the whole obfuscation.
Obfuscator singleton instance. Has to be new initialized each build.
Static constructor, creating a new Obfuscator.Singleton instance.
Creating a new Obfuscator.Singleton instance.
Loads the EditorPlatform based on the local platform.
Loads the BuildPlatform based on the build target.
The active report.
Pre build running process.
Running the post assembly build process.
Running the post build process.
Running the post assets build process.
Internal path helper for the obfuscator.
Returns the Unity ObfuscationProject Path C:\XYZ\MyUnityProject\
Returns the full path to the OPS directory.
Returns the full path to the OPS Obfuscator directory.
Returns the full path to the OPS Obfuscator Editor directory.
Returns the full path to the OPS Obfuscator Editor Temp directory.
Returns the full path to the OPS Obfuscator Log directory.
Returns the full path to the OPS Obfuscator Settings directory.