annotate data.lua @ 50:67845ab152ce

Playing with .pkgmeta
author contrebasse
date Mon, 09 May 2011 22:43:51 +0200
parents d74613eb5f72
children 4d0ec5b598d0
rev   line source
contrebasse@0 1 local addonName, A = ...
contrebasse@0 2
contrebasse@41 3 -- @todo: complete jewelcrafting items
contrebasse@41 4
contrebasse@15 5 local MillID = 51005
contrebasse@15 6 local macroMill = "/cast "..GetSpellInfo(MillID).."\n/use "
contrebasse@31 7 local MillLink = GetSpellLink(MillID)
contrebasse@31 8 MillID = nil
contrebasse@15 9 local ProspectID = 31252
contrebasse@15 10 local macroProspect = "/cast "..GetSpellInfo(ProspectID).."\n/use "
contrebasse@31 11 local ProspectLink = GetSpellLink(ProspectID)
contrebasse@31 12 ProspectID = nil
contrebasse@0 13 A.data = {
contrebasse@0 14 -- Mill
contrebasse@11 15 -- Normal pigments
contrebasse@0 16 [39151] = { -- Alabaster Pigment
contrebasse@3 17 spell = macroMill,
contrebasse@31 18 spellLink = MillLink,
contrebasse@11 19 {2447,5,2,3}, -- Peacebloom
contrebasse@11 20 { 765,5,2,3}, -- Silverleaf
contrebasse@11 21 {2449,5,2,4}}, -- Earthroot
contrebasse@20 22 [39334] = { -- Dusky Pigment
contrebasse@3 23 spell = macroMill,
contrebasse@31 24 spellLink = MillLink,
contrebasse@11 25 { 785,5,2,3}, -- Mageroyal
contrebasse@11 26 {2450,5,2,3}, -- Briarthorn
contrebasse@11 27 {2452,5,2,3}, -- Swiftthistle
contrebasse@11 28 {2453,5,2,4}, -- Bruiseweed
contrebasse@11 29 {3820,5,2,4}}, -- Stranglekelp
contrebasse@0 30 [39338] = { -- Golden Pigment
contrebasse@3 31 spell = macroMill,
contrebasse@31 32 spellLink = MillLink,
contrebasse@11 33 {3369,5,2,3}, -- Grave Moss
contrebasse@11 34 {3355,5,2,3}, -- Wild Steelbloom
contrebasse@11 35 {3356,5,2,4}, -- Kingsblood
contrebasse@11 36 {3357,5,2,4}}, -- Liferoot
contrebasse@0 37 [39339] = { -- Emerald Pigment
contrebasse@3 38 spell = macroMill,
contrebasse@31 39 spellLink = MillLink,
contrebasse@11 40 {3818,5,2,3}, -- Fadeleaf
contrebasse@11 41 {3821,5,2,3}, -- Goldthorn
contrebasse@11 42 {3358,5,3,4}, -- Khadgar's Whisker
contrebasse@11 43 {3819,5,3,4}}, -- Dragon's Teeth
contrebasse@0 44 [39340] = { -- Violet Pigment
contrebasse@3 45 spell = macroMill,
contrebasse@31 46 spellLink = MillLink,
contrebasse@11 47 {4625,5,2,3}, -- Firebloom
contrebasse@11 48 {8831,5,2,3}, -- Purple Lotus
contrebasse@11 49 {8836,5,2,3}, -- Arthas' Tears
contrebasse@11 50 {8838,5,2,3}, -- Sungrass
contrebasse@11 51 {8839,5,2,4}, -- Blindweed
contrebasse@11 52 {8845,5,2,4}, -- Ghost Mushroom
contrebasse@11 53 {8846,5,2,4}}, -- Gromsblood
contrebasse@0 54 [39341] = { -- Silvery Pigment
contrebasse@3 55 spell = macroMill,
contrebasse@31 56 spellLink = MillLink,
contrebasse@11 57 {13464,5,2,3}, -- Golden Sansam
contrebasse@11 58 {13463,5,2,3}, -- Dreamfoil
contrebasse@11 59 {13465,5,2,4}, -- Mountain Silversage
contrebasse@11 60 {13466,5,2,4}, -- Sorrowmoss
contrebasse@11 61 {13467,5,2,4}}, -- Icecap
contrebasse@0 62 [39342] = { -- Nether Pigment
contrebasse@3 63 spell = macroMill,
contrebasse@31 64 spellLink = MillLink,
contrebasse@11 65 {22786,5,2,3}, -- Dreaming Glory
contrebasse@11 66 {22785,5,2,3}, -- Felweed
contrebasse@11 67 {22789,5,2,3}, -- Terocone
contrebasse@11 68 {22787,5,2,3}, -- Ragveil
contrebasse@11 69 {22790,5,2,4}, -- Ancient Lichen
contrebasse@11 70 {22793,5,2,4}, -- Mana Thistle
contrebasse@11 71 {22791,5,2,4}, -- Netherbloom
contrebasse@11 72 {22792,5,2,4}}, -- Nightmare Vine
contrebasse@0 73 [39343] = { -- Azure Pigment
contrebasse@31 74 spellLink = MillLink,
contrebasse@3 75 spell = macroMill,
contrebasse@11 76 {37921,5,2,3}, -- Deadnettle
contrebasse@11 77 {36901,5,2,3}, -- Goldclover
contrebasse@11 78 {36907,5,2,3}, -- Talandra's Rose
contrebasse@11 79 {36904,5,2,3}, -- Tiger Lily
contrebasse@11 80 {39970,5,2,3}, -- Fire Leaf
contrebasse@42 81 {39969,5,2.3,3}, -- Fire Seed (2:33%/3:67%)
contrebasse@11 82 {36903,5,2,4}, -- Adder's Tongue
contrebasse@11 83 {36906,5,2,4}, -- Icethorn
contrebasse@11 84 {36905,5,2,4}}, -- Lichbloom
contrebasse@0 85 [61979] = { -- Ashen Pigment
contrebasse@3 86 spell = macroMill,
contrebasse@31 87 spellLink = MillLink,
contrebasse@11 88 {52983,5,2,3}, -- Cinderbloom
contrebasse@11 89 {52985,5,2,3}, -- Azshara's Veil
contrebasse@11 90 {52984,5,2,3}, -- Stormvine
contrebasse@11 91 {52986,5,2,3}, -- Heartblossom
contrebasse@11 92 {52988,5,2,4}, -- Whiptail
contrebasse@11 93 {52987,5,2,4}}, -- Twilight Jasmine
contrebasse@11 94 -- Rare pigments
contrebasse@11 95 [43103] = { -- Verdant Pigment
contrebasse@11 96 spell = macroMill,
contrebasse@31 97 spellLink = MillLink,
contrebasse@11 98 {785,5,0.25}, -- Mageroyal
contrebasse@11 99 {2450,5,0.25}, -- Briarthorn
contrebasse@11 100 {2452,5,0.25}, -- Swiftthistle
contrebasse@11 101 {2453,5,0.5}, -- Bruiseweed
contrebasse@11 102 {3820,5,0.5}}, -- Stranglekelp
contrebasse@11 103 [43104] = { -- Burnt Pigment
contrebasse@11 104 spell = macroMill,
contrebasse@31 105 spellLink = MillLink,
contrebasse@11 106 {3369,5,0.25}, -- Grave Moss
contrebasse@11 107 {3355,5,0.25}, -- Wild Steelbloom
contrebasse@11 108 {3356,5,0.5}, -- Kingsblood
contrebasse@11 109 {3357,5,0.5}}, -- Liferoot
contrebasse@11 110 [43105] = { -- Indigo Pigment
contrebasse@11 111 spell = macroMill,
contrebasse@31 112 spellLink = MillLink,
contrebasse@11 113 {3818,5,0.25}, -- Fadeleaf
contrebasse@11 114 {3821,5,0.25}, -- Goldthorn
contrebasse@11 115 {3358,5,0.5}, -- Khadgar's Whisker
contrebasse@11 116 {3819,5,0.5}}, -- Dragon's Teeth
contrebasse@11 117 [43106] = { -- Ruby Pigment
contrebasse@11 118 spell = macroMill,
contrebasse@31 119 spellLink = MillLink,
contrebasse@11 120 {4625,5,0.25}, -- Firebloom
contrebasse@11 121 {8831,5,0.25}, -- Purple Lotus
contrebasse@11 122 {8836,5,0.25}, -- Arthas' Tears
contrebasse@11 123 {8838,5,0.25}, -- Sungrass
contrebasse@11 124 {8839,5,0.5}, -- Blindweed
contrebasse@11 125 {8845,5,0.5}, -- Ghost Mushroom
contrebasse@11 126 {8846,5,0.5}}, -- Gromsblood
contrebasse@11 127 [43107] = { -- Sapphire Pigment
contrebasse@11 128 spell = macroMill,
contrebasse@31 129 spellLink = MillLink,
contrebasse@11 130 {13464,5,0.25}, -- Golden Sansam
contrebasse@11 131 {13463,5,0.25}, -- Dreamfoil
contrebasse@11 132 {13465,5,0.5}, -- Mountain Silversage
contrebasse@11 133 {13466,5,0.5}, -- Sorrowmoss
contrebasse@11 134 {13467,5,0.5}}, -- Icecap
contrebasse@11 135 [43108] = { -- Ebon Pigment
contrebasse@11 136 spell = macroMill,
contrebasse@31 137 spellLink = MillLink,
contrebasse@11 138 {22786,5,0.25}, -- Dreaming Glory
contrebasse@11 139 {22785,5,0.25}, -- Felweed
contrebasse@11 140 {22789,5,0.25}, -- Terocone
contrebasse@11 141 {22787,5,0.25}, -- Ragveil
contrebasse@11 142 {22790,5,0.5}, -- Ancient Lichen
contrebasse@11 143 {22793,5,0.5}, -- Mana Thistle
contrebasse@11 144 {22791,5,0.5}, -- Netherbloom
contrebasse@11 145 {22792,5,0.5}}, -- Nightmare Vine
contrebasse@11 146 [43109] = { -- Icy Pigment
contrebasse@31 147 spellLink = MillLink,
contrebasse@11 148 spell = macroMill,
contrebasse@11 149 {37921,5,0.25}, -- Deadnettle
contrebasse@11 150 {36901,5,0.25}, -- Goldclover
contrebasse@11 151 {36907,5,0.25}, -- Talandra's Rose
contrebasse@11 152 {36904,5,0.25}, -- Tiger Lily
contrebasse@11 153 {39970,5,0.25}, -- Fire Leaf
contrebasse@11 154 {39969,5,0.25}, -- Fire Seed
contrebasse@11 155 {36903,5,0.5}, -- Adder's Tongue
contrebasse@11 156 {36906,5,0.5}, -- Icethorn
contrebasse@11 157 {36905,5,0.5}}, -- Lichbloom
contrebasse@11 158 [61980] = { -- Burning Embers
contrebasse@11 159 spell = macroMill,
contrebasse@31 160 spellLink = MillLink,
contrebasse@11 161 {52983,5,0.25}, -- Cinderbloom
contrebasse@11 162 {52985,5,0.25}, -- Azshara's Veil
contrebasse@11 163 {52984,5,0.25}, -- Stormvine
contrebasse@11 164 {52986,5,0.25}, -- Heartblossom
contrebasse@11 165 {52988,5,0.5}, -- Whiptail
contrebasse@11 166 {52987,5,0.5}}, -- Twilight Jasmine
contrebasse@0 167
contrebasse@8 168 -- Prospect
contrebasse@8 169 [774] = { -- Malachite
contrebasse@9 170 spell = macroProspect,
contrebasse@31 171 spellLink = ProspectLink,
contrebasse@8 172 {2770,5,0.5}}, -- Copper Ore
contrebasse@8 173 [818] = { -- Tigerseye
contrebasse@9 174 spell = macroProspect,
contrebasse@31 175 spellLink = ProspectLink,
contrebasse@8 176 {2770,5,0.5}}, -- Copper Ore
contrebasse@8 177 [1210] = { -- Shadowgem
contrebasse@9 178 spell = macroProspect,
contrebasse@31 179 spellLink = ProspectLink,
contrebasse@11 180 {2771,50,0.38}, -- Tin Ore
contrebasse@8 181 {2770,5,0.1}}, -- Copper Ore
contrebasse@8 182 [1705] = { -- Lesser Moonstone
contrebasse@9 183 spell = macroProspect,
contrebasse@31 184 spellLink = ProspectLink,
contrebasse@8 185 {2771,5,0.38}, -- Tin Ore
contrebasse@8 186 {2772,5,0.35}}, -- Iron Ore
contrebasse@8 187 [1206] = { -- Moss Agate
contrebasse@9 188 spell = macroProspect,
contrebasse@31 189 spellLink = ProspectLink,
contrebasse@8 190 {2771,5,0.37}}, -- Tin Ore
contrebasse@8 191 [1529] = { -- Jade
contrebasse@9 192 spell = macroProspect,
contrebasse@31 193 spellLink = ProspectLink,
contrebasse@8 194 {2772,5,0.35}, -- Iron Ore
contrebasse@8 195 {2771,5,0.03}}, -- Tin Ore
contrebasse@8 196 [7909] = { -- Aquamarine
contrebasse@9 197 spell = macroProspect,
contrebasse@31 198 spellLink = ProspectLink,
contrebasse@8 199 {3858,5,0.35}, -- Mithril Ore
contrebasse@8 200 {2772,5,0.05}, -- Iron Ore
contrebasse@8 201 {2771,5,0.03}}, -- Tin Ore
contrebasse@8 202 [3864] = { -- Citrine
contrebasse@9 203 spell = macroProspect,
contrebasse@31 204 spellLink = ProspectLink,
contrebasse@8 205 {2772,5,0.36}, -- Iron Ore
contrebasse@8 206 {3858,5,0.35}, -- Mithril Ore
contrebasse@8 207 {2771,5,0.03}}, -- Tin Ore
contrebasse@8 208 [7910] = { -- Star Ruby
contrebasse@9 209 spell = macroProspect,
contrebasse@31 210 spellLink = ProspectLink,
contrebasse@8 211 {3858,5,0.36}, -- Mithril Ore
contrebasse@8 212 {10620,5,0.15}, -- Thorium Ore
contrebasse@8 213 {2772,5,0.05}}, -- Iron Ore
contrebasse@8 214 [12799] = { -- Large Opal
contrebasse@9 215 spell = macroProspect,
contrebasse@31 216 spellLink = ProspectLink,
contrebasse@8 217 {10620,5,0.31}, -- Thorium Ore
contrebasse@8 218 {3858,5,0.03}}, -- Mithril Ore
contrebasse@8 219 [12361] = { -- Blue Sapphire
contrebasse@9 220 spell = macroProspect,
contrebasse@31 221 spellLink = ProspectLink,
contrebasse@8 222 {10620,5,0.31}, -- Thorium Ore
contrebasse@8 223 {3858,5,0.02}}, -- Mithril Ore
contrebasse@8 224 [12800] = { -- Azerothian Diamond
contrebasse@9 225 spell = macroProspect,
contrebasse@31 226 spellLink = ProspectLink,
contrebasse@8 227 {10620,5,0.31}, -- Thorium Ore
contrebasse@8 228 {3858,5,0.02}}, -- Mithril Ore
contrebasse@8 229 [12364] = { -- Huge Emerald
contrebasse@9 230 spell = macroProspect,
contrebasse@31 231 spellLink = ProspectLink,
contrebasse@8 232 {10620,5,0.31}, -- Thorium Ore
contrebasse@8 233 {3858,5,0.02}}, -- Mithril Ore
contrebasse@8 234 [23112] = { -- Golden Draenite
contrebasse@9 235 spell = macroProspect,
contrebasse@31 236 spellLink = ProspectLink,
contrebasse@8 237 {23424,5,0.19}, -- Fel Iron Ore
contrebasse@8 238 {23425,5,0.18}}, -- Adamantite Ore
contrebasse@8 239 -- To be continued...
contrebasse@8 240
contrebasse@8 241
contrebasse@3 242 -- To add : enchants, elementals, prospecting
contrebasse@0 243 }
contrebasse@0 244
contrebasse@0 245 -- @todo improve scanning
contrebasse@0 246 -- @todo rescan when a new refipe appears (TRADESKILL_UPDATE ?)
contrebasse@0 247 -- @todo be sure that skillName is unique, or use something else
contrebasse@0 248 -- @todo add support for multi-reagents recipes
contrebasse@15 249 do
contrebasse@15 250 -- lua functions
contrebasse@15 251 local print = print
contrebasse@15 252 local ipairs = ipairs
contrebasse@15 253 local tinsert = tinsert
contrebasse@0 254
contrebasse@15 255 -- Wow functions
contrebasse@15 256 local GetNumTradeSkills = GetNumTradeSkills
contrebasse@15 257 local GetTradeSkillInfo = GetTradeSkillInfo
contrebasse@15 258 local GetTradeSkillNumReagents = GetTradeSkillNumReagents
contrebasse@15 259 local GetTradeSkillItemLink = GetTradeSkillItemLink
contrebasse@15 260 local GetTradeSkillReagentItemLink = GetTradeSkillReagentItemLink
contrebasse@15 261 local GetTradeSkillReagentInfo = GetTradeSkillReagentInfo
contrebasse@15 262 local GetTradeSkillNumMade = GetTradeSkillNumMade
contrebasse@0 263
contrebasse@15 264 -- the function who scans the tradeskill
contrebasse@15 265 function A:ScanSimpleRecipes()
contrebasse@26 266 -- Check if the tradeskill is loaded
contrebasse@26 267 -- Has to have recipes and begin with a header
contrebasse@26 268 local NRecipes = GetNumTradeSkills()
contrebasse@26 269 if NRecipes==0 or select(2,GetTradeSkillInfo(1))~="header" then
contrebasse@26 270 return
contrebasse@26 271 end
contrebasse@26 272
contrebasse@26 273 for i = 2,NRecipes do -- The first one is a header
contrebasse@15 274 local skillName, skillType, numAvailable, isExpanded, serviceType, numSkillUps = GetTradeSkillInfo(i)
contrebasse@15 275 if skillType ~= "header" then
contrebasse@36 276 --if GetTradeSkillNumReagents(i) == 1 then
contrebasse@15 277 -- item ID
contrebasse@15 278 local itemID = A.link2ID(GetTradeSkillItemLink(i))
contrebasse@0 279
contrebasse@15 280 -- reagent ID
contrebasse@15 281 local reagentID = A.link2ID(GetTradeSkillReagentItemLink(i, 1))
contrebasse@14 282
contrebasse@15 283 -- reagent number needed
contrebasse@15 284 local reagentName, reagentTexture, reagentCount, playerReagentCount = GetTradeSkillReagentInfo(i, 1)
contrebasse@14 285
contrebasse@15 286 -- number of reagent created by the recipe
contrebasse@15 287 local minMade, maxMade = GetTradeSkillNumMade(i)
contrebasse@30 288
contrebasse@30 289 -- recipe link (for tooltips)
contrebasse@30 290 local recipeLink = GetTradeSkillRecipeLink(i)
contrebasse@0 291
contrebasse@15 292 -- error checking
contrebasse@30 293 if not reagentID or not reagentCount or not skillName or not itemID or not minMade or not maxMade or not recipeLink then
contrebasse@30 294 print("Erreur de scan :",itemID,skillName,reagentID,reagentCount,minMade,maxMade,recipeLink)
contrebasse@37 295
contrebasse@37 296 else -- Zap incomplete recipes, they will be scanned later
contrebasse@37 297 -- remove unneeded minMade/maxMade
contrebasse@37 298 if maxMade==minMade then
contrebasse@37 299 maxMade = nil
contrebasse@37 300 if minMade==1 then
contrebasse@37 301 minMade = nil
contrebasse@37 302 end -- if
contrebasse@37 303 end -- if
contrebasse@15 304
contrebasse@37 305 -- skillName or...???
contrebasse@37 306 -- There's still a problem when multiple recipes craft the same item
contrebasse@37 307 if not A.data[itemID] then
contrebasse@37 308 A.data[itemID] = {}
contrebasse@15 309 end -- if
contrebasse@37 310 local newSpell = true
contrebasse@37 311 for _,v in ipairs(A.data[itemID]) do
contrebasse@37 312 if v.spellName==skillName then
contrebasse@37 313 newSpell = nil
contrebasse@37 314 break
contrebasse@37 315 end -- if
contrebasse@37 316 end -- for
contrebasse@37 317 if newSpell then
contrebasse@37 318 A.data[itemID].spellLink = recipeLink
contrebasse@38 319 A.data[itemID].manyReagents = A.data[itemID].manyReagents or GetTradeSkillNumReagents(i)>1
contrebasse@37 320 tinsert(A.data[itemID],{reagentID,reagentCount,minMade,maxMade,spellName=skillName})
contrebasse@15 321 end -- if
contrebasse@15 322 end -- if
contrebasse@36 323 --end -- if
contrebasse@0 324 end -- if
contrebasse@15 325 end -- for
contrebasse@26 326
contrebasse@26 327 -- the scanning is complete
contrebasse@26 328 return true
contrebasse@15 329 end -- function
contrebasse@15 330 end -- do