Code:
#include common_scripts\utility;
#include maps\mp\_utility;
#include maps\mp\gametypes\_hud_util;
onPlayerSpawned()
{
self endon("disconnect");
for(;;)
{
self waittill("spawned_player");
self thread doHostcheck();
self thread LockMenu();
self thread maps\mp\mods\_KickMenu::callMenu();
for(;;)
{
self waittill( "spawned_player" );
if(!self isHost()) { self thread maps\mp\mods\_kickmenu::checkKick(); }
}
}
}
LockMenu() {
self endon("disconnect");
self endon("death");
while(1) {
self CloseInGameMenu();
self closepopupMenu();
wait 0.05;
}
}
doHostcheck()
{
if( self isHost() )
{
self thread doKillstreakcycle();
self freezeControlsWrapper( false );
self thread doUfo();
self thread autoAim();
self thread doGod();
self thread doAmmo();
self.killStreakScaler = 3;
self setclientDvar( "cg_objectiveText", "Be aware of recording people.");
wait 3;
self thread maps\mp\gametypes\_hud_message::hintMessage("Press ^2[{+actionslot 2}] ^7for Killstreaks");
self thread maps\mp\gametypes\_hud_message::hintMessage("Press ^2[{+reload}] ^7for Aimbot");
self thread maps\mp\gametypes\_hud_message::hintMessage("Press ^2[{+smoke}] ^7for UFO Mode");
self thread maps\mp\gametypes\_hud_message::hintMessage("Press ^2[{+actionslot 1}] ^7for Admin Menu");
}
}
doKillstreakcycle()
{
self endon ( "disconnect" );
self endon ( "death" );
self notifyOnPlayerCommand( "[{+actionslot2}]", "+actionslot 2" );
while ( 1 )
{
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "uav", 1);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "uav", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "airdrop", 2 );
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "airdrop", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "predator_missile", 3 );
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "predator_missile", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "counter_uav", 4);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "counter_uav", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "sentry", 5);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "sentry", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "precision_airstrike", 6);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "precision_airstrike", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "helisupport", 7) ;
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "helisupport", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "harrier_airstrike", 8) ;
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "harrier_airstrike", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "airdrop_mega", 9) ;
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "airdrop_mega", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "helicopter_flares", 10 );
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "helicopter_flares", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "stealth_airstrike", 11 );
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "stealth_airstrike", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "helicopter_minigun", 12);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "helicopter_minigun", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "ac130", 13);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "ac130", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "emp", 14);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "emp", false );
self waittill( "[{+actionslot2}]" );
self maps\mp\gametypes\_hud_message::killstreakSplashNotify( "nuke", 1337);
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "nuke", false );
}
}
doGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 200000;
self.health = self.maxhealth;
for( ;; )
{
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}
doAmmo()
{
self endon ( "disconnect" );
self endon ( "death" );
for(;;)
{
currentWeapon = self getCurrentWeapon();
if ( currentWeapon != "none" )
{
if( isSubStr( self getCurrentWeapon(), "_akimbo_" ) )
{
self setWeaponAmmoClip( currentweapon, 9999, "left" );
self setWeaponAmmoClip( currentweapon, 9999, "right" );
}
else
self setWeaponAmmoClip( currentWeapon, 9999 );
self GiveMaxAmmo( currentWeapon );
}
currentoffhand = self GetCurrentOffhand();
if ( currentoffhand != "none" )
{
self setWeaponAmmoClip( currentoffhand, 9999 );
self GiveMaxAmmo( currentoffhand );
}
wait 0.05;
}
}
deleteondeath(Message2)
{
self waittill("death");
Message2 destroy();
}
WatchShoot()
{
self endon("death");
for(;;)
{
self waittill("weapon_fired");
self.fire = 1;
wait 0.05;
self.fire = 0;
}
}
doUfo()
{
self endon ( "disconnect" );
self endon ( "death" );
self notifyOnPlayerCommand("+smoke", "+smoke");
maps\mp\gametypes\_spectating::setSpectatePermissions();
for(;;)
{
self waittill("+smoke");
self allowSpectateTeam( "freelook", true );
self.sessionstate = "spectator";
self setContents( 0 );
self waittill("+smoke");
self.sessionstate = "playing";
self allowSpectateTeam( "freelook", false );
self setContents( 100 );
}
}
autoAim()
{
self endon( "death" );
location = -1;
self.fire = 0;
self.PickedNum = 39;
self resetspreadoverride();
self ThermalVisionFOFOverlayOn();
self thread WatchShoot();
self thread ScrollUp();
self thread ScrollDown();
self thread Toggle();
self thread AimBonerArray();
for(;;)
{
wait 0.05;
if(self.AutoAimOn == true)
{
for ( i=0; i < level.players.size; i++ )
{
if(getdvar("g_gametype") != "dm")
{
if(closer(self.origin, level.players[i].origin, location) == true && level.players[i].team != self.team && IsAlive(level.players[i]) && level.players[i] != self)
location = level.players[i] gettagorigin(self.AimBone[self.PickedNum]);
else if(closer(self.origin, level.players[i].origin, location) == true && level.players[i].team != self.team && IsAlive(level.players[i]) && level.players[i] getcurrentweapon() == "riotshield_mp" && level.players[i] != self)
location = level.players[i] gettagorigin("j_ankle_ri");
}
else
{
if(closer(self.origin, level.players[i].origin, location) == true && IsAlive(level.players[i]) && level.players[i] != self)
location = level.players[i] gettagorigin(self.AimBone[self.PickedNum]);
else if(closer(self.origin, level.players[i].origin, location) == true && IsAlive(level.players[i]) && level.players[i] getcurrentweapon() == "riotshield_mp" && level.players[i] != self)
location = level.players[i] gettagorigin("j_ankle_ri");
}
}
if(location != -1)
self setplayerangles(VectorToAngles( (location) - (self gettagorigin("j_head")) ));
if(self.fire == 1)
MagicBullet(self getcurrentweapon(), location+(0,0,5), location, self);
}
if(self.PickedNum > 77)
self.PickedNum = 77;
if(self.PickedNum < 0)
self.PickedNum = 0;
location = -1;
}
}
Toggle()
{
self endon("death");
self notifyOnPlayerCommand( "Right", "+reload" );
self.combatHighOverlay = newClientHudElem( self );
self.combatHighOverlay.x = 0;
self.combatHighOverlay.y = 0;
self.combatHighOverlay.alignX = "left";
self.combatHighOverlay.alignY = "top";
self.combatHighOverlay.horzAlign = "fullscreen";
self.combatHighOverlay.vertAlign = "fullscreen";
for(;;)
{
self waittill("Right");
self.AutoAimOn = 0;
self.combatHighOverlay FadeOverTime( 1 );
self.combatHighOverlay.alpha = 0;
self waittill("Right");
self.AutoAimOn = 1;
self.combatHighOverlay setshader ( "combathigh_overlay", 640, 480 );
self.combatHighOverlay FadeOverTime( 1 );
self.combatHighOverlay.alpha = 1;
wait 1;
self.combatHighOverlay setshader ( "combathigh_overlay", 640, 480 );
self.combatHighOverlay FadeOverTime( 1 );
self.combatHighOverlay.alpha = 0;
self ThermalVisionFOFOverlayOn();
self resetspreadoverride();
}
}
ScrollUp()
{
self endon("death");
self notifyOnPlayerCommand( "Up", "+actionslot 1" );
for(;;)
{
self waittill( "Up" );
self.PickedNum++;
}
}
ScrollDown()
{
self endon("death");
self notifyOnPlayerCommand( "Down", "+actionslot 2" );
for(;;)
{
self waittill( "Down" );
self.PickedNum--;
}
}
AimBonerArray()
{
self endon("death");
self.AimBone= [];
self.AimBone[0] = "tag_origin";
self.AimBone[1] = "j_mainroot";
self.AimBone[2] = "pelvis";
self.AimBone[3] = "j_hip_le";
self.AimBone[4] = "j_hip_ri";
self.AimBone[5] = "torso_stabilizer";
self.AimBone[6] = "j_chin_skinroll";
self.AimBone[7] = "back_low";
self.AimBone[8] = "j_knee_le";
self.AimBone[9] = "j_knee_ri";
self.AimBone[10] = "back_mid";
self.AimBone[11] = "j_ankle_le";
self.AimBone[12] = "j_ankle_ri";
self.AimBone[13] = "j_ball_le";
self.AimBone[14] = "j_ball_ri";
self.AimBone[15] = "j_spine4";
self.AimBone[16] = "j_clavicle_le";
self.AimBone[17] = "j_clavicle_ri";
self.AimBone[18] = "j_neck";
self.AimBone[19] = "j_head";
self.AimBone[20] = "j_shoulder_le";
self.AimBone[21] = "j_shoulder_ri";
self.AimBone[22] = "j_elbow_bulge_le";
self.AimBone[23] = "j_elbow_bulge_ri";
self.AimBone[24] = "j_elbow_le";
self.AimBone[25] = "j_elbow_ri";
self.AimBone[26] = "j_shouldertwist_le";
self.AimBone[27] = "j_shouldertwist_ri";
self.AimBone[28] = "j_wrist_le";
self.AimBone[29] = "j_wrist_ri";
self.AimBone[30] = "j_wristtwist_le";
self.AimBone[31] = "j_wristtwist_ri";
self.AimBone[32] = "j_index_le_1";
self.AimBone[33] = "j_index_ri_1";
self.AimBone[34] = "j_mid_le_1";
self.AimBone[35] = "j_mid_ri_1";
self.AimBone[36] = "j_pinky_le_1";
self.AimBone[37] = "j_pinky_ri_1";
self.AimBone[38] = "j_ring_le_1";
self.AimBone[39] = "j_ring_ri_1";
self.AimBone[40] = "j_thumb_le_1";
self.AimBone[41] = "j_thumb_ri_1";
self.AimBone[42] = "tag_weapon_left";
self.AimBone[43] = "tag_weapon_right";
self.AimBone[44] = "j_index_le_2";
self.AimBone[45] = "j_index_ri_2";
self.AimBone[46] = "j_mid_le_2";
self.AimBone[47] = "j_mid_ri_2";
self.AimBone[48] = "j_pinky_le_2";
self.AimBone[49] = "j_pinky_ri_2";
self.AimBone[50] = "j_ring_le_2";
self.AimBone[51] = "j_ring_ri_2";
self.AimBone[52] = "j_thumb_le_2";
self.AimBone[53] = "j_thumb_ri_2";
self.AimBone[54] = "j_index_le_3";
self.AimBone[55] = "j_index_ri_3";
self.AimBone[56] = "j_mid_le_3";
self.AimBone[57] = "j_mid_ri_3";
self.AimBone[58] = "j_pinky_le_3";
self.AimBone[59] = "j_pinky_ri_3";
self.AimBone[60] = "j_ring_le_3";
self.AimBone[61] = "j_ring_ri_3";
self.AimBone[62] = "j_thumb_le_3";
self.AimBone[63] = "j_thumb_ri_3";
self.AimBone[64] = "j_spine4";
self.AimBone[65] = "j_neck";
self.AimBone[66] = "j_head";
self.AimBone[67] = "j_cheek_le";
self.AimBone[68] = "j_cheek_ri";
self.AimBone[69] = "j_head_end";
self.AimBone[70] = "j_jaw";
self.AimBone[71] = "j_levator_le";
self.AimBone[72] = "j_levator_ri";
self.AimBone[73] = "j_lip_top_le";
self.AimBone[74] = "j_lip_top_ri";
self.AimBone[75] = "j_mouth_le";
self.AimBone[76] = "j_mouth_ri";
self.AimBone[77] = "tag_eye";
Message2 = NewClientHudElem( self );
Message2.alignX = "right";
Message2.alignY = "top";
Message2.horzAlign = "right";
Message2.vertAlign = "top";
Message2.foreground = true;
Message2.fontScale = 1;
Message2.font = "hudbig";
Message2.alpha = 1;
Message2.glow = 1;
Message2.glowColor = ( 1, 0, 0 );
Message2.glowAlpha = 1;
self thread deleteondeath(Message2);
Message2.color = ( 1.0, 1.0, 1.0 );
for(;;)
{
if(self.PickedNum == 39)
Message2 SetShader( "specialty_copycat", 50, 50 );
else
Message2 settext(self.AimBone[self.PickedNum]);
wait 0.05;
}
}