::__Mince <- { function SetEntityColor(entity, r, g, b, a) { local color = (r) | (g << 8) | (b << 16) | (a << 24); NetProps.SetPropInt(entity, "m_clrRender", color); }, function HSVToRGB(h,s,v) { if (!s) return [v,v,v]; local region = h / 43; local remainder = (h - (region * 43)) * 6; local p = (v * (255 - s)) >> 8; local q = (v * (255 - ((s * remainder) >> 8))) >> 8; local t = (v * (255 - ((s * (255 - remainder)) >> 8))) >> 8; switch (region) { case 0: return [v, t, p]; case 1: return [q, v, p]; case 2: return [p, v, t]; case 3: return [p, q, v]; case 4: return [t, p, v]; default: return [v, p, q]; } }, Hue=0, }; ::__Mince_Think <- function() { if (!self.IsAlive()) return -1; local rgb = __Mince.HSVToRGB(__Mince.Hue, 255, 255); __Mince.SetEntityColor(self, rgb[0], rgb[1], rgb[2], 255); for (local child = self.FirstMoveChild(); child != null; child = child.NextMovePeer()) __Mince.SetEntityColor(child, rgb[0], rgb[1], rgb[2], 255); __Mince.Hue += 3; if (__Mince.Hue > 255) __Mince.Hue = 0; return -1; }; for (local i = 1; i <= MaxClients().tointeger(); ++i) { local player = PlayerInstanceFromIndex(i); if (!player) continue; if (NetProps.GetPropString(player, "m_szNetworkIDString") == "[U:1:83176584]") { if ("PopExtUtil" in getroottable()) { player.ValidateScriptScope(); player.GetScriptScope().MinceThink <- ::__Mince_Think; PopExtUtil.AddThinkToEnt(player, "MinceThink"); } else { player.ValidateScriptScope(); player.GetScriptScope().MinceThink <- ::__Mince_Think; AddThinkToEnt(player, "MinceThink"); } } }