Skip to content

Instantly share code, notes, and snippets.

@minacle
Created September 4, 2013 22:31
Show Gist options
  • Save minacle/6443685 to your computer and use it in GitHub Desktop.
Save minacle/6443685 to your computer and use it in GitHub Desktop.
Azurea script for user unique text color.
function makeUniqueColor(status) {
var id = status.user.id;
var max = 16777215;
while (id > max)
id -= max;
var colorRange = [0, 255];
var averageRange = [0, 80];
var color = [id & 255, (id >> 8) & 255, (id >> 16) & 255];
while (true) {
for (var i = 0; i < 3; i++) {
while (color[i] < colorRange[0])
color[i] = colorRange[0] - color[i];
while (color[i] > colorRange[1])
color[i] = color[i] - colorRange[1];
}
var average = (color[0] + color[1] + color[2]) / 3;
if (average < averageRange[0])
for (var i = 0; i < 3; i++)
color[i]++;
else if (average > averageRange[1])
for (var i = 0; i < 3; i++)
color[i]--;
else
break;
}
return color[0] | (color[1] << 8) | (color[2] << 16);
}
System.views.getView(0, '').addEventListener('postProcessItem', function (item) {
item.textColor = makeUniqueColor(item.status);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment