diff --git a/RotationSolver.Basic/Configuration/ConditionBoolean.cs b/RotationSolver.Basic/Configuration/ConditionBoolean.cs index 75e12e9b..99cdec9f 100644 --- a/RotationSolver.Basic/Configuration/ConditionBoolean.cs +++ b/RotationSolver.Basic/Configuration/ConditionBoolean.cs @@ -56,7 +56,7 @@ public static implicit operator bool(ConditionBoolean condition) { if (!Service.Config.UseAdditionalConditions) return condition.Value; var rotation = DataCenter.CurrentRotation; - var set = DataCenter.RightSet; + var set = DataCenter.CurrentConditionValue; if (rotation != null) { if (condition.Enable && set.GetEnableCondition(condition.Key).IsTrue(rotation)) return true; diff --git a/RotationSolver.Basic/Configuration/Conditions/MajorConditionSet.cs b/RotationSolver.Basic/Configuration/Conditions/MajorConditionSet.cs index 2d0d0e73..079c4846 100644 --- a/RotationSolver.Basic/Configuration/Conditions/MajorConditionSet.cs +++ b/RotationSolver.Basic/Configuration/Conditions/MajorConditionSet.cs @@ -3,7 +3,7 @@ namespace RotationSolver.Basic.Configuration.Conditions; -internal class MajorConditionSet(string name = MajorConditionSet.conditionName) +internal class MajorConditionValue(string name = MajorConditionValue.conditionName) { const string conditionName = "Unnamed"; @@ -114,7 +114,7 @@ public void Save(string folder) File.WriteAllText(path, str); } - public static MajorConditionSet[] Read(string folder) + public static MajorConditionValue[] Read(string folder) { if (!Directory.Exists(folder)) return []; @@ -124,7 +124,7 @@ public static MajorConditionSet[] Read(string folder) try { - return JsonConvert.DeserializeObject(str, new IConditionConverter()); + return JsonConvert.DeserializeObject(str, new IConditionConverter()); } catch (Exception ex) { @@ -132,6 +132,6 @@ public static MajorConditionSet[] Read(string folder) Svc.Chat.Print($"Failed to load the ConditionSet from {p}"); return null; } - }).OfType().Where(set => !string.IsNullOrEmpty(set.Name)).ToArray(); + }).OfType().Where(set => !string.IsNullOrEmpty(set.Name)).ToArray(); } } diff --git a/RotationSolver.Basic/Configuration/Conditions/NamedCondition.cs b/RotationSolver.Basic/Configuration/Conditions/NamedCondition.cs index e99bdbbf..dad85a5e 100644 --- a/RotationSolver.Basic/Configuration/Conditions/NamedCondition.cs +++ b/RotationSolver.Basic/Configuration/Conditions/NamedCondition.cs @@ -6,7 +6,7 @@ internal class NamedCondition : DelayCondition public string ConditionName = "Not Chosen"; protected override bool IsTrueInside(ICustomRotation rotation) { - foreach (var pair in DataCenter.RightSet.NamedConditions) + foreach (var pair in DataCenter.CurrentConditionValue.NamedConditions) { if (pair.Name != ConditionName) continue; diff --git a/RotationSolver.Basic/Configuration/Configs.cs b/RotationSolver.Basic/Configuration/Configs.cs index b3204cef..ad0caaf6 100644 --- a/RotationSolver.Basic/Configuration/Configs.cs +++ b/RotationSolver.Basic/Configuration/Configs.cs @@ -376,9 +376,9 @@ public const string PvPFilter = JobFilterType.NoHealer, PvEFilter = JobFilterType.NoHealer)] private static readonly bool _onlyHealSelfWhenNoHealer = false; - [ConditionBool, UI("Show action toggled action and state feedback in chat.", + [ConditionBool, UI("Show toggled setting and new value in chat.", Filter = UiInformation)] - private static readonly bool _showToggledActionInChat = false; + private static readonly bool _ShowToggledSettingInChat = false; [ConditionBool, UI("Record knockback actions", Filter = List2)] private static readonly bool _recordKnockbackies = false; @@ -500,7 +500,7 @@ public const string Filter = HealingActionCondition, Section = 3)] private static readonly bool _healWhenNothingTodo = true; - [UI("The duration of special windows set by commands", + [UI("The duration of special windows opened by /macro commands by default.", Filter = BasicTimer, Section = 1)] [Range(1, 20, ConfigUnitType.Seconds, 1f)] public float SpecialDuration { get; set; } = 3; diff --git a/RotationSolver.Basic/DataCenter.cs b/RotationSolver.Basic/DataCenter.cs index 5e132cd8..6b42e1ad 100644 --- a/RotationSolver.Basic/DataCenter.cs +++ b/RotationSolver.Basic/DataCenter.cs @@ -37,13 +37,13 @@ internal static IBattleChara? HostileTarget /// /// This one never be null. /// - public static MajorConditionSet RightSet + public static MajorConditionValue CurrentConditionValue { get { if (ConditionSets == null || ConditionSets.Length == 0) { - ConditionSets = new[] { new MajorConditionSet() }; + ConditionSets = new[] { new MajorConditionValue() }; } var index = Service.Config.ActionSequencerIndex; @@ -56,7 +56,7 @@ public static MajorConditionSet RightSet } } - internal static MajorConditionSet[] ConditionSets { get; set; } = Array.Empty(); + internal static MajorConditionValue[] ConditionSets { get; set; } = Array.Empty(); /// /// Only recorded 15s hps. diff --git a/RotationSolver/Commands/RSCommands_Actions.cs b/RotationSolver/Commands/RSCommands_Actions.cs index a90fd04a..b4e7a20a 100644 --- a/RotationSolver/Commands/RSCommands_Actions.cs +++ b/RotationSolver/Commands/RSCommands_Actions.cs @@ -195,7 +195,7 @@ internal static void UpdateRotationState() (Service.Config.AutoOffBetweenArea && (Svc.Condition[ConditionFlag.BetweenAreas] || Svc.Condition[ConditionFlag.BetweenAreas51])) || (Service.Config.CancelStateOnCombatBeforeCountdown && Service.CountDownTime > 0.2f && DataCenter.InCombat) || (ActionUpdater.AutoCancelTime != DateTime.MinValue && DateTime.Now > ActionUpdater.AutoCancelTime) || - (DataCenter.RightSet.SwitchCancelConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false)) + (DataCenter.CurrentConditionValue.SwitchCancelConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false)) { CancelState(); #pragma warning disable CS0472 // The result of the expression is always the same since a value of this type is never equal to 'null' @@ -235,14 +235,14 @@ internal static void UpdateRotationState() _lastCountdownTime = 0; CancelState(); } - else if (DataCenter.RightSet.SwitchManualConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false) + else if (DataCenter.CurrentConditionValue.SwitchManualConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false) { if (!DataCenter.State) { DoStateCommandType(StateCommandType.Manual); } } - else if (DataCenter.RightSet.SwitchAutoConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false) + else if (DataCenter.CurrentConditionValue.SwitchAutoConditionSet?.IsTrue(DataCenter.CurrentRotation) ?? false) { if (!DataCenter.State) { diff --git a/RotationSolver/Commands/RSCommands_OtherCommand.cs b/RotationSolver/Commands/RSCommands_OtherCommand.cs index fae5aaff..32de22f1 100644 --- a/RotationSolver/Commands/RSCommands_OtherCommand.cs +++ b/RotationSolver/Commands/RSCommands_OtherCommand.cs @@ -106,7 +106,7 @@ private static void UpdateSetting(string settingName, string? command) property.SetValue(Service.Config, convertedValue); command = convertedValue?.ToString(); - if (Service.Config.ShowToggledActionInChat) + if (Service.Config.ShowToggledSettingInChat) { Svc.Chat.Print($"Changed setting {property.Name} to {command}"); } @@ -227,14 +227,14 @@ private static Enum GetNextEnumValue(Enum currentEnumValue) private static void ToggleActionCommand(string str) { - foreach (var act in RotationUpdater.RightRotationActions) + foreach (var act in RotationUpdater.CurrentRotationActions) { if (str.StartsWith(act.Name)) { var flag = str[act.Name.Length..].Trim(); act.IsEnabled = bool.TryParse(flag, out var parse) ? parse : !act.IsEnabled; - if (Service.Config.ShowToggledActionInChat) + if (Service.Config.ShowToggledSettingInChat) { Svc.Chat.Print($"Toggled {act.Name} : {act.IsEnabled}"); } @@ -258,7 +258,7 @@ private static void DoActionCommand(string str) if (double.TryParse(timeStr, out var time)) { - foreach (var iAct in RotationUpdater.RightRotationActions) + foreach (var iAct in RotationUpdater.CurrentRotationActions) { if (actName.Equals(iAct.Name, StringComparison.OrdinalIgnoreCase)) { @@ -288,7 +288,7 @@ private static void DoRotationCommand(ICustomRotation customCombo, string str) { if (config.DoCommand(configs, str)) { - if (Service.Config.ShowToggledActionInChat) + if (Service.Config.ShowToggledSettingInChat) { Svc.Chat.Print($"Changed setting {config.DisplayName} to {config.Value}"); return; diff --git a/RotationSolver/Commands/RSCommands_StateSpecialCommand.cs b/RotationSolver/Commands/RSCommands_StateSpecialCommand.cs index a3467ae5..3e3e130a 100644 --- a/RotationSolver/Commands/RSCommands_StateSpecialCommand.cs +++ b/RotationSolver/Commands/RSCommands_StateSpecialCommand.cs @@ -35,7 +35,6 @@ public static unsafe void DoStateCommandType(StateCommandType stateType, int ind { stateType = AdjustStateType(stateType, ref index); } - UpdateState(stateType, role); return stateType; }); @@ -78,18 +77,23 @@ private static void UpdateState(StateCommandType stateType, JobRole role) DataCenter.State = false; DataCenter.IsManual = false; ActionUpdater.NextAction = ActionUpdater.NextGCDAction = null; + if (Service.Config.ShowToggledSettingInChat) {Svc.Chat.Print($"Targeting : Off");} break; + case StateCommandType.Auto: DataCenter.IsManual = false; DataCenter.State = true; ActionUpdater.AutoCancelTime = DateTime.MinValue; + if (Service.Config.ShowToggledSettingInChat) {Svc.Chat.Print($"Auto Targeting : {Service.Config.TargetingTypes[Service.Config.TargetingIndex]}");} break; + case StateCommandType.Manual: DataCenter.IsManual = true; DataCenter.State = true; ActionUpdater.AutoCancelTime = DateTime.MinValue; + if (Service.Config.ShowToggledSettingInChat) {Svc.Chat.Print($"Targeting : Manual");} break; } diff --git a/RotationSolver/Data/UiString.cs b/RotationSolver/Data/UiString.cs index 59970fd2..ac082f12 100644 --- a/RotationSolver/Data/UiString.cs +++ b/RotationSolver/Data/UiString.cs @@ -4,10 +4,10 @@ namespace RotationSolver.Data { internal enum UiString { - [Description("The condition set you chose. Click to modify.")] + [Description("The condition value you chose. Click to modify.")] ConfigWindow_ConditionSetDesc, - [Description("Condition Set")] + [Description("Condition Value")] ConfigWindow_ConditionSet, [Description("Action Condition")] @@ -43,9 +43,6 @@ internal enum UiString [Description("Analyzes PvE combat information in every frame and finds the best action.")] ConfigWindow_About_Punchline, - [Description("Game")] - ConfigWindow_Helper_GameVersion, - [Description("Invalid Rotation! \nPlease update to the latest version or contact {0}!")] ConfigWindow_Rotation_InvalidRotation, @@ -343,7 +340,7 @@ internal enum UiString [Description("Move")] InfoWindowMove, - [Description("Search...")] + [Description("Setting Search")] ConfigWindow_Searching, [Description("Timer")] diff --git a/RotationSolver/UI/ConditionDrawer.cs b/RotationSolver/UI/ConditionDrawer.cs index 2eff917a..04e8139d 100644 --- a/RotationSolver/UI/ConditionDrawer.cs +++ b/RotationSolver/UI/ConditionDrawer.cs @@ -324,7 +324,7 @@ private static void DrawAfter(this ICondition condition, ICustomRotation rotatio private static void DrawAfter(this NamedCondition namedCondition, ICustomRotation _) { ImGuiHelper.SearchCombo($"##Comparation{namedCondition.GetHashCode()}", namedCondition.ConditionName, ref searchTxt, - DataCenter.RightSet.NamedConditions.Select(p => p.Name).ToArray(), i => i.ToString(), i => + DataCenter.CurrentConditionValue.NamedConditions.Select(p => p.Name).ToArray(), i => i.ToString(), i => { namedCondition.ConditionName = i; }, UiString.ConfigWindow_Condition_ConditionName.GetDescription()); diff --git a/RotationSolver/UI/RotationConfigWindow.cs b/RotationSolver/UI/RotationConfigWindow.cs index f6216ad7..081962b2 100644 --- a/RotationSolver/UI/RotationConfigWindow.cs +++ b/RotationSolver/UI/RotationConfigWindow.cs @@ -142,25 +142,52 @@ private static void DrawDutyRotation() } } + private bool CheckErrors(){ + var incompatiblePlugins = DownloadHelper.IncompatiblePlugins ?? Array.Empty(); + var installedIncompatiblePlugin = incompatiblePlugins.FirstOrDefault(p => p.IsInstalled && (int)p.Type == 5); + + if (installedIncompatiblePlugin.Name != null) + { + return true; + } + + if (DataCenter.SystemWarnings != null && DataCenter.SystemWarnings.Any()) + { + return true; + } + + if (Player.Object != null && (Player.Job == Job.CRP || Player.Job == Job.BSM || Player.Job == Job.ARM || Player.Job == Job.GSM || + Player.Job == Job.LTW || Player.Job == Job.WVR || Player.Job == Job.ALC || Player.Job == Job.CUL || + Player.Job == Job.MIN || Player.Job == Job.FSH || Player.Job == Job.BTN)) + { + return true; + } + + return false; + } + private void DrawErrorZone() { + var errorText = "No internal errors."; + float availableWidth = ImGui.GetContentRegionAvail().X; // Get the available width dynamically + var incompatiblePlugins = DownloadHelper.IncompatiblePlugins ?? Array.Empty(); var installedIncompatiblePlugin = incompatiblePlugins.FirstOrDefault(p => p.IsInstalled && (int)p.Type == 5); if (installedIncompatiblePlugin.Name != null) { - string message = $"Disable {installedIncompatiblePlugin.Name}, causes targetting issues."; + errorText = $"Disable {installedIncompatiblePlugin.Name}, causes targetting issues."; + } - float availableWidth = ImGui.GetContentRegionAvail().X; // Get the available width dynamically - using var color = ImRaii.PushColor(ImGuiCol.Text, ImGui.ColorConvertFloat4ToU32(ImGuiColors.DalamudOrange)); - ImGui.PushTextWrapPos(ImGui.GetCursorPos().X + availableWidth); // Set text wrapping position dynamically - ImGui.Text(message); - ImGui.PopTextWrapPos(); // Reset text wrapping position + if (Player.Object != null && (Player.Job == Job.CRP || Player.Job == Job.BSM || Player.Job == Job.ARM || Player.Job == Job.GSM || + Player.Job == Job.LTW || Player.Job == Job.WVR || Player.Job == Job.ALC || Player.Job == Job.CUL || + Player.Job == Job.MIN || Player.Job == Job.FSH || Player.Job == Job.BTN)) + { + errorText = $"You are on an unsupported class: {Player.Job}"; } if (DataCenter.SystemWarnings != null && DataCenter.SystemWarnings.Any()) { - float availableWidth = ImGui.GetContentRegionAvail().X; // Get the available width dynamically var warningsToRemove = new List(); foreach (var warning in DataCenter.SystemWarnings.Keys) @@ -189,27 +216,16 @@ private void DrawErrorZone() { DataCenter.SystemWarnings.Remove(warning); } - } - - if (Player.Object != null && (Player.Job == Job.CRP || Player.Job == Job.BSM || Player.Job == Job.ARM || Player.Job == Job.GSM || - Player.Job == Job.LTW || Player.Job == Job.WVR || Player.Job == Job.ALC || Player.Job == Job.CUL || - Player.Job == Job.MIN || Player.Job == Job.FSH || Player.Job == Job.BTN)) + } + + if (errorText != "No internal errors.") { - float availableWidth = ImGui.GetContentRegionAvail().X; // Get the available width dynamically ImGui.PushTextWrapPos(ImGui.GetCursorPos().X + availableWidth); // Set text wrapping position dynamically ImGui.PushStyleColor(ImGuiCol.Text, ImGuiColors.DalamudOrange); // Set text color to DalamudOrange - ImGui.Text($"You are on an unsupported class: {Player.Job}"); + ImGui.Text(errorText); ImGui.PopStyleColor(); // Reset text color ImGui.PopTextWrapPos(); // Reset text wrapping position } - - else - { - float availableWidth = ImGui.GetContentRegionAvail().X; // Get the available width dynamically - ImGui.PushTextWrapPos(ImGui.GetCursorPos().X + availableWidth); // Set text wrapping position dynamically - ImGui.Text("No Errors"); - ImGui.PopTextWrapPos(); // Reset text wrapping position - } } private void DrawSideBar() @@ -230,44 +246,18 @@ private void DrawSideBar() if (wholeWidth > JOB_ICON_WIDTH * Scale) { DrawDutyRotation(); - DrawErrorZone(); + if (CheckErrors()) { + DrawErrorZone(); - ImGui.Separator(); - ImGui.Spacing(); + ImGui.Separator(); + ImGui.Spacing(); + } ImGui.SetNextItemWidth(wholeWidth); SearchingBox(); ImGui.Spacing(); } - else - { - if (IconSet.GetTexture(46, out var icon)) - { - ImGuiHelper.DrawItemMiddle(() => - { - using var popup = ImRaii.Popup("Searching Popup"); - if (popup) - { - ImGui.SetNextItemWidth(200 * Scale); - SearchingBox(); - if (ImGui.IsKeyDown(ImGuiKey.Enter)) - { - ImGui.CloseCurrentPopup(); - } - } - - var cursor = ImGui.GetCursorPos(); - if (ImGuiHelper.NoPaddingNoColorImageButton(icon.ImGuiHandle, Vector2.One * iconSize)) - { - ImGui.OpenPopup("Searching Popup"); - } - ImGuiHelper.DrawActionOverlay(cursor, iconSize, -1); - ImguiTooltips.HoveredTooltip("Search"); - - }, Math.Max(Scale * MIN_COLUMN_WIDTH, wholeWidth), iconSize); - } - } foreach (var item in Enum.GetValues()) { @@ -440,48 +430,14 @@ private void DrawHeader(float wholeWidth) var iconSize = Math.Max(Scale * MIN_COLUMN_WIDTH, Math.Min(wholeWidth, Scale * JOB_ICON_WIDTH)); var comboSize = ImGui.CalcTextSize(rot.Name).X; - const string slash = " - "; - var gameVersionSize = ImGui.CalcTextSize(slash + rot.GameVersion).X + ImGui.GetStyle().ItemSpacing.X; - var gameVersion = UiString.ConfigWindow_Helper_GameVersion.GetDescription() + ": "; - var drawCenter = ImGui.CalcTextSize(slash + gameVersion + rot.GameVersion).X + iconSize + ImGui.GetStyle().ItemSpacing.X * 3 < wholeWidth; - if (drawCenter) gameVersionSize += ImGui.CalcTextSize(gameVersion).X + ImGui.GetStyle().ItemSpacing.X; - - var horizonalWholeWidth = Math.Max(comboSize, gameVersionSize) + iconSize + ImGui.GetStyle().ItemSpacing.X; - - if (horizonalWholeWidth > wholeWidth) + ImGuiHelper.DrawItemMiddle(() => { - ImGuiHelper.DrawItemMiddle(() => - { - DrawRotationIcon(rotation, iconSize); - }, wholeWidth, iconSize); + DrawRotationIcon(rotation, iconSize); + }, wholeWidth, iconSize); - if (Scale * JOB_ICON_WIDTH < wholeWidth) - { - DrawRotationCombo(comboSize, rotations, rotation, gameVersion); - } - } - else + if (Scale * JOB_ICON_WIDTH < wholeWidth) { - ImGuiHelper.DrawItemMiddle(() => - { - DrawRotationIcon(rotation, iconSize); - - ImGui.SameLine(); - - using var group = ImRaii.Group(); - - DrawRotationCombo(comboSize, rotations, rotation, gameVersion); - ImGui.TextDisabled(slash); - ImGui.SameLine(); - - if (drawCenter) - { - ImGui.TextDisabled(gameVersion); - ImGui.SameLine(); - } - ImGui.Text(rot.GameVersion); - - }, wholeWidth, horizonalWholeWidth); + DrawRotationCombo(comboSize, rotations, rotation); } } } @@ -527,7 +483,7 @@ private void DrawRotationIcon(ICustomRotation rotation, float iconSize) } } - private static void DrawRotationCombo(float comboSize, Type[] rotations, ICustomRotation rotation, string gameVersion) + private static void DrawRotationCombo(float comboSize, Type[] rotations, ICustomRotation rotation) { ImGui.SetNextItemWidth(comboSize); const string popUp = "Rotation Solver Select Rotation"; @@ -589,7 +545,7 @@ private static void DrawRotationCombo(float comboSize, Type[] rotations, ICustom } } - var warning = gameVersion + rot.GameVersion; + var warning = "Game version: " + rot.GameVersion; if (!rotation.IsValid) warning += "\n" + string.Format(UiString.ConfigWindow_Rotation_InvalidRotation.GetDescription(), rotation.GetType().Assembly.GetInfo().Author); @@ -1783,7 +1739,7 @@ static void DrawActionDebug() ImGui.TextWrapped(UiString.ConfigWindow_Actions_ForcedConditionSet_Description.GetDescription()); var rotation = DataCenter.CurrentRotation; - var set = DataCenter.RightSet; + var set = DataCenter.CurrentConditionValue; if (set == null || _activeAction == null || rotation == null) return; set.GetCondition(_activeAction.ID)?.DrawMain(rotation); @@ -1794,7 +1750,7 @@ static void DrawActionDebug() ImGui.TextWrapped(UiString.ConfigWindow_Actions_DisabledConditionSet_Description.GetDescription()); var rotation = DataCenter.CurrentRotation; - var set = DataCenter.RightSet; + var set = DataCenter.CurrentConditionValue; if (set == null || _activeAction == null || rotation == null) return; set.GetDisabledCondition(_activeAction.ID)?.DrawMain(rotation); diff --git a/RotationSolver/UI/RotationConfigWindow_Config.cs b/RotationSolver/UI/RotationConfigWindow_Config.cs index fdc7a428..da6537d3 100644 --- a/RotationSolver/UI/RotationConfigWindow_Config.cs +++ b/RotationSolver/UI/RotationConfigWindow_Config.cs @@ -113,15 +113,15 @@ private static void DrawBasicTimer() { { UiString.ConfigWindow_Basic_SwitchCancelConditionSet.GetDescription, - () => DataCenter.RightSet.SwitchCancelConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.SwitchCancelConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Basic_SwitchManualConditionSet.GetDescription, - () => DataCenter.RightSet.SwitchManualConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.SwitchManualConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Basic_SwitchAutoConditionSet.GetDescription, - () => DataCenter.RightSet.SwitchAutoConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.SwitchAutoConditionSet?.DrawMain(DataCenter.CurrentRotation) }, }) { @@ -133,15 +133,15 @@ private static void DrawBasicTimer() private static void DrawBasicNamedConditions() { // Ensure there is always an empty named condition at the end - if (!DataCenter.RightSet.NamedConditions.Any(c => string.IsNullOrEmpty(c.Name))) + if (!DataCenter.CurrentConditionValue.NamedConditions.Any(c => string.IsNullOrEmpty(c.Name))) { - DataCenter.RightSet.NamedConditions = DataCenter.RightSet.NamedConditions.Append((string.Empty, new ConditionSet())).ToArray(); + DataCenter.CurrentConditionValue.NamedConditions = DataCenter.CurrentConditionValue.NamedConditions.Append((string.Empty, new ConditionSet())).ToArray(); } ImGui.Spacing(); int removeIndex = -1; - for (int i = 0; i < DataCenter.RightSet.NamedConditions.Length; i++) + for (int i = 0; i < DataCenter.CurrentConditionValue.NamedConditions.Length; i++) { var value = _isOpen.TryGetValue(i, out var open) && open; @@ -152,7 +152,7 @@ private static void DrawBasicNamedConditions() ImGui.SetNextItemWidth(width); ImGui.InputTextWithHint($"##Rotation Solver Named Condition{i}", UiString.ConfigWindow_Condition_ConditionName.GetDescription(), - ref DataCenter.RightSet.NamedConditions[i].Name, 1024); + ref DataCenter.CurrentConditionValue.NamedConditions[i].Name, 1024); ImGui.SameLine(); @@ -170,22 +170,22 @@ private static void DrawBasicNamedConditions() if (value && DataCenter.CurrentRotation != null) { - DataCenter.RightSet.NamedConditions[i].Condition?.DrawMain(DataCenter.CurrentRotation); + DataCenter.CurrentConditionValue.NamedConditions[i].Condition?.DrawMain(DataCenter.CurrentRotation); } } // Remove the named condition if needed if (removeIndex > -1) { - var list = DataCenter.RightSet.NamedConditions.ToList(); + var list = DataCenter.CurrentConditionValue.NamedConditions.ToList(); list.RemoveAt(removeIndex); - DataCenter.RightSet.NamedConditions = list.ToArray(); + DataCenter.CurrentConditionValue.NamedConditions = list.ToArray(); } } private static void DrawBasicOthers() { - var set = DataCenter.RightSet; + var set = DataCenter.CurrentConditionValue; const string popUpId = "Right Set Popup"; if (ImGui.Selectable(set.Name, false, ImGuiSelectableFlags.None, new Vector2(0, 20))) @@ -208,7 +208,7 @@ void DeleteFile() if (combos[i].Name == set.Name) { ImGuiHelper.SetNextWidthWithName(set.Name); - ImGui.InputText("##MajorConditionSet", ref set.Name, 100); + ImGui.InputText("##MajorConditionValue", ref set.Name, 100); } else { @@ -328,47 +328,47 @@ private static void DrawHealingActionCondition() { { UiString.ConfigWindow_Auto_HealAreaConditionSet.GetDescription, - () => DataCenter.RightSet.HealAreaConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.HealAreaConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_HealSingleConditionSet.GetDescription, - () => DataCenter.RightSet.HealSingleConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.HealSingleConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_DefenseAreaConditionSet.GetDescription, - () => DataCenter.RightSet.DefenseAreaConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.DefenseAreaConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_DefenseSingleConditionSet.GetDescription, - () => DataCenter.RightSet.DefenseSingleConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.DefenseSingleConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_DispelStancePositionalConditionSet.GetDescription, - () => DataCenter.RightSet.DispelStancePositionalConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.DispelStancePositionalConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_RaiseShirkConditionSet.GetDescription, - () => DataCenter.RightSet.RaiseShirkConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.RaiseShirkConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_MoveForwardConditionSet.GetDescription, - () => DataCenter.RightSet.MoveForwardConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.MoveForwardConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_MoveBackConditionSet.GetDescription, - () => DataCenter.RightSet.MoveBackConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.MoveBackConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_AntiKnockbackConditionSet.GetDescription, - () => DataCenter.RightSet.AntiKnockbackConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.AntiKnockbackConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_SpeedConditionSet.GetDescription, - () => DataCenter.RightSet.SpeedConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.SpeedConditionSet?.DrawMain(DataCenter.CurrentRotation) }, { UiString.ConfigWindow_Auto_NoCastingConditionSet.GetDescription, - () => DataCenter.RightSet.NoCastingConditionSet?.DrawMain(DataCenter.CurrentRotation) + () => DataCenter.CurrentConditionValue.NoCastingConditionSet?.DrawMain(DataCenter.CurrentRotation) }, }) { diff --git a/RotationSolver/UI/SearchableConfigs/CheckBoxSearch.cs b/RotationSolver/UI/SearchableConfigs/CheckBoxSearch.cs index 83520c27..10af73fd 100644 --- a/RotationSolver/UI/SearchableConfigs/CheckBoxSearch.cs +++ b/RotationSolver/UI/SearchableConfigs/CheckBoxSearch.cs @@ -60,7 +60,7 @@ protected override bool Value protected override ConditionSet GetCondition() { - return DataCenter.RightSet.GetDisableCondition(_condition.Key); + return DataCenter.CurrentConditionValue.GetDisableCondition(_condition.Key); } } @@ -78,7 +78,7 @@ protected override bool Value protected override ConditionSet GetCondition() { - return DataCenter.RightSet.GetEnableCondition(_condition.Key); + return DataCenter.CurrentConditionValue.GetEnableCondition(_condition.Key); } } diff --git a/RotationSolver/Updaters/ActionSequencerUpdater.cs b/RotationSolver/Updaters/ActionSequencerUpdater.cs index db64f531..ab2247f2 100644 --- a/RotationSolver/Updaters/ActionSequencerUpdater.cs +++ b/RotationSolver/Updaters/ActionSequencerUpdater.cs @@ -12,9 +12,9 @@ public static void UpdateActionSequencerAction() var customRotation = DataCenter.CurrentRotation; if (customRotation == null) return; - var allActions = RotationUpdater.RightRotationActions; + var allActions = RotationUpdater.CurrentRotationActions; - var set = DataCenter.RightSet; + var set = DataCenter.CurrentConditionValue; if (set == null) return; var disabledActions = new HashSet(); @@ -75,7 +75,7 @@ public static void LoadFiles() { if (_actionSequencerFolder == null) return; - DataCenter.ConditionSets = MajorConditionSet.Read(_actionSequencerFolder); + DataCenter.ConditionSets = MajorConditionValue.Read(_actionSequencerFolder); } public static void AddNew() @@ -92,9 +92,9 @@ public static void AddNew() if (!hasUnnamed) { - var newConditionSets = new List(DataCenter.ConditionSets) + var newConditionSets = new List(DataCenter.ConditionSets) { - new MajorConditionSet() + new MajorConditionValue() }; DataCenter.ConditionSets = newConditionSets.ToArray(); } @@ -102,7 +102,7 @@ public static void AddNew() public static void Delete(string name) { - var newConditionSets = new List(); + var newConditionSets = new List(); foreach (var conditionSet in DataCenter.ConditionSets) { if (conditionSet.Name != name) diff --git a/RotationSolver/Updaters/RotationUpdater.cs b/RotationSolver/Updaters/RotationUpdater.cs index 0d2bfffa..cab6acdc 100644 --- a/RotationSolver/Updaters/RotationUpdater.cs +++ b/RotationSolver/Updaters/RotationUpdater.cs @@ -17,7 +17,7 @@ internal record CustomRotationGroup(Job JobId, Job[] ClassJobIds, Type[] Rotatio internal static CustomRotationGroup[] CustomRotations { get; set; } = []; internal static SortedList DutyRotations { get; set; } = []; - public static IAction[] RightRotationActions { get; private set; } = []; + public static IAction[] CurrentRotationActions { get; private set; } = []; private static DateTime LastRunTime; @@ -553,13 +553,13 @@ private static void UpdateCustomRotation() DataCenter.CurrentRotation = instance; } - RightRotationActions = DataCenter.CurrentRotation?.AllActions ?? Array.Empty(); + CurrentRotationActions = DataCenter.CurrentRotation?.AllActions ?? Array.Empty(); return; } CustomRotation.MoveTarget = null; DataCenter.CurrentRotation = null; - RightRotationActions = Array.Empty(); + CurrentRotationActions = Array.Empty(); static ICustomRotation? GetRotation(Type? t) { diff --git a/RotationSolver/Updaters/StateUpdater.cs b/RotationSolver/Updaters/StateUpdater.cs index 73ba64cc..f3a5de88 100644 --- a/RotationSolver/Updaters/StateUpdater.cs +++ b/RotationSolver/Updaters/StateUpdater.cs @@ -432,24 +432,24 @@ private static AutoStatus StatusFromCmdOrCondition() _ => AutoStatus.None, }; - AddStatus(ref status, AutoStatus.HealAreaSpell | AutoStatus.HealAreaAbility, DataCenter.RightSet.HealAreaConditionSet); - AddStatus(ref status, AutoStatus.HealSingleSpell | AutoStatus.HealSingleAbility, DataCenter.RightSet.HealSingleConditionSet); - AddStatus(ref status, AutoStatus.DefenseArea, DataCenter.RightSet.DefenseAreaConditionSet); - AddStatus(ref status, AutoStatus.DefenseSingle, DataCenter.RightSet.DefenseSingleConditionSet); + AddStatus(ref status, AutoStatus.HealAreaSpell | AutoStatus.HealAreaAbility, DataCenter.CurrentConditionValue.HealAreaConditionSet); + AddStatus(ref status, AutoStatus.HealSingleSpell | AutoStatus.HealSingleAbility, DataCenter.CurrentConditionValue.HealSingleConditionSet); + AddStatus(ref status, AutoStatus.DefenseArea, DataCenter.CurrentConditionValue.DefenseAreaConditionSet); + AddStatus(ref status, AutoStatus.DefenseSingle, DataCenter.CurrentConditionValue.DefenseSingleConditionSet); AddStatus(ref status, AutoStatus.Dispel | AutoStatus.TankStance | AutoStatus.Positional, - DataCenter.RightSet.DispelStancePositionalConditionSet); - AddStatus(ref status, AutoStatus.Raise | AutoStatus.Shirk, DataCenter.RightSet.RaiseShirkConditionSet); - AddStatus(ref status, AutoStatus.MoveForward, DataCenter.RightSet.MoveForwardConditionSet); - AddStatus(ref status, AutoStatus.MoveBack, DataCenter.RightSet.MoveBackConditionSet); - AddStatus(ref status, AutoStatus.AntiKnockback, DataCenter.RightSet.AntiKnockbackConditionSet); + DataCenter.CurrentConditionValue.DispelStancePositionalConditionSet); + AddStatus(ref status, AutoStatus.Raise | AutoStatus.Shirk, DataCenter.CurrentConditionValue.RaiseShirkConditionSet); + AddStatus(ref status, AutoStatus.MoveForward, DataCenter.CurrentConditionValue.MoveForwardConditionSet); + AddStatus(ref status, AutoStatus.MoveBack, DataCenter.CurrentConditionValue.MoveBackConditionSet); + AddStatus(ref status, AutoStatus.AntiKnockback, DataCenter.CurrentConditionValue.AntiKnockbackConditionSet); if (!status.HasFlag(AutoStatus.Burst) && Service.Config.AutoBurst) { status |= AutoStatus.Burst; } - AddStatus(ref status, AutoStatus.Speed, DataCenter.RightSet.SpeedConditionSet); - AddStatus(ref status, AutoStatus.NoCasting, DataCenter.RightSet.NoCastingConditionSet); + AddStatus(ref status, AutoStatus.Speed, DataCenter.CurrentConditionValue.SpeedConditionSet); + AddStatus(ref status, AutoStatus.NoCasting, DataCenter.CurrentConditionValue.NoCastingConditionSet); return status; }