Exemplo n.º 1
0
        // ===================================================================================
        // METHODS ---------------------------------------------------------------------------

        void Connect()
        {
            if (_src == null)
            {
                string srcDir = EditorUtils.assetsPath + EditorUtils.pathSlash + "Resources";
                if (!Directory.Exists(srcDir))
                {
                    AssetDatabase.CreateFolder("Assets", "Resources");
                }
                string adbSrcFilePath = EditorUtils.FullPathToADBPath(srcDir + EditorUtils.pathSlash + DOTweenSettings.AssetName + ".asset");

                // Legacy: check if there are settings saved in old mode (inside DOTween/Resources folder) and eventually move them
                string legacySrcDir      = EditorUtils.dotweenDir + "Resources";
                string legacySrcFilePath = legacySrcDir + EditorUtils.pathSlash + DOTweenSettings.AssetName + ".asset";
                if (File.Exists(legacySrcFilePath))
                {
                    // Move legacy src file to correct folder
                    AssetDatabase.MoveAsset(EditorUtils.FullPathToADBPath(legacySrcFilePath), adbSrcFilePath);
                    // Delete legacy Resources folder
                    AssetDatabase.DeleteAsset(EditorUtils.FullPathToADBPath(legacySrcDir));
                }

                _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(adbSrcFilePath, true);
            }
        }
Exemplo n.º 2
0
        private void Connect(bool forceReconnect = false)
        {
            if ((UnityEngine.Object) this._src != (UnityEngine.Object)null && !forceReconnect)
            {
                return;
            }
            LocationData locationData  = new LocationData(EditorUtils.assetsPath + EditorUtils.pathSlash + "Resources");
            LocationData locationData2 = new LocationData(EditorUtils.dotweenDir + "Resources");
            bool         flag          = EditorUtils.demigiantDir != null;
            LocationData locationData3 = flag ? new LocationData(EditorUtils.demigiantDir + "Resources") : default(LocationData);

            if ((UnityEngine.Object) this._src == (UnityEngine.Object)null)
            {
                this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(locationData.adbFilePath, false);
                if ((UnityEngine.Object) this._src == (UnityEngine.Object)null)
                {
                    this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(locationData2.adbFilePath, false);
                }
                if ((UnityEngine.Object) this._src == (UnityEngine.Object)null & flag)
                {
                    this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(locationData3.adbFilePath, false);
                }
            }
            if ((UnityEngine.Object) this._src == (UnityEngine.Object)null)
            {
                if (!Directory.Exists(locationData.dir))
                {
                    AssetDatabase.CreateFolder(locationData.adbParentDir, "Resources");
                }
                this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(locationData.adbFilePath, true);
            }
            switch (this._src.storeSettingsLocation)
            {
            case DOTweenSettings.SettingsLocation.AssetsDirectory:
                this.MoveSrc(new LocationData[2]
                {
                    locationData2,
                    locationData3
                }, locationData);
                break;

            case DOTweenSettings.SettingsLocation.DOTweenDirectory:
                this.MoveSrc(new LocationData[2]
                {
                    locationData,
                    locationData3
                }, locationData2);
                break;

            case DOTweenSettings.SettingsLocation.DemigiantDirectory:
                this.MoveSrc(new LocationData[2]
                {
                    locationData,
                    locationData2
                }, locationData3);
                break;
            }
        }
        private void Connect(bool forceReconnect = false)
        {
            if ((this._src == null) || forceReconnect)
            {
                LocationData to    = new LocationData(EditorUtils.assetsPath + EditorUtils.pathSlash + "Resources");
                LocationData data2 = new LocationData(EditorUtils.dotweenDir + "Resources");
                bool         flag  = EditorUtils.demigiantDir != null;
                LocationData data3 = flag ? new LocationData(EditorUtils.demigiantDir + "Resources") : new LocationData();
                if (this._src == null)
                {
                    this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(to.adbFilePath, false);
                    if (this._src == null)
                    {
                        this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(data2.adbFilePath, false);
                    }
                    if ((this._src == null) & flag)
                    {
                        this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(data3.adbFilePath, false);
                    }
                }
                if (this._src == null)
                {
                    if (!Directory.Exists(to.dir))
                    {
                        AssetDatabase.CreateFolder(to.adbParentDir, "Resources");
                    }
                    this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(to.adbFilePath, true);
                }
                switch (this._src.storeSettingsLocation)
                {
                case DOTweenSettings.SettingsLocation.AssetsDirectory:
                {
                    LocationData[] from = new LocationData[] { data2, data3 };
                    this.MoveSrc(from, to);
                    return;
                }

                case DOTweenSettings.SettingsLocation.DOTweenDirectory:
                {
                    LocationData[] dataArray2 = new LocationData[] { to, data3 };
                    this.MoveSrc(dataArray2, data2);
                    return;
                }

                case DOTweenSettings.SettingsLocation.DemigiantDirectory:
                {
                    LocationData[] dataArray3 = new LocationData[] { to, data2 };
                    this.MoveSrc(dataArray3, data3);
                    return;
                }
                }
            }
        }
