From 5b639079689eca8d35b632923fbdb5329b384f0c Mon Sep 17 00:00:00 2001 From: "Johnny C. Lam" Date: Sat, 16 Mar 2013 08:04:31 +0000 Subject: [PATCH] Query OvaleEquipement for equipped items in slots for efficiency. git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@784 d5049fe3-3747-40f7-a4b5-f36d6801af5f --- OvaleBestAction.lua | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/OvaleBestAction.lua b/OvaleBestAction.lua index 455661a..909e43f 100644 --- a/OvaleBestAction.lua +++ b/OvaleBestAction.lua @@ -15,13 +15,14 @@ Ovale.bestActionModule = OvaleBestAction local OvaleActionBar = Ovale:GetModule("OvaleActionBar") local OvaleCondition = Ovale.conditionModule local OvaleData = Ovale:GetModule("OvaleData") +local OvaleEquipement = Ovale:GetModule("OvaleEquipement") local OvalePaperDoll = Ovale:GetModule("OvalePaperDoll") local OvaleStance = Ovale:GetModule("OvaleStance") local OvaleState = Ovale.stateModule local floor, ipairs, loadstring, pairs = math.floor, ipairs, loadstring, pairs local strfind, tonumber, tostring = string.find, tonumber, tostring -local GetActionCooldown, GetActionTexture, GetInventorySlotInfo = GetActionCooldown, GetActionTexture, GetInventorySlotInfo +local GetActionCooldown, GetActionTexture = GetActionCooldown, GetActionTexture local GetItemIcon, GetItemCooldown, GetItemSpell, GetSpellInfo = GetItemIcon, GetItemCooldown, GetItemSpell, GetSpellInfo local GetSpellTexture, IsActionInRange, IsCurrentAction = GetSpellTexture, IsActionInRange, IsCurrentAction local IsItemInRange, IsSpellInRange, IsUsableAction, IsUsableSpell = IsItemInRange, IsSpellInRange, IsUsableAction, IsUsableSpell @@ -160,15 +161,12 @@ function OvaleBestAction:GetActionInfo(element) Ovale:Log("Unknown macro "..element.params[1]) end elseif (element.func=="item") then - local itemId - if (type(element.params[1]) == "number") then - itemId = element.params[1] - else - local _,_,id = strfind(GetInventoryItemLink("player",GetInventorySlotInfo(element.params[1])) or "","item:(%d+):%d+:%d+:%d+") - if not id then - return nil - end - itemId = tonumber(id) + local itemId = element.params[1] + if itemId and type(itemId) ~= "number" then + itemId = OvaleEquipement:GetEquippedItem(itemId) + end + if not itemId then + return nil end if (Ovale.trace) then -- 1.7.9.5