From a91f975e9b86859f3605c75e42d52e73b1511101 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Mon, 10 Feb 2020 05:37:47 -0500 Subject: Hash to colors in the range 2-75 Colors 76-87 seem too light, some almost appearing white. Colors 88-98 are shades of gray. --- chat.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'chat.h') diff --git a/chat.h b/chat.h index f79cc70..e7bb9cc 100644 --- a/chat.h +++ b/chat.h @@ -198,7 +198,16 @@ static inline enum Color hash(const char *str) { hash ^= *str; hash *= 0x27220A95; } - return 2 + hash % 14; + static const enum Color colors[] = { + Blue, Green, Red, Brown, Magenta, Orange, Yellow, + LightGreen, Cyan, LightCyan, LightBlue, Pink, Gray, LightGray, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + }; + return colors[hash % ARRAY_LEN(colors)]; } #define BASE64_SIZE(len) (1 + ((len) + 2) / 3 * 4) -- cgit 1.4.1