Exemplo n.º 4
0
        // ===================================================================================
        // METHODS ---------------------------------------------------------------------------

        void Connect(bool forceReconnect = false)
        {
            if (_src != null && !forceReconnect)
            {
                return;
            }

            LocationData assetsLD        = new LocationData(EditorUtils.assetsPath + EditorUtils.pathSlash + "Resources");
            LocationData dotweenLD       = new LocationData(EditorUtils.dotweenDir + "Resources");
            bool         hasDemigiantDir = EditorUtils.demigiantDir != null;
            LocationData demigiantLD     = hasDemigiantDir ? new LocationData(EditorUtils.demigiantDir + "Resources") : new LocationData();

            if (_src == null)
            {
                // Load eventual existing settings
                _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(assetsLD.adbFilePath, false);
                if (_src == null)
                {
                    _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(dotweenLD.adbFilePath, false);
                }
                if (_src == null && hasDemigiantDir)
                {
                    _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(demigiantLD.adbFilePath, false);
                }
            }
            if (_src == null)
            {
                // Settings don't exist. Create it in external folder
                if (!Directory.Exists(assetsLD.dir))
                {
                    AssetDatabase.CreateFolder(assetsLD.adbParentDir, "Resources");
                }
                _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(assetsLD.adbFilePath, true);
            }

            // Move eventual settings from previous location and setup everything correctly
            DOTweenSettings.SettingsLocation settingsLoc = _src.storeSettingsLocation;
            switch (settingsLoc)
            {
            case DOTweenSettings.SettingsLocation.AssetsDirectory:
                MoveSrc(new[] { dotweenLD, demigiantLD }, assetsLD);
                break;

            case DOTweenSettings.SettingsLocation.DOTweenDirectory:
                MoveSrc(new[] { assetsLD, demigiantLD }, dotweenLD);
                break;

            case DOTweenSettings.SettingsLocation.DemigiantDirectory:
                MoveSrc(new[] { assetsLD, dotweenLD }, demigiantLD);
                break;
            }
        }
Exemplo n.º 5
0
 private void MoveSrc(LocationData[] from, LocationData to)
 {
     if (!Directory.Exists(to.dir))
     {
         AssetDatabase.CreateFolder(to.adbParentDir, "Resources");
     }
     foreach (LocationData locationData in from)
     {
         if (File.Exists(locationData.filePath))
         {
             AssetDatabase.MoveAsset(locationData.adbFilePath, to.adbFilePath);
             AssetDatabase.DeleteAsset(locationData.adbFilePath);
             if (Directory.GetDirectories(locationData.dir).Length == 0 && Directory.GetFiles(locationData.dir).Length == 0)
             {
                 AssetDatabase.DeleteAsset(EditorUtils.FullPathToADBPath(locationData.dir));
             }
         }
     }
     this._src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(to.adbFilePath, true);
 }
Exemplo n.º 6
0
 void MoveSrc(LocationData[] from, LocationData to)
 {
     if (!Directory.Exists(to.dir))
     {
         AssetDatabase.CreateFolder(to.adbParentDir, "Resources");
     }
     foreach (LocationData ld in from)
     {
         if (File.Exists(ld.filePath))
         {
             // Move external src file to correct folder
             AssetDatabase.MoveAsset(ld.adbFilePath, to.adbFilePath);
             // Delete external settings
             AssetDatabase.DeleteAsset(ld.adbFilePath);
             // Check if external Resources folder is empty and in case delete it
             if (Directory.GetDirectories(ld.dir).Length == 0 && Directory.GetFiles(ld.dir).Length == 0)
             {
                 AssetDatabase.DeleteAsset(EditorUtils.FullPathToADBPath(ld.dir));
             }
         }
     }
     _src = EditorUtils.ConnectToSourceAsset <DOTweenSettings>(to.adbFilePath, true);
 }