comparison data.lua @ 26:886be292feec

Avoid scanning when tradeskill is not fully loaded (no recipe or the first one is not a header)
author contrebasse
date Thu, 28 Apr 2011 19:43:07 +0200
parents 4ea38bae4174
children fd76c8951b7d
comparison
equal deleted inserted replaced
25:578b9c9479c9 26:886be292feec
255 local GetTradeSkillReagentInfo = GetTradeSkillReagentInfo 255 local GetTradeSkillReagentInfo = GetTradeSkillReagentInfo
256 local GetTradeSkillNumMade = GetTradeSkillNumMade 256 local GetTradeSkillNumMade = GetTradeSkillNumMade
257 257
258 -- the function who scans the tradeskill 258 -- the function who scans the tradeskill
259 function A:ScanSimpleRecipes() 259 function A:ScanSimpleRecipes()
260 for i = 1,GetNumTradeSkills() do 260 -- Check if the tradeskill is loaded
261 -- Has to have recipes and begin with a header
262 local NRecipes = GetNumTradeSkills()
263 if NRecipes==0 or select(2,GetTradeSkillInfo(1))~="header" then
264 return
265 end
266
267 for i = 2,NRecipes do -- The first one is a header
261 local skillName, skillType, numAvailable, isExpanded, serviceType, numSkillUps = GetTradeSkillInfo(i) 268 local skillName, skillType, numAvailable, isExpanded, serviceType, numSkillUps = GetTradeSkillInfo(i)
262 if skillType ~= "header" then 269 if skillType ~= "header" then
263 if GetTradeSkillNumReagents(i) == 1 then 270 if GetTradeSkillNumReagents(i) == 1 then
264 -- item ID 271 -- item ID
265 local itemID = A.link2ID(GetTradeSkillItemLink(i)) 272 local itemID = A.link2ID(GetTradeSkillItemLink(i))
301 tinsert(A.data[itemID],{reagentID,reagentCount,minMade,maxMade,spellName=skillName}) 308 tinsert(A.data[itemID],{reagentID,reagentCount,minMade,maxMade,spellName=skillName})
302 end -- if 309 end -- if
303 end -- if 310 end -- if
304 end -- if 311 end -- if
305 end -- for 312 end -- for
313
314 -- the scanning is complete
315 return true
306 end -- function 316 end -- function
307 end -- do 317 end -- do