Thread: [Release] How to make bunkers SUPER EASY!!

1. [Release] How to make bunkers SUPER EASY!!

How To Create Bunkers So Easily You Will Probably S#!t Your Pants!!

DONT FORGET TO THANK +REP ME

These building functions will allow you to create bunkers with 2 coordinates in each functions. This challenged my brain power:

CreateElevater(enter, exit, angle) - enter: position to enter at | exit: position of exit | angle: player angle on exit

CreateBlocks(pos, angle) - pos: position of block | angle: angle of block

CreateDoors(open, close, angle, size, height, hp, range) - open: position of open | close: position of close | angle: angle of door | size: blocks long | height: blocks high | hp: health | range: range to use door

CreateRamps(top, bottom) - top: top of ramp | bottom: bottom of ramp

CreateGrids(corner1, corner2, angle) - corner1: position of one corner | corner2: position of opposite corner | angle: rotation around corner 1

CreateWalls(start, end) - start: start of wall, lowest(z) | end: end of wall, highest(z)

CreateCluster(amount, pos, radius) - amount: number of random blocks | pos: center | radius: radius around center

Special Features:
CreateWalls is made to create perfect corners just 4 coordinates will make u a perfect shape

CreateDoors can be used to make trapdoors. To use (90, y, z) angle for an upright door, (0, y, z) for a trapdoor

CreateRamp is a godly and less block using alternative to stairs

Code:
Code:
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;
}

CreateBlocks(pos, angle)
{
block = spawn("script_model", pos );
block setModel("com_plasticcase_friendly");
block.angles = angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}

CreateDoors(open, close, angle, size, height, hp, range)
{
offset = (((size / 2) - 0.5) * -1);
center = spawn("script_model", open );
for(j = 0; j < size; j++){
door = spawn("script_model", open + ((0, 30, 0) * offset));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
for(h = 1; h < height; h++){
door = spawn("script_model", open + ((0, 30, 0) * offset) - ((70, 0, 0) * h));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
offset += 1;
}
center.angles = angle;
center.state = "open";
center.hp = hp;
center.range = range;
wait 0.01;
}

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 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;
}
}

{
for(i = 0; i < amount; i++)
{
block = spawn("script_model", pos + (0, 0, 1000) );
block setModel("com_plasticcase_friendly");
block.angles = (90, 0, 0);
block PhysicsLaunchServer((0, 0, 0), power);
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.05;
}
}

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;
}
}

DoorThink(open, close)
{
while(1)
{
if(self.hp > 0){
self waittill ( "triggeruse" , player );
if(player.team == "allies"){
if(self.state == "open"){
self MoveTo(close, level.doorwait);
wait level.doorwait;
self.state = "close";
continue;
}
if(self.state == "close"){
self MoveTo(open, level.doorwait);
wait level.doorwait;
self.state = "open";
continue;
}
}
if(player.team == "axis"){
if(self.state == "close"){
self.hp--;
player iPrintlnBold("HIT");
wait 1;
continue;
}
}
} else {
if(self.state == "close"){
self MoveTo(open, level.doorwait);
}
self.state = "broken";
wait .5;
}
}
}

DoorUse(range)
{
self endon("disconnect");
while(1)
{
foreach(player in level.players)
{
if(Distance(self.origin, player.origin) <= self.range){
if(player.team == "allies"){
if(self.state == "open"){
player.hint = "Press ^3[{+activate}] ^7to ^2Close ^7the door";
}
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Open ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.team == "axis"){
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Attack ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.buttonPressed[ "+activate" ] == 1){
player.buttonPressed[ "+activate" ] = 0;
self notify( "triggeruse" , player);
}
}
}
wait .045;
}
}

ResetDoors(open, hp)
{
while(1)
{
level waittill("RESETDOORS");
self.hp = hp;
self MoveTo(open, level.doorwait);
self.state = "open";
}
}

{
wait 5;
self RotateTo(((randomInt(36)*10), (randomInt(36)*10), (randomInt(36)*10)), 1);
level waittill("RESETCLUSTER");
self delete();
}

