fix: Lumina updates

This commit is contained in:
Kaz Wolfe 2025-03-25 09:28:57 -07:00
parent 12ce09870f
commit 67561af32f
No known key found for this signature in database
GPG key ID: 258813F53A16EBB4
10 changed files with 30 additions and 30 deletions

View file

@ -53,7 +53,7 @@ internal sealed unsafe class DalamudAtkTweaks : IInternalDisposableService
this.locDalamudSettings = Loc.Localize("SystemMenuSettings", "Dalamud Settings"); this.locDalamudSettings = Loc.Localize("SystemMenuSettings", "Dalamud Settings");
// this.contextMenu.ContextMenuOpened += this.ContextMenuOnContextMenuOpened; // this.contextMenu.ContextMenuOpened += this.ContextMenuOnContextMenuOpened;
this.hookAgentHudOpenSystemMenu.Enable(); this.hookAgentHudOpenSystemMenu.Enable();
this.hookUiModuleExecuteMainCommand.Enable(); this.hookUiModuleExecuteMainCommand.Enable();
this.hookAtkUnitBaseReceiveGlobalEvent.Enable(); this.hookAtkUnitBaseReceiveGlobalEvent.Enable();
@ -180,7 +180,7 @@ internal sealed unsafe class DalamudAtkTweaks : IInternalDisposableService
// about hooking the exd reader, thank god // about hooking the exd reader, thank god
var firstStringEntry = &atkValueArgs[5 + 18]; var firstStringEntry = &atkValueArgs[5 + 18];
firstStringEntry->ChangeType(ValueType.String); firstStringEntry->ChangeType(ValueType.String);
var secondStringEntry = &atkValueArgs[6 + 18]; var secondStringEntry = &atkValueArgs[6 + 18];
secondStringEntry->ChangeType(ValueType.String); secondStringEntry->ChangeType(ValueType.String);
@ -193,7 +193,7 @@ internal sealed unsafe class DalamudAtkTweaks : IInternalDisposableService
.Append($"{SeIconChar.BoxedLetterD.ToIconString()} ") .Append($"{SeIconChar.BoxedLetterD.ToIconString()} ")
.Append(new UIForegroundPayload(0)) .Append(new UIForegroundPayload(0))
.Append(this.locDalamudSettings).Encode(); .Append(this.locDalamudSettings).Encode();
firstStringEntry->SetManagedString(strPlugins); firstStringEntry->SetManagedString(strPlugins);
secondStringEntry->SetManagedString(strSettings); secondStringEntry->SetManagedString(strSettings);

View file

@ -193,7 +193,7 @@ internal class SheetRedirectResolver : IServiceType
colIndex = 43; colIndex = 43;
if (this.dataManager.GetExcelSheet<LSheets.InstanceContent>().TryGetRow(rowId, out var row)) if (this.dataManager.GetExcelSheet<LSheets.InstanceContent>().TryGetRow(rowId, out var row))
rowId = row.Order; rowId = row.SortKey;
break; break;
} }

View file

@ -1595,7 +1595,7 @@ internal class SeStringEvaluator : IServiceType, ISeStringEvaluator
if (eColorTypeVal == 0) if (eColorTypeVal == 0)
context.Builder.PopColor(); context.Builder.PopColor();
else if (this.dataManager.GetExcelSheet<UIColor>().TryGetRow(eColorTypeVal, out var row)) else if (this.dataManager.GetExcelSheet<UIColor>().TryGetRow(eColorTypeVal, out var row))
context.Builder.PushColorBgra((row.UIForeground >> 8) | (row.UIForeground << 24)); context.Builder.PushColorBgra((row.Light >> 8) | (row.Light << 24));
return true; return true;
} }
@ -1609,7 +1609,7 @@ internal class SeStringEvaluator : IServiceType, ISeStringEvaluator
if (eColorTypeVal == 0) if (eColorTypeVal == 0)
context.Builder.PopEdgeColor(); context.Builder.PopEdgeColor();
else if (this.dataManager.GetExcelSheet<UIColor>().TryGetRow(eColorTypeVal, out var row)) else if (this.dataManager.GetExcelSheet<UIColor>().TryGetRow(eColorTypeVal, out var row))
context.Builder.PushEdgeColorBgra((row.UIForeground >> 8) | (row.UIForeground << 24)); context.Builder.PushEdgeColorBgra((row.Light >> 8) | (row.Light << 24));
return true; return true;
} }

View file

@ -201,7 +201,7 @@ public abstract partial class Payload
case SeStringChunkType.Icon: case SeStringChunkType.Icon:
payload = new IconPayload(); payload = new IconPayload();
break; break;
default: default:
// Log.Verbose("Unhandled SeStringChunkType: {0}", chunkType); // Log.Verbose("Unhandled SeStringChunkType: {0}", chunkType);
break; break;
@ -306,7 +306,7 @@ public abstract partial class Payload
/// See the <see cref="NewLinePayload"/>. /// See the <see cref="NewLinePayload"/>.
/// </summary> /// </summary>
NewLine = 0x10, NewLine = 0x10,
/// <summary> /// <summary>
/// See the <see cref="IconPayload"/> class. /// See the <see cref="IconPayload"/> class.
/// </summary> /// </summary>

View file

@ -74,13 +74,13 @@ public class UIForegroundPayload : Payload
/// Gets the Red/Green/Blue/Alpha values for this foreground color, encoded as a typical hex color. /// Gets the Red/Green/Blue/Alpha values for this foreground color, encoded as a typical hex color.
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public uint RGBA => this.UIColor.Value.UIForeground; public uint RGBA => this.UIColor.Value.Dark;
/// <summary> /// <summary>
/// Gets the ABGR value for this foreground color, as ImGui requires it in PushColor. /// Gets the ABGR value for this foreground color, as ImGui requires it in PushColor.
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public uint ABGR => Interface.ColorHelpers.SwapEndianness(this.UIColor.Value.UIForeground); public uint ABGR => Interface.ColorHelpers.SwapEndianness(this.UIColor.Value.Dark);
/// <inheritdoc/> /// <inheritdoc/>
public override string ToString() public override string ToString()

View file

@ -71,13 +71,13 @@ public class UIGlowPayload : Payload
/// Gets the Red/Green/Blue/Alpha values for this glow color, encoded as a typical hex color. /// Gets the Red/Green/Blue/Alpha values for this glow color, encoded as a typical hex color.
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public uint RGBA => this.UIColor.Value.UIGlow; public uint RGBA => this.UIColor.Value.Light;
/// <summary> /// <summary>
/// Gets the ABGR value for this glow color, as ImGui requires it in PushColor. /// Gets the ABGR value for this glow color, as ImGui requires it in PushColor.
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public uint ABGR => Interface.ColorHelpers.SwapEndianness(this.UIColor.Value.UIGlow); public uint ABGR => Interface.ColorHelpers.SwapEndianness(this.UIColor.Value.Light);
/// <summary> /// <summary>
/// Gets a Lumina UIColor object representing this payload. The actual color data is at UIColor.UIGlow. /// Gets a Lumina UIColor object representing this payload. The actual color data is at UIColor.UIGlow.

View file

@ -43,10 +43,10 @@ internal sealed class SeStringColorStackSet
foreach (var row in uiColor) foreach (var row in uiColor)
{ {
// Contains ABGR. // Contains ABGR.
this.colorTypes[row.RowId, 0] = row.UIForeground; this.colorTypes[row.RowId, 0] = row.Dark;
this.colorTypes[row.RowId, 1] = row.UIGlow; this.colorTypes[row.RowId, 1] = row.Light;
this.colorTypes[row.RowId, 2] = row.Unknown0; this.colorTypes[row.RowId, 2] = row.ClassicFF;
this.colorTypes[row.RowId, 3] = row.Unknown1; this.colorTypes[row.RowId, 3] = row.ClearBlue;
} }
if (BitConverter.IsLittleEndian) if (BitConverter.IsLittleEndian)

View file

@ -380,7 +380,7 @@ internal class InventoryWidget : IDataWindowWidget
var rowId = this.GetItemRarityColorType(item, isEdgeColor); var rowId = this.GetItemRarityColorType(item, isEdgeColor);
return this.dataManager.Excel.GetSheet<UIColor>().TryGetRow(rowId, out var color) return this.dataManager.Excel.GetSheet<UIColor>().TryGetRow(rowId, out var color)
? BinaryPrimitives.ReverseEndianness(color.UIForeground) | 0xFF000000 ? BinaryPrimitives.ReverseEndianness(color.Light) | 0xFF000000
: 0xFFFFFFFF; : 0xFFFFFFFF;
} }

View file

@ -93,34 +93,34 @@ internal class UiColorWidget : IDataWindowWidget
ImGui.TableNextColumn(); ImGui.TableNextColumn();
ImGui.AlignTextToFramePadding(); ImGui.AlignTextToFramePadding();
ImGui.PushID($"row{id}_col1"); ImGui.PushID($"row{id}_dark");
if (this.DrawColorColumn(row.UIForeground) && if (this.DrawColorColumn(row.Dark) &&
adjacentRow.HasValue) adjacentRow.HasValue)
DrawEdgePreview(id, row.UIForeground, adjacentRow.Value.UIForeground); DrawEdgePreview(id, row.Dark, adjacentRow.Value.Dark);
ImGui.PopID(); ImGui.PopID();
ImGui.TableNextColumn(); ImGui.TableNextColumn();
ImGui.AlignTextToFramePadding(); ImGui.AlignTextToFramePadding();
ImGui.PushID($"row{id}_col2"); ImGui.PushID($"row{id}_light");
if (this.DrawColorColumn(row.UIGlow) && if (this.DrawColorColumn(row.Light) &&
adjacentRow.HasValue) adjacentRow.HasValue)
DrawEdgePreview(id, row.UIGlow, adjacentRow.Value.UIGlow); DrawEdgePreview(id, row.Light, adjacentRow.Value.Light);
ImGui.PopID(); ImGui.PopID();
ImGui.TableNextColumn(); ImGui.TableNextColumn();
ImGui.AlignTextToFramePadding(); ImGui.AlignTextToFramePadding();
ImGui.PushID($"row{id}_col3"); ImGui.PushID($"row{id}_classic");
if (this.DrawColorColumn(row.Unknown0) && if (this.DrawColorColumn(row.ClassicFF) &&
adjacentRow.HasValue) adjacentRow.HasValue)
DrawEdgePreview(id, row.Unknown0, adjacentRow.Value.Unknown0); DrawEdgePreview(id, row.ClassicFF, adjacentRow.Value.ClassicFF);
ImGui.PopID(); ImGui.PopID();
ImGui.TableNextColumn(); ImGui.TableNextColumn();
ImGui.AlignTextToFramePadding(); ImGui.AlignTextToFramePadding();
ImGui.PushID($"row{id}_col4"); ImGui.PushID($"row{id}_blue");
if (this.DrawColorColumn(row.Unknown1) && if (this.DrawColorColumn(row.ClearBlue) &&
adjacentRow.HasValue) adjacentRow.HasValue)
DrawEdgePreview(id, row.Unknown1, adjacentRow.Value.Unknown1); DrawEdgePreview(id, row.ClearBlue, adjacentRow.Value.ClearBlue);
ImGui.PopID(); ImGui.PopID();
} }
} }

View file

@ -10,7 +10,7 @@ namespace Dalamud.Utility;
/// A set of helpful utilities for working with <see cref="CStringPointer"/>s from ClientStructs. /// A set of helpful utilities for working with <see cref="CStringPointer"/>s from ClientStructs.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// WARNING: Will break if a custom ClientStructs is used. These are here for CONVENIENCE ONLY! /// WARNING: Will break if a custom ClientStructs is used. These are here for CONVENIENCE ONLY!.
/// </remarks> /// </remarks>
public static class CStringExtensions public static class CStringExtensions
{ {