diff --git a/Glamourer.GameData/CharacterEquipExtensions.cs b/Glamourer.GameData/CharacterEquipExtensions.cs index 10291f9..32caa48 100644 --- a/Glamourer.GameData/CharacterEquipExtensions.cs +++ b/Glamourer.GameData/CharacterEquipExtensions.cs @@ -22,7 +22,9 @@ namespace Glamourer if (variant.HasValue) *(ushort*) (address + 4) = variant.Value; - if (stain.HasValue) + if (*(ushort*) address == 0) + *(address + 6) = 0; + else if (stain.HasValue) *(address + 6) = (byte) stain.Value; } diff --git a/Glamourer.zip b/Glamourer.zip index 2e8fdeb..7f1886c 100644 Binary files a/Glamourer.zip and b/Glamourer.zip differ diff --git a/Glamourer/Designs/FixedDesigns.cs b/Glamourer/Designs/FixedDesigns.cs index 334d306..28163d3 100644 --- a/Glamourer/Designs/FixedDesigns.cs +++ b/Glamourer/Designs/FixedDesigns.cs @@ -129,9 +129,9 @@ namespace Glamourer.Designs var applicableDesigns = designs.OrderBy(d => d.Jobs.Count).Where(d => d.Jobs.Fits(character.ClassJob.Id)); - bool designApplied = false; + var designApplied = false; foreach (var design in applicableDesigns) { - PluginLog.Debug("Redrawing {CharacterName} with {DesignName} for job {JobGroup}.", name, design.Design.FullName(), + PluginLog.Debug("Applying {DesignName} on {CharacterName} for job {JobGroup}.", design.Design.FullName(), name, design.Jobs.Name); design.Design.Data.Apply(character); Glamourer.PlayerWatcher.UpdatePlayerWithoutEvent(character); diff --git a/Glamourer/Glamourer.csproj b/Glamourer/Glamourer.csproj index ea94c61..ddc6922 100644 --- a/Glamourer/Glamourer.csproj +++ b/Glamourer/Glamourer.csproj @@ -5,8 +5,8 @@ x64 Glamourer Glamourer - 0.1.1.3 - 0.1.1.3 + 0.1.1.4 + 0.1.1.4 SoftOtter Glamourer Copyright © 2020 diff --git a/Glamourer/Glamourer.json b/Glamourer/Glamourer.json index c4f3922..e85e143 100644 --- a/Glamourer/Glamourer.json +++ b/Glamourer/Glamourer.json @@ -5,7 +5,7 @@ "Description": "Adds functionality to change and store appearance of players, customization and equip. Requires Penumbra to be installed and activated to work. Can also add preview options to the Changed Items tab for Penumbra.", "Tags": [ "Appearance", "Glamour", "Race", "Outfit", "Armor", "Clothes", "Skins", "Customization", "Design", "Character" ], "InternalName": "Glamourer", - "AssemblyVersion": "0.1.1.3", + "AssemblyVersion": "0.1.1.4", "RepoUrl": "https://github.com/Ottermandias/Glamourer", "ApplicableVersion": "any", "DalamudApiLevel": 8, diff --git a/Glamourer/Gui/Interface.cs b/Glamourer/Gui/Interface.cs index 4f81862..2728317 100644 --- a/Glamourer/Gui/Interface.cs +++ b/Glamourer/Gui/Interface.cs @@ -53,7 +53,7 @@ namespace Glamourer.Gui var equip = GameData.ItemsBySlot(Dalamud.GameData); _combos = equip.ToDictionary(kvp => kvp.Key, kvp => CreateCombos(kvp.Key, kvp.Value, stainCombo)); - _globalStainCombo = new ComboWithFilter("Dye All Slots", stainCombo); + _globalStainCombo = new ComboWithFilter("##GlobalStain", stainCombo); _legacyTattooIcon = GetLegacyTattooIcon(); } diff --git a/Glamourer/Gui/InterfaceEquipment.cs b/Glamourer/Gui/InterfaceEquipment.cs index a91c934..731526c 100644 --- a/Glamourer/Gui/InterfaceEquipment.cs +++ b/Glamourer/Gui/InterfaceEquipment.cs @@ -1,5 +1,4 @@ using System.Linq; -using Dalamud.Interface; using ImGuiNET; using Lumina.Text; using Penumbra.GameData.Enums; @@ -47,6 +46,8 @@ namespace Glamourer.Gui stainCombo.PostPreview = null; var change = stainCombo.Draw(string.Empty, out var newStain); + ImGui.SameLine(); + ImGui.TextUnformatted("Dye All Slots"); if (!change) { ImGuiCustom.HoverTooltip("Right-click to clear."); @@ -64,6 +65,8 @@ namespace Glamourer.Gui { foreach (var key in GetEquipSlotNames().Keys) { + if (key is EquipSlot.OffHand && _selection?.Data.Equipment.OffHand.Set.Value == 0) + continue; _selection?.Data.WriteStain(key, newStain.RowIndex); } return _inDesignMode; diff --git a/Glamourer/Gui/InterfaceFixedDesigns.cs b/Glamourer/Gui/InterfaceFixedDesigns.cs index e0aa9c8..428873b 100644 --- a/Glamourer/Gui/InterfaceFixedDesigns.cs +++ b/Glamourer/Gui/InterfaceFixedDesigns.cs @@ -132,7 +132,7 @@ namespace Glamourer.Gui raii.PopFonts(); ImGui.TableNextColumn(); ImGui.SetNextItemWidth(200 * ImGuiHelpers.GlobalScale); - ImGui.InputTextWithHint("##NewFix", "Enter new Character", ref _newFixCharacterName, 32); + ImGui.InputTextWithHint("##NewFix", "Enter new Character", ref _newFixCharacterName, 64); ImGui.TableNextColumn(); ImGui.SetNextItemWidth(-1); if (raii.Begin(() => ImGui.BeginCombo("##NewFixDesignGroup", _newFixDesignGroup.Value.Name), ImGui.EndCombo)) diff --git a/repo.json b/repo.json index 7945f71..a551637 100644 --- a/repo.json +++ b/repo.json @@ -6,8 +6,8 @@ "Description": "Adds functionality to change and store appearance of players, customization and equip. Requires Penumbra to be installed and activated to work. Can also add preview options to the Changed Items tab for Penumbra.", "Tags": [ "Appearance", "Glamour", "Race", "Outfit", "Armor", "Clothes", "Skins", "Customization", "Design", "Character" ], "InternalName": "Glamourer", - "AssemblyVersion": "0.1.1.3", - "TestingAssemblyVersion": "0.1.1.3", + "AssemblyVersion": "0.1.1.4", + "TestingAssemblyVersion": "0.1.1.4", "RepoUrl": "https://github.com/Ottermandias/Glamourer", "ApplicableVersion": "any", "DalamudApiLevel": 8,