annotate Constants.lua @ 275:ac6163ed8330

Resolve unit details while building the comment subject menu so units which are no longer valid afterward can still be commented on while the menu is up.
author James D. Callahan III <jcallahan@curse.com>
date Tue, 26 Mar 2013 22:57:18 -0500
parents 3fe3e55c327e
children 7feb687b1b22
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()
jcallahan@18 19
jcallahan@1 20 private.UNIT_TYPES = {
jcallahan@1 21 PLAYER = 0,
jcallahan@1 22 OBJECT = 1,
jcallahan@10 23 UNKNOWN = 2,
jcallahan@1 24 NPC = 3,
jcallahan@1 25 PET = 4,
jcallahan@1 26 VEHICLE = 5,
jcallahan@1 27 }
jcallahan@1 28
jcallahan@1 29
jcallahan@10 30 private.UNIT_TYPE_NAMES = {
jcallahan@10 31 "PLAYER",
jcallahan@10 32 "OBJECT",
jcallahan@10 33 "UNKNOWN",
jcallahan@10 34 "NPC",
jcallahan@10 35 "PET",
jcallahan@10 36 "VEHICLE",
jcallahan@10 37 }
jcallahan@10 38
jcallahan@10 39
jcallahan@1 40 private.ACTION_TYPE_FLAGS = {
jcallahan@1 41 ITEM = 0x00000001,
jcallahan@1 42 NPC = 0x00000002,
jcallahan@1 43 OBJECT = 0x00000004,
jcallahan@1 44 ZONE = 0x00000008,
jcallahan@1 45 }
jcallahan@1 46
jcallahan@1 47
jcallahan@151 48 private.ACTION_TYPE_NAMES = {}
jcallahan@151 49
jcallahan@151 50 for name, bit in _G.pairs(private.ACTION_TYPE_FLAGS) do
jcallahan@151 51 private.ACTION_TYPE_NAMES[bit] = name
jcallahan@151 52 end
jcallahan@151 53
jcallahan@151 54
jcallahan@1 55 private.SPELL_LABELS_BY_NAME = {
jcallahan@1 56 [_G.GetSpellInfo(13262)] = "DISENCHANT",
jcallahan@1 57 [_G.GetSpellInfo(4036)] = "ENGINEERING",
jcallahan@48 58 [_G.GetSpellInfo(30427)] = "EXTRACT_GAS",
jcallahan@99 59 [_G.GetSpellInfo(131476)] = "FISHING",
jcallahan@1 60 [_G.GetSpellInfo(2366)] = "HERB_GATHERING",
jcallahan@1 61 [_G.GetSpellInfo(51005)] = "MILLING",
jcallahan@1 62 [_G.GetSpellInfo(605)] = "MIND_CONTROL",
jcallahan@1 63 [_G.GetSpellInfo(2575)] = "MINING",
jcallahan@1 64 [_G.GetSpellInfo(3365)] = "OPENING",
jcallahan@1 65 [_G.GetSpellInfo(921)] = "PICK_POCKET",
jcallahan@1 66 [_G.GetSpellInfo(31252)] = "PROSPECTING",
jcallahan@1 67 [_G.GetSpellInfo(73979)] = "SEARCHING_FOR_ARTIFACTS",
jcallahan@1 68 [_G.GetSpellInfo(8613)] = "SKINNING",
jcallahan@1 69 }
jcallahan@1 70
jcallahan@105 71 private.NON_LOOT_SPELL_LABELS = {
jcallahan@105 72 MIND_CONTROL = true,
jcallahan@105 73 }
jcallahan@105 74
jcallahan@1 75 local AF = private.ACTION_TYPE_FLAGS
jcallahan@1 76
jcallahan@1 77 private.SPELL_FLAGS_BY_LABEL = {
jcallahan@1 78 DISENCHANT = AF.ITEM,
jcallahan@1 79 ENGINEERING = AF.NPC,
jcallahan@48 80 EXTRACT_GAS = AF.ZONE,
jcallahan@151 81 FISHING = AF.ZONE,
jcallahan@23 82 HERB_GATHERING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 83 MILLING = AF.ITEM,
jcallahan@1 84 MIND_CONTROL = AF.NPC,
jcallahan@23 85 MINING = bit.bor(AF.NPC, AF.OBJECT),
jcallahan@1 86 OPENING = AF.OBJECT,
jcallahan@1 87 PICK_POCKET = AF.NPC,
jcallahan@1 88 PROSPECTING = AF.ITEM,
jcallahan@1 89 SEARCHING_FOR_ARTIFACTS = AF.OBJECT,
jcallahan@1 90 SKINNING = AF.NPC,
jcallahan@1 91 }
jcallahan@177 92
jcallahan@177 93 private.RAID_FINDER_BOSS_IDS = {
jcallahan@244 94 -----------------------------------------------------------------------
jcallahan@244 95 -- Mogu'shan Vaults
jcallahan@244 96 -----------------------------------------------------------------------
jcallahan@177 97 [59915] = true, -- Jasper Guardian
jcallahan@177 98 [60009] = true, -- Feng the Accursed
jcallahan@177 99 [60043] = true, -- Jade Guardian
jcallahan@177 100 [60047] = true, -- Amethyst Guardian
jcallahan@177 101 [60051] = true, -- Cobalt Guardian
jcallahan@177 102 [60143] = true, -- Gara'jal the Spiritbinder
jcallahan@177 103 [60399] = true, -- Qin-xi
jcallahan@181 104 [60400] = true, -- Jan-xi
jcallahan@177 105 [60410] = true, -- Elegon
jcallahan@177 106 [60701] = true, -- Zian of the Endless Shadow
jcallahan@185 107 [60708] = true, -- Meng the Demented
jcallahan@185 108 [60709] = true, -- Qiang the Merciless
jcallahan@185 109 [60710] = true, -- Subetai the Swift
jcallahan@244 110
jcallahan@244 111 -----------------------------------------------------------------------
jcallahan@244 112 -- Terrace of Endless Spring
jcallahan@244 113 -----------------------------------------------------------------------
jcallahan@244 114 [60583] = true, -- Protector Kaolan
jcallahan@244 115 [60585] = true, -- Elder Regail
jcallahan@244 116 [60586] = true, -- Elder Asani
jcallahan@244 117 [60999] = true, -- Sha of Fear
jcallahan@244 118 [62442] = true, -- Tsulong
jcallahan@244 119 [62983] = true, -- Lei Shi
jcallahan@244 120
jcallahan@244 121 -----------------------------------------------------------------------
jcallahan@244 122 -- Heart of Fear
jcallahan@244 123 -----------------------------------------------------------------------
jcallahan@177 124 [62164] = true, -- Garalon
jcallahan@177 125 [62397] = true, -- Wind Lord Mel'jarak
jcallahan@177 126 [62511] = true, -- Amber-Shaper Un'sok
jcallahan@177 127 [62543] = true, -- Blade Lord Ta'yak
jcallahan@177 128 [62837] = true, -- Grand Empress Shek'zeer
jcallahan@177 129 [62980] = true, -- Imperial Vizier Zor'lok
jcallahan@244 130
jcallahan@244 131 -----------------------------------------------------------------------
jcallahan@244 132 -- Throne of Thunder
jcallahan@244 133 -----------------------------------------------------------------------
jcallahan@244 134 [69465] = true, -- Jin'rokh the Breaker
jcallahan@244 135 [68476] = true, -- Horridon
jcallahan@244 136 [69078] = true, -- Sul the Sandcrawler
jcallahan@244 137 [69131] = true, -- Frost King Malakk
jcallahan@244 138 [69132] = true, -- High Priestess Mar'li
jcallahan@244 139 [69134] = true, -- Kazra'jin
jcallahan@244 140 [67977] = true, -- Tortos
jcallahan@244 141 [70212] = true, -- Flaming Head (of Megaera)
jcallahan@244 142 [70235] = true, -- Frozen Head (of Megaera)
jcallahan@244 143 [70247] = true, -- Venomous Head (of Megaera)
jcallahan@244 144 [69712] = true, -- Ji-kun
jcallahan@244 145 [68036] = true, -- Durumu
jcallahan@244 146 [69017] = true, -- Primordius
jcallahan@244 147 [69427] = true, -- Dark Animus
jcallahan@244 148 [68078] = true, -- Iron Qon
jcallahan@244 149 [68904] = true, -- Suen
jcallahan@244 150 [68905] = true, -- Lu'lin
jcallahan@244 151 [68397] = true, -- Lei Shen
jcallahan@177 152 }
jcallahan@203 153
jcallahan@244 154
jcallahan@203 155 private.WORLD_BOSS_IDS = {
jcallahan@203 156 [60491] = true, -- Sha of Anger
jcallahan@203 157 [62346] = true, -- Galleon
jcallahan@244 158 [69099] = true, -- Nalak
jcallahan@244 159 [69161] = true, -- Oondasta
jcallahan@203 160 }