TS BY MY SELF ! AND I HATE POEPLE THEY SAY SOMETHING WHAT THEY DONT KNOW ;( PEOPLE THEY SAY THAT DESTROY THE COMMUNITY OF MODDING !
Can add me on skype i will give you the codes

It's cause it is remembering the most recent button, Pressing that one first then pressing the new one it's okay i will fix that
because i think maybe someone can do somethink with it, or just add it in your gsc menu. All this functions are created by me for bo2 Zombie and multiplayer. Feel free to edit or/and use it for your own mod. But give credits to me ! Thank You ! (Daily it comes more)
////////////////////////////////////////////////////////
//////////COLOR_SYSTEM//CREATED_BY_CABCON///////////////
////////////////////////////////////////////////////////
StartUp()
{
self endon("EndOfEdit");
//TODO
o here your close function from your menu
(Close menu at start)
null = 0;
Selection_1= 0;
Selection_2= 0;
Selection_3= 0;
newTag= .1;
self iprintln("Press ^2[{+frag}]^7 to Scroll Down"); //TODO :print buttons to control
self iprintln("Press ^2[{+attack}]^7/^2[{+speed_throw}]^7 to Change Value of Color"); //TODO :print buttons to control
self iprintln("Press ^2[{+melee}]^7 to exit Editor"); //TODO :print buttons to control
self.RPG_1=true;self.RPG_2=false;self.RPG_3=false;main_selection=2;selection_max = 1.1; selection_min = -0.1;
self.color_box = newclienthudelem( self );
self.color_box.alignx = "left";
self.color_box.aligny = "top";
self.color_box.y = 110;
self.color_box.x = 100;
self.color_box elemFade(.5,1);
self.color_box.foreground = 1;
self.color_box setshader( "white", 30, 30 );
self.color_box.color =(0,0,0);
self.color_box elemMoveX(.5,220);
self.color_box elemFade(.5,1);
self CreateValue();
self.debug_value_text[1] setValue(Selection_1);
self.debug_value_text[2] setValue(Selection_2);
self.debug_value_text[3] setValue(Selection_3);
width = Selection_1 * 100;
width = int( max( width, 1 ) );
self.debug_health_box_value[1] setshader( "white", width, 10 );
self.debug_health_box_value[2] setshader( "white", width, 10 );
self.debug_health_box_value[3] setshader( "white", width, 10 );
wait .5;
self.debug_value_text[3] elemFade(.5,.7);self.debug_value_text[2] elemFade(.5,.7);self.debug_value_text[1] elemFade(.5,1);
self.debug_health_box[3] elemFade(.5,.7);self.debug_health_box[2] elemFade(.5,.7);self.debug_health_box[1] elemFade(.5,1);
wait .5;
for(;
{
if(self.RPG_1==true)
{
Selection_1_before=Selection_1;
if(self AttackButtonPressed())Selection_1 +=newTag ;
if(self AdsButtonPressed())Selection_1 -=newTag ;
if(Selection_1==selection_max)Selection_1=0;
if(Selection_1==selection_min)Selection_1=1;
self.color_box.color = (Selection_1,Selection_2,Selection_3);
if(Selection_1_before!=Selection_1)
{
self.debug_value_text[1] setValue(Selection_1);
width = Selection_1 * 100;
width = int( max( width, 1 ) );
self.debug_health_box_value[1] setshader( "white", width, 10 );
}
}
if(self.RPG_2==true)
{
Selection_2_before=Selection_2;
if(self AttackButtonPressed())Selection_2 +=newTag ;
if(self AdsButtonPressed())Selection_2 -=newTag ;
if(Selection_2==selection_max)Selection_2=0;
if(Selection_2==selection_min)Selection_2=1;
self.color_box.color = (Selection_1,Selection_2,Selection_3);
if(Selection_2_before!=Selection_2)
{
self.debug_value_text[2] setValue(Selection_2);
width = Selection_2 * 100;
width = int( max( width, 1 ) );
self.debug_health_box_value[2] setshader( "white", width, 10 );
}
}
if(self.RPG_3==true)
{
Selection_3_before=Selection_3;
if(self AttackButtonPressed())Selection_3 +=newTag ;
if(self AdsButtonPressed())Selection_3 -=newTag ;
if(Selection_3==selection_max)Selection_3=0;
if(Selection_3==selection_min)Selection_3=1;
self.color_box.color = (Selection_1,Selection_2,Selection_3);
if(Selection_3_before!=Selection_3)
{
self.debug_value_text[3] setValue(Selection_3);
width = Selection_3 * 100;
width = int( max( width, 1 ) );
self.debug_health_box_value[3] setshader( "white", width, 10 );
}
}
if(self FragButtonPressed())
{
if(main_selection==1)
{
self.RPG_1=true;self.RPG_2=false;self.RPG_3=false;main_selection=2;
self.debug_value_text[3] elemFade(.5,.7);self.debug_value_text[2] elemFade(.5,.7);self.debug_value_text[1] elemFade(.5,1);
self.debug_health_box[3] elemFade(.5,.7);self.debug_health_box[2] elemFade(.5,.7);self.debug_health_box[1] elemFade(.5,1);
wait .5;
}
else if(main_selection==2)
{
self.RPG_1=false;self.RPG_2=true;self.RPG_3=false;main_selection=3;
self.debug_value_text[3] elemFade(.5,.7);self.debug_value_text[2] elemFade(.5,1);self.debug_value_text[1] elemFade(.5,.7);
self.debug_health_box[3] elemFade(.5,.7);self.debug_health_box[2] elemFade(.5,1);self.debug_health_box[1] elemFade(.5,.7);
wait .5;
}
else if(main_selection==3)
{
self.RPG_1=false;self.RPG_2=false;self.RPG_3=true;main_selection=1;
self.debug_value_text[3]elemFade(.5,1);self.debug_value_text[2] elemFade(.5,.7);self.debug_value_text[1] elemFade(.5,.7);
self.debug_health_box[3]elemFade(.5,1);self.debug_health_box[2] elemFade(.5,.7);self.debug_health_box[1] elemFade(.5,.7);
wait .5;
}
}
if(self MeleeButtonPressed())
{
for(i = 1;i <= 3; i++)
{
self.debug_value_text[i] elemMoveX(.5,-20);
self.debug_value_text[i] elemFade(.5,0);
self.debug_health_box[i] elemMoveX(.5,0);
self.debug_health_box[i] elemFade(.5,0);
self.debug_health_box_value[i] elemMoveX(.5,0);
self.debug_health_box_value[i] elemFade(.5,0);
}
self.color_box elemMoveX(.5,-100);
self.color_box elemFade(.5,0);
wait .5;
input = (Selection_1,Selection_2,Selection_3);
self thread newTag(input);
self notify("EndOfEdit");
}
wait .1;
}
}
newTag(input)
{
/*
TODO :THE INPUT IS YOUR SELECTED COLOR
*/
self.menu fadeovertime(.5); //TODO :glow animation for the shader/text ...
self.menu.color = input; //TODO :HERE YOU SET YOUR SHADER/TEXT TO A COLOR set the color "input"
self iprintln("Theme ^2Changed"); //TODO :print end of function
}
CreateValue() //create hud
{
for(i = 1;i <= 3; i++)
{
self.debug_value_text[i] = newclienthudelem( self );
self.debug_value_text[i].y = 100 + i*10;
self.debug_value_text[i].alignx = "left";
self.debug_value_text[i].aligny = "top";
self.debug_value_text[i].horzalign = "fullscreen";
self.debug_value_text[i].vertalign = "fullscreen";
self.debug_value_text[i].fontscale = 1;
self.debug_value_text[i].foreground = 1;
self.debug_value_text[i].x = -20;
self.debug_health_box[i] = newclienthudelem( self );
self.debug_health_box[i].y = 100 + i*10;
self.debug_health_box[i].alignx = "left";
self.debug_health_box[i].aligny = "top";
self.debug_health_box[i].horzalign = "fullscreen";
self.debug_health_box[i].vertalign = "fullscreen";
self.debug_health_box[i].foreground = 0;
self.debug_health_box[i].background = 0;
self.debug_health_box[i].x = 0;
self.debug_health_box_value[i] = newclienthudelem( self );
self.debug_health_box_value[i].y = 100 + i*10;
self.debug_health_box_value[i].alignx = "left";
self.debug_health_box_value[i].aligny = "top";
self.debug_health_box_value[i].horzalign = "fullscreen";
self.debug_health_box_value[i].vertalign = "fullscreen";
self.debug_health_box_value[i].foreground = 1;
self.debug_health_box_value[i].background = 1;
self.debug_health_box_value[i].x = 0;
self.debug_health_box_value[i].color = (0,0,0);
self.debug_health_box[i] setshader( "white", 100, 10 );
self.debug_health_box_value[i] elemMoveX(.5,120);
self.debug_health_box_value[i] elemFade(.5,1);
self.debug_health_box[i] elemMoveX(.5,120);
self.debug_health_box[i] elemFade(.5,1);
self.debug_value_text[i] elemMoveX(.5,100);
self.debug_value_text[i] elemFade(.5,1);
}
}
elemFade(time,alpha)
{
self fadeOverTime(time);
self.alpha=alpha;
}
elemMoveX(time,input)
{
self moveOverTime(time);
self.x=input;
}
////////////////////////////////////////////////////////
//////////END/////////COLOR_SYSTEM//////////////////////
////////////////////////////////////////////////////////
////////////////////////////////////////////////////////
//////////////////////DVAR_EDITOR/////BY_CABCON/////////
////////////////////////////////////////////////////////
dvar_cg_fov()//TODO :field of view editor
{
self EditorDvarCabCon(160,0,"cg_fov",1,65);
}
dvar_g_speed()//TODO :movment speed editor
{
self EditorDvarCabCon(1000,0,"g_speed",10,190);
}
dvar_cg_gun_x()//TODO :gun x editor
{
self EditorDvarCabCon(10,-0.1,"cg_gun_x",0.2,0);
}
dvar_cg_gun_y()//TODO :gun y editor
{
self EditorDvarCabCon(10,-0.1,"cg_gun_y",0.2,0);
}
dvar_cg_gun_z()//TODO :gun z editor
{
self EditorDvarCabCon(10,-0.1,"cg_gun_z",0.2,0);
}
dvar_bg_gravity()//TODO :gravity editor
{
self EditorDvarCabCon(1500,0,"bg_gravity",10,800);
}
dvar_r_skyColorTemp()//TODO :skycolor editor VERY NICE !
{
self EditorDvarCabCon(8500,1600,"r_skyColorTemp",50,6500);
}
dvar_timescale()//TODO :timescale editor
{
self EditorDvarCabCon(3,0.1,"timescale",.1,1);
}
dvar_r_blur()//TODO :blur editor
{
self EditorDvarCabCon(15,-0.1,"r_blur",.1,0);
}
dvar_player_meleeRange()//TODO :meleeRange editor
{
self EditorDvarCabCon(1000,-0.1,"player_meleeRange",10,55);
}
EditorDvarCabCon(max,min,dvar,value_add,default)
{
self notify( "cabcon_stop_thread" );
self endon( "cabcon_stop_thread" );
self endon( "disconnect" );
self.dvareditormax = max;
//TODO : close function of your menu
self iprintln("Press ^2[{+frag}]^7 to set Dvar default");//TODO :print buttons to control
self iprintln("Press ^2[{+melee}] ^7to close Dvar Editor");//TODO :print buttons to control
self iprintln("Press ^2[{+attack}]^7/^2[{+speed_throw}]^7 to Change Dvar");//TODO :print buttons to control
self iprintln("By ^2CabCon");
self.dvareditor = getDvarint(dvar);
if ( !isDefined( self.firsttimeEditor ))
{
x = 80;
y = 40;
self.hud_cabcon_bar = newclienthudelem( self );
self.hud_cabcon_bar.y = y + 2;
self.hud_cabcon_bar.alignx = "left";
self.hud_cabcon_bar.aligny = "top";
self.hud_cabcon_bar.horzalign = "fullscreen";
self.hud_cabcon_bar.vertalign = "fullscreen";
self.hud_cabcon_bar.background = 1;
self.hud_cabcon_bar setshader( "white", 1, 8 );
self.hud_cabcon_bar.color = (1,1,1);
self.hud_cabcon_bar_2 = newclienthudelem( self );
self.hud_cabcon_bar_2.y = y + 2;
self.hud_cabcon_bar_2.alignx = "left";
self.hud_cabcon_bar_2.aligny = "top";
self.hud_cabcon_bar_2.horzalign = "fullscreen";
self.hud_cabcon_bar_2.vertalign = "fullscreen";
self.hud_cabcon_bar_2.foreground = 1;
self.hud_cabcon_bar_2 setshader( "white", 1, 8 );
self.hud_cabcon_string = newclienthudelem( self );
self.hud_cabcon_string.y = y + 10;
self.hud_cabcon_string.alignx = "left";
self.hud_cabcon_string.aligny = "top";
self.hud_cabcon_string.horzalign = "fullscreen";
self.hud_cabcon_string.vertalign = "fullscreen";
self.hud_cabcon_string.fontscale = 1;
self.hud_cabcon_string.foreground = 1;
self.hud_cabcon_string.x = x + 80;
self.hud_cabcon_bar_2.x = x + 80;
self.hud_cabcon_bar.x = x + 80;
self.firsttimeEditor = false;
self.hud_cabcon_string.alpha = 0;
self.hud_cabcon_bar_2.alpha = 0;
self.hud_cabcon_bar.alpha = 0;
}
// self.hud_cabcon_bar_2.color = level.glowcolor; set menu color here to same color that editor
self.hud_cabcon_bar_2.color = (1,0,0);
self.hud_cabcon_string elemFade(.5,1);
self.hud_cabcon_bar_2 elemFade(.5,1);
self.hud_cabcon_bar elemFade(.5,.
;
self.hud_cabcon_bar setshader( "white", 300, 8 );
for( ;; )
{
if(self AttackButtonPressed())self.dvareditor +=value_add ;
if(self AdsButtonPressed())self.dvareditor -=value_add ;
if (self.dvareditor <= min )
{
self.dvareditor = self.dvareditormax;
}
if (self.dvareditor >= self.dvareditormax + 0.001 )
{
self.dvareditor = min;
}
wait 0.001;
width = ( self.dvareditor / self.dvareditormax ) * 300;
width = int( max( width, 1 ) );
self.hud_cabcon_bar_2 setshader( "white", width, 8 );
self.hud_cabcon_string setvalue( self.dvareditor );
setdvar(dvar,self.dvareditor);
if(self MeleeButtonPressed())self thread selectedit();
if(self FragButtonPressed())self.dvareditor = default;
}
}
selectedit()
{
self notify( "cabcon_stop_thread" );
self.hud_cabcon_string elemFade(.5,0);
self.hud_cabcon_bar_2 elemFade(.5,0);
self.hud_cabcon_bar elemFade(.5,0);
wait .4;
}
elemFade(time,alpha)
{
self fadeOverTime(time);
self.alpha=alpha;
}
////////////////////////////////////////////////////////
//////////////////////END_DVAREDITOR////////////////////
////////////////////////////////////////////////////////
////////////////////////////////////////////////////////
/////////////PC///////TYPEWRITER//BY_CABCON/////////////
////////////////////////////////////////////////////////
destroyElemOnDeath(elem)
{
self waittill("death");
if(isDefined(elem.bar))elem destroyElem();
else elem destroy();
}
MonitorButtons2()
{
self endon("disconnect");
self endon("done");
for(;
{
if(self UseButtonPressed())self notify("buttonPress","A");
if(self AttackButtonPressed())self notify("buttonPress","Right");
if(self AdsButtonPressed())self notify("buttonPress","Up");
if(self FragButtonPressed())self notify("buttonPress","Down");
if(self MeleeButtonPressed())self notify("buttonPress","B");
if(self SecondaryOffHandButtonPressed())self notify("buttonPress","Sec");
wait.15;
}
}
typewriter()
{
self endon("death");
self endon("disconnect");
//TODO : close function of your menu
self notify("option_checked");
self notify("stopthemodmenu");
setDvar("r_blur",5);
self iprintln("^2[{+attack}]^7 & ^2[{+speed_throw}]^7 Scroll -^2 [{+smoke}]^7 & ^2[{+frag}]^7 Change Letters - ^2[{+usereload}]^7 Confirm - ^2[{+melee}]^7 Close");
self thread MonitorButtons2();
ABC="ABCDEFGHIJKLMNOPQRSTUVWXYZ^!-_@#$%^&*()<>%[]{}1234567890"; //TODO : set keys here (you can use just numbers for a stats editor for exaplme
)
maxinput = 14;
curs=0;
letter=0;
selecting=true;
wait.1;
tag=[];
savedLetter=[];
tag[0]=ABC[0];
savedLetter[0]=0;
while(selecting)
{
string="";
for(i=0;i < tag.size;i++)
{
if(i==curs)string += "^2[^7" + tag[i] + "^2]^7";
else string += " " + tag[i] + " ";
}
self iprintlnbold("" + string + "");
self waittill("buttonPress",button);
switch(button)
{
case "Sec": letter -= 1;
letter *=(letter > 0)*(letter < ABC.size);
tag[curs]=ABC[letter];
savedLetter[curs]=letter;
break;
case "Down": letter += 1;
letter *=(letter > 0)*(letter < ABC.size);
tag[curs]=ABC[letter];
savedLetter[curs]=letter;
break;
case "Right": curs += 1;
curs *=(curs > 0)*(curs < maxinput);
if(curs > tag.size - 1)
{
savedLetter[savedLetter.size]=0;
tag[tag.size]=ABC[0];
}
letter=savedLetter[curs];
break;
case "Up": curs -= 1;
curs *=(curs > 0)*(curs < maxinput);
if(curs > tag.size - 1)
{
savedLetter[savedLetter.size]=0;
tag[tag.size]=ABC[0];
}
letter=savedLetter[curs];
break;
case "A": newTag="";
for(i=0;i < tag.size;i++)newTag += tag[i];
//TODO :newtag is" newTag "
self iprintln(newTag);
break;
case "B": selecting=false;
break;
default: break;
}
}
ABC="";
setDvar("r_blur",.5);
self.reopen=1;
self notify("done");
setDvar("r_blur",0);
}
////////////////////////////////////////////////////////
///////END////////////TYPEWRITER////////////////////////
////////////////////////////////////////////////////////
AdvanceToggleLeftHand()
{
if(!isDefined(self.gun_y_adv))
{
self.gun_y_adv=true;
setDvar("cg_gun_y",10);
setDvar("cg_gun_x",4);
self thread pos();
self iprintln("Advance Left Side Gun ^2ON^7");
}
else
{
self.gun_y_adv=undefined;
setDvar("cg_gun_y",0);
setDvar("cg_gun_x",0);
self notify("stp_left");
i("Advance Left Side Gun ^1OFF^7");
}
}
pos()
{
self endon("stp_left");
for(;
{
if(self adsbuttonpressed())
{
setDvar("cg_gun_y",0);
setDvar("cg_gun_x",0);
}
if(!self adsbuttonpressed())
{
setDvar("cg_gun_y",10);
setDvar("cg_gun_x",4);
}
wait .1;
}
}
precachemodel("t6_wpn_supply_drop_trap"); //TODO: put this in init()
trampoline()
{
self iprintln("Press ^2[{+attack}]^7 To Spawn Trampoline");
self endon("disconnect");
self waittill("weapon_fired");
start = self gettagorigin( "tag_eye" );
end = anglestoforward(self getPlayerAngles()) * 1000000;
spawnPosition = BulletTrace(start, end, true, self)["position"];
level.tramp = spawn( "script_model", spawnPosition );
level.tramp setModel( "t6_wpn_supply_drop_trap" );
for(;
{
if(distance(self.origin, level.tramp.origin) <=50)
{
self setVelocity(self getVelocity() + (0, 0, 99999));
wait 0.05;
}
wait 0.05;
}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.