
CreateForceField(open, close, angle, size, height, hp, range)
{ level.fx_airstrike_afterburner = loadfx ("fire/jet_afterburner");
level._effect[ "coop_muzzleflash_105mm" ] = loadfx( "muzzleflashes/ac130_105mm" );
level.harrier_afterburnerfx = loadfx ("fire/jet_afterburner_harrier");
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( level.spawnGlowModel["enemy"] );
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
door EnableLinkTo();
door LinkTo(center);
for(h = 1; h < height; h++){
door = spawn("script_model", open + ((0, 30, 0) * offset) - ((70, 0, 0) * h));
door setModel( level.spawnGlowModel["enemy"] );
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
door EnableLinkTo();
door LinkTo(center);
}
offset += 1;
}
center.angles = angle;
center.state = "open";
center.hp = hp;
center.range = range;
center thread IDoorThink(open, close);
center thread IDoorUse();
center thread IDCEffect(close);
center thread ResetDoors(open, hp);
wait 0.01;
}
IDCEffect(close)
{ self endon("disconnect");
while(1)
{ if(self.state == "close")
{ self playLoopSound("cobra_helicopter_dying_layer");
fxti = SpawnFx(level.fx_airstrike_afterburner, close + (0,0,30));
fxti.angles = (90,0,0);
fxtiii = SpawnFx(level.harrier_afterburnerfx, close + (0,0,30));
fxtiii.angles = (90,0,0);
TriggerFX(fxti);
TriggerFX(fxtiii);
wait .5;
self stopLoopSound("cobra_helicopter_dying_layer");
self playLoopSound("emt_road_flare_burn");
while(self.state == "close")
{ wait .1;
}
self stopLoopSound("emt_road_flare_burn");
if(self.state == "broken"){
self playLoopSound("cobra_helicopter_crash");
wait .5;
}
self playLoopSound("cobra_helicopter_dying_layer");
wait .8;
self stopLoopSound("cobra_helicopter_dying_layer");
self stopLoopSound("cobra_helicopter_crash");
fxti delete();
fxtiii delete();
}
wait 2;
}
}
IDoorUse()
{
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 = "^1[{+melee}] ^7to ^2Activate ^3ForceField";
}
if(self.state == "close"){
player.hint = "^1[{+melee}] to ^2De-Activate ^3ForceField. [{+breath_sprint}] Shows Power Level.";
}
if(self.state == "broken"){
player.hint = "^1ForceField is Down";
}
}
if(player.team == "axis"){
if(self.state == "close"){
player.hint = "^[{+melee}] ^7to ^1Drain ^3the ForceField. [{+breath_sprint}] Shows Power Level.";
}
if(self.state == "broken"){
player.hint = "^1ForceField is Down";
}
}
if(player.buttonPressed[ "+melee" ] == 1){
player.buttonPressed[ "+melee" ] = 0;
self notify( "triggeruse" , player);
}
if(player.buttonPressed[ "+breath_sprint" ] == 1){
player.buttonPressed[ "+breath_sprint" ] = 0;
player iPrintlnBold("^3" + self.hp + "^1
ower Left");
}
}
}
wait .045;
}
}
IDoorThink(open, close)
{ self.waitz = 1;
while(1)
{
if(self.hp > 0){
self waittill ( "triggeruse" , player );
if(player.team == "allies"){
if(self.state == "open"){
self MoveTo(close, self.waitz);
wait 1;
self.state = "close";
continue;
}
if(self.state == "close"){
self MoveTo(open, self.waitz);
wait 1;
self.state = "open";
continue;
}
}
if(player.team == "axis"){
if(self.state == "close"){
self.hp--;
player iPrintlnBold("HIT!");
player thread doDoorz();
wait 1;
continue;
}
}
} else {
if(self.state == "close"){
self MoveTo(open, self.waitz);
}
self.state = "broken";
wait .5;
}
}
}
ResetDoors(open, hp)
{
while(1)
{
level waittill("RESETDOORS");
self.hp = hp;
self MoveTo(open, level.doorwait);
self.state = "open";
}
}

CreateForceField(open, close, angle, size, height, hp, range)
{ level.fx_airstrike_afterburner = loadfx ("fire/jet_afterburner");
level._effect[ "coop_muzzleflash_105mm" ] = loadfx( "muzzleflashes/ac130_105mm" );
level.harrier_afterburnerfx = loadfx ("fire/jet_afterburner_harrier");
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( level.spawnGlowModel["enemy"] );
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
door EnableLinkTo();
door LinkTo(center);
for(h = 1; h < height; h++){
door = spawn("script_model", open + ((0, 30, 0) * offset) - ((70, 0, 0) * h));
door setModel( level.spawnGlowModel["enemy"] );
door Solid();
door CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
door EnableLinkTo();
door LinkTo(center);
}
offset += 1;
}
center.angles = angle;
center.state = "open";
center.hp = hp;
center.range = range;
center thread IDoorThink(open, close);
center thread IDoorUse();
center thread IDCEffect(close);
center thread ResetDoors(open, hp);
wait 0.01;
}
IDCEffect(close)
{ self endon("disconnect");
while(1)
{ if(self.state == "close")
{ self playLoopSound("cobra_helicopter_dying_layer");
fxti = SpawnFx(level.fx_airstrike_afterburner, close + (0,0,30));
fxti.angles = (90,0,0);
fxtiii = SpawnFx(level.harrier_afterburnerfx, close + (0,0,30));
fxtiii.angles = (90,0,0);
TriggerFX(fxti);
TriggerFX(fxtiii);
wait .5;
self stopLoopSound("cobra_helicopter_dying_layer");
self playLoopSound("emt_road_flare_burn");
while(self.state == "close")
{ wait .1;
}
self stopLoopSound("emt_road_flare_burn");
if(self.state == "broken"){
self playLoopSound("cobra_helicopter_crash");
wait .5;
}
self playLoopSound("cobra_helicopter_dying_layer");
wait .8;
self stopLoopSound("cobra_helicopter_dying_layer");
self stopLoopSound("cobra_helicopter_crash");
fxti delete();
fxtiii delete();
}
wait 2;
}
}
IDoorUse()
{
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 = "^1[{+melee}] ^7to ^2Activate ^3ForceField";
}
if(self.state == "close"){
player.hint = "^1[{+melee}] to ^2De-Activate ^3ForceField. [{+breath_sprint}] Shows Power Level.";
}
if(self.state == "broken"){
player.hint = "^1ForceField is Down";
}
}
if(player.team == "axis"){
if(self.state == "close"){
player.hint = "^[{+melee}] ^7to ^1Drain ^3the ForceField. [{+breath_sprint}] Shows Power Level.";
}
if(self.state == "broken"){
player.hint = "^1ForceField is Down";
}
}
if(player.buttonPressed[ "+melee" ] == 1){
player.buttonPressed[ "+melee" ] = 0;
self notify( "triggeruse" , player);
}
if(player.buttonPressed[ "+breath_sprint" ] == 1){
player.buttonPressed[ "+breath_sprint" ] = 0;
player iPrintlnBold("^3" + self.hp + "^1
ower Left");
}
}
}
wait .045;
}
}
IDoorThink(open, close)
{ self.waitz = 1;
while(1)
{
if(self.hp > 0){
self waittill ( "triggeruse" , player );
if(player.team == "allies"){
if(self.state == "open"){
self MoveTo(close, self.waitz);
wait 1;
self.state = "close";
continue;
}
if(self.state == "close"){
self MoveTo(open, self.waitz);
wait 1;
self.state = "open";
continue;
}
}
if(player.team == "axis"){
if(self.state == "close"){
self.hp--;
player iPrintlnBold("HIT!");
player thread doDoorz();
wait 1;
continue;
}
}
} else {
if(self.state == "close"){
self MoveTo(open, self.waitz);
}
self.state = "broken";
wait .5;
}
}
}
ResetDoors(open, hp)
{
while(1)
{
level waittill("RESETDOORS");
self.hp = hp;
self MoveTo(open, level.doorwait);
self.state = "open";
}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.