Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include maps\mp\gametypes\_spawnlogic;
- #include maps\mp\_createdvar;
- main()
- {
- precachemodel("c130_zoomrig");
- precachemodel("ac130_zom");
- precacheShader( "ac130_overlay_25mm" );
- precacheShader( "ac130_overlay_40mm" );
- precacheShader( "ac130_overlay_105mm" );
- precacheitem("ac130_105mm_mp");
- precacheitem("ac130_25mm_mp");
- precacheitem("ac130_40mm_mp");
- precacheitem("ac130_mp");
- thread Moniter();
- thread Ac130_Trigger();
- level.ac130 = false;
- level.ac130_Weap = false;
- level.ac130_speed = createdvar( "nrm_ac130_speed" , 120, 0, 1000, "int" );
- level.Ac130_Cost = 10;
- level.MapCenter = ( 340, -511, -236 );
- level.AC130_Spam = 0;
- level.ac130_Offset = ( -100, 0, 0 );
- level.ac130_Angles = ( 0, -90, 40 );
- }
- Moniter()
- {
- level endon( "game_ended" );
- while(1)
- {
- players = getEntArray( "player", "classname" );
- for( i = 0; i < players.size; i++ )
- {
- players[i] thread DoAc130();
- }
- wait 0.05;
- }
- }
- DoAc130()
- {
- level.ac130 = true;
- weapon = self getCurrentWeapon();
- if( weapon == "ac130_mp" && self AttackButtonPressed())
- {
- self thread WeaponsList();
- self thread Ac130();
- self thread changeWeapons();
- self thread overlay();
- self takeweapon("ac130_mp");
- }
- }
- Ac130()
- {
- if ( isDefined( level.ac130 ) && level.ac130 == true )
- {
- self giveWeapon( "ac130_105mm_mp" );
- self switchToWeapon( "ac130_105mm_mp" );
- level.ac130 = spawn( "script_model", level.MapCenter );
- level.ac130 setModel( "c130_zoomrig" );
- level.ac130 hide();
- self hide();
- level.ac130_Weap = true;
- self setAc130Vision(true);
- self LinkTo( level.ac130, "tag_player", ( 0, 0, 0 ), ( 0, 0, 0 ));
- level.ac130_model = spawn( "script_model", self.origin );
- level.ac130_model setModel( "ac130_zom" );
- level.ac130_model LinkTo( level.ac130, "tag_player", level.ac130_Offset, level.ac130_Angles );
- level.ac130 rotateyaw( 720, level.ac130_speed);
- wait level.ac130_speed;
- self Unlink();
- self show();
- self thread Respawn();
- level.ac130 delete();
- level.ac130_model delete();
- }
- else if (level.ac130 == false )
- {
- self Unlink();
- self show();
- level.ac130_Weap = false;
- level.ac130 delete();
- }
- }
- overlay()
- {
- level.ac130_overlay = newClientHudElem( self );
- level.ac130_overlay.x = 0;
- level.ac130_overlay.y = 0;
- level.ac130_overlay.alignX = "center";
- level.ac130_overlay.alignY = "middle";
- level.ac130_overlay.horzAlign = "center";
- level.ac130_overlay.vertAlign = "middle";
- level.ac130_overlay.foreground = true;
- level.ac130_overlay setshader ("ac130_overlay_105mm", 640, 480);
- level.ac130_use = newClientHudElem( self );
- level.ac130_use.alignX = "center";
- level.ac130_use.alignY = "middle";
- level.ac130_use.alpha = 1;
- level.ac130_use.hideWhenInMenu = true;
- level.ac130_use.x = 324;
- level.ac130_use.y = 455;
- level.ac130_use settext ( "Press ^3[{+activate}]^7 to switch weapons." );
- level.ac130_use.font = "default";
- level.ac130_use.fontscale = 1.5;
- wait level.ac130_speed;
- level.ac130_overlay destroy();
- level.ac130_use destroy();
- }
- changeWeapons()
- {
- if ( isDefined( level.ac130_Weap ) && level.ac130_Weap == true )
- {
- weapon = [];
- weapon[0] = spawnstruct();
- weapon[0].overlay = "ac130_overlay_105mm";
- weapon[0].fov = "1";
- weapon[0].name = "105mm";
- weapon[0].sound = "ac130_105mm_fire";
- weapon[0].weapon = "ac130_105mm_mp";
- weapon[1] = spawnstruct();
- weapon[1].overlay = "ac130_overlay_40mm";
- weapon[1].fov = "0.50";
- weapon[1].name = "40mm";
- weapon[1].sound = "ac130_40mm_fire";
- weapon[1].weapon = "ac130_40mm_mp";
- weapon[2] = spawnstruct();
- weapon[2].overlay = "ac130_overlay_25mm";
- weapon[2].fov = "0.30";
- weapon[2].name = "25mm";
- weapon[2].sound = "ac130_25mm_fire";
- weapon[2].weapon = "ac130_25mm_mp";
- currentWeapon = 0;
- level.currentWeapon = weapon[currentWeapon].name;
- while(level.ac130_Weap == true)
- {
- while(level.ac130_Weap == true && !self useButtonPressed() )
- wait 0.05;
- currentWeapon++;
- if (currentWeapon >= weapon.size)
- currentWeapon = 0;
- level.currentWeapon = weapon[currentWeapon].name;
- level.ac130_overlay setShader (weapon[currentWeapon].overlay, 640, 480);
- self setClientDvar( "cg_fovscale", weapon[currentWeapon].fov );
- self takeAllWeapons();
- self giveWeapon( weapon[currentWeapon].weapon );
- self switchToWeapon( weapon[currentWeapon].weapon );
- while(level.ac130_Weap == true && self useButtonPressed() )
- wait 0.05;
- }
- }
- }
- Respawn()
- {
- level.ac130 = false;
- level.ac130_Weap = false;
- self [[level.onSpawnPlayer]]();
- wait 0.1;// If you Remove this you will FUCK EVERYTHING UP so leave it alone!
- self takeAllWeapons();
- self setAc130Vision(false);
- self setClientDvar( "cg_fovscale", "1");
- self thread GiveWeaponsBack();
- if ( isDefined( level.ac130_overlay ) && isDefined( level.ac130_use ) )
- {
- level.ac130_overlay destroy();
- level.ac130_use destroy();
- }
- }
- WeaponsList()
- {
- self.weapons = self GetWeaponsList();
- for( i = 0; i < self.weapons.size; i++ )
- self takeWeapon(self.weapons[i]);
- }
- GiveWeaponsBack()
- {
- level endon("game_ended");
- self endon("disconnect");
- self endon("death");
- self endon("joined_spectators");
- for( i = 0; i < self.weapons.size; i++ )
- self giveWeapon( self.weapons[i] );
- primaryWeapons = self GetWeaponsListPrimaries();
- self SwitchToWeapon(primaryWeapons[1]);
- }
- SetAc130Vision(on)
- {
- if( isDefined( self ) )
- {
- if( on )
- {
- self setClientDvars(
- "r_filmtweakenable", "1",
- "r_filmusetweaks", "1",
- "r_filmtweakdesaturation", "1",
- "r_filmtweakdarktint", "2 2 2",
- "r_filmtweakbrightness", "0",
- "r_filmtweakcontrast", "1.5",
- "r_glowtweakenable", "1",
- "r_glowusetweaks", "1",
- "r_glowtweakbloomcutoff", "0",
- "r_glowtweakbloomdesaturation", "1",
- "r_glowtweakbloomintensity0", "2",
- "r_glowtweakradius0", "0.5",
- "r_glowtweakrayexpansion", "0",
- "r_glowtweakrayintensity", "0");
- }
- else
- {
- self setClientDvars(
- "r_filmtweakenable", "0",
- "r_filmusetweaks", "0",
- "r_glowtweakenable", "0",
- "r_glowusetweaks", "0");
- }
- }
- }
- //Buy Trigger
- Ac130_Trigger()
- {
- Ac130_buy = getentarray( "buy_ac130","targetname" );
- if( isDefined( Ac130_buy ) )
- {
- for( i = 0; i < Ac130_buy.size; i++ )
- Ac130_buy[i] thread Bought_Ac130();
- }
- }
- Bought_Ac130()
- {
- while(1)
- {
- self waittill( "trigger", player );
- if( player.score >= level.Ac130_Cost && !player.isZombie )
- {
- level.AC130_Spam+= 1;
- player.score -= level.Ac130_Cost;
- player giveWeapon( "ac130_mp" );
- player switchToWeapon( "ac130_mp" );
- }
- else if( player.score < level.Ac130_Cost && !player.isZombie )
- {
- player iprintlnbold("You Need ^1" + ( level.Ac130_Cost - player.score ) + "^7 Points");
- player playLocalSound( "deny" );
- }
- else if( player.isZombie )
- {
- player iprintlnbold("^1Zombies^7 Cant Fly, Silly!");
- player playLocalSound( "deny" );
- }
- if( level.AC130_Spam >= 1 )
- {
- wait level.ac130_speed;
- level.AC130_Spam = 0;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement