madcatzinc@13
|
1 --~ Warcraft Plugin for Cyborg MMO7
|
madcatzinc@0
|
2 --~ Filename: WowObjects.lua
|
madcatzinc@0
|
3 --~ Description: Warcraft in game object models
|
madcatzinc@0
|
4 --~ Copyright (C) 2012 Mad Catz Inc.
|
madcatzinc@0
|
5 --~ Author: Christopher Hooks
|
madcatzinc@0
|
6
|
madcatzinc@0
|
7 --~ This program is free software; you can redistribute it and/or
|
madcatzinc@0
|
8 --~ modify it under the terms of the GNU General Public License
|
madcatzinc@0
|
9 --~ as published by the Free Software Foundation; either version 2
|
madcatzinc@0
|
10 --~ of the License, or (at your option) any later version.
|
madcatzinc@0
|
11
|
madcatzinc@0
|
12 --~ This program is distributed in the hope that it will be useful,
|
madcatzinc@0
|
13 --~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
madcatzinc@0
|
14 --~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
madcatzinc@0
|
15 --~ GNU General Public License for more details.
|
madcatzinc@0
|
16
|
madcatzinc@0
|
17 --~ You should have received a copy of the GNU General Public License
|
madcatzinc@0
|
18 --~ along with this program; if not, write to the Free Software
|
madcatzinc@0
|
19 --~ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
madcatzinc@0
|
20
|
madcatzinc@25
|
21 ------------------------------------------------------------------------------
|
madcatzinc@0
|
22
|
madcatzinc@25
|
23 local WowObject_methods = {}
|
madcatzinc@25
|
24 local WowObject_mt = {__index=WowObject_methods}
|
madcatzinc@25
|
25
|
madcatzinc@25
|
26 local function WowObject(type, detail, subdetail)
|
madcatzinc@25
|
27 local self = {}
|
madcatzinc@25
|
28
|
madcatzinc@25
|
29 self.Texture = nil
|
madcatzinc@25
|
30 self.Name = "NoName"
|
madcatzinc@25
|
31 self.Type = type
|
madcatzinc@25
|
32 self.Detail = detail
|
madcatzinc@25
|
33 self.Subdetail = subdetail
|
madcatzinc@25
|
34
|
madcatzinc@25
|
35 setmetatable(self, WowObject_mt)
|
madcatzinc@25
|
36
|
madcatzinc@25
|
37 return self
|
madcatzinc@25
|
38 end
|
madcatzinc@25
|
39
|
madcatzinc@25
|
40 function WowObject_methods:DoAction()
|
madcatzinc@25
|
41 CyborgMMO_DPrint("Nothing To Do")
|
madcatzinc@25
|
42 end
|
madcatzinc@25
|
43
|
madcatzinc@25
|
44 function WowObject_methods:Pickup()
|
madcatzinc@25
|
45 CyborgMMO_DPrint("Pick up Item")
|
madcatzinc@25
|
46 end
|
madcatzinc@25
|
47
|
madcatzinc@25
|
48 function WowObject_methods:SetBinding(key)
|
madcatzinc@25
|
49 end
|
madcatzinc@25
|
50
|
madcatzinc@25
|
51 function WowObject_methods:PlaySound()
|
madcatzinc@25
|
52 PlaySound("igAbilityIconDrop")
|
madcatzinc@25
|
53 end
|
madcatzinc@25
|
54
|
madcatzinc@25
|
55 ------------------------------------------------------------------------------
|
madcatzinc@25
|
56
|
madcatzinc@25
|
57 local WowCallback_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
58 local WowCallback_mt = {__index=WowCallback_methods}
|
madcatzinc@25
|
59
|
madcatzinc@25
|
60 local function WowCallback(callbackName)
|
madcatzinc@25
|
61 local self = WowObject("callback", callbackName, "")
|
madcatzinc@25
|
62
|
madcatzinc@25
|
63 self.CallbackName = callbackName
|
madcatzinc@25
|
64 self.Texture = "Interface\\AddOns\\CyborgMMO7\\Graphics\\"..self.CallbackName.."Unselected.tga"
|
madcatzinc@25
|
65
|
madcatzinc@25
|
66 setmetatable(self, WowCallback_mt)
|
madcatzinc@25
|
67
|
madcatzinc@25
|
68 return self
|
madcatzinc@25
|
69 end
|
madcatzinc@25
|
70
|
madcatzinc@25
|
71 function WowCallback_methods:SetTextures(buttonFrame)
|
madcatzinc@25
|
72 CyborgMMO_DPrint("TextureName = "..self.CallbackName)
|
madcatzinc@25
|
73 buttonFrame:SetNormalTexture("Interface\\AddOns\\CyborgMMO7\\Graphics\\"..self.CallbackName.."Unselected.tga")
|
madcatzinc@25
|
74 buttonFrame:SetPushedTexture("Interface\\AddOns\\CyborgMMO7\\Graphics\\"..self.CallbackName.."Down.tga")
|
madcatzinc@25
|
75 buttonFrame:SetHighlightTexture("Interface\\AddOns\\CyborgMMO7\\Graphics\\"..self.CallbackName.."Over.tga")
|
madcatzinc@25
|
76 end
|
madcatzinc@25
|
77
|
madcatzinc@25
|
78 function WowCallback_methods:DoAction()
|
madcatzinc@25
|
79 local action = CyborgMMO_CallbackFactory:GetCallback(self.CallbackName)
|
madcatzinc@25
|
80 CyborgMMO_DPrint("calling callback:- "..self.CallbackName)
|
madcatzinc@25
|
81 action()
|
madcatzinc@25
|
82 end
|
madcatzinc@25
|
83
|
madcatzinc@25
|
84 function WowCallback_methods:PickupCallback()
|
madcatzinc@25
|
85 local slot = nil
|
madcatzinc@25
|
86 local observers = CyborgMMO_RatPageModel:GetAllObservers()
|
madcatzinc@25
|
87 for i=1,#observers do
|
madcatzinc@25
|
88 if MouseIsOver(observers[i]) then
|
madcatzinc@25
|
89 slot = observers[i]
|
madcatzinc@25
|
90 break
|
madcatzinc@0
|
91 end
|
madcatzinc@25
|
92 end
|
madcatzinc@25
|
93 slot:SetNormalTexture(slot.UnCheckedTexture)
|
madcatzinc@25
|
94 end
|
madcatzinc@0
|
95
|
madcatzinc@25
|
96 function WowCallback_methods:Pickup()
|
madcatzinc@25
|
97 self:PlaySound()
|
madcatzinc@25
|
98 ClearCursor()
|
madcatzinc@25
|
99 self:PickupCallback()
|
madcatzinc@25
|
100 end
|
madcatzinc@0
|
101
|
madcatzinc@25
|
102 function WowCallback_methods:SetBinding(key)
|
madcatzinc@25
|
103 local buttonFrame,parentFrame,name = CyborgMMO_CallbackFactory:AddCallback(function(...) return self:DoAction(...) end)
|
madcatzinc@25
|
104 SetOverrideBindingClick(CyborgMMO_CallbackFactory.Frame, true, key, name, "LeftButton")
|
madcatzinc@25
|
105 end
|
madcatzinc@0
|
106
|
madcatzinc@25
|
107 ------------------------------------------------------------------------------
|
madcatzinc@0
|
108
|
madcatzinc@25
|
109 local WowItem_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
110 local WowItem_mt = {__index=WowItem_methods}
|
madcatzinc@0
|
111
|
madcatzinc@25
|
112 local function WowItem(number, itemID)
|
madcatzinc@25
|
113 local self = WowObject("item", number, itemID)
|
madcatzinc@0
|
114
|
madcatzinc@25
|
115 self.Name,
|
madcatzinc@25
|
116 self.Link,
|
madcatzinc@25
|
117 self.Rarity,
|
madcatzinc@25
|
118 self.Level,
|
madcatzinc@25
|
119 self.MinLevel,
|
madcatzinc@25
|
120 self.Type,
|
madcatzinc@25
|
121 self.SubType,
|
madcatzinc@25
|
122 self.StackCount,
|
madcatzinc@25
|
123 self.EquipLoc,
|
madcatzinc@25
|
124 self.Texture,
|
madcatzinc@25
|
125 self.SellPrice = GetItemInfo(itemID)
|
madcatzinc@0
|
126
|
madcatzinc@25
|
127 setmetatable(self, WowItem_mt)
|
madcatzinc@0
|
128
|
madcatzinc@25
|
129 return self
|
madcatzinc@25
|
130 end
|
madcatzinc@0
|
131
|
madcatzinc@25
|
132 function WowItem_methods:DoAction()
|
madcatzinc@25
|
133 CyborgMMO_DPrint("Use Item")
|
madcatzinc@25
|
134 end
|
madcatzinc@25
|
135
|
madcatzinc@25
|
136 function WowItem_methods:Pickup()
|
madcatzinc@25
|
137 self:PlaySound()
|
madcatzinc@25
|
138 ClearCursor()
|
madcatzinc@25
|
139 -- SetCursor(self.Texture)
|
madcatzinc@25
|
140 return PickupItem(self.Link)
|
madcatzinc@25
|
141 end
|
madcatzinc@25
|
142
|
madcatzinc@25
|
143 function WowItem_methods:SetBinding(key)
|
madcatzinc@25
|
144 SetOverrideBinding(CyborgMMO_CallbackFactory.Frame, true, key, "ITEM "..self.Name)
|
madcatzinc@25
|
145 end
|
madcatzinc@25
|
146
|
madcatzinc@25
|
147 ------------------------------------------------------------------------------
|
madcatzinc@25
|
148
|
madcatzinc@25
|
149 local WowSpell_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
150 local WowSpell_mt = {__index=WowSpell_methods}
|
madcatzinc@25
|
151
|
madcatzinc@25
|
152 local function WowSpell(type, spellbookID, spellbook)
|
madcatzinc@25
|
153 local self = WowObject(type, spellbookID, spellbook)
|
madcatzinc@25
|
154
|
madcatzinc@25
|
155 self.SpellbookID = spellbookID
|
madcatzinc@25
|
156 self.Spellbook = spellbook
|
madcatzinc@25
|
157 self.Name,self.Rank = GetSpellBookItemName(spellbookID, spellbook)
|
madcatzinc@25
|
158 self.Texture = GetSpellBookItemTexture(spellbookID, spellbook)
|
madcatzinc@25
|
159 self.Type = type
|
madcatzinc@25
|
160
|
madcatzinc@25
|
161 setmetatable(self, WowSpell_mt)
|
madcatzinc@25
|
162
|
madcatzinc@25
|
163 return self
|
madcatzinc@25
|
164 end
|
madcatzinc@25
|
165
|
madcatzinc@25
|
166 function WowSpell_methods:DoAction()
|
madcatzinc@25
|
167 CyborgMMO_DPrint("Cast Spell")
|
madcatzinc@25
|
168 end
|
madcatzinc@25
|
169
|
madcatzinc@25
|
170 function WowSpell_methods:Pickup()
|
madcatzinc@25
|
171 self:PlaySound()
|
madcatzinc@25
|
172 ClearCursor()
|
madcatzinc@25
|
173 -- SetCursor(self.Texture)
|
madcatzinc@25
|
174 return PickupSpellBookItem(self.SpellbookID, self.Spellbook)
|
madcatzinc@25
|
175 end
|
madcatzinc@25
|
176
|
madcatzinc@25
|
177 function WowSpell_methods:SetBinding(key)
|
madcatzinc@25
|
178 CyborgMMO_DPrint("Binding to key "..key)
|
madcatzinc@25
|
179 self.Key = key
|
madcatzinc@25
|
180 SetOverrideBinding(CyborgMMO_CallbackFactory.Frame, true, self.Key, self.Type.." "..self.Name)
|
madcatzinc@25
|
181 end
|
madcatzinc@25
|
182
|
madcatzinc@25
|
183 ------------------------------------------------------------------------------
|
madcatzinc@25
|
184
|
madcatzinc@25
|
185 local WowMacro_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
186 local WowMacro_mt = {__index=WowMacro_methods}
|
madcatzinc@25
|
187
|
madcatzinc@25
|
188 local function WowMacro(index)
|
madcatzinc@25
|
189 local self = WowObject("macro", index, nil)
|
madcatzinc@25
|
190
|
madcatzinc@25
|
191 self.Name,
|
madcatzinc@25
|
192 self.Texture,
|
madcatzinc@25
|
193 self.Body,
|
madcatzinc@25
|
194 self.isLocal = GetMacroInfo(index)
|
madcatzinc@25
|
195 self.Index = index
|
madcatzinc@25
|
196
|
madcatzinc@25
|
197 setmetatable(self, WowMacro_mt)
|
madcatzinc@25
|
198
|
madcatzinc@25
|
199 return self
|
madcatzinc@25
|
200 end
|
madcatzinc@25
|
201
|
madcatzinc@25
|
202 function WowMacro_methods:DoAction()
|
madcatzinc@25
|
203 CyborgMMO_DPrint("Use Item")
|
madcatzinc@25
|
204 end
|
madcatzinc@25
|
205
|
madcatzinc@25
|
206 function WowMacro_methods:Pickup()
|
madcatzinc@25
|
207 self:PlaySound()
|
madcatzinc@25
|
208 ClearCursor()
|
madcatzinc@25
|
209 -- SetCursor(self.Texture)
|
madcatzinc@25
|
210 return PickupMacro(self.Index)
|
madcatzinc@25
|
211 end
|
madcatzinc@25
|
212
|
madcatzinc@25
|
213 function WowMacro_methods:SetBinding(key)
|
madcatzinc@25
|
214 self.Key = key
|
madcatzinc@25
|
215 SetOverrideBinding(CyborgMMO_CallbackFactory.Frame, true, key, "MACRO "..self.Index)
|
madcatzinc@25
|
216 end
|
madcatzinc@25
|
217
|
madcatzinc@25
|
218 ------------------------------------------------------------------------------
|
madcatzinc@25
|
219
|
madcatzinc@25
|
220 local WowCompanion_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
221 local WowCompanion_mt = {__index=WowCompanion_methods}
|
madcatzinc@25
|
222
|
madcatzinc@25
|
223 local function WowCompanion(index, SubType)
|
madcatzinc@25
|
224 local self = WowObject("companion", index, SubType)
|
madcatzinc@25
|
225
|
madcatzinc@25
|
226 self.Id,
|
madcatzinc@25
|
227 self.Name,
|
madcatzinc@25
|
228 self.SpellId,
|
madcatzinc@25
|
229 self.Texture,
|
madcatzinc@25
|
230 self.isSummoned = GetCompanionInfo(SubType, index)
|
madcatzinc@25
|
231 self.SubType = SubType
|
madcatzinc@25
|
232 self.index = index
|
madcatzinc@25
|
233
|
madcatzinc@25
|
234 setmetatable(self, WowCompanion_mt)
|
madcatzinc@25
|
235
|
madcatzinc@25
|
236 return self
|
madcatzinc@25
|
237 end
|
madcatzinc@25
|
238
|
madcatzinc@25
|
239 function WowCompanion_methods:DoAction()
|
madcatzinc@25
|
240 if self.SubType == "MOUNT" and IsMounted() then
|
madcatzinc@25
|
241 Dismount()
|
madcatzinc@25
|
242 else
|
madcatzinc@25
|
243 CallCompanion(self.SubType, self.index)
|
madcatzinc@25
|
244 end
|
madcatzinc@25
|
245 end
|
madcatzinc@25
|
246
|
madcatzinc@25
|
247 function WowCompanion_methods:Pickup()
|
madcatzinc@25
|
248 self:PlaySound()
|
madcatzinc@25
|
249 return PickupCompanion(self.SubType, self.index)
|
madcatzinc@25
|
250 end
|
madcatzinc@25
|
251
|
madcatzinc@25
|
252 function WowCompanion_methods:SetBinding(key)
|
madcatzinc@25
|
253 self.Key = key
|
madcatzinc@25
|
254 local buttonFrame,parentFrame,name = CyborgMMO_CallbackFactory:AddCallback(function() self:DoAction() end)
|
madcatzinc@25
|
255 SetOverrideBindingClick(parentFrame, true, key, name, "LeftButton")
|
madcatzinc@25
|
256 -- SetOverrideBinding(hiddenModeChanger, true, key, "MACRO "..self.Index)
|
madcatzinc@25
|
257 end
|
madcatzinc@25
|
258
|
madcatzinc@25
|
259 ------------------------------------------------------------------------------
|
madcatzinc@25
|
260
|
madcatzinc@25
|
261 local WowMerchant_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
262 local WowMerchant_mt = {__index=WowMerchant_methods}
|
madcatzinc@25
|
263
|
madcatzinc@25
|
264 local function WowMerchant(index)
|
madcatzinc@25
|
265 local self = WowObject("merchant", index, nil)
|
madcatzinc@25
|
266
|
madcatzinc@25
|
267 self.Name,
|
madcatzinc@25
|
268 self.Texture,
|
madcatzinc@25
|
269 self.Price,
|
madcatzinc@25
|
270 self.Quantity,
|
madcatzinc@25
|
271 self.NumAvailable,
|
madcatzinc@25
|
272 self.IsUsable,
|
madcatzinc@25
|
273 self.ExtendedCost = GetMerchantItemInfo(index)
|
madcatzinc@25
|
274 self.Index = index
|
madcatzinc@25
|
275
|
madcatzinc@25
|
276 setmetatable(self, WowMerchant_mt)
|
madcatzinc@25
|
277
|
madcatzinc@25
|
278 return self
|
madcatzinc@25
|
279 end
|
madcatzinc@25
|
280
|
madcatzinc@25
|
281 function WowMerchant_methods:DoAction()
|
madcatzinc@25
|
282 CyborgMMO_DPrint("Use Item")
|
madcatzinc@25
|
283 end
|
madcatzinc@25
|
284
|
madcatzinc@25
|
285 function WowMerchant_methods:Pickup()
|
madcatzinc@25
|
286 self:PlaySound()
|
madcatzinc@25
|
287 ClearCursor()
|
madcatzinc@25
|
288 -- SetCursor(self.Texture)
|
madcatzinc@25
|
289 return PickupMerchantItem(self.Index)
|
madcatzinc@25
|
290 end
|
madcatzinc@25
|
291
|
madcatzinc@25
|
292 function WowMerchant_methods:SetBinding(key)
|
madcatzinc@25
|
293 self.Key = key
|
madcatzinc@25
|
294 SetOverrideBinding(CyborgMMO_CallbackFactory.Frame, true, key, "MERCHANT "..self.Index)
|
madcatzinc@25
|
295 end
|
madcatzinc@25
|
296
|
madcatzinc@25
|
297 ------------------------------------------------------------------------------
|
madcatzinc@25
|
298
|
madcatzinc@25
|
299 local WowEquipmentSet_methods = setmetatable({}, {__index=WowObject_methods})
|
madcatzinc@25
|
300 local WowEquipmentSet_mt = {__index=WowEquipmentSet_methods}
|
madcatzinc@25
|
301
|
madcatzinc@25
|
302 local function WowEquipmentSet(objectType, name, index)
|
madcatzinc@25
|
303 local self = WowObject(objectType, name, index)
|
madcatzinc@25
|
304
|
madcatzinc@25
|
305 local texture,lessIndex = GetEquipmentSetInfoByName(name)
|
madcatzinc@25
|
306 self.Texture = "Interface\\Icons\\"..texture
|
madcatzinc@25
|
307 self.Name = name
|
madcatzinc@25
|
308 self.Index = lessIndex + 1
|
madcatzinc@25
|
309
|
madcatzinc@25
|
310 setmetatable(self, WowEquipmentSet_mt)
|
madcatzinc@25
|
311
|
madcatzinc@25
|
312 return self
|
madcatzinc@25
|
313 end
|
madcatzinc@25
|
314
|
madcatzinc@25
|
315 function WowEquipmentSet_methods:DoAction()
|
madcatzinc@25
|
316 UseEquipmentSet(self.Name)
|
madcatzinc@25
|
317 end
|
madcatzinc@25
|
318
|
madcatzinc@25
|
319 function WowEquipmentSet_methods:Pickup()
|
madcatzinc@25
|
320 self:PlaySound()
|
madcatzinc@25
|
321 ClearCursor()
|
madcatzinc@25
|
322 -- SetCursor(self.Texture)
|
madcatzinc@25
|
323 return PickupEquipmentSetByName(self.Name)
|
madcatzinc@25
|
324 end
|
madcatzinc@25
|
325
|
madcatzinc@25
|
326 function WowEquipmentSet_methods:SetBinding(key)
|
madcatzinc@25
|
327 self.Key = key
|
madcatzinc@25
|
328 local buttonFrame,parentFrame,name = CyborgMMO_CallbackFactory:AddCallback(function() self:DoAction() end);
|
madcatzinc@25
|
329 SetOverrideBindingClick(parentFrame, true, key, name, "LeftButton")
|
madcatzinc@25
|
330 end
|
madcatzinc@25
|
331
|
madcatzinc@25
|
332 ------------------------------------------------------------------------------
|
madcatzinc@25
|
333
|
madcatzinc@25
|
334 -- this class is used by pre-defined icons in the corner of the Rat page
|
madcatzinc@4
|
335 CyborgMMO_CallbackIcons = {
|
madcatzinc@0
|
336 new = function(self)
|
madcatzinc@13
|
337 self.point,
|
madcatzinc@13
|
338 self.relativeTo,
|
madcatzinc@13
|
339 self.relativePoint,
|
madcatzinc@13
|
340 self.xOfs,
|
madcatzinc@13
|
341 self.yOfs = self:GetPoint()
|
madcatzinc@13
|
342 -- self:SetPoint(self.point, self.relativeTo, self.relativePoint, self.xOfs, self.yOfs)
|
madcatzinc@13
|
343 self.strata = self:GetFrameStrata()
|
madcatzinc@25
|
344 self.wowObject = WowCallback(string.gsub(self:GetName(), self:GetParent():GetName(), "",1))
|
madcatzinc@25
|
345 self.wowObject:SetTextures(self)
|
madcatzinc@0
|
346 self:RegisterForDrag("LeftButton","RightButton")
|
madcatzinc@13
|
347 self:SetResizable(false)
|
madcatzinc@13
|
348
|
madcatzinc@0
|
349 self.OnClick = function()
|
madcatzinc@25
|
350 self.wowObject:DoAction()
|
madcatzinc@0
|
351 end
|
madcatzinc@13
|
352
|
madcatzinc@0
|
353 self.DragStart = function()
|
madcatzinc@13
|
354 self:SetMovable(true)
|
madcatzinc@13
|
355 self:StartMoving()
|
madcatzinc@13
|
356 self.isMoving = true
|
madcatzinc@0
|
357 self:SetFrameStrata("TOOLTIP")
|
madcatzinc@0
|
358 end
|
madcatzinc@13
|
359
|
madcatzinc@0
|
360 self.DragStop = function()
|
madcatzinc@13
|
361 self:SetFrameStrata(self.strata)
|
madcatzinc@13
|
362 self.isMoving = false
|
madcatzinc@13
|
363 self:SetMovable(false)
|
madcatzinc@13
|
364 self:StopMovingOrSizing()
|
madcatzinc@0
|
365
|
madcatzinc@13
|
366 self:ClearAllPoints()
|
madcatzinc@13
|
367 self:SetPoint(self.point, self.relativeTo, self.relativePoint, self.xOfs, self.yOfs)
|
madcatzinc@13
|
368 local x,y = GetCursorPosition()
|
madcatzinc@18
|
369 CyborgMMO_RatPageController:CallbackDropped(self)
|
madcatzinc@0
|
370 end
|
madcatzinc@13
|
371
|
madcatzinc@13
|
372 return self
|
madcatzinc@13
|
373 end,
|
madcatzinc@0
|
374 }
|
madcatzinc@0
|
375
|
madcatzinc@25
|
376 ------------------------------------------------------------------------------
|
madcatzinc@13
|
377
|
madcatzinc@25
|
378 function CyborgMMO_CreateWowObject(type, ...)
|
madcatzinc@25
|
379 local object
|
madcatzinc@13
|
380
|
madcatzinc@25
|
381 if type == "item" then
|
madcatzinc@25
|
382 object = WowItem(...)
|
madcatzinc@25
|
383 elseif type == "macro" then
|
madcatzinc@25
|
384 object = WowMacro(...)
|
madcatzinc@25
|
385 elseif type == "spell" then
|
madcatzinc@25
|
386 object = WowSpell(type, ...)
|
madcatzinc@25
|
387 elseif type == "petaction" then
|
madcatzinc@25
|
388 object = WowSpell(type, ...)
|
madcatzinc@25
|
389 elseif type == "merchant" then
|
madcatzinc@25
|
390 object = WowMerchant(...)
|
madcatzinc@25
|
391 elseif type == "companion" then
|
madcatzinc@25
|
392 object = WowCompanion(...)
|
madcatzinc@25
|
393 elseif type == "equipmentset" then
|
madcatzinc@25
|
394 object = WowEquipmentSet(type, ...)
|
madcatzinc@25
|
395 elseif type == "callback" then
|
madcatzinc@25
|
396 object = WowCallback(...)
|
madcatzinc@25
|
397 else
|
madcatzinc@25
|
398 object = WowObject(type, ...)
|
madcatzinc@25
|
399 end
|
madcatzinc@13
|
400
|
madcatzinc@25
|
401 return object
|
madcatzinc@25
|
402 end
|
madcatzinc@0
|
403
|
madcatzinc@25
|
404 function CyborgMMO_ClearBinding(key)
|
madcatzinc@25
|
405 SetOverrideBinding(CyborgMMO_CallbackFactory.Frame, true, key, nil)
|
madcatzinc@25
|
406 end
|
madcatzinc@13
|
407
|