roundUp( floatVal )
{
if ( int( floatVal ) != floatVal )
return int( floatVal+1 );
else
return int( floatVal );
}
Example:
Code:
Underpass()
{
CreateElevator((-415, 3185, 392), (-1630, 3565, 1035), (0, 180, 0));
CreateBlocks((1110, 1105, 632), (90, 0, 0));
CreateBlocks((-2740, 3145, 1100), (90, 0, 0));
CreateBlocks((2444, 1737, 465), (90, 0, 0));
CreateWalls((-1100, 3850, 1030), (-1100, 3085, 1160));
CreateWalls((-2730, 3453, 1030), (-2730, 3155, 1150));
CreateWalls((-2730, 3155, 1030), (-3330, 3155, 1180));
CreateWalls((-3330, 3155, 1030), (-3330, 3890, 1180));
CreateWalls((-3330, 3890, 1030), (-2730, 3890, 1180));
CreateWalls((-2730, 3890, 1030), (-2730, 3592, 1150));
CreateWalls((-2730, 3890, 1150), (-2730, 3155, 1180));
CreateDoors((-2730, 3400, 1052), (-2730, 3522.5, 1052), (90, 180, 0), 4, 2, 20, 75);
CreateRamps((-3285, 3190, 1125), (-3285, 3353, 1030));
CreateRamps((-3285, 3855, 1125), (-3285, 3692, 1030));
CreateGrids((-2770, 3190, 1120), (-3230, 3190, 1120), (0, 0, 0));
CreateGrids((-2770, 3855, 1120), (-3230, 3855, 1120), (0, 0, 0));
CreateGrids((-2770, 3220, 1120), (-2770, 3825, 1120), (0, 0, 0));
CreateCluster(20, (-3030, 3522.5, 1030), 250);
}
Credits:
Killingdyl-For making/finding this

2. The Following 18 Users Say Thank You to soccerguy For This Useful Post:

arnorerling (10-22-2010),axxee127 (09-06-2010),davianROX (01-11-2011),DogPatch1992 (10-01-2010),Drake (08-28-2010),Dreamwaver8 (08-25-2010),egodsk (09-15-2010),I-Love-You (08-23-2010),icygrave (08-24-2010),ivan95 (08-20-2010),Josephlittle™ (08-24-2010),Kingkiller272 (10-13-2010),kluxtine (09-12-2010),maarten551 (08-23-2010),spiritwo (08-28-2010),TheLynx (08-19-2010),xSHk. (08-26-2010),Zefyros (09-12-2010)

3. Originally Posted by soccerguy
How To Create Bunkers So Easily You Will Probably S#!t Your Pants!!

These buidling functions will allow you to create bunkers with 2 coordinates in each functions. This challenged my brain power:

CreateElevater(enter, exit, angle) - enter: position to enter at | exit: position of exit | angle: player angle on exit

CreateBlocks(pos, angle) - pos: position of block | angle: angle of block

CreateDoors(open, close, angle, size, height, hp, range) - open: position of open | close: position of close | angle: angle of door | size: blocks long | height: blocks high | hp: health | range: range to use door

CreateRamps(top, bottom) - top: top of ramp | bottom: bottom of ramp

CreateGrids(corner1, corner2, angle) - corner1: position of one corner | corner2: position of opposite corner | angle: rotation around corner 1

CreateWalls(start, end) - start: start of wall, lowest(z) | end: end of wall, highest(z)

CreateCluster(amount, pos, radius) - amount: number of random blocks | pos: center | radius: radius around center

Special Features:
CreateWalls is made to create perfect corners just 4 coordinates will make u a perfect shape

CreateDoors can be used to make trapdoors. To use (90, y, z) angle for an upright door, (0, y, z) for a trapdoor

CreateRamp is a godly and less block using alternative to stairs

Code:
Code:
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;
}

CreateBlocks(pos, angle)
{
block = spawn("script_model", pos );
block setModel("com_plasticcase_friendly");
block.angles = angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}

CreateDoors(open, close, angle, size, height, hp, range)
{
offset = (((size / 2) - 0.5) * -1);
center = spawn("script_model", open );
for(j = 0; j < size; j++){
door = spawn("script_model", open + ((0, 30, 0) * offset));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
for(h = 1; h < height; h++){
door = spawn("script_model", open + ((0, 30, 0) * offset) - ((70, 0, 0) * h));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
offset += 1;
}
center.angles = angle;
center.state = "open";
center.hp = hp;
center.range = range;
wait 0.01;
}

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 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;
}
}

{
for(i = 0; i < amount; i++)
{
block = spawn("script_model", pos + (0, 0, 1000) );
block setModel("com_plasticcase_friendly");
block.angles = (90, 0, 0);
block PhysicsLaunchServer((0, 0, 0), power);
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.05;
}
}

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;
}
}

DoorThink(open, close)
{
while(1)
{
if(self.hp > 0){
self waittill ( "triggeruse" , player );
if(player.team == "allies"){
if(self.state == "open"){
self MoveTo(close, level.doorwait);
wait level.doorwait;
self.state = "close";
continue;
}
if(self.state == "close"){
self MoveTo(open, level.doorwait);
wait level.doorwait;
self.state = "open";
continue;
}
}
if(player.team == "axis"){
if(self.state == "close"){
self.hp--;
player iPrintlnBold("HIT");
wait 1;
continue;
}
}
} else {
if(self.state == "close"){
self MoveTo(open, level.doorwait);
}
self.state = "broken";
wait .5;
}
}
}

DoorUse(range)
{
self endon("disconnect");
while(1)
{
foreach(player in level.players)
{
if(Distance(self.origin, player.origin) <= self.range){
if(player.team == "allies"){
if(self.state == "open"){
player.hint = "Press ^3[{+activate}] ^7to ^2Close ^7the door";
}
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Open ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.team == "axis"){
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Attack ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.buttonPressed[ "+activate" ] == 1){
player.buttonPressed[ "+activate" ] = 0;
self notify( "triggeruse" , player);
}
}
}
wait .045;
}
}

ResetDoors(open, hp)
{
while(1)
{
level waittill("RESETDOORS");
self.hp = hp;
self MoveTo(open, level.doorwait);
self.state = "open";
}
}

{
wait 5;
self RotateTo(((randomInt(36)*10), (randomInt(36)*10), (randomInt(36)*10)), 1);
level waittill("RESETCLUSTER");
self delete();
}

roundUp( floatVal )
{
if ( int( floatVal ) != floatVal )
return int( floatVal+1 );
else
return int( floatVal );
}
Example:
Code:
Underpass()
{
CreateElevator((-415, 3185, 392), (-1630, 3565, 1035), (0, 180, 0));
CreateBlocks((1110, 1105, 632), (90, 0, 0));
CreateBlocks((-2740, 3145, 1100), (90, 0, 0));
CreateBlocks((2444, 1737, 465), (90, 0, 0));
CreateWalls((-1100, 3850, 1030), (-1100, 3085, 1160));
CreateWalls((-2730, 3453, 1030), (-2730, 3155, 1150));
CreateWalls((-2730, 3155, 1030), (-3330, 3155, 1180));
CreateWalls((-3330, 3155, 1030), (-3330, 3890, 1180));
CreateWalls((-3330, 3890, 1030), (-2730, 3890, 1180));
CreateWalls((-2730, 3890, 1030), (-2730, 3592, 1150));
CreateWalls((-2730, 3890, 1150), (-2730, 3155, 1180));
CreateDoors((-2730, 3400, 1052), (-2730, 3522.5, 1052), (90, 180, 0), 4, 2, 20, 75);
CreateRamps((-3285, 3190, 1125), (-3285, 3353, 1030));
CreateRamps((-3285, 3855, 1125), (-3285, 3692, 1030));
CreateGrids((-2770, 3190, 1120), (-3230, 3190, 1120), (0, 0, 0));
CreateGrids((-2770, 3855, 1120), (-3230, 3855, 1120), (0, 0, 0));
CreateGrids((-2770, 3220, 1120), (-2770, 3825, 1120), (0, 0, 0));
CreateCluster(20, (-3030, 3522.5, 1030), 250);
}
You got this out of KillingDYLs Zombie Mod that was released like 1 hour ago and now you're saying you found it?

4. Originally Posted by rathynia
You got this out of KillingDYLs Zombie Mod that was released like 1 hour ago and now you're saying you found it?
lol yep credit hunter

5. I never said i found it want me to add credits fine.

6. Originally Posted by soccerguy
I never said i found it want me to add credits fine.
their u go lmao

7. wow thnx ..now i know how to make bunkers

8. Originally Posted by assasinate3d
wow thnx ..now i know how to make bunkers
Dont just say thx click Thanks

9. wow rly kewl ;D thanks dude

10. Knew this before he did that
Oh well gj for puttin it into simple terms

11. Can someone tell me if im doing it ok?
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;
}

CreateBlocks(pos, angle)
{
block = spawn("script_model", pos );
block setModel("com_plasticcase_friendly");
block.angles = angle;
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.01;
}

CreateDoors(open, close, angle, size, height, hp, range)
{
offset = (((size / 2) - 0.5) * -1);
center = spawn("script_model", open );
for(j = 0; j < size; j++){
door = spawn("script_model", open + ((0, 30, 0) * offset));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
for(h = 1; h < height; h++){
door = spawn("script_model", open + ((0, 30, 0) * offset) - ((70, 0, 0) * h));
door setModel("com_plasticcase_enemy");
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
offset += 1;
}
center.angles = angle;
center.state = "open";
center.hp = hp;
center.range = range;
wait 0.01;
}

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 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;
}
}

{
for(i = 0; i < amount; i++)
{
block = spawn("script_model", pos + (0, 0, 1000) );
block setModel("com_plasticcase_friendly");
block.angles = (90, 0, 0);
block PhysicsLaunchServer((0, 0, 0), power);
block Solid();
block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
wait 0.05;
}
}

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;
}
}

DoorThink(open, close)
{
while(1)
{
if(self.hp > 0){
self waittill ( "triggeruse" , player );
if(player.team == "allies"){
if(self.state == "open"){
self MoveTo(close, level.doorwait);
wait level.doorwait;
self.state = "close";
continue;
}
if(self.state == "close"){
self MoveTo(open, level.doorwait);
wait level.doorwait;
self.state = "open";
continue;
}
}
if(player.team == "axis"){
if(self.state == "close"){
self.hp--;
player iPrintlnBold("HIT");
wait 1;
continue;
}
}
} else {
if(self.state == "close"){
self MoveTo(open, level.doorwait);
}
self.state = "broken";
wait .5;
}
}
}

DoorUse(range)
{
self endon("disconnect");
while(1)
{
foreach(player in level.players)
{
if(Distance(self.origin, player.origin) <= self.range){
if(player.team == "allies"){
if(self.state == "open"){
player.hint = "Press ^3[{+activate}] ^7to ^2Close ^7the door";
}
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Open ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.team == "axis"){
if(self.state == "close"){
player.hint = "Press ^3[{+activate}] ^7to ^2Attack ^7the door";
}
if(self.state == "broken"){
player.hint = "^1Door is Broken";
}
}
if(player.buttonPressed[ "+activate" ] == 1){
player.buttonPressed[ "+activate" ] = 0;
self notify( "triggeruse" , player);
}
}
}
wait .045;
}
}

ResetDoors(open, hp)
{
while(1)
{
level waittill("RESETDOORS");
self.hp = hp;
self MoveTo(open, level.doorwait);
self.state = "open";
}
}

{
wait 5;
self RotateTo(((randomInt(36)*10), (randomInt(36)*10), (randomInt(36)*10)), 1);
level waittill("RESETCLUSTER");
self delete();
}

roundUp( floatVal )
{
if ( int( floatVal ) != floatVal )
return int( floatVal+1 );
else
return int( floatVal );
}

Underpass()
{
CreateDoors((851, 1619, 144), (843, 1353, 136), (90, 180, 0), 4, 2, 20, 75);
}

12. Originally Posted by Stoshy
wow rly kewl ;D thanks dude
stoshy click the thanks button they want that... so:

"Dont just say it press it" (somone wise from MPGH said these words)

13. hello guys im new here, i dont understand what i need to do with this code to create some bunkers... where i need to put it? and how i use this code ingame? thanks for help.

14. How do we get the x y and z positions within the map. right now the only eay i'd know how to add more is by guessing lol

15. Search the forum for get cordinates on map

16. Guys I figured out how to use this it is in killingdyls version 2 and u just put some stuff into v1 or whatever mod u want. Do some searching in v2 and u got it. Hint-part of it goes on doInit. I dont think he would like me to release it and any of u and if u do release it give him most credits. And me 1%!!!

Page 1 of 4 123 ... Last