From 40bdd6b41c968d5377c83400f99d4fed09ac7ad2 Mon Sep 17 00:00:00 2001 From: liam Date: Wed, 11 Aug 2021 12:34:15 -0400 Subject: [PATCH] namespace and SeString read change --- Dalamud/Game/Gui/{ => FlyText}/FlyTextGui.cs | 7 ++++--- .../FlyTextGuiAddressResolver.cs | 4 ++-- Dalamud/Game/Gui/{ => FlyText}/FlyTextKind.cs | 2 +- Dalamud/Game/Gui/GameGui.cs | 1 + .../Text/SeStringHandling/SeStringManager.cs | 20 ------------------- .../Interface/Internal/Windows/DataWindow.cs | 1 + 6 files changed, 9 insertions(+), 26 deletions(-) rename Dalamud/Game/Gui/{ => FlyText}/FlyTextGui.cs (98%) rename Dalamud/Game/Gui/{ => FlyText}/FlyTextGuiAddressResolver.cs (95%) rename Dalamud/Game/Gui/{ => FlyText}/FlyTextKind.cs (99%) diff --git a/Dalamud/Game/Gui/FlyTextGui.cs b/Dalamud/Game/Gui/FlyText/FlyTextGui.cs similarity index 98% rename from Dalamud/Game/Gui/FlyTextGui.cs rename to Dalamud/Game/Gui/FlyText/FlyTextGui.cs index ef0afee9d..aa18d98c7 100644 --- a/Dalamud/Game/Gui/FlyTextGui.cs +++ b/Dalamud/Game/Gui/FlyText/FlyTextGui.cs @@ -5,10 +5,11 @@ using System.Threading.Tasks; using Dalamud.Game.Text.SeStringHandling; using Dalamud.Hooking; +using Dalamud.Memory; using FFXIVClientStructs.FFXIV.Client.UI; using Serilog; -namespace Dalamud.Game.Gui +namespace Dalamud.Game.Gui.FlyText { /// /// This class facilitates interacting with and creating native in-game "fly text". @@ -205,8 +206,8 @@ namespace Dalamud.Game.Gui var tmpKind = (FlyTextKind)kind; var tmpVal1 = val1; var tmpVal2 = val2; - var tmpText1 = this.Dalamud.SeStringManager.Parse(text1); - var tmpText2 = this.Dalamud.SeStringManager.Parse(text2); + var tmpText1 = MemoryHelper.ReadSeString(text1); + var tmpText2 = MemoryHelper.ReadSeString(text2); var tmpColor = color; var tmpIcon = icon; var tmpYOffset = yOffset; diff --git a/Dalamud/Game/Gui/FlyTextGuiAddressResolver.cs b/Dalamud/Game/Gui/FlyText/FlyTextGuiAddressResolver.cs similarity index 95% rename from Dalamud/Game/Gui/FlyTextGuiAddressResolver.cs rename to Dalamud/Game/Gui/FlyText/FlyTextGuiAddressResolver.cs index e655f326b..ae0eb0035 100644 --- a/Dalamud/Game/Gui/FlyTextGuiAddressResolver.cs +++ b/Dalamud/Game/Gui/FlyText/FlyTextGuiAddressResolver.cs @@ -1,6 +1,6 @@ -using System; +using System; -namespace Dalamud.Game.Gui +namespace Dalamud.Game.Gui.FlyText { /// /// An address resolver for the class. diff --git a/Dalamud/Game/Gui/FlyTextKind.cs b/Dalamud/Game/Gui/FlyText/FlyTextKind.cs similarity index 99% rename from Dalamud/Game/Gui/FlyTextKind.cs rename to Dalamud/Game/Gui/FlyText/FlyTextKind.cs index 1a6552342..972ffcce8 100644 --- a/Dalamud/Game/Gui/FlyTextKind.cs +++ b/Dalamud/Game/Gui/FlyText/FlyTextKind.cs @@ -1,4 +1,4 @@ -namespace Dalamud.Game.Gui +namespace Dalamud.Game.Gui.FlyText { /// /// Enum of FlyTextKind values. Members suffixed with diff --git a/Dalamud/Game/Gui/GameGui.cs b/Dalamud/Game/Gui/GameGui.cs index 153ed6593..df7f0c531 100644 --- a/Dalamud/Game/Gui/GameGui.cs +++ b/Dalamud/Game/Gui/GameGui.cs @@ -3,6 +3,7 @@ using System.Numerics; using System.Runtime.InteropServices; using Dalamud.Game.Gui.Addons; +using Dalamud.Game.Gui.FlyText; using Dalamud.Game.Gui.PartyFinder; using Dalamud.Game.Text.SeStringHandling.Payloads; using Dalamud.Hooking; diff --git a/Dalamud/Game/Text/SeStringHandling/SeStringManager.cs b/Dalamud/Game/Text/SeStringHandling/SeStringManager.cs index ed9437d3d..ad805f528 100644 --- a/Dalamud/Game/Text/SeStringHandling/SeStringManager.cs +++ b/Dalamud/Game/Text/SeStringHandling/SeStringManager.cs @@ -1,8 +1,6 @@ -using System; using System.Collections.Generic; using System.IO; using System.Linq; -using System.Runtime.InteropServices; using Dalamud.Data; using Dalamud.Game.Text.SeStringHandling.Payloads; @@ -49,24 +47,6 @@ namespace Dalamud.Game.Text.SeStringHandling return new SeString(payloads); } - /// - /// Parse a binary game message into an SeString. - /// - /// Pointer to a binary message payload data in SE's internal format. - /// An SeString containing parsed Payload objects for each payload in the data. - public SeString Parse(IntPtr bytePtr) - { - var bytes = new List(); - byte read = Marshal.ReadByte(bytePtr, 0); - for (int ofs = 1; read != 0; ofs++) - { - bytes.Add(read); - read = Marshal.ReadByte(bytePtr, ofs); - } - - return this.Parse(bytes.ToArray()); - } - /// /// Creates an SeString representing an entire Payload chain that can be used to link an item in the chat log. /// diff --git a/Dalamud/Interface/Internal/Windows/DataWindow.cs b/Dalamud/Interface/Internal/Windows/DataWindow.cs index 7355e9677..27ee74d9e 100644 --- a/Dalamud/Interface/Internal/Windows/DataWindow.cs +++ b/Dalamud/Interface/Internal/Windows/DataWindow.cs @@ -12,6 +12,7 @@ using Dalamud.Game.ClientState.JobGauge.Types; using Dalamud.Game.ClientState.Objects.SubKinds; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Game.Gui.Addons; +using Dalamud.Game.Gui.FlyText; using Dalamud.Game.Gui.Toast; using Dalamud.Game.Text; using Dalamud.Interface.Windowing;