muffin v7.4.10
This commit is contained in:
parent
2df81c5d15
commit
b8dd142c23
47 changed files with 3604 additions and 1058 deletions
|
|
@ -35,6 +35,8 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
|
||||
private readonly string[] _grandCompanyNames = new string[4] { "None (manually pick quest)", "Maelstrom", "Twin Adder", "Immortal Flames" };
|
||||
|
||||
private readonly string[] _msqPriorityNames = new string[3] { "Always (MSQ first)", "After Tracked (MSQ last)", "Manual (never auto-accept MSQ)" };
|
||||
|
||||
private readonly EClassJob[] _classJobIds;
|
||||
|
||||
private readonly string[] _classJobNames;
|
||||
|
|
@ -159,6 +161,28 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
base.Configuration.General.GrandCompany = (FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany)currentItem2;
|
||||
Save();
|
||||
}
|
||||
int currentItem3 = (int)base.Configuration.General.MsqPriority;
|
||||
if (ImGui.Combo((ImU8String)"MSQ Priority", ref currentItem3, (ReadOnlySpan<string>)_msqPriorityNames, _msqPriorityNames.Length))
|
||||
{
|
||||
base.Configuration.General.MsqPriority = (Configuration.EMsqPriorityMode)currentItem3;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushFont(UiBuilder.IconFont))
|
||||
{
|
||||
ImGui.TextDisabled(FontAwesomeIcon.InfoCircle.ToIconString());
|
||||
}
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
using (ImRaii.Tooltip())
|
||||
{
|
||||
ImGui.Text("Controls when the Main Scenario Quest (MSQ) is automatically accepted:");
|
||||
ImGui.Spacing();
|
||||
ImGui.BulletText("Always: Auto-accept MSQ immediately");
|
||||
ImGui.BulletText("After Tracked: Complete accepted quests first, then pick up MSQ");
|
||||
ImGui.BulletText("Manual: Never auto-accept MSQ, only do manually accepted quests");
|
||||
}
|
||||
}
|
||||
int num3 = Array.IndexOf(_classJobIds, base.Configuration.General.CombatJob);
|
||||
if (num3 == -1)
|
||||
{
|
||||
|
|
@ -253,10 +277,48 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
ImGui.Text("Questing");
|
||||
using (ImRaii.PushIndent())
|
||||
{
|
||||
bool v7 = base.Configuration.General.CinemaMode;
|
||||
if (ImGui.Checkbox("Cinema Mode (watch cutscenes)", ref v7))
|
||||
bool v7 = base.Configuration.General.AutoSolveQte;
|
||||
if (ImGui.Checkbox("Automatically solve Quick Time Events (QTEs)", ref v7))
|
||||
{
|
||||
base.Configuration.General.CinemaMode = v7;
|
||||
base.Configuration.General.AutoSolveQte = v7;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushFont(UiBuilder.IconFont))
|
||||
{
|
||||
ImGui.TextDisabled(FontAwesomeIcon.InfoCircle.ToIconString());
|
||||
}
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
using (ImRaii.Tooltip())
|
||||
{
|
||||
ImGui.Text("Automatically mashes the button during Active Time Maneuver (ATM)");
|
||||
ImGui.Text("prompts that appear in certain duties and quest battles.");
|
||||
}
|
||||
}
|
||||
bool v8 = base.Configuration.General.AutoSnipe;
|
||||
if (ImGui.Checkbox("Automatically complete snipe quests", ref v8))
|
||||
{
|
||||
base.Configuration.General.AutoSnipe = v8;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushFont(UiBuilder.IconFont))
|
||||
{
|
||||
ImGui.TextDisabled(FontAwesomeIcon.InfoCircle.ToIconString());
|
||||
}
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
using (ImRaii.Tooltip())
|
||||
{
|
||||
ImGui.Text("Automatically completes sniping minigames introduced in Stormblood.");
|
||||
ImGui.Text("When enabled, snipe targets are instantly hit without manual aiming.");
|
||||
}
|
||||
}
|
||||
bool v9 = base.Configuration.General.CinemaMode;
|
||||
if (ImGui.Checkbox("Cinema Mode (watch cutscenes)", ref v9))
|
||||
{
|
||||
base.Configuration.General.CinemaMode = v9;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
|
|
@ -275,16 +337,16 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
ImGui.TextColored(new Vector4(0.7f, 0.7f, 0.7f, 1f), "Recommended for first-time story playthroughs.");
|
||||
}
|
||||
}
|
||||
bool v8 = base.Configuration.General.ConfigureTextAdvance;
|
||||
if (ImGui.Checkbox("Automatically configure TextAdvance with the recommended settings", ref v8))
|
||||
bool v10 = base.Configuration.General.ConfigureTextAdvance;
|
||||
if (ImGui.Checkbox("Automatically configure TextAdvance with the recommended settings", ref v10))
|
||||
{
|
||||
base.Configuration.General.ConfigureTextAdvance = v8;
|
||||
base.Configuration.General.ConfigureTextAdvance = v10;
|
||||
Save();
|
||||
}
|
||||
bool v9 = base.Configuration.General.SkipLowPriorityDuties;
|
||||
if (ImGui.Checkbox("Unlock certain optional dungeons and raids (instead of waiting for completion)", ref v9))
|
||||
bool v11 = base.Configuration.General.SkipLowPriorityDuties;
|
||||
if (ImGui.Checkbox("Unlock certain optional dungeons and raids (instead of waiting for completion)", ref v11))
|
||||
{
|
||||
base.Configuration.General.SkipLowPriorityDuties = v9;
|
||||
base.Configuration.General.SkipLowPriorityDuties = v11;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
|
|
@ -312,10 +374,10 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
}
|
||||
}
|
||||
ImGui.Spacing();
|
||||
bool v10 = base.Configuration.General.AutoStepRefreshEnabled;
|
||||
if (ImGui.Checkbox("Automatically refresh quest steps when stuck", ref v10))
|
||||
bool v12 = base.Configuration.General.AutoStepRefreshEnabled;
|
||||
if (ImGui.Checkbox("Automatically refresh quest steps when stuck", ref v12))
|
||||
{
|
||||
base.Configuration.General.AutoStepRefreshEnabled = v10;
|
||||
base.Configuration.General.AutoStepRefreshEnabled = v12;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
|
|
@ -331,20 +393,20 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
ImGui.Text("This helps resume automated quest completion when interruptions occur.");
|
||||
}
|
||||
}
|
||||
using (ImRaii.Disabled(!v10))
|
||||
using (ImRaii.Disabled(!v12))
|
||||
{
|
||||
ImGui.Indent();
|
||||
int v11 = base.Configuration.General.AutoStepRefreshDelaySeconds;
|
||||
int v13 = base.Configuration.General.AutoStepRefreshDelaySeconds;
|
||||
ImGui.SetNextItemWidth(150f);
|
||||
if (ImGui.SliderInt("Refresh delay (seconds)", ref v11, 10, 180))
|
||||
if (ImGui.SliderInt("Refresh delay (seconds)", ref v13, 10, 180))
|
||||
{
|
||||
base.Configuration.General.AutoStepRefreshDelaySeconds = v11;
|
||||
base.Configuration.General.AutoStepRefreshDelaySeconds = v13;
|
||||
Save();
|
||||
}
|
||||
Vector4 col = new Vector4(0.7f, 0.7f, 0.7f, 1f);
|
||||
ImU8String text4 = new ImU8String(77, 1);
|
||||
text4.AppendLiteral("Quest steps will refresh automatically after ");
|
||||
text4.AppendFormatted(v11);
|
||||
text4.AppendFormatted(v13);
|
||||
text4.AppendLiteral(" seconds if no progress is made.");
|
||||
ImGui.TextColored(in col, text4);
|
||||
ImGui.Unindent();
|
||||
|
|
@ -352,16 +414,48 @@ internal sealed class GeneralConfigComponent : ConfigComponent
|
|||
ImGui.Spacing();
|
||||
ImGui.Separator();
|
||||
ImGui.Text("Priority Quest Management");
|
||||
bool v12 = base.Configuration.General.ClearPriorityQuestsOnLogout;
|
||||
if (ImGui.Checkbox("Clear priority quests on character logout", ref v12))
|
||||
bool v14 = base.Configuration.General.PersistPriorityQuestsBetweenSessions;
|
||||
if (ImGui.Checkbox("Save priority quests between sessions", ref v14))
|
||||
{
|
||||
base.Configuration.General.ClearPriorityQuestsOnLogout = v12;
|
||||
base.Configuration.General.PersistPriorityQuestsBetweenSessions = v14;
|
||||
Save();
|
||||
}
|
||||
bool v13 = base.Configuration.General.ClearPriorityQuestsOnCompletion;
|
||||
if (ImGui.Checkbox("Remove priority quests when completed", ref v13))
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushFont(UiBuilder.IconFont))
|
||||
{
|
||||
base.Configuration.General.ClearPriorityQuestsOnCompletion = v13;
|
||||
ImGui.TextDisabled(FontAwesomeIcon.InfoCircle.ToIconString());
|
||||
}
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
using (ImRaii.Tooltip())
|
||||
{
|
||||
ImGui.Text("When enabled, your priority quest list will be saved and restored");
|
||||
ImGui.Text("when the plugin reloads or the game restarts.");
|
||||
}
|
||||
}
|
||||
bool v15 = base.Configuration.General.ClearPriorityQuestsOnLogout;
|
||||
if (ImGui.Checkbox("Clear priority quests on character logout", ref v15))
|
||||
{
|
||||
base.Configuration.General.ClearPriorityQuestsOnLogout = v15;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushFont(UiBuilder.IconFont))
|
||||
{
|
||||
ImGui.TextDisabled(FontAwesomeIcon.InfoCircle.ToIconString());
|
||||
}
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
using (ImRaii.Tooltip())
|
||||
{
|
||||
ImGui.Text("Clears the priority queue when your character logs out.");
|
||||
ImGui.Text("This also clears the saved list if persistence is enabled.");
|
||||
}
|
||||
}
|
||||
bool v16 = base.Configuration.General.ClearPriorityQuestsOnCompletion;
|
||||
if (ImGui.Checkbox("Remove priority quests when completed", ref v16))
|
||||
{
|
||||
base.Configuration.General.ClearPriorityQuestsOnCompletion = v16;
|
||||
Save();
|
||||
}
|
||||
ImGui.SameLine();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue