Compare commits
3 Commits
09c0f7e51d
...
121c668aae
Author | SHA1 | Date |
---|---|---|
Anna | 121c668aae | |
Anna | d8942042d3 | |
Anna | 6ce6a530d4 |
|
@ -79,13 +79,13 @@ namespace Glamaholic {
|
|||
isHandled = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static void OnLogin(object? sender, EventArgs e) {
|
||||
_dresserContents = null;
|
||||
}
|
||||
|
||||
private bool _wasEditing;
|
||||
|
||||
|
||||
private void OnFrameworkUpdate(Dalamud.Game.Framework framework) {
|
||||
var editing = Util.IsEditingPlate(this.Plugin.GameGui);
|
||||
if (!this._wasEditing && editing) {
|
||||
|
@ -153,8 +153,12 @@ namespace Glamaholic {
|
|||
foreach (var slot in (PlateSlot[]) Enum.GetValues(typeof(PlateSlot))) {
|
||||
// Updated: 6.0
|
||||
// from SetGlamourPlateSlot
|
||||
var itemId = *(uint*) (editorInfo + 44 * (int) slot + 7956);
|
||||
var stainId = *(byte*) (editorInfo + 44 * (int) slot + 7980);
|
||||
var item = editorInfo + 44 * (int) slot + 7956;
|
||||
|
||||
var itemId = *(uint*) item;
|
||||
var stainId = *(byte*) (item + 24);
|
||||
var stainPreviewId = *(byte*) (item + 25);
|
||||
var actualStainId = stainPreviewId == 0 ? stainId : stainPreviewId;
|
||||
|
||||
if (itemId == 0) {
|
||||
continue;
|
||||
|
@ -162,7 +166,7 @@ namespace Glamaholic {
|
|||
|
||||
plate[slot] = new SavedGlamourItem {
|
||||
ItemId = itemId,
|
||||
StainId = stainId,
|
||||
StainId = actualStainId,
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0-windows</TargetFramework>
|
||||
<Version>1.9.2</Version>
|
||||
<Version>1.9.3</Version>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<Nullable>enable</Nullable>
|
||||
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
|
||||
|
|
|
@ -17,7 +17,7 @@ namespace Glamaholic {
|
|||
|
||||
[PluginService]
|
||||
internal ChatGui ChatGui { get; init; }
|
||||
|
||||
|
||||
[PluginService]
|
||||
internal ClientState ClientState { get; init; }
|
||||
|
||||
|
@ -26,7 +26,7 @@ namespace Glamaholic {
|
|||
|
||||
[PluginService]
|
||||
internal DataManager DataManager { get; init; }
|
||||
|
||||
|
||||
[PluginService]
|
||||
internal Framework Framework { get; init; }
|
||||
|
||||
|
|
|
@ -63,11 +63,15 @@ namespace Glamaholic.Ui.Helpers {
|
|||
itemId = item->GlamourId;
|
||||
}
|
||||
|
||||
var stainId = item->StainPreviewId == 0
|
||||
? item->StainId
|
||||
: item->StainPreviewId;
|
||||
|
||||
// for some reason, this still accounts for belts in EW
|
||||
var slot = item->Slot > 5 ? item->Slot - 1 : item->Slot;
|
||||
items[(PlateSlot) slot] = new SavedGlamourItem {
|
||||
ItemId = itemId % Util.HqItemOffset,
|
||||
StainId = item->StainId,
|
||||
StainId = stainId,
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -82,6 +86,9 @@ namespace Glamaholic.Ui.Helpers {
|
|||
[FieldOffset(2)]
|
||||
internal readonly byte StainId;
|
||||
|
||||
[FieldOffset(3)]
|
||||
internal readonly byte StainPreviewId;
|
||||
|
||||
[FieldOffset(5)]
|
||||
internal readonly byte UnknownByte;
|
||||
|
||||
|
|
Loading…
Reference in New Issue