I am currently wanting to make a small threat meter using Stuf's custom LUA text option.
All I want it to do is just show My current Threat% (without the % sign please) on my target, the color being Stuf's HP Red Color.
If someone could offer assistance, I would appreciate it greatly!
*~Lily.Petal~*
===============
For anyone who happens to search for similar effects for their own layouts, code will be listed below.
Link for other lua codes(provided by Cantises):
Lua Stuf examples
This code makes your power into a percent(without the %); if you are using energy/mana, the text will only show if you are under 100% (otherwise hidden). If you use RunicPower or Rage, the text will not show up unless you are above 1%.
Code:
function(unit)
local pCur, pMax = UnitPower(unit), UnitPowerMax(unit)
if pMax > 0 then
local _, pToken = UnitPowerType(unit)
if pToken == "RAGE" or pToken == "RUNIC_POWER" then
-- Warrior / Teddy Bear Druid / DK
if pCur > 0 then
return "%d", pCur
end
elseif pToken == "ENERGY" then
-- Rogue / Kitty Druid
if pCur < pMax then
return "%d", pCur
end
else
-- Everything else
local pPer = ceil((pCur / pMax)*100)
if pPer < 100 then
return "%d", pPer
end
end
end
end
Colored by powertype:
Code:
function(unit)
local pCur, pMax, mCur, mMax = UnitPower(unit), UnitPowerMax(unit), UnitPower(unit, 0), UnitPowerMax(unit, 0)
if pMax > 0 then
local pType, pToken = UnitPowerType(unit)
local pColor = PowerBarColor[pType]
if ( (pToken ~= "MANA") and (mMax > 0) ) then -- Druid in Bear/Cat form
local mColor = PowerBarColor[0]
local mPer = ceil((mCur / mMax)*100)
local ShowPower, ShowMana
if ((pToken == "RAGE") and (pCur > 0)) or ((pToken == "ENERGY") and (pCur < pMax)) then
ShowPower = true
end
if mPer < 100 then
ShowMana = true
end
if ShowPower and ShowMana then
return "|cff%02x%02x%02x%s|r |cff%02x%02x%02x%s|r", pColor.r * 255, pColor.g * 255, pColor.b * 255, pCur, mColor.r * 255, mColor.g * 255, mColor.b * 255, mPer
elseif ShowPower then
return "|cff%02x%02x%02x%s|r", pColor.r * 255, pColor.g * 255, pColor.b * 255, pCur
elseif ShowMana then
return "|cff%02x%02x%02x%s|r", mColor.r * 255, mColor.g * 255, mColor.b * 255, mPer
end
elseif pToken == "RAGE" or pToken == "RUNIC_POWER" then -- Warrior / DK
if pCur > 0 then
return "|cff%02x%02x%02x%s|r", pColor.r * 255, pColor.g * 255, pColor.b * 255, pCur
end
elseif pToken == "ENERGY" then -- Rogue
if pCur < pMax then
return "|cff%02x%02x%02x%s|r", pColor.r * 255, pColor.g * 255, pColor.b * 255, pCur
end
else -- Everything else
local pPer = ceil((pCur / pMax)*100)
if pPer < 100 then
return "|cff%02x%02x%02x%s|r", pColor.r * 255, pColor.g * 255, pColor.b * 255, pPer
end
end
end
end