diff --git a/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll b/UnityTests.Unity5/Assets/Demigiant/DOTween/DOTween.dll
index eb48bfb..d060a42 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 5a886be..830d3cc 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 a969b35..7ffaa52 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 b785f63..8beba3b 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/_DOTween.Assembly/DOTween.sln b/_DOTween.Assembly/DOTween.sln
index 5518894..b552ea4 100644
--- a/_DOTween.Assembly/DOTween.sln
+++ b/_DOTween.Assembly/DOTween.sln
@@ -30,8 +30,6 @@ Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
CompatibilityMode|Any CPU = CompatibilityMode|Any CPU
Debug|Any CPU = Debug|Any CPU
- Release_IncludeRigidbody|Any CPU = Release_IncludeRigidbody|Any CPU
- Release_NoRigidbody|Any CPU = Release_NoRigidbody|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
@@ -39,70 +37,42 @@ Global
{DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.CompatibilityMode|Any CPU.Build.0 = CompatibilityMode|Any CPU
{DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release_IncludeRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
- {DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release_NoRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
{DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DE17C145-3E8D-45D6-BBB6-D06BD7D80A55}.Release|Any CPU.Build.0 = Release|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.CompatibilityMode|Any CPU.Build.0 = CompatibilityMode|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {421ACC19-8922-4E98-8921-B52240CE172A}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {421ACC19-8922-4E98-8921-B52240CE172A}.Release_IncludeRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
- {421ACC19-8922-4E98-8921-B52240CE172A}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {421ACC19-8922-4E98-8921-B52240CE172A}.Release_NoRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{421ACC19-8922-4E98-8921-B52240CE172A}.Release|Any CPU.Build.0 = Release|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.CompatibilityMode|Any CPU.Build.0 = CompatibilityMode|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release_IncludeRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
- {20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release_NoRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{20D2E542-D14F-4678-9C38-F3C0ECF6A2F6}.Release|Any CPU.Build.0 = Release|Any CPU
{978C0952-38D0-4C22-B96C-823EAFEDF0FA}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{978C0952-38D0-4C22-B96C-823EAFEDF0FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {978C0952-38D0-4C22-B96C-823EAFEDF0FA}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {978C0952-38D0-4C22-B96C-823EAFEDF0FA}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
{978C0952-38D0-4C22-B96C-823EAFEDF0FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.CompatibilityMode|Any CPU.Build.0 = CompatibilityMode|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release_IncludeRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
- {279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release_NoRigidbody|Any CPU.Build.0 = Release_IncludeRigidbody|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{279545AE-D268-42F0-A4C6-AA5BA15FB9BE}.Release|Any CPU.Build.0 = Release|Any CPU
{AC1E5A23-CE58-419C-B165-EB1CD39AB433}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{AC1E5A23-CE58-419C-B165-EB1CD39AB433}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {AC1E5A23-CE58-419C-B165-EB1CD39AB433}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {AC1E5A23-CE58-419C-B165-EB1CD39AB433}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
{AC1E5A23-CE58-419C-B165-EB1CD39AB433}.Release|Any CPU.ActiveCfg = Release|Any CPU
{930C3B07-B00A-44B8-A8E5-452A8FD125C7}.CompatibilityMode|Any CPU.ActiveCfg = CompatibilityMode|Any CPU
{930C3B07-B00A-44B8-A8E5-452A8FD125C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {930C3B07-B00A-44B8-A8E5-452A8FD125C7}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
- {930C3B07-B00A-44B8-A8E5-452A8FD125C7}.Release_NoRigidbody|Any CPU.ActiveCfg = Release_IncludeRigidbody|Any CPU
{930C3B07-B00A-44B8-A8E5-452A8FD125C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0B529A90-0B97-4840-BEB6-4A6700B46655}.CompatibilityMode|Any CPU.ActiveCfg = Release|Any CPU
{0B529A90-0B97-4840-BEB6-4A6700B46655}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0B529A90-0B97-4840-BEB6-4A6700B46655}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release|Any CPU
- {0B529A90-0B97-4840-BEB6-4A6700B46655}.Release_NoRigidbody|Any CPU.ActiveCfg = Release|Any CPU
{0B529A90-0B97-4840-BEB6-4A6700B46655}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.CompatibilityMode|Any CPU.ActiveCfg = Release|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.CompatibilityMode|Any CPU.Build.0 = Release|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {6BC7290B-999D-4688-959C-868306C1F52B}.Release_IncludeRigidbody|Any CPU.ActiveCfg = Release|Any CPU
- {6BC7290B-999D-4688-959C-868306C1F52B}.Release_IncludeRigidbody|Any CPU.Build.0 = Release|Any CPU
- {6BC7290B-999D-4688-959C-868306C1F52B}.Release_NoRigidbody|Any CPU.ActiveCfg = Release|Any CPU
- {6BC7290B-999D-4688-959C-868306C1F52B}.Release_NoRigidbody|Any CPU.Build.0 = Release|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6BC7290B-999D-4688-959C-868306C1F52B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
diff --git a/_DOTween.Assembly/DOTween/DOTween.cs b/_DOTween.Assembly/DOTween/DOTween.cs
index 697c135..4f79dd3 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.050"; // Last version before modules: 1.1.755
+ public static readonly string Version = "1.2.055"; // Last version before modules: 1.1.755
///////////////////////////////////////////////
// Options ////////////////////////////////////
diff --git a/_DOTween.Assembly/DOTween/DOTween.csproj b/_DOTween.Assembly/DOTween/DOTween.csproj
index 3e46965..3747ea3 100644
--- a/_DOTween.Assembly/DOTween/DOTween.csproj
+++ b/_DOTween.Assembly/DOTween/DOTween.csproj
@@ -29,7 +29,7 @@
pdbonly
true
..\bin\
- TRACE;RIGIDBODY
+ TRACE
prompt
4
..\bin\DOTween.XML
diff --git a/_DOTween.Assembly/DOTween43/DOTween43.csproj b/_DOTween.Assembly/DOTween43/DOTween43.csproj
index 8d68ab1..d0bb5ac 100644
--- a/_DOTween.Assembly/DOTween43/DOTween43.csproj
+++ b/_DOTween.Assembly/DOTween43/DOTween43.csproj
@@ -29,7 +29,7 @@
pdbonly
true
..\bin\
- TRACE;RIGIDBODY
+ TRACE
prompt
4
..\bin\DOTween43.xml
diff --git a/_DOTween.Assembly/DOTween46/DOTween46.csproj b/_DOTween.Assembly/DOTween46/DOTween46.csproj
index 2f63730..8aee9fa 100644
--- a/_DOTween.Assembly/DOTween46/DOTween46.csproj
+++ b/_DOTween.Assembly/DOTween46/DOTween46.csproj
@@ -29,7 +29,7 @@
pdbonly
true
..\bin\
- TRACE;RIGIDBODY
+ TRACE
prompt
4
..\bin\DOTween46.xml
diff --git a/_DOTween.Assembly/DOTween50/DOTween50.csproj b/_DOTween.Assembly/DOTween50/DOTween50.csproj
index 4a06ae5..e4e79c1 100644
--- a/_DOTween.Assembly/DOTween50/DOTween50.csproj
+++ b/_DOTween.Assembly/DOTween50/DOTween50.csproj
@@ -29,7 +29,7 @@
pdbonly
true
..\bin\
- TRACE;RIGIDBODY
+ TRACE
prompt
4
..\bin\DOTween50.xml
diff --git a/_DOTween.Assembly/DOTweenEditor/DOTweenEditor.csproj b/_DOTween.Assembly/DOTweenEditor/DOTweenEditor.csproj
index 8d1f8c2..5296852 100644
--- a/_DOTween.Assembly/DOTweenEditor/DOTweenEditor.csproj
+++ b/_DOTween.Assembly/DOTweenEditor/DOTweenEditor.csproj
@@ -29,7 +29,7 @@
pdbonly
true
..\bin\Editor\
- TRACE;RIGIDBODY
+ TRACE
prompt
4
..\bin\Editor\DOTweenEditor.XML
diff --git a/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindowModules.cs b/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindowModules.cs
index b706cf3..0297866 100644
--- a/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindowModules.cs
+++ b/_DOTween.Assembly/DOTweenEditor/UI/DOTweenUtilityWindowModules.cs
@@ -5,6 +5,7 @@
using System.Collections.Generic;
using System.IO;
+using System.Text;
using DG.Tweening.Core;
using UnityEditor;
using UnityEngine;
@@ -23,7 +24,13 @@ namespace DG.DOTweenEditor.UI
static readonly ModuleInfo _textMeshProModule = new ModuleInfo("DOTweenTextMeshPro.cs", "TEXTMESHPRO");
static readonly ModuleInfo _tk2DModule = new ModuleInfo("DOTweenTk2D.cs", "TK2D");
- static readonly string _ModuleUtilsPath = "Modules/DOTweenModuleUtils.cs";
+ // Files that contain multiple module dependencies and which have specific define markers to change
+ static readonly string[] _ModuleDependentFiles = new[] {
+ "DOTWEENDIR/Modules/DOTweenModuleUtils.cs",
+ "DOTWEENPRODIR/DOTweenAnimation.cs",
+ "DOTWEENPRODIR/DOTweenProShortcuts.cs",
+ "DOTWEENPRODIR/Editor/DOTweenAnimationInspector.cs",
+ };
static EditorWindow _editor;
static DOTweenSettings _src;
@@ -33,7 +40,11 @@ namespace DG.DOTweenEditor.UI
static DOTweenUtilityWindowModules()
{
- _ModuleUtilsPath = EditorUtils.dotweenDir + _ModuleUtilsPath;
+ for (int i = 0; i < _ModuleDependentFiles.Length; ++i) {
+ _ModuleDependentFiles[i] = _ModuleDependentFiles[i].Replace("DOTWEENDIR/", EditorUtils.dotweenDir);
+ _ModuleDependentFiles[i] = _ModuleDependentFiles[i].Replace("DOTWEENPRODIR/", EditorUtils.dotweenProDir);
+ }
+
_audioModule.filePath = EditorUtils.dotweenDir + _audioModule.filePath;
_physicsModule.filePath = EditorUtils.dotweenDir + _physicsModule.filePath;
_physics2DModule.filePath = EditorUtils.dotweenDir + _physics2DModule.filePath;
@@ -157,17 +168,42 @@ namespace DG.DOTweenEditor.UI
static void Apply()
{
AssetDatabase.StartAssetEditing();
- ToggleModule(_audioModule);
- ToggleModule(_physicsModule);
- ToggleModule(_physics2DModule);
- ToggleModule(_spriteModule);
- ToggleModule(_uiModule);
+ bool audioToggled = ToggleModule(_audioModule, ref _src.modules.audioEnabled);
+ bool physicsToggled = ToggleModule(_physicsModule, ref _src.modules.physicsEnabled);
+ bool physics2DToggled = ToggleModule(_physics2DModule, ref _src.modules.physics2DEnabled);
+ bool spriteToggled = ToggleModule(_spriteModule, ref _src.modules.spriteEnabled);
+ bool uiToggled = ToggleModule(_uiModule, ref _src.modules.uiEnabled);
+ bool textMeshProToggled = false;
+ bool tk2DToggled = false;
if (EditorUtils.hasPro) {
- ToggleModule(_textMeshProModule);
- ToggleModule(_tk2DModule);
+ textMeshProToggled = ToggleModule(_textMeshProModule, ref _src.modules.textMeshProEnabled);
+ tk2DToggled = ToggleModule(_tk2DModule, ref _src.modules.tk2DEnabled);
}
AssetDatabase.StopAssetEditing();
+ EditorUtility.SetDirty(_src);
+
+ bool anyToggled = audioToggled || physicsToggled || physics2DToggled || spriteToggled || uiToggled
+ || textMeshProToggled || tk2DToggled;
+ if (anyToggled) {
+ StringBuilder strb = new StringBuilder();
+ strb.Append("DOTween module files modified ► ");
+ if (audioToggled) Apply_AppendLog(strb, _src.modules.audioEnabled, "Audio");
+ if (physicsToggled) Apply_AppendLog(strb, _src.modules.physicsEnabled, "Physics");
+ if (physics2DToggled) Apply_AppendLog(strb, _src.modules.physics2DEnabled, "Physics2D");
+ if (spriteToggled) Apply_AppendLog(strb, _src.modules.spriteEnabled, "Sprites");
+ if (uiToggled) Apply_AppendLog(strb, _src.modules.uiEnabled, "UI");
+ if (textMeshProToggled) Apply_AppendLog(strb, _src.modules.textMeshProEnabled, "TextMesh Pro");
+ if (tk2DToggled) Apply_AppendLog(strb, _src.modules.tk2DEnabled, "2D Toolkit");
+ // Remove last divider
+ strb.Remove(strb.Length - 3, 3);
+ Debug.Log(strb.ToString());
+ }
+ }
+
+ static void Apply_AppendLog(StringBuilder strb, bool enabled, string id)
+ {
+ strb.Append("').Append(id).Append("").Append(" - ");
}
static bool ModuleIsEnabled(ModuleInfo m)
@@ -177,7 +213,7 @@ namespace DG.DOTweenEditor.UI
using (StreamReader sr = new StreamReader(m.filePath)) {
string line = sr.ReadLine();
while (line != null) {
- if (line.EndsWith(ModuleMarkerId) && line.StartsWith("#if")) return line.StartsWith("#if true");
+ if (line.EndsWith(ModuleMarkerId) && line.StartsWith("#if")) return line.Contains("true");
line = sr.ReadLine();
}
}
@@ -189,7 +225,7 @@ namespace DG.DOTweenEditor.UI
if (m.enabled != srcModuleEnabled) {
if (applySettings) {
m.enabled = srcModuleEnabled;
- ToggleModule(m);
+ ToggleModule(m, ref srcModuleEnabled);
} else {
srcModuleEnabled = m.enabled;
EditorUtility.SetDirty(_src);
@@ -197,25 +233,30 @@ namespace DG.DOTweenEditor.UI
}
}
- static void ToggleModule(ModuleInfo m)
+ // Returns TRUE if files were actually modified
+ static bool ToggleModule(ModuleInfo m, ref bool srcSetting)
{
- if (!File.Exists(m.filePath)) return;
- if (ModuleIsEnabled(m) == m.enabled) return; // Already set
+ if (!File.Exists(m.filePath)) return false;
+// if (ModuleIsEnabled(m) == m.enabled) return; // Already set
+
+ srcSetting = m.enabled;
+ bool modifiedFiles = false;
_LinesToChange.Clear();
string[] lines = File.ReadAllLines(m.filePath);
for (int i = 0; i < lines.Length; ++i) {
string s = lines[i];
- if (s.EndsWith(ModuleMarkerId) && (m.enabled && s.StartsWith("#if false") || !m.enabled && s.StartsWith("#if true"))) {
+ if (s.EndsWith(ModuleMarkerId) && s.StartsWith("#if") && (m.enabled && s.Contains("false") || !m.enabled && s.Contains("true"))) {
_LinesToChange.Add(i);
}
}
if (_LinesToChange.Count > 0) {
+ modifiedFiles = true;
using (StreamWriter sw = new StreamWriter(m.filePath)) {
for (int i = 0; i < lines.Length; ++i) {
string s = lines[i];
if (_LinesToChange.Contains(i)) {
- s = m.enabled ? s.Replace("#if false", "#if true") : s.Replace("#if true", "#if false");
+ s = m.enabled ? s.Replace("false", "true") : s.Replace("true", "false");
}
sw.WriteLine(s);
}
@@ -223,31 +264,45 @@ namespace DG.DOTweenEditor.UI
AssetDatabase.ImportAsset(EditorUtils.FullPathToADBPath(m.filePath), ImportAssetOptions.Default);
}
- // Enable/disable conditions inside DOTweenModuleUtils.cs
- if (!File.Exists(_ModuleUtilsPath)) return;
+ // Enable/disable conditions inside dependent files
string marker = m.id + "_MARKER";
- lines = File.ReadAllLines(_ModuleUtilsPath);
+ for (int i = 0; i < _ModuleDependentFiles.Length; ++i) {
+ bool mod = ToggleModuleInDependentFile(_ModuleDependentFiles[i], m.enabled, marker);
+ if (mod) modifiedFiles = true;
+ }
+
_LinesToChange.Clear();
+ return modifiedFiles;
+ }
+
+ // Returns TRUE if files were actually modified
+ static bool ToggleModuleInDependentFile(string filePath, bool enable, string marker)
+ {
+ if (!File.Exists(filePath)) return false;
+
+ bool modifiedFiles = false;
+ _LinesToChange.Clear();
+ string[] lines = File.ReadAllLines(filePath);
for (int i = 0; i < lines.Length; ++i) {
string s = lines[i];
- if (s.EndsWith(marker) && (m.enabled && s.StartsWith("#if false") || !m.enabled && s.StartsWith("#if true"))) {
+ if (s.EndsWith(marker) && s.StartsWith("#if") && (enable && s.Contains("false") || !enable && s.Contains("true"))) {
_LinesToChange.Add(i);
}
}
if (_LinesToChange.Count > 0) {
- using (StreamWriter sw = new StreamWriter(_ModuleUtilsPath)) {
+ modifiedFiles = true;
+ using (StreamWriter sw = new StreamWriter(filePath)) {
for (int i = 0; i < lines.Length; ++i) {
string s = lines[i];
if (_LinesToChange.Contains(i)) {
- s = m.enabled ? s.Replace("#if false", "#if true") : s.Replace("#if true", "#if false");
+ s = enable ? s.Replace("false", "true") : s.Replace("true", "false");
}
sw.WriteLine(s);
}
}
- AssetDatabase.ImportAsset(EditorUtils.FullPathToADBPath(_ModuleUtilsPath), ImportAssetOptions.Default);
+ AssetDatabase.ImportAsset(EditorUtils.FullPathToADBPath(filePath), ImportAssetOptions.Default);
}
-
- _LinesToChange.Clear();
+ return modifiedFiles;
}
#endregion
diff --git a/_DOTween.Assembly/DOTween_LooseScripts/DOTween_LooseScripts.csproj b/_DOTween.Assembly/DOTween_LooseScripts/DOTween_LooseScripts.csproj
index c178fca..e1f503d 100644
--- a/_DOTween.Assembly/DOTween_LooseScripts/DOTween_LooseScripts.csproj
+++ b/_DOTween.Assembly/DOTween_LooseScripts/DOTween_LooseScripts.csproj
@@ -30,7 +30,7 @@
pdbonly
true
..\bin\
- TRACE;DOTAUDIO;DOTPHYSICS;DOTPHYSICS2D;DOTSPRITE;DOTUI;UNITY_4_3;UNITY_4_6;UNITY_5;UNITY_2017_0_OR_NEWER
+ TRACE;UNITY_4_3;UNITY_4_6;UNITY_5;UNITY_2017_1_OR_NEWER
prompt
4
diff --git a/_DOTween.Assembly/bin/DOTween.dll b/_DOTween.Assembly/bin/DOTween.dll
index eb48bfb..d060a42 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 5a886be..830d3cc 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 a969b35..7ffaa52 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 b785f63..8beba3b 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 053d318..a5b2e90 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 003bf9e..c0ec9c4 100644
Binary files a/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb and b/_DOTween.Assembly/bin/Editor/DOTweenUpgradeManager.dll.mdb differ