diff --git a/FakeName/Hooker.cs b/FakeName/Hooker.cs index 12153c7..b594b84 100644 --- a/FakeName/Hooker.cs +++ b/FakeName/Hooker.cs @@ -23,13 +23,13 @@ public class Hooker private Hook AtkTextNodeSetTextHook { get; init; } private delegate void SetNamePlateDelegate(IntPtr addon, bool isPrefixTitle, - bool displayTitle, IntPtr titlePtr, IntPtr namePtr, IntPtr fcNamePtr, int iconId); + bool displayTitle, IntPtr titlePtr, IntPtr namePtr, IntPtr fcNamePtr, IntPtr prefix, int iconId); - ///// - ///// https://github.com/Haplo064/JobIcons/blob/master/PluginAddressResolver.cs#L34 - ///// - //[Signature("48 89 5C 24 ?? 48 89 6C 24 ?? 56 57 41 54 41 56 41 57 48 83 EC 40 44 0F B6 E2", DetourName = nameof(SetNamePlateDetour))] - //private Hook SetNamePlateHook { get; init; } + /// + /// https://github.com/shdwp/xivPartyIcons/blob/main/PartyIcons/Api/PluginAddressResolver.cs#L40 + /// + [Signature("E8 ?? ?? ?? ?? E9 ?? ?? ?? ?? 48 8B 5C 24 ?? 45 38 BE", DetourName = nameof(SetNamePlateDetour))] + private Hook SetNamePlateHook { get; init; } public static Dictionary Replacement { get; } = new Dictionary(); @@ -38,7 +38,7 @@ internal unsafe Hooker() SignatureHelper.Initialise(this); AtkTextNodeSetTextHook.Enable(); - //SetNamePlateHook.Enable(); + SetNamePlateHook.Enable(); Service.Framework.Update += Framework_Update; Service.ClientState.Login += ClientState_Login; @@ -47,7 +47,7 @@ internal unsafe Hooker() public unsafe void Dispose() { AtkTextNodeSetTextHook.Dispose(); - //SetNamePlateHook.Dispose(); + SetNamePlateHook.Dispose(); Service.Framework.Update -= Framework_Update; Service.ClientState.Login -= ClientState_Login; } @@ -130,7 +130,7 @@ private void AtkTextNodeSetTextDetour(IntPtr node, IntPtr text) } private unsafe void SetNamePlateDetour(IntPtr namePlateObjectPtr, bool isPrefixTitle, - bool displayTitle, IntPtr titlePtr, IntPtr namePtr, IntPtr fcNamePtr, int iconId) + bool displayTitle, IntPtr titlePtr, IntPtr namePtr, IntPtr fcNamePtr, IntPtr prefix, int iconId) { try { @@ -152,8 +152,8 @@ private unsafe void SetNamePlateDetour(IntPtr namePlateObjectPtr, bool isPrefixT PluginLog.Error(ex, "Failed to change name plate"); } - //SetNamePlateHook.Original(namePlateObjectPtr, isPrefixTitle, displayTitle, - // titlePtr, namePtr, fcNamePtr, iconId); + SetNamePlateHook.Original(namePlateObjectPtr, isPrefixTitle, displayTitle, + titlePtr, namePtr, fcNamePtr, prefix, iconId); }