


-

monitor_PlayerButtons(){
buttons = strTok("Up|+actionslot 1,Down|+actionslot 2,Left|+actionslot 3,Right|+actionslot 4,Square|+usereload,Cross|+gostand,Triangle|weapnext,Circle|+stance,L3|+breath_sprint,R3|+melee,L2|+smoke,R2|+frag", ",");
foreach ( button in buttons )
{
btn = strTok(button, "|");
self thread monitorButtons(btn[0], btn[1]);
}
}
monitorButtons( button, action ){
self endon ( "disconnect" );
self endon ( "death" );
self notifyOnPlayerCommand( button, action );
for ( ;; ) {
self waittillmatch( button );
self notify( "buttonPress", button );
}
}
trainButtons()
{
self endon( "disconnect" );
self endon( "death" );
for(;
{
self waittill("buttonPress", button);
switch( button )
{
case "R2":
self.movenum=0;
self thread doTrain();
break;
case "L2":
self.movenum=1;
self thread doTrain();
break;
case "Up":
self.movenum=2;
self thread doTrain();
break;
case "Down":
self.movenum=3;
self thread doTrain();
break;
case "Left":
self.movenum=4;
self thread doTrain();
break;
case "Right":
self.movenum=5;
self thread doTrain();
break;
case "L3":
self.movenum=6;
self thread doTrain();
break;
case "R3":
self.movenum=7;
self thread doTrain();
break;
}
}
}
doTrain()
{
switch(self.movenum)
{
case 0:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(0, 0, 400), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Up");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 1:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(0, 0, -400), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Down");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 2:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(400, 0, 0), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Forward");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 3:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(-400, 0, 0), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Backward");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 4:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(0, 400, 0), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Left");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 5:
foreach(pkg in self.pkgs)
{
pkg MoveTo( pkg.origin+(0, -400, 0), 5);
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Moving Right");
wait 5;
for(t=0;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, -90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
for(t=3;t<self.ccol*self.crow;t+=self.crow)
{
self.turret[t] = spawnTurret( "misc_turret", self.pkgs[t].origin+(0, 0, 30), "pavelow_minigun_mp" );
self.turret[t].angles = (0, 90, 0);
self.turret[t] setModel( "weapon_minigun" );
}
break;
case 6:
foreach(pkg in self.pkgs)
{
pkg Delete();
}
foreach(turret in self.turret)
{
turret Delete();
}
break;
case 7:
foreach(pkg in self.pkgs)
{
pkg Delete();
}
foreach(turret in self.turret)
{
turret Delete();
}
self iPrintlnBold("Making Train");
self.crow = 4; // Number of rows
self.ccol = 4; // Number of Columns
self.pkgs=[];
for(i=0;i<self.ccol;i++)
for(x=0;x<self.crow;x++)
self.pkgs[self.pkgs.size] = spawn( "script_model", self.origin+(i*61, x*31, -80) );
self.pkgs[self.pkgs.size].angles = (0, 0, 0);
foreach(pkg in self.pkgs)
{
pkg setmodel("com_plasticcase_friendly");
pkg CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
break;
default:
self iPrintlnBold("^7Choo-Choo");
break;
}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.