diff --git a/Dalamud/Dalamud.cs b/Dalamud/Dalamud.cs index 98708a4c5..589b5093e 100644 --- a/Dalamud/Dalamud.cs +++ b/Dalamud/Dalamud.cs @@ -73,7 +73,7 @@ namespace Dalamud { this.PluginManager = new PluginManager(this, info.PluginDirectory, info.DefaultPluginDirectory); this.IconReplacer = new IconReplacer(this, this.sigScanner); - + try { this.PluginManager.LoadPlugins(); } catch (Exception ex) { diff --git a/Dalamud/Game/ClientState/ClientStateAddressResolver.cs b/Dalamud/Game/ClientState/ClientStateAddressResolver.cs index 01a54a7c8..afe8ef25d 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 + 0x1B29B40; LocalContentId = sig.Module.BaseAddress + 0x1B58B60; - JobGaugeData = sig.Module.BaseAddress + 0x1B2D4C0; + JobGaugeData = sig.Module.BaseAddress + 0x1BFD110; } } } diff --git a/Dalamud/Game/ClientState/Structs/JobGauge/DRKGauge.cs b/Dalamud/Game/ClientState/Structs/JobGauge/DRKGauge.cs index 052b4e8ed..5c711cf57 100644 --- a/Dalamud/Game/ClientState/Structs/JobGauge/DRKGauge.cs +++ b/Dalamud/Game/ClientState/Structs/JobGauge/DRKGauge.cs @@ -8,7 +8,7 @@ using System.Threading.Tasks; namespace Dalamud.Game.ClientState.Structs.JobGauge { [StructLayout(LayoutKind.Explicit)] public struct DRKGauge { - [FieldOffset(0)] public short Blood; + [FieldOffset(0)] public byte Blood; [FieldOffset(2)] public short DarksideTimeRemaining; [FieldOffset(4)] private byte DarkArtsState; [FieldOffset(6)] public short ShadowTimeRemaining; diff --git a/Dalamud/Game/Internal/Gui/IconReplacer.cs b/Dalamud/Game/Internal/Gui/IconReplacer.cs index 751a811ac..7f89b401c 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacer.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacer.cs @@ -32,8 +32,8 @@ namespace Dalamud.Game.Internal.Gui { this.Address.Setup(scanner); this.byteBase = scanner.Module.BaseAddress; - this.comboTimer = byteBase + 0x1AE1B10; - this.lastComboMove = byteBase + 0x1AE1B14; + this.comboTimer = byteBase + 0x1BB5B50; + this.lastComboMove = byteBase + 0x1BB5B54; Log.Verbose("===== H O T B A R S ====="); Log.Verbose("IsIconReplaceable address {IsIconReplaceable}", Address.IsIconReplaceable); @@ -85,8 +85,9 @@ namespace Dalamud.Game.Internal.Gui { } } - // TODO: Update localCharacter without destroying the log with debug messages + // TODO: this is currently broken // As it stands, don't rely on localCharacter.level for anything. + /* if (localCharacter == null) { try { localCharacter = dalamud.ClientState.LocalPlayer; @@ -96,12 +97,14 @@ namespace Dalamud.Game.Internal.Gui { return this.iconHook.Original(self, actionID); } } + */ // Don't clutter the spaghetti any worse than it already is. int lastMove = Marshal.ReadInt32(lastComboMove); float comboTime = (float)Marshal.ReadInt32(comboTimer); - localCharacter = dalamud.ClientState.LocalPlayer; - byte level = localCharacter.Level; + //localCharacter = dalamud.ClientState.LocalPlayer; + //byte level = localCharacter.Level; + byte level = 80; // DRAGOON // TODO: Jump/High Jump into Mirage Dive @@ -848,7 +851,7 @@ namespace Dalamud.Game.Internal.Gui { private unsafe delegate int* getArray(long* address); private unsafe IntPtr FindBuffAddress() { - IntPtr randomAddress = byteBase + 0x1b2c970; + IntPtr randomAddress = byteBase + 0x1c04be0; IntPtr num = Marshal.ReadIntPtr(randomAddress); IntPtr step2 = (IntPtr)(Marshal.ReadInt64(num) + 0x248); IntPtr step3 = Marshal.ReadIntPtr(step2); diff --git a/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs b/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs index 77e8a5859..dd84a7bfb 100644 --- a/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs +++ b/Dalamud/Game/Internal/Gui/IconReplacerAddressResolver.cs @@ -10,8 +10,8 @@ namespace Dalamud.Game.Internal.Gui { public IntPtr IsIconReplaceable { get; private set; } protected override void Setup64Bit(SigScanner sig) { - this.GetIcon = sig.ScanText("81 fa d4 08 00 00 7f 4b 74 44 8d 42 eb 3d a3 00 00 00"); - this.IsIconReplaceable = sig.ScanText("81 f9 d4 08 00 00 7f 33 0f 84 fa 01 00 00 83 c1 eb 81 f9 a3 00 00 00"); + this.GetIcon = sig.ScanText("48 89 5c 24 08 48 89 6c 24 10 48 89 74 24 18 57 48 83 ec 30 8b da be dd 1c 00 00 bd d3 0d 00 00"); + this.IsIconReplaceable = sig.ScanText("81 f9 2e 01 00 00 7f 39 81 f9 2d 01 00 00 0f 8d 11 02 00 00 83 c1 eb"); } } }