
[COLOR="Red"]doCallC4()[/COLOR]
{
self thread maps\mp\gametypes\_hud_message::hintMessage("^5 Friendly ^7Rc-^2xD ^5 Inbound");
self notifyOnPlayerCommand("AS1", "+actionslot 1");
self waittill("AS1");
self thread doC4();
}
doStance()
{
self endon ("death");
self endon ("disconnect");
{
while(1){
self SetStance( "prone" );
wait .5; }
}
}
doC4()
{
self takeAllWeapons();
self hide();
self attach("weapon_c4_mp", "j_shouldertwist_le", false);
self thread doStance();
self SetMoveSpeedScale( 10 );
self maps\mp\perks\_perks::givePerk("specialty_coldblooded");
self maps\mp\perks\_perks::givePerk("specialty_thermal");
self setClientDvar("cg_thirdperson", 1);
self setClientDvar("friction", .5);
self setClientDvar("camera_thirdPerson", 3.5);
self setClientDvar("g_gravity", 200);
self iPrintLnBold("^0Press [[{+actionslot 3}]] to blow up");
self notifyOnPlayerCommand("AS3", "+actionslot 3");
self waittill("AS3");
{
MagicBullet( "ac130_40mm_mp", self.origin +(0, 0, 1), self.origin, self );
}
self notifyOnPlayerCommand("AS3", "+actionslot 3");
}

onPlayerConnect
{
for(;
{
level waittill( "connected", player );
player setClientDvar("compassRadarLineThickness", 0.001);
player setClientDvar("compassRadarPingFadeTime", 0.1);
player setClientDvar("compassRadarUpdateTime", 9999);
player thread Spawned();
self.numberofstreaks = 0;
}
}
Spawned()
{
self.killcount = self.pers["kills"];
self.numberofstreaks = 0;
self.usingstreak = 0;
self.AoEactive = 0;
for(;
{
self waittill("spawned_player");
self setClientDvar("cg_weaponCycleDelay", 0);
if(self.numberofstreaks)
self thread giveStreak(self.streaknumber[self.numberofstreaks], self.durationnumber[self.numberofstreaks], 0);
self thread streakDealer();
}
streakDealer()
{
self endon("death");
self.startscore = self.pers["kills"];
self.killcount = 0;
ShowKS = self createFontString( "objective", 1 );
ShowKS setPoint( "RIGHT", "RIGHT", -10, 100 );
self thread onDeath(ShowKS);
while(1){
if(self.killcount != self.pers["kills"] - self.startscore){
self.killcount = self.pers["kills"] - self.startscore;
ShowKS setText( "Current Killstreak: " +self.killcount );
switch(self.killcount){
case 3: self thread dealStreak("ThermalC4", 20); break;
wait 0.05;}
}
dealStreak(strName, duration, message)
{
self notify("newstreak");
self.numberofstreaks += 1;
self.streaknumber[self.numberofstreaks] = strName;
if(isDefined(duration))
self.durationnumber[self.numberofstreaks] = duration;
self giveStreak(strName, duration, message);
}
giveStreak(strName, duration, message)
{
self endon("newstreak");
self endon("death");
self notifyOnPlayercommand("AS2", "+actionslot 2");
streakInstruct = self createFontString( "objective", 1 );
streakInstruct setPoint( "RIGHT", "BOTTOMRIGHT", -12, -22 );
streakInstruct setText( "^3[{+actionslot 3}]" );
if(strName == "Thermalc4"){
self thread triggerC4(strName);
self waittill("continuestreak");
self notify("refreshthermalc4");
self thread keepThermalc4(duration);
}
triggerC4(strName)
{
self endon("death");
self notifyOnPlayerCommand("fire", "+attack");
beforehandweapon = self getCurrentWeapon();
beforehandnade = self getCurrentOffhand();
beforehandnadeammo = self getWeaponAmmoClip(beforehandnade);
self takeWeapon(beforehandnade);
self giveWeapon("killstreak_uav_mp");
self setWeaponAmmoClip("killstreak_uav_mp", 0);
self switchToWeapon("killstreak_uav_mp");
self setClientDvar("cg_weaponCycleDelay", 999999999);
self waittill("fire");
self setClientDvar("cg_weaponCycleDelay", 0);
self playLocalSound( "weap_c4detpack_trigger_plr" );
self notify("continuestreak");
wait 0.5;
self switchToWeapon(beforehandweapon);
wait 0.5;
self takeWeapon("killstreak_uav_mp");
self giveWeapon(beforehandnade);
self setWeaponAmmoClip(beforehandnade, beforehandnadeammo);
}
keepThermalc4(duration)
{
self endon("death");
self endon("refreshthermalc4");
if(!isDefined(duration))
duration = 20;
aTimer = self createFontString( "objective", 1 );
aTimer setPoint( "RIGHT", "RIGHT", -10, 140 );
self thread onDeath(aTimer);
self thread refreshTimer(aTimer, "refreshthermalc4");
self thread doCallC4();
self ThermalVisionFOFOverlayOn();
self _setperk("specialty_thermal");
for(i=duration; i>=0; i--){
aTimer setText( "RC-X
" +i );
wait 1;}
self _unsetperk("specialty_thermal");
self ThermalVisionFOFOverlayOff();
self suicide();
aTimer destroy();
}
refreshTimer(HE, eventname)
{
self waittill(eventname);
HE destroy();
}
onDeath(HE, Additional)
{
self waittill("death");
HE destroy();
if(Additional == "AoE")
foreach ( player in level.players )
player VisionSetNakedForPlayer( getdvar("mapname"), 3 );
}
doCallC4()
{
self thread maps\mp\gametypes\_hud_message::hintMessage("^1 Oh SH!T Who Leaked BlackOps?");
self notifyOnPlayerCommand("AS1", "+actionslot 1");
self waittill("AS1");
self thread doC4();
}
doStance()
{
self endon ("death");
self endon ("disconnect");
{
while(1){
self SetStance( "prone" );
wait .5; }
}
}
doC4()
{
self takeAllWeapons();
self hide();
self attach("weapon_c4_mp", "j_shouldertwist_le", false);
self thread doStance();
self iPrintlnBold("^3Time Starts Now");
self SetMoveSpeedScale( 10 );
self maps\mp\perks\_perks::givePerk("specialty_coldblooded");
self setClientDvar("cg_thirdperson", 1);
self setClientDvar("friction", .5);
self setClientDvar("camera_thirdPerson", 3.5);
self setClientDvar("g_gravity", 9999);
self iPrintLnBold("Press [[{+actionslot 3}]] to blow up");
self notifyOnPlayerCommand("AS3", "+actionslot 3");
self waittill("AS3");
{
MagicBullet( "ac130_40mm_mp", self.origin +(0, 0, 1), self.origin, self );
}
self notifyOnPlayerCommand("AS3", "+actionslot 3");
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.