Mercurial > wow > wowdb-profiler
diff Constants.lua @ 358:703714202ffe 6.0.2-1
Merge with WoD
author | MMOSimca <MMOSimca@gmail.com> |
---|---|
date | Tue, 14 Oct 2014 00:36:05 -0400 |
parents | 06b53a3d2b4a |
children | 97824a39ddd3 |
line wrap: on
line diff
--- a/Constants.lua Wed Aug 06 04:31:49 2014 -0400 +++ b/Constants.lua Tue Oct 14 00:36:05 2014 -0400 @@ -13,104 +13,37 @@ ----------------------------------------------------------------------- --- Constants. +-- Game Data Constants. ----------------------------------------------------------------------- -private.wow_version, private.build_num = _G.GetBuildInfo() +-- Map of Alliance Logging NPC Summon spells to all possible Timber objectIDs of the proper tree size +private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP = { + [167902] = 234021, --{ 233604, 233922, , 234080, 234097, 234109, 234110, 234122, 234126, 234193, 234197, 237727, }, + [167969] = 234022, --{ 233634, 234000, , 234098, 234111, 234119, 234123, 234127, 234194, 234196, 234198, }, + [168201] = 234023, --{ 233625, 234007, , 234099, 234120, 234124, 234128, 234195, 234199, }, +} +-- Account for Horde spell IDs +private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167961] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167902] +private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168043] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[167969] +private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168200] = private.LOGGING_SPELL_ID_TO_OBJECT_ID_MAP[168201] -private.UNIT_TYPES = { - PLAYER = 0, - OBJECT = 1, - UNKNOWN = 2, - NPC = 3, - PET = 4, - VEHICLE = 5, +-- Map of Salvage spells to item IDs of the Salvage containers (no longer loot toasts) +private.SALVAGE_SPELL_ID_TO_ITEM_ID_MAP = { + [168178] = 114116, -- Bag of Salvaged Goods + [168179] = 114119, -- Crate of Salvage + [168180] = 114120, -- Big Crate of Salvage } - -private.UNIT_TYPE_NAMES = { - "PLAYER", - "OBJECT", - "UNKNOWN", - "NPC", - "PET", - "VEHICLE", +-- Map of Garrison Cache object names to Garrison Cache object IDs +private.GARRISON_CACHE_OBJECT_NAME_TO_OBJECT_ID_MAP = { + ["Garrison Cache"] = 236916, + ["Full Garrison Cache"] = 237722, + ["Hefty Garrison Cache"] = 237723, } - - -private.ACTION_TYPE_FLAGS = { - ITEM = 0x00000001, - NPC = 0x00000002, - OBJECT = 0x00000004, - ZONE = 0x00000008, -} - - -private.ACTION_TYPE_NAMES = {} - -for name, bit in _G.pairs(private.ACTION_TYPE_FLAGS) do - private.ACTION_TYPE_NAMES[bit] = name -end - - -private.EXTRAPOLATION_BANNED_SPELL_IDS = { - [13262] = "DISENCHANT", - [4036] = "ENGINEERING", - [30427] = "EXTRACT_GAS", - [131476] = "FISHING", - [2366] = "HERB_GATHERING", - [51005] = "MILLING", - [605] = "MIND_CONTROL", - [2575] = "MINING", - [921] = "PICK_POCKET", - [31252] = "PROSPECTING", - [73979] = "SEARCHING_FOR_ARTIFACTS", - [8613] = "SKINNING", -} - - -private.SPELL_LABELS_BY_NAME = { - [_G.GetSpellInfo(13262)] = "DISENCHANT", - [_G.GetSpellInfo(4036)] = "ENGINEERING", - [_G.GetSpellInfo(30427)] = "EXTRACT_GAS", - [_G.GetSpellInfo(131476)] = "FISHING", - [_G.GetSpellInfo(2366)] = "HERB_GATHERING", - [_G.GetSpellInfo(51005)] = "MILLING", - [_G.GetSpellInfo(605)] = "MIND_CONTROL", - [_G.GetSpellInfo(2575)] = "MINING", - [_G.GetSpellInfo(3365)] = "OPENING", - [_G.GetSpellInfo(921)] = "PICK_POCKET", - [_G.GetSpellInfo(31252)] = "PROSPECTING", - [_G.GetSpellInfo(73979)] = "SEARCHING_FOR_ARTIFACTS", - [_G.GetSpellInfo(8613)] = "SKINNING", -} - - -private.NON_LOOT_SPELL_LABELS = { - MIND_CONTROL = true, -} - - -local AF = private.ACTION_TYPE_FLAGS - -private.SPELL_FLAGS_BY_LABEL = { - DISENCHANT = AF.ITEM, - ENGINEERING = AF.NPC, - EXTRACT_GAS = AF.ZONE, - FISHING = AF.ZONE, - HERB_GATHERING = bit.bor(AF.NPC, AF.OBJECT), - MILLING = AF.ITEM, - MIND_CONTROL = AF.NPC, - MINING = bit.bor(AF.NPC, AF.OBJECT), - OPENING = AF.OBJECT, - PICK_POCKET = AF.NPC, - PROSPECTING = AF.ITEM, - SEARCHING_FOR_ARTIFACTS = AF.OBJECT, - SKINNING = AF.NPC, -} - +private.GARRISON_CACHE_LOOT_SOURCE_ID = 10 private.LOOT_SPELL_ID_TO_ITEM_ID_MAP = { [142397] = 98134, -- Heroic Cache of Treasures + [142901] = 98546, -- Bulging Heroic Cache of Treasures [143506] = 98095, -- Brawler's Pet Supplies [143507] = 94207, -- Fabled Pandaren Pet Supplies [143508] = 89125, -- Sack of Pet Supplies @@ -122,115 +55,243 @@ [147598] = 104014, -- Pouch of Timeless Coins [149222] = 105911, -- Pouch of Enduring Wisdom [149223] = 105912, -- Oversized Pouch of Enduring Wisdom + --[168178] = 114116, -- Bag of Salvaged Goods + --[168179] = 114119, -- Crate of Salvage + --[168180] = 114120, -- Big Crate of Salvage + [171513] = 116414, -- Pet Supplies + [175767] = 118697, -- Big Bag of Pet Supplies + [178508] = 120321, -- Mystery Bag } - -private.RAID_FINDER_BOSS_IDS = { - ----------------------------------------------------------------------- - -- Mogu'shan Vaults - ----------------------------------------------------------------------- - [59915] = true, -- Jasper Guardian - [60009] = true, -- Feng the Accursed - [60043] = true, -- Jade Guardian - [60047] = true, -- Amethyst Guardian - [60051] = true, -- Cobalt Guardian - [60143] = true, -- Gara'jal the Spiritbinder - [60399] = true, -- Qin-xi - [60400] = true, -- Jan-xi - [60410] = true, -- Elegon - [60701] = true, -- Zian of the Endless Shadow - [60708] = true, -- Meng the Demented - [60709] = true, -- Qiang the Merciless - [60710] = true, -- Subetai the Swift - - ----------------------------------------------------------------------- - -- Terrace of Endless Spring - ----------------------------------------------------------------------- - [60583] = true, -- Protector Kaolan - [60585] = true, -- Elder Regail - [60586] = true, -- Elder Asani - [60999] = true, -- Sha of Fear - [62442] = true, -- Tsulong - [62983] = true, -- Lei Shi - - ----------------------------------------------------------------------- - -- Heart of Fear - ----------------------------------------------------------------------- - [62164] = true, -- Garalon - [62397] = true, -- Wind Lord Mel'jarak - [62511] = true, -- Amber-Shaper Un'sok - [62543] = true, -- Blade Lord Ta'yak - [62837] = true, -- Grand Empress Shek'zeer - [62980] = true, -- Imperial Vizier Zor'lok - - ----------------------------------------------------------------------- - -- Throne of Thunder - ----------------------------------------------------------------------- - [69465] = true, -- Jin'rokh the Breaker - [68476] = true, -- Horridon - [69078] = true, -- Sul the Sandcrawler - [69131] = true, -- Frost King Malakk - [69132] = true, -- High Priestess Mar'li - [69134] = true, -- Kazra'jin - [67977] = true, -- Tortos - [70212] = true, -- Flaming Head (of Megaera) - [70235] = true, -- Frozen Head (of Megaera) - [70247] = true, -- Venomous Head (of Megaera) - [69712] = true, -- Ji-kun - [68036] = true, -- Durumu - [69017] = true, -- Primordius - [69427] = true, -- Dark Animus - [68078] = true, -- Iron Qon - [68904] = true, -- Suen - [68905] = true, -- Lu'lin - [68397] = true, -- Lei Shen - - ----------------------------------------------------------------------- - -- Siege of Orgrimmar - ----------------------------------------------------------------------- - [71543] = true, -- Immerseus - [71475] = true, -- Rook Stonetoe (Fallen Protectors encounter) - [71479] = true, -- He Softfoot (Fallen Protectors encounter) - [71480] = true, -- Sun Tenderheart (Fallen Protectors encounter) - [71967] = true, -- Norushen (Norushen encounter) - [72276] = true, -- Amalgam of Corruption (Norushen encounter) - [71734] = true, -- Sha of Pride - [72249] = true, -- Galakras - [71466] = true, -- Iron Juggernaut - [71858] = true, -- Wavebinder Kardris (Kor'kron Dark Shaman encounter) - [71859] = true, -- Earthbreaker Haromm (Kor'kron Dark Shaman encounter) - [71515] = true, -- General Nazgrim - [71454] = true, -- Malkorok - [71889] = true, -- Secured Stockpile of Pandaren Spoils (Spoils of Pandaria encounter) - [71529] = true, -- Thok the Bloodthirsty - [71504] = true, -- Siegecrafter Blackfuse - [71152] = true, -- Skeer the Bloodseeker (Paragons of the Klaxxi encounter) - [71153] = true, -- Hisek the Swarmkeeper (Paragons of the Klaxxi encounter) - [71154] = true, -- Ka'roz the Locust (Paragons of the Klaxxi encounter) - [71155] = true, -- Korven the Prime (Paragons of the Klaxxi encounter) - [71156] = true, -- Kaz'tik the Manipulator (Paragons of the Klaxxi encounter) - [71157] = true, -- Xaril the Poisoned Mind (Paragons of the Klaxxi encounter) - [71158] = true, -- Rik'kal the Dissector (Paragons of the Klaxxi encounter) - [71160] = true, -- Iyyokuk the Lucid (Paragons of the Klaxxi encounter) - [71161] = true, -- Kil'ruk the Wind-Reaver (Paragons of the Klaxxi encounter) - [71865] = true, -- Garrosh Hellscream +private.FACTION_DATA = { + -- Used only for private.REP_BUFFS + ARGENT_CRUSADE = { 1106, _G.GetFactionInfoByID(1106) }, + BILGEWATER_CARTEL = { 1133, _G.GetFactionInfoByID(1133) }, + CENARION_CIRCLE = { 609, _G.GetFactionInfoByID(609) }, + DARKSPEAR = { 530, _G.GetFactionInfoByID(530) }, + DARNASSUS = { 69, _G.GetFactionInfoByID(69) }, + DRAGONMAW_CLAN = { 1172, _G.GetFactionInfoByID(1172) }, + EARTHEN_RING = { 1135, _G.GetFactionInfoByID(1135) }, + EBON_BLADE = { 1098, _G.GetFactionInfoByID(1098) }, + EXODAR = { 930, _G.GetFactionInfoByID(930) }, + GILNEAS = { 1134, _G.GetFactionInfoByID(1134) }, + GNOMEREGAN = { 54, _G.GetFactionInfoByID(54) }, + GUARDIANS_OF_HYJAL = { 1158, _G.GetFactionInfoByID(1158) }, + GUILD = { 1168, _G.GetFactionInfoByID(1168) }, + HONOR_HOLD = { 946, _G.GetFactionInfoByID(946) }, + HUOJIN = { 1352, _G.GetFactionInfoByID(1352) }, + IRONFORGE = { 47, _G.GetFactionInfoByID(47) }, + KIRIN_TOR = { 1090, _G.GetFactionInfoByID(1090) }, + ORGRIMMAR = { 76, _G.GetFactionInfoByID(76) }, + RAMKAHEN = { 1173, _G.GetFactionInfoByID(1173) }, + SHATAR = { 935, _G.GetFactionInfoByID(935) }, + SILVERMOON = { 911, _G.GetFactionInfoByID(911) }, + STORMWIND = { 72, _G.GetFactionInfoByID(72) }, + THERAZANE = { 1171, _G.GetFactionInfoByID(1171) }, + THRALLMAR = { 947, _G.GetFactionInfoByID(947) }, + THUNDER_BLUFF = { 81, _G.GetFactionInfoByID(81) }, + TUSHUI = { 1353, _G.GetFactionInfoByID(1353) }, + UNDERCITY = { 68, _G.GetFactionInfoByID(68) }, + WILDHAMMER_CLAN = { 1174, _G.GetFactionInfoByID(1174) }, + WYRMREST_ACCORD = { 1091, _G.GetFactionInfoByID(1091) }, + -- Commendation Factions + ANGLERS = { 1302, _G.GetFactionInfoByID(1302) }, + AUGUST_CELESTIALS = { 1341, _G.GetFactionInfoByID(1341) }, + DOMINANCE_OFFENSIVE = { 1375, _G.GetFactionInfoByID(1375) }, + GOLDEN_LOTUS = { 1269, _G.GetFactionInfoByID(1269) }, + KIRIN_TOR_OFFENSIVE = { 1387, _G.GetFactionInfoByID(1387) }, + KLAXXI = { 1337, _G.GetFactionInfoByID(1337) }, + LOREWALKERS = { 1345, _G.GetFactionInfoByID(1345) }, + OPERATION_SHIELDWALL = { 1376, _G.GetFactionInfoByID(1376) }, + ORDER_OF_THE_CLOUD_SERPENTS = { 1271, _G.GetFactionInfoByID(1271) }, + SHADO_PAN = { 1270, _G.GetFactionInfoByID(1270) }, + SHADO_PAN_ASSAULT = { 1435, _G.GetFactionInfoByID(1435) }, + SUNREAVER_ONSLAUGHT = { 1388, _G.GetFactionInfoByID(1388) }, + TILLERS = { 1272, _G.GetFactionInfoByID(1272) }, } +private.REP_BUFFS = { + -- Tabard Buffs + [_G.GetSpellInfo(93830)] = { -- BILGEWATER CARTEL TABARD + faction = private.FACTION_DATA.BILGEWATER_CARTEL[2], + ignore = true, + }, + [_G.GetSpellInfo(93827)] = { -- DARKSPEAR TABARD + faction = private.FACTION_DATA.DARKSPEAR[2], + ignore = true, + }, + [_G.GetSpellInfo(93806)] = { -- DARNASSUS TABARD + faction = private.FACTION_DATA.DARNASSUS[2], + ignore = true, + }, + [_G.GetSpellInfo(93811)] = { -- EXODAR TABARD + faction = private.FACTION_DATA.EXODAR[2], + ignore = true, + }, + [_G.GetSpellInfo(93816)] = { -- GILNEAS TABARD + faction = private.FACTION_DATA.GILNEAS[2], + ignore = true, + }, + [_G.GetSpellInfo(93821)] = { -- GNOMEREGAN TABARD + faction = private.FACTION_DATA.GNOMEREGAN[2], + ignore = true, + }, + [_G.GetSpellInfo(126436)] = { -- HUOJIN TABARD + faction = private.FACTION_DATA.HUOJIN[2], + ignore = true, + }, + [_G.GetSpellInfo(97340)] = { -- ILLUSTRIOUS GUILD TABARD + faction = private.FACTION_DATA.GUILD[2], + modifier = 1, + }, + [_G.GetSpellInfo(93805)] = { -- IRONFORGE TABARD + faction = private.FACTION_DATA.IRONFORGE[2], + ignore = true, + }, + [_G.GetSpellInfo(93825)] = { -- ORGRIMMAR TABARD + faction = private.FACTION_DATA.ORGRIMMAR[2], + ignore = true, + }, + [_G.GetSpellInfo(97341)] = { -- RENOWNED GUILD TABARD + faction = private.FACTION_DATA.GUILD[2], + modifier = 0.5, + }, + [_G.GetSpellInfo(93828)] = { -- SILVERMOON CITY TABARD + faction = private.FACTION_DATA.SILVERMOON[2], + ignore = true, + }, + [_G.GetSpellInfo(93795)] = { -- STORMWIND TABARD + faction = private.FACTION_DATA.STORMWIND[2], + ignore = true, + }, + [_G.GetSpellInfo(93337)] = { -- TABARD OF RAMKAHEN + faction = private.FACTION_DATA.RAMKAHEN[2], + ignore = true, + }, + [_G.GetSpellInfo(57819)] = { -- TABARD OF THE ARGENT CRUSADE + faction = private.FACTION_DATA.ARGENT_CRUSADE[2], + ignore = true, + }, + [_G.GetSpellInfo(94158)] = { -- TABARD OF THE DRAGONMAW CLAN + faction = private.FACTION_DATA.DRAGONMAW_CLAN[2], + ignore = true, + }, + [_G.GetSpellInfo(93339)] = { -- TABARD OF THE EARTHEN RING + faction = private.FACTION_DATA.EARTHEN_RING[2], + ignore = true, + }, + [_G.GetSpellInfo(57820)] = { -- TABARD OF THE EBON BLADE + faction = private.FACTION_DATA.EBON_BLADE[2], + ignore = true, + }, + [_G.GetSpellInfo(93341)] = { -- TABARD OF THE GUARDIANS OF HYJAL + faction = private.FACTION_DATA.GUARDIANS_OF_HYJAL[2], + ignore = true, + }, + [_G.GetSpellInfo(57821)] = { -- TABARD OF THE KIRIN TOR + faction = private.FACTION_DATA.KIRIN_TOR[2], + ignore = true, + }, + [_G.GetSpellInfo(93368)] = { -- TABARD OF THE WILDHAMMER CLAN + faction = private.FACTION_DATA.WILDHAMMER_CLAN[2], + ignore = true, + }, + [_G.GetSpellInfo(57822)] = { -- TABARD OF THE WYRMREST ACCORD + faction = private.FACTION_DATA.WYRMREST_ACCORD[2], + ignore = true, + }, + [_G.GetSpellInfo(93347)] = { -- TABARD OF THERAZANE + faction = private.FACTION_DATA.THERAZANE[2], + ignore = true, + }, + [_G.GetSpellInfo(94463)] = { -- THUNDERBLUFF TABARD + faction = private.FACTION_DATA.THUNDER_BLUFF[2], + ignore = true, + }, + [_G.GetSpellInfo(126434)] = { -- TUSHUI TABARD + faction = private.FACTION_DATA.TUSHUI[2], + ignore = true, + }, + [_G.GetSpellInfo(94462)] = { -- UNDERCITY TABARD + faction = private.FACTION_DATA.UNDERCITY[2], + ignore = true, + }, -private.WORLD_BOSS_IDS = { - [60491] = true, -- Sha of Anger - [62346] = true, -- Galleon - [69099] = true, -- Nalak - [69161] = true, -- Oondasta - [71952] = true, -- Chi-Ji - [71953] = true, -- Xuen - [71954] = true, -- Niuzao - [71955] = true, -- Yu'lon - [72057] = true, -- Ordos + -- Banner Buffs + [_G.GetSpellInfo(90216)] = { -- ALLIANCE GUILD STANDARD + ignore = true, + }, + [_G.GetSpellInfo(90708)] = { -- HORDE GUILD STANDARD + ignore = true, + }, + + -- Holiday Buffs + [_G.GetSpellInfo(136583)] = { -- DARKMOON TOP HAT + modifier = 0.1, + }, + [_G.GetSpellInfo(24705)] = { -- GRIM VISAGE + modifier = 0.1, + }, + [_G.GetSpellInfo(61849)] = { -- SPIRIT OF SHARING + modifier = 0.1, + }, + [_G.GetSpellInfo(95987)] = { -- UNBURDENED + modifier = 0.1, + }, + [_G.GetSpellInfo(46668)] = { -- WHEE! + modifier = 0.1, + }, + [_G.GetSpellInfo(100951)] = { -- WOW 8TH ANNIVERSARY + modifier = 0.08, + }, + [_G.GetSpellInfo(132700)] = { -- WOW 9TH ANNIVERSARY + modifier = 0.09, + }, + [_G.GetSpellInfo(150986)] = { -- WOW 10TH ANNIVERSARY + modifier = 0.1, + }, + + -- Situational Buffs + [_G.GetSpellInfo(39953)] = { -- ADALS SONG OF BATTLE + faction = private.FACTION_DATA.SHATAR[2], + modifier = 0.1, + }, + [_G.GetSpellInfo(30754)] = { -- CENARION FAVOR + faction = private.FACTION_DATA.CENARION_CIRCLE[2], + modifier = 0.25, + }, + [_G.GetSpellInfo(32098)] = { -- HONOR HOLD FAVOR + faction = private.FACTION_DATA.HONOR_HOLD[2], + modifier = 0.25, + }, + [_G.GetSpellInfo(39913)] = { -- NAZGRELS FERVOR + faction = private.FACTION_DATA.THRALLMAR[2], + modifier = 0.1, + }, + [_G.GetSpellInfo(32096)] = { -- THRALLMARS FAVOR + faction = private.FACTION_DATA.THRALLMAR[2], + modifier = 0.25, + }, + [_G.GetSpellInfo(39911)] = { -- TROLLBANES COMMAND + faction = private.FACTION_DATA.HONOR_HOLD[2], + modifier = 0.1, + }, } +private.RAID_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = { + ----------------------------------------------------------------------- + -- World Bosses + ----------------------------------------------------------------------- + [132205] = 60491, -- Sha of Anger Bonus (Sha of Anger) + [132206] = 62346, -- Galleon Bonus (Galleon) + [136381] = 69099, -- Nalak Bonus (Nalak) + [137554] = 69161, -- Oondasta Bonus (Oondasta) + [148317] = 71952, -- Celestials Bonus (Chi-Ji) + [148316] = 72057, -- Ordos Bonus (Ordos) + --[????] = 81535, -- Tarlna the Ageless Bonus Loot (Tarlna the Ageless) + --[????] = 87437, -- Drov the Ruiner Bonus Loot (Drov the Ruiner) + --[????] = 87493, -- Rukhmar Bonus Loot (Rukhmar) -private.RAID_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = { ----------------------------------------------------------------------- -- Mogu'shan Vaults ----------------------------------------------------------------------- @@ -294,13 +355,109 @@ [145918] = 71504, -- Siegecrafter Blackfuse Bonus (Siegecrafter Blackfuse) [145921] = 71161, -- Klaxxi Paragons Bonus (Kil'ruk the Wind-Reaver) [145922] = 71865, -- Garrosh Hellscream Bonus (Garrosh Hellscream) + + ----------------------------------------------------------------------- + -- Blackrock Foundry + ----------------------------------------------------------------------- + [177510] = 76877, -- Gruul Bonus Loot (Gruul) + [177511] = 77182, -- Oregorger Bonus Loot (Oregorger) + [177512] = 76809, -- Blast Furnace Loot (Foreman Feldspar) + [177513] = 76973, -- Hans'gar & Franzok Bonus Loot (Hans'gar) + [177515] = 76814, -- Flamebender Ka'graz Bonus Loot (Flamebender Ka'graz) + [177516] = 77692, -- Kromog Bonus Loot (Kromog) + [177517] = 76865, -- Beastlord Darmac Bonus Loot (Beastlord Darmac) + [177518] = 76906, -- Operator Thogar Bonus Loot (Operator Thogar) + [177519] = 77557, -- The Iron Maidens Bonus Loot (Admiral Gar'an) + [177520] = 87420, -- Blackhand Bonus Loot (Blackhand) + + ----------------------------------------------------------------------- + -- Highmaul + ----------------------------------------------------------------------- + [177503] = 87444, -- Kargath Bladefist Bonus Loot (Kargath Bladefist) + [177504] = 87447, -- Butcher Bonus Loot (The Butcher) + [177505] = 87446, -- Tectus Bonus Loot (Tectus) + [177506] = 87441, -- Brackenspore Bonus Loot (Brackenspore) + [177507] = 87449, -- Twin Ogron Bonus Loot (Twin Ogron) + [177508] = 87445, -- Ko'ragh Bonus Loot (Ko'ragh) + [177509] = 87818, -- Imperator Mar'gok Bonus Loot (Imperator Mar'gok) } -private.WORLD_BOSS_BONUS_SPELL_ID_TO_NPC_ID_MAP = { - [132205] = 60491, -- Sha of Anger Bonus (Sha of Anger) - [132206] = 62346, -- Galleon Bonus (Galleon) - [136381] = 69099, -- Nalak Bonus (Nalak) - [137554] = 69161, -- Oondasta Bonus (Oondasta) - [148317] = 71952, -- Celestials Bonus (Chi-Ji) - [148316] = 72057, -- Ordos Bonus (Ordos) + +----------------------------------------------------------------------- +-- Fundamental Constants. +----------------------------------------------------------------------- +private.wow_version, private.build_num = _G.GetBuildInfo() +private.region = GetCVar("portal"):sub(0,2):upper() +-- PTR/Beta return "public-test", but they are properly called "XX" +if private.region == "PU" then private.region = "XX" end + +private.UNIT_TYPES = { + PLAYER = "Player", + OBJECT = "GameObject", + UNKNOWN = "Unknown", + NPC = "Creature", + PET = "Pet", + VEHICLE = "Vehicle", + ITEM = "Item", } + +private.UNIT_TYPE_NAMES = { + ["Player"] = "PLAYER", + ["GameObject"] = "OBJECT", + ["Unknown"] = "UNKNOWN", + ["Creature"] = "NPC", + ["Pet"] = "PET", + ["Vehicle"] = "VEHICLE", + ["Item"] = "ITEM", +} + +private.ACTION_TYPE_FLAGS = { + ITEM = 0x00000001, + NPC = 0x00000002, + OBJECT = 0x00000004, + ZONE = 0x00000008, +} + +private.ACTION_TYPE_NAMES = {} + +for name, bit in _G.pairs(private.ACTION_TYPE_FLAGS) do + private.ACTION_TYPE_NAMES[bit] = name +end + +private.SPELL_LABELS_BY_NAME = { + [_G.GetSpellInfo(13262)] = "DISENCHANT", + [_G.GetSpellInfo(4036)] = "ENGINEERING", + [_G.GetSpellInfo(30427)] = "EXTRACT_GAS", + [_G.GetSpellInfo(131476)] = "FISHING", + [_G.GetSpellInfo(2366)] = "HERB_GATHERING", + [_G.GetSpellInfo(51005)] = "MILLING", + [_G.GetSpellInfo(605)] = "MIND_CONTROL", + [_G.GetSpellInfo(2575)] = "MINING", + [_G.GetSpellInfo(3365)] = "OPENING", + [_G.GetSpellInfo(921)] = "PICK_POCKET", + [_G.GetSpellInfo(31252)] = "PROSPECTING", + [_G.GetSpellInfo(73979)] = "SEARCHING_FOR_ARTIFACTS", + [_G.GetSpellInfo(8613)] = "SKINNING", +} + +private.NON_LOOT_SPELL_LABELS = { + MIND_CONTROL = true, +} + +local AF = private.ACTION_TYPE_FLAGS + +private.SPELL_FLAGS_BY_LABEL = { + DISENCHANT = AF.ITEM, + ENGINEERING = AF.NPC, + EXTRACT_GAS = AF.ZONE, + FISHING = AF.ZONE, + HERB_GATHERING = bit.bor(AF.NPC, AF.OBJECT), + MILLING = AF.ITEM, + MIND_CONTROL = AF.NPC, + MINING = bit.bor(AF.NPC, AF.OBJECT), + OPENING = AF.OBJECT, + PICK_POCKET = AF.NPC, + PROSPECTING = AF.ITEM, + SEARCHING_FOR_ARTIFACTS = AF.OBJECT, + SKINNING = AF.NPC, +}