From f93842d5c600d3d4f9629f7d78dad489882b7613 Mon Sep 17 00:00:00 2001 From: attick Date: Thu, 7 Nov 2019 11:50:44 -0500 Subject: [PATCH 1/5] Separate vanilla icons from custom ones. --- Dalamud/Game/Internal/Gui/IconReplacer.cs | 484 +++++++++++----------- 1 file changed, 243 insertions(+), 241 deletions(-) diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index 4ccb5d1ed..c831f8274 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -26,7 +26,8 @@ namespace Dalamud.Game.Internal.Gui { private IntPtr byteBase; private Dalamud dalamud; - private HashSet UsedIDs; + private HashSet CustomIDs; + private HashSet VanillaIDs; public unsafe IconReplacer(Dalamud dalamud, SigScanner scanner) { this.dalamud = dalamud; @@ -37,7 +38,8 @@ namespace Dalamud.Game.Internal.Gui { this.comboTimer = byteBase + 0x1BB5B50; this.lastComboMove = byteBase + 0x1BB5B54; - UsedIDs = new HashSet(); + CustomIDs = new HashSet(); + VanillaIDs = new HashSet(); PopulateDict(); @@ -80,7 +82,7 @@ namespace Dalamud.Game.Internal.Gui { // Check if player is loaded in by trying to get their buffs. // If not, skip everything until we are (game will crash cause I'm lazy). - /* + if (activeBuffArray == IntPtr.Zero) { try { activeBuffArray = FindBuffAddress(); @@ -91,9 +93,9 @@ namespace Dalamud.Game.Internal.Gui { return this.iconHook.Original(self, actionID); } } - */ - if (!this.UsedIDs.Contains(actionID)) return actionID; + if (this.VanillaIDs.Contains(actionID)) return this.iconHook.Original(self, actionID); + if (!this.CustomIDs.Contains(actionID)) return actionID; // TODO: this is currently broken // As it stands, don't rely on localCharacter.level for anything. @@ -839,11 +841,11 @@ namespace Dalamud.Game.Internal.Gui { return this.iconHook.Original(self, actionID); } - private bool SearchBuffArray(short needle) {/* + private bool SearchBuffArray(short needle) { for (int i = 0; i < 60; i++) { if (Marshal.ReadInt16(activeBuffArray + 4 * i) == needle) return true; } - */ + return false; } @@ -860,240 +862,240 @@ namespace Dalamud.Game.Internal.Gui { private void PopulateDict() { - UsedIDs.Add(16477); - UsedIDs.Add(88); - UsedIDs.Add(84); - UsedIDs.Add(3632); - UsedIDs.Add(16468); - UsedIDs.Add(3538); - UsedIDs.Add(3539); - UsedIDs.Add(16457); - UsedIDs.Add(42); - UsedIDs.Add(45); - UsedIDs.Add(16462); - UsedIDs.Add(7480); - UsedIDs.Add(7481); - UsedIDs.Add(7482); - UsedIDs.Add(7484); - UsedIDs.Add(7485); - UsedIDs.Add(3563); - UsedIDs.Add(2255); - UsedIDs.Add(16488); - UsedIDs.Add(16145); - UsedIDs.Add(16146); - UsedIDs.Add(16149); - UsedIDs.Add(7413); - UsedIDs.Add(2870); - UsedIDs.Add(3575); - UsedIDs.Add(149); - UsedIDs.Add(17055); - UsedIDs.Add(3582); - UsedIDs.Add(3581); - UsedIDs.Add(163); - UsedIDs.Add(16508); - UsedIDs.Add(16510); - UsedIDs.Add(16543); - UsedIDs.Add(167); - UsedIDs.Add(15994); - UsedIDs.Add(15993); - UsedIDs.Add(16007); - UsedIDs.Add(16008); - UsedIDs.Add(16531); - UsedIDs.Add(16534); - UsedIDs.Add(3559); - UsedIDs.Add(97); - UsedIDs.Add(16525); - UsedIDs.Add(16524); - UsedIDs.Add(7516); - UsedIDs.Add(0x3e75); - UsedIDs.Add(0x3e76); - UsedIDs.Add(0x3e77); - UsedIDs.Add(0x3e78); - UsedIDs.Add(0x3e7d); - UsedIDs.Add(0x3e7e); - UsedIDs.Add(0x3e86); - UsedIDs.Add(0x3f10); - UsedIDs.Add(0x3f25); - UsedIDs.Add(0x3f1b); - UsedIDs.Add(0x3f1c); - UsedIDs.Add(0x3f1d); - UsedIDs.Add(0x3f1e); - UsedIDs.Add(0x451f); - UsedIDs.Add(0x42ff); - UsedIDs.Add(0x4300); - UsedIDs.Add(0x49d4); - UsedIDs.Add(0x49d5); - UsedIDs.Add(0x49e9); - UsedIDs.Add(0x49ea); - UsedIDs.Add(0x49f4); - UsedIDs.Add(0x49f7); - UsedIDs.Add(0x49f9); - UsedIDs.Add(0x4a06); - UsedIDs.Add(0x4a31); - UsedIDs.Add(0x4a32); - UsedIDs.Add(0x4a35); - UsedIDs.Add(0x4792); - UsedIDs.Add(0x452f); - UsedIDs.Add(0x453f); - UsedIDs.Add(0x454c); - UsedIDs.Add(0x455c); - UsedIDs.Add(0x455d); - UsedIDs.Add(0x4561); - UsedIDs.Add(0x4565); - UsedIDs.Add(0x4566); - UsedIDs.Add(0x45a0); - UsedIDs.Add(0x45c8); - UsedIDs.Add(0x45c9); - UsedIDs.Add(0x45cd); - UsedIDs.Add(0x4197); - UsedIDs.Add(0x4199); - UsedIDs.Add(0x419b); - UsedIDs.Add(0x419d); - UsedIDs.Add(0x419f); - UsedIDs.Add(0x4198); - UsedIDs.Add(0x419a); - UsedIDs.Add(0x419c); - UsedIDs.Add(0x419e); - UsedIDs.Add(0x41a0); - UsedIDs.Add(0x41a1); - UsedIDs.Add(0x41a2); - UsedIDs.Add(0x41a3); - UsedIDs.Add(0x417e); - UsedIDs.Add(0x404f); - UsedIDs.Add(0x4051); - UsedIDs.Add(0x4052); - UsedIDs.Add(0x4055); - UsedIDs.Add(0x4053); - UsedIDs.Add(0x4056); - UsedIDs.Add(0x405e); - UsedIDs.Add(0x405f); - UsedIDs.Add(0x4063); - UsedIDs.Add(0x406f); - UsedIDs.Add(0x4074); - UsedIDs.Add(0x4075); - UsedIDs.Add(0x4076); - UsedIDs.Add(0x407d); - UsedIDs.Add(0x407f); - UsedIDs.Add(0x4083); - UsedIDs.Add(0x4080); - UsedIDs.Add(0x4081); - UsedIDs.Add(0x4082); - UsedIDs.Add(0x4084); - UsedIDs.Add(0x408e); - UsedIDs.Add(0x4091); - UsedIDs.Add(0x4092); - UsedIDs.Add(0x4094); - UsedIDs.Add(0x4095); - UsedIDs.Add(0x409c); - UsedIDs.Add(0x409d); - UsedIDs.Add(0x40aa); - UsedIDs.Add(0x40ab); - UsedIDs.Add(0x40ad); - UsedIDs.Add(0x40ae); - UsedIDs.Add(0x272b); - UsedIDs.Add(0x222a); - UsedIDs.Add(0x222d); - UsedIDs.Add(0x222e); - UsedIDs.Add(0x223b); - UsedIDs.Add(0x2265); - UsedIDs.Add(0x2267); - UsedIDs.Add(0x2268); - UsedIDs.Add(0x2269); - UsedIDs.Add(0x2274); - UsedIDs.Add(0x2290); - UsedIDs.Add(0x2291); - UsedIDs.Add(0x2292); - UsedIDs.Add(0x229c); - UsedIDs.Add(0x229e); - UsedIDs.Add(0x22a8); - UsedIDs.Add(0x22b3); - UsedIDs.Add(0x22b5); - UsedIDs.Add(0x22b7); - UsedIDs.Add(0x22d1); - UsedIDs.Add(0x4575); - UsedIDs.Add(0x2335); - UsedIDs.Add(0x1ebb); - UsedIDs.Add(0x1cdd); - UsedIDs.Add(0x1cee); - UsedIDs.Add(0x1cef); - UsedIDs.Add(0x1cf1); - UsedIDs.Add(0x1cf3); - UsedIDs.Add(0x1cf4); - UsedIDs.Add(0x1cf7); - UsedIDs.Add(0x1cfc); - UsedIDs.Add(0x1d17); - UsedIDs.Add(0x1d00); - UsedIDs.Add(0x1d01); - UsedIDs.Add(0x1d05); - UsedIDs.Add(0x1d07); - UsedIDs.Add(0x1d0b); - UsedIDs.Add(0x1d0d); - UsedIDs.Add(0x1d0f); - UsedIDs.Add(0x1d12); - UsedIDs.Add(0x1d13); - UsedIDs.Add(0x1d4f); - UsedIDs.Add(0x1d64); - UsedIDs.Add(0x1d50); - UsedIDs.Add(0x1d58); - UsedIDs.Add(0x1d59); - UsedIDs.Add(0x1d51); - UsedIDs.Add(0x1d53); - UsedIDs.Add(0x1d66); - UsedIDs.Add(0x1d55); - UsedIDs.Add(0xdda); - UsedIDs.Add(0xddd); - UsedIDs.Add(0xdde); - UsedIDs.Add(0xde3); - UsedIDs.Add(0xdf0); - UsedIDs.Add(0xdfb); - UsedIDs.Add(0xe00); - UsedIDs.Add(0xe0b); - UsedIDs.Add(0xe0c); - UsedIDs.Add(0xe0e); - UsedIDs.Add(0xe0f); - UsedIDs.Add(0xe11); - UsedIDs.Add(0xfed); - UsedIDs.Add(0xff7); - UsedIDs.Add(0xffb); - UsedIDs.Add(0xfe9); - UsedIDs.Add(0xb30); - UsedIDs.Add(0x12e); - UsedIDs.Add(0x8d3); - UsedIDs.Add(0x8d4); - UsedIDs.Add(0x8d5); - UsedIDs.Add(0x8d7); - UsedIDs.Add(0xb32); - UsedIDs.Add(0xb34); - UsedIDs.Add(0xb38); - UsedIDs.Add(0xb39); - UsedIDs.Add(0xb3e); - UsedIDs.Add(0x12d); - UsedIDs.Add(0x15); - UsedIDs.Add(0x26); - UsedIDs.Add(0x31); - UsedIDs.Add(0x33); - UsedIDs.Add(0x4b); - UsedIDs.Add(0x5c); - UsedIDs.Add(0x62); - UsedIDs.Add(0x64); - UsedIDs.Add(0x71); - UsedIDs.Add(0x77); - UsedIDs.Add(0x7f); - UsedIDs.Add(0x79); - UsedIDs.Add(0x84); - UsedIDs.Add(0x90); - UsedIDs.Add(0x99); - UsedIDs.Add(0xa4); - UsedIDs.Add(0xb2); - UsedIDs.Add(0xa8); - UsedIDs.Add(0xac); - UsedIDs.Add(0xb8); - UsedIDs.Add(0xe2); - UsedIDs.Add(0x10f); - UsedIDs.Add(0xf3); - UsedIDs.Add(0x10e); - UsedIDs.Add(0x110); - UsedIDs.Add(0x111); + CustomIDs.Add(16477); + CustomIDs.Add(88); + CustomIDs.Add(84); + CustomIDs.Add(3632); + CustomIDs.Add(16468); + CustomIDs.Add(3538); + CustomIDs.Add(3539); + CustomIDs.Add(16457); + CustomIDs.Add(42); + CustomIDs.Add(45); + CustomIDs.Add(16462); + CustomIDs.Add(7480); + CustomIDs.Add(7481); + CustomIDs.Add(7482); + CustomIDs.Add(7484); + CustomIDs.Add(7485); + CustomIDs.Add(3563); + CustomIDs.Add(2255); + CustomIDs.Add(16488); + CustomIDs.Add(16145); + CustomIDs.Add(16146); + CustomIDs.Add(16149); + CustomIDs.Add(7413); + CustomIDs.Add(2870); + CustomIDs.Add(3575); + CustomIDs.Add(149); + CustomIDs.Add(17055); + CustomIDs.Add(3582); + CustomIDs.Add(3581); + CustomIDs.Add(163); + CustomIDs.Add(16508); + CustomIDs.Add(16510); + CustomIDs.Add(16543); + CustomIDs.Add(167); + CustomIDs.Add(15994); + CustomIDs.Add(15993); + CustomIDs.Add(16007); + CustomIDs.Add(16008); + CustomIDs.Add(16531); + CustomIDs.Add(16534); + CustomIDs.Add(3559); + CustomIDs.Add(97); + CustomIDs.Add(16525); + CustomIDs.Add(16524); + CustomIDs.Add(7516); + VanillaIDs.Add(0x3e75); + VanillaIDs.Add(0x3e76); + VanillaIDs.Add(0x3e77); + VanillaIDs.Add(0x3e78); + VanillaIDs.Add(0x3e7d); + VanillaIDs.Add(0x3e7e); + VanillaIDs.Add(0x3e86); + VanillaIDs.Add(0x3f10); + VanillaIDs.Add(0x3f25); + VanillaIDs.Add(0x3f1b); + VanillaIDs.Add(0x3f1c); + VanillaIDs.Add(0x3f1d); + VanillaIDs.Add(0x3f1e); + VanillaIDs.Add(0x451f); + VanillaIDs.Add(0x42ff); + VanillaIDs.Add(0x4300); + VanillaIDs.Add(0x49d4); + VanillaIDs.Add(0x49d5); + VanillaIDs.Add(0x49e9); + VanillaIDs.Add(0x49ea); + VanillaIDs.Add(0x49f4); + VanillaIDs.Add(0x49f7); + VanillaIDs.Add(0x49f9); + VanillaIDs.Add(0x4a06); + VanillaIDs.Add(0x4a31); + VanillaIDs.Add(0x4a32); + VanillaIDs.Add(0x4a35); + VanillaIDs.Add(0x4792); + VanillaIDs.Add(0x452f); + VanillaIDs.Add(0x453f); + VanillaIDs.Add(0x454c); + VanillaIDs.Add(0x455c); + VanillaIDs.Add(0x455d); + VanillaIDs.Add(0x4561); + VanillaIDs.Add(0x4565); + VanillaIDs.Add(0x4566); + VanillaIDs.Add(0x45a0); + VanillaIDs.Add(0x45c8); + VanillaIDs.Add(0x45c9); + VanillaIDs.Add(0x45cd); + VanillaIDs.Add(0x4197); + VanillaIDs.Add(0x4199); + VanillaIDs.Add(0x419b); + VanillaIDs.Add(0x419d); + VanillaIDs.Add(0x419f); + VanillaIDs.Add(0x4198); + VanillaIDs.Add(0x419a); + VanillaIDs.Add(0x419c); + VanillaIDs.Add(0x419e); + VanillaIDs.Add(0x41a0); + VanillaIDs.Add(0x41a1); + VanillaIDs.Add(0x41a2); + VanillaIDs.Add(0x41a3); + VanillaIDs.Add(0x417e); + VanillaIDs.Add(0x404f); + VanillaIDs.Add(0x4051); + VanillaIDs.Add(0x4052); + VanillaIDs.Add(0x4055); + VanillaIDs.Add(0x4053); + VanillaIDs.Add(0x4056); + VanillaIDs.Add(0x405e); + VanillaIDs.Add(0x405f); + VanillaIDs.Add(0x4063); + VanillaIDs.Add(0x406f); + VanillaIDs.Add(0x4074); + VanillaIDs.Add(0x4075); + VanillaIDs.Add(0x4076); + VanillaIDs.Add(0x407d); + VanillaIDs.Add(0x407f); + VanillaIDs.Add(0x4083); + VanillaIDs.Add(0x4080); + VanillaIDs.Add(0x4081); + VanillaIDs.Add(0x4082); + VanillaIDs.Add(0x4084); + VanillaIDs.Add(0x408e); + VanillaIDs.Add(0x4091); + VanillaIDs.Add(0x4092); + VanillaIDs.Add(0x4094); + VanillaIDs.Add(0x4095); + VanillaIDs.Add(0x409c); + VanillaIDs.Add(0x409d); + VanillaIDs.Add(0x40aa); + VanillaIDs.Add(0x40ab); + VanillaIDs.Add(0x40ad); + VanillaIDs.Add(0x40ae); + VanillaIDs.Add(0x272b); + VanillaIDs.Add(0x222a); + VanillaIDs.Add(0x222d); + VanillaIDs.Add(0x222e); + VanillaIDs.Add(0x223b); + VanillaIDs.Add(0x2265); + VanillaIDs.Add(0x2267); + VanillaIDs.Add(0x2268); + VanillaIDs.Add(0x2269); + VanillaIDs.Add(0x2274); + VanillaIDs.Add(0x2290); + VanillaIDs.Add(0x2291); + VanillaIDs.Add(0x2292); + VanillaIDs.Add(0x229c); + VanillaIDs.Add(0x229e); + VanillaIDs.Add(0x22a8); + VanillaIDs.Add(0x22b3); + VanillaIDs.Add(0x22b5); + VanillaIDs.Add(0x22b7); + VanillaIDs.Add(0x22d1); + VanillaIDs.Add(0x4575); + VanillaIDs.Add(0x2335); + VanillaIDs.Add(0x1ebb); + VanillaIDs.Add(0x1cdd); + VanillaIDs.Add(0x1cee); + VanillaIDs.Add(0x1cef); + VanillaIDs.Add(0x1cf1); + VanillaIDs.Add(0x1cf3); + VanillaIDs.Add(0x1cf4); + VanillaIDs.Add(0x1cf7); + VanillaIDs.Add(0x1cfc); + VanillaIDs.Add(0x1d17); + VanillaIDs.Add(0x1d00); + VanillaIDs.Add(0x1d01); + VanillaIDs.Add(0x1d05); + VanillaIDs.Add(0x1d07); + VanillaIDs.Add(0x1d0b); + VanillaIDs.Add(0x1d0d); + VanillaIDs.Add(0x1d0f); + VanillaIDs.Add(0x1d12); + VanillaIDs.Add(0x1d13); + VanillaIDs.Add(0x1d4f); + VanillaIDs.Add(0x1d64); + VanillaIDs.Add(0x1d50); + VanillaIDs.Add(0x1d58); + VanillaIDs.Add(0x1d59); + VanillaIDs.Add(0x1d51); + VanillaIDs.Add(0x1d53); + VanillaIDs.Add(0x1d66); + VanillaIDs.Add(0x1d55); + VanillaIDs.Add(0xdda); + VanillaIDs.Add(0xddd); + VanillaIDs.Add(0xdde); + VanillaIDs.Add(0xde3); + VanillaIDs.Add(0xdf0); + VanillaIDs.Add(0xdfb); + VanillaIDs.Add(0xe00); + VanillaIDs.Add(0xe0b); + VanillaIDs.Add(0xe0c); + VanillaIDs.Add(0xe0e); + VanillaIDs.Add(0xe0f); + VanillaIDs.Add(0xe11); + VanillaIDs.Add(0xfed); + VanillaIDs.Add(0xff7); + VanillaIDs.Add(0xffb); + VanillaIDs.Add(0xfe9); + VanillaIDs.Add(0xb30); + VanillaIDs.Add(0x12e); + VanillaIDs.Add(0x8d3); + VanillaIDs.Add(0x8d4); + VanillaIDs.Add(0x8d5); + VanillaIDs.Add(0x8d7); + VanillaIDs.Add(0xb32); + VanillaIDs.Add(0xb34); + VanillaIDs.Add(0xb38); + VanillaIDs.Add(0xb39); + VanillaIDs.Add(0xb3e); + VanillaIDs.Add(0x12d); + VanillaIDs.Add(0x15); + VanillaIDs.Add(0x26); + VanillaIDs.Add(0x31); + VanillaIDs.Add(0x33); + VanillaIDs.Add(0x4b); + VanillaIDs.Add(0x5c); + VanillaIDs.Add(0x62); + VanillaIDs.Add(0x64); + VanillaIDs.Add(0x71); + VanillaIDs.Add(0x77); + VanillaIDs.Add(0x7f); + VanillaIDs.Add(0x79); + VanillaIDs.Add(0x84); + VanillaIDs.Add(0x90); + VanillaIDs.Add(0x99); + VanillaIDs.Add(0xa4); + VanillaIDs.Add(0xb2); + VanillaIDs.Add(0xa8); + VanillaIDs.Add(0xac); + VanillaIDs.Add(0xb8); + VanillaIDs.Add(0xe2); + VanillaIDs.Add(0x10f); + VanillaIDs.Add(0xf3); + VanillaIDs.Add(0x10e); + VanillaIDs.Add(0x110); + VanillaIDs.Add(0x111); } } } From 5530e083df5e5a1cc72128a380d6f10392d00d39 Mon Sep 17 00:00:00 2001 From: attick Date: Thu, 7 Nov 2019 11:53:19 -0500 Subject: [PATCH 2/5] re-disable buff array search --- Dalamud/Game/Internal/Gui/IconReplacer.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index c831f8274..cd9027efd 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -841,11 +841,11 @@ namespace Dalamud.Game.Internal.Gui { return this.iconHook.Original(self, actionID); } - private bool SearchBuffArray(short needle) { + private bool SearchBuffArray(short needle) {/* for (int i = 0; i < 60; i++) { if (Marshal.ReadInt16(activeBuffArray + 4 * i) == needle) return true; } - + */ return false; } From 950f546a17564d934795aff2d50df37c088446b2 Mon Sep 17 00:00:00 2001 From: attick Date: Thu, 7 Nov 2019 11:54:30 -0500 Subject: [PATCH 3/5] Don't forget to re-disable the vtable lookup. --- Dalamud/Game/Internal/Gui/IconReplacer.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index cd9027efd..99a54b8bd 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -82,7 +82,7 @@ namespace Dalamud.Game.Internal.Gui { // Check if player is loaded in by trying to get their buffs. // If not, skip everything until we are (game will crash cause I'm lazy). - + /* if (activeBuffArray == IntPtr.Zero) { try { activeBuffArray = FindBuffAddress(); @@ -93,7 +93,7 @@ namespace Dalamud.Game.Internal.Gui { return this.iconHook.Original(self, actionID); } } - + */ if (this.VanillaIDs.Contains(actionID)) return this.iconHook.Original(self, actionID); if (!this.CustomIDs.Contains(actionID)) return actionID; From 17c1febabc6ed2b06ff51350547413732eb0b749 Mon Sep 17 00:00:00 2001 From: attick Date: Tue, 12 Nov 2019 14:41:15 -0500 Subject: [PATCH 4/5] Update icon offsets for 5.11 --- Dalamud/Game/ClientState/ClientStateAddressResolver.cs | 2 +- Dalamud/Game/Internal/Gui/IconReplacer.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dalamud/Game/ClientState/ClientStateAddressResolver.cs b/Dalamud/Game/ClientState/ClientStateAddressResolver.cs index 885f0b31e..933cf1784 100644 --- a/Dalamud/Game/ClientState/ClientStateAddressResolver.cs +++ b/Dalamud/Game/ClientState/ClientStateAddressResolver.cs @@ -15,7 +15,7 @@ namespace Dalamud.Game.ClientState protected override void Setup64Bit(SigScanner sig) { ActorTable = sig.Module.BaseAddress + 0x1C01D90; LocalContentId = sig.Module.BaseAddress + 0x1C2E000; - JobGaugeData = sig.Module.BaseAddress + 0x1BFD110; + JobGaugeData = sig.Module.BaseAddress + 0x1BF8110; } } } diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index 99a54b8bd..011b89cca 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -35,8 +35,8 @@ namespace Dalamud.Game.Internal.Gui { this.Address.Setup(scanner); this.byteBase = scanner.Module.BaseAddress; - this.comboTimer = byteBase + 0x1BB5B50; - this.lastComboMove = byteBase + 0x1BB5B54; + this.comboTimer = byteBase + 0x1BB0B50; + this.lastComboMove = byteBase + 0x1BB0B54; CustomIDs = new HashSet(); VanillaIDs = new HashSet(); From f0cf722996e60efc8250bfb9be41edc4d8b4a222 Mon Sep 17 00:00:00 2001 From: attick Date: Fri, 15 Nov 2019 16:08:47 -0500 Subject: [PATCH 5/5] Disable localPlayer for the time being. --- Dalamud/Game/Internal/Gui/IconReplacer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index 011b89cca..9b0a1d0a8 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -99,7 +99,7 @@ namespace Dalamud.Game.Internal.Gui { // TODO: this is currently broken // As it stands, don't rely on localCharacter.level for anything. - var localPlayer = this.dalamud.ClientState.LocalPlayer; + //var localPlayer = this.dalamud.ClientState.LocalPlayer; // Don't clutter the spaghetti any worse than it already is. var lastMove = Marshal.ReadInt32(this.lastComboMove);