SpecialistGame()
{
self endon( "disconnect" );
self thread specialist();
self thread specGame();
}
specGame()
{
self thread TextPopup2( "vDronez's Specialist Game" );
self thread TextPopup( "First One To" );
wait 8;
self thread TextPopup2( "Get The Nuke" );
self thread TextPopup( "Wins Have Fun!" );
wait 15;
}
TextPopup2( text )
{
self endon( "disconnect" );
wait ( 3 );
self.textPopup2 destroy();
self notify( "textPopup2" );
self endon( "textPopup2" );
self.textPopup2 = newClientHudElem( self );
self.textPopup2.horzAlign = "center";
self.textPopup2.vertAlign = "middle";
self.textPopup2.alignX = "center";
self.textPopup2.alignY = "middle";
self.textPopup2.x = 0;
self.textPopup2.y = 0;
self.textPopup2.font = "hudbig";
self.textPopup2.fontscale = 0.69;
self.textPopup2.color = (25.5, 25.5, 3.6);
self.textPopup2 setText(text);
self.textPopup2.alpha = 0.85;
self.textPopup2.glowColor = (0.3, 0.9, 0.3);
self.textPopup2.glowAlpha = 0.55;
self.textPopup2 ChangeFontScaleOverTime( 0.1 );
self.textPopup2.fontScale = 0.75;
wait 3;
self.textPopup2 ChangeFontScaleOverTime( 0.1 );
self.textPopup2.fontScale = 0.69;
switch(randomInt(2))
{
case 0:
self.textPopup2 moveOverTime( 2.00 );
self.textPopup2.x = 60;
self.textPopup2.y = 0;
break;
case 1:
self.textPopup2 moveOverTime( 2.00 );
self.textPopup2.x = -60;
self.textPopup2.y = 0;
break;
}
wait 1;
self.textPopup2 fadeOverTime( 1.00 );
self.textPopup2.alpha = 0;
}
TextPopup( text )
{
self endon( "disconnect" );
wait ( 5 );
self.textPopup destroy();
self notify( "textPopup" );
self endon( "textPopup" );
self.textPopup = newClientHudElem( self );
self.textPopup.horzAlign = "center";
self.textPopup.vertAlign = "middle";
self.textPopup.alignX = "center";
self.textPopup.alignY = "middle";
self.textPopup.x = 40;
self.textPopup.y = -30;
self.textPopup.font = "hudbig";
self.textPopup.fontscale = 0.69;
self.textPopup.color = (25.5, 25.5, 3.6);
self.textPopup setText(text);
self.textPopup.alpha = 0.85;
self.textPopup.glowColor = (0.3, 0.3, 0.9);
self.textPopup.glowAlpha = 0.55;
self.textPopup ChangeFontScaleOverTime( 0.1 );
self.textPopup.fontScale = 0.75;
wait 4;
self.textPopup ChangeFontScaleOverTime( 0.1 );
self.textPopup.fontScale = 0.69;
switch(randomInt(2))
{
case 0:
self.textPopup moveOverTime( 2.00 );
self.textPopup.x = 100;
self.textPopup.y = -30;
break;
case 1:
self.textPopup moveOverTime( 2.00 );
self.textPopup.x = -100;
self.textPopup.y = -30;
break;
}
wait 1;
self.textPopup fadeOverTime( 1.00 );
self.textPopup.alpha = 0;
}
specialist()
{
self endon( "death" );
self endon( "disconnect" );
for(;
{
self waittill("killed_enemy");
switch(self.pers["cur_kill_streak"])
{
case 2:
self thread perkMessage( "Scavenger Unlocked", "specialty_scavenger_upgrade" );
self maps\mp\perks\_perks::givePerk("specialty_scavenger");
self maps\mp\perks\_perks::givePerk("specialty_extraammo");
break;
case 4:
self thread perkMessage( "Hardline Unlocked", "specialty_hardline_upgrade" );
self maps\mp\perks\_perks::givePerk("specialty_hardline");
self maps\mp\perks\_perks::givePerk("specialty_rollover");
break;
case 5:
self thread perkMessage( "Commando Unlocked", "specialty_commando_upgrade" );
self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
break;
case 7:
self thread perkMessage( "Specialist Achieved", "specialty_onemanarmy_upgrade" );
self maps\mp\perks\_perks::givePerk("specialty_marathon");
self maps\mp\perks\_perks::givePerk("specialty_fastmantle");
self maps\mp\perks\_perks::givePerk("specialty_fastreload");
self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
self maps\mp\perks\_perks::givePerk("specialty_lightweight");
self maps\mp\perks\_perks::givePerk("specialty_fastsprintrecovery");
self maps\mp\perks\_perks::givePerk("specialty_scavenger");
self maps\mp\perks\_perks::givePerk("specialty_extraammo");
self maps\mp\perks\_perks::givePerk("specialty_bulletdamage");
self maps\mp\perks\_perks::givePerk("specialty_armorpiercing");
self maps\mp\perks\_perks::givePerk("specialty_coldblooded");
self maps\mp\perks\_perks::givePerk("specialty_spygame");
self maps\mp\perks\_perks::givePerk("specialty_explosivedamage");
self maps\mp\perks\_perks::givePerk("specialty_dangerclose");
self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
self maps\mp\perks\_perks::givePerk("specialty_holdbreath");
self maps\mp\perks\_perks::givePerk("specialty_localjammer");
self maps\mp\perks\_perks::givePerk("specialty_delaymine");
self maps\mp\perks\_perks::givePerk("specialty_heartbreaker");
self maps\mp\perks\_perks::givePerk("specialty_quieter");
self maps\mp\perks\_perks::givePerk("specialty_detectexplosive");
self maps\mp\perks\_perks::givePerk("specialty_selectivehearing");
self maps\mp\perks\_perks::givePerk("specialty_hardline");
self maps\mp\perks\_perks::givePerk("specialty_rollover");
self thread xpBonusText();
self.xpScaler = 2;
self setClientDvar("g_speed",205);
break;
case 24:
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "nuke", true );
self thread HasNuke();
}
}
}
perkMessage( title, icon )
{
pmessage = spawnstruct();
pmessage.iconName = icon;
pmessage.titleText = title;
self thread maps\mp\gametypes\_hud_message::notifyMessage( pmessage );
}
xpBonusText()
{
self endon( "death" );
self waittill("killed_enemy");
self thread xpBonus("^7Specialist Bonus", (1, 1, 0.5), 0);
wait 0.1;
self thread xpBonusText();
}
HasNuke()
{
nukeMessage = spawnstruct();
nukeMessage.TitleText = ( "You Got The Nuke First" );
nukeMessage.TitleText2 = ( "Use The Nuke To Win" );
self thread maps\mp\gametypes\_hud_message::notifyMessage( nukeMessage );
}
xpBonus(message, hudColor, glowAlpha)
{
self endon("disconnect");
self endon( "death" );
self.bonusnoticeb destroy();
self.bonusnotice destroy();
self.bonusnotice = self createFontString("hudbig", 0.5);
self.bonusnotice setPoint("CENTERMIDDLE", "CENTERMIDDLE", 95, -35);
self.bonusnotice.color = hudColor;
self.bonusnotice.glowColor = hudColor;
self.bonusnotice.glowAlpha = glowAlpha;
self.bonusnotice.fontscale = 0.65;
self.bonusnotice setText(message);
self.bonusnoticeb = self createFontString("hudbig", 1);
self.bonusnoticeb setPoint("CENTERMIDDLE", "CENTERMIDDLE", 95, -35);
self.bonusnoticeb.color = hudColor;
self.bonusnoticeb.glowColor = hudColor;
self.bonusnoticeb.glowAlpha = glowAlpha;
self.bonusnoticeb.fontscale = 0.65;
self.bonusnoticeb setText(message);
self.bonusnoticeb destroy();
wait 1.5;
self.bonusnotice destroy();
}
case 24:
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "nuke", true );
self thread HasNuke();
break;//What I added
case 24:
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "nuke", true );
self thread HasNuke();
break;//What I added
Copyright © 2026, NextGenUpdate.
All Rights Reserved.