Thread: Help!!!!!

Results 1 to 4 of 4
  1. #1
    einar300's Avatar
    Join Date
    May 2010
    Gender
    male
    Posts
    466
    Reputation
    10
    Thanks
    62

    Help!!!!!

    I'm getting the bad syntax error!

    This is the code:

    Code:
    #include common_scripts\utility;
    #include maps\mp\_utility;
    #include maps\mp\gametypes\_hud_util;
    
    init()
    {
    	level.doCustomMap = 0;
    	level.doorwait = 0.3;
    	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"] );
    	wait 1;
    	if(getDvar("mapname") == "mp_afghan"){ /** Afghan **/
    		level thread Afghan();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_boneyard"){ /** Scrapyard **/
    		level thread Scrapyard();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_brecourt"){ /** Wasteland **/
    		level thread Wasteland();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_checkpoint"){ /** Karachi **/
    		level thread Karachi();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_derail"){ /** Derail **/
    		level thread Derail();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_estate"){ /** Estate **/
    		level thread Estate();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_favela"){ /** Favela **/
    		level thread Favela();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_highrise"){ /** HighRise **/
    		level thread HighRise();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_nightshift"){ /** Skidrow **/
    		level thread Skidrow();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_invasion"){ /** Invasion **/
    		level thread Invasion();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_quarry"){ /** Quarry **/
    		level thread Quarry();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_rundown"){ /** Rundown **/
    		level thread Rundown();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_rust"){ /** Rust **/
    		level thread Rust();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_subbase"){ /** SubBase **/
    		level thread SubBase();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_terminal"){ /** Terminal **/
    		level thread Terminal();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_underpass"){ /** Underpass **/
    		level thread Underpass();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_strike"){ /** Strike **/
    		level thread Strike();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_crash"){ /** Crash **/
    		level thread Crash();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_compact"){ /** Salvage **/
    		level thread Salvage();
    		level.doCustomMap = 1;
    	}
    	if(getDvar("mapname") == "mp_overgrown"){ /** Overgrown **/
    		level thread Overgrown();
    		level.doCustomMap = 1;
    	}
    	if(level.doCustomMap == 1){
    		level.gameState = "starting";
    		//if(!level.testing)
    			level thread CreateMapWait();
    		//
    	} else {
    		level.gameState = "starting";
    		wait 15;
    		level notify("CREATED");
    	}
    }
    
    CreateMapWait()
    {
    	level.TimerText destroy();
    	level.Timer destroy();
    	level.TimerText = level createServerFontString( "objective", 1.5 );
    	level.TimerText setPoint( "CENTER", "CENTER", 0, -100 );
    	level.TimerText setText("^3Wait for the map to be created:");
    	level.Timer = level createServerFontString( "objective", 2 );
    	level.Timer setPoint( "CENTER", "CENTER", 0, -75 );
    	level.Timer.color = (1,1,0);
    	for(i = 30; i > 0; i--)
    	{
    		level.Timer setValue(i);
    		foreach(player in level.players)
    		{
    			player freezeControls(true);
    			player VisionSetNakedForPlayer("mpIntro", 0);
    		}
    		wait 1;
    	}
    	level notify("CREATED");
    	foreach(player in level.players)
    	{
    		player freezeControls(false);
    		player VisionSetNakedForPlayer(getDvar("mapname"), 0);
    	}
    }
    
    CreateCustomSpawnPointsCircle(center, radius, team)
    {
    	rings = roundUp(radius/50);
    	for(r = 1; r <= rings; r++){
    		for(t = 0; t < 360; t += 30){
    			x = 50 * r * Cos(t);
    			y = 50 * r * Sin(t);
    			pos = (center + (x, y, 0));
    			if(team == "allies" || team == "all"){
    				level.CustomSpawnPoints["allies"][level.CustomSpawnPoints["allies"].size] = pos;
    			}
    			if(team == "axis" || team == "all"){
    				level.CustomSpawnPoints["axis"][level.CustomSpawnPoints["axis"].size] = pos;
    			}
    		}
    	}
    }
    
    CreateCustomSpawnPointsBox(corner1, corner2, team)
    {
    	W = Distance((corner1[0], 0, 0), (corner2[0], 0, 0));
    	L = Distance((0, corner1[1], 0), (0, corner2[1], 0));
    	CX = corner2[0] - corner1[0];
    	CY = corner2[1] - corner1[1];
    	ROWS = roundUp(W/50);
    	COLUMNS = roundUp(L/50);
    	XA = CX/ROWS;
    	YA = CY/COLUMNS;
    	for(r = 0; r <= ROWS; r++){
    		for(c = 0; c <= COLUMNS; c++){
    			pos = (corner1 + (XA * r, YA * c, 0));
    			if(team == "allies" || team == "all"){
    				level.CustomSpawnPoints["allies"][level.CustomSpawnPoints["allies"].size] = pos;
    			}
    			if(team == "axis" || team == "all"){
    				level.CustomSpawnPoints["axis"][level.CustomSpawnPoints["axis"].size] = pos;
    			}
    		}
    	}
    }
    
    CreateCustomSpawnPointsPoint(pos, team)
    {
    	if(team == "allies" || team == "all"){
    		level.CustomSpawnPoints["allies"][level.CustomSpawnPoints["allies"].size] = pos;
    	}
    	if(team == "axis" || team == "all"){
    		level.CustomSpawnPoints["axis"][level.CustomSpawnPoints["axis"].size] = pos;
    	}
    }
    
    CreateElevator(enter, exit, angle)
    {
    	flag = spawn( "script_model", enter );
    	flag setModel( level.elevator_model["enter"] );
    	wait 0.01;
    efx = loadfx( "misc/flare_ambient" );
    playFx( efx, enter );
    	flag showInMap();
    	wait 0.01;
    	flag = spawn( "script_model", exit );
    	flag setModel( level.elevator_model["exit"] );
    	wait 0.01;
    	self thread ElevatorThink(enter, exit, angle);
    }
    
    showInMap()
    {
    	self endon ( "disconnect" ); 
    	self endon ( "death" ); 
    		curObjID = maps\mp\gametypes\_gameobjects::getNextObjID();	
    		name = precacheShader( "compass_waypoint_panic" );	
    		objective_add( curObjID, "invisible", (0,0,0) );
    		objective_position( curObjID, self.origin );
    		objective_state( curObjID, "active" );
    		objective_team( curObjID, self.team );
    		objective_icon( curObjID, name );
    		self.objIdFriendly = curObjID;
    }
    
    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, xangle, yangle, zangle, 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;
    	}
    	if(!isDefined(yangle)){
    		Temp = VectorToAngles(open - close);
    		yangle = Temp[1]-90;
    	}
    	center.angles = (xangle, yangle, zangle);
    	center.state = "open";
    	center.maxhp = hp;
    	center.hp = hp;
    	center.range = range;
    	center thread DoorThinkUse(open, close);
    	center thread DoorThinkRepair();
    	center thread DoorUse();
    	center thread ResetDoors(open, hp);
    	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;
    }
    
    CreateBridge(point1, point2, point3)
    {
    	points = [];
    	points[0] = point1;
    	points[1] = point2;
    	points[2] = point3;
    	for(i = 0; i < points.size; i++){
    		if(!isDefined(points[i+1])){
    			return;
    		}
    		D = Distance(points[i], points[i+1]);
    		blocks = roundUp(D/30);
    		CX = points[i][0] - points[i+1][0];
    		CY = points[i][1] - points[i+1][1];
    		CZ = points[i][2] - points[i+1][2];
    		XA = CX/blocks;
    		YA = CY/blocks;
    		ZA = CZ/blocks;
    		CXY = Distance((points[i][0], points[i][1], 0), (points[i+1][0], points[i+1][1], 0));
    		Temp = VectorToAngles(points[i] - points[i+1]);
    		BA = (Temp[2], Temp[1] + 90, Temp[0]);
    		for(b = 0; b <= blocks; b++){
    			block = spawn("script_model", (points[i+1] + ((XA, YA, ZA) * b)));
    			block setModel("com_plasticcase_friendly");
    			block.angles = BA;
    			block Solid();
    			block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    			wait 0.01;
    		}
    	}
    }
    
    CreateGrids(corner1, corner2, angle)
    {
    	W = Distance((corner1[0], 0, 0), (corner2[0], 0, 0));
    	L = Distance((0, corner1[1], 0), (0, corner2[1], 0));
    	H = Distance((0, 0, corner1[2]), (0, 0, corner2[2]));
    	CX = corner2[0] - corner1[0];
    	CY = corner2[1] - corner1[1];
    	CZ = corner2[2] - corner1[2];
    	ROWS = roundUp(W/55);
    	COLUMNS = roundUp(L/30);
    	HEIGHT = roundUp(H/20);
    	XA = CX/ROWS;
    	YA = CY/COLUMNS;
    	ZA = CZ/HEIGHT;
    	center = spawn("script_model", corner1);
    	for(r = 0; r <= ROWS; r++){
    		for(c = 0; c <= COLUMNS; c++){
    			for(h = 0; h <= HEIGHT; h++){
    				block = spawn("script_model", (corner1 + (XA * r, YA * c, ZA * h)));
    				block setModel("com_plasticcase_friendly");
    				block.angles = (0, 0, 0);
    				block Solid();
    				block LinkTo(center);
    				block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    				wait 0.01;
    			}
    		}
    	}
    	center.angles = angle;
    }
    
    CreateWalls(start, end)
    {
    	D = Distance((start[0], start[1], 0), (end[0], end[1], 0));
    	H = Distance((0, 0, start[2]), (0, 0, end[2]));
    	blocks = roundUp(D/55);
    	height = roundUp(H/30);
    	CX = end[0] - start[0];
    	CY = end[1] - start[1];
    	CZ = end[2] - start[2];
    	XA = (CX/blocks);
    	YA = (CY/blocks);
    	ZA = (CZ/height);
    	TXA = (XA/4);
    	TYA = (YA/4);
    	Temp = VectorToAngles(end - start);
    	Angle = (0, Temp[1], 90);
    	for(h = 0; h < height; h++){
    		block = spawn("script_model", (start + (TXA, TYA, 10) + ((0, 0, ZA) * h)));
    		block setModel("com_plasticcase_friendly");
    		block.angles = Angle;
    		block Solid();
    		block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    		wait 0.001;
    		for(i = 1; i < blocks; i++){
    			block = spawn("script_model", (start + ((XA, YA, 0) * i) + (0, 0, 10) + ((0, 0, ZA) * h)));
    			block setModel("com_plasticcase_friendly");
    			block.angles = Angle;
    			block Solid();
    			block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    			wait 0.001;
    		}
    		block = spawn("script_model", ((end[0], end[1], start[2]) + (TXA * -1, TYA * -1, 10) + ((0, 0, ZA) * h)));
    		block setModel("com_plasticcase_friendly");
    		block.angles = Angle;
    		block Solid();
    		block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    		wait 0.001;
    	}
    }
    
    CreateAdaptWalls(start, end, height, offset)
    {
    	D = Distance((start[0], start[1], 0), (end[0], end[1], 0));
    	blocks = roundUp(D/55);
    	CX = end[0] - start[0];
    	CY = end[1] - start[1];
    	XA = (CX/blocks);
    	YA = (CY/blocks);
    	ZA = 30;
    	TXA = (XA/4);
    	TYA = (YA/4);
    	Temp = VectorToAngles(end - start);
    	Angle = (0, Temp[1], 90);
    	tempstart = bulletTrace(start, start + (0, 0, 100000), false, undefined)["position"] - (0,0,500);
    	tempend = bulletTrace(end, end + (0, 0, 100000), false, undefined)["position"] - (0,0,500);
    	for(h = 0; h < height; h++){
    		spawnlocation = bulletTrace(tempstart, tempstart - (0, 0, 100000), false, undefined)["position"];
    		block = spawn("script_model", (spawnlocation + (TXA, TYA, 15 + offset)));
    		block setModel("com_plasticcase_friendly");
    		block.angles = Angle;
    		block Solid();
    		block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    		wait 0.001;
    		for(i = 1; i < blocks; i++){
    			spawnlocation = bulletTrace(tempstart + ((XA, YA, 0) * i), tempstart + ((XA, YA, 0) * i) - (0, 0, 100000), false, undefined)["position"];
    			block = spawn("script_model", (spawnlocation + (0, 0, 15 + offset)));
    			block setModel("com_plasticcase_friendly");
    			block.angles = Angle;
    			block Solid();
    			block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    			wait 0.001;
    		}
    		spawnlocation = bulletTrace(tempend, tempend - (0, 0, 100000), false, undefined)["position"];
    		block = spawn("script_model", (spawnlocation + (TXA * -1, TYA * -1, 15 + offset)));
    		block setModel("com_plasticcase_friendly");
    		block.angles = Angle;
    		block Solid();
    		block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    		wait 0.001;
    	}
    }
    
    CreateCluster(amount, pos, radius)
    {
    	for(i = 0; i < amount; i++)
    	{
    		half = radius / 2;
    		power = ((randomInt(radius) - half), (randomInt(radius) - half), 500);
    		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 );
    		block thread ResetCluster(pos, radius);
    		wait 0.05;
    	}
    }
    
    CreateTables(start, end)
    {
    	D = Distance((start[0], start[1], 0), (end[0], end[1], 0));
    	blocks = roundUp(D/55);
    	CX = end[0] - start[0];
    	CY = end[1] - start[1];
    	XA = (CX/blocks);
    	YA = (CY/blocks);
    	TXA = (XA/4);
    	TYA = (YA/4);
    	Temp = VectorToAngles(end - start);
    	Angle = (0, Temp[1], 0);
    	block = spawn("script_model", (start + (TXA, TYA, 10)));
    	block setModel("com_plasticcase_enemy");
    	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)));
    		block setModel("com_plasticcase_enemy");
    		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)));
    	block setModel("com_plasticcase_enemy");
    	block.angles = Angle;
    	block Solid();
    	block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    	wait 0.001;
    }
    
    CreateBombSite(pos, team, otherteam)
    {
    	center = spawn("script_model", pos );
    	center setModel("com_bomb_objective");
    	center Solid();
    	center CloneBrushmodelToScriptmodel( level.bombSiteCollision );
    	block = spawn("script_model", pos + (0, 20, 30) );
    	block.angles = (0, 0, 0);
    	block Solid();
    	block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    	block EnableLinkTo();
    	block LinkTo(center);
    	block = spawn("script_model", pos + (0, -20, 30) );
    	block.angles = (0, 0, 0);
    	block Solid();
    	block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    	block EnableLinkTo();
    	block LinkTo(center);
    	curObjID = maps\mp\gametypes\_gameobjects::getNextObjID();	
    	objective_add( curObjID, "invisible", (0,0,0) );
    	objective_position( curObjID, center.origin );
    	objective_state( curObjID, "active" );
    	objective_team( curObjID, team );
    	center.objIdFriendly = curObjID;
    	center maps\mp\_entityheadIcons::setHeadIcon( team, "waypoint_defend_a", (0,0,44), 14, 14 );
    	curObjID = maps\mp\gametypes\_gameobjects::getNextObjID();	
    	objective_add( curObjID, "invisible", (0,0,0) );
    	objective_position( curObjID, center.origin );
    	objective_state( curObjID, "active" );
    	objective_team( curObjID, otherteam );
    	center.objIdEnemy = curObjID;
    	center maps\mp\_entityheadIcons::setHeadIcon( otherteam, "waypoint_target_a", (0,0,44), 14, 14 );
    	center thread BombSiteUse(team, otherteam);
    	center thread BombThinkPlant(team, otherteam);
    }
    
    CreateKillIfBelow(z)
    {
    	level thread KillBelow(z);
    }
    
    CustomSpawnin****tem()
    {
    	self endon("disconnect");
    	pickingspawn = true;
    	spawnpoint = undefined;
    	for(;;)
    	{
    		self waittill("spawned_player");
    		pickingspawn = true;
    		hits = 0;
    		trys = 0;
    		if(level.CustomSpawnSetting == 0){
    			return;
    		} else if(level.CustomSpawnSetting == 1){
    			if(randomInt(99) < 50){
    				while(pickingspawn){
    					temppos = level.CustomSpawnPointsFinal[self.team][randomInt(level.CustomSpawnPointsFinal[self.team].size)];
    					top = bullettrace(temppos, temppos + (0, 0, 100000), false, undefined)["position"];
    					spawnpoint = bullettrace(top, top + (0, 0, -1000000), false, undefined)["position"];
    					if(level.CustomSpawnNearEnemy == 0){
    						foreach(player in level.players)
    						{
    							if(player.team == self.team){
    								continue;
    							}
    							end = player.origin - spawnpoint;
    							if(length(end) > 10000){
    								continue;
    							}
    							check = bullettracepassed(spawnpoint, spawnpoint + (end[0], end[1], 0), false, undefined);
    							if(check){
    								hits++;
    							}
    						}
    						if(hits == 0){
    							pickingspawn = false;
    						} else {
    							trys++;
    						}
    						if(trys > level.CustomSpawnPointsFinal[self.team].size - 1){
    							pickingspawn = false;
    						}
    					} else {
    						pickingspawn = false;
    					}
    				}
    				self SetOrigin((spawnpoint));
    			}
    		} else if(level.CustomSpawnSetting == 2){
    			while(pickingspawn){
    				temppos = level.CustomSpawnPointsFinal[self.team][randomInt(level.CustomSpawnPointsFinal[self.team].size)];
    				top = bullettrace(temppos, temppos + (0, 0, 100000), false, undefined)["position"];
    				spawnpoint = bullettrace(top, top + (0, 0, -1000000), false, undefined)["position"];
    				if(level.CustomSpawnNearEnemy == 0){
    					foreach(player in level.players)
    					{
    						if(player.team == self.team){
    							continue;
    						}
    						end = player.origin - spawnpoint;
    						if(length(end) > 1000){
    							continue;
    						}
    						check = bullettracepassed(spawnpoint, spawnpoint + (end[0], end[1], 0), false, undefined);
    						if(check){
    							hits++;
    						}
    					}
    					if(hits == 0){
    						pickingspawn = false;
    					} else {
    						trys++;
    					}
    					if(trys > level.CustomSpawnPointsFinal[self.team].size - 1){
    						pickingspawn = false;
    					}
    				} else {
    					pickingspawn = false;
    				}
    			}
    			self SetOrigin((spawnpoint));
    		}
    	}
    }
    
    RemoveUnusableSpawnPoint()
    {
    	foreach(spawnpoint in level.CustomSpawnPoints["allies"])
    	{
    		hits = 0;
    		top = bullettrace(spawnpoint, spawnpoint + (0, 0, 100000), false, undefined)["position"];
    		checkspawnpoint = bullettrace(top, top + (0, 0, -1000000), false, undefined)["position"];
    		for(i = 0; i < 360; i++)
    		{
    			direction = AnglesToForward((0, i, 0));
    			end = vector_multiply((0, direction[1], 0) ,55);
    			check = bullettracepassed(checkspawnpoint, checkspawnpoint + end, false, undefined);
    			if(!check){
    				hits++;
    			}
    		}
    		if(hits == 0){
    			level.CustomSpawnPointsFinal["allies"][level.CustomSpawnPointsFinal["allies"].size] = spawnpoint;
    		}
    	}
    	foreach(spawnpoint in level.CustomSpawnPoints["axis"])
    	{
    		hits = 0;
    		top = bullettrace(spawnpoint, spawnpoint + (0, 0, 100000), false, undefined)["position"];
    		checkspawnpoint = bullettrace(top, top + (0, 0, -1000000), false, undefined)["position"];
    		for(i = 0; i < 360; i += 5)
    		{
    			direction = AnglesToForward((0, i, 0));
    			end = vector_multiply((0, direction[1], 0) ,55);
    			check = bullettracepassed(checkspawnpoint, checkspawnpoint + end, false, undefined);
    			if(!check){
    				hits++;
    			}
    		}
    		if(hits == 0){
    			level.CustomSpawnPointsFinal["axis"][level.CustomSpawnPointsFinal["axis"].size] = spawnpoint;
    		}
    	}
    	foreach(player in level.players)
    	{
    		player suicide();
    	}
    }
    
    ElevatorThink(enter, exit, angle)
    {
    	self endon("disconnect");
    	while(1)
    	{
    		foreach(player in level.players)
    		{
    			if(DistanceSquared(enter, player.origin) <= Power(50, 2)){
    				player SetOrigin(exit);
    				player SetPlayerAngles(angle);
    			}
    		}
    		wait .25;
    	}
    }
    
    DoorThinkUse(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"){
    					if(player.attackeddoor == 0){
    						hitChance = 0;
    						switch(player GetStance())
    						{
    						case "prone":
    							hitChance = 15;
    							break;
    						case "crouch":
    							hitChance = 45;
    							break;
    						case "stand":
    							hitChance = 90;
    							break;
    						default:
    							break;
    						}
    						if(randomInt(100) < hitChance){
    							self.hp--;
    							player iPrintlnBold("HIT - " + self.hp + "/" + self.maxhp);
    							if(self.hp <= int(self.maxhp/5)){
    								self playSound("flag_spawned");
    							}
    						} else {
    							player iPrintlnBold("^1MISS - " + self.hp + "/" + self.maxhp);
    						}
    						player.attackeddoor = 1;
    						player thread DoorAttackWait();
    						continue;
    					}
    				}
    			}
    		} else {
    			if(self.state == "close"){
    				self MoveTo(open, level.doorwait);
    			}
    			self.state = "broken";
    			wait .5;
    		}
    	}
    }
    
    DoorThinkRepair()
    {
    	while(1)
    	{
    		self waittill ( "triggerrepair" , player );
    		if(self.hp < self.maxhp){
    			if(self.hp > 0){
    				player thread RepairDoor(self);
    			} else {
    				if(useHoldThink(player, "Fixing Door...", 20000)){
    					self.hp = self.maxhp;
    					self.state = "open";
    					player.bounty += 200;
    				}
    			}
    		}
    	}
    }
    
    RepairDoor(door)
    {
    	self notify("RepairingDoor");
    	self endon("RepairingDoor");
    	self endon("disconnect");
    	self endon("death");
    	if(useHoldThink(self, "Repairing Door...", 5000)){
    		if(door.state != "broken"){
    			door.hp += 1;
    			self.hprepaired += 1;
    			self iPrintlnBold("Repaired - " + door.hp + "/" + door.maxhp);
    			if(self.hprepaired >= 5){
    				self.bounty += 50;
    				self.hprepaired = 0;
    			}
    		}
    	}
    }
    
    DoorUse()
    {
    	while(1)
    	{
    		foreach(player in level.players)
    		{
    			if(DistanceSquared(self.origin, player.origin) <= Power(self.range, 2)){
    				if(player.team == "allies"){
    					if(player getCurrentWeapon() == "onemanarmy_mp"){
    						if(self.state == "broken"){
    							player.hint = "^1Door is Broken. ^7Press and Hold ^3[{+activate}] ^7to ^2Fix ^7the door";
    						} else {
    							if(self.hp < self.maxhp){
    								player.hint = "Press and Hold ^3[{+activate}] ^7to ^2Repair ^7the door";
    							}
    						}
    					} else {
    						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 getCurrentWeapon() == "onemanarmy_mp"){
    					if(player maps\mp\gametypes\_rank::checkPress("F")){
    						self notify( "triggerrepair" , player);
    					}
    				} else {
    					if(player UseButtonPressed()){
    						self notify( "triggeruse" , player);
    					}
    				}
    			}
    		}
    		wait .045;
    	}
    }
    
    DoorAttackWait()
    {
    	self notify("attackwait");
    	self endon("attackwait");
    	self endon("disconnect");
    	self endon("death");
    	wait 1;
    	self.attackeddoor = 0;
    }
    
    BombSiteUse(team, otherteam)
    {
    	while(1)
    	{
    		foreach(player in level.players)
    		{
    			if(DistanceSquared(self.origin, player.origin) <= Power(100, 2)){
    				if(!self.bombplanted){
    					if(player.team == otherteam){
    						player.hint = "Press and Hold ^3[{+activate}] ^7to ^2Plant ^7the bomb";
    					}
    				} else {
    					if(player.team == team){
    						player.hint = "Press and Hold ^3[{+activate}] ^7to ^2Defuse ^7the bomb";
    					}
    				}
    				if(player maps\mp\gametypes\_rank::checkPress("F")){
    					self notify( "triggeruse" , player);
    				}
    			}
    		}
    		wait .045;
    	}
    }
    
    BombThinkPlant(team, otherteam)
    {
    	self endon("defuse");
    	while(1)
    	{
    		self waittill ( "triggeruse" , player );
    		if(level.BombsPlanted == 1 && level.BombSiteSetting == 1){
    			continue;
    		}
    		if(player.team == team){
    			continue;
    		}
    		player.currentweapon = player getCurrentWeapon();
    		player giveWeapon("briefcase_bomb_mp");
    		player SwitchToWeapon("briefcase_bomb_mp");
    		wait .5;
    		if(!useHoldThink( player, &"MP_PLANTING_EXPLOSIVE", 6000 )){
    			player SwitchToWeapon(player.currentweapon);
    			continue;
    		}
    		player SwitchToWeapon(player.currentweapon);
    		trace = bulletTrace( player.origin + (0,0,20), player.origin - (0,0,2000), false, player );
    		tempAngle = randomfloat( 360 );
    		forward = (cos( tempAngle ), sin( tempAngle ), 0);
    		forward = vectornormalize( forward - vector_multiply( trace["normal"], vectordot( forward, trace["normal"] ) ) );
    		dropAngles = vectortoangles( forward );
    		wait 1;
    		self.bombmodel = spawn( "script_model", trace["position"] );
    		self.bombmodel.angles = dropAngles;
    		self.bombmodel setModel( "prop_suitcase_bomb" );
    		level.BombTimerIcon = createServerIcon( "hud_suitcase_bomb", 50, 50 );
    		level.BombTimerIcon setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", -90, -50 );
    		level.BombTimerIcon.alpha = 0.75;
    		level.BombTimerIcon.glow = 1;
    		level.BombTimerIcon.glowColor = ( 1, 1, 0 );
    		level.BombTimerIcon.glowAlpha = 1;
    		level.BombTimer = createServerTimer("objective", 1.25);
    		level.BombTimer setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", -90, -65 );
    		level.BombTimer.foreground = true;
    		level.BombTimer.glow = 1;
    		level.BombTimer.glowColor = ( 1, 1, 0 );
    		level.BombTimer.glowAlpha = 1;
    		level.BombTimer SetTenthsTimer(30);
    		level.BombsPlanted++;
    		leaderDialog( "bomb_planted" );
    		player playSound( "mp_bomb_plant" );
    		level thread teamPlayerCardSplash( "callout_bombplanted", player );
    		self maps\mp\_entityheadIcons::setHeadIcon( team, "waypoint_defuse_a", (0,0,44), 14, 14 );
    		self maps\mp\_entityheadIcons::setHeadIcon( otherteam, "waypoint_defend_a", (0,0,44), 14, 14 );
    		self.bombplanted = true;
    		self.bombmodel thread playTickingSound(30);
    		self thread BombThinkDefuse(team, otherteam);
    		TimerWait(30);
    		self notify("explode");
    		self.bombmodel notify("stop_ticking");
    		level.BombTimerIcon destroy();
    		level.BombTimer destroy();
    		self.bombplanted = false;
    		self.bombmodel hide();
    		self.bombmodel thread BombExplosion();
    		self.bombmodel delete();
    		self maps\mp\_entityheadIcons::setHeadIcon( team, "waypoint_defend_a", (0,0,44), 14, 14 );
    		self maps\mp\_entityheadIcons::setHeadIcon( otherteam, "waypoint_target_a", (0,0,44), 14, 14 );
    	}
    }
    
    BombThinkDefuse(team, otherteam)
    {
    	self endon("explode");
    	while(1)
    	{
    		self waittill ( "triggeruse" , player );
    		if(player.team == otherteam){
    			continue;
    		}
    		player.currentweapon = player getCurrentWeapon();
    		player giveWeapon("briefcase_bomb_mp");
    		player SwitchToWeapon("briefcase_bomb_mp");
    		self.bombmodel hide();
    		wait .5;
    		if(!useHoldThink( player, &"MP_DEFUSING_EXPLOSIVE", 6000 )){
    			player SwitchToWeapon(player.currentweapon);
    			self.bombmodel show();
    			continue;
    		}
    		player SwitchToWeapon(player.currentweapon);
    		leaderDialog( "bomb_defused" );
    		level thread teamPlayerCardSplash( "callout_bombdefused", player );
    		self notify("defuse");
    		level.BombsPlanted--;
    		self.bombplanted = false;
    		self thread BombThinkPlant(team, otherteam);
    		self.bombmodel notify("stop_ticking");
    		level.BombTimerIcon destroy();
    		level.BombTimer destroy();
    		self.bombmodel delete();
    		self maps\mp\_entityheadIcons::setHeadIcon( team, "waypoint_defend_a", (0,0,44), 14, 14 );
    		self maps\mp\_entityheadIcons::setHeadIcon( otherteam, "waypoint_target_a", (0,0,44), 14, 14 );
    		return;
    	}
    }
    
    BombExplosion()
    {
    	level.BombsPlanted--;
    	level.BombsExploded++;
    	explosionOrigin = self.origin;
    	RadiusDamage( explosionOrigin, 1500, 500, 20 );
    	rot = randomfloat(360);
    	level._effect["cloud"] = loadfx( "explosions/emp_flash_mp" );
    	level._effect["bombexplosion"] = loadfx("explosions/tanker_explosion");
    	level._effect["explode"]["medium"] = loadfx ("explosions/aerial_explosion");
    	level._effect["explode"]["large"] = loadfx ("explosions/aerial_explosion_large");
    	playFx( level._effect["cloud"], explosionOrigin+(0,0,200));
    	PlayRumbleOnPosition( "grenade_rumble", explosionOrigin );
    	earthquake( 0.75, 2.0, explosionOrigin, 5000 );
    	level thread playSoundinSpace( "exp_suitcase_bomb_main", explosionOrigin );
    	wait 0.0001;
    	for(t = 0; t < 360; t += 36){
    		x = 500 * Cos(t);
    		y = 500 * Sin(t);
    		PlayFx( level._effect["bombexplosion"], explosionOrigin + (x,y,300), (0,0,1), (cos(rot),sin(rot),0) );
    		PlayFx( level._effect["explode"]["medium"], explosionOrigin + (x,y,50), (0,0,1), (cos(rot),sin(rot),0) );
    		PlayFx( level._effect["explode"]["large"], explosionOrigin + (0-x,0-y,50), (0,0,1), (cos(rot),sin(rot),0) );
    		x = 1000 * Cos(t+18);
    		y = 1000 * Sin(t+18);
    		PlayFx( level._effect["bombexplosion"], explosionOrigin + (x,y,150), (0,0,1), (cos(rot),sin(rot),0) );
    		PlayFx( level._effect["explode"]["large"], explosionOrigin + (x,y,50), (0,0,1), (cos(rot),sin(rot),0) );
    		PlayFx( level._effect["explode"]["medium"], explosionOrigin + (0-x,0-y,50), (0,0,1), (cos(rot),sin(rot),0) );
    		wait 0.0001;
    	}
    }
    
    KillBelow(z)
    {
    	for(;;)
    	{
    		foreach(player in level.players)
    		{
    			if(player.origin[2] < z){
    				RadiusDamage(player.origin,100,999999,999999);
    			}
    			wait .1;
    		}
    		wait .15;
    	}
    }
    
    ResetDoors(open, hp)
    {
    	while(1)
    	{
    		level waittill("RESETDOORS");
    		self.hp = hp;
    		self MoveTo(open, level.doorwait);
    		self.state = "open";
    	}
    }
    
    ResetCluster(pos, radius)
    {
    	wait 5;
    	self RotateTo(((randomInt(36)*10), (randomInt(36)*10), (randomInt(36)*10)), 1);
    	level waittill("RESETCLUSTER");
    	self thread CreateCluster(1, pos, radius);
    	self delete();
    }
    
    roundUp( floatVal )
    {
    	if ( int( floatVal ) != floatVal )
    	return int( floatVal+1 );
    	else
    	return int( floatVal );
    }
    
    Power( number, power )
    {
    	returnnumber = 1;
    	for(i = 0; i < power; i++){
    		returnnumber *= number;
    	}
    	return returnnumber;
    }
    
    useHoldThink( player, string, useTime) 
    {
    	player playerLinkTo( self );
    	player playerLinkedOffsetEnable();
    	
    	self.curProgress = 0;
    	self.inUse = true;
    	self.useRate = 0;
    	
    	if ( isDefined( useTime ) )
    	self.useTime = useTime;
    	else
    	self.useTime = 3000;
    	
    	player thread personalUseBar( self, string );
    
    	result = useHoldThinkLoop( player );
    	assert ( isDefined( result ) );
    	
    	if ( isAlive( player ) )
    	{
    		player unlink();
    	}
    	
    	if ( !isDefined( self ) )
    	return false;
    
    	self.inUse = false;
    	self.curProgress = 0;
    
    	return ( result );
    }
    
    personalUseBar( object, string )
    {
    	self endon( "disconnect" );
    	
    	useBar = createPrimaryProgressBar( -25 );
    	useBarText = createPrimaryProgressBarText( -25 );
    	useBarText setText( string );
    
    	lastRate = -1;
    	while ( isReallyAlive( self ) && isDefined( object ) && object.inUse && !level.gameEnded )
    	{
    		if ( lastRate != object.useRate )
    		{
    			if( object.curProgress > object.useTime)
    			object.curProgress = object.useTime;
    			
    			useBar updateBar( object.curProgress / object.useTime, (1000 / object.useTime) * object.useRate );
    
    			if ( !object.useRate )
    			{
    				useBar hideElem();
    				useBarText hideElem();
    			}
    			else
    			{
    				useBar showElem();
    				useBarText showElem();
    			}
    		}	
    		lastRate = object.useRate;
    		wait ( 0.05 );
    	}
    	
    	useBar destroyElem();
    	useBarText destroyElem();
    }
    
    useHoldThinkLoop( player )
    {
    	while( !level.gameEnded && isDefined( self ) && isReallyAlive( player ) && player useButtonPressed() && self.curProgress < self.useTime )
    	{
    		self.curProgress += (50 * self.useRate);
    		
    		if ( isDefined(self.objectiveScaler) )
    		self.useRate = 1 * self.objectiveScaler;
    		else
    		self.useRate = 1;
    
    		if ( self.curProgress >= self.useTime )
    		return ( isReallyAlive( player ) );
    		
    		wait 0.05;
    	} 
    	
    	return false;
    }
    
    TimerWait(Duration)
    {
    	level endon( "game_ended" );
    	level endon( "bomb_defused" );
    	
    	maps\mp\gametypes\_hostmigration::waitLongDurationWithGameEndTimeUpdate( Duration );
    }
    
    playTickingSound(Duration)
    {
    	self endon("death");
    	self endon("stop_ticking");
    	level endon("game_ended");
    	
    	time = Duration;
    	
    	while(1)
    	{
    		self playSound( "ui_mp_suitcasebomb_timer" );
    		
    		if ( time > 10 )
    		{
    			time -= 1;
    			wait 1;
    		}
    		else if ( time > 4 )
    		{
    			time -= .5;
    			wait .5;
    		}
    		else if ( time > 1 )
    		{
    			time -= .4;
    			wait .4;
    		}
    		else
    		{
    			time -= .3;
    			wait .3;
    		}
    		maps\mp\gametypes\_hostmigration::waitTillHostMigrationDone();
    	}
    }
    
    Afghan()
    {
    	CreateRamps((2280, 1254, 142), (2548, 1168, 33));
    	CreateDoors((1590, -238, 160), (1590, -168, 160), (90, 0, 0), 2, 2, 5, 50);
    	CreateDoors((1938, -125, 160), (1938, -15, 160), (90, 0, 0), 4, 2, 15, 75);
    	CreateDoors((2297, 10, 160), (2297, -100, 160), (90, 0, 0), 4, 2, 10, 75);
    	CreateDoors((525, 1845, 162), (585, 1845, 162), (90, 90, 0), 2, 2, 5, 50);
    	CreateDoors((-137, 1380, 226), (-137, 1505, 226), (90, 0, 0), 4, 2, 15, 75);
    	CreateDoors((820, 1795, 165), (820, 1495, 165), (90, 0, 0), 12, 2, 40, 100);
    	CreateDoors((2806, 893, 210), (2806, 806, 210), (90, 0, 0), 3, 2, 10, 50);
    	CreateElevator((-609, -760, -141), (-5143, 9819, -1378), (0, 0, 0));
    	CreateElevator((1615, 13183, -434), (-212, 2582, -55), (0, 180, 0));
    	CreateElevator((1653, 587, 108), (-1647, 951, -863), (0, 90, 0));
    	CreateElevator((133, 3169, -752), (1999, 1947, -5), (0, 270, 0));
    	CreateElevator((-29, 10786, -31231), (-5143, 9819, -1378), (0, 0, 0));
    	mgTurret1 = spawnTurret( "misc_turret", (866, 12649, -428), "pavelow_minigun_mp" ); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret1.angles = (0, 180, 0);
    	mgTurret2 = spawnTurret( "misc_turret", (-1810, 2348, -779), "pavelow_minigun_mp" ); 
    	mgTurret2 setModel( "weapon_minigun" );
    	mgTurret2.angles = (0, 270, 0);
    
    }
    
    Derail()
    {
    	CreateElevator((-110, 2398, 124), (-125, 2263, 333), (0, 270, 0));
    	CreateBlocks((-240, 1640, 422), (0, 90, 0));
    	CreateBlocks((-270, 1640, 422), (0, 90, 0));
    	CreateBlocks((-270, 1585, 422), (0, 90, 0));
    	CreateBlocks((-270, 1530, 422), (0, 90, 0));
    	CreateBlocks((-270, 1475, 422), (0, 90, 0));
    	CreateBlocks((-270, 1420, 422), (0, 90, 0));
    	CreateBlocks((-270, 1365, 422), (0, 90, 0));
    	CreateBlocks((-270, 1310, 422), (0, 90, 0));
    	CreateBlocks((-270, 1255, 422), (0, 90, 0));
    	CreateBlocks((-970, 3018, 138), (0, 90, 0));
    	CreateBlocks((-985, 3018, 148), (0, 90, 0));
    	CreateBlocks((-1000, 3018, 158), (0, 90, 0));
    	CreateBlocks((-1015, 3018, 168), (0, 90, 0));
    	CreateBlocks((-1030, 3018, 178), (0, 90, 0));
    	CreateBlocks((-1045, 3018, 188), (0, 90, 0));
    	CreateBlocks((-1060, 3018, 198), (0, 90, 0));
    	CreateBlocks((-1075, 3018, 208), (0, 90, 0));
    	CreateBlocks((-1090, 3018, 218), (0, 90, 0));
    	CreateBlocks((-1105, 3018, 228), (0, 90, 0));
    	CreateBlocks((-1120, 3018, 238), (0, 90, 0));
    	CreateBlocks((-1135, 3018, 248), (0, 90, 0));
    	CreateRamps((-124, 2002, 437), (-124, 2189, 332));
    	CreateDoors((400, 1486, 128), (400, 1316, 128), 90, 0, 0, 6, 2, 30, 100);
    	CreateDoors((-61, 755, 128), (-161, 755, 128), 90, 90, 0, 3, 2, 20, 75);
    	mgTurret1 = spawnTurret( "misc_turret", (4, 1566, 663), "pavelow_minigun_mp" );
    	mgTurret1.angles = (0, 45, 0); 
    	mgTurret1 setModel( "weapon_minigun" );
    }
    
    Estate()
    {
    	CreateBlocks((-2378, 782, -130), (90, 0, 0));
    	CreateBlocks((-2388, 823, -130), (90, 0, 0));
    	CreateBlocks((-2398, 863, -130), (90, 0, 0));
    	CreateBlocks((-1098, 2623, 37), (90, 0, 0));
    	CreateBlocks((-3227, 3483, -101), (90, 0, 0));
    	CreateBlocks((-371, 919, 245), (0, 100, 90));
    	CreateBlocks((-383, 991, 245), (0, 100, 90));
    	CreateBlocks((-371, 919, 275), (0, 100, 90));
    	CreateBlocks((-383, 991, 275), (0, 100, 90));
    	CreateBlocks((-371, 919, 305), (0, 100, 90));
    	CreateBlocks((-383, 991, 305), (0, 100, 90));
    	CreateBlocks((-371, 919, 335), (0, 100, 90));
    	CreateBlocks((-383, 991, 335), (0, 100, 90));
    	CreateBlocks((-349, 1115, 245), (0, 50, 90));
    	CreateBlocks((-302, 1166, 245), (0, 50, 90));
    	CreateBlocks((-349, 1115, 275), (0, 50, 90));
    	CreateBlocks((-302, 1166, 275), (0, 50, 90));
    	CreateBlocks((-349, 1115, 305), (0, 50, 90));
    	CreateBlocks((-302, 1166, 305), (0, 50, 90));
    	CreateBlocks((-349, 1115, 335), (0, 50, 90));
    	CreateBlocks((-302, 1166, 335), (0, 50, 90));
    	CreateBlocks((-371, 919, 395), (0, 100, 90));
    	CreateBlocks((-383, 991, 395), (0, 100, 90));
    	CreateBlocks((-371, 919, 425), (0, 100, 90));
    	CreateBlocks((-383, 991, 425), (0, 100, 90));
    	CreateBlocks((-371, 919, 455), (0, 100, 90));
    	CreateBlocks((-383, 991, 455), (0, 100, 90));
    	CreateBlocks((-371, 919, 485), (0, 100, 90));
    	CreateBlocks((-383, 991, 485), (0, 100, 90));
    	CreateBlocks((-349, 1115, 395), (0, 50, 90));
    	CreateBlocks((-302, 1166, 395), (0, 50, 90));
    	CreateBlocks((-349, 1115, 425), (0, 50, 90));
    	CreateBlocks((-302, 1166, 425), (0, 50, 90));
    	CreateBlocks((-349, 1115, 455), (0, 50, 90));
    	CreateBlocks((-302, 1166, 455), (0, 50, 90));
    	CreateBlocks((-349, 1115, 485), (0, 50, 90));
    	CreateBlocks((-302, 1166, 485), (0, 50, 90));
    	CreateBlocks((-55, 1231, 245), (0, -20, 90));
    	CreateBlocks((8, 1217, 245), (0, -20, 90));
    	CreateBlocks((102, 1188, 245), (0, -20, 90));
    	CreateBlocks((162, 1168, 245), (0, -20, 90));
    	CreateBlocks((-55, 1231, 275), (0, -20, 90));
    	CreateBlocks((8, 1217, 275), (0, -20, 90));
    	CreateBlocks((102, 1188, 275), (0, -20, 90));
    	CreateBlocks((162, 1168, 275), (0, -20, 90));
    	CreateBlocks((-3200, 998, -143), (90, 0, 0));
    	CreateBlocks((-3200, 1028, -143), (90, 0, 0));
    	CreateBlocks((-3200, 1058, -143), (90, 0, 0));
    	CreateBlocks((-3200, 1088, -143), (90, 0, 0));
    	CreateBlocks((-3200, 1118, -143), (90, 0, 0));
    	CreateBlocks((-3181, 3124, -218), (90, 0, 0));
    	CreateBlocks((-3211, 3124, -218), (90, 0, 0));
    	CreateBlocks((-3241, 3124, -218), (90, 0, 0));
    	CreateBlocks((-3181, 3124, -163), (90, 0, 0));
    	CreateBlocks((-3211, 3124, -163), (90, 0, 0));
    	CreateBlocks((-3241, 3124, -163), (90, 0, 0));
    	CreateBlocks((-2622, 3676, -106), (90, 0, 0));
    	CreateBlocks((-3741, 3245, -200), (90, 0, 0));
    	CreateBlocks((-3821, 2170, -250), (90, 0, 0));
    	CreateBlocks((-3791, 2170, -250), (90, 0, 0));
    	CreateBlocks((-3761, 2170, -250), (90, 0, 0));
    	CreateBlocks((-3821, 2170, -195), (90, 0, 0));
    	CreateBlocks((-3791, 2170, -195), (90, 0, 0));
    	CreateBlocks((-3761, 2170, -195), (90, 0, 0));
    	CreateBlocks((-471, -126, 193), (0, 0, 90));
    	CreateBlocks((-547, -104, 193), (0, 0, 90));
    	CreateBlocks((-625, -84, 193), (0, 0, 90));
    	CreateBlocks((-702, -61, 193), (0, 0, 90));
    	CreateBlocks((-778, -38, 193), (0, 0, 90));
    	CreateBlocks((-830, -13, 193), (0, 0, 90));
    	CreateBlocks((1333, -92, 210), (0, 0, 90));
    	CreateRamps((1025, 3563, 291), (692, 3563, 146));
    	CreateDoors((489, 1321, 212), (409, 1341, 212), 90, undefined, 0, 4, 2, 20, 75);
    	CreateDoors((421, 861, 212), (461, 1011, 212), 90, undefined, 0, 4, 2, 20, 75);
    	CreateDoors((64, 680, 212), (184, 640, 212), 90, undefined, 0, 6, 2, 30, 100);
    	CreateDoors((706, 575, 185), (791, 545, 185), 0, -15, 0, 6, 1, 25, 75);
    	CreateDoors((24, 477, 341), (48, 552, 341), 90, undefined, 0, 3, 2, 5, 50);
    }
    
    Favela()
    {
        CreateElevator((-321, 2633, 335), (1985, 816 , 500), (0, 0, 0));     
        CreateElevator((1993, 962, 500), (1824, -525, 728), (0, 0, 0)); 
        CreateElevator((1648, -1024, 728), (5047, -2867, 216), (0, 0, 0)); 
        CreateElevator((763, -1983, 152), (404, 1677, 595), (0, 0, 0)); 
        CreateGrids((2809, -2212, 239), (2809, -2675, 230), (0, 0, 0)); 
        CreateWalls((2809, -2212, 143), (2236, -2212, 240)); 
        CreateWalls((2809, -2212, 143), (2809, -2400, 180)); 
        CreateWalls((2809, -2212, 220), (2809, -2675, 240)); 
        Createwalls((2236, -2212, 143), (2236, -2675, 180)); 
        CreateWalls((2236, -2675, 143), (2236, -2212, 240)); 
        CreateWalls((2809, -2675, 143), (2809, -2550, 180)); 
        CreateWalls((2809, -2675, 143), (2236, -2675, 240)); 
        CreateRamps((2650, -2600, 143), (2236, -2600, 220)); 
        CreateDoors((2780, -2300, 143), (2809, -2485, 143), (0, 0, 0), 7, 2, 15, 50); 
        CreateDoors((-64, 277, 198), (-64, 337, 198), (90, -6, 0), 2, 2, 5, 50); 
        CreateDoors((-438, 987, 310), (-438, 1047, 310), (90, 4, 0), 2, 2, 5, 50); 
        CreateDoors((-625, -238, 174), (-625, -298, 174), (90, -9, 0), 2, 2, 5, 50); 
        CreateDoors((893, 1056, 368), (833, 1056, 368), (90, 90, 0), 2, 2, 5, 50); 
        CreateElevator((-910, -1463, 214.365), (9946, 18430, 13851)); 
        CreateDoors((80, 450, 198), (145, 450, 198), (90, 90, 0), 2, 2, 5, 50); 
        CreateElevator((-1982, 3943, 317.365), (-1841, 3855, 572)); 
        CreateRamps((-1499, 3064, 584), (-1323, 3254, 584)); 
        CreateElevator((9359, 18435, 13635), (-1841, 3855, 572));
    
    	
    }
    
    HighRise()
    {
    	CreateElevator((-1230, 7420, 2780), (-2830, 20000, 2070), (0, 0, 0));
    	CreateBlocks((-2723, 5162, 3030), (90, 0, 0));
    	CreateBlocks((-2753, 5162, 3030), (90, 0, 0));
    	CreateBlocks((-2723, 5132, 3030), (90, 0, 0));
    	CreateDoors((-1550, 5875, 2967), (-1550, 5649, 2967), 0, 0, 0, 7, 1, 20, 100);
    	CreateDoors((-1185, 5900, 2967), (-1185, 6117, 2967), 0, 0, 0, 7, 1, 20, 100);
    	CreateWalls((-710, 19875, 2185), (-710, 20170, 2215));
    	CreateWalls((-460, 19875, 2185), (-710, 19875, 2215));
    	CreateWalls((-460, 20170, 2185), (-460, 19875, 2215));
    	CreateWalls((-710, 20170, 2185), (-460, 20170, 2215));
    	CreateWalls((-710, 19875, 2305), (-710, 20170, 2335));
    	CreateWalls((-460, 19875, 2305), (-710, 19875, 2335));
    	CreateWalls((-460, 20170, 2305), (-460, 19875, 2335));
    	CreateWalls((-710, 20170, 2305), (-460, 20170, 2335));
    	CreateWalls((-710, 19875, 2425), (-710, 20170, 2455));
    	CreateWalls((-460, 19875, 2425), (-710, 19875, 2455));
    	CreateWalls((-460, 20170, 2425), (-460, 19875, 2455));
    	CreateWalls((-710, 20170, 2425), (-460, 20170, 2455));
    	CreateWalls((-710, 19875, 2545), (-710, 20170, 2575));
    	CreateWalls((-460, 19875, 2545), (-710, 19875, 2575));
    	CreateWalls((-460, 20170, 2545), (-460, 19875, 2575));
    	CreateWalls((-710, 20170, 2545), (-460, 20170, 2575));
    	CreateRamps((-680, 20130, 2120), (-680, 19910, 2060));
    	CreateRamps((-490, 20130, 2170), (-640, 20130, 2120));
    	CreateRamps((-490, 19910, 2220), (-490, 20090, 2170));
    	CreateRamps((-680, 19910, 2270), (-530, 19910, 2220));
    	CreateRamps((-680, 20130, 2320), (-680, 19940, 2270));
    	CreateRamps((-490, 20130, 2370), (-640, 20130, 2320));
    	CreateRamps((-490, 19910, 2420), (-490, 20090, 2370));
    	CreateRamps((-680, 19910, 2470), (-530, 19910, 2420));
    	CreateRamps((-680, 20130, 2520), (-680, 19940, 2470));
    	CreateRamps((-490, 20130, 2570), (-640, 20130, 2520));
    	CreateBridge((-1400, 20250, 1870), (-2000, 20250, 1870));
    	CreateBridge((-1400, 20350, 1870), (-2000, 20350, 1870));
    	CreateBridge((-1400, 20450, 1870), (-2000, 20450, 1870));
    	CreateKillIfBelow(1750);
    	CreateRamps((370, 6382, 2804), (596, 6382, 2957));
    }
    
    Invasion()
    {
    	CreateElevator((1039,-3260,284),(-5367,1830,212));
    	CreateGrids((-5396,1616,163),(-5984,1923,163));
    	CreateWalls((-5640,1596,177),(-6004,1597,350));
    	CreateWalls((-6020,1598,177),(-6016,1946,350));
    	CreateWalls((-6016,1946,177),(-5635,1942,350));
    	CreateDoors((-5630,1776,177),(-5630,1556,177),(90,0,0),7,2,20,125);
    	CreateRamps((-5943,1626,177),(-5670,1633,286));
    	CreateGrids((-6018,1944,300),(-5664,1680,300));
    	CreateWalls((-5621,1912,262),(-5631,1600,350));
    	CreateWalls((-5336,1602,214),(-5321,1935,250));
    	CreateRamps((-5642,1947,347),(-5619,2241,466));
    	CreateGrids((-5617,2255,466),(-5392,2344,466));
    	CreateGrids((-5581,2242,466),(-5394,2242,490));
    	mgTurret1 = spawnTurret( "misc_turret", (-5633,1811,347), "pavelow_minigun_mp" ); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret1.angles = (0, 360, 0);
    	mgTurret2 = spawnTurret( "misc_turret", (-5467,2247,504), "pavelow_minigun_mp" ); 
    	mgTurret2 setModel( "weapon_minigun" );
    	mgTurret2.angles = (0, 240, 0);
    }
    
    Karachi()
    {
    	CreateElevator((-2265, 230, 0), (-2385, 106, 5), (0, 180, 0));
    	CreateElevator((-2025, -250, -5), (-2265, -70, 10), (0, 90, 0));
    	CreateBlocks((-4100, 1380, 25), (90, 0, 0));
    	CreateBlocks((-3135, 670, 35), (0, 0, -45));
    	CreateBlocks((-3850, -125, 44), (0, 0, 0));
    	CreateBlocks((-4385, -55, 223), (0, 90, 0));
    	CreateBlocks((-5125, -30, 520), (0, 90, 90));
    	CreateBlocks((-5125, -30, 580), (0, 90, 90));
    	CreateBlocks((-5125, -30, 640), (0, 90, 90));
    	CreateBlocks((-5125, -30, 700), (0, 90, 90));
    	CreateBlocks((-5125, -30, 760), (0, 90, 90));
    	CreateBlocks((-5125, -30, 820), (0, 90, 90));
    	CreateBlocks((-5125, -30, 880), (0, 90, 90));
    	CreateBlocks((-5125, -30, 940), (0, 90, 90));
    	CreateBlocks((-4950, 78, 820), (90, 0, 0));
    	CreateBlocks((-4815, 68, 820), (90, 0, 0));
    	CreateBlocks((-3510, -105, 450), (90, 0, 0));
    	CreateBlocks((-5040, 65, 690), (90, 0, 0));
    	CreateBlocks((-3320, -80, 660), (90, 0, 0));
    	CreateWalls((-5110, 25, 45), (-5040, 755, 105));
    	CreateWalls((-5110, 25, 155), (-5040, 755, 185));
    	CreateWalls((-5110, 25, 235), (-5040, 755, 265));
    	CreateWalls((-5110, 25, 315), (-5040, 755, 345));
    	CreateWalls((-5110, 25, 395), (-5040, 755, 425));
    	CreateWalls((-5110, 25, 475), (-5040, 755, 505));
    	CreateWalls((-5110, 25, 555), (-5040, 755, 585));
    	CreateWalls((-2525, -1000, 10), (-2560, -880, 100));
    	CreateRamps((-4180, -115, 285), (-4155, 205, 20));
    	CreateRamps((-2480, 605, 176), (-2480, 405, 26));
    	CreateRamps((-2835, 1060, 176), (-2825, 835, 24));
    	CreateRamps((-4100, 665, 224), (-4100, 385, 17));
    	CreateRamps((-4010, -150, 404), (-4155, -150, 258));
    	CreateRamps((-2825, 805, 312), (-3065, 805, 176));
    	CreateRamps((-4670, -55, 496), (-4405, -55, 233));
    	CreateRamps((-4930, 755, 224), (-4950, 550, 37));
    	CreateRamps((-4340, 600, 632), (-4870, 730, 224));
    	CreateRamps((-4310, 593, 632), (-4060, 642, 496));
    	CreateRamps((-4695, -30, 745), (-5050, 0, 496));
    	CreateRamps((-3620, -105, 352), (-3620, -220, 288));
    	CreateRamps((-4358, -103, 673), (-4326, 575, 631));
    	CreateBridge((-3976, 640, 630), (-3976, 544, 635), (-3976, -100, 590));
    	CreateBridge((-3620, -105, 342), (-3580, 565, 375));
    	CreateGrids((-3310, -145, 90), (-2600, -145, 90), (0, 0, 0));
    	CreateGrids((-2820, 795, 310), (-2820, 620, 310), (0, 0, 0));
    	CreateGrids((-4375, -65, 227), (-4235, -65, 227), (0, 0, 0));
    }
    
    Quarry()
    {
    	CreateElevator((-5048,1663,-94),(-6982,-2524,748));
    	CreateGrids((-6471,-2338,748),(-6031,-2534,748));
    	CreateWalls((-6000,-2552,763),(-6001,-2332,950));
    	CreateWalls((-6001,-2332,763),(-6216,-2332,950));
    	CreateWalls((-6217,-2552,763),(-6005,-2552,950));
    	CreateRamps((-6054,-2512,763),(-6212,-2524,900));
    	CreateGrids((-6223,-2470,891),(-6023,-2352,891));
    	CreateWalls((-6248,-2344,906),(-6238,-2534,925));
    	CreateDoors((-6226,-2448,763),(-6226,-2448,963),(90,0,0),5,2,15,75);
    	mgTurret1 = spawnTurret( "misc_turret", (-6241,-2420,933), "pavelow_minigun_mp" ); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret1.angles = (0, 180, 0);
    }
    
    Rundown()
    {
    	CreateElevator((1986, -2364, 372), (1036, -2607, 340), (0, 180, 0));
    	CreateElevator((935, -3022, 341), (1583, -603, 344), (0, 180, 0));
    	CreateElevator((1980, -518, 329), (2497, 234, -125), (0, 180, 0));
    	CreateElevator((2330, 1224, -79), (1612, -184, -127), (0, 180, 0));
    	CreateElevator((-454, 1162, 25), (2616, -524, -127), (0, 180, 0));
    	CreateElevator((-695, -267, 184), (2616, -524, -127), (0, 180, 0));
    	CreateElevator((470, -39, -123), (2497, 234, -125), (0, 180, 0));
    	CreateElevator((-395, 1772, 174), (2497, 234, -125), (0, 180, 0));
    	CreateElevator((4234, 150, -127), (-447, -5, 60), (0, 180, 0));
    	CreateWalls((3465, 241, -127), (3123, 241, 0));
    	CreateWalls((3465, 241, -127), (3465, -127, 0));
    	CreateWalls((3123, 241, -20), (3123, -127, 0));
    	CreateWalls((3123, -127, -127), (3465, -127, 0));
    	CreateWalls((3123, 241, -127), (3123, 130, -85));
    	CreateWalls((3123, -127, -127), (3123, -10, -85));
    	CreateDoors((3160, 130, -127), (3123, 50, -127), (90, 0, 0), 4, 2, 15, 75);
    	CreateGrids((3465, 241, -10), (3505, -127, -10), (0, 0, 0));
    	CreateGrids((3160, 241, -10), (3120, -127, -10), (0, 0, 0));
    	CreateGrids((3120, 241, -10), (3505, 280, -10), (0, 0, 0));
    	CreateGrids((3120, -127, -10), (3505, -170, -10), (0, 0, 0));
    	CreateRamps((3250, 180, -127), (3430, 180, -10));
    	CreateWalls((4882, -681, -127), (4882, 295, 20));
    	/* orginal */
    	CreateDoors((360, -1462, 202), (300, -1342, 202), (90, 25, 0), 3, 2, 10, 75);
    	CreateDoors((460, -1420, 206), (400, -1300, 206), (90, 25, 0), 3, 2, 10, 75);
    	CreateDoors((30, -1630, 186), (-30, -1510, 186), (90, 25, 0), 4, 2, 15, 75);
    	CreateDoors((-280, -1482, 186), (-220, -1602, 186), (90, 25, 0), 4, 2, 15, 75);
    	CreateBlocks((385, -1660, 40), (0, 120, 90));
    	CreateRamps((-597, -280, 212), (-332, -522, 180));
    	CreateRamps((726, -389, 142), (560, -373, 13));
    	CreateRamps((2250, -1155, 306), (1905, -876, 200));
    	CreateRamps((850, -3125, 312), (535, -3125, 189));
    	CreateRamps((1775, 450, 144), (1775, 735, -5));
    }
    
    Rust()
    {
    	CreateRamps((521.841, 1125.9, 243.875), (517.157, 1818.58, 243.886));
    	CreateRamps((568.592, 1124.03, 243.817), (573.799, 1828.1, 237.097));
    	CreateRamps((621.096, 1126.31, 243.816), (626.324, 1830.77, 243.822));
    	CreateRamps((667.879, 1126.05, 243.87), (673.198, 1846.63, 237.605));
    	CreateWalls((703.253, 1329.73, 273.711), (550.362, 1333.88, 273.714));
    	CreateDoors((635.245, 1330.67, 258.504), (520.261, 1333.75, 258.503), (90, 89.4122, 0), 2, 2, 15, 75);
    	CreateWalls((703.871, 1328.04, 300.536), (574.67, 1331.92, 300.536));
    	CreateRamps((520.911, 1334.76, 343.928), (513.311, 1813.13, 344.122));
    	CreateRamps((622.737, 1341.69, 343.929), (625.865, 1840.98, 340.414));
    	CreateRamps((570.875, 1352.64, 343.93), (573.182, 1830.71, 343.601));
    	CreateRamps((681.518, 1649.15, 234.19), (678.666, 1387.22, 346.744));
    	CreateRamps((483.745, 1528.66, 331.071), (44.645, 1519.44, 666.299));
    	CreateRamps((44.645, 1519.44, 666.299), (38.944, 1004.38, 667.799));
    	CreateRamps((38.944, 1004.38, 667.799), (670.669, 935, 398.883));
    	CreateElevator((554.44, 8.69104, -215.674), (742.075, 948.856, 268.125));
    	CreateElevator((565.309, 1808.88, 358.241), (1422.46, 52.9624, 16.125));
    	CreateElevator((-296.99, 528.053, -169.022), (534.502, 1052.44, 266.211));
    
    }
    
    Scrapyard()
    }
    	CreateElevator((-1750, 383, -127), (-5180, 4299, 2288), (0, 45, 0));
    	CreateElevator((-3643, 6478, 2475), (-4563, 6550, 2560), (0, 180, 0));
    	CreateGrids((-5300, 6400, 2545), (-4500, 6700, 2545), (0, 0, 0));
    	CreateDoors((-4950, 6250, 2580), (-4950, 6550, 2580), 90, 0, 0, 12, 2, 10, 300);
    	CreateRamps((-5239, 6456, 2540), (-5239, 6674, 2683));
    	CreateGrids((-5239, 6691, 2685), (-4972, 6691, 2685), (0, 0, 0));
    	CreateGrids((-4972, 6691, 2685), (-4972, 6356, 2685), (0, 0, 0));
    	CreateElevator((-4963, 6363, 2700), (-662, 654, 73), (0, 0, 0));
    	CreateBlocks((420, 1636, 174), (0, 0, 0));
    	CreateBlocks((475, 1636, 174), (0, 0, 0));
    	CreateBlocks((530, 1636, 174), (0, 0, 0));
    	CreateBlocks((585, 1636, 174), (0, 0, 0));
    	CreateBlocks((640, 1636, 174), (0, 0, 0));
    	CreateBlocks((695, 1636, 174), (0, 0, 0));
    	CreateBlocks((750, 1636, 174), (0, 0, 0));
    	CreateBlocks((805, 1636, 174), (0, 0, 0));
    	CreateBlocks((860, 1636, 174), (0, 0, 0));
    	CreateBlocks((420, 1606, 174), (0, 0, 0));
    	CreateBlocks((475, 1606, 174), (0, 0, 0));
    	CreateBlocks((530, 1606, 174), (0, 0, 0));
    	CreateBlocks((585, 1606, 174), (0, 0, 0));
    	CreateBlocks((640, 1606, 174), (0, 0, 0));
    	CreateBlocks((695, 1606, 174), (0, 0, 0));
    	CreateBlocks((750, 1606, 174), (0, 0, 0));
    	CreateBlocks((805, 1606, 174), (0, 0, 0));
    	CreateBlocks((860, 1606, 174), (0, 0, 0));
    	CreateBlocks((420, 1576, 174), (0, 0, 0));
    	CreateBlocks((475, 1576, 174), (0, 0, 0));
    	CreateBlocks((530, 1576, 174), (0, 0, 0));
    	CreateBlocks((585, 1576, 174), (0, 0, 0));
    	CreateBlocks((640, 1576, 174), (0, 0, 0));
    	CreateBlocks((695, 1576, 174), (0, 0, 0));
    	CreateBlocks((750, 1576, 174), (0, 0, 0));
    	CreateBlocks((805, 1576, 174), (0, 0, 0));
    	CreateBlocks((860, 1576, 174), (0, 0, 0));
    	CreateBlocks((-1541, -80, 1), (0, 90, -33.3));
    	CreateBlocks((-1517.7, -80, 16.3), (0, 90, -33.3));
    	CreateBlocks((-1494.4, -80, 31.6), (0, 90, -33.3));
    	CreateBlocks((-1471.1, -80, 46.9), (0, 90, -33.3));
    	CreateBlocks((-1447.8, -80, 62.2), (0, 90, -33.3));
    	CreateBlocks((-1424.5, -80, 77.5), (0, 90, -33.3));
    	CreateBlocks((-1401.2, -80, 92.8), (0, 90, -33.3));
    	CreateBlocks((-1377.9, -80, 108.1), (0, 90, -33.3));
    	CreateBlocks((-1354.6, -80, 123.4), (0, 90, -33.3));
    	CreateElevator((10, 1659, -72), (860, 1606, 194), (0, 180, 0));
    	CreateElevator((-276, 1567, -76), (-1176, 2033, -63), (0, 180, 0));
    	CreateElevator((-1176, 2222, -63), (-1758, -714, -31));
    	mgTurret1 = spawnTurret( "misc_turret", (-2662, 2247, -40), "pavelow_minigun_mp" );
    	mgTurret1.angles = (0, 0, 0); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret2 = spawnTurret( "misc_turret", (-2046, 2350, -40), "pavelow_minigun_mp" );
    	mgTurret2.angles = (0, 0, 0); 
    	mgTurret2 setModel( "weapon_minigun" );
    }
    
    Skidrow()
    {
    	CreateRamps((-1555.74, 1063.13, 120.125), (-1555.74, 1189.05, 120.125));
    	CreateRamps((-1555.88, 1063.13, 135.25), (-1556.3, 1191.56, 135.25));
    	CreateRamps((-1555.96, 1063.13, 150.375), (-1556.31, 1195.4, 150.375));
    	CreateRamps((-1555.4, 1058.59, 215.116), (-1554.27, 1196.77, 215.036));
    	CreateDoors((-1701.69, 1250.48, 118.125), (-1557.03, 1248.83, 118.125), (90, 0.368042, 0), 3, 2, 15, 75);
    	CreateRamps((-2036.28, 1176.02, 120.125), (-1810.12, 1176.03, 220.791));
    	CreateRamps((-1793.29, 1168.8, 216.483), (-1779.75, 1311.86, 216.486));
    	CreateRamps((-1793.29, 1168.8, 216.483), (-1772.53, 1040.13, 216.492));
    	CreateBlocks((765.488, 1246.09, 118.125), (90, 0, 0));
    	CreateBlocks((-305.583, 1246.42, 118.125), (90, 0, 0));
    	CreateBlocks((204.77, 1072.46, 120.125), (90, 0, 0));
    	CreateBlocks((-820.893, 1101.96, 118.125), (90, 0, 0));
    	CreateBlocks((-1240.25, 1245.27, 118.125), (90, 0, 0));
    	CreateElevator((1083.5, -2107.28, 176.125), (1225.31, 1182.29, 120.125)); 
    	CreateElevator((-2256.44, 231.596, 16.125), (969.509, 1175.1, 120.125));
    	CreateElevator((-1578.81, -545.878, 2.96316), (1658.03, 1169.03, 120.125));
    	CreateBlocks((-1015.56, 23.7215, 179.125), (90, 0, 0));
    	CreateRamps((1855.53, 1373.44, 112.125), (1859.84, 976.125, 127.976)); 
    	CreateRamps((1856.1, 1359.58, 168.647), (1861.06, 976.125, 168.655));
    	CreateBlocks((1824.87, 1383.56, 163.757), (90, 0, 0));
    	CreateBlocks((1805.21, 1422.17, 176.341), (90, 0, 0));
    	mgTurret2 = spawnTurret( "misc_turret", (-1569.52, 1141.93, 178.131), "pavelow_minigun_mp" ); 
    	mgTurret2 setModel( "weapon_minigun" );
    	mgTurret2.angles = (0, 0.065918, 0);
    	CreateElevator((-2614.06, 1211.29, 120.125), (-5302.6, 902.179, 976.125));
    	CreateElevator((1328.47, -1678.15, 8.14823), (-2604.09, 1068.08, 120.125));
    	CreateRamps((-4616.82, 1464.13, 968.718), (-4625.6, 1687.88, 1017.97));
    	CreateRamps((-4712.13, 2936.13, 1023.01), (-4668.88, 3991.88, 1444.01));
    	CreateRamps((-5064.13, 4396.77, 1450.38), (-5346.79, 4383.72, 1219.45));
    	CreateRamps((-5912.87, 4856.14, 1212.97), (-5910.87, 5335.87, 1218.29));
    	CreateRamps((-6265.01, 5734.26, 1240.13), (-6759.88, 5752.55, 1476.05));
    	CreateRamps((-8103.88, 4860.2, 1464.15), (-7620, 5335.87, 1464.43));
    	CreateBlocks((214.819, 1104.61, 155.929), (90, 0, 0));
    	CreateBlocks((-300.407, 1217.31, 158.487), (90, 0, 0));
    	CreateBlocks((-818.82, 1182.95, 161.243), (90, 0, 0));
    }
    
    SubBase()
    {
    
    	CreateBlocks((-1506, 800, 123), (0, 0, 45));
    	CreateElevator((2247, 1571, 32), (-350, -3890, 0));
    	CreateWalls((-488, -3840, 0), (-215, -3840, 100));
    	CreateWalls((-410, -4350, 0), (-525, -4350, 100));
    	CreateWalls((-215, -4350, 0), (-300, -4350, 100));
    	CreateDoors((-270, -4350, 0), (-360, -4350, 0), (90, 180, 90), 3, 2, 20, 75);
    	CreateWalls((-410, -4750, 0), (-525, -4750, 100));
    	CreateWalls((-215, -4750, 0), (-300, -4750, 100));
    	CreateDoors((-270, -4750, 0), (-360, -4750, 0), (90, 180, 90), 3, 2, 20, 75);
    	CreateWalls((-410, -5650, 0), (-525, -5650, 100));
    	CreateWalls((-215, -5650, 0), (-300, -5650, 100));
    	CreateDoors((-270, -5650, 0), (-360, -5650, 0), (90, 180, 90), 3, 2, 20, 75);
    	CreateElevator((-350, -6400, 0), (-350, -6600, -100));
    	CreateElevator((-470, -6400, 0), (-470, -6600, -100));
    	CreateElevator((-240, -6400, 0), (1521, -2650, 0));
    	CreateWalls((1790, -4750, 0), (1490, -4750, 300));
    	CreateWalls((1470, -2550, 30), (1470, -4500, 60));
    	CreateWalls((1470, -4750, 0), (1470, -4500, 300));
    	CreateWalls((1790, -4500, 0), (1790, -4750, 300));
    	CreateWalls((1700, -4500, 0), (1790, -4500, 300));
    	CreateWalls((1470, -4500, 0), (1560, -4500, 300));
    	CreateDoors((1780, -4500, 0), (1620, -4500, 0), (90, 180, 90), 5, 2, 20, 75);
    	CreateGrids((1780, -4500, 110), (1580, -4750, 110), (0, 0, 0));
    	CreateRamps((1520, -4500, 100), (1520, -4680, 0));
    	CreateGrids((1700, -4500, 240), (1480, -4750, 240), (0, 0, 0));
    	CreateRamps((1750, -4550, 110), (1750, -4750, 240));
    	CreateElevator((1500, -4700, 240), (170, -580, 89));
    
    }
    
    Terminal()
    {
    	CreateElevator((1041, 5336, 192), (611, 2835, 410), (0, 90, 0));
    	CreateElevator((2859, 4529, 192), (3045, 4480, 250), (0, 0, 0));
    	CreateElevator((2975, 4080, 192), (2882, 4289, 55), (0, 180, 0));
    	CreateElevator((520, 7375, 192), (-898, 5815, 460), (0, -90, 0));
    	CreateElevator((-670, 5860, 460), (1585, 7175, 200), (0, 180, 0));
    	CreateElevator((-895, 4300, 392), (-895, 4300, 570), (0, 90, 0));
    	CreateWalls((-640, 4910, 390), (-640, 4685, 660));
    	CreateWalls((-1155, 4685, 390), (-1155, 4910, 660));
    	CreateWalls((-570, 5440, 460), (-640, 4930, 660));
    	CreateWalls((-1155, 4930, 460), (-1155, 5945, 660));
    	CreateWalls((-1155, 5945, 460), (-910, 5945, 660));
    	CreateWalls((-1105, 4665, 392), (-965, 4665, 512));
    	CreateWalls((-825, 4665, 392), (-685, 4665, 512));
    	CreateWalls((3375, 2715, 195), (3765, 3210, 245));
    	CreateWalls((4425, 3580, 195), (4425, 3230, 315));
    	CreateWalls((4425, 3580, 380), (4425, 3230, 440));
    	CreateWalls((2960, 2800, 379), (3250, 2800, 409));
    	CreateDoors((-705, 4665, 412), (-895, 4665, 412), 90, -90, 0, 4, 2, 20, 75);
    	CreateDoors((3860, 3305, 212), (3860, 3485, 212), 90, 0, 0, 6, 2, 15, 100);
    	CreateRamps((3620, 2415, 369), (4015, 2705, 192));
    	CreateGrids((4380, 2330, 360), (4380, 2980, 360), (0, 0, 0));
    	CreateBlocks((2675, 3470, 207), (90, 0, 0));
    	CreateGrids((1785, 2507, 120), (1610, 2418, 120), (0, 0, 0));
    	CreateWalls((4045, 3615, 382), (3700, 3615, 383));
    }
    
    Underpass()
    {
    	CreateElevator((-415, 3185, 392), (-1225, 3485, 1035), (0, 180, 0));
    	CreateBlocks((1110, 1105, 632), (90, 0, 0));
    	CreateBlocks((-3040, 3145, 1100), (90, 0, 0));
    	CreateBlocks((2444, 1737, 465), (90, 0, 0));
    	CreateWalls((-1100, 3850, 1060), (-1100, 3085, 1090));
    	CreateWalls((-1100, 3850, 1120), (-1100, 3085, 1150));
    	CreateWalls((-3030, 3453, 1040), (-3030, 3155, 1160));
    	CreateWalls((-3030, 3155, 1040), (-3330, 3155, 1160));
    	CreateWalls((-3330, 3155, 1040), (-3330, 3890, 1160));
    	CreateWalls((-3330, 3890, 1040), (-3030, 3890, 1160));
    	CreateWalls((-3030, 3155, 1190), (-3330, 3155, 1220));
    	CreateWalls((-3330, 3155, 1190), (-3330, 3890, 1220));
    	CreateWalls((-3330, 3890, 1190), (-3030, 3890, 1220));
    	CreateWalls((-3030, 3890, 1040), (-3030, 3592, 1160));
    	CreateWalls((-3030, 3890, 1150), (-3030, 3155, 1180));
    	CreateWalls((-3030, 3155, 1250), (-3330, 3155, 1295));
    	CreateWalls((-3330, 3155, 1250), (-3330, 3890, 1295));
    	CreateWalls((-3330, 3890, 1250), (-3030, 3890, 1295));
    	CreateWalls((-3030, 3890, 1250), (-3030, 3155, 1295));
    	CreateDoors((-3030, 3400, 1052), (-3030, 3522.5, 1052), 90, 180, 0, 4, 2, 20, 75);
    	CreateRamps((-3125, 3375, 1250), (-3125, 3210, 1120));
    	CreateRamps((-3100, 3855, 1125), (-3200, 3855, 1030));
    	CreateGrids((-3070, 3190, 1120), (-3070, 3855, 1120), (0, 0, 0));
    	CreateGrids((-3070, 3190, 1240), (-3070, 3855, 1240), (0, 0, 0));
    }
    
    Wasteland()
    {
    	CreateDoors((1344, -778, -33), (1344, -898, -33), 90, 0, 0, 5, 2, 15, 75);
    	CreateDoors((684, -695, -16), (684, -825, -16), 90, 0, 0, 5, 2, 15, 75);
    	CreateDoors((890, -120, -12), (760, -120, -12), 90, 90, 0, 5, 2, 15, 125);
    	CreateDoors((958, -1072, -36), (958, -972, -36), 90, 0, 0, 3, 2, 10, 50);
    	CreateDoors((1057, -648, -36), (997, -748, -36), 90, -30, 0, 3, 2, 10, 50);
    	CreateDoors((10895, 12581, 1298), (11070, 12581, 1295), 90, 90, 0, 7, 2, 10, 50);
    	CreateElevator((218, -618, -26), (11288, 14676, 1298), (0, 300, 0));
    	CreateElevator((-2336, -1348, 32), (11046, 14518, 1298), (0, 270, 0));
    	CreateElevator((-1021, 1263, 77), (11232, 14122, 1298), (0, 270, 0));
    	CreateElevator((2836, 978, -124), (10917, 13826, 1298), (0, 270, 0));
    	CreateElevator((2348, -1855, -13), (11046, 13421, 1298), (0, 270, 0));
    	CreateWalls((10798, 12581, 1298), (10955, 12581, 1340));
    	CreateWalls((11167, 12581, 1298), (11379, 12581, 1340));
    	CreateRamps((10850, 11700, 1298), (10850, 12300, 1448));
    	CreateRamps((11300, 11700, 1298), (11300, 12300, 1448));
    	CreateGrids((10798, 12581, 1450), (11379, 12300, 1450), (0, 0, 0));
    	mgTurret1 = spawnTurret( "misc_turret", (11327, 12538, 1525), "pavelow_minigun_mp" );
    	mgTurret1.angles = (0, 90, 0); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret2 = spawnTurret( "misc_turret", (10837, 12538, 1525), "pavelow_minigun_mp" );
    	mgTurret2.angles = (0, 90, 0); 
    	mgTurret2 setModel( "weapon_minigun" );
    	
    	CreateGrids((10725, 14529, 1228), (10725, 10212, 1228), (0, 0, 0));
    }
    
    Strike()
    {
    	CreateElevator((-655, 706, 52), (-1042, 569, 190), (0, -130, 0));
    	CreateGrids((-1165, 584, 185), (-1248, 519, 185), (0, 0, 0));
    	CreateDoors((-1353, 327, 215), (-1260, 327, 215), 90, 90, 0, 3, 1, 15, 75);
    	mgTurret1 = spawnTurret( "misc_turret", (-1322, 156, 268), "pavelow_minigun_mp" );
    	mgTurret1.angles = (0, 90, 0); 
    	mgTurret1 setModel( "weapon_minigun" );
    	CreateElevator((-1034, 93, 187), (-177, 489, 28), (0, -90, 0));
    
    	CreateElevator((-738, 791, 60), (-1757, 1290, 20), (0, 130, 0));
    	CreateWalls((-3498, 1260, 10), (-3498, 1600, 100));
    	mgTurret1 = spawnTurret( "misc_turret", (-2934, 1564, 38), "pavelow_minigun_mp" );
    	mgTurret1.angles = (0, 0, 0); 
    	mgTurret1 setModel( "weapon_minigun" );
    	mgTurret2 = spawnTurret( "misc_turret", (-2934, 1360, 31), "pavelow_minigun_mp" );
    	mgTurret2.angles = (0, 0, 0); 
    	mgTurret2 setModel( "weapon_minigun" );
    	CreateElevator((-3255, 1561, 8), (-177, 489, 28), (0, -130, 0));
    }
    
    Crash()
    {
    	CreateWalls((1658, 688, 590), (1658, 688, 650));
    	CreateRamps((1585, 424, 612), (1548, -430, 68));
    	CreateElevator((411, 481, 272), (-88, 3841, 830), (0, 0, 0));
    	CreateElevator((-1241, 3624, 688), (-1652, 3541, 913), (0, 130, 0));
    	CreateRamps((-2199, 3071, 900), (-2199, 2856, 1060));
    	CreateElevator((-2272, 2501, 1072), (-565, 1485, 420), (0, 130, 0));
    }
    
    Salvage()
    {
    	CreateRamps((1147, 2896, 67), (1702, 2896, 254));
    	CreateGrids((1732, 2796, 260), (1932, 2996, 260), (0, 0, 0));
    	CreateDoors((1783, 3120, 300), (1783, 2894, 300), 90, 0, 0, 9, 2, 15, 197);
    	CreateElevator((1370, -710, 1), (1000, 2915, 85), (0, 0, 0));
    	CreateElevator((1956, 2988, 258), (1832, 2473, 430), (0, 180, 0));
    	CreateGrids((1832, 2473, 395), (1653, 2517, 395), (0, 0, 0));
    }
    
    Overgrown()
    {
    	/* Created by maarten551 */
    	CreateRamps((1096, -4260, -13), (500, -4388, 109));
    	CreateGrids((500, -4200, 114), (143, -4667, 114), (0, 0, 0));
    	CreateWalls((500, -4200, 114), (143, -4200, 275));
    	/* Door Stuff */
    	CreateWalls((500, -4200, 114), (500, -4301, 160));
    	CreateWalls((500, -4667, 114), (500, -4489, 160));
    	CreateWalls((500, -4200, 220), (500, -4667, 275));
    	CreateDoors((510, -4301, 120), (500, -4400, 120),(90, 0, 0), 5, 2, 15, 75);
    	/* End Door Stuff */
    	CreateWalls((143, -4667, 114), (500, -4667, 275));
    	CreateWalls((143, -4667, 114), (143, -4200, 275));
    }

    Help me please

  2. #2
    foasdgg's Avatar
    Join Date
    Jul 2010
    Gender
    male
    Posts
    83
    Reputation
    9
    Thanks
    37
    rofl
    tell us first what did you changed XD
    btw, its mod 4.x or 3.x?
    Last edited by foasdgg; 01-08-2011 at 10:54 AM.

  3. #3
    EpicPlayer's Avatar
    Join Date
    Nov 2010
    Gender
    male
    Posts
    628
    Reputation
    13
    Thanks
    158
    You probaly used a false coordinate.

  4. #4
    einar300's Avatar
    Join Date
    May 2010
    Gender
    male
    Posts
    466
    Reputation
    10
    Thanks
    62
    False coordinate?

    Dont think so, cuz I didnt make this!

    I found each map on the forum

    I dont know why its not working...

    Can u guys check it?

    Found the problem, I think...

    I didnt had the createbridge thing!

    I didnt have this:

    CreateBridge(point1, point2, point3)
    {
    points = [];
    points[0] = point1;
    points[1] = point2;
    points[2] = point3;
    for(i = 0; i < points.size; i++){
    if(!isDefined(points[i+1])){
    return;
    }
    D = Distance(points[i], points[i+1]);
    blocks = roundUp(D/30);
    CX = points[i][0] - points[i+1][0];
    CY = points[i][1] - points[i+1][1];
    CZ = points[i][2] - points[i+1][2];
    XA = CX/blocks;
    YA = CY/blocks;
    ZA = CZ/blocks;
    CXY = Distance((points[i][0], points[i][1], 0), (points[i+1][0], points[i+1][1], 0));
    Temp = VectorToAngles(points[i] - points[i+1]);
    BA = (Temp[2], Temp[1] + 90, Temp[0]);
    for(b = 0; b <= blocks; b++){
    block = spawn("script_model", (points[i+1] + ((XA, YA, ZA) * b)));
    block setModel("com_plasticcase_friendly");
    block.angles = BA;
    block Solid();
    block CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
    wait 0.01;
    }
    }
    }


    Thx for the answers
    Last edited by einar300; 01-08-2011 at 01:32 PM.