Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1. #include maps\mp\gametypes\_spawnlogic;
  2. #include maps\mp\_createdvar;
  3. main()
  4. {
  5. precachemodel("c130_zoomrig");
  6. precachemodel("ac130_zom");
  7.  
  8. precacheShader( "ac130_overlay_25mm" );
  9. precacheShader( "ac130_overlay_40mm" );
  10. precacheShader( "ac130_overlay_105mm" );
  11.  
  12. precacheitem("ac130_105mm_mp");
  13. precacheitem("ac130_25mm_mp");
  14. precacheitem("ac130_40mm_mp");
  15. precacheitem("ac130_mp");
  16.  
  17. thread Moniter();
  18. thread Ac130_Trigger();
  19.  
  20. level.ac130 = false;
  21. level.ac130_Weap = false;
  22. level.ac130_speed = createdvar( "nrm_ac130_speed" , 120, 0, 1000, "int" );
  23. level.Ac130_Cost = 10;
  24. level.MapCenter = ( 340, -511, -236 );
  25. level.AC130_Spam = 0;
  26.  
  27. level.ac130_Offset = ( -100, 0, 0 );
  28. level.ac130_Angles = ( 0, -90, 40 );
  29. }
  30.  
  31. Moniter()
  32. {
  33. level endon( "game_ended" );
  34.  
  35. while(1)
  36. {
  37. players = getEntArray( "player", "classname" );
  38. for( i = 0; i < players.size; i++ )
  39. {
  40. players[i] thread DoAc130();
  41. }
  42. wait 0.05;
  43. }
  44. }
  45.  
  46. DoAc130()
  47. {
  48. level.ac130 = true;
  49. weapon = self getCurrentWeapon();
  50.  
  51. if( weapon == "ac130_mp" && self AttackButtonPressed())
  52. {
  53. self thread WeaponsList();
  54. self thread Ac130();
  55. self thread changeWeapons();
  56. self thread overlay();
  57. self takeweapon("ac130_mp");
  58. }
  59.  
  60. }
  61.  
  62. Ac130()
  63. {
  64. if ( isDefined( level.ac130 ) && level.ac130 == true )
  65. {
  66. self giveWeapon( "ac130_105mm_mp" );
  67. self switchToWeapon( "ac130_105mm_mp" );
  68.  
  69. level.ac130 = spawn( "script_model", level.MapCenter );
  70. level.ac130 setModel( "c130_zoomrig" );
  71. level.ac130 hide();
  72.  
  73. self hide();
  74.  
  75. level.ac130_Weap = true;
  76.  
  77. self setAc130Vision(true);
  78. self LinkTo( level.ac130, "tag_player", ( 0, 0, 0 ), ( 0, 0, 0 ));
  79.  
  80. level.ac130_model = spawn( "script_model", self.origin );
  81. level.ac130_model setModel( "ac130_zom" );
  82. level.ac130_model LinkTo( level.ac130, "tag_player", level.ac130_Offset, level.ac130_Angles );
  83. level.ac130 rotateyaw( 720, level.ac130_speed);
  84.  
  85. wait level.ac130_speed;
  86.  
  87. self Unlink();
  88. self show();
  89. self thread Respawn();
  90. level.ac130 delete();
  91. level.ac130_model delete();
  92.  
  93. }
  94.  
  95. else if (level.ac130 == false )
  96. {
  97. self Unlink();
  98. self show();
  99. level.ac130_Weap = false;
  100. level.ac130 delete();
  101. }
  102. }
  103.  
  104. overlay()
  105. {
  106. level.ac130_overlay = newClientHudElem( self );
  107. level.ac130_overlay.x = 0;
  108. level.ac130_overlay.y = 0;
  109. level.ac130_overlay.alignX = "center";
  110. level.ac130_overlay.alignY = "middle";
  111. level.ac130_overlay.horzAlign = "center";
  112. level.ac130_overlay.vertAlign = "middle";
  113. level.ac130_overlay.foreground = true;
  114. level.ac130_overlay setshader ("ac130_overlay_105mm", 640, 480);
  115.  
  116. level.ac130_use = newClientHudElem( self );
  117. level.ac130_use.alignX = "center";
  118. level.ac130_use.alignY = "middle";
  119. level.ac130_use.alpha = 1;
  120. level.ac130_use.hideWhenInMenu = true;
  121. level.ac130_use.x = 324;
  122. level.ac130_use.y = 455;
  123. level.ac130_use settext ( "Press ^3[{+activate}]^7 to switch weapons." );
  124. level.ac130_use.font = "default";
  125. level.ac130_use.fontscale = 1.5;
  126.  
  127. wait level.ac130_speed;
  128.  
  129. level.ac130_overlay destroy();
  130. level.ac130_use destroy();
  131. }
  132.  
  133. changeWeapons()
  134. {
  135. if ( isDefined( level.ac130_Weap ) && level.ac130_Weap == true )
  136. {
  137. weapon = [];
  138.  
  139. weapon[0] = spawnstruct();
  140. weapon[0].overlay = "ac130_overlay_105mm";
  141. weapon[0].fov = "1";
  142. weapon[0].name = "105mm";
  143. weapon[0].sound = "ac130_105mm_fire";
  144. weapon[0].weapon = "ac130_105mm_mp";
  145.  
  146. weapon[1] = spawnstruct();
  147. weapon[1].overlay = "ac130_overlay_40mm";
  148. weapon[1].fov = "0.50";
  149. weapon[1].name = "40mm";
  150. weapon[1].sound = "ac130_40mm_fire";
  151. weapon[1].weapon = "ac130_40mm_mp";
  152.  
  153. weapon[2] = spawnstruct();
  154. weapon[2].overlay = "ac130_overlay_25mm";
  155. weapon[2].fov = "0.30";
  156. weapon[2].name = "25mm";
  157. weapon[2].sound = "ac130_25mm_fire";
  158. weapon[2].weapon = "ac130_25mm_mp";
  159.  
  160. currentWeapon = 0;
  161. level.currentWeapon = weapon[currentWeapon].name;
  162.  
  163. while(level.ac130_Weap == true)
  164. {
  165. while(level.ac130_Weap == true && !self useButtonPressed() )
  166. wait 0.05;
  167.  
  168. currentWeapon++;
  169. if (currentWeapon >= weapon.size)
  170. currentWeapon = 0;
  171. level.currentWeapon = weapon[currentWeapon].name;
  172.  
  173. level.ac130_overlay setShader (weapon[currentWeapon].overlay, 640, 480);
  174. self setClientDvar( "cg_fovscale", weapon[currentWeapon].fov );
  175. self takeAllWeapons();
  176. self giveWeapon( weapon[currentWeapon].weapon );
  177. self switchToWeapon( weapon[currentWeapon].weapon );
  178.  
  179. while(level.ac130_Weap == true && self useButtonPressed() )
  180. wait 0.05;
  181. }
  182. }
  183. }
  184.  
  185. Respawn()
  186. {
  187. level.ac130 = false;
  188. level.ac130_Weap = false;
  189. self [[level.onSpawnPlayer]]();
  190. wait 0.1;// If you Remove this you will FUCK EVERYTHING UP so leave it alone!
  191. self takeAllWeapons();
  192. self setAc130Vision(false);
  193. self setClientDvar( "cg_fovscale", "1");
  194. self thread GiveWeaponsBack();
  195.  
  196. if ( isDefined( level.ac130_overlay ) && isDefined( level.ac130_use ) )
  197. {
  198. level.ac130_overlay destroy();
  199. level.ac130_use destroy();
  200. }
  201. }
  202.  
  203. WeaponsList()
  204. {
  205. self.weapons = self GetWeaponsList();
  206.  
  207. for( i = 0; i < self.weapons.size; i++ )
  208. self takeWeapon(self.weapons[i]);
  209. }
  210.  
  211. GiveWeaponsBack()
  212. {
  213. level endon("game_ended");
  214. self endon("disconnect");
  215. self endon("death");
  216. self endon("joined_spectators");
  217.  
  218. for( i = 0; i < self.weapons.size; i++ )
  219. self giveWeapon( self.weapons[i] );
  220. primaryWeapons = self GetWeaponsListPrimaries();
  221. self SwitchToWeapon(primaryWeapons[1]);
  222. }
  223.  
  224. SetAc130Vision(on)
  225. {
  226. if( isDefined( self ) )
  227. {
  228. if( on )
  229. {
  230. self setClientDvars(
  231. "r_filmtweakenable", "1",
  232. "r_filmusetweaks", "1",
  233. "r_filmtweakdesaturation", "1",
  234. "r_filmtweakdarktint", "2 2 2",
  235. "r_filmtweakbrightness", "0",
  236. "r_filmtweakcontrast", "1.5",
  237. "r_glowtweakenable", "1",
  238. "r_glowusetweaks", "1",
  239. "r_glowtweakbloomcutoff", "0",
  240. "r_glowtweakbloomdesaturation", "1",
  241. "r_glowtweakbloomintensity0", "2",
  242. "r_glowtweakradius0", "0.5",
  243. "r_glowtweakrayexpansion", "0",
  244. "r_glowtweakrayintensity", "0");
  245. }
  246. else
  247. {
  248. self setClientDvars(
  249. "r_filmtweakenable", "0",
  250. "r_filmusetweaks", "0",
  251. "r_glowtweakenable", "0",
  252. "r_glowusetweaks", "0");
  253. }
  254. }
  255. }
  256.  
  257. //Buy Trigger
  258.  
  259. Ac130_Trigger()
  260. {
  261. Ac130_buy = getentarray( "buy_ac130","targetname" );
  262.  
  263. if( isDefined( Ac130_buy ) )
  264. {
  265. for( i = 0; i < Ac130_buy.size; i++ )
  266. Ac130_buy[i] thread Bought_Ac130();
  267. }
  268. }
  269.  
  270. Bought_Ac130()
  271. {
  272.  
  273. while(1)
  274. {
  275. self waittill( "trigger", player );
  276.  
  277. if( player.score >= level.Ac130_Cost && !player.isZombie )
  278. {
  279. level.AC130_Spam+= 1;
  280. player.score -= level.Ac130_Cost;
  281. player giveWeapon( "ac130_mp" );
  282. player switchToWeapon( "ac130_mp" );
  283. }
  284.  
  285. else if( player.score < level.Ac130_Cost && !player.isZombie )
  286. {
  287. player iprintlnbold("You Need ^1" + ( level.Ac130_Cost - player.score ) + "^7 Points");
  288. player playLocalSound( "deny" );
  289. }
  290.  
  291. else if( player.isZombie )
  292. {
  293. player iprintlnbold("^1Zombies^7 Cant Fly, Silly!");
  294. player playLocalSound( "deny" );
  295. }
  296.  
  297. if( level.AC130_Spam >= 1 )
  298. {
  299. wait level.ac130_speed;
  300. level.AC130_Spam = 0;
  301. }
  302. }
  303. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement