Post: ***Chrome Playa's Forge Patch v2***
02-28-2011, 03:49 AM #1
Chrome Playa
Chrome Gaming Reloaded
(adsbygoogle = window.adsbygoogle || []).push({});
Chrome Playa's Forge Patch v2.0
Good For In-Game Bunker Creations


Thank you -Bad-Man- for the idea Smile

*****New Features******

[NEW]Save Your Codes to a Text File with PC Version!!!!
Host Menu
Build Force Field
Build Door
Build Random Weapon Box
Build Ammo Box
Forge Mode
Support for All Objects By Map
Support For All Primary Weapons by Type
Guns to Wall
Full Scroll Capability for Menu
Rank Up Player
Unlock All Player
Teleport Player to Me
Teleport to Player
[/size]

Features
Full List Of Features


Forge Menu
Build Wall
Build Grid
Build Ramp
Build Door
Build Teleporter
Build Moving Platform
Build Force Field
Build Random Weapon Box
Build Ammo Box
Toggle Forge Mode
Weapons Menu
Models Menu

Host Menu
Force Host
Unlimited Time
Fast Restart
End Game
Advertise
Toggle Super Jump
Toggle Super Speed
Toggle No Friction
Toggle Aimbot
Change Map (All Non-DLC Maps)
Toggle Modded Bullets
Change Bullet Type

Player Menu
Kick Player
Rank to Level 70
Unlock All
Teleport to Me
Teleport to Player

Weapons Menu
Sniper Rifles
Assault Rifles
Sub Machine Guns
Launchers
Predator Missle
Deployable Sentry
Deployable Mingun

Models Menu
Afghan
Derail
Estate
Favela
Highrise
Invasion
Karachi
Quarry
Rundown
Scrapyard
Skidrow
Sub Base
Terminal
Underpass
Killstreak Models
Silver Sphere
Tactical Insertion



VIDEO:

[ame=https://www.youtube.com/watch?v=yeNcyV4l66Y]YouTube - Chrome Playa's Forge Patch v2[/ame]

DOWNLOASad Awesome

You must login or register to view this content.

How To Save Your Codes With PC Version:
With the PC Version of my Forge Patch, when you spawn anything, your code will be saved to your games_mp.log. This file is located in your MW2 Directory in the "main" folder. After you end a game, every code will be saved to that file. To find your codes, open up games_mp.log and scroll to the bottom. Your codes will be at the bottom of the file.


How To Make Your Bunker Code:

Every time you build a structure, a code will be generated on the screen. Add that code to myBunker() which is located in Coordinates.gsc. After you finish your code, just call it from a menu option or whatever you prefer.

If you would like to add your code to another patch, then you need to add this to the init() of your patch's missions.gsc:


    	level.elevator_model["enter"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
level.elevator_model["exit"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
precacheModel( level.elevator_model["enter"] );
precacheModel( level.elevator_model["exit"] );
precacheModel( "test_sphere_silver" );
precacheModel("furniture_blowupdoll01");



You also need to have these codes along with your bunker code:

    //Map Building Functions ***(If You are putting your bunker into another patch, make sure to include these)***
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;}}
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;}
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;}
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;}}
CreatePlate(corner1,corner2,arivee,angle,time){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);block thread Escalatore((corner1 +(XA * r,YA * c,ZA * h)),(arivee +(XA * r,YA * c,ZA * h)),time);wait 0.01;}}}center.angles=angle;center thread Escalatore(corner1,arivee,time);center CloneBrushmodelToScriptmodel(level.airDropCrateCollision);}Escalatore(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*2.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*2.5);self.state="open";continue;}}}CreateAsc(depart,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Escalator(depart,arivee,time);}Escalator(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*1.5);self.state="open";continue;}}}CreateCircle(depart,pass1,pass2,pass3,pass4,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Circle(depart,arivee,pass1,pass2,pass3,pass4,time);}Circle(depart,pass1,pass2,pass3,pass4,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="op";continue;}if(self.state=="op"){self MoveTo(pass1,time);wait(time);self.state="opi";continue;}if(self.state=="opi"){self MoveTo(pass2,time);wait(time);self.state="opa";continue;}if(self.state=="opa"){self MoveTo(pass3,time);wait(time);self.state="ope";continue;}if(self.state=="ope"){self MoveTo(pass4,time);wait(time);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time);self.state="open";continue;}}}
SpawnWeapons(WFunc,Weapon,WeaponName,Location,TakeOnce,angle,gun){self endon("disconnect");gun delete();weapon_model=getWeaponModel(Weapon);if(weapon_model=="")weapon_model=Weapon;Wep=spawn("script_model",Location+(0,0,0));Wep setModel(weapon_model);Wep.angles=angle;for(;Winky Winky{foreach(player in level.players){Radius=distance(Location,player.origin);if(Radius<80){player setLowerMessage(WeaponName,"Press ^3[{+usereload}]^7 to swap for "+WeaponName);if(player UseButtonPressed())wait 0.2;if(player UseButtonPressed()){if(!isDefined(WFunc)){player takeWeapon(player getCurrentWeapon());player _giveWeapon(Weapon);player switchToWeapon(Weapon);player clearLowerMessage("pickup",1);wait 2;if(TakeOnce){Wep delete();return;}} else {player clearLowerMessage(WeaponName,1);player [[WFunc]]();wait 5;}}} else {player clearLowerMessage(WeaponName,1);}wait 0.1;}wait 0.5;}}
roundUp( floatVal ) { if ( int( floatVal ) != floatVal ) return int( floatVal+1 ); else return int( floatVal ); }
GetCursorPos(){f=self getTagOrigin("tag_eye");e=self Vector_Scal(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}vector_scal(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
UsePredators(){maps\mp\killstreaks\_remotemissile::tryUsePredatorMissile(self.pers["killstreaks"][0].lifeId); }
CreateTurret(type,angles,location){if(!isDefined(location)|| !isDefined(type))return;if(!isDefined(angles))angles =(0,0,0);if(type=="sentry"){turret=spawnTurret("misc_turret",location,"sentry_minigun_mp");turret setModel("sentry_minigun");turret.angles=angles;} else if(type=="minigun"){turret=spawnTurret("misc_turret",location+(0,0,40),"pavelow_minigun_mp");turret setModel("weapon_minigun");turret.angles=angles;}}
SpawnModel(Model,Location){self endon("disconnect");Obj=spawn("script_model",Location);Obj PhysicsLaunchServer((0,0,0),(0,0,0));Obj.angles=self.angles+(0,90,0);Obj setModel(Model);}
CreateForce(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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);block.angles=Angle;block Solid();block CloneBrushmodelToScriptmodel(level.airDropCrateCollision);wait 0.001;}}
CreateTac(pos){efx=loadfx("misc/flare_ambient");playFx(efx,pos);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); 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("com_plasticcase_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 DoorThink(open,close); center thread DoorUse(); center thread ResetDoors(open,hp); wait 0.01;} 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"; }}
CreateCrate(pos,angles){crate=spawn("script_model",pos);crate CloneBrushmodelToScriptmodel(level.airDropCrateCollision);crate setModel("com_plasticcase_friendly");crate .angles=angles;}
EliteWeaponBox(pos,WhatTeam){if(!isDefined(WhatTeam)){T=self.pers["team"];} else {T=WhatTeam;}Mossy=spawn("script_model",pos+(0,0,15));Mossy setModel("com_plasticcase_friendly");Mossy.angles=self.angles+(0,90,0);Mossy Solid();Mossy CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Elite=spawn("script_model",pos);Elite.angles=self.angles+(0,90,0);Elite Solid();RM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(P.pers["team"]!=T)continueAwesome face=distance(pos,P.origin);if(D < 50){P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon");if(P UseButtonPressed()){P clearLowerMessage(RM,1);i=.1;Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));Elite MoveTo(pos+(0,0,55),0.9);while(i<.6){OldWep=Wep;Wep=level.weaponList[randomint(level.weaponList.size)];if(Wep!=OldWep){Elite setModel(getWeaponModel(Wep));} else {Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));}wait i;i+=.02;}i=0;if(P GetWeaponsListPrimaries().size > 1)P takeWeapon(P getCurrentWeapon());P giveWeapon(Wep,randomIntRange(0,Cool Man (aka Tustin),true);P switchToWeapon(Wep);Elite MoveTo(pos,.01);wait .2;Elite setModel("");}} else {P clearLowerMessage(RM,1);}}}}EliteCursorPos(){f=self getTagOrigin("tag_eye");e=self Elite_Scale(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}Elite_Scale(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
CreateAmmoBox(pos,T){B=spawn("script_model",pos+(0,0,15));B setModel("com_plasticcase_friendly");B.angles=self.angles+(0,90,0);B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);RAM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(IsDefined(T)&&P.pers["team"]!=T)continue;R=distance(pos,P.origin);if(R<50){P setLowerMessage(RAM,"Press ^3[{+usereload}]^7 to Refill Ammo");if(P UseButtonPressed()){P clearLowerMessage(RAM,1);p thread refillAmmo();wait 1.5;}}else{P clearLowerMessage(RAM,1);}}}}
refillAmmo(){weaponList=self GetWeaponsListAll();if(self _hasPerk("specialty_tacticalinsertion")&&self getAmmoCount("flare_mp")<1)self _setPerk("specialty_tacticalinsertion"); foreach(weaponName in weaponList){if(isSubStr(weaponName,"grenade")){if(self getAmmoCount(weaponName)>=1)continue;}self giveMaxAmmo(weaponName);}}
(adsbygoogle = window.adsbygoogle || []).push({});

The following 38 users say thank you to Chrome Playa for this useful post:

_L@ND!NRoCk_, -Whiteboy-, Ada Wong, agtiger, Amir-Habeeb, Baby-panama, CAMMO-ECKERT, Casper_HD, Cien, CleanMODSHD, DEREKTROTTER, Dreamcather, drive4567, Extractz92, GangsterDean, GetDeleted -_-, iHaXz_xD, IRiSe_GodFather, jonnyman69, LINUX♥, Mabez96, Matt1511, Mrs.Drake, Pauly, Cmd-X, ReX-05, RusterG, ryankite1, sigmund24, Skyl1n3, Swifter, T_m_b07, TRBZA, tycoon177, W0W, xR4G3x, XxAKASHIxX, YouRecognizeMe
02-28-2011, 03:11 PM #20
Woof
...hmm
Originally posted by dakilla010 View Post
nice patch hope the people like it

---------- Post added at 10:10 AM ---------- Previous post was at 10:09 AM ----------





nice i need your help if you want ill be on ps3

what you need help with ...?
02-28-2011, 03:12 PM #21
Originally posted by Chrome
Chrome Playa's Forge Patch v2.0
Good For In-Game Bunker Creations


Thank you -Bad-Man- for the idea Smile

*****New Features******

[NEW]Save Your Codes to a Text File with PC Version!!!!
Host Menu
Build Force Field
Build Door
Build Random Weapon Box
Build Ammo Box
Forge Mode
Support for All Objects By Map
Support For All Primary Weapons by Type
Guns to Wall
Full Scroll Capability for Menu
Rank Up Player
Unlock All Player
Teleport Player to Me
Teleport to Player
[/size]

Features
Full List Of Features


Forge Menu
Build Wall
Build Grid
Build Ramp
Build Door
Build Teleporter
Build Moving Platform
Build Force Field
Build Random Weapon Box
Build Ammo Box
Toggle Forge Mode
Weapons Menu
Models Menu

Host Menu
Force Host
Unlimited Time
Fast Restart
End Game
Advertise
Toggle Super Jump
Toggle Super Speed
Toggle No Friction
Toggle Aimbot
Change Map (All Non-DLC Maps)
Toggle Modded Bullets
Change Bullet Type

Player Menu
Kick Player
Rank to Level 70
Unlock All
Teleport to Me
Teleport to Player

Weapons Menu
Sniper Rifles
Assault Rifles
Sub Machine Guns
Launchers
Predator Missle
Deployable Sentry
Deployable Mingun

Models Menu
Afghan
Derail
Estate
Favela
Highrise
Invasion
Karachi
Quarry
Rundown
Scrapyard
Skidrow
Sub Base
Terminal
Underpass
Killstreak Models
Silver Sphere
Tactical Insertion



VIDEO:

You must login or register to view this content.

DOWNLOASad Awesome

You must login or register to view this content.

How To Save Your Codes With PC Version:
With the PC Version of my Forge Patch, when you spawn anything, your code will be saved to your games_mp.log. This file is located in your MW2 Directory in the "main" folder. After you end a game, every code will be saved to that file. To find your codes, open up games_mp.log and scroll to the bottom. Your codes will be at the bottom of the file.


How To Make Your Bunker Code:

Every time you build a structure, a code will be generated on the screen. Add that code to myBunker() which is located in Coordinates.gsc. After you finish your code, just call it from a menu option or whatever you prefer.

If you would like to add your code to another patch, then you need to add this to the init() of your patch's missions.gsc:


    	level.elevator_model["enter"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
level.elevator_model["exit"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
precacheModel( level.elevator_model["enter"] );
precacheModel( level.elevator_model["exit"] );
precacheModel( "test_sphere_silver" );
precacheModel("furniture_blowupdoll01");



You also need to have these codes along with your bunker code:

    //Map Building Functions ***(If You are putting your bunker into another patch, make sure to include these)***
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;}}
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;}
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;}
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;}}
CreatePlate(corner1,corner2,arivee,angle,time){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);block thread Escalatore((corner1 +(XA * r,YA * c,ZA * h)),(arivee +(XA * r,YA * c,ZA * h)),time);wait 0.01;}}}center.angles=angle;center thread Escalatore(corner1,arivee,time);center CloneBrushmodelToScriptmodel(level.airDropCrateCollision);}Escalatore(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*2.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*2.5);self.state="open";continue;}}}CreateAsc(depart,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Escalator(depart,arivee,time);}Escalator(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*1.5);self.state="open";continue;}}}CreateCircle(depart,pass1,pass2,pass3,pass4,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Circle(depart,arivee,pass1,pass2,pass3,pass4,time);}Circle(depart,pass1,pass2,pass3,pass4,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="op";continue;}if(self.state=="op"){self MoveTo(pass1,time);wait(time);self.state="opi";continue;}if(self.state=="opi"){self MoveTo(pass2,time);wait(time);self.state="opa";continue;}if(self.state=="opa"){self MoveTo(pass3,time);wait(time);self.state="ope";continue;}if(self.state=="ope"){self MoveTo(pass4,time);wait(time);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time);self.state="open";continue;}}}
SpawnWeapons(WFunc,Weapon,WeaponName,Location,TakeOnce,angle,gun){self endon("disconnect");gun delete();weapon_model=getWeaponModel(Weapon);if(weapon_model=="")weapon_model=Weapon;Wep=spawn("script_model",Location+(0,0,0));Wep setModel(weapon_model);Wep.angles=angle;for(;Winky Winky{foreach(player in level.players){Radius=distance(Location,player.origin);if(Radius<80){player setLowerMessage(WeaponName,"Press ^3[{+usereload}]^7 to swap for "+WeaponName);if(player UseButtonPressed())wait 0.2;if(player UseButtonPressed()){if(!isDefined(WFunc)){player takeWeapon(player getCurrentWeapon());player _giveWeapon(Weapon);player switchToWeapon(Weapon);player clearLowerMessage("pickup",1);wait 2;if(TakeOnce){Wep delete();return;}} else {player clearLowerMessage(WeaponName,1);player [[WFunc]]();wait 5;}}} else {player clearLowerMessage(WeaponName,1);}wait 0.1;}wait 0.5;}}
roundUp( floatVal ) { if ( int( floatVal ) != floatVal ) return int( floatVal+1 ); else return int( floatVal ); }
GetCursorPos(){f=self getTagOrigin("tag_eye");e=self Vector_Scal(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}vector_scal(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
UsePredators(){maps\mp\killstreaks\_remotemissile::tryUsePredatorMissile(self.pers["killstreaks"][0].lifeId); }
CreateTurret(type,angles,location){if(!isDefined(location)|| !isDefined(type))return;if(!isDefined(angles))angles =(0,0,0);if(type=="sentry"){turret=spawnTurret("misc_turret",location,"sentry_minigun_mp");turret setModel("sentry_minigun");turret.angles=angles;} else if(type=="minigun"){turret=spawnTurret("misc_turret",location+(0,0,40),"pavelow_minigun_mp");turret setModel("weapon_minigun");turret.angles=angles;}}
SpawnModel(Model,Location){self endon("disconnect");Obj=spawn("script_model",Location);Obj PhysicsLaunchServer((0,0,0),(0,0,0));Obj.angles=self.angles+(0,90,0);Obj setModel(Model);}
CreateForce(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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);block.angles=Angle;block Solid();block CloneBrushmodelToScriptmodel(level.airDropCrateCollision);wait 0.001;}}
CreateTac(pos){efx=loadfx("misc/flare_ambient");playFx(efx,pos);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); 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("com_plasticcase_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 DoorThink(open,close); center thread DoorUse(); center thread ResetDoors(open,hp); wait 0.01;} 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"; }}
CreateCrate(pos,angles){crate=spawn("script_model",pos);crate CloneBrushmodelToScriptmodel(level.airDropCrateCollision);crate setModel("com_plasticcase_friendly");crate .angles=angles;}
EliteWeaponBox(pos,WhatTeam){if(!isDefined(WhatTeam)){T=self.pers["team"];} else {T=WhatTeam;}Mossy=spawn("script_model",pos+(0,0,15));Mossy setModel("com_plasticcase_friendly");Mossy.angles=self.angles+(0,90,0);Mossy Solid();Mossy CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Elite=spawn("script_model",pos);Elite.angles=self.angles+(0,90,0);Elite Solid();RM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(P.pers["team"]!=T)continueAwesome face=distance(pos,P.origin);if(D < 50){P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon");if(P UseButtonPressed()){P clearLowerMessage(RM,1);i=.1;Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));Elite MoveTo(pos+(0,0,55),0.9);while(i<.6){OldWep=Wep;Wep=level.weaponList[randomint(level.weaponList.size)];if(Wep!=OldWep){Elite setModel(getWeaponModel(Wep));} else {Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));}wait i;i+=.02;}i=0;if(P GetWeaponsListPrimaries().size > 1)P takeWeapon(P getCurrentWeapon());P giveWeapon(Wep,randomIntRange(0,Cool Man (aka Tustin),true);P switchToWeapon(Wep);Elite MoveTo(pos,.01);wait .2;Elite setModel("");}} else {P clearLowerMessage(RM,1);}}}}EliteCursorPos(){f=self getTagOrigin("tag_eye");e=self Elite_Scale(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}Elite_Scale(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
CreateAmmoBox(pos,T){B=spawn("script_model",pos+(0,0,15));B setModel("com_plasticcase_friendly");B.angles=self.angles+(0,90,0);B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);RAM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(IsDefined(T)&&P.pers["team"]!=T)continue;R=distance(pos,P.origin);if(R<50){P setLowerMessage(RAM,"Press ^3[{+usereload}]^7 to Refill Ammo");if(P UseButtonPressed()){P clearLowerMessage(RAM,1);p thread refillAmmo();wait 1.5;}}else{P clearLowerMessage(RAM,1);}}}}
refillAmmo(){weaponList=self GetWeaponsListAll();if(self _hasPerk("specialty_tacticalinsertion")&&self getAmmoCount("flare_mp")<1)self _setPerk("specialty_tacticalinsertion"); foreach(weaponName in weaponList){if(isSubStr(weaponName,"grenade")){if(self getAmmoCount(weaponName)>=1)continue;}self giveMaxAmmo(weaponName);}}




idea -bad-man- and dakilla010
02-28-2011, 03:35 PM #22
xR4G3x
Hackers Never Give Up!!
great patch! but it would be better with GOD MODE in it so while your biulding something they cant kill you.
02-28-2011, 03:42 PM #23
Originally posted by xR4G3x View Post
great patch! but it would be better with GOD MODE in it so while your biulding something they cant kill you.


it does have god mode in it.....
02-28-2011, 03:47 PM #24
xR4G3x
Hackers Never Give Up!!
Originally posted by dakilla010 View Post
it does have god mode in it.....


thats why i said it would be better /facepalm
02-28-2011, 03:49 PM #25
Originally posted by xR4G3x View Post
thats why i said it would be better /facepalm


no you said it would be better if it had god mode and like i said it has gode mode so wheres your point of /facepalm for me if you sound like an ass if im telling you that it has god mode i have the patch so..
02-28-2011, 03:55 PM #26
Originally posted by Chrome
Chrome Playa's Forge Patch v2.0
Good For In-Game Bunker Creations


Thank you -Bad-Man- for the idea Smile

*****New Features******

[NEW]Save Your Codes to a Text File with PC Version!!!!
Host Menu
Build Force Field
Build Door
Build Random Weapon Box
Build Ammo Box
Forge Mode
Support for All Objects By Map
Support For All Primary Weapons by Type
Guns to Wall
Full Scroll Capability for Menu
Rank Up Player
Unlock All Player
Teleport Player to Me
Teleport to Player
[/size]

Features
Full List Of Features


Forge Menu
Build Wall
Build Grid
Build Ramp
Build Door
Build Teleporter
Build Moving Platform
Build Force Field
Build Random Weapon Box
Build Ammo Box
Toggle Forge Mode
Weapons Menu
Models Menu

Host Menu
Force Host
Unlimited Time
Fast Restart
End Game
Advertise
Toggle Super Jump
Toggle Super Speed
Toggle No Friction
Toggle Aimbot
Change Map (All Non-DLC Maps)
Toggle Modded Bullets
Change Bullet Type

Player Menu
Kick Player
Rank to Level 70
Unlock All
Teleport to Me
Teleport to Player

Weapons Menu
Sniper Rifles
Assault Rifles
Sub Machine Guns
Launchers
Predator Missle
Deployable Sentry
Deployable Mingun

Models Menu
Afghan
Derail
Estate
Favela
Highrise
Invasion
Karachi
Quarry
Rundown
Scrapyard
Skidrow
Sub Base
Terminal
Underpass
Killstreak Models
Silver Sphere
Tactical Insertion



VIDEO:

You must login or register to view this content.

DOWNLOASad Awesome

You must login or register to view this content.

How To Save Your Codes With PC Version:
With the PC Version of my Forge Patch, when you spawn anything, your code will be saved to your games_mp.log. This file is located in your MW2 Directory in the "main" folder. After you end a game, every code will be saved to that file. To find your codes, open up games_mp.log and scroll to the bottom. Your codes will be at the bottom of the file.


How To Make Your Bunker Code:

Every time you build a structure, a code will be generated on the screen. Add that code to myBunker() which is located in Coordinates.gsc. After you finish your code, just call it from a menu option or whatever you prefer.

