walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st), (en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st), (en);
self iPrintLn("Done.");
self notify("jw");
}}
teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}

walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}

teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
CreateElevator(enter, exit, angle)
{
flag = spawn( "script_model", enter );
flag setModel( level.elevator_model["enter"] );
wait 0.01;
flag = spawn( "script_model", exit );
flag setModel( level.elevator_model["exit"] );
wait 0.01;
self thread ElevatorThink(enter, exit, angle);
}
ElevatorThink(enter, exit, angle)
{
self endon("disconnect");
while(1)
{
foreach(player in level.players)
{
if(Distance(enter, player.origin) <= 50){
player SetOrigin(exit);
player SetPlayerAngles(angle);
}
}
wait .25;
}
}
CreateRamps(top, bottom)
{
D = Distance(top, bottom);
blocks = roundUp(D/30);
CX = top[0] - bottom[0];
CY = top[1] - bottom[1];
CZ = top[2] - bottom[2];
XA = CX/blocks;
YA = CY/blocks;
ZA = CZ/blocks;
CXY = Distance((top[0], top[1], 0), (bottom[0], bottom[1], 0));
Temp = VectorToAngles(top - bottom);
BA = (Temp[2], Temp[1] + 90, Temp[0]);
for(b = 0; b < blocks; b++){
block = spawn("script_model", (bottom + ((XA, YA, ZA) * B)));
block setModel("com_plasticcase_friendly");
block.angles = BA;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
block = spawn("script_model", (bottom + ((XA, YA, ZA) * blocks) - (0, 0, 5)));
block setModel("com_plasticcase_friendly");
block.angles = (BA[0], BA[1], 0);
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
CreateGrids(corner1, corner2, angle)
{
W = Distance((corner1[0], 0, 0), (corner2[0], 0, 0));
L = Distance((0, corner1[1], 0), (0, corner2[1], 0));
H = Distance((0, 0, corner1[2]), (0, 0, corner2[2]));
CX = corner2[0] - corner1[0];
CY = corner2[1] - corner1[1];
CZ = corner2[2] - corner1[2];
ROWS = roundUp(W/55);
COLUMNS = roundUp(L/30);
HEIGHT = roundUp(H/20);
XA = CX/ROWS;
YA = CY/COLUMNS;
ZA = CZ/HEIGHT;
center = spawn("script_model", corner1);
for(r = 0; r <= ROWS; r++){
for(c = 0; c <= COLUMNS; c++){
for(h = 0; h <= HEIGHT; h++){
block = spawn("script_model", (corner1 + (XA * r, YA * c, ZA * h)));
block setModel("com_plasticcase_friendly");
block.angles = (0, 0, 0);
block Solid();
block LinkTo(center);
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
}
}
center.angles = angle;
}
CreateWalls(start, end)
{
D = Distance((start[0], start[1], 0), (end[0], end[1], 0));
H = Distance((0, 0, start[2]), (0, 0, end[2]));
blocks = roundUp(D/55);
height = roundUp(H/30);
CX = end[0] - start[0];
CY = end[1] - start[1];
CZ = end[2] - start[2];
XA = (CX/blocks);
YA = (CY/blocks);
ZA = (CZ/height);
TXA = (XA/4);
TYA = (YA/4);
Temp = VectorToAngles(end - start);
Angle = (0, Temp[1], 90);
for(h = 0; h < height; h++){
block = spawn("script_model", (start + (TXA, TYA, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
for(i = 1; i < blocks; i++){
block = spawn("script_model", (start + ((XA, YA, 0) * i) + (0, 0, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
}
block = spawn("script_model", ((end[0], end[1], start[2]) + (TXA * -1, TYA * -1, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
}
}
roundUp( floatVal )
{
if ( int( floatVal ) != floatVal )
return int( floatVal+1 );
else
return int( floatVal );
}
teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
CreateElevator(enter, exit, angle)
{
flag = spawn( "script_model", enter );
flag setModel( level.elevator_model["enter"] );
wait 0.01;
flag = spawn( "script_model", exit );
flag setModel( level.elevator_model["exit"] );
wait 0.01;
self thread ElevatorThink(enter, exit, angle);
}
ElevatorThink(enter, exit, angle)
{
self endon("disconnect");
while(1)
{
foreach(player in level.players)
{
if(Distance(enter, player.origin) <= 50){
player SetOrigin(exit);
player SetPlayerAngles(angle);
}
}
wait .25;
}
}
CreateRamps(top, bottom)
{
D = Distance(top, bottom);
blocks = roundUp(D/30);
CX = top[0] - bottom[0];
CY = top[1] - bottom[1];
CZ = top[2] - bottom[2];
XA = CX/blocks;
YA = CY/blocks;
ZA = CZ/blocks;
CXY = Distance((top[0], top[1], 0), (bottom[0], bottom[1], 0));
Temp = VectorToAngles(top - bottom);
BA = (Temp[2], Temp[1] + 90, Temp[0]);
for(b = 0; b < blocks; b++){
block = spawn("script_model", (bottom + ((XA, YA, ZA) * B)));
block setModel("com_plasticcase_friendly");
block.angles = BA;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
block = spawn("script_model", (bottom + ((XA, YA, ZA) * blocks) - (0, 0, 5)));
block setModel("com_plasticcase_friendly");
block.angles = (BA[0], BA[1], 0);
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
CreateGrids(corner1, corner2, angle)
{
W = Distance((corner1[0], 0, 0), (corner2[0], 0, 0));
L = Distance((0, corner1[1], 0), (0, corner2[1], 0));
H = Distance((0, 0, corner1[2]), (0, 0, corner2[2]));
CX = corner2[0] - corner1[0];
CY = corner2[1] - corner1[1];
CZ = corner2[2] - corner1[2];
ROWS = roundUp(W/55);
COLUMNS = roundUp(L/30);
HEIGHT = roundUp(H/20);
XA = CX/ROWS;
YA = CY/COLUMNS;
ZA = CZ/HEIGHT;
center = spawn("script_model", corner1);
for(r = 0; r <= ROWS; r++){
for(c = 0; c <= COLUMNS; c++){
for(h = 0; h <= HEIGHT; h++){
block = spawn("script_model", (corner1 + (XA * r, YA * c, ZA * h)));
block setModel("com_plasticcase_friendly");
block.angles = (0, 0, 0);
block Solid();
block LinkTo(center);
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}
}
}
center.angles = angle;
}
CreateWalls(start, end)
{
D = Distance((start[0], start[1], 0), (end[0], end[1], 0));
H = Distance((0, 0, start[2]), (0, 0, end[2]));
blocks = roundUp(D/55);
height = roundUp(H/30);
CX = end[0] - start[0];
CY = end[1] - start[1];
CZ = end[2] - start[2];
XA = (CX/blocks);
YA = (CY/blocks);
ZA = (CZ/height);
TXA = (XA/4);
TYA = (YA/4);
Temp = VectorToAngles(end - start);
Angle = (0, Temp[1], 90);
for(h = 0; h < height; h++){
block = spawn("script_model", (start + (TXA, TYA, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
for(i = 1; i < blocks; i++){
block = spawn("script_model", (start + ((XA, YA, 0) * i) + (0, 0, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
}
block = spawn("script_model", ((end[0], end[1], start[2]) + (TXA * -1, TYA * -1, 10) + ((0, 0, ZA) * h)));
block setModel("com_plasticcase_friendly");
block.angles = Angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.001;
}
}
roundUp( floatVal )
{
if ( int( floatVal ) != floatVal )
return int( floatVal+1 );
else
return int( floatVal );
}
walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}

walls(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1WALL^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateWalls(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
floors(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1FLOOR^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateGrids((st),(en),(0,0,0));
self iPrintLn("Done.");
self notify("jw");
}}
ramps(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1RAMP^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateRamps(st, en);
self iPrintLn("Done.");
self notify("jw");
}}
teleporters(){
self endon("jw");
self iPrintLnBold( "Please press down at starting persission of [^1TELE^7]" );
self notifyOnPlayerCommand( "SL", "+actionslot 2" );
for(;
{
self waittill("SL");
st = self getOrigin();
self iPrintLn("Start persission saved.");
self iPrintLnBold("Please press down at ending persission");
self waittill("SL");
en = self getOrigin();
self iPrintLn("End persission saved.");
self iPrintLnBold("ready, press down to start build.");
self waittill("SL");
self iPrintLn("started....");
CreateElevator((st), (en), (0, 0, 0));
self iPrintLn("Done.");
self notify("jw");
}}

Copyright © 2026, NextGenUpdate.
All Rights Reserved.