Hello Dr. McKay,
Problem; colours persist whem players permissions are removed.
Solution; Insert "ClearValues(i);" in the for(new i = 1; i <= Maxplayers; i++) loop just before "OnClientPostAdminCheck(i);", then it resets colours before checking if new colours to apply, before, it was checking, but not doing amything due to lack of flags on that ayer.
This problem came up when testing my admin mod, colours were updated correctly when players flags were added/chamged, but colours were not defaulted when the flag was removed. My modified version is working flawlessly on my server