coa.7: guard Skills tab summary against unscanned skill ranks
release / release (push) Successful in 5s
release / release (push) Successful in 5s
GetColor() did floor(rank/..) with no nil-guard and riding did 'field >= 300'; skillRank1/2/cooking/firstaid/fishing/riding are nil for chars DataStore_Characters hasn't scanned. GetColor now defaults rank to 0 and each field falls back to 0.
This commit is contained in:
@@ -119,7 +119,7 @@ function ns:Update()
|
||||
else
|
||||
icon = ""
|
||||
end
|
||||
field = Characters:GetField(line, "skillRank1")
|
||||
field = Characters:GetField(line, "skillRank1") or 0
|
||||
_G[entry..i.."Skill1NormalText"]:SetText(icon .. ns:GetColor(field) .. field)
|
||||
|
||||
-- profession 2
|
||||
@@ -130,29 +130,29 @@ function ns:Update()
|
||||
else
|
||||
icon = ""
|
||||
end
|
||||
field = Characters:GetField(line, "skillRank2")
|
||||
field = Characters:GetField(line, "skillRank2") or 0
|
||||
_G[entry..i.."Skill2NormalText"]:SetText(icon .. ns:GetColor(field) .. field)
|
||||
|
||||
-- cooking
|
||||
-- icon = addon:TextureToFontstring(addon:GetSpellIcon(2550), size, size) .. " "
|
||||
icon = addon:TextureToFontstring2(addon:GetSpellIcon(2550), size, size, inset, inset, inset, inset) .. " "
|
||||
field = Characters:GetField(line, "cooking")
|
||||
field = Characters:GetField(line, "cooking") or 0
|
||||
_G[entry..i.."CookingNormalText"]:SetText(icon .. ns:GetColor(field) .. field)
|
||||
|
||||
-- first aid
|
||||
-- icon = addon:TextureToFontstring(addon:GetSpellIcon(3273), size, size) .. " "
|
||||
icon = addon:TextureToFontstring2(addon:GetSpellIcon(3273), size, size, inset, inset, inset, inset) .. " "
|
||||
field = Characters:GetField(line, "firstaid")
|
||||
field = Characters:GetField(line, "firstaid") or 0
|
||||
_G[entry..i.."FirstAidNormalText"]:SetText(icon .. ns:GetColor(field) .. field)
|
||||
|
||||
-- fishing
|
||||
-- icon = addon:TextureToFontstring(addon:GetSpellIcon(7733), size, size) .. " "
|
||||
icon = addon:TextureToFontstring2(addon:GetSpellIcon(7733), size, size, inset, inset, inset, inset) .. " "
|
||||
field = Characters:GetField(line, "fishing")
|
||||
field = Characters:GetField(line, "fishing") or 0
|
||||
_G[entry..i.."FishingNormalText"]:SetText(icon .. ns:GetColor(field) .. field)
|
||||
|
||||
-- riding
|
||||
field = Characters:GetField(line, "riding")
|
||||
field = Characters:GetField(line, "riding") or 0
|
||||
if field >= 300 then
|
||||
-- icon = addon:TextureToFontstring("Interface\\Icons\\Ability_Mount_Gryphon_01", size, size) .. " "
|
||||
icon = addon:TextureToFontstring2("Interface\\Icons\\ability_mount_drake_bronze", size, size, inset, inset, inset, inset)
|
||||
@@ -400,6 +400,7 @@ end
|
||||
local skillColors = { RECIPE_GREY, RED, ORANGE, YELLOW, GREEN }
|
||||
|
||||
function ns:GetColor(rank, skillCap)
|
||||
rank = rank or 0 -- CoA: skill fields are nil for chars DataStore_Characters hasn't scanned
|
||||
skillCap = skillCap or 450
|
||||
return skillColors[ floor(rank / (skillCap/4)) + 1 ]
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user