コード例 #1
0
        // Checks if deleted folder contains DOTween Pro and in case removes scripting define symbols
        static AssetDeleteResult OnWillDeleteAsset(string asset, RemoveAssetOptions options)
        {
            // Check if asset is a directory
            string dir = EditorUtils.ADBPathToFullPath(asset);

            if (!Directory.Exists(dir))
            {
                return(AssetDeleteResult.DidNotDelete);
            }
            // Check if directory contains DOTweenPro.dll
            string[] files           = Directory.GetFiles(dir, "DOTween.dll", SearchOption.AllDirectories);
            int      len             = files.Length;
            bool     containsDOTween = false;

            for (int i = 0; i < len; ++i)
            {
                if (!files[i].EndsWith("DOTween.dll"))
                {
                    continue;
                }
                containsDOTween = true;
                break;
            }
            if (!containsDOTween)
            {
                return(AssetDeleteResult.DidNotDelete);
            }
            // DOTween found: remove scripting define symbols
            DOTweenSetupMenuItem.ProEditor_RemoveGlobalDefine("DOTWEEN_TK2D");
            DOTweenSetupMenuItem.ProEditor_RemoveGlobalDefine("DOTWEEN_TMP");
            EditorUtility.DisplayDialog("DOTween Deleted", "DOTween was deleted and any of its scripting define symbols removed.\nThis might show an error depending on your previous setup. If this happens, please close and reopen Unity or reimport DOTween.", "Ok");
            return(AssetDeleteResult.DidNotDelete);
        }
コード例 #2
0
        public static void Setup(bool partiallySilent = false)
        {
            if (EditorUtils.DOTweenSetupRequired())
            {
                string message = "Based on your Unity version (" + Application.unityVersion + ") and eventual plugins, DOTween will now activate additional tween elements, if available.";
                if (!EditorUtility.DisplayDialog("DOTween Setup", message, "Ok", "Cancel"))
                {
                    return;
                }
            }
            else
            {
                if (partiallySilent)
                {
                    return;
                }
                string message2 = "This project has already been setup for your version of DOTween.\nReimport DOTween if you added new compatible external assets or upgraded your Unity version.";
                if (!EditorUtility.DisplayDialog("DOTween Setup", message2, "Force Setup", "Cancel"))
                {
                    return;
                }
            }
            string dotweenDir    = EditorUtils.dotweenDir;
            string dotweenProDir = EditorUtils.dotweenProDir;

            EditorUtility.DisplayProgressBar("DOTween Setup", "Please wait...", 0.25f);
            int num = 0;

            string[] array = Application.unityVersion.Split("."[0]);
            int      num2  = Convert.ToInt32(array[0]);
            int      num3  = Convert.ToInt32(array[1]);

            if (num2 < 4)
            {
                DOTweenSetupMenuItem.SetupComplete(dotweenDir, dotweenProDir, num);
            }
            else
            {
                if (num2 == 4)
                {
                    if (num3 < 3)
                    {
                        DOTweenSetupMenuItem.SetupComplete(dotweenDir, dotweenProDir, num);
                        return;
                    }
                    num += DOTweenSetupMenuItem.ImportAddons("43", dotweenDir);
                    if (num3 >= 6)
                    {
                        num += DOTweenSetupMenuItem.ImportAddons("46", dotweenDir);
                    }
                }
                else
                {
                    num += DOTweenSetupMenuItem.ImportAddons("43", dotweenDir);
                    num += DOTweenSetupMenuItem.ImportAddons("46", dotweenDir);
                    num += DOTweenSetupMenuItem.ImportAddons("50", dotweenDir);
                }
                if (EditorUtils.hasPro)
                {
                    if (DOTweenSetupMenuItem.Has2DToolkit())
                    {
                        num += DOTweenSetupMenuItem.ImportAddons("Tk2d", dotweenProDir);
                        DOTweenSetupMenuItem.ProEditor_AddGlobalDefine("DOTWEEN_TK2D");
                    }
                    else
                    {
                        DOTweenSetupMenuItem.ProEditor_RemoveGlobalDefine("DOTWEEN_TK2D");
                    }
                    if (DOTweenSetupMenuItem.HasTextMeshPro())
                    {
                        num += DOTweenSetupMenuItem.ImportAddons("TextMeshPro", dotweenProDir);
                        DOTweenSetupMenuItem.ProEditor_AddGlobalDefine("DOTWEEN_TMP");
                    }
                    else
                    {
                        DOTweenSetupMenuItem.ProEditor_RemoveGlobalDefine("DOTWEEN_TMP");
                    }
                }
                DOTweenSetupMenuItem.SetupComplete(dotweenDir, dotweenProDir, num);
            }
        }