diff Constants.lua @ 1:d9375a473042

Handle looting items and money from NPCs. Beginning of handling for looting from objects and gathering (mining, herbalism) from NPCs among other spell-related obtaining methods.
author James D. Callahan III <jcallahan@curse.com>
date Fri, 27 Apr 2012 03:49:03 -0500
parents
children 94bc939c2ca6
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Constants.lua	Fri Apr 27 03:49:03 2012 -0500
@@ -0,0 +1,67 @@
+-----------------------------------------------------------------------
+-- Upvalued Lua API.
+-----------------------------------------------------------------------
+local _G = getfenv(0)
+
+local bit = _G.bit
+
+
+-----------------------------------------------------------------------
+-- AddOn namespace.
+-----------------------------------------------------------------------
+local ADDON_NAME, private = ...
+
+local LibStub = _G.LibStub
+
+
+-----------------------------------------------------------------------
+-- Constants.
+-----------------------------------------------------------------------
+private.UNIT_TYPES = {
+    PLAYER = 0,
+    OBJECT = 1,
+    NPC = 3,
+    PET = 4,
+    VEHICLE = 5,
+}
+
+
+private.ACTION_TYPE_FLAGS = {
+    ITEM = 0x00000001,
+    NPC = 0x00000002,
+    OBJECT = 0x00000004,
+    ZONE = 0x00000008,
+}
+
+
+private.SPELL_LABELS_BY_NAME = {
+    [_G.GetSpellInfo(13262)] = "DISENCHANT",
+    [_G.GetSpellInfo(4036)] = "ENGINEERING",
+    [_G.GetSpellInfo(7620)] = "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",
+}
+
+local AF = private.ACTION_TYPE_FLAGS
+
+private.SPELL_FLAGS_BY_LABEL = {
+    DISENCHANT = AF.ITEM,
+    ENGINEERING = AF.NPC,
+    FISHING =  AF.ZONE,
+    HERB_GATHERING = bit.bxor(AF.NPC, AF.OBJECT),
+    MILLING = AF.ITEM,
+    MIND_CONTROL = AF.NPC,
+    MINING = bit.bxor(AF.NPC, AF.OBJECT),
+    OPENING = AF.OBJECT,
+    PICK_POCKET = AF.NPC,
+    PROSPECTING = AF.ITEM,
+    SEARCHING_FOR_ARTIFACTS = AF.OBJECT,
+    SKINNING = AF.NPC,
+}