From c2611e9a1a148a1a603e9f187dd9fe989e76f1a2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=A7=8B=E6=B0=B4?= <1123993881@qq.com>
Date: Fri, 20 Jan 2023 15:49:23 +0800
Subject: [PATCH] fix: changed with timeline.
---
RotationSolver/Helpers/ConditionHelper.cs | 5 -----
RotationSolver/Interfaces.cd | 6 +++---
.../Localization/EnumTranslations.cs | 2 +-
RotationSolver/RotationSolver.csproj | 3 +++
.../Rotations/Healer/AST/AST_Default.cs | 2 +-
.../Rotations/Healer/SCH/SCH_Default.cs | 2 +-
.../Rotations/Healer/SGE/SGE_Default.cs | 2 +-
.../Rotations/Healer/WHM/WHM_Default.cs | 2 +-
.../Rotations/Melee/DRG/DRG_Default.cs | 2 +-
.../Rotations/Melee/MNK/MNK_Default.cs | 2 +-
.../Rotations/Melee/NIN/NIN_Default.cs | 2 +-
.../Rotations/Melee/RPR/RPR_Default.cs | 2 +-
.../Rotations/Melee/SAM/SAM_Default.cs | 2 +-
.../RangedMagicial/BLM/BLM_Default.cs | 2 +-
.../RangedMagicial/BLU/BLU_Default.cs | 2 +-
.../RangedMagicial/RDM/RDM_Default.cs | 2 +-
.../RangedMagicial/SMN/SMN_Default.cs | 2 +-
.../RangedPhysicial/BRD/BRD_Default.cs | 4 ++--
.../RangedPhysicial/DNC/DNC_Default.cs | 2 +-
.../RangedPhysicial/MCH/MCH_Default.cs | 2 +-
.../Rotations/Tank/DRK/DRK_Default.cs | 2 +-
.../Rotations/Tank/GNB/GNB_Default.cs | 2 +-
.../Rotations/Tank/PLD/PLD_Default.cs | 2 +-
.../Rotations/Tank/WAR/WAR_Default.cs | 2 +-
RotationSolver/SigReplacers/IconReplacer.cs | 5 -----
.../ActionCondition.cs | 3 +--
.../Conditions => Timeline}/ConditionSet.cs | 3 +--
RotationSolver/Timeline/ICondition.cs | 16 +++++++++++++++
.../IConditionConverter.cs} | 19 +++++++-----------
RotationSolver/Timeline/MajorConditionSet.cs | 20 +++++++++++++++++++
.../RotationCondition.cs | 2 +-
.../TargetCondition.cs | 4 ++--
RotationSolver/Timeline/Timeline.cd | 18 +++++++++++++++++
.../Windows/RotationConfigWindow_Major.cs | 9 ---------
34 files changed, 94 insertions(+), 63 deletions(-)
rename RotationSolver/{Rotations/Script/Conditions => Timeline}/ActionCondition.cs (98%)
rename RotationSolver/{Rotations/Script/Conditions => Timeline}/ConditionSet.cs (96%)
create mode 100644 RotationSolver/Timeline/ICondition.cs
rename RotationSolver/{Rotations/Script/Conditions/ICondition.cs => Timeline/IConditionConverter.cs} (83%)
create mode 100644 RotationSolver/Timeline/MajorConditionSet.cs
rename RotationSolver/{Rotations/Script/Conditions => Timeline}/RotationCondition.cs (99%)
rename RotationSolver/{Rotations/Script/Conditions => Timeline}/TargetCondition.cs (98%)
create mode 100644 RotationSolver/Timeline/Timeline.cd
diff --git a/RotationSolver/Helpers/ConditionHelper.cs b/RotationSolver/Helpers/ConditionHelper.cs
index 7188be561..34015e683 100644
--- a/RotationSolver/Helpers/ConditionHelper.cs
+++ b/RotationSolver/Helpers/ConditionHelper.cs
@@ -1,15 +1,10 @@
using ImGuiNET;
using RotationSolver.Actions.BaseAction;
using RotationSolver.Data;
-using RotationSolver.Localization;
using RotationSolver.Rotations.CustomRotation;
-using RotationSolver.Rotations.Script.Conditions;
using System;
-using System.Collections.Generic;
using System.Linq;
using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
namespace RotationSolver.Helpers
{
diff --git a/RotationSolver/Interfaces.cd b/RotationSolver/Interfaces.cd
index 42037d0b2..d2b3694a7 100644
--- a/RotationSolver/Interfaces.cd
+++ b/RotationSolver/Interfaces.cd
@@ -24,7 +24,7 @@
- AAAogAAAAAAABYAAAIAIADAAAACABIAAAAABAAAAgMA=
+ CAAogAAAAAAABYQABIAIADAAAACABIAAAAABAAAAgMA=
Actions\IBaseAction.cs
@@ -43,14 +43,14 @@
-
+
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAA=
Rotations\Basic\BLU_Base.cs
-
+
AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=
Rotations\Basic\NIN_Base.cs
diff --git a/RotationSolver/Localization/EnumTranslations.cs b/RotationSolver/Localization/EnumTranslations.cs
index aadbc3e73..74457ad30 100644
--- a/RotationSolver/Localization/EnumTranslations.cs
+++ b/RotationSolver/Localization/EnumTranslations.cs
@@ -3,7 +3,7 @@
using RotationSolver.Commands;
using RotationSolver.Data;
using RotationSolver.Rotations.CustomRotation;
-using RotationSolver.Rotations.Script.Conditions;
+using RotationSolver.Timeline;
namespace RotationSolver.Localization;
diff --git a/RotationSolver/RotationSolver.csproj b/RotationSolver/RotationSolver.csproj
index afddfedb7..6d48db173 100644
--- a/RotationSolver/RotationSolver.csproj
+++ b/RotationSolver/RotationSolver.csproj
@@ -54,6 +54,9 @@
False
+
+
+
diff --git a/RotationSolver/Rotations/Healer/AST/AST_Default.cs b/RotationSolver/Rotations/Healer/AST/AST_Default.cs
index c48841513..0364fd7ad 100644
--- a/RotationSolver/Rotations/Healer/AST/AST_Default.cs
+++ b/RotationSolver/Rotations/Healer/AST/AST_Default.cs
@@ -8,7 +8,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Healer.ASTCombos;
+namespace RotationSolver.Rotations.Healer.AST;
internal sealed class AST_Default : AST_Base
{
diff --git a/RotationSolver/Rotations/Healer/SCH/SCH_Default.cs b/RotationSolver/Rotations/Healer/SCH/SCH_Default.cs
index c0cb789cf..83134e8c8 100644
--- a/RotationSolver/Rotations/Healer/SCH/SCH_Default.cs
+++ b/RotationSolver/Rotations/Healer/SCH/SCH_Default.cs
@@ -8,7 +8,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Healer.SCHCombos;
+namespace RotationSolver.Rotations.Healer.SCH;
internal sealed class SCH_Default : SCH_Base
{
diff --git a/RotationSolver/Rotations/Healer/SGE/SGE_Default.cs b/RotationSolver/Rotations/Healer/SGE/SGE_Default.cs
index 0d4baffdb..62d38f834 100644
--- a/RotationSolver/Rotations/Healer/SGE/SGE_Default.cs
+++ b/RotationSolver/Rotations/Healer/SGE/SGE_Default.cs
@@ -9,7 +9,7 @@
using RotationSolver.Rotations.CustomRotation;
using RotationSolver.Rotations.Basic;
-namespace RotationSolver.Rotations.Healer.SGECombos;
+namespace RotationSolver.Rotations.Healer.SGE;
internal sealed class SGE_Default : SGE_Base
{
diff --git a/RotationSolver/Rotations/Healer/WHM/WHM_Default.cs b/RotationSolver/Rotations/Healer/WHM/WHM_Default.cs
index cc4d2faa1..47d27eacf 100644
--- a/RotationSolver/Rotations/Healer/WHM/WHM_Default.cs
+++ b/RotationSolver/Rotations/Healer/WHM/WHM_Default.cs
@@ -9,7 +9,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Healer.WHMCombos;
+namespace RotationSolver.Rotations.Healer.WHM;
internal sealed class WHM_Default : WHM_Base
{
public override string GameVersion => "6.28";
diff --git a/RotationSolver/Rotations/Melee/DRG/DRG_Default.cs b/RotationSolver/Rotations/Melee/DRG/DRG_Default.cs
index e2eb2c9cc..b0a48be2c 100644
--- a/RotationSolver/Rotations/Melee/DRG/DRG_Default.cs
+++ b/RotationSolver/Rotations/Melee/DRG/DRG_Default.cs
@@ -7,7 +7,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.Melee.DRGCombos;
+namespace RotationSolver.Rotations.Melee.DRG;
internal sealed class DRG_Default : DRG_Base
{
diff --git a/RotationSolver/Rotations/Melee/MNK/MNK_Default.cs b/RotationSolver/Rotations/Melee/MNK/MNK_Default.cs
index 31f4944d8..287d2fe31 100644
--- a/RotationSolver/Rotations/Melee/MNK/MNK_Default.cs
+++ b/RotationSolver/Rotations/Melee/MNK/MNK_Default.cs
@@ -10,7 +10,7 @@
using System.Collections.Generic;
using System.Linq;
-namespace RotationSolver.Rotations.Melee.MNKCombos;
+namespace RotationSolver.Rotations.Melee.MNK;
internal sealed class MNK_Default : MNK_Base
{
public override string GameVersion => "6.0";
diff --git a/RotationSolver/Rotations/Melee/NIN/NIN_Default.cs b/RotationSolver/Rotations/Melee/NIN/NIN_Default.cs
index a7753800e..304cfbaf1 100644
--- a/RotationSolver/Rotations/Melee/NIN/NIN_Default.cs
+++ b/RotationSolver/Rotations/Melee/NIN/NIN_Default.cs
@@ -8,7 +8,7 @@
using RotationSolver.Updaters;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.Melee.NINCombos;
+namespace RotationSolver.Rotations.Melee.NIN;
internal sealed class NIN_Default : NIN_Base
{
diff --git a/RotationSolver/Rotations/Melee/RPR/RPR_Default.cs b/RotationSolver/Rotations/Melee/RPR/RPR_Default.cs
index 1e21608e8..70129f171 100644
--- a/RotationSolver/Rotations/Melee/RPR/RPR_Default.cs
+++ b/RotationSolver/Rotations/Melee/RPR/RPR_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Melee.RPRCombos;
+namespace RotationSolver.Rotations.Melee.RPR;
internal sealed class RPR_Default : RPR_Base
{
diff --git a/RotationSolver/Rotations/Melee/SAM/SAM_Default.cs b/RotationSolver/Rotations/Melee/SAM/SAM_Default.cs
index b593770ad..0ff9799fe 100644
--- a/RotationSolver/Rotations/Melee/SAM/SAM_Default.cs
+++ b/RotationSolver/Rotations/Melee/SAM/SAM_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.Melee.SAMCombos;
+namespace RotationSolver.Rotations.Melee.SAM;
internal sealed class SAM_Default : SAM_Base
{
diff --git a/RotationSolver/Rotations/RangedMagicial/BLM/BLM_Default.cs b/RotationSolver/Rotations/RangedMagicial/BLM/BLM_Default.cs
index c857f6f45..79531d5fc 100644
--- a/RotationSolver/Rotations/RangedMagicial/BLM/BLM_Default.cs
+++ b/RotationSolver/Rotations/RangedMagicial/BLM/BLM_Default.cs
@@ -9,7 +9,7 @@
using System.Linq;
using static RotationSolver.SigReplacers.Watcher;
-namespace RotationSolver.Rotations.RangedMagicial.BLMCombos;
+namespace RotationSolver.Rotations.RangedMagicial.BLM;
internal sealed partial class BLM_Default : BLM_Base
{
public override string GameVersion => "6.18";
diff --git a/RotationSolver/Rotations/RangedMagicial/BLU/BLU_Default.cs b/RotationSolver/Rotations/RangedMagicial/BLU/BLU_Default.cs
index 9271131ea..5f728a71e 100644
--- a/RotationSolver/Rotations/RangedMagicial/BLU/BLU_Default.cs
+++ b/RotationSolver/Rotations/RangedMagicial/BLU/BLU_Default.cs
@@ -7,7 +7,7 @@
using RotationSolver.Configuration.RotationConfig;
using RotationSolver.Rotations.Basic;
-namespace RotationSolver.Rotations.RangedMagicial.BLUCombos
+namespace RotationSolver.Rotations.RangedMagicial.BLU
{
internal sealed class BLU_Default : BLU_Base
{
diff --git a/RotationSolver/Rotations/RangedMagicial/RDM/RDM_Default.cs b/RotationSolver/Rotations/RangedMagicial/RDM/RDM_Default.cs
index 5b67c2fc2..b65c39aef 100644
--- a/RotationSolver/Rotations/RangedMagicial/RDM/RDM_Default.cs
+++ b/RotationSolver/Rotations/RangedMagicial/RDM/RDM_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.RangedMagicial.RDMCombos;
+namespace RotationSolver.Rotations.RangedMagicial.RDM;
internal sealed class RDM_Default : RDM_Base
{
diff --git a/RotationSolver/Rotations/RangedMagicial/SMN/SMN_Default.cs b/RotationSolver/Rotations/RangedMagicial/SMN/SMN_Default.cs
index bb42d2859..d8a1d1cd1 100644
--- a/RotationSolver/Rotations/RangedMagicial/SMN/SMN_Default.cs
+++ b/RotationSolver/Rotations/RangedMagicial/SMN/SMN_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.RangedMagicial.SMNCombos;
+namespace RotationSolver.Rotations.RangedMagicial.SMN;
internal sealed class SMN_Default : SMN_Base
{
diff --git a/RotationSolver/Rotations/RangedPhysicial/BRD/BRD_Default.cs b/RotationSolver/Rotations/RangedPhysicial/BRD/BRD_Default.cs
index da2bd6585..df2f345f8 100644
--- a/RotationSolver/Rotations/RangedPhysicial/BRD/BRD_Default.cs
+++ b/RotationSolver/Rotations/RangedPhysicial/BRD/BRD_Default.cs
@@ -6,9 +6,9 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-using static RotationSolver.Rotations.RangedPhysicial.BRDCombos.BRD_Default;
+using static RotationSolver.Rotations.RangedPhysicial.BRD.BRD_Default;
-namespace RotationSolver.Rotations.RangedPhysicial.BRDCombos;
+namespace RotationSolver.Rotations.RangedPhysicial.BRD;
internal sealed class BRD_Default : BRD_Base
{
diff --git a/RotationSolver/Rotations/RangedPhysicial/DNC/DNC_Default.cs b/RotationSolver/Rotations/RangedPhysicial/DNC/DNC_Default.cs
index 9237cf86f..a71f7bcb4 100644
--- a/RotationSolver/Rotations/RangedPhysicial/DNC/DNC_Default.cs
+++ b/RotationSolver/Rotations/RangedPhysicial/DNC/DNC_Default.cs
@@ -7,7 +7,7 @@
using System.Collections.Generic;
using System.Linq;
-namespace RotationSolver.Rotations.RangedPhysicial.DNCCombos;
+namespace RotationSolver.Rotations.RangedPhysicial.DNC;
internal sealed class DNC_Default : DNC_Base
{
diff --git a/RotationSolver/Rotations/RangedPhysicial/MCH/MCH_Default.cs b/RotationSolver/Rotations/RangedPhysicial/MCH/MCH_Default.cs
index d55331167..8f57ab81c 100644
--- a/RotationSolver/Rotations/RangedPhysicial/MCH/MCH_Default.cs
+++ b/RotationSolver/Rotations/RangedPhysicial/MCH/MCH_Default.cs
@@ -8,7 +8,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.RangedPhysicial.MCHCombos;
+namespace RotationSolver.Rotations.RangedPhysicial.MCH;
internal sealed class MCH_Default : MCH_Base
{
diff --git a/RotationSolver/Rotations/Tank/DRK/DRK_Default.cs b/RotationSolver/Rotations/Tank/DRK/DRK_Default.cs
index c88487467..6484013f3 100644
--- a/RotationSolver/Rotations/Tank/DRK/DRK_Default.cs
+++ b/RotationSolver/Rotations/Tank/DRK/DRK_Default.cs
@@ -9,7 +9,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Tank.DRKCombos;
+namespace RotationSolver.Rotations.Tank.DRK;
internal sealed class DRK_Default : DRK_Base
{
diff --git a/RotationSolver/Rotations/Tank/GNB/GNB_Default.cs b/RotationSolver/Rotations/Tank/GNB/GNB_Default.cs
index bf4b9fd69..906bdfb86 100644
--- a/RotationSolver/Rotations/Tank/GNB/GNB_Default.cs
+++ b/RotationSolver/Rotations/Tank/GNB/GNB_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.Tank.GNBCombos;
+namespace RotationSolver.Rotations.Tank.GNB;
internal sealed class GNB_Default : GNB_Base
{
diff --git a/RotationSolver/Rotations/Tank/PLD/PLD_Default.cs b/RotationSolver/Rotations/Tank/PLD/PLD_Default.cs
index 11e9c2e81..056cf936b 100644
--- a/RotationSolver/Rotations/Tank/PLD/PLD_Default.cs
+++ b/RotationSolver/Rotations/Tank/PLD/PLD_Default.cs
@@ -6,7 +6,7 @@
using RotationSolver.Rotations.CustomRotation;
using System.Collections.Generic;
-namespace RotationSolver.Rotations.Tank.PLDCombos;
+namespace RotationSolver.Rotations.Tank.PLD;
internal sealed class PLD_Default : PLD_Base
{
diff --git a/RotationSolver/Rotations/Tank/WAR/WAR_Default.cs b/RotationSolver/Rotations/Tank/WAR/WAR_Default.cs
index 4785b6827..bc6f1d250 100644
--- a/RotationSolver/Rotations/Tank/WAR/WAR_Default.cs
+++ b/RotationSolver/Rotations/Tank/WAR/WAR_Default.cs
@@ -8,7 +8,7 @@
using RotationSolver.Rotations.Basic;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Tank.WARCombos;
+namespace RotationSolver.Rotations.Tank.WAR;
internal sealed class WAR_Default : WAR_Base
{
diff --git a/RotationSolver/SigReplacers/IconReplacer.cs b/RotationSolver/SigReplacers/IconReplacer.cs
index 6f3df7993..ae187c84f 100644
--- a/RotationSolver/SigReplacers/IconReplacer.cs
+++ b/RotationSolver/SigReplacers/IconReplacer.cs
@@ -2,16 +2,12 @@
using Dalamud.Hooking;
using FFXIVClientStructs.FFXIV.Client.Game;
using Lumina.Excel.GeneratedSheets;
-using Newtonsoft.Json;
using RotationSolver.Actions;
using RotationSolver.Data;
using RotationSolver.Rotations.CustomRotation;
-using RotationSolver.Rotations.Script;
-using RotationSolver.Rotations.Script.Conditions;
using RotationSolver.Updaters;
using System;
using System.Collections.Generic;
-using System.IO;
using System.Linq;
using System.Reflection;
@@ -19,7 +15,6 @@ namespace RotationSolver.SigReplacers;
internal sealed class IconReplacer : IDisposable
{
-
public record CustomRotationGroup(ClassJobID jobId, ClassJobID[] classJobIds, ICustomRotation[] rotations);
private delegate ulong IsIconReplaceableDelegate(uint actionID);
diff --git a/RotationSolver/Rotations/Script/Conditions/ActionCondition.cs b/RotationSolver/Timeline/ActionCondition.cs
similarity index 98%
rename from RotationSolver/Rotations/Script/Conditions/ActionCondition.cs
rename to RotationSolver/Timeline/ActionCondition.cs
index be943f8c0..12d14bb35 100644
--- a/RotationSolver/Rotations/Script/Conditions/ActionCondition.cs
+++ b/RotationSolver/Timeline/ActionCondition.cs
@@ -6,13 +6,12 @@
using RotationSolver.Data;
using RotationSolver.Windows;
using RotationSolver.Localization;
-using RotationSolver.Rotations.Script;
using RotationSolver.Helpers;
using RotationSolver.Rotations.CustomRotation;
using RotationSolver.Actions;
using Lumina.Data.Parsing;
-namespace RotationSolver.Rotations.Script.Conditions;
+namespace RotationSolver.Timeline;
internal class ActionCondition : ICondition
{
diff --git a/RotationSolver/Rotations/Script/Conditions/ConditionSet.cs b/RotationSolver/Timeline/ConditionSet.cs
similarity index 96%
rename from RotationSolver/Rotations/Script/Conditions/ConditionSet.cs
rename to RotationSolver/Timeline/ConditionSet.cs
index 41e72d4f9..ff66586c9 100644
--- a/RotationSolver/Rotations/Script/Conditions/ConditionSet.cs
+++ b/RotationSolver/Timeline/ConditionSet.cs
@@ -5,13 +5,12 @@
using RotationSolver.Helpers;
using RotationSolver.Localization;
using RotationSolver.Rotations.CustomRotation;
-using RotationSolver.Rotations.Script;
using RotationSolver.Windows;
using System;
using System.Collections.Generic;
using System.Linq;
-namespace RotationSolver.Rotations.Script.Conditions;
+namespace RotationSolver.Timeline;
internal class ConditionSet : ICondition
{
diff --git a/RotationSolver/Timeline/ICondition.cs b/RotationSolver/Timeline/ICondition.cs
new file mode 100644
index 000000000..2281cc590
--- /dev/null
+++ b/RotationSolver/Timeline/ICondition.cs
@@ -0,0 +1,16 @@
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using RotationSolver.Rotations.CustomRotation;
+using System;
+
+namespace RotationSolver.Timeline;
+
+internal interface ICondition
+{
+ const float DefaultHeight = 33;
+ bool IsTrue(ICustomRotation rotation);
+ void Draw(ICustomRotation rotation);
+ float Height { get; }
+}
+
+
diff --git a/RotationSolver/Rotations/Script/Conditions/ICondition.cs b/RotationSolver/Timeline/IConditionConverter.cs
similarity index 83%
rename from RotationSolver/Rotations/Script/Conditions/ICondition.cs
rename to RotationSolver/Timeline/IConditionConverter.cs
index b26e3e519..89f7aef0b 100644
--- a/RotationSolver/Rotations/Script/Conditions/ICondition.cs
+++ b/RotationSolver/Timeline/IConditionConverter.cs
@@ -1,17 +1,12 @@
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
-using RotationSolver.Rotations.CustomRotation;
+using Newtonsoft.Json.Linq;
+using Newtonsoft.Json;
using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
-namespace RotationSolver.Rotations.Script.Conditions;
-
-internal interface ICondition
-{
- const float DefaultHeight = 33;
- bool IsTrue(ICustomRotation rotation);
- void Draw(ICustomRotation rotation);
- float Height { get; }
-}
+namespace RotationSolver.Timeline;
internal class IConditionConverter : JsonCreationConverter
{
diff --git a/RotationSolver/Timeline/MajorConditionSet.cs b/RotationSolver/Timeline/MajorConditionSet.cs
new file mode 100644
index 000000000..02548f401
--- /dev/null
+++ b/RotationSolver/Timeline/MajorConditionSet.cs
@@ -0,0 +1,20 @@
+using RotationSolver.Data;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace RotationSolver.Timeline;
+
+internal class MajorConditionSet
+{
+ public Dictionary Conditions { get; } = new Dictionary();
+
+ public string Name { get; set; }
+
+ public MajorConditionSet(string name)
+ {
+ Name = name;
+ }
+}
diff --git a/RotationSolver/Rotations/Script/Conditions/RotationCondition.cs b/RotationSolver/Timeline/RotationCondition.cs
similarity index 99%
rename from RotationSolver/Rotations/Script/Conditions/RotationCondition.cs
rename to RotationSolver/Timeline/RotationCondition.cs
index 8b963239b..2a09ce670 100644
--- a/RotationSolver/Rotations/Script/Conditions/RotationCondition.cs
+++ b/RotationSolver/Timeline/RotationCondition.cs
@@ -11,7 +11,7 @@
using RotationSolver.Helpers;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Script.Conditions;
+namespace RotationSolver.Timeline;
internal class RotationCondition : ICondition
{
diff --git a/RotationSolver/Rotations/Script/Conditions/TargetCondition.cs b/RotationSolver/Timeline/TargetCondition.cs
similarity index 98%
rename from RotationSolver/Rotations/Script/Conditions/TargetCondition.cs
rename to RotationSolver/Timeline/TargetCondition.cs
index 84f0d6d3f..20763d8b4 100644
--- a/RotationSolver/Rotations/Script/Conditions/TargetCondition.cs
+++ b/RotationSolver/Timeline/TargetCondition.cs
@@ -11,7 +11,7 @@
using RotationSolver.Localization;
using RotationSolver.Rotations.CustomRotation;
-namespace RotationSolver.Rotations.Script.Conditions;
+namespace RotationSolver.Timeline;
internal class TargetCondition : ICondition
{
@@ -242,7 +242,7 @@ public void Draw(ICustomRotation combo)
break;
case TargetConditionType.Distance:
- if(ConditionHelper.DrawDragFloat($"m##m{GetHashCode()}", ref DistanceOrTime))
+ if (ConditionHelper.DrawDragFloat($"m##m{GetHashCode()}", ref DistanceOrTime))
{
DistanceOrTime = Math.Max(0, DistanceOrTime);
}
diff --git a/RotationSolver/Timeline/Timeline.cd b/RotationSolver/Timeline/Timeline.cd
new file mode 100644
index 000000000..aa313eb84
--- /dev/null
+++ b/RotationSolver/Timeline/Timeline.cd
@@ -0,0 +1,18 @@
+
+
+
+
+
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAACAAAAAAAAAA=
+ Timeline\IConditionConverter.cs
+
+
+
+
+
+ AAAAAAAAAQQAAAAAEAAAAAAAAAAAAEAAAAAAAAAACAA=
+ Timeline\IConditionConverter.cs
+
+
+
+
\ No newline at end of file
diff --git a/RotationSolver/Windows/RotationConfigWindow_Major.cs b/RotationSolver/Windows/RotationConfigWindow_Major.cs
index e8a2dfc71..554a16fcb 100644
--- a/RotationSolver/Windows/RotationConfigWindow_Major.cs
+++ b/RotationSolver/Windows/RotationConfigWindow_Major.cs
@@ -1,17 +1,8 @@
-using Dalamud.Interface;
using Dalamud.Interface.Windowing;
-using Dalamud.Utility;
-using FFXIVClientStructs.FFXIV.Client.Game;
-using FFXIVClientStructs.FFXIV.Client.Game.UI;
using ImGuiNET;
-using RotationSolver.Actions;
-using RotationSolver.Actions.BaseAction;
using RotationSolver.Data;
-using RotationSolver.Helpers;
using RotationSolver.Localization;
using RotationSolver.Rotations.CustomRotation;
-using RotationSolver.Rotations.Script;
-using System;
using System.Collections.Generic;
using System.Numerics;