diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll b/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll index 078c790..5ba4470 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll and b/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll.mdb b/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll.mdb index 81a5f66..1f295b4 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll.mdb and b/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll.mdb differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll index d1bc8b0..ba78afe 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll and b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.mdb b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.mdb index c7682d8..54194a7 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.mdb and b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenEditor.dll.mdb differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta deleted file mode 100644 index 2401a98..0000000 --- a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1b9c6b17aec073847a9d34c432a148ec -timeCreated: 1551037669 -licenseType: Pro -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll index 014c421..b58b5ee 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll and b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb index 7c751db..66f3a67 100644 Binary files a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb and b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb differ diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb.meta b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb.meta deleted file mode 100644 index c5b8093..0000000 --- a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.mdb.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 56bca508bd08a4f44a507f17e7577afb -timeCreated: 1551037654 -licenseType: Pro -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.meta b/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.meta deleted file mode 100644 index 74229c5..0000000 --- a/UnityTests.Unity5/Assets/Demigiant/DOTween/Editor/DOTweenUpgradeManager.dll.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: c7602d66796c87a4fac3013913374c07 -timeCreated: 1551037663 -licenseType: Pro -PluginImporter: - serializedVersion: 2 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - data: - first: - Any: - second: - enabled: 0 - settings: {} - data: - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - data: - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/UnityTests.Unity5/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta b/UnityTests.Unity5/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta index 5873a50..d88caa6 100644 --- a/UnityTests.Unity5/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta +++ b/UnityTests.Unity5/Assets/Demigiant/DemiLib/Core/Editor/Imgs/whiteSquare.png.meta @@ -1,6 +1,6 @@ fileFormatVersion: 2 guid: d3e15b806a8368742ba6f10e794d7b76 -timeCreated: 1551810938 +timeCreated: 1552647154 licenseType: Pro TextureImporter: fileIDToRecycleName: {} diff --git a/UnityTests.Unity5/Assets/_Tests/TempTests.cs b/UnityTests.Unity5/Assets/_Tests/TempTests.cs index 0a0d0b3..5cd44b2 100644 --- a/UnityTests.Unity5/Assets/_Tests/TempTests.cs +++ b/UnityTests.Unity5/Assets/_Tests/TempTests.cs @@ -11,6 +11,16 @@ using UnityEngine.UI; public class TempTests : BrainBase { + public enum TestEnum { + A, + B, + C, + D, + E, + z = 100 + } + + public TestEnum testEnum; public Transform target; public Transform rotTarget; public Ease easeType = Ease.Linear; diff --git a/UnityTests.Unity5/Assets/_Tests/TempTests.unity b/UnityTests.Unity5/Assets/_Tests/TempTests.unity index 0e29633..8c477c3 100644 Binary files a/UnityTests.Unity5/Assets/_Tests/TempTests.unity and b/UnityTests.Unity5/Assets/_Tests/TempTests.unity differ diff --git a/_DOTween.Assembly/DOTween/DOTween.cs b/_DOTween.Assembly/DOTween/DOTween.cs index a4cbcf2..7222c15 100644 --- a/_DOTween.Assembly/DOTween/DOTween.cs +++ b/_DOTween.Assembly/DOTween/DOTween.cs @@ -32,7 +32,7 @@ namespace DG.Tweening public class DOTween { /// DOTween's version - public static readonly string Version = "1.2.235"; // Last version before modules: 1.1.755 + public static readonly string Version = "1.2.240"; // Last version before modules: 1.1.755 /////////////////////////////////////////////// // Options //////////////////////////////////// diff --git a/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs b/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs index 09bb960..0c81b91 100644 --- a/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs +++ b/_DOTween.Assembly/DOTweenEditor/ASMDEFManager.cs @@ -17,7 +17,8 @@ namespace DG.DOTweenEditor public enum ASMDEFType { Modules, - DOTweenPro + DOTweenPro, + DOTweenProEditor } enum ChangeType @@ -29,11 +30,15 @@ namespace DG.DOTweenEditor public static bool hasModulesASMDEF { get; private set; } public static bool hasProASMDEF { get; private set; } + public static bool hasProEditorASMDEF { get; private set; } + const string _ModulesId = "DOTween.Modules"; const string _ProId = "DOTweenPro.Scripts"; + const string _ProEditorId = "DOTweenPro.EditorScripts"; const string _ModulesASMDEFFile = _ModulesId + ".asmdef"; const string _ProASMDEFFile = _ProId + ".asmdef"; + const string _ProEditorASMDEFFile = _ProEditorId + ".asmdef"; const string _RefTextMeshPro = "Unity.TextMeshPro"; @@ -48,6 +53,7 @@ namespace DG.DOTweenEditor { hasModulesASMDEF = File.Exists(EditorUtils.dotweenModulesDir + _ModulesASMDEFFile); hasProASMDEF = File.Exists(EditorUtils.dotweenProDir + _ProASMDEFFile); + hasProEditorASMDEF = File.Exists(EditorUtils.dotweenProEditorDir + _ProEditorASMDEFFile); } public static void RefreshExistingASMDEFFiles() @@ -56,19 +62,44 @@ namespace DG.DOTweenEditor if (!hasModulesASMDEF) { if (hasProASMDEF) RemoveASMDEF(ASMDEFType.DOTweenPro); + if (hasProEditorASMDEF) RemoveASMDEF(ASMDEFType.DOTweenProEditor); return; } - if (EditorUtils.hasPro && !hasProASMDEF) { - CreateASMDEF(ASMDEFType.DOTweenPro); - return; + if (EditorUtils.hasPro) { + if (!hasProASMDEF) CreateASMDEF(ASMDEFType.DOTweenPro); + if (!hasProEditorASMDEF) CreateASMDEF(ASMDEFType.DOTweenProEditor); } - // Pro ASMDEF present: check that it contains correct elements + // Pro ASMDEF present: check that they contain correct elements DOTweenSettings src = DOTweenUtilityWindow.GetDOTweenSettings(); if (src == null) return; + ValidateProASMDEFReferences(src, ASMDEFType.DOTweenPro, EditorUtils.dotweenProDir + _ProASMDEFFile); + ValidateProASMDEFReferences(src, ASMDEFType.DOTweenProEditor, EditorUtils.dotweenProEditorDir + _ProEditorASMDEFFile); + } + + public static void CreateAllASMDEF() + { + CreateASMDEF(ASMDEFType.Modules); + CreateASMDEF(ASMDEFType.DOTweenPro); + CreateASMDEF(ASMDEFType.DOTweenProEditor); + } + + public static void RemoveAllASMDEF() + { + RemoveASMDEF(ASMDEFType.Modules); + RemoveASMDEF(ASMDEFType.DOTweenPro); + RemoveASMDEF(ASMDEFType.DOTweenProEditor); + } + + #endregion + + #region Methods + + static void ValidateProASMDEFReferences(DOTweenSettings src, ASMDEFType asmdefType, string asmdefFilepath) + { bool hasTextMeshProRef = false; - using (StreamReader sr = new StreamReader(EditorUtils.dotweenProDir + _ProASMDEFFile)) { + using (StreamReader sr = new StreamReader(asmdefFilepath)) { string s; while ((s = sr.ReadLine()) != null) { if (!s.Contains(_RefTextMeshPro)) continue; @@ -77,32 +108,28 @@ namespace DG.DOTweenEditor } } bool recreate = hasTextMeshProRef != src.modules.textMeshProEnabled; - if (recreate) CreateASMDEF(ASMDEFType.DOTweenPro, true); + if (recreate) CreateASMDEF(asmdefType, true); } - public static void CreateAllASMDEF() - { - CreateASMDEF(ASMDEFType.Modules); - CreateASMDEF(ASMDEFType.DOTweenPro); - } - - public static void RemoveAllASMDEF() - { - RemoveASMDEF(ASMDEFType.Modules); - RemoveASMDEF(ASMDEFType.DOTweenPro); - } - - #endregion - - #region Methods - static void LogASMDEFChange(ASMDEFType asmdefType, ChangeType changeType) { + string asmdefTypeStr = ""; + switch (asmdefType) { + case ASMDEFType.Modules: + asmdefTypeStr = "DOTween/Modules/" + _ModulesASMDEFFile; + break; + case ASMDEFType.DOTweenPro: + asmdefTypeStr = "DOTweenPro/" + _ProASMDEFFile; + break; + case ASMDEFType.DOTweenProEditor: + asmdefTypeStr = "DOTweenPro/Editor/" + _ProEditorASMDEFFile; + break; + } Debug.Log(string.Format( "DOTween ASMDEF file {1} ► {2}", changeType == ChangeType.Deleted ? "ff0000" : changeType == ChangeType.Created ? "00ff00" : "ff6600", changeType == ChangeType.Deleted ? "removed" : changeType == ChangeType.Created ? "created" : "changed", - asmdefType == ASMDEFType.Modules ? "DOTween/Modules/" + _ModulesASMDEFFile : "DOTweenPro/" + _ProASMDEFFile + asmdefTypeStr )); } @@ -126,6 +153,12 @@ namespace DG.DOTweenEditor asmdefFile = _ProASMDEFFile; asmdefDir = EditorUtils.dotweenProDir; break; + case ASMDEFType.DOTweenProEditor: + alreadyPresent = hasProEditorASMDEF; + asmdefId = _ProEditorId; + asmdefFile = _ProEditorASMDEFFile; + asmdefDir = EditorUtils.dotweenProEditorDir; + break; } if (alreadyPresent && !forceOverwrite) { EditorUtility.DisplayDialog("Create ASMDEF", asmdefFile + " already exists", "Ok"); @@ -148,14 +181,25 @@ namespace DG.DOTweenEditor sw.WriteLine("\t\"name\": \"{0}\"", asmdefId); break; case ASMDEFType.DOTweenPro: + case ASMDEFType.DOTweenProEditor: sw.WriteLine("\t\"name\": \"{0}\",", asmdefId); sw.WriteLine("\t\"references\": ["); DOTweenSettings src = DOTweenUtilityWindow.GetDOTweenSettings(); if (src != null) { if (src.modules.textMeshProEnabled) sw.WriteLine("\t\t\"{0}\",", _RefTextMeshPro); } - sw.WriteLine("\t\t\"{0}\"", _ModulesId); - sw.WriteLine("\t]"); + if (type == ASMDEFType.DOTweenProEditor) { + sw.WriteLine("\t\t\"{0}\",", _ModulesId); + sw.WriteLine("\t\t\"{0}\"", _ProId); + sw.WriteLine("\t],"); + sw.WriteLine("\t\"includePlatforms\": ["); + sw.WriteLine("\t\t\"Editor\""); + sw.WriteLine("\t],"); + sw.WriteLine("\t\"autoReferenced\": false"); + } else { + sw.WriteLine("\t\t\"{0}\"", _ModulesId); + sw.WriteLine("\t]"); + } break; } sw.WriteLine("}"); @@ -182,6 +226,11 @@ namespace DG.DOTweenEditor asmdefFile = _ProASMDEFFile; asmdefDir = EditorUtils.dotweenProDir; break; + case ASMDEFType.DOTweenProEditor: + alreadyPresent = hasProEditorASMDEF; + asmdefFile = _ProEditorASMDEFFile; + asmdefDir = EditorUtils.dotweenProEditorDir; + break; } Refresh(); diff --git a/_DOTween.Assembly/DOTweenEditor/EditorUtils.cs b/_DOTween.Assembly/DOTweenEditor/EditorUtils.cs index de1e99c..3472522 100644 --- a/_DOTween.Assembly/DOTweenEditor/EditorUtils.cs +++ b/_DOTween.Assembly/DOTweenEditor/EditorUtils.cs @@ -26,6 +26,8 @@ namespace DG.DOTweenEditor // With final slash (system based) public static string dotweenProDir { get { if (string.IsNullOrEmpty(_dotweenProDir)) StoreDOTweenDirs(); return _dotweenProDir; } } // With final slash (system based) + public static string dotweenProEditorDir { get { if (string.IsNullOrEmpty(_dotweenProEditorDir)) StoreDOTweenDirs(); return _dotweenProEditorDir; } } + // With final slash (system based) public static string dotweenModulesDir { get { if (string.IsNullOrEmpty(_dotweenModulesDir)) StoreDOTweenDirs(); return _dotweenModulesDir; } } public static bool isOSXEditor { get; private set; } public static string pathSlash { get; private set; } // for full paths @@ -39,6 +41,7 @@ namespace DG.DOTweenEditor static string _demigiantDir; // with final slash static string _dotweenDir; // with final slash static string _dotweenProDir; // with final slash + static string _dotweenProEditorDir; // with final slash static string _dotweenModulesDir; // with final slash static EditorUtils() @@ -375,6 +378,7 @@ namespace DG.DOTweenEditor _dotweenDir = _dotweenDir.Replace(pathSlashToReplace, pathSlash); _dotweenProDir = _dotweenProDir.Replace(pathSlashToReplace, pathSlash); + _dotweenProEditorDir = _dotweenProDir + "Editor" + pathSlash; _dotweenModulesDir = _dotweenDir + "Modules" + pathSlash; if (_demigiantDir != null) _demigiantDir = _demigiantDir.Replace(pathSlashToReplace, pathSlash); } diff --git a/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindow.cs b/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindow.cs index 5a94b3c..96e6771 100644 --- a/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindow.cs +++ b/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindow.cs @@ -182,14 +182,16 @@ namespace DG.DOTweenEditor.UI if (GUILayout.Button(ASMDEFManager.hasModulesASMDEF ? "Remove ASMDEF..." : "Create ASMDEF...", EditorGUIUtils.btSetup, GUILayout.Width(200))) { if (ASMDEFManager.hasModulesASMDEF) { if (EditorUtility.DisplayDialog("Remove ASMDEF", - string.Format("This will remove the \"DOTween/Modules/DOTween.Modules.asmdef\" and \"DOTweenPro/DOTweenPro.Scripts.asmdef\"" + - " (if you have DOTween Pro) files."), + string.Format("This will remove the \"DOTween/Modules/DOTween.Modules.asmdef\" file" + + " (and if you have DOTween Pro also the \"DOTweenPro/DOTweenPro.Scripts.asmdef\"" + + " and \"DOTweenPro/Editor/DOTweenPro.EditorScripts.asmdef\" files)"), "Ok", "Cancel" )) ASMDEFManager.RemoveAllASMDEF(); } else { if (EditorUtility.DisplayDialog("Create ASMDEF", - string.Format("This will create the \"DOTween/Modules/DOTween.Modules.asmdef\" and \"DOTweenPro/DOTweenPro.Scripts.asmdef\"" + - " (if you have DOTween Pro) files."), + string.Format("This will create the \"DOTween/Modules/DOTween.Modules.asmdef\" file" + + " (and if you have DOTween Pro also the \"DOTweenPro/DOTweenPro.Scripts.asmdef\"" + + " and \"DOTweenPro/Editor/DOTweenPro.EditorScripts.asmdef\" files)"), "Ok", "Cancel" )) ASMDEFManager.CreateAllASMDEF(); } diff --git a/_DOTween.Assembly/bin/DOTween.dll b/_DOTween.Assembly/bin/DOTween.dll index 078c790..5ba4470 100644 Binary files a/_DOTween.Assembly/bin/DOTween.dll and b/_DOTween.Assembly/bin/DOTween.dll differ diff --git a/_DOTween.Assembly/bin/DOTween.dll.mdb b/_DOTween.Assembly/bin/DOTween.dll.mdb index 81a5f66..1f295b4 100644 Binary files a/_DOTween.Assembly/bin/DOTween.dll.mdb and b/_DOTween.Assembly/bin/DOTween.dll.mdb differ diff --git a/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll b/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll index d1bc8b0..ba78afe 100644 Binary files a/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll and b/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll differ diff --git a/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll.mdb b/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll.mdb index c7682d8..54194a7 100644 Binary files a/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll.mdb and b/_DOTween.Assembly/bin/Editor/DOTweenEditor.dll.mdb differ diff --git a/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll b/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll index 014c421..b58b5ee 100644 Binary files a/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll and b/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll differ diff --git a/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb b/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb index 7c751db..66f3a67 100644 Binary files a/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb and b/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb differ