Skip to content

Commit 9fad6c8

Browse files
authored
Improved Duty Finder Settings (Caraxi#811)
1 parent f00f630 commit 9fad6c8

File tree

2 files changed

+10
-11
lines changed

2 files changed

+10
-11
lines changed

SimpleTweaksPlugin.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@
7474
<Compile Remove="Tweaks\UiAdjustment\HideAchievementsNotifications.cs"/>
7575
<Compile Remove="Tweaks\UiAdjustment\HideGuildhestObjectivePopup.cs"/>
7676
<Compile Remove="Tweaks\UiAdjustment\HideQualityWhenNoHQ.cs"/>
77-
<Compile Remove="Tweaks\UiAdjustment\ImprovedDutyFinderSettings.cs"/>
7877
<Compile Remove="Tweaks\UiAdjustment\ImprovedWorldVisit.cs"/>
7978
<Compile Remove="Tweaks\UiAdjustment\MarketEnhancements.cs"/>
8079
<Compile Remove="Tweaks\UiAdjustment\MoveCutsceneTalk.cs"/>

Tweaks/UiAdjustment/ImprovedDutyFinderSettings.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
using Dalamud.Utility;
55
using Dalamud.Utility.Signatures;
66
using FFXIVClientStructs.FFXIV.Client.Game.UI;
7-
using FFXIVClientStructs.FFXIV.Client.System.Framework;
87
using FFXIVClientStructs.FFXIV.Client.System.Memory;
8+
using FFXIVClientStructs.FFXIV.Client.UI;
99
using FFXIVClientStructs.FFXIV.Component.GUI;
1010
using Lumina.Excel.GeneratedSheets;
1111
using SimpleTweaksPlugin.Events;
@@ -36,13 +36,13 @@ public DutyFinderSettingDisplay(DutyFinderSetting setting, int icon, uint toolti
3636
private SimpleEvent eventManager;
3737

3838
private void HideTooltip(AtkUnitBase* unitBase) {
39-
AtkStage.GetSingleton()->TooltipManager.HideTooltip(unitBase->ID);
39+
AtkStage.Instance()->TooltipManager.HideTooltip(unitBase->Id);
4040
}
4141

4242
private void ShowTooltip(AtkUnitBase* unitBase, AtkResNode* node) {
4343
var tooltipId = GetTooltip();
4444
var tooltip = Service.Data.GetExcelSheet<Addon>()?.GetRow(tooltipId)?.Text.ToDalamudString()?.TextValue ?? $"{Setting}";
45-
AtkStage.GetSingleton()->TooltipManager.ShowTooltip(unitBase->ID, node, tooltip);
45+
AtkStage.Instance()->TooltipManager.ShowTooltip(unitBase->Id, node, tooltip);
4646
}
4747

4848
public SimpleEvent Event {
@@ -128,9 +128,9 @@ private void SetupAddon(AtkUnitBase* unitBase) {
128128
var container = IMemorySpace.GetUISpace()->Create<AtkResNode>();
129129
container->SetWidth(defaultContainer->GetWidth());
130130
container->SetHeight(defaultContainer->GetHeight());
131-
container->SetPositionFloat(defaultContainer->GetX(), defaultContainer->GetY());
131+
container->SetPositionFloat(defaultContainer->GetXFloat(), defaultContainer->GetYFloat());
132132
container->SetScale(1, 1);
133-
container->NodeID = CustomNodes.Get($"{nameof(ImprovedDutyFinderSettings)}_Container");
133+
container->NodeId = CustomNodes.Get($"{nameof(ImprovedDutyFinderSettings)}_Container");
134134
container->Type = NodeType.Res;
135135
container->ToggleVisibility(true);
136136
UiHelper.LinkNodeAfterTargetNode(container, unitBase, defaultContainer);
@@ -144,7 +144,7 @@ private void SetupAddon(AtkUnitBase* unitBase) {
144144
var imgNode = UiHelper.MakeImageNode(CustomNodes.Get($"{nameof(ImprovedDutyFinderSettings)}_Icon_{settingDetail.Setting}"), new UiHelper.PartInfo(0, 0, 24, 24));
145145
UiHelper.LinkNodeAtEnd(imgNode, container, unitBase);
146146

147-
imgNode->AtkResNode.SetPositionFloat(basedOn->GetX(), basedOn->GetY());
147+
imgNode->AtkResNode.SetPositionFloat(basedOn->GetXFloat(), basedOn->GetYFloat());
148148
imgNode->AtkResNode.SetWidth(basedOn->GetWidth());
149149
imgNode->AtkResNode.SetHeight(basedOn->GetHeight());
150150

@@ -290,7 +290,7 @@ private enum DutyFinderSetting {
290290
LimitedLevelingRoulette = 11,
291291
}
292292

293-
[Signature("E8 ?? ?? ?? ?? 48 8B 07 33 F6")]
293+
[Signature("E8 ?? ?? ?? ?? 49 8B 06 33 ED")]
294294
private static delegate* unmanaged<byte*, nint, void> _setContentsFinderSettings;
295295

296296
private static byte GetCurrentSettingValue(DutyFinderSetting dutyFinderSetting) {
@@ -314,8 +314,8 @@ private static byte GetCurrentSettingValue(DutyFinderSetting dutyFinderSetting)
314314

315315
private void ToggleSetting(DutyFinderSetting setting) {
316316
// block setting change if queued for a duty
317-
if (Service.Condition[ConditionFlag.BoundToDuty97]) {
318-
var condition = Service.Data.GetExcelSheet<Lumina.Excel.GeneratedSheets.Condition>()?.GetRow((uint)ConditionFlag.BoundToDuty97)?.LogMessage?.Value?.Text?.ToDalamudString();
317+
if (Service.Condition[ConditionFlag.InDutyQueue]) {
318+
var condition = Service.Data.GetExcelSheet<Condition>()?.GetRow((uint)ConditionFlag.InDutyQueue)?.LogMessage?.Value?.Text?.ToDalamudString();
319319
Service.Toasts.ShowError(condition ?? "Unable to execute command while bound by duty.");
320320
return;
321321
}
@@ -348,7 +348,7 @@ private void ToggleSetting(DutyFinderSetting setting) {
348348
}
349349

350350
fixed (byte* arrayPtr = array) {
351-
_setContentsFinderSettings(arrayPtr, (nint)Framework.Instance()->GetUiModule());
351+
_setContentsFinderSettings(arrayPtr, (nint)UIModule.Instance());
352352
}
353353
}
354354

0 commit comments

Comments
 (0)