diff --git a/Dalamud/Game/Inventory/GameInventoryItem.cs b/Dalamud/Game/Inventory/GameInventoryItem.cs index 5a0ec0c74..085200742 100644 --- a/Dalamud/Game/Inventory/GameInventoryItem.cs +++ b/Dalamud/Game/Inventory/GameInventoryItem.cs @@ -120,15 +120,10 @@ public unsafe struct GameInventoryItem : IEquatable if (ItemUtil.IsEventItem(baseItemId) || this.IsMateriaUsedForDate) return []; - var dataManager = Service.Get(); + Span materiaIds = new ushort[this.InternalItem.Materia.Length]; + var materiaRowCount = Service.Get().GetExcelSheet().Count; - if (!dataManager.GetExcelSheet().TryGetRow(baseItemId, out var item) || item.MateriaSlotCount == 0) - return []; - - Span materiaIds = new ushort[item.MateriaSlotCount]; - var materiaRowCount = dataManager.GetExcelSheet().Count; - - for (byte i = 0; i < item.MateriaSlotCount; i++) + for (byte i = 0; i < this.InternalItem.Materia.Length; i++) { var materiaId = this.InternalItem.GetMateriaId(i); if (materiaId < materiaRowCount) @@ -151,15 +146,10 @@ public unsafe struct GameInventoryItem : IEquatable if (ItemUtil.IsEventItem(baseItemId) || this.IsMateriaUsedForDate) return []; - var dataManager = Service.Get(); + Span materiaGrades = new byte[this.InternalItem.MateriaGrades.Length]; + var materiaGradeRowCount = Service.Get().GetExcelSheet().Count; - if (!dataManager.GetExcelSheet().TryGetRow(baseItemId, out var item) || item.MateriaSlotCount == 0) - return []; - - Span materiaGrades = new byte[item.MateriaSlotCount]; - var materiaGradeRowCount = dataManager.GetExcelSheet().Count; - - for (byte i = 0; i < item.MateriaSlotCount; i++) + for (byte i = 0; i < this.InternalItem.MateriaGrades.Length; i++) { var materiaGrade = this.InternalItem.GetMateriaGrade(i); if (materiaGrade < materiaGradeRowCount)