- ingame/crafting/gamepad/alchemy_gamepad.lua:221 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
self:UpdateItemOnWorkbench(data)
end)
- ingame/crafting/gamepad/enchanting_gamepad.lua:92 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
if self.enchantingMode == ENCHANTING_MODE_CREATION then
local itemName = GetItemName(bagId, slotIndex)
local itemLink = GetItemLink(bagId, slotIndex)
local known, name = GetItemLinkEnchantingRuneName(itemLink)
local _, _, runeType, rankRequirement, rarityRequirement = GetItemCraftingInfo(bagId, slotIndex)
data.meetsUsageRequirement = DoesRunePassRequirements(runeType, rankRequirement, rarityRequirement)
local requirementString = ""
if known == true then
data.name = zo_strformat(SI_GAMEPAD_ENCHANTING_TRANSLATION_KNOWN, itemName, name)
else
data.name = zo_strformat(SI_GAMEPAD_ENCHANTING_TRANSLATION_KNOWN, itemName, GetString(SI_ENCHANTING_TRANSLATION_UNKNOWN))
end
local traitSubLabel = name and zo_strformat(name) or zo_strformat(GetString(SI_ENCHANTING_TRANSLATION_UNKNOWN))
data:AddSubLabel(traitSubLabel)
if runeType == ENCHANTING_RUNE_POTENCY then
requirementString = zo_strformat(SI_ENCHANTING_REQUIRES_POTENCY_IMPROVEMENT, rankRequirement)
elseif runeType == ENCHANTING_RUNE_ASPECT then
requirementString = zo_strformat(SI_ENCHANTING_REQUIRES_ASPECT_IMPROVEMENT, rarityRequirement)
end
if requirementString ~= "" then
if data.meetsUsageRequirement then
data:AddSubLabel(ZO_SUCCEEDED_TEXT:Colorize(requirementString))
else
data:AddSubLabel(ZO_ERROR_COLOR:Colorize(requirementString))
end
end
--Store this off so we access it for narration purposes
data.requirementString = requirementString
end
end
)
- ingame/crafting/gamepad/fishfillet_gamepad.lua:135 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
ZO_GamepadCraftingUtils_SetEntryDataSlotted(data, self.filletSlot:ContainsBagAndSlot(data.bagId, data.slotIndex))
end)
- ingame/crafting/gamepad/smithingextraction_gamepad.lua:204 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
if self:GetFilterType() == SMITHING_FILTER_TYPE_RAW_MATERIALS then
-- turn refinement stacks red if they don't have a large enough quantity in them to be refineable
data.meetsUsageRequirement = data.stackCount >= GetRequiredSmithingRefinementStackSize()
end
ZO_GamepadCraftingUtils_SetEntryDataSlotted(data, self.extractionSlot:ContainsBagAndSlot(data.bagId, data.slotIndex))
if self:GetFilterType() == SMITHING_FILTER_TYPE_RAW_MATERIALS then
data.hasCraftingQuestPin = self:CanRefineToQuestItem(bagId, slotIndex)
--If there is an override status indicator icon, we need to explicitly add the quest pin here
if data.overrideStatusIndicatorIcons and data.hasCraftingQuestPin then
data.overrideStatusIndicatorIcons = { ZO_IS_SLOTTED_STATUS_ICON_OVERRIDE, ZO_TRACKED_PIN_STATUS_ICON_OVERRIDE }
end
else
ZO_GamepadCraftingUtils_AddOverridesEntryData(data)
data.hasCraftingQuestPin = false
end
end
)
- ingame/crafting/gamepad/smithingimprovement_gamepad.lua:347 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
local itemId = GetItemId(bagId, slotIndex)
local improvementQuestInfo = self.inventory.improvementQuestInfo
local shouldShowQuestPin = false
if itemId == improvementQuestInfo.desiredItemId and itemId ~= nil then
shouldShowQuestPin = DoesItemMatchSmithingMaterialTraitAndStyle(bagId, slotIndex, improvementQuestInfo.desiredMaterial, improvementQuestInfo.desiredTrait, improvementQuestInfo.desiredStyle) and (data.functionalQuality < improvementQuestInfo.desiredQuality)
end
data.hasCraftingQuestPin = shouldShowQuestPin
data:SetIgnoreTraitInformation(true)
end)
- ingame/crafting/gamepad/universaldeconstructionpanel_gamepad.lua:141 --
self.inventory:SetCustomExtraData(function(bagId, slotIndex, data)
ZO_GamepadCraftingUtils_SetEntryDataSlotted(data, self.extractionSlot:ContainsBagAndSlot(data.bagId, data.slotIndex))
ZO_GamepadCraftingUtils_AddOverridesEntryData(data)
end)