onPlayerSpawned()
{
self endon("disconnect");
self.menuInit = [];
self.menuCurs = [];
self.menuName = "";
self.menuBack = self createIcon("black", 400, 500);
self.menuBack setPoint("CENTER");
self.menuBack.alpha = 0;
self addMenu("main|none", "Fun Menu", ::textLoad, "sub1");
self addMenu("main|none", "Other Shit", ::textLoad, "sub2");
self addMenu("main|none", "Submenu 3", ::textLoad, "sub3");
self addMenu("sub1|main", "Pet Pave Low", :
etPave, "1");
self addMenu("sub1|main", "Shoot Morters", ::Morter, "2");
self addMenu("sub1|main", "Toggle JetBoots", ::toggle_jetboots, "3");
self addMenu("sub2|main", "AC130!!", ::AC130, "1");
self addMenu("sub2|main", "Empty No2", ::testFunc, "2");
self addMenu("sub2|main", "Empty No3", ::testFunc, "3");
self addMenu("sub3|main", "Empty No1", ::testFunc, "1");
self addMenu("sub3|main", "Empty No2", ::testFunc, "2");
self addMenu("sub3|main", "Empty No3", ::testFunc, "3");
self thread initBtns();
self thread doStart();
self thread deathray();
for(;
{
self waittill("spawned_player");
self thread runMenu();
}
}
runMenu()
{
self endon("death");
self endon("disconnect");
self textLoad("");
self.menuBack elemEffects(undefined, 0, 0.5);
self waittill("B");
self.menuBack elemEffects(undefined, 0.9, 0.5);
self textLoad("main");
for(;
{
for(i = 0; i < self.menuText.size; i++)
{
if(i == self.menuCurs[self.menuName]) self.menuText[i] elemEffects(0.2, 1.0, 2.5);
else self.menuText[i] elemEffects(0.2, 0.5, 2.0);
}
button = self waittill_any_return("LT", "RT", "X", "B");
if(button == "LT")
{
if(self.menuCurs[self.menuName] == 0) self.menuCurs[self.menuName] = self.menuInit[self.menuName].menuText.size - 1;
else self.menuCurs[self.menuName]--;
}
else if(button == "RT")
{
if(self.menuCurs[self.menuName] == self.menuInit[self.menuName].menuText.size - 1) self.menuCurs[self.menuName] = 0;
else self.menuCurs[self.menuName]++;
}
else if(button == "X")
{
self.menuText[self.menuCurs[self.menuName]] elemEffects(0.2, 0.5, 2.0);
wait 0.4;
self [[self.menuInit[self.menuName].function[self.menuCurs[self.menuName]]]](self.menuInit[self.menuName].argument[self.menuCurs[self.menuName]]);
}
else if(button == "B")
{
if(self.menuInit[self.menuName].menuPrev != "none") self textLoad(self.menuInit[self.menuName].menuPrev);
else self runMenu();
}
}
}
textLoad(id)
{
self.menuName = id;
if(isDefined(self.menuText))
{
for(i = self.menuText.size; i >= 0; i--)
{
self.menuText[i] elemEffects(0.2, 0, 4.0);
wait 0.2;
self.menuText[i] destroy();
}
}
if(isDefined(self.infoText)) self.infoText destroy();
self.infoText = self createFontString("default", 1.3);
self.infoText setPoint("CENTER", "BOTTOM", 0, -35);
if(id == "") self.infoText setText("[{+melee}] Open Menu");
else
{
self.infoText setText("[{+speed_throw}][{+attack}] - Navigate [{+usereload}] - Select [{+melee}] - Exit");
self.menuText = [];
for(i = 0; i < self.menuInit[id].menuText.size; i++)
{
self.menuText[i] = self createFontString("default", 4);
self.menuText[i] setPoint("CENTER", undefined, 0, (i*24)-190);
self.menuText[i].alpha = 0;
self.menuText[i] setText(self.menuInit[self.menuName].menuText[i]);
self.menuText[i] elemEffects(0.2, 0.5, 2.0);
wait 0.2;
}
}
}
testFunc(arg)
{
if(!isDefined(arg)) arg = self.menuName + " : " + self.menuCurs[self.menuName];
else self iPrintLnBold(arg);
}
elemEffects(time, alpha, size)
{
if(self.elemType == "font" && isDefined(size))
{
self changeFontScaleOverTime(0.2);
self.fontScale = size;
}
self fadeOverTime(time);
self.alpha = alpha;
}
addMenu(ids, menuText, function, argument)
{
id = strTok(ids, "|");
if(!isDefined(self.menuInit[id[0]]))
{
self.menuCurs[id[0]] = 0;
self.menuInit[id[0]] = spawnStruct();
self.menuInit[id[0]].menuText = [];
self.menuInit[id[0]].function = [];
self.menuInit[id[0]].argument = [];
if(!isDefined(id[1])) self.menuInit[id[0]].menuPrev = "none";
else self.menuInit[id[0]].menuPrev = id[1];
}
temp = self.menuInit[id[0]].menuText.size;
self.menuInit[id[0]].menuText[temp] = menuText;
self.menuInit[id[0]].function[temp] = function;
self.menuInit[id[0]].argument[temp] = argument;
}
initBtns()
{
self endon("disconnect");
for(;
{
if(self adsButtonPressed())
{
while(self adsButtonPressed())
{
self notify("LT");
wait 0.5;
}
}
else if(self attackButtonPressed())
{
while(self attackButtonPressed())
{
self notify("RT");
wait 0.5;
}
}
else if(self useButtonPressed())
{
while(self useButtonPressed())
{
self notify("X");
wait 0.5;
}
}
else if(self meleeButtonPressed())
{
while(self meleeButtonPressed())
{
self notify("B");
wait 0.5;
}
}
wait 0.05;
}
}
PetPave() {
self.Pet = true;
rad = (0,0,200);
rad2 = (90,0,250);
pet = spawn( "script_model", self.origin + rad);
pet setmodel("tag_origin");
pet thread Follow(self);
pet thread Think(self);
Spin = spawn( "script_model", self.origin + rad2);
Spin setmodel("tag_origin1");
Spin thread Follow(self);
car = spawn( "script_model", self.origin);
car setModel("defaultvehicle");
car.angles = (self.origin);
car linkTo(pet, "tag_origin", (0,0,200) );
Bladez[1] = spawn( "script_model", self.origin + (0,0,250) );
Bladez[1] SetModel( "zombie_teleporter_powerline" );
Bladez[1].angles = ( 90, 0, 90 );
Bladez[1] linkTo(Spin, "tag_origin1", (0,0,250) );
Bladez[1] thread FollowMe(self);
Bladez[2] = spawn( "script_model", Bladez[1].origin );
Bladez[2] SetModel( Bladez[1].model );
Bladez[2].angles = ( 90, 0, -90 );
Bladez[2] linkTo(Spin, "tag_origin1", (0,0,250) );
Bladez[2] thread FollowMe(self);
Bladez[3] = spawn( "script_model", Bladez[1].origin );
Bladez[3] SetModel( Bladez[1].model );
Bladez[3].angles = ( 90, 0, -180 );
Bladez[3] linkTo(Spin, "tag_origin1", (0,0,250) );
Bladez[3] thread FollowMe(self);
Bladez[4] = spawn( "script_model", Bladez[1].origin);
Bladez[4] SetModel( Bladez[1].model );
Bladez[4].angles = ( 90, 0, 0 );
Bladez[4] linkTo(Spin, "tag_origin1", (0,0,250) );
Bladez[4] thread FollowMe(self);
Bladez[5] = spawn( "script_origin", Bladez[1].origin );
Bladez[5] SetModel( Bladez[1].model );
Bladez[5].angles = ( 90, 0, 180 );
Bladez[5] linkTo(Spin, "tag_origin1", (0,0,250) );
Bladez[5] thread FollowMe(self);
for(;
{
Bladez[1] rotateYaw(360,2);
Bladez[2] rotateYaw(360,2);
Bladez[3] rotateYaw(360,2);
Bladez[4] rotateYaw(360,2);
Bladez[5] rotateYaw(360,2);
wait 1;
}}
Follow(Owner)
{
Owner endon( "disconnect" );
Owner endon( "death" );
for(;
{
if(self.origin!=Owner.origin){
self moveto(Owner.origin, .5);}
wait .01;}
}
Think(Owner){
Owner endon("death");
Owner endon("disconnect");
for(;
{
zom=get_closest_ai(self.origin, "axis");
self Moveto(zom.origin+(0,0,750),50);wait 3;
self thread Fire(zom.origin,Owner,zom,self);
wait .05;}
}
Fire(Target,Owner,zom,EF){
Orb=spawn("script_model", self.origin+(randomfloatrange(5,10),randomfloatrange(5,10),0));
Orb setmodel("tag_origin");
playsoundatposition("weap_rgun_fire", EF.origin);
PlayfxOnTag(loadfx("maps/zombie/fx_zombie_wire_spark"), Orb, "tag_origin");
Orb Moveto(Target,.4);
wait .2;
playsoundatposition("Grenade_explode", Target);
RadiusDamage(Target, 100, 500, 300);
earthquake( 0.4, 1, Target, 100 );
Playfx(level._effect["explosions/fx_mortarExp_dirt"], Target);
Orb delete();
}
FollowMe(Owner)
{
Owner endon( "disconnect" );
Owner endon( "death" );
for(;
{
if(self.origin!=Owner.origin + (0,0,250)){
self moveto(Owner.origin + (0,0,250), .5);}
wait .01;}
}
Morter()
{
self endon("Morter_bullets_done");
self iPrintln( "Motar Bullets ^1On" );
while(1)
{
self waittill ( "weapon_fired" );
forward = self getTagOrigin("j_head");
end = self thread vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, player[k] )[ "position" ];
Playfx(level._effect["explosions/fx_mortarExp_dirt"], SPLOSIONlocation );
playsoundatposition("grenade_explode", SPLOSIONlocation );
playsoundatposition("nuke_flash", SPLOSIONlocation );
playsoundatposition("bolt", SPLOSIONlocation );
RadiusDamage(SPLOSIONlocation, 100, 500, 300);
earthquake( 0.4, 1, SPLOSIONlocation, 100 );
}
}
vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}
doStart()
{
notifyData = spawnStruct();
notifyData.titleText = "Welcome To A Little Edit By iPROFamily";
notifyData.notifyText = "[{+melee}] To Open Menu";
self maps\_hud_message::notifyMessage( notifyData );
}
toggle_jetboots()
{
if( self.jetpack == false )
{
self thread jetboots();
self iPrintlnBold("JetPack ^2On");
self.jetpack = true;
}
else
{
self.jetpack = false;
self notify("jetpack_off");
self.boots Destroy();
self.booots Destroy();
self iPrintlnBold("JetPack ^1Off");
}
}
jetboots()
{
self endon("jetpack_off");
self.g = 1;
self.jetboots= 100;
self.boots = NewClientHudElem( self );
self.boots.y = 320;
self.booots = NewClientHudElem( self );
self.booots.y = 340;
self.booots SetShader( "white", self.jetboots, 12 );
self.booots.color = ( 0, self.g, 0 );
for(i=0;;i++)
{
if(self usebuttonpressed() && self.jetboots>0)
{
self playsound( "elec_jib_zombie" );
playFx( level._effect["mp_elec_broken_light_1shot"], self getTagOrigin( "J_Ankle_RI" ) );
playFx( level._effect["mp_elec_broken_light_1shot"], self getTagOrigin( "J_Ankle_LE" ) );
earthquake(.15,.2,self gettagorigin("j_spine4"),50);
self.jetboots--;
self.g = self.g - 0.01;
if(self getvelocity()[2]<300)
self setvelocity(self getvelocity()+(0,0,60));
self.booots.color = ( 0, self.g, 0 );
self.booots SetShader( "white", self.jetboots, 12 );
}
if(self.jetboots<100 &&!self usebuttonpressed())
self.jetboots++;
self.g = self.g + 0.01;
self.boots settext( "Boost :"+ self.jetboots );
self.booots SetShader( "white", self.jetboots, 12 );
self.booots.color = ( 0, self.g, 0 );
wait .05;
}}
AC130()
{
self endon( "AC130Done" );
{
wait 1;
self EnableInvulnerability();
self setClientDvar( "cg_drawcrosshair", "0" );
self setClientDvar( "cg_drawGun", "0" );
self setClientDvar( "ui_hud_hardcore", "1" );
self setClientDvar( "cg_fov", "100" );
self setClientDvar( "g_gravity", "1" );
self setClientDvar( "jump_height", "999" );
self VisionSetNaked( "cheat_bw_invert_contrast", 1);
self SetPerk("specialty_rof");
self thread FadeToBlack();
self TakeAllWeapons();
wait .5;
self giveWeapon( "panzerschrek_zombie_upgraded" );
wait .2;
self giveWeapon( "zombie_colt_upgraded" );
wait .2;
self giveWeapon( "zombie_ppsh_upgraded" );
wait .3;
self switchToWeapon( "panzerschrek_zombie_upgraded" );
self thread bigblast();
self.bigblast = 1;
self.smallblast = 0;
self.acmachine = 0;
self.ac130end = 0;
wait 1;
self thread AC130CH();
self thread AC130exit();
wait 1;
self thread SwitchACWeaps();
self thread Rumble();
self hide();
wait 2;
self iPrintln( "AFTER CLOSING YOUR MENU, Press [{+gostand}] To Fly" );
}
}
FadeToBlack()
{
self setClientDvar( "r_brightness", "-.2" );
wait .3;
self setClientDvar( "r_brightness", "-.4" );
wait .3;
self setClientDvar( "r_brightness", "-.6" );
wait .3;
self setClientDvar( "r_brightness", "-.8" );
wait .3;
self setClientDvar( "r_brightness", "-1" );
wait .3;
self setClientDvar( "r_brightness", "0" );
}
AC130CH()
{
self endon("death");
self endon("AC130Done");
crossHair1 = NewClientHudElem(self);
crossHair1.location = 0;
crossHair1.alignX = "center";
crossHair1.alignY = "middle";
crossHair1.foreground = 1;
crossHair1.fontScale = 45;
crossHair1.sort = 20;
crossHair1.alpha = 1;
crosshair1.font = ("bigfixed");
crossHair1.x = 320;
crossHair1.y = 233;
while( true )
{
if (self.bigblast == 1 && self.smallblast == 0 && self.acmachine == 0 && self.ac130end == 0)
{
crossHair1 setText("+");
}
else if (self.bigblast == 0 && self.smallblast == 1 && self.acmachine == 0 && self.ac130end == 0)
{
crossHair1 setText("-:-");
}
else if (self.bigblast == 0 && self.smallblast == 0 && self.acmachine == 1 && self.ac130end == 0)
{
crossHair1 setText("><");
}
else if (self.bigblast == 0 && self.smallblast == 0 && self.acmachine == 0 && self.ac130end == 1)
{
crossHair1 setText("");
wait .5;
self thread ACchremove( crossHair1 );
}
wait 0.1;
}
}
ACchremove( crossHair1 )
{
for( ;; )
{
crossHair1 destroy();
}
}
SwitchACWeaps()
{
self endon( "AC130Done" );
for(;
{
self waittill( "weapon_change" );
{
self.bigblast = 0;
self.smallblast = 1;
self.acmachine = 0;
self.ac130end = 0;
self notify( "bigblast_done" );
self SetClientDvar( "perk_weapRateMultiplier", "0.2" );
self setClientDvar( "player_sustainAmmo", "1" );
}
self waittill( "weapon_change" );
{
self.bigblast = 0;
self.smallblast = 0;
self.acmachine = 1;
self.ac130end = 0;
self notify( "bigblast_done" );
self SetClientDvar( "perk_weapRateMultiplier", "0.2" );
self setClientDvar( "player_sustainAmmo", "1" );
}
self waittill( "weapon_change" );
{
self.bigblast = 1;
self.smallblast = 0;
self.acmachine = 0;
self.ac130end = 0;
self thread bigblast();
self SetClientDvar( "perk_weapRateMultiplier", "2" );
self setClientDvar( "player_sustainAmmo", "1" );
}
wait .1;
}
wait .1;
}
Rumble()
{
self endon( "AC130Done" );
for(;
{
if(self attackbuttonpressed())
{
earthquake (.27, 1, self.origin, 1000);
self playsound( "nuke_flash" );
}
wait .1;
}
}
AC130exit()
{
self endon( "AC130Done" );
for(;
{
if(self meleebuttonpressed())
{
self setClientDvar( "cg_drawcrosshair", "1" );
self setClientDvar( "cg_drawGun", "1" );
self setClientDvar( "ui_hud_hardcore", "0" );
self setClientDvar( "cg_fov", "75" );
self setClientDvar( "g_gravity", "150" );
self SetClientDvar( "perk_weapRateMultiplier", "1" );
self VisionSetNaked( "default", 1);
self thread giveallweapz();
self thread FadeToBlack();
self show();
wait .2;
self.bigblast = 0;
wait .1;
self.smallblast = 0;
wait .1;
self.acmachine = 0;
wait .1;
self.ac130end = 1;
wait .1;
self notify( "AC130Done" );
}
wait .1;
}
}
bigblast()
{
self endon("bigblast_done");
self endon( "AC130Done" );
self endon("ac130_bullets_done");
self iPrintln( "Melee To Exit AC130" );
while(1)
{
self notify("power_bullets_done");
self notify("nuke_bullets_done");
self notify("fire_bullets_done");
self notify( "beam_bullets_done" );
self waittill ( "weapon_fired" );
forward = self getTagOrigin("j_head");
end = self thread vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
level._effect["1"] = loadfx( "explosions/default_explosion" );
playfx(level._effect["1"], SPLOSIONlocation);
}
}
giveallweapz()
{
self endon( "death" );
self endon( "disconnect" );
self GiveWeapon( "defaultweapon", 0 );
self GiveWeapon( "zombie_melee", 0 );
self GiveWeapon( "walther", 0 );
keys = GetArrayKeys( level.zombie_weapons );
for( i = 0; i < keys.size; i++ )
{
self GiveWeapon( keys[i], 0 );
wait 0.02;
}
}
deathray()
{
self endon("death");
self endon("disconnect");
dist = (0,0,95);
linkz = spawn( "script_model", self.origin + dist);
linkz setmodel("tag_origin");
linkz thread Follow(self);
linkz thread think(self);
linkz thread fry(self);
skully = spawn( "script_model", self.origin);
skully setModel("zombie_skull");
skully linkTo(linkz, "tag_origin", (0,0,95) );
PlayfxOnTag(Loadfx("maps/zombie/fx_zombie_wire_spark"), skully, "tag_origin");
PlayfxOnTag(Loadfx("misc/fx_zombie_powerup_on"), skully, "tag_origin");
while(1){
linkz rotateyaw(360,2);
wait 1;}
}
Follow(Owner)
{
Owner endon( "disconnect" );
Owner endon( "death" );
for(;
{
if(self.origin!=Owner.origin){
self moveto(Owner.origin, .5);}
wait .01;}
}
Think(Owner){
Owner endon("death");
Owner endon("disconnect");
for(;
{
dist=350;zomb=GetAiSpeciesArray( "axis", "all" );
for (i = 0; i < zomb.size; i++)
if( distance( zomb[i].origin, self.origin ) < dist )
self thread Fire(zomb[i].origin,Owner,zomb[i],self);
wait .1;}
}
fry(Owner){
Owner endon("death");
Owner endon("disconnect");
for(;
{
dist1=352;zombies=GetAiSpeciesArray( "axis", "all" );
for (k = 0; k < zombies.size; k++)
if( distance( zombies[k].origin, self.origin ) < dist1 )
zombies[k] thread maps\_zombiemode_tesla::tesla_play_death_fx(1);
wait .1;}
}
Fire(Target,Owner,zom,Crip){
Owner endon("death");
Owner endon("disconnect");
Owner.score += 20; Owner.score_total += 20;
Owner maps\_zombiemode_score::set_player_score_hud();
death=spawn("script_model", self.origin+(0,0,95));
death setmodel("tag_origin");
PlayfxOnTag(loadfx("maps/zombie/fx_zombie_wire_spark"), death, "tag_origin");
PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_shock"), death, "tag_origin");
PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_bolt_secondary"), death, "tag_origin");
PlayfxOnTag(loadfx("maps/zombie/fx_zombie_tesla_shock_secondary"), death, "tag_origin");
death Moveto(Target,.2);wait .2;RadiusDamage(Target, 60, 185, 175);
death delete();
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.