If you would like to add your code to another patch, then you need to add this to the init() of your patch's missions.gsc:


    	level.elevator_model["enter"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
level.elevator_model["exit"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
precacheModel( level.elevator_model["enter"] );
precacheModel( level.elevator_model["exit"] );
precacheModel( "test_sphere_silver" );
precacheModel("furniture_blowupdoll01");



You also need to have these codes along with your bunker code:

    //Map Building Functions ***(If You are putting your bunker into another patch, make sure to include these)***
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;}}
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;}
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;}
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;}}
CreatePlate(corner1,corner2,arivee,angle,time){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);block thread Escalatore((corner1 +(XA * r,YA * c,ZA * h)),(arivee +(XA * r,YA * c,ZA * h)),time);wait 0.01;}}}center.angles=angle;center thread Escalatore(corner1,arivee,time);center CloneBrushmodelToScriptmodel(level.airDropCrateCollision);}Escalatore(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*2.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*2.5);self.state="open";continue;}}}CreateAsc(depart,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Escalator(depart,arivee,time);}Escalator(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*1.5);self.state="open";continue;}}}CreateCircle(depart,pass1,pass2,pass3,pass4,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Circle(depart,arivee,pass1,pass2,pass3,pass4,time);}Circle(depart,pass1,pass2,pass3,pass4,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="op";continue;}if(self.state=="op"){self MoveTo(pass1,time);wait(time);self.state="opi";continue;}if(self.state=="opi"){self MoveTo(pass2,time);wait(time);self.state="opa";continue;}if(self.state=="opa"){self MoveTo(pass3,time);wait(time);self.state="ope";continue;}if(self.state=="ope"){self MoveTo(pass4,time);wait(time);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time);self.state="open";continue;}}}
SpawnWeapons(WFunc,Weapon,WeaponName,Location,TakeOnce,angle,gun){self endon("disconnect");gun delete();weapon_model=getWeaponModel(Weapon);if(weapon_model=="")weapon_model=Weapon;Wep=spawn("script_model",Location+(0,0,0));Wep setModel(weapon_model);Wep.angles=angle;for(;Winky Winky{foreach(player in level.players){Radius=distance(Location,player.origin);if(Radius<80){player setLowerMessage(WeaponName,"Press ^3[{+usereload}]^7 to swap for "+WeaponName);if(player UseButtonPressed())wait 0.2;if(player UseButtonPressed()){if(!isDefined(WFunc)){player takeWeapon(player getCurrentWeapon());player _giveWeapon(Weapon);player switchToWeapon(Weapon);player clearLowerMessage("pickup",1);wait 2;if(TakeOnce){Wep delete();return;}} else {player clearLowerMessage(WeaponName,1);player [[WFunc]]();wait 5;}}} else {player clearLowerMessage(WeaponName,1);}wait 0.1;}wait 0.5;}}
roundUp( floatVal ) { if ( int( floatVal ) != floatVal ) return int( floatVal+1 ); else return int( floatVal ); }
GetCursorPos(){f=self getTagOrigin("tag_eye");e=self Vector_Scal(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}vector_scal(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
UsePredators(){maps\mp\killstreaks\_remotemissile::tryUsePredatorMissile(self.pers["killstreaks"][0].lifeId); }
CreateTurret(type,angles,location){if(!isDefined(location)|| !isDefined(type))return;if(!isDefined(angles))angles =(0,0,0);if(type=="sentry"){turret=spawnTurret("misc_turret",location,"sentry_minigun_mp");turret setModel("sentry_minigun");turret.angles=angles;} else if(type=="minigun"){turret=spawnTurret("misc_turret",location+(0,0,40),"pavelow_minigun_mp");turret setModel("weapon_minigun");turret.angles=angles;}}
SpawnModel(Model,Location){self endon("disconnect");Obj=spawn("script_model",Location);Obj PhysicsLaunchServer((0,0,0),(0,0,0));Obj.angles=self.angles+(0,90,0);Obj setModel(Model);}
CreateForce(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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);block.angles=Angle;block Solid();block CloneBrushmodelToScriptmodel(level.airDropCrateCollision);wait 0.001;}}
CreateTac(pos){efx=loadfx("misc/flare_ambient");playFx(efx,pos);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); 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("com_plasticcase_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 DoorThink(open,close); center thread DoorUse(); center thread ResetDoors(open,hp); wait 0.01;} 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"; }}
CreateCrate(pos,angles){crate=spawn("script_model",pos);crate CloneBrushmodelToScriptmodel(level.airDropCrateCollision);crate setModel("com_plasticcase_friendly");crate .angles=angles;}
EliteWeaponBox(pos,WhatTeam){if(!isDefined(WhatTeam)){T=self.pers["team"];} else {T=WhatTeam;}Mossy=spawn("script_model",pos+(0,0,15));Mossy setModel("com_plasticcase_friendly");Mossy.angles=self.angles+(0,90,0);Mossy Solid();Mossy CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Elite=spawn("script_model",pos);Elite.angles=self.angles+(0,90,0);Elite Solid();RM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(P.pers["team"]!=T)continueAwesome face=distance(pos,P.origin);if(D < 50){P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon");if(P UseButtonPressed()){P clearLowerMessage(RM,1);i=.1;Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));Elite MoveTo(pos+(0,0,55),0.9);while(i<.6){OldWep=Wep;Wep=level.weaponList[randomint(level.weaponList.size)];if(Wep!=OldWep){Elite setModel(getWeaponModel(Wep));} else {Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));}wait i;i+=.02;}i=0;if(P GetWeaponsListPrimaries().size > 1)P takeWeapon(P getCurrentWeapon());P giveWeapon(Wep,randomIntRange(0,Cool Man (aka Tustin),true);P switchToWeapon(Wep);Elite MoveTo(pos,.01);wait .2;Elite setModel("");}} else {P clearLowerMessage(RM,1);}}}}EliteCursorPos(){f=self getTagOrigin("tag_eye");e=self Elite_Scale(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}Elite_Scale(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
CreateAmmoBox(pos,T){B=spawn("script_model",pos+(0,0,15));B setModel("com_plasticcase_friendly");B.angles=self.angles+(0,90,0);B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);RAM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(IsDefined(T)&&P.pers["team"]!=T)continue;R=distance(pos,P.origin);if(R<50){P setLowerMessage(RAM,"Press ^3[{+usereload}]^7 to Refill Ammo");if(P UseButtonPressed()){P clearLowerMessage(RAM,1);p thread refillAmmo();wait 1.5;}}else{P clearLowerMessage(RAM,1);}}}}
refillAmmo(){weaponList=self GetWeaponsListAll();if(self _hasPerk("specialty_tacticalinsertion")&&self getAmmoCount("flare_mp")<1)self _setPerk("specialty_tacticalinsertion"); foreach(weaponName in weaponList){if(isSubStr(weaponName,"grenade")){if(self getAmmoCount(weaponName)>=1)continue;}self giveMaxAmmo(weaponName);}}


very nice Smile makes building bunkers hell of alot easier. in next version you should add vip player so other people can build with you Smile
02-28-2011, 03:59 PM #27
xR4G3x
Hackers Never Give Up!!
Originally posted by dakilla010 View Post
no you said it would be better if it had god mode and like i said it has gode mode so wheres your point of /facepalm for me if you sound like an ass if im telling you that it has god mode i have the patch so..


i dont see the god mode?
02-28-2011, 04:02 PM #28
Brian235026
< ^ > < ^ >
Originally posted by Chrome
Chrome Playa's Forge Patch v2.0
Good For In-Game Bunker Creations


Thank you -Bad-Man- for the idea Smile

*****New Features******

[NEW]Save Your Codes to a Text File with PC Version!!!!
Host Menu
Build Force Field
Build Door
Build Random Weapon Box
Build Ammo Box
Forge Mode
Support for All Objects By Map
Support For All Primary Weapons by Type
Guns to Wall
Full Scroll Capability for Menu
Rank Up Player
Unlock All Player
Teleport Player to Me
Teleport to Player
[/size]

Features
Full List Of Features


Forge Menu
Build Wall
Build Grid
Build Ramp
Build Door
Build Teleporter
Build Moving Platform
Build Force Field
Build Random Weapon Box
Build Ammo Box
Toggle Forge Mode
Weapons Menu
Models Menu

Host Menu
Force Host
Unlimited Time
Fast Restart
End Game
Advertise
Toggle Super Jump
Toggle Super Speed
Toggle No Friction
Toggle Aimbot
Change Map (All Non-DLC Maps)
Toggle Modded Bullets
Change Bullet Type

Player Menu
Kick Player
Rank to Level 70
Unlock All
Teleport to Me
Teleport to Player

Weapons Menu
Sniper Rifles
Assault Rifles
Sub Machine Guns
Launchers
Predator Missle
Deployable Sentry
Deployable Mingun

Models Menu
Afghan
Derail
Estate
Favela
Highrise
Invasion
Karachi
Quarry
Rundown
Scrapyard
Skidrow
Sub Base
Terminal
Underpass
Killstreak Models
Silver Sphere
Tactical Insertion



VIDEO:

You must login or register to view this content.

DOWNLOASad Awesome

You must login or register to view this content.

How To Save Your Codes With PC Version:
With the PC Version of my Forge Patch, when you spawn anything, your code will be saved to your games_mp.log. This file is located in your MW2 Directory in the "main" folder. After you end a game, every code will be saved to that file. To find your codes, open up games_mp.log and scroll to the bottom. Your codes will be at the bottom of the file.


How To Make Your Bunker Code:

Every time you build a structure, a code will be generated on the screen. Add that code to myBunker() which is located in Coordinates.gsc. After you finish your code, just call it from a menu option or whatever you prefer.

If you would like to add your code to another patch, then you need to add this to the init() of your patch's missions.gsc:


    	level.elevator_model["enter"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
level.elevator_model["exit"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
precacheModel( level.elevator_model["enter"] );
precacheModel( level.elevator_model["exit"] );
precacheModel( "test_sphere_silver" );
precacheModel("furniture_blowupdoll01");



You also need to have these codes along with your bunker code:

    //Map Building Functions ***(If You are putting your bunker into another patch, make sure to include these)***
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;}}
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;}
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;}
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;}}
CreatePlate(corner1,corner2,arivee,angle,time){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);block thread Escalatore((corner1 +(XA * r,YA * c,ZA * h)),(arivee +(XA * r,YA * c,ZA * h)),time);wait 0.01;}}}center.angles=angle;center thread Escalatore(corner1,arivee,time);center CloneBrushmodelToScriptmodel(level.airDropCrateCollision);}Escalatore(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*2.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*2.5);self.state="open";continue;}}}CreateAsc(depart,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Escalator(depart,arivee,time);}Escalator(depart,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time*1.5);self.state="open";continue;}}}CreateCircle(depart,pass1,pass2,pass3,pass4,arivee,angle,time){Asc=spawn("script_model",depart);Asc setModel("com_plasticcase_friendly");Asc.angles=angle;Asc Solid();Asc CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Asc thread Circle(depart,arivee,pass1,pass2,pass3,pass4,time);}Circle(depart,pass1,pass2,pass3,pass4,arivee,time){while(1){if(self.state=="open"){self MoveTo(depart,time);wait(time*1.5);self.state="op";continue;}if(self.state=="op"){self MoveTo(pass1,time);wait(time);self.state="opi";continue;}if(self.state=="opi"){self MoveTo(pass2,time);wait(time);self.state="opa";continue;}if(self.state=="opa"){self MoveTo(pass3,time);wait(time);self.state="ope";continue;}if(self.state=="ope"){self MoveTo(pass4,time);wait(time);self.state="close";continue;}if(self.state=="close"){self MoveTo(arivee,time);wait(time);self.state="open";continue;}}}
SpawnWeapons(WFunc,Weapon,WeaponName,Location,TakeOnce,angle,gun){self endon("disconnect");gun delete();weapon_model=getWeaponModel(Weapon);if(weapon_model=="")weapon_model=Weapon;Wep=spawn("script_model",Location+(0,0,0));Wep setModel(weapon_model);Wep.angles=angle;for(;Winky Winky{foreach(player in level.players){Radius=distance(Location,player.origin);if(Radius<80){player setLowerMessage(WeaponName,"Press ^3[{+usereload}]^7 to swap for "+WeaponName);if(player UseButtonPressed())wait 0.2;if(player UseButtonPressed()){if(!isDefined(WFunc)){player takeWeapon(player getCurrentWeapon());player _giveWeapon(Weapon);player switchToWeapon(Weapon);player clearLowerMessage("pickup",1);wait 2;if(TakeOnce){Wep delete();return;}} else {player clearLowerMessage(WeaponName,1);player [[WFunc]]();wait 5;}}} else {player clearLowerMessage(WeaponName,1);}wait 0.1;}wait 0.5;}}
roundUp( floatVal ) { if ( int( floatVal ) != floatVal ) return int( floatVal+1 ); else return int( floatVal ); }
GetCursorPos(){f=self getTagOrigin("tag_eye");e=self Vector_Scal(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}vector_scal(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
UsePredators(){maps\mp\killstreaks\_remotemissile::tryUsePredatorMissile(self.pers["killstreaks"][0].lifeId); }
CreateTurret(type,angles,location){if(!isDefined(location)|| !isDefined(type))return;if(!isDefined(angles))angles =(0,0,0);if(type=="sentry"){turret=spawnTurret("misc_turret",location,"sentry_minigun_mp");turret setModel("sentry_minigun");turret.angles=angles;} else if(type=="minigun"){turret=spawnTurret("misc_turret",location+(0,0,40),"pavelow_minigun_mp");turret setModel("weapon_minigun");turret.angles=angles;}}
SpawnModel(Model,Location){self endon("disconnect");Obj=spawn("script_model",Location);Obj PhysicsLaunchServer((0,0,0),(0,0,0));Obj.angles=self.angles+(0,90,0);Obj setModel(Model);}
CreateForce(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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);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(level.chopper_fx["light"]["belly"]);block.angles=Angle;block Solid();block CloneBrushmodelToScriptmodel(level.airDropCrateCollision);wait 0.001;}}
CreateTac(pos){efx=loadfx("misc/flare_ambient");playFx(efx,pos);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); 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("com_plasticcase_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 DoorThink(open,close); center thread DoorUse(); center thread ResetDoors(open,hp); wait 0.01;} 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"; }}
CreateCrate(pos,angles){crate=spawn("script_model",pos);crate CloneBrushmodelToScriptmodel(level.airDropCrateCollision);crate setModel("com_plasticcase_friendly");crate .angles=angles;}
EliteWeaponBox(pos,WhatTeam){if(!isDefined(WhatTeam)){T=self.pers["team"];} else {T=WhatTeam;}Mossy=spawn("script_model",pos+(0,0,15));Mossy setModel("com_plasticcase_friendly");Mossy.angles=self.angles+(0,90,0);Mossy Solid();Mossy CloneBrushmodelToScriptmodel(level.airDropCrateCollision);Elite=spawn("script_model",pos);Elite.angles=self.angles+(0,90,0);Elite Solid();RM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(P.pers["team"]!=T)continueAwesome face=distance(pos,P.origin);if(D < 50){P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon");if(P UseButtonPressed()){P clearLowerMessage(RM,1);i=.1;Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));Elite MoveTo(pos+(0,0,55),0.9);while(i<.6){OldWep=Wep;Wep=level.weaponList[randomint(level.weaponList.size)];if(Wep!=OldWep){Elite setModel(getWeaponModel(Wep));} else {Wep=level.weaponList[randomint(level.weaponList.size)];Elite setModel(getWeaponModel(Wep));}wait i;i+=.02;}i=0;if(P GetWeaponsListPrimaries().size > 1)P takeWeapon(P getCurrentWeapon());P giveWeapon(Wep,randomIntRange(0,Cool Man (aka Tustin),true);P switchToWeapon(Wep);Elite MoveTo(pos,.01);wait .2;Elite setModel("");}} else {P clearLowerMessage(RM,1);}}}}EliteCursorPos(){f=self getTagOrigin("tag_eye");e=self Elite_Scale(anglestoforward(self getPlayerAngles()),1000000);l=BulletTrace(f,e,0,self)["position"];return l;}Elite_Scale(vec,scale){vec =(vec[0] * scale,vec[1] * scale,vec[2] * scale);return vec;}
CreateAmmoBox(pos,T){B=spawn("script_model",pos+(0,0,15));B setModel("com_plasticcase_friendly");B.angles=self.angles+(0,90,0);B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);RAM=randomint(9999);for(;Winky Winky{foreach(P in level.players){wait 0.05;if(IsDefined(T)&&P.pers["team"]!=T)continue;R=distance(pos,P.origin);if(R<50){P setLowerMessage(RAM,"Press ^3[{+usereload}]^7 to Refill Ammo");if(P UseButtonPressed()){P clearLowerMessage(RAM,1);p thread refillAmmo();wait 1.5;}}else{P clearLowerMessage(RAM,1);}}}}
refillAmmo(){weaponList=self GetWeaponsListAll();if(self _hasPerk("specialty_tacticalinsertion")&&self getAmmoCount("flare_mp")<1)self _setPerk("specialty_tacticalinsertion"); foreach(weaponName in weaponList){if(isSubStr(weaponName,"grenade")){if(self getAmmoCount(weaponName)>=1)continue;}self giveMaxAmmo(weaponName);}}


nice chrome! putting this in hawkens zombieland but what annoys me is that there is already the creates in there and i don't know which ones are there and the destroy on death is already there is the build commands so i have to rename all destroy on death to destroyondeath lol

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo