
[MoP Beta] Lua error
Closed this issue · 5 comments
MoP Beta version 5.5.0.61496, French Ui
Skillet-Classic version 2.1.3
The error appears when trying to create a gem: creation impossible + error.
> Skillet-Classic/UI/MainFrame.lua:1899: attempt to call global 'GetItemIcon' (a nil value)
> [Skillet-Classic/UI/MainFrame.lua]:1899: in function 'UpdateDetailsWindow'
> [Skillet-Classic/UI/MainFrame.lua]:977: in function 'UpdateTradeSkillWindow'
> [Skillet-Classic/UI/MainFrame.lua]:2621: in function 'ScrollToSkillIndex'
> [Skillet-Classic/Skillet.lua]:1680: in function 'SetSelectedSkill'
> [Skillet-Classic/UI/MainFrame.lua]:2542: in function 'SkillButton_OnClick'
> [*MainFrame.xml:359_OnClick]:2: in function <[string "*MainFrame.xml:359_OnClick"]:1>
>
> Locals:
> self = <table> {
> mouseOver = SkilletScrollButton9 {
> }
> modules = <table> {
> }
> castSpellName = "Enchantement de plastron (Caractéristiques glorieuses)"
> hideTrivialRecipes = false
> EnchantSpellToItem = <table> {
> }
> db = <table> {
> }
> bankBusy = false
> interface = 50500
> AdditionalButtonsList = <table> {
> }
> pluginsOptions = <table> {
> }
> FixBugs = true
> L = <table> {
> }
> button_count = 27
> pauseQueue = false
> NewsName = "Skillet-Classic News"
> selectedQueueName = ""
> tradeShow = true
> isCraft = false
> DSAPlugin = <table> {
> }
> dataScanned = true
> selectedSkill = 86
> AUCPlugin = <table> {
> }
> AHDBPlugin = <table> {
> }
> registeredPlugins = <table> {
> }
> WARN_COLOR = "|c0000FFE0"
> hooks = <table> {
> }
> loginTime = 36427.400000
> numItemsToCraft = 1
> pluginsOrder = 8
> gttScale = 1
> project = 19
> currentTrade = 25229
> baseName = "Skillet-Classic"
> bagsChanged = false
> displayDetailPlugins = <table> {
> }
> STATUS_COLOR = "|c0033CCFF"
> lastCraft = false
> tradeSkillList = <table> {
> }
> TRACE_COLOR = "|c0000FFA0"
> linkedSkill = false
> fullView = true
> RecipeNameSuffixes = <table> {
> }
> AdditionalAbilities = <table> {
> }
> SpecialVendorItems = <table> {
> }
> bankQueue = <table> {
> }
> guildQueue = <table> {
> }
> TradeSkillIgnoredMats = <table> {
> }
> wowVersion = 50500
> filterSelected = 1
> defaultModuleState = true
> tradeSkillFrame = SkilletFrame {
> }
> tradeSkillIDsByName = <table> {
> }
> WarnLog = true
> skippedQueue = <table> {
> }
> selectedTextOffsetXY = <table> {
> }
> isGuild = false
> sourceTradeSkillLevel = 4
> NewsData = <table> {
> }
> saved_full_button_count = 0
> options = <table> {
> }
> scrollData = <table> {
> }
> unknownRecipe = <table> {
> }
> RecipeNamePrefixes = <table> {
> }
> ATLPlugin = <table> {
> }
> castSpellID = 104395
> dragStartXY = <table> {
> }
> hideTradeSkillFrame = true
> cachedIgnoreList = <table> {
> }
> skilletStandaloneQueue = SkilletStandaloneQueue {
> }
> lastTrade = 25229
> groupList = <table> {
> }
> scanInProgress = false
> dataSourceChanged = false
> tradeSkillOpen = true
> inCombat = false
> visited = <table> {
> }
> BlizzardTradeSkillFrame = TradeSkillFrame {
> }
> currencyNamesByID = <table> {
> }
> currencyIDsByName = <table> {
> }
> tradeSkillNamesByID = <table> {
> }
> skillIsCraft = <table> {
> }
> currentGroupLabel = "Blizzard"
> currentPlayer = "Adalt"
> hideUncraftableRecipes = false
> data = <table> {
> }
> optionsFrame = Frame {
> }
> wowBuild = "61496"
> visibleSkillButtons = 27
> ATRPlugin = <table> {
> }
> build = "Mists"
> craftUpdate = 0
> MAXDEBUG = 4000
> tradeUpdate = 1
> TradeSkillAutoTarget = <table> {
> }
> duplicateItemID = <table> {
> }
> NewsGUI = <table> {
> }
> ignoreClose = false
> DebugProfile = <table> {
> }
> enabledState = true
> saved_SA_button_count = 0
> processQueuePlugins = <table> {
> }
> skill_style_type = <table> {
> }
> defaultModuleLibraries = <table> {
> }
> version = "2.13"
> BCPlugin = <table> {
> }
> DEBUG_COLOR = "|c00A0FF00"
> MAXPROFILE = 2000
> DebugLog = <table> {
> }
> NewsFrame = <table> {
> }
> updatePlugins = <table> {
> }
> defaultOptions = <table> {
> }
> name = "Skillet"
> orderedModules = <table> {
> }
> }
> skillIndex = 86
> texture = nil
> skill = <table> {
> numRecursive = 0
> id = "Diamant primordial agile"
> difficulty = "medium"
> numCraftable = 20
> name = "Diamant primordial agile"
> category = "Méta-gemmes"
> tools = <table> {
> }
> numCraftableVendor = 0
> color = <table> {
> }
> numCraftableAlts = 0
> }
> recipe = <table> {
> vendorOnly = false
> numMade = 1
> name = "Diamant primordial agile"
> reagentData = <table> {
> }
> tools = <table> {
> }
> itemID = 76884
> tradeID = 25229
> spellID = 107753
> }
> tools = "Trousse de joaillier"
> (*temporary) = nil
> (*temporary) = 76884
> (*temporary) = "attempt to call global 'GetItemIcon' (a nil value)"
> lastUpdateSpellID = "Diamant primordial agile"
> DA = <table> {
> mouseOver = SkilletScrollButton9 {
> }
> modules = <table> {
> }
> castSpellName = "Enchantement de plastron (Caractéristiques glorieuses)"
> hideTrivialRecipes = false
> EnchantSpellToItem = <table> {
> }
> db = <table> {
> }
> bankBusy = false
> interface = 50500
> AdditionalButtonsList = <table> {
> }
> pluginsOptions = <table> {
> }
> FixBugs = true
> L = <table>
Please add the two lines below to ...\Interface\Addons\Skillet_Classic\UI\MainFrame.lua
after GetItemCount
on line 30 and let me know if that fixes it.
local GetItemCount = C_Item and C_Item.GetItemCount or GetItemCount
local GetItemIcon = C_Item and C_Item.GetItemIcon or GetItemIcon
local GetItemQualityColor = C_Item and C_Item.GetItemQualityColor or GetItemQualityColor
Hi @b-morgan
I added the two locales, and I get this error now:
> 1x bad argument #1 to '?' (Usage: local icon = C_Item.GetItemIcon(itemLocation))
> [Skillet-Classic/UI/MainFrame.lua]:1901: in function 'UpdateDetailsWindow'
> [Skillet-Classic/UI/MainFrame.lua]:979: in function 'UpdateTradeSkillWindow'
> [Skillet-Classic/UI/MainFrame.lua]:2623: in function 'ScrollToSkillIndex'
> [Skillet-Classic/Skillet.lua]:1680: in function 'SetSelectedSkill'
> [Skillet-Classic/UI/MainFrame.lua]:2544: in function 'SkillButton_OnClick'
> [*MainFrame.xml:359_OnClick]:2: in function <[string "*MainFrame.xml:359_OnClick"]:1>
>
> Locals:
> self = <table> {
> mouseOver = SkilletScrollButton13 {
> }
> modules = <table> {
> }
> castSpellName = "Joaillerie"
> hideTrivialRecipes = false
> EnchantSpellToItem = <table> {
> }
> db = <table> {
> }
> bankBusy = false
> interface = 50500
> AdditionalButtonsList = <table> {
> }
> pluginsOptions = <table> {
> }
> FixBugs = true
> L = <table> {
> }
> button_count = 27
> NewsName = "Skillet-Classic News"
> selectedQueueName = ""
> tradeShow = true
> isCraft = false
> DSAPlugin = <table> {
> }
> dataScanned = true
> selectedSkill = 13
> AUCPlugin = <table> {
> }
> AHDBPlugin = <table> {
> }
> registeredPlugins = <table> {
> }
> WARN_COLOR = "|c0000FFE0"
> hooks = <table> {
> }
> loginTime = 4377.548000
> numItemsToCraft = 1
> pluginsOrder = 8
> gttScale = 1
> project = 19
> currentTrade = 25229
> baseName = "Skillet-Classic"
> bagsChanged = false
> displayDetailPlugins = <table> {
> }
> STATUS_COLOR = "|c0033CCFF"
> lastCraft = false
> tradeSkillList = <table> {
> }
> TRACE_COLOR = "|c0000FFA0"
> linkedSkill = false
> fullView = true
> RecipeNameSuffixes = <table> {
> }
> AdditionalAbilities = <table> {
> }
> SpecialVendorItems = <table> {
> }
> bankQueue = <table> {
> }
> guildQueue = <table> {
> }
> TradeSkillIgnoredMats = <table> {
> }
> wowVersion = 50500
> filterSelected = 1
> defaultModuleState = true
> tradeSkillFrame = SkilletFrame {
> }
> tradeSkillIDsByName = <table> {
> }
> WarnLog = true
> skippedQueue = <table> {
> }
> selectedTextOffsetXY = <table> {
> }
> isGuild = false
> sourceTradeSkillLevel = 4
> NewsData = <table> {
> }
> saved_full_button_count = 0
> options = <table> {
> }
> scrollData = <table> {
> }
> unknownRecipe = <table> {
> }
> RecipeNamePrefixes = <table> {
> }
> ATLPlugin = <table> {
> }
> castSpellID = 110420
> fencePickEngaged = false
> skillMainSelection = 20
> dragStartXY = <table> {
> }
> cachedIgnoreList = <table> {
> }
> skilletStandaloneQueue = SkilletStandaloneQueue {
> }
> lastTrade = 25229
> visited = <table> {
> }
> groupList = <table> {
> }
> scanInProgress = false
> dataSourceChanged = false
> hideTradeSkillFrame = true
> tradeSkillOpen = true
> BlizzardTradeSkillFrame = TradeSkillFrame {
> }
> currencyNamesByID = <table> {
> }
> currencyIDsByName = <table> {
> }
> tradeSkillNamesByID = <table> {
> }
> skillIsCraft = <table> {
> }
> currentGroupLabel = "Blizzard"
> currentPlayer = "Adalt"
> hideUncraftableRecipes = false
> data = <table> {
> }
> optionsFrame = Frame {
> }
> wowBuild = "61496"
> visibleSkillButtons = 27
> ATRPlugin = <table> {
> }
> dragEngaged = false
> build = "Mists"
> craftUpdate = 0
> MAXDEBUG = 4000
> tradeUpdate = 2
> TradeSkillAutoTarget = <table> {
> }
> duplicateItemID = <table> {
> }
> NewsGUI = <table> {
> }
> ignoreClose = false
> DebugProfile = <table> {
> }
> enabledState = true
> saved_SA_button_count = 0
> processQueuePlugins = <table> {
> }
> skill_style_type = <table> {
> }
> defaultModuleLibraries = <table> {
> }
> version = "2.13"
> BCPlugin = <table> {
> }
> DEBUG_COLOR = "|c00A0FF00"
> MAXPROFILE = 2000
> DebugLog = <table> {
> }
> NewsFrame = <table> {
> }
> updatePlugins = <table> {
> }
> defaultOptions = <table> {
> }
> name = "Skillet"
> orderedModules = <table> {
> }
> }
> skillIndex = 13
> texture = nil
> skill = <table> {
> numRecursive = 0
> id = "Cœur du fleuve orageux"
> difficulty = "medium"
> numCraftable = 40
> name = "Cœur du fleuve orageux"
> category = "Gemmes bleues"
> tools = <table> {
> }
> numCraftableVendor = 0
> color = <table> {
> }
> numCraftableAlts = 0
> }
> recipe = <table> {
> vendorOnly = false
> numMade = 1
> name = "Cœur du fleuve orageux"
> reagentData = <table> {
> }
> tools = <table> {
> }
> itemID = 76637
> tradeID = 25229
> spellID = 106948
> }
> tools = "Trousse de joaillier"
> lastUpdateSpellID = "Cœur du fleuve orageux"
> DA = <table> {
> mouseOver = SkilletScrollButton13 {
> }
> modules = <table> {
> }
> castSpellName = "Joaillerie"
> hideTrivialRecipes = false
> EnchantSpellToItem = <table> {
> }
> db = <table> {
> }
> bankBusy = false
> interface = 50500
> AdditionalButtonsList = <table> {
> }
> pluginsOptions = <table> {
> }
> FixBugs = true
> L = <table> {
> }
> button_count = 27
> NewsName = "Skillet-Classic News"
> selectedQueueName = ""
> tradeShow = true
> isCraft = false
> DSAPlugin = <table> {
> }
> dataScanned = true
I was able to get onto the Beta and reproduce the error. Blizzard never makes it easy but I found the solution and verified it.
Please change the GetItemIcon line (31) to:
local GetItemIcon = C_Item and C_Item.GetItemIconByID or GetItemIcon
Also, insert the same line after line 20 in ...\Interface\AddOns\Skillet-Classic\TradeskillInfo.lua
I'll get an alpha release out soon. Thanks for your help.
Skillet-Classic-2.14-alpha1 has been released with these fixes.