self thread ColorSelector( < your element here > );
ColorSelector( element )
{
self.ColorList = [];
self.ColorList[0] = (1,1,1);
self.ColorList[1] = (0,1,0);
self.ColorList[2] = (1,0,0);
self.ColorList[3] = (1,0.5,0);
self.ColorList[4] = (0.6,0,0.6);
self.ColorList[5] = (1,0,1);
self.ColorList[6] = (0,1,1);
self.ColorList[7] = (1,1,0);
self.ColorList[8] = (0,0,0);
//Add Close Function Here
curs = 0;
self disableweapons();
self setClientDvars("r_blur", "6", "ui_hud_harcore", "1");
Colors = [];
BG = createRectangle("CENTER", "CENTER", 0, 0, 1000, 40, (0,0,0), "white", 0, 0.6);
for(c = 0;c < self.ColorList.size;c++)
Colors[c] = createRectangle("CENTER", "CENTER", (c*40)-120, 0, 35, 35, self.ColorList[c], "white", 1, 1);
for(;
{
self freezecontrols(true);
OldPos = curs;
Colors[OldPos] fadeOverTime(0.2);
Colors[OldPos].alpha = 1;
wait 0.2;
Colors[curs] fadeOverTime(0.2);
Colors[curs].alpha = 0;
wait 0.2;
Colors[curs] fadeOverTime(0.2);
Colors[curs].alpha = 1;
curs += self FragButtonPressed();
curs -= self SecondaryOffHandButtonPressed();
if(curs < 0)
curs = Colors.size-1;
if(curs > Colors.size-1)
curs = 0;
if(self MeleeButtonPressed())
break;
if(self UseButtonPressed())
{
element.color = (self.ColorList[curs]);
break;
}
wait 0.1;
}
for(c = 0;c < Colors.size;c++)
Colors[c] Destroy();
BG Destroy();
self freezecontrols(false); //You don't need this if your entering your menu
self setClientDvars("r_blur", "0", "ui_hud_harcore", "0");
self enableweapons();
}
createRectangle(align, relative, x, y, width, height, color, shader, sort, alpha)
{
boxElem = newClientHudElem(self);
boxElem.elemType = "bar";
if(!level.splitScreen)
{
boxElem.x = -2;
boxElem.y = -2;
}
boxElem.width = width;
boxElem.height = height;
boxElem.align = align;
boxElem.relative = relative;
boxElem.xOffset = 0;
boxElem.yOffset = 0;
boxElem.children = [];
boxElem.sort = sort;
boxElem.color = color;
boxElem.alpha = alpha;
boxElem setParent(level.uiParent);
boxElem setShader(shader, width, height);
boxElem.hidden = false;
boxElem setPoint(align, relative, x, y);
return boxElem;
}
self thread ColorSelector( < your element here > );
ColorSelector( element )
{
self.ColorList = [];
self.ColorList[0] = (1,1,1);
self.ColorList[1] = (0,1,0);
self.ColorList[2] = (1,0,0);
self.ColorList[3] = (1,0.5,0);
self.ColorList[4] = (0.6,0,0.6);
self.ColorList[5] = (1,0,1);
self.ColorList[6] = (0,1,1);
self.ColorList[7] = (1,1,0);
self.ColorList[8] = (0,0,0);
//Add Close Function Here
curs = 0;
self disableweapons();
self setClientDvars("r_blur", "6", "ui_hud_harcore", "1");
Colors = [];
BG = createRectangle("CENTER", "CENTER", 0, 0, 1000, 40, (0,0,0), "white", 0, 0.6);
for(c = 0;c < self.ColorList.size;c++)
Colors[c] = createRectangle("CENTER", "CENTER", (c*40)-120, 0, 35, 35, self.ColorList[c], "white", 1, 1);
for(;
{
self freezecontrols(true);
OldPos = curs;
Colors[OldPos] fadeOverTime(0.2);
Colors[OldPos].alpha = 1;
wait 0.2;
Colors[curs] fadeOverTime(0.2);
Colors[curs].alpha = 0;
wait 0.2;
Colors[curs] fadeOverTime(0.2);
Colors[curs].alpha = 1;
curs += self FragButtonPressed();
curs -= self SecondaryOffHandButtonPressed();
if(curs < 0)
curs = Colors.size-1;
if(curs > Colors.size-1)
curs = 0;
if(self MeleeButtonPressed())
break;
if(self UseButtonPressed())
{
element.color = (self.ColorList[curs]);
break;
}
wait 0.1;
}
for(c = 0;c < Colors.size;c++)
Colors[c] Destroy();
BG Destroy();
self freezecontrols(false); //You don't need this if your entering your menu
self setClientDvars("r_blur", "0", "ui_hud_harcore", "0");
self enableweapons();
}
createRectangle(align, relative, x, y, width, height, color, shader, sort, alpha)
{
boxElem = newClientHudElem(self);
boxElem.elemType = "bar";
if(!level.splitScreen)
{
boxElem.x = -2;
boxElem.y = -2;
}
boxElem.width = width;
boxElem.height = height;
boxElem.align = align;
boxElem.relative = relative;
boxElem.xOffset = 0;
boxElem.yOffset = 0;
boxElem.children = [];
boxElem.sort = sort;
boxElem.color = color;
boxElem.alpha = alpha;
boxElem setParent(level.uiParent);
boxElem setShader(shader, width, height);
boxElem.hidden = false;
boxElem setPoint(align, relative, x, y);
return boxElem;
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.