annotate Constants.lua @ 330:267e7100407c WoD

Misc WoD fixes, including 'region' support, many WoD loot containers, and changed 1/0 flags to booleans. Also bumped TOC.
author MMOSimca <MMOSimca@gmail.com>
date Fri, 22 Aug 2014 03:45:27 -0400
parents 84817627cb22
children cba0e57a71b7
rev   line source
jcallahan@1 1 -----------------------------------------------------------------------
jcallahan@1 2 -- Upvalued Lua API.
jcallahan@1 3 -----------------------------------------------------------------------
jcallahan@1 4 local _G = getfenv(0)
jcallahan@1 5
jcallahan@1 6 local bit = _G.bit
jcallahan@1 7
jcallahan@1 8
jcallahan@1 9 -----------------------------------------------------------------------
jcallahan@1 10 -- AddOn namespace.
jcallahan@1 11 -----------------------------------------------------------------------
jcallahan@1 12 local ADDON_NAME, private = ...
jcallahan@1 13
jcallahan@1 14
jcallahan@1 15 -----------------------------------------------------------------------
jcallahan@1 16 -- Constants.
jcallahan@1 17 -----------------------------------------------------------------------
jcallahan@18 18 private.wow_version, private.build_num = _G.GetBuildInfo()
MMOSimca@330 19 private.region = GetCVar("portal"):sub(0,2):upper()
MMOSimca@330 20 -- PTR/Beta return "public-test", but they are properly called "XX"
MMOSimca@330 21 if private.region == "PU" then private.region = "XX" end
jcallahan@18 22
jcallahan@1 23 private.UNIT_TYPES = {
MMOSimca@329 24 PLAYER = "Player",
MMOSimca@329 25 OBJECT = "GameObject",
MMOSimca@329 26 UNKNOWN = "Unknown",
MMOSimca@329 27 NPC = "Creature",
MMOSimca@329 28 PET = "Pet",
MMOSimca@329 29 VEHICLE = "Vehicle",
MMOSimca@329 30 ITEM = "Item",
jcallahan@1 31 }
jcallahan@1 32
jcallahan@10 33 private.UNIT_TYPE_NAMES = {
MMOSimca@329 34 ["Player"] = "PLAYER",
MMOSimca@329 35 ["GameObject"] = "OBJECT",
MMOSimca@329 36 ["Unknown"] = "UNKNOWN",
MMOSimca@329 37 ["Creature"] = "NPC",
MMOSimca@329 38 ["Pet"] = "PET",
MMOSimca@329 39 ["Vehicle"] = "VEHICLE",
MMOSimca@329 40 ["Item"] = "ITEM",
jcallahan@10 41 }
jcallahan@10 42
jcallahan@1 43 private.ACTION_TYPE_FLAGS = {
jcallahan@1 44 ITEM = 0x00000001,
jcallahan@1 45 NPC = 0x00000002,
jcallahan@1 46 OBJECT = 0x00000004,
jcallahan@1 47 ZONE = 0x00000008,
jcallahan@1 48 }
jcallahan@1 49
jcallahan@151 50 private.ACTION_TYPE_NAMES = {}
jcallahan@151 51
jcallahan@151 52 for name, bit in _G.pairs(private.ACTION_TYPE_FLAGS) do
jcallahan@151 53 private.ACTION_TYPE_NAMES[bit] = name
jcallahan@151 54 end
jcallahan@151 55
jcallahan@326 56 private.EXTRAPOLATION_BANNED_SPELL_IDS = {
jcallahan@326 57 [13262] = "DISENCHANT",
jcallahan@326 58 [4036] = "ENGINEERING",
jcallahan@326 59 [30427] = "EXTRACT_GAS",
jcallahan@326 60 [131476] = "FISHING",
jcallahan@326 61 [2366] = "HERB_GATHERING",
jcallahan@326 62 [51005] = "MILLING",
jcallahan@326 63 [605] = "MIND_CONTROL",
jcallahan@326 64 [2575] = "MINING",
jcallahan@326 65 [921] = "PICK_POCKET",
jcallahan@326 66 [31252] = "PROSPECTING",
jcallahan@326 67 [73979] = "SEARCHING_FOR_ARTIFACTS",
jcallahan@326 68 [8613] = "SKINNING",
jcallahan@326 69 }
jcallahan@326 70
jcallahan@1 71 private.SPELL_LABELS_BY_NAME = {
jcallahan@1 72 [_G.GetSpellInfo(13262)] = "DISENCHANT",
jcallahan@1 73 [_G.GetSpellInfo(4036)] = "ENGINEERING",
jcallahan@48 74 [_G.GetSpellInfo(30427)] = "EXTRACT_GAS",
jcallahan@99 75 [_G.GetSpellInfo(131476)] = "FISHING",
jcallahan@1 76 [_G.GetSpellInfo(2366)] = "HERB_GATHERING",
jcallahan@1 77 [_G.GetSpellInfo(51005)] = "MILLING",
jcallahan@1 78 [_G.GetSpellInfo(605)] = "MIND_CONTROL",
jcallahan@1 79 [_G.GetSpellInfo(2575)] = "MINING",
jcallahan@1 80 [_G.GetSpellInfo(3365)] = "OPENING",
jcallahan@1 81 [_G.GetSpellInfo(921)] = "PICK_POCKET",
jcallahan@1 82 [_G.GetSpellInfo(31252)] = "PROSPECTING",
jcallahan@1 83 [_G.GetSpellInfo(73979)] = "SEARCHING_FOR_ARTIFACTS",
jcallahan@1 84 [_G.GetSpellInfo(8613)] = "SKINNING",
jcallahan@1 85 }
jcallahan@1 86
jcallahan@105 87 private.NON_LOOT_SPELL_LABELS = {
jcallahan@105 88 MIND_CONTROL = true,
jcallahan@105 89 }
jcallahan@105 90
jcallahan@1 91 local AF = private.ACTION_TYPE_FLAGS
jcallahan@1 92
jcallahan@1 93 private.SPELL_FLAGS_BY_LABEL = {
jcallahan@1 94 DISENCHANT = AF.ITEM,
jcallahan@1 95 ENGINEERING = AF.NPC,
jcallahan@48 96 EXTRACT_GAS = AF.ZONE,
jcallahan@151 97 FISHING = AF.ZONE,
jcallahan@23 98 HERB_GATHERING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 99 MILLING = AF.ITEM,
jcallahan@1 100 MIND_CONTROL = AF.NPC,
jcallahan@23 101 MINING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 102 OPENING = AF.OBJECT,
jcallahan@1 103 PICK_POCKET = AF.NPC,
jcallahan@1 104 PROSPECTING = AF.ITEM,
jcallahan@1 105 SEARCHING_FOR_ARTIFACTS = AF.OBJECT,
jcallahan@1 106 SKINNING = AF.NPC,
jcallahan@1 107 }
jcallahan@177 108
jcallahan@306 109 private.LOOT_SPELL_ID_TO_ITEM_ID_MAP = {
jcallahan@306 110 [142397] = 98134, -- Heroic Cache of Treasures
MMOSimca@330 111 [142901] = 98546, -- Bulging Heroic Cache of Treasures
jcallahan@306 112 [143506] = 98095, -- Brawler's Pet Supplies
jcallahan@306 113 [143507] = 94207, -- Fabled Pandaren Pet Supplies
jcallahan@311 114 [143508] = 89125, -- Sack of Pet Supplies
jcallahan@311 115 [143509] = 93146, -- Pandaren Spirit Pet Supplies
jcallahan@311 116 [143510] = 93147, -- Pandaren Spirit Pet Supplies
jcallahan@311 117 [143511] = 93149, -- Pandaren Spirit Pet Supplies
jcallahan@306 118 [143512] = 93148, -- Pandaren Spirit Pet Supplies
jcallahan@311 119 [146885] = 103535, -- Bulging Bag of Charms
jcallahan@311 120 [147598] = 104014, -- Pouch of Timeless Coins
jcallahan@311 121 [149222] = 105911, -- Pouch of Enduring Wisdom
jcallahan@311 122 [149223] = 105912, -- Oversized Pouch of Enduring Wisdom
MMOSimca@330 123 [168178] = 114116, -- Bag of Salvaged Goods
MMOSimca@330 124 [168179] = 114119, -- Heafty Salvaged Crate
MMOSimca@330 125 [168180] = 114120, -- Lofty Salvaged Chest
MMOSimca@330 126 [171513] = 116414, -- Pet Supplies
MMOSimca@330 127 [175767] = 118697, -- Big Bag of Pet Supplies
jcallahan@306 128 }
jcallahan@306 129
jcallahan@177 130 private.RAID_FINDER_BOSS_IDS = {
jcallahan@244 131 -----------------------------------------------------------------------
jcallahan@244 132 -- Mogu'shan Vaults
jcallahan@244 133 -----------------------------------------------------------------------
jcallahan@177 134 [59915] = true, -- Jasper Guardian
jcallahan@177 135 [60009] = true, -- Feng the Accursed
jcallahan@177 136 [60043] = true, -- Jade Guardian
jcallahan@177 137 [60047] = true, -- Amethyst Guardian
jcallahan@177 138 [60051] = true, -- Cobalt Guardian
jcallahan@177 139 [60143] = true, -- Gara'jal the Spiritbinder
jcallahan@177 140 [60399] = true, -- Qin-xi
jcallahan@181 141 [60400] = true, -- Jan-xi
jcallahan@177 142 [60410] = true, -- Elegon
jcallahan@177 143 [60701] = true, -- Zian of the Endless Shadow
jcallahan@185 144 [60708] = true, -- Meng the Demented
jcallahan@185 145 [60709] = true, -- Qiang the Merciless
jcallahan@185 146 [60710] = true, -- Subetai the Swift
jcallahan@244 147
jcallahan@244 148 -----------------------------------------------------------------------
jcallahan@244 149 -- Terrace of Endless Spring
jcallahan@244 150 -----------------------------------------------------------------------
jcallahan@244 151 [60583] = true, -- Protector Kaolan
jcallahan@244 152 [60585] = true, -- Elder Regail
jcallahan@244 153 [60586] = true, -- Elder Asani
jcallahan@244 154 [60999] = true, -- Sha of Fear
jcallahan@244 155 [62442] = true, -- Tsulong
jcallahan@244 156 [62983] = true, -- Lei Shi
jcallahan@244 157
jcallahan@244 158 -----------------------------------------------------------------------
jcallahan@244 159 -- Heart of Fear
jcallahan@244 160 -----------------------------------------------------------------------
jcallahan@177 161 [62164] = true, -- Garalon
jcallahan@177 162 [62397] = true, -- Wind Lord Mel'jarak
jcallahan@177 163 [62511] = true, -- Amber-Shaper Un'sok
jcallahan@177 164 [62543] = true, -- Blade Lord Ta'yak
jcallahan@177 165 [62837] = true, -- Grand Empress Shek'zeer
jcallahan@177 166 [62980] = true, -- Imperial Vizier Zor'lok
jcallahan@244 167
jcallahan@244 168 -----------------------------------------------------------------------
jcallahan@244 169 -- Throne of Thunder
jcallahan@244 170 -----------------------------------------------------------------------
jcallahan@244 171 [69465] = true, -- Jin'rokh the Breaker
jcallahan@244 172 [68476] = true, -- Horridon
jcallahan@244 173 [69078] = true, -- Sul the Sandcrawler
jcallahan@244 174 [69131] = true, -- Frost King Malakk
jcallahan@244 175 [69132] = true, -- High Priestess Mar'li
jcallahan@244 176 [69134] = true, -- Kazra'jin
jcallahan@244 177 [67977] = true, -- Tortos
jcallahan@244 178 [70212] = true, -- Flaming Head (of Megaera)
jcallahan@244 179 [70235] = true, -- Frozen Head (of Megaera)
jcallahan@244 180 [70247] = true, -- Venomous Head (of Megaera)
jcallahan@244 181 [69712] = true, -- Ji-kun
jcallahan@244 182 [68036] = true, -- Durumu
jcallahan@244 183 [69017] = true, -- Primordius
jcallahan@244 184 [69427] = true, -- Dark Animus
jcallahan@244 185 [68078] = true, -- Iron Qon
jcallahan@244 186 [68904] = true, -- Suen
jcallahan@244 187 [68905] = true, -- Lu'lin
jcallahan@244 188 [68397] = true, -- Lei Shen
jcallahan@306 189
jcallahan@306 190 -----------------------------------------------------------------------
jcallahan@306 191 -- Siege of Orgrimmar
jcallahan@306 192 -----------------------------------------------------------------------
jcallahan@306 193 [71543] = true, -- Immerseus
jcallahan@306 194 [71475] = true, -- Rook Stonetoe (Fallen Protectors encounter)
jcallahan@306 195 [71479] = true, -- He Softfoot (Fallen Protectors encounter)
jcallahan@306 196 [71480] = true, -- Sun Tenderheart (Fallen Protectors encounter)
jcallahan@306 197 [71967] = true, -- Norushen (Norushen encounter)
jcallahan@306 198 [72276] = true, -- Amalgam of Corruption (Norushen encounter)
jcallahan@306 199 [71734] = true, -- Sha of Pride
jcallahan@306 200 [72249] = true, -- Galakras
jcallahan@306 201 [71466] = true, -- Iron Juggernaut
jcallahan@306 202 [71858] = true, -- Wavebinder Kardris (Kor'kron Dark Shaman encounter)
jcallahan@306 203 [71859] = true, -- Earthbreaker Haromm (Kor'kron Dark Shaman encounter)
jcallahan@306 204 [71515] = true, -- General Nazgrim
jcallahan@306 205 [71454] = true, -- Malkorok
jcallahan@306 206 [71889] = true, -- Secured Stockpile of Pandaren Spoils (Spoils of Pandaria encounter)
jcallahan@306 207 [71529] = true, -- Thok the Bloodthirsty
jcallahan@306 208 [71504] = true, -- Siegecrafter Blackfuse
jcallahan@306 209 [71152] = true, -- Skeer the Bloodseeker (Paragons of the Klaxxi encounter)
jcallahan@306 210 [71153] = true, -- Hisek the Swarmkeeper (Paragons of the Klaxxi encounter)
jcallahan@306 211 [71154] = true, -- Ka'roz the Locust (Paragons of the Klaxxi encounter)
jcallahan@306 212 [71155] = true, -- Korven the Prime (Paragons of the Klaxxi encounter)
jcallahan@306 213 [71156] = true, -- Kaz'tik the Manipulator (Paragons of the Klaxxi encounter)
jcallahan@306 214 [71157] = true, -- Xaril the Poisoned Mind (Paragons of the Klaxxi encounter)
jcallahan@306 215 [71158] = true, -- Rik'kal the Dissector (Paragons of the Klaxxi encounter)
jcallahan@306 216 [71160] = true, -- Iyyokuk the Lucid (Paragons of the Klaxxi encounter)
jcallahan@306 217 [71161] = true, -- Kil'ruk the Wind-Reaver (Paragons of the Klaxxi encounter)
jcallahan@306 218 [71865] = true, -- Garrosh Hellscream
jcallahan@177 219 }
jcallahan@203 220
jcallahan@203 221 private.WORLD_BOSS_IDS = {
jcallahan@203 222 [60491] = true, -- Sha of Anger
jcallahan@203 223 [62346] = true, -- Galleon
jcallahan@244 224 [69099] = true, -- Nalak
jcallahan@244 225 [69161] = true, -- Oondasta
jcallahan@306 226 [71952] = true, -- Chi-Ji
jcallahan@306 227 [71953] = true, -- Xuen
jcallahan@306 228 [71954] = true, -- Niuzao
jcallahan@306 229 [71955] = true, -- Yu'lon
jcallahan@306 230 [72057] = true, -- Ordos
jcallahan@203 231 }
jcallahan@306 232
jcallahan@306 233 private.RAID_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = {
jcallahan@306 234 -----------------------------------------------------------------------
jcallahan@306 235 -- Mogu'shan Vaults
jcallahan@306 236 -----------------------------------------------------------------------
jcallahan@306 237 [125144] = 59915, -- Stone Guard Bonus (Jasper Guardian)
jcallahan@306 238 [132189] = 60009, -- Feng the Accursed Bonus (Feng the Accursed)
jcallahan@306 239 [132190] = 60143, -- Gara'jal the Spiritbinder Bonus (Gara'jal the Spiritbinder)
jcallahan@306 240 [132191] = 60709, -- Spirit Kings Bonus (Qiang the Merciless)
jcallahan@306 241 [132192] = 60410, -- Elegon Bonus (Elegon)
jcallahan@306 242 [132193] = 60399, -- Will of the Emperor Bonus (Qin-xi)
jcallahan@306 243
jcallahan@306 244 -----------------------------------------------------------------------
jcallahan@306 245 -- Terrace of Endless Spring
jcallahan@306 246 -----------------------------------------------------------------------
jcallahan@306 247 [132200] = 60583, -- Protectors of the Endless Bonus (Protector Kaolan)
jcallahan@306 248 [132204] = 60583, -- Protectors of the Endless (Elite) Bonus (Protector Kaolan)
jcallahan@306 249 [132201] = 62442, -- Tsulong Bonus (Tsulong)
jcallahan@306 250 [132202] = 62983, -- Lei Shi Bonus (Lei Shi)
jcallahan@306 251 [132203] = 60999, -- Sha of Fear Bonus (Sha of Fear)
jcallahan@306 252
jcallahan@306 253 -----------------------------------------------------------------------
jcallahan@306 254 -- Heart of Fear
jcallahan@306 255 -----------------------------------------------------------------------
jcallahan@306 256 [132194] = 62980, -- Imperial Vizier Zor'lok Bonus (Imperial Vizier Zor'lok)
jcallahan@306 257 [132195] = 62543, -- Blade Lord Tay'ak Bonus (Blade Lord Ta'yak)
jcallahan@306 258 [132196] = 62164, -- Garalon Bonus (Garalon)
jcallahan@306 259 [132197] = 62397, -- Wind Lord Mel'jarak Bonus (Wind Lord Mel'jarak)
jcallahan@306 260 [132198] = 62511, -- Amber-Shaper Un'sok Bonus (Amber-Shaper Un'sok)
jcallahan@306 261 [132199] = 62837, -- Grand Empress Shek'zeer Bonus (Grand Empress Shek'zeer)
jcallahan@306 262
jcallahan@306 263 -----------------------------------------------------------------------
jcallahan@306 264 -- Throne of Thunder
jcallahan@306 265 -----------------------------------------------------------------------
jcallahan@306 266 [139674] = 69465, -- Jin'rokh the Breaker Bonus (Jin'rokh the Breaker)
jcallahan@306 267 [139677] = 68476, -- Horridon Bonus (Horridon)
jcallahan@306 268 [139679] = 69078, -- Zandalari Troll Council Bonus (Sul the Sandcrawler)
jcallahan@306 269 [139680] = 67977, -- Tortos Bonus (Tortos)
jcallahan@306 270 [139682] = 68065, -- Magaera Bonus (Megaera)
jcallahan@306 271 [139684] = 69712, -- Ji'kun, the Ancient Mother Bonus (Ji-Kun)
jcallahan@306 272 [139686] = 68036, -- Durumu the Forgotten Bonus (Durumu the Forgotten)
jcallahan@306 273 [139687] = 69017, -- Primordious Bonus (Primordius)
jcallahan@306 274 [139688] = 69427, -- Dark Animus Bonus (Dark Animus)
jcallahan@306 275 [139689] = 68078, -- Iron Qon Bonus (Iron Qon)
jcallahan@306 276 [139690] = 68904, -- The Empyreal Queens Bonus (Suen)
jcallahan@306 277 [139691] = 68397, -- Lei Shen, The Thunder King Bonus (Lei Shen)
jcallahan@306 278 [139692] = 69473, -- Ra-den Bonus (Ra-den)
jcallahan@306 279
jcallahan@306 280 -----------------------------------------------------------------------
jcallahan@306 281 -- Siege of Orgrimmar
jcallahan@306 282 -----------------------------------------------------------------------
jcallahan@306 283 [145909] = 71543, -- Immerseus Bonus (Immerseus)
jcallahan@306 284 [145910] = 71475, -- Fallen Protectors Bonus (Rook Stonetoe)
jcallahan@306 285 [145911] = 72276, -- Norushen Bonus (Amalgam of Corruption)
jcallahan@306 286 [145912] = 71734, -- Sha of Pride Bonus (Sha of Pride)
jcallahan@306 287 [145913] = 72249, -- Galakras Bonus (Galakras)
jcallahan@306 288 [145914] = 71466, -- Iron Juggernaut Bonus (Iron Juggernaut)
jcallahan@306 289 [145915] = 71859, -- Dark Shaman Bonus (Earthbreaker Haromm)
jcallahan@306 290 [145916] = 71515, -- General Nazgrim Bonus (General Nazgrim)
jcallahan@306 291 [145917] = 71454, -- Malkorok Bonus (Malkorok)
jcallahan@306 292 [145919] = 71889, -- Spoils of Pandaria Bonus (Secured Stockpile of Pandaren Spoils)
jcallahan@306 293 [145920] = 71529, -- Thok the Bloodthirsty Bonus (Thok the Bloodthirsty)
jcallahan@306 294 [145918] = 71504, -- Siegecrafter Blackfuse Bonus (Siegecrafter Blackfuse)
jcallahan@306 295 [145921] = 71161, -- Klaxxi Paragons Bonus (Kil'ruk the Wind-Reaver)
jcallahan@306 296 [145922] = 71865, -- Garrosh Hellscream Bonus (Garrosh Hellscream)
jcallahan@306 297 }
jcallahan@306 298
jcallahan@306 299 private.WORLD_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = {
jcallahan@306 300 [132205] = 60491, -- Sha of Anger Bonus (Sha of Anger)
jcallahan@306 301 [132206] = 62346, -- Galleon Bonus (Galleon)
jcallahan@306 302 [136381] = 69099, -- Nalak Bonus (Nalak)
jcallahan@306 303 [137554] = 69161, -- Oondasta Bonus (Oondasta)
jcallahan@307 304 [148317] = 71952, -- Celestials Bonus (Chi-Ji)
jcallahan@307 305 [148316] = 72057, -- Ordos Bonus (Ordos)
jcallahan@306 306 }