Mercurial > wow > reagentmaker
changeset 12:2273a56762cb
Manage -partially- multiple recipes for the same item adn track the number of items made by a recipe
author | contrebasse |
---|---|
date | Sun, 03 Apr 2011 00:25:08 +0200 |
parents | 2716889648bd |
children | 5eb02d3e1647 |
files | data.lua |
diffstat | 1 files changed, 24 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/data.lua Sat Apr 02 23:37:19 2011 +0200 +++ b/data.lua Sun Apr 03 00:25:08 2011 +0200 @@ -254,17 +254,35 @@ -- reagent number needed local reagentName, reagentTexture, reagentCount, playerReagentCount = GetTradeSkillReagentInfo(i, 1) - -- skillName or...??? - if not reagentID or not reagentCount or not skillName or not itemID then - A.DEBUG("Erreur de scan :") - print(itemID," ",skillName," ",reagentID," ",reagentCount) + -- number of reagent created by the recipe + local minMade, maxMade = GetTradeSkillNumMade(i) + if maxMade==minMade then + maxMade = nil + if minMade==1 then + minMade = nil + end end + -- error checking + if not reagentID or not reagentCount or not skillName or not itemID or not minMade or not maxMade then + print("Erreur de scan :",itemID,skillName,reagentID,reagentCount,minMade,maxMade) + end + + -- skillName or...??? if not A.data[itemID] then - A.data[itemID] = {{reagentID,reagentCount}} + A.data[itemID] = {} + end + local newSpell = true + for _,v in ipairs(A.data[itemID]) do + if v.spellName==skillName then + newSpell = nil + break + end + end + if newSpell then + tinsert(A.data[itemID],{reagentID,reagentCount,minMade,maxMade,spellName=skillName}) end end -- if end -- if end -- for - end