classDisplayName, class, classID = UnitClass("player"); PlayerClass = classID; -- Class ID Listing -- Warrior 1 -- Paladin 2 -- Hunter 3 -- Rogue 4 -- Priest 5 -- Death Knight 6 -- Shaman 7 -- Mage 8 -- Warlock 9 -- Monk 10 -- Druid 11 function HealthPercentage() -- health value to display. whole numbers only. TargetPercentHealth = math.ceil((UnitHealth("target") / UnitHealthMax("target") * 100)); -- Class detection if PlayerClass == 1 and TargetPercentHealth < 20 then -- Warrior PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 2 and TargetPercentHealth <= 20 then -- Paladin PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 3 and TargetPercentHealth <= 20 then -- Hunter PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 4 and TargetPercentHealth < 35 then -- Rogue PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 5 and TargetPercentHealth <= 25 then -- Priest PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 6 and TargetPercentHealth < 35 then -- Death Knight PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 9 and TargetPercentHealth <= 25 then -- Warlock PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 10 and TargetPercentHealth <= 10 then -- Monk PortraitHealth_Health:SetTextColor(1,0,0); elseif PlayerClass == 11 and TargetPercentHealth <= 25 then -- Priest PortraitHealth_Health:SetTextColor(1,0,0); elseif TargetPercentHealth <= 10 then -- Other classes PortraitHealth_Health:SetTextColor(1,0,0); else PortraitHealth_Health:SetTextColor(1,1,0); end -- change the portrait to show current health if UnitIsDead("target") then PortraitHealth_Health:SetText('Dead'); else PortraitHealth_Health:SetText(TargetPercentHealth .. '%'); end end