view ProspectMe_Value.lua @ 14:56a8d7064c9a

Optimized the handling of several functions to decrease footprint - condensed 32 function calls into 7. *cheers*
author Geoff Brock <mischivin@gmail.com>
date Wed, 17 Aug 2016 14:09:16 -0400
parents 9c3883972403
children 5cbaaee1e7db
line wrap: on
line source
function PM_GetItemValue(itemID)
	local v = nil
	if GetAuctionBuyout then -- if an installed addon supports Tekkub's GetAuctionBuyout API: Auctionator, AuctionLite, etc...
		v = GetAuctionBuyout(itemID)
	end
	
	if v == nil then
		if AucAdvanced then -- Auctioneer Support
			v = AucAdvanced.API.GetMarketValue(PM_ItemTable[itemID].link)
		else -- if nothing else, use the vendor price!
			v = PM_ItemTable[itemID].vendorPrice
		end
	end
	
	if v == nil then -- provides a failsafe if Auctioneer, etc is set to Load on Demand
		v = PM_ItemTable[itemID].vendorPrice
	end
	
	if v == nil then -- provides a final failsafe - if we can't find anything, set it to 0 (TY peterwemm!)
		v = 0.0
	end

	return tonumber(v)
end

function PM_UpdateValues()
	for k,v in pairs(PM_ItemTable) do
		PM_ItemTable[k].price = PM_GetItemValue(k)
	end
end