annotate Constants.lua @ 347:fb1d08480f67 WoD

Added timer-based support for salvage crate drops. Hopefully only temporary while Blizzard fixes SHOW_LOOT_TOAST events for them.
author MMOSimca <MMOSimca@gmail.com>
date Fri, 03 Oct 2014 15:29:26 -0400
parents 61a9520b5337
children e7cbe43d8418
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 -----------------------------------------------------------------------
MMOSimca@336 16 -- Game Data Constants.
MMOSimca@336 17 -----------------------------------------------------------------------
MMOSimca@345 18 -- Map of Alliance Logging NPC Summon spells to all possible Timber objectIDs of the proper tree size
MMOSimca@345 19 private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP = {
MMOSimca@345 20 [167902] = { 233604, 233922, 234021, 234080, 234097, 234109, 234110, 234122, 234126, 234193, 234197, 237727, },
MMOSimca@345 21 [167969] = { 233634, 234000, 234022, 234098, 234111, 234119, 234123, 234127, 234194, 234196, 234198, },
MMOSimca@345 22 [168201] = { 233625, 234007, 234023, 234099, 234120, 234124, 234128, 234195, 234199, },
MMOSimca@345 23 }
MMOSimca@345 24 -- Account for Horde spell IDs
MMOSimca@345 25 private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167961] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167902]
MMOSimca@345 26 private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168043] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167969]
MMOSimca@345 27 private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168200] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168201]
MMOSimca@345 28
MMOSimca@347 29 -- Map of Salvage spells to item IDs of the Salvage containers (no longer loot toasts)
MMOSimca@347 30 private.SALVAGE_SPELL_ID_TO_ITEM_ID_MAP = {
MMOSimca@347 31 [168178] = 114116, -- Bag of Salvaged Goods
MMOSimca@347 32 [168179] = 114119, -- Crate of Salvage
MMOSimca@347 33 [168180] = 114120, -- Big Crate of Salvage
MMOSimca@347 34 }
MMOSimca@347 35
MMOSimca@345 36 private.LOOT_SPELL_ID_TO_ITEM_ID_MAP = {
MMOSimca@345 37 [142397] = 98134, -- Heroic Cache of Treasures
MMOSimca@345 38 [142901] = 98546, -- Bulging Heroic Cache of Treasures
MMOSimca@345 39 [143506] = 98095, -- Brawler's Pet Supplies
MMOSimca@345 40 [143507] = 94207, -- Fabled Pandaren Pet Supplies
MMOSimca@345 41 [143508] = 89125, -- Sack of Pet Supplies
MMOSimca@345 42 [143509] = 93146, -- Pandaren Spirit Pet Supplies
MMOSimca@345 43 [143510] = 93147, -- Pandaren Spirit Pet Supplies
MMOSimca@345 44 [143511] = 93149, -- Pandaren Spirit Pet Supplies
MMOSimca@345 45 [143512] = 93148, -- Pandaren Spirit Pet Supplies
MMOSimca@345 46 [146885] = 103535, -- Bulging Bag of Charms
MMOSimca@345 47 [147598] = 104014, -- Pouch of Timeless Coins
MMOSimca@345 48 [149222] = 105911, -- Pouch of Enduring Wisdom
MMOSimca@345 49 [149223] = 105912, -- Oversized Pouch of Enduring Wisdom
MMOSimca@345 50 --[168178] = 114116, -- Bag of Salvaged Goods
MMOSimca@345 51 --[168179] = 114119, -- Crate of Salvage
MMOSimca@345 52 --[168180] = 114120, -- Big Crate of Salvage
MMOSimca@345 53 [171513] = 116414, -- Pet Supplies
MMOSimca@345 54 [175767] = 118697, -- Big Bag of Pet Supplies
MMOSimca@345 55 [178508] = 120321, -- Mystery Bag
MMOSimca@345 56 }
MMOSimca@345 57
MMOSimca@340 58 private.FACTION_DATA = {
MMOSimca@340 59 -- Used only for private.REP_BUFFS
MMOSimca@340 60 ARGENT_CRUSADE = { 1106, _G.GetFactionInfoByID(1106) },
MMOSimca@340 61 BILGEWATER_CARTEL = { 1133, _G.GetFactionInfoByID(1133) },
MMOSimca@340 62 CENARION_CIRCLE = { 609, _G.GetFactionInfoByID(609) },
MMOSimca@340 63 DARKSPEAR = { 530, _G.GetFactionInfoByID(530) },
MMOSimca@340 64 DARNASSUS = { 69, _G.GetFactionInfoByID(69) },
MMOSimca@340 65 DRAGONMAW_CLAN = { 1172, _G.GetFactionInfoByID(1172) },
MMOSimca@340 66 EARTHEN_RING = { 1135, _G.GetFactionInfoByID(1135) },
MMOSimca@340 67 EBON_BLADE = { 1098, _G.GetFactionInfoByID(1098) },
MMOSimca@340 68 EXODAR = { 930, _G.GetFactionInfoByID(930) },
MMOSimca@340 69 GILNEAS = { 1134, _G.GetFactionInfoByID(1134) },
MMOSimca@340 70 GNOMEREGAN = { 54, _G.GetFactionInfoByID(54) },
MMOSimca@340 71 GUARDIANS_OF_HYJAL = { 1158, _G.GetFactionInfoByID(1158) },
MMOSimca@340 72 GUILD = { 1168, _G.GetFactionInfoByID(1168) },
MMOSimca@340 73 HONOR_HOLD = { 946, _G.GetFactionInfoByID(946) },
MMOSimca@340 74 HUOJIN = { 1352, _G.GetFactionInfoByID(1352) },
MMOSimca@340 75 IRONFORGE = { 47, _G.GetFactionInfoByID(47) },
MMOSimca@340 76 KIRIN_TOR = { 1090, _G.GetFactionInfoByID(1090) },
MMOSimca@340 77 ORGRIMMAR = { 76, _G.GetFactionInfoByID(76) },
MMOSimca@340 78 RAMKAHEN = { 1173, _G.GetFactionInfoByID(1173) },
MMOSimca@340 79 SHATAR = { 935, _G.GetFactionInfoByID(935) },
MMOSimca@340 80 SILVERMOON = { 911, _G.GetFactionInfoByID(911) },
MMOSimca@340 81 STORMWIND = { 72, _G.GetFactionInfoByID(72) },
MMOSimca@340 82 THERAZANE = { 1171, _G.GetFactionInfoByID(1171) },
MMOSimca@340 83 THRALLMAR = { 947, _G.GetFactionInfoByID(947) },
MMOSimca@340 84 THUNDER_BLUFF = { 81, _G.GetFactionInfoByID(81) },
MMOSimca@340 85 TUSHUI = { 1353, _G.GetFactionInfoByID(1353) },
MMOSimca@340 86 UNDERCITY = { 68, _G.GetFactionInfoByID(68) },
MMOSimca@340 87 WILDHAMMER_CLAN = { 1174, _G.GetFactionInfoByID(1174) },
MMOSimca@340 88 WYRMREST_ACCORD = { 1091, _G.GetFactionInfoByID(1091) },
MMOSimca@340 89 -- Commendation Factions
MMOSimca@340 90 ANGLERS = { 1302, _G.GetFactionInfoByID(1302) },
MMOSimca@340 91 AUGUST_CELESTIALS = { 1341, _G.GetFactionInfoByID(1341) },
MMOSimca@340 92 DOMINANCE_OFFENSIVE = { 1375, _G.GetFactionInfoByID(1375) },
MMOSimca@340 93 GOLDEN_LOTUS = { 1269, _G.GetFactionInfoByID(1269) },
MMOSimca@340 94 KIRIN_TOR_OFFENSIVE = { 1387, _G.GetFactionInfoByID(1387) },
MMOSimca@340 95 KLAXXI = { 1337, _G.GetFactionInfoByID(1337) },
MMOSimca@340 96 LOREWALKERS = { 1345, _G.GetFactionInfoByID(1345) },
MMOSimca@340 97 OPERATION_SHIELDWALL = { 1376, _G.GetFactionInfoByID(1376) },
MMOSimca@340 98 ORDER_OF_THE_CLOUD_SERPENTS = { 1271, _G.GetFactionInfoByID(1271) },
MMOSimca@340 99 SHADO_PAN = { 1270, _G.GetFactionInfoByID(1270) },
MMOSimca@340 100 SHADO_PAN_ASSAULT = { 1435, _G.GetFactionInfoByID(1435) },
MMOSimca@340 101 SUNREAVER_ONSLAUGHT = { 1388, _G.GetFactionInfoByID(1388) },
MMOSimca@340 102 TILLERS = { 1272, _G.GetFactionInfoByID(1272) },
MMOSimca@337 103 }
MMOSimca@337 104
MMOSimca@337 105 private.REP_BUFFS = {
MMOSimca@340 106 -- Tabard Buffs
MMOSimca@340 107 [_G.GetSpellInfo(93830)] = { -- BILGEWATER CARTEL TABARD
MMOSimca@340 108 faction = private.FACTION_DATA.BILGEWATER_CARTEL[2],
MMOSimca@340 109 ignore = true,
MMOSimca@340 110 },
MMOSimca@340 111 [_G.GetSpellInfo(93827)] = { -- DARKSPEAR TABARD
MMOSimca@340 112 faction = private.FACTION_DATA.DARKSPEAR[2],
MMOSimca@340 113 ignore = true,
MMOSimca@340 114 },
MMOSimca@340 115 [_G.GetSpellInfo(93806)] = { -- DARNASSUS TABARD
MMOSimca@340 116 faction = private.FACTION_DATA.DARNASSUS[2],
MMOSimca@340 117 ignore = true,
MMOSimca@340 118 },
MMOSimca@340 119 [_G.GetSpellInfo(93811)] = { -- EXODAR TABARD
MMOSimca@340 120 faction = private.FACTION_DATA.EXODAR[2],
MMOSimca@340 121 ignore = true,
MMOSimca@340 122 },
MMOSimca@340 123 [_G.GetSpellInfo(93816)] = { -- GILNEAS TABARD
MMOSimca@340 124 faction = private.FACTION_DATA.GILNEAS[2],
MMOSimca@340 125 ignore = true,
MMOSimca@340 126 },
MMOSimca@340 127 [_G.GetSpellInfo(93821)] = { -- GNOMEREGAN TABARD
MMOSimca@340 128 faction = private.FACTION_DATA.GNOMEREGAN[2],
MMOSimca@340 129 ignore = true,
MMOSimca@340 130 },
MMOSimca@340 131 [_G.GetSpellInfo(126436)] = { -- HUOJIN TABARD
MMOSimca@340 132 faction = private.FACTION_DATA.HUOJIN[2],
MMOSimca@340 133 ignore = true,
MMOSimca@340 134 },
MMOSimca@340 135 [_G.GetSpellInfo(97340)] = { -- ILLUSTRIOUS GUILD TABARD
MMOSimca@340 136 faction = private.FACTION_DATA.GUILD[2],
MMOSimca@340 137 modifier = 1,
MMOSimca@340 138 },
MMOSimca@340 139 [_G.GetSpellInfo(93805)] = { -- IRONFORGE TABARD
MMOSimca@340 140 faction = private.FACTION_DATA.IRONFORGE[2],
MMOSimca@340 141 ignore = true,
MMOSimca@340 142 },
MMOSimca@340 143 [_G.GetSpellInfo(93825)] = { -- ORGRIMMAR TABARD
MMOSimca@340 144 faction = private.FACTION_DATA.ORGRIMMAR[2],
MMOSimca@340 145 ignore = true,
MMOSimca@340 146 },
MMOSimca@340 147 [_G.GetSpellInfo(97341)] = { -- RENOWNED GUILD TABARD
MMOSimca@340 148 faction = private.FACTION_DATA.GUILD[2],
MMOSimca@340 149 modifier = 0.5,
MMOSimca@340 150 },
MMOSimca@340 151 [_G.GetSpellInfo(93828)] = { -- SILVERMOON CITY TABARD
MMOSimca@340 152 faction = private.FACTION_DATA.SILVERMOON[2],
MMOSimca@340 153 ignore = true,
MMOSimca@340 154 },
MMOSimca@340 155 [_G.GetSpellInfo(93795)] = { -- STORMWIND TABARD
MMOSimca@340 156 faction = private.FACTION_DATA.STORMWIND[2],
MMOSimca@340 157 ignore = true,
MMOSimca@340 158 },
MMOSimca@340 159 [_G.GetSpellInfo(93337)] = { -- TABARD OF RAMKAHEN
MMOSimca@340 160 faction = private.FACTION_DATA.RAMKAHEN[2],
MMOSimca@340 161 ignore = true,
MMOSimca@340 162 },
MMOSimca@340 163 [_G.GetSpellInfo(57819)] = { -- TABARD OF THE ARGENT CRUSADE
MMOSimca@340 164 faction = private.FACTION_DATA.ARGENT_CRUSADE[2],
MMOSimca@340 165 ignore = true,
MMOSimca@340 166 },
MMOSimca@340 167 [_G.GetSpellInfo(94158)] = { -- TABARD OF THE DRAGONMAW CLAN
MMOSimca@340 168 faction = private.FACTION_DATA.DRAGONMAW_CLAN[2],
MMOSimca@340 169 ignore = true,
MMOSimca@340 170 },
MMOSimca@340 171 [_G.GetSpellInfo(93339)] = { -- TABARD OF THE EARTHEN RING
MMOSimca@340 172 faction = private.FACTION_DATA.EARTHEN_RING[2],
MMOSimca@340 173 ignore = true,
MMOSimca@340 174 },
MMOSimca@340 175 [_G.GetSpellInfo(57820)] = { -- TABARD OF THE EBON BLADE
MMOSimca@340 176 faction = private.FACTION_DATA.EBON_BLADE[2],
MMOSimca@340 177 ignore = true,
MMOSimca@340 178 },
MMOSimca@340 179 [_G.GetSpellInfo(93341)] = { -- TABARD OF THE GUARDIANS OF HYJAL
MMOSimca@340 180 faction = private.FACTION_DATA.GUARDIANS_OF_HYJAL[2],
MMOSimca@340 181 ignore = true,
MMOSimca@340 182 },
MMOSimca@340 183 [_G.GetSpellInfo(57821)] = { -- TABARD OF THE KIRIN TOR
MMOSimca@340 184 faction = private.FACTION_DATA.KIRIN_TOR[2],
MMOSimca@340 185 ignore = true,
MMOSimca@340 186 },
MMOSimca@340 187 [_G.GetSpellInfo(93368)] = { -- TABARD OF THE WILDHAMMER CLAN
MMOSimca@340 188 faction = private.FACTION_DATA.WILDHAMMER_CLAN[2],
MMOSimca@340 189 ignore = true,
MMOSimca@340 190 },
MMOSimca@340 191 [_G.GetSpellInfo(57822)] = { -- TABARD OF THE WYRMREST ACCORD
MMOSimca@340 192 faction = private.FACTION_DATA.WYRMREST_ACCORD[2],
MMOSimca@340 193 ignore = true,
MMOSimca@340 194 },
MMOSimca@340 195 [_G.GetSpellInfo(93347)] = { -- TABARD OF THERAZANE
MMOSimca@340 196 faction = private.FACTION_DATA.THERAZANE[2],
MMOSimca@340 197 ignore = true,
MMOSimca@340 198 },
MMOSimca@340 199 [_G.GetSpellInfo(94463)] = { -- THUNDERBLUFF TABARD
MMOSimca@340 200 faction = private.FACTION_DATA.THUNDER_BLUFF[2],
MMOSimca@340 201 ignore = true,
MMOSimca@340 202 },
MMOSimca@340 203 [_G.GetSpellInfo(126434)] = { -- TUSHUI TABARD
MMOSimca@340 204 faction = private.FACTION_DATA.TUSHUI[2],
MMOSimca@340 205 ignore = true,
MMOSimca@340 206 },
MMOSimca@340 207 [_G.GetSpellInfo(94462)] = { -- UNDERCITY TABARD
MMOSimca@340 208 faction = private.FACTION_DATA.UNDERCITY[2],
MMOSimca@340 209 ignore = true,
MMOSimca@340 210 },
MMOSimca@340 211
MMOSimca@340 212 -- Banner Buffs
MMOSimca@340 213 [_G.GetSpellInfo(90216)] = { -- ALLIANCE GUILD STANDARD
MMOSimca@340 214 ignore = true,
MMOSimca@340 215 },
MMOSimca@340 216 [_G.GetSpellInfo(90708)] = { -- HORDE GUILD STANDARD
MMOSimca@340 217 ignore = true,
MMOSimca@340 218 },
MMOSimca@340 219
MMOSimca@340 220 -- Holiday Buffs
MMOSimca@340 221 [_G.GetSpellInfo(136583)] = { -- DARKMOON TOP HAT
MMOSimca@340 222 modifier = 0.1,
MMOSimca@337 223 },
MMOSimca@337 224 [_G.GetSpellInfo(24705)] = { -- GRIM VISAGE
MMOSimca@337 225 modifier = 0.1,
MMOSimca@337 226 },
MMOSimca@337 227 [_G.GetSpellInfo(61849)] = { -- SPIRIT OF SHARING
MMOSimca@337 228 modifier = 0.1,
MMOSimca@337 229 },
MMOSimca@340 230 [_G.GetSpellInfo(95987)] = { -- UNBURDENED
MMOSimca@337 231 modifier = 0.1,
MMOSimca@337 232 },
MMOSimca@340 233 [_G.GetSpellInfo(46668)] = { -- WHEE!
MMOSimca@337 234 modifier = 0.1,
MMOSimca@337 235 },
MMOSimca@337 236 [_G.GetSpellInfo(100951)] = { -- WOW 8TH ANNIVERSARY
MMOSimca@337 237 modifier = 0.08,
MMOSimca@337 238 },
MMOSimca@337 239 [_G.GetSpellInfo(132700)] = { -- WOW 9TH ANNIVERSARY
MMOSimca@337 240 modifier = 0.09,
MMOSimca@337 241 },
MMOSimca@337 242 [_G.GetSpellInfo(150986)] = { -- WOW 10TH ANNIVERSARY
MMOSimca@337 243 modifier = 0.1,
MMOSimca@341 244 },
MMOSimca@340 245
MMOSimca@340 246 -- Situational Buffs
MMOSimca@340 247 [_G.GetSpellInfo(39953)] = { -- ADALS SONG OF BATTLE
MMOSimca@340 248 faction = private.FACTION_DATA.SHATAR[2],
MMOSimca@340 249 modifier = 0.1,
MMOSimca@340 250 },
MMOSimca@340 251 [_G.GetSpellInfo(30754)] = { -- CENARION FAVOR
MMOSimca@340 252 faction = private.FACTION_DATA.CENARION_CIRCLE[2],
MMOSimca@340 253 modifier = 0.25,
MMOSimca@340 254 },
MMOSimca@340 255 [_G.GetSpellInfo(32098)] = { -- HONOR HOLD FAVOR
MMOSimca@340 256 faction = private.FACTION_DATA.HONOR_HOLD[2],
MMOSimca@340 257 modifier = 0.25,
MMOSimca@340 258 },
MMOSimca@340 259 [_G.GetSpellInfo(39913)] = { -- NAZGRELS FERVOR
MMOSimca@340 260 faction = private.FACTION_DATA.THRALLMAR[2],
MMOSimca@340 261 modifier = 0.1,
MMOSimca@340 262 },
MMOSimca@340 263 [_G.GetSpellInfo(32096)] = { -- THRALLMARS FAVOR
MMOSimca@340 264 faction = private.FACTION_DATA.THRALLMAR[2],
MMOSimca@340 265 modifier = 0.25,
MMOSimca@340 266 },
MMOSimca@340 267 [_G.GetSpellInfo(39911)] = { -- TROLLBANES COMMAND
MMOSimca@340 268 faction = private.FACTION_DATA.HONOR_HOLD[2],
MMOSimca@340 269 modifier = 0.1,
MMOSimca@340 270 },
MMOSimca@337 271 }
MMOSimca@337 272
MMOSimca@336 273 private.RAID_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = {
MMOSimca@336 274 -----------------------------------------------------------------------
MMOSimca@336 275 -- World Bosses
MMOSimca@336 276 -----------------------------------------------------------------------
MMOSimca@336 277 [132205] = 60491, -- Sha of Anger Bonus (Sha of Anger)
MMOSimca@336 278 [132206] = 62346, -- Galleon Bonus (Galleon)
MMOSimca@336 279 [136381] = 69099, -- Nalak Bonus (Nalak)
MMOSimca@336 280 [137554] = 69161, -- Oondasta Bonus (Oondasta)
MMOSimca@336 281 [148317] = 71952, -- Celestials Bonus (Chi-Ji)
MMOSimca@336 282 [148316] = 72057, -- Ordos Bonus (Ordos)
MMOSimca@336 283 --[????] = 81535, -- Tarlna the Ageless Bonus Loot (Tarlna the Ageless)
MMOSimca@336 284 --[????] = 87437, -- Drov the Ruiner Bonus Loot (Drov the Ruiner)
MMOSimca@336 285 --[????] = 87493, -- Rukhmar Bonus Loot (Rukhmar)
MMOSimca@336 286
MMOSimca@336 287 -----------------------------------------------------------------------
MMOSimca@336 288 -- Mogu'shan Vaults
MMOSimca@336 289 -----------------------------------------------------------------------
MMOSimca@336 290 [125144] = 59915, -- Stone Guard Bonus (Jasper Guardian)
MMOSimca@336 291 [132189] = 60009, -- Feng the Accursed Bonus (Feng the Accursed)
MMOSimca@336 292 [132190] = 60143, -- Gara'jal the Spiritbinder Bonus (Gara'jal the Spiritbinder)
MMOSimca@336 293 [132191] = 60709, -- Spirit Kings Bonus (Qiang the Merciless)
MMOSimca@336 294 [132192] = 60410, -- Elegon Bonus (Elegon)
MMOSimca@336 295 [132193] = 60399, -- Will of the Emperor Bonus (Qin-xi)
MMOSimca@336 296
MMOSimca@336 297 -----------------------------------------------------------------------
MMOSimca@336 298 -- Terrace of Endless Spring
MMOSimca@336 299 -----------------------------------------------------------------------
MMOSimca@336 300 [132200] = 60583, -- Protectors of the Endless Bonus (Protector Kaolan)
MMOSimca@336 301 [132204] = 60583, -- Protectors of the Endless (Elite) Bonus (Protector Kaolan)
MMOSimca@336 302 [132201] = 62442, -- Tsulong Bonus (Tsulong)
MMOSimca@336 303 [132202] = 62983, -- Lei Shi Bonus (Lei Shi)
MMOSimca@336 304 [132203] = 60999, -- Sha of Fear Bonus (Sha of Fear)
MMOSimca@336 305
MMOSimca@336 306 -----------------------------------------------------------------------
MMOSimca@336 307 -- Heart of Fear
MMOSimca@336 308 -----------------------------------------------------------------------
MMOSimca@336 309 [132194] = 62980, -- Imperial Vizier Zor'lok Bonus (Imperial Vizier Zor'lok)
MMOSimca@336 310 [132195] = 62543, -- Blade Lord Tay'ak Bonus (Blade Lord Ta'yak)
MMOSimca@336 311 [132196] = 62164, -- Garalon Bonus (Garalon)
MMOSimca@336 312 [132197] = 62397, -- Wind Lord Mel'jarak Bonus (Wind Lord Mel'jarak)
MMOSimca@336 313 [132198] = 62511, -- Amber-Shaper Un'sok Bonus (Amber-Shaper Un'sok)
MMOSimca@336 314 [132199] = 62837, -- Grand Empress Shek'zeer Bonus (Grand Empress Shek'zeer)
MMOSimca@336 315
MMOSimca@336 316 -----------------------------------------------------------------------
MMOSimca@336 317 -- Throne of Thunder
MMOSimca@336 318 -----------------------------------------------------------------------
MMOSimca@336 319 [139674] = 69465, -- Jin'rokh the Breaker Bonus (Jin'rokh the Breaker)
MMOSimca@336 320 [139677] = 68476, -- Horridon Bonus (Horridon)
MMOSimca@336 321 [139679] = 69078, -- Zandalari Troll Council Bonus (Sul the Sandcrawler)
MMOSimca@336 322 [139680] = 67977, -- Tortos Bonus (Tortos)
MMOSimca@336 323 [139682] = 68065, -- Magaera Bonus (Megaera)
MMOSimca@336 324 [139684] = 69712, -- Ji'kun, the Ancient Mother Bonus (Ji-Kun)
MMOSimca@336 325 [139686] = 68036, -- Durumu the Forgotten Bonus (Durumu the Forgotten)
MMOSimca@336 326 [139687] = 69017, -- Primordious Bonus (Primordius)
MMOSimca@336 327 [139688] = 69427, -- Dark Animus Bonus (Dark Animus)
MMOSimca@336 328 [139689] = 68078, -- Iron Qon Bonus (Iron Qon)
MMOSimca@336 329 [139690] = 68904, -- The Empyreal Queens Bonus (Suen)
MMOSimca@336 330 [139691] = 68397, -- Lei Shen, The Thunder King Bonus (Lei Shen)
MMOSimca@336 331 [139692] = 69473, -- Ra-den Bonus (Ra-den)
MMOSimca@336 332
MMOSimca@336 333 -----------------------------------------------------------------------
MMOSimca@336 334 -- Siege of Orgrimmar
MMOSimca@336 335 -----------------------------------------------------------------------
MMOSimca@336 336 [145909] = 71543, -- Immerseus Bonus (Immerseus)
MMOSimca@336 337 [145910] = 71475, -- Fallen Protectors Bonus (Rook Stonetoe)
MMOSimca@336 338 [145911] = 72276, -- Norushen Bonus (Amalgam of Corruption)
MMOSimca@336 339 [145912] = 71734, -- Sha of Pride Bonus (Sha of Pride)
MMOSimca@336 340 [145913] = 72249, -- Galakras Bonus (Galakras)
MMOSimca@336 341 [145914] = 71466, -- Iron Juggernaut Bonus (Iron Juggernaut)
MMOSimca@336 342 [145915] = 71859, -- Dark Shaman Bonus (Earthbreaker Haromm)
MMOSimca@336 343 [145916] = 71515, -- General Nazgrim Bonus (General Nazgrim)
MMOSimca@336 344 [145917] = 71454, -- Malkorok Bonus (Malkorok)
MMOSimca@336 345 [145919] = 71889, -- Spoils of Pandaria Bonus (Secured Stockpile of Pandaren Spoils)
MMOSimca@336 346 [145920] = 71529, -- Thok the Bloodthirsty Bonus (Thok the Bloodthirsty)
MMOSimca@336 347 [145918] = 71504, -- Siegecrafter Blackfuse Bonus (Siegecrafter Blackfuse)
MMOSimca@336 348 [145921] = 71161, -- Klaxxi Paragons Bonus (Kil'ruk the Wind-Reaver)
MMOSimca@336 349 [145922] = 71865, -- Garrosh Hellscream Bonus (Garrosh Hellscream)
MMOSimca@336 350
MMOSimca@336 351 -----------------------------------------------------------------------
MMOSimca@336 352 -- Blackrock Foundry
MMOSimca@336 353 -----------------------------------------------------------------------
MMOSimca@336 354 [177510] = 76877, -- Gruul Bonus Loot (Gruul)
MMOSimca@336 355 [177511] = 77182, -- Oregorger Bonus Loot (Oregorger)
MMOSimca@336 356 [177512] = 76809, -- Blast Furnace Loot (Foreman Feldspar)
MMOSimca@336 357 [177513] = 76973, -- Hans'gar & Franzok Bonus Loot (Hans'gar)
MMOSimca@336 358 [177515] = 76814, -- Flamebender Ka'graz Bonus Loot (Flamebender Ka'graz)
MMOSimca@336 359 [177516] = 77692, -- Kromog Bonus Loot (Kromog)
MMOSimca@336 360 [177517] = 76865, -- Beastlord Darmac Bonus Loot (Beastlord Darmac)
MMOSimca@336 361 [177518] = 76906, -- Operator Thogar Bonus Loot (Operator Thogar)
MMOSimca@336 362 [177519] = 77557, -- The Iron Maidens Bonus Loot (Admiral Gar'an)
MMOSimca@336 363 [177520] = 87420, -- Blackhand Bonus Loot (Blackhand)
MMOSimca@336 364
MMOSimca@336 365 -----------------------------------------------------------------------
MMOSimca@336 366 -- Highmaul
MMOSimca@336 367 -----------------------------------------------------------------------
MMOSimca@336 368 [177503] = 87444, -- Kargath Bladefist Bonus Loot (Kargath Bladefist)
MMOSimca@336 369 [177504] = 87447, -- Butcher Bonus Loot (The Butcher)
MMOSimca@336 370 [177505] = 87446, -- Tectus Bonus Loot (Tectus)
MMOSimca@336 371 [177506] = 87441, -- Brackenspore Bonus Loot (Brackenspore)
MMOSimca@336 372 [177507] = 87449, -- Twin Ogron Bonus Loot (Twin Ogron)
MMOSimca@336 373 [177508] = 87445, -- Ko'ragh Bonus Loot (Ko'ragh)
MMOSimca@336 374 [177509] = 87818, -- Imperator Mar'gok Bonus Loot (Imperator Mar'gok)
MMOSimca@336 375 }
MMOSimca@336 376
MMOSimca@336 377
MMOSimca@336 378 -----------------------------------------------------------------------
MMOSimca@336 379 -- Fundamental Constants.
jcallahan@1 380 -----------------------------------------------------------------------
jcallahan@18 381 private.wow_version, private.build_num = _G.GetBuildInfo()
MMOSimca@330 382 private.region = GetCVar("portal"):sub(0,2):upper()
MMOSimca@330 383 -- PTR/Beta return "public-test", but they are properly called "XX"
MMOSimca@330 384 if private.region == "PU" then private.region = "XX" end
jcallahan@18 385
jcallahan@1 386 private.UNIT_TYPES = {
MMOSimca@329 387 PLAYER = "Player",
MMOSimca@329 388 OBJECT = "GameObject",
MMOSimca@329 389 UNKNOWN = "Unknown",
MMOSimca@329 390 NPC = "Creature",
MMOSimca@329 391 PET = "Pet",
MMOSimca@329 392 VEHICLE = "Vehicle",
MMOSimca@329 393 ITEM = "Item",
jcallahan@1 394 }
jcallahan@1 395
jcallahan@10 396 private.UNIT_TYPE_NAMES = {
MMOSimca@329 397 ["Player"] = "PLAYER",
MMOSimca@329 398 ["GameObject"] = "OBJECT",
MMOSimca@329 399 ["Unknown"] = "UNKNOWN",
MMOSimca@329 400 ["Creature"] = "NPC",
MMOSimca@329 401 ["Pet"] = "PET",
MMOSimca@329 402 ["Vehicle"] = "VEHICLE",
MMOSimca@329 403 ["Item"] = "ITEM",
jcallahan@10 404 }
jcallahan@10 405
jcallahan@1 406 private.ACTION_TYPE_FLAGS = {
jcallahan@1 407 ITEM = 0x00000001,
jcallahan@1 408 NPC = 0x00000002,
jcallahan@1 409 OBJECT = 0x00000004,
jcallahan@1 410 ZONE = 0x00000008,
jcallahan@1 411 }
jcallahan@1 412
jcallahan@151 413 private.ACTION_TYPE_NAMES = {}
jcallahan@151 414
jcallahan@151 415 for name, bit in _G.pairs(private.ACTION_TYPE_FLAGS) do
jcallahan@151 416 private.ACTION_TYPE_NAMES[bit] = name
jcallahan@151 417 end
jcallahan@151 418
jcallahan@1 419 private.SPELL_LABELS_BY_NAME = {
jcallahan@1 420 [_G.GetSpellInfo(13262)] = "DISENCHANT",
jcallahan@1 421 [_G.GetSpellInfo(4036)] = "ENGINEERING",
jcallahan@48 422 [_G.GetSpellInfo(30427)] = "EXTRACT_GAS",
jcallahan@99 423 [_G.GetSpellInfo(131476)] = "FISHING",
jcallahan@1 424 [_G.GetSpellInfo(2366)] = "HERB_GATHERING",
jcallahan@1 425 [_G.GetSpellInfo(51005)] = "MILLING",
jcallahan@1 426 [_G.GetSpellInfo(605)] = "MIND_CONTROL",
jcallahan@1 427 [_G.GetSpellInfo(2575)] = "MINING",
jcallahan@1 428 [_G.GetSpellInfo(3365)] = "OPENING",
jcallahan@1 429 [_G.GetSpellInfo(921)] = "PICK_POCKET",
jcallahan@1 430 [_G.GetSpellInfo(31252)] = "PROSPECTING",
jcallahan@1 431 [_G.GetSpellInfo(73979)] = "SEARCHING_FOR_ARTIFACTS",
jcallahan@1 432 [_G.GetSpellInfo(8613)] = "SKINNING",
jcallahan@1 433 }
jcallahan@1 434
jcallahan@105 435 private.NON_LOOT_SPELL_LABELS = {
jcallahan@105 436 MIND_CONTROL = true,
jcallahan@105 437 }
jcallahan@105 438
jcallahan@1 439 local AF = private.ACTION_TYPE_FLAGS
jcallahan@1 440
jcallahan@1 441 private.SPELL_FLAGS_BY_LABEL = {
jcallahan@1 442 DISENCHANT = AF.ITEM,
jcallahan@1 443 ENGINEERING = AF.NPC,
jcallahan@48 444 EXTRACT_GAS = AF.ZONE,
jcallahan@151 445 FISHING = AF.ZONE,
jcallahan@23 446 HERB_GATHERING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 447 MILLING = AF.ITEM,
jcallahan@1 448 MIND_CONTROL = AF.NPC,
jcallahan@23 449 MINING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 450 OPENING = AF.OBJECT,
jcallahan@1 451 PICK_POCKET = AF.NPC,
jcallahan@1 452 PROSPECTING = AF.ITEM,
jcallahan@1 453 SEARCHING_FOR_ARTIFACTS = AF.OBJECT,
jcallahan@1 454 SKINNING = AF.NPC,
jcallahan@1 455 }