Exemple #1
0
        private static void RestoreUnityObjects()
        {
            if (BuildPipeline.isBuildingPlayer == false)
            {
                try
                {
                    unityObjectsAssetsNeedReverting = false;

                    if (obfuscator == null)
                    {
                        //Load Settings
                        var var_Settings = new Setting.Settings();
                        var_Settings.LoadSettings();

#if UNITY_2018_2_OR_NEWER
                        var_Settings.IsLaterUnity_2018_2 = true;
#endif

                        obfuscator = new Obfuscator(var_Settings);
                    }

                    obfuscator.RevertAssets();
                    EditorApplication.update -= RestoreUnityObjects;
                }
                catch (Exception e)
                {
                    unityObjectsAssetsNeedReverting = true;
                    UnityEngine.Debug.LogWarning("[OPS.OBF] " + e.ToString());
                }
            }
        }
Exemple #2
0
        public static void OnPostProcessScene()
        {
            if (!hasObfuscated)
            {
                if (BuildPipeline.isBuildingPlayer && !EditorApplication.isPlayingOrWillChangePlaymode)
                {
                    //Load Settings
                    var var_Settings = new Setting.Settings();
                    var_Settings.LoadSettings();

#if UNITY_2018_2_OR_NEWER
                    var_Settings.IsLaterUnity_2018_2 = true;
#endif

                    //Init
                    obfuscator = new Obfuscator(var_Settings);

                    //Obfuscate Assemblies
                    bool var_NoError = obfuscator.Obfuscate(UnityEditor.EditorUserBuildSettings.activeBuildTarget, new System.Collections.Generic.List <string>());
                    if (var_NoError)
                    {
                        //
                        EditorApplication.update += RestoreAssemblies;
                        assemblysNeedReverting    = true;

                        //Save Assemblies
                        obfuscator.Save();
                    }
                    hasObfuscated = true;
                }
            }
        }
Exemple #3
0
        public static void OnPostProcessScene()
        {
            if (!hasObfuscated)
            {
                if (BuildPipeline.isBuildingPlayer && !EditorApplication.isPlayingOrWillChangePlaymode)
                {
                    try
                    {
                        UnityEditor.EditorApplication.LockReloadAssemblies();

                        //Load Settings
                        var var_Settings = new Setting.Settings();
                        var_Settings.LoadSettings();

#if UNITY_2018_2_OR_NEWER
                        var_Settings.IsLaterUnity_2018_2 = true;
#endif

                        //Init
                        obfuscator = new Obfuscator(var_Settings);

                        //Obfuscate Assemblies
                        bool var_NoError = obfuscator.Obfuscate(UnityEditor.EditorUserBuildSettings.activeBuildTarget, new System.Collections.Generic.List <string>());
                        if (var_NoError)
                        {
                            //
                            EditorApplication.update += RestoreAssemblies;
                            assemblysNeedReverting    = true;

                            //Obfuscate Assets
                            obfuscator.ObfuscateAssets();

                            //
                            EditorApplication.update       += RestoreUnityObjects;
                            unityObjectsAssetsNeedReverting = true;

                            //Save Assemblies
                            obfuscator.Save();
                        }
                        hasObfuscated = true;
                    }
                    catch (Exception e)
                    {
                        UnityEngine.Debug.LogError("[OPS] Error: " + e.ToString());
                    }
                    finally
                    {
                        UnityEditor.EditorApplication.UnlockReloadAssemblies();
                    }
                }
            }
        }