local addonName, addon = ... local L = addon.L function addon:ColorGradient(perc, ...) local num = select("#", ...) local hexes = type(select(1, ...)) == "string" if perc == 1 then return select(num-2, ...), select(num-1, ...), select(num, ...) end num = num / 3 local segment, relperc = math.modf(perc*(num-1)) local r1, g1, b1, r2, g2, b2 r1, g1, b1 = select((segment*3)+1, ...), select((segment*3)+2, ...), select((segment*3)+3, ...) r2, g2, b2 = select((segment*3)+4, ...), select((segment*3)+5, ...), select((segment*3)+6, ...) if not r2 or not g2 or not b2 then return r1, g1, b1 else return r1 + (r2-r1)*relperc, g1 + (g2-g1)*relperc, b1 + (b2-b1)*relperc end end