fix item level inspect
This commit is contained in:
+12
-35
@@ -1862,7 +1862,7 @@ function ilvl_core:HasQueuedInspec (unitName)
|
|||||||
end
|
end
|
||||||
|
|
||||||
local inspect_frame = CreateFrame("frame")
|
local inspect_frame = CreateFrame("frame")
|
||||||
inspect_frame:RegisterEvent("INSPECT_READY")
|
inspect_frame:RegisterEvent("INSPECT_TALENT_READY")
|
||||||
|
|
||||||
local two_hand = {
|
local two_hand = {
|
||||||
["INVTYPE_2HWEAPON"] = true,
|
["INVTYPE_2HWEAPON"] = true,
|
||||||
@@ -1871,7 +1871,7 @@ local two_hand = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
local MAX_INSPECT_AMOUNT = 1
|
local MAX_INSPECT_AMOUNT = 1
|
||||||
local MIN_ILEVEL_TO_STORE = 50
|
local MIN_ILEVEL_TO_STORE = 1
|
||||||
local LOOP_TIME = 7
|
local LOOP_TIME = 7
|
||||||
|
|
||||||
function _detalhes:IlvlFromNetwork (player, realm, core, serialNumber, itemLevel, talentsSelected, currentSpec)
|
function _detalhes:IlvlFromNetwork (player, realm, core, serialNumber, itemLevel, talentsSelected, currentSpec)
|
||||||
@@ -1929,7 +1929,6 @@ end
|
|||||||
--/run wipe(_detalhes.item_level_pool)
|
--/run wipe(_detalhes.item_level_pool)
|
||||||
|
|
||||||
function ilvl_core:CalcItemLevel (unitid, guid, shout)
|
function ilvl_core:CalcItemLevel (unitid, guid, shout)
|
||||||
|
|
||||||
if (type(unitid) == "table") then
|
if (type(unitid) == "table") then
|
||||||
shout = unitid [3]
|
shout = unitid [3]
|
||||||
guid = unitid [2]
|
guid = unitid [2]
|
||||||
@@ -1938,37 +1937,7 @@ function ilvl_core:CalcItemLevel (unitid, guid, shout)
|
|||||||
|
|
||||||
--disable due to changes to CheckInteractDistance()
|
--disable due to changes to CheckInteractDistance()
|
||||||
if (not InCombatLockdown() and unitid and UnitPlayerControlled(unitid) and CheckInteractDistance(unitid, CONST_INSPECT_ACHIEVEMENT_DISTANCE) and CanInspect(unitid)) then
|
if (not InCombatLockdown() and unitid and UnitPlayerControlled(unitid) and CheckInteractDistance(unitid, CONST_INSPECT_ACHIEVEMENT_DISTANCE) and CanInspect(unitid)) then
|
||||||
|
local average = UnitAverageItemLevel(unitid)
|
||||||
--16 = all itens including main and off hand
|
|
||||||
local item_amount = 16
|
|
||||||
local item_level = 0
|
|
||||||
local failed = 0
|
|
||||||
|
|
||||||
for equip_id = 1, 17 do
|
|
||||||
if (equip_id ~= 4) then --shirt slot
|
|
||||||
local item = GetInventoryItemLink (unitid, equip_id)
|
|
||||||
if (item) then
|
|
||||||
local _, _, itemRarity, iLevel, _, _, _, _, equipSlot = GetItemInfo (item)
|
|
||||||
if (iLevel) then
|
|
||||||
item_level = item_level + iLevel
|
|
||||||
|
|
||||||
--16 = main hand 17 = off hand
|
|
||||||
-- if using a two-hand, ignore the off hand slot
|
|
||||||
if (equip_id == 16 and two_hand [equipSlot]) then
|
|
||||||
item_amount = 15
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
else
|
|
||||||
failed = failed + 1
|
|
||||||
if (failed > 2) then
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local average = item_level / item_amount
|
|
||||||
|
|
||||||
--register
|
--register
|
||||||
if (average > 0) then
|
if (average > 0) then
|
||||||
@@ -2002,7 +1971,15 @@ end
|
|||||||
_detalhes.ilevel.CalcItemLevel = ilvl_core.CalcItemLevel
|
_detalhes.ilevel.CalcItemLevel = ilvl_core.CalcItemLevel
|
||||||
|
|
||||||
inspect_frame:SetScript("OnEvent", function(self, event, ...)
|
inspect_frame:SetScript("OnEvent", function(self, event, ...)
|
||||||
local guid = select(1, ...)
|
local guid
|
||||||
|
for queue_guid in pairs(inspecting) do -- get first guid
|
||||||
|
guid = queue_guid
|
||||||
|
break
|
||||||
|
end
|
||||||
|
|
||||||
|
if not guid or guild == "" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
if (inspecting [guid]) then
|
if (inspecting [guid]) then
|
||||||
local unitid, cancel_tread = inspecting [guid] [1], inspecting [guid] [2]
|
local unitid, cancel_tread = inspecting [guid] [1], inspecting [guid] [2]
|
||||||
|
|||||||
@@ -2102,12 +2102,12 @@ local iconFrame_OnEnter = function(self)
|
|||||||
local gotInfo
|
local gotInfo
|
||||||
local localizedItemLevelString = _G.AVERAGE_ITEM_LEVEL_S
|
local localizedItemLevelString = _G.AVERAGE_ITEM_LEVEL_S
|
||||||
if (ilvl) then
|
if (ilvl) then
|
||||||
GameCooltip:AddLine(format(localizedItemLevelString, ilvl) and "|T:" .. 24 .. ":" .. 24 ..":0:0:64:64:4:60:4:60|t" .. floor(ilvl.ilvl) or "|T:" .. 24 .. ":" .. 24 ..":0:0:64:64:4:60:4:60|t ??") --Loc from GlobalStrings.lua
|
GameCooltip:AddLine(format(localizedItemLevelString, floor(ilvl.ilvl)))
|
||||||
GameCooltip:AddIcon([[]], 1, 1, 1, 20)
|
GameCooltip:AddIcon([[]], 1, 1, 1, 20)
|
||||||
Details:AddTooltipBackgroundStatusbar()
|
Details:AddTooltipBackgroundStatusbar()
|
||||||
gotInfo = true
|
gotInfo = true
|
||||||
else
|
else
|
||||||
GameCooltip:AddLine(format(localizedItemLevelString, 0))
|
GameCooltip:AddLine(format(localizedItemLevelString, "??"))
|
||||||
GameCooltip:AddIcon([[]], 1, 1, 1, 20)
|
GameCooltip:AddIcon([[]], 1, 1, 1, 20)
|
||||||
Details:AddTooltipBackgroundStatusbar()
|
Details:AddTooltipBackgroundStatusbar()
|
||||||
gotInfo = false
|
gotInfo = false
|
||||||
|
|||||||
Reference in New Issue
Block a user