JoBoz

2

May 30th, 2011
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.39 KB | None | 0 0
  1. Tank(pos, angle)
  2. {
  3. tank = spawn("script_model", pos );
  4. tank setModel("vehicle_m1a1_abrams_dmg");
  5. tank.angles = angle;
  6. tank Solid();
  7. tank CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
  8. tank.headIcon = newHudElem();
  9. tank.headIcon.x = tank.origin[0];
  10. tank.headIcon.y = tank.origin[1];
  11. tank.headIcon.z = tank.origin[2] + 50;
  12. tank.headIcon.alpha = 0.85;
  13. tank.headIcon setShader( "cardicon_tank_01", 2,2 );
  14. tank.headIcon setWaypoint( true, true, false );
  15. trigger = spawn( "trigger_radius", pos, 0, 50, 50 );
  16. trigger.angles = angle;
  17. trigger thread TankThink(pos, angle);
  18. wait 0.01;
  19. }
  20.  
  21. TankThink(pos, angle)
  22. {
  23. self endon("disconnect");
  24. tank = spawn("script_model", pos );
  25. tank setModel("vehicle_m1a1_abrams_dmg");
  26. tank.angles = angle;
  27. tank Solid();
  28. tank CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
  29.  
  30.  
  31. while(1)
  32. {
  33. self waittill( "trigger", player );
  34. if(player.tank != 1)
  35. if(Distance(pos, Player.origin) <= 75){
  36. Player setLowerMessage("activate", "Press ^3[{+activate}]^7 to Drive Tank [^31750^7]" );}
  37. if(Distance(pos, Player.origin) >50){
  38. Player ClearLowerMessage("activate", 1);}
  39. if(Distance(pos, Player.origin) <= 75 && player.tank != 1 && player.cash >= 1750 && player useButtonPressed())
  40. {
  41. player ClearLowerMessage("activate", 1);
  42. player.cash -= 1750;
  43. tank delete();
  44. player thread Tanker();
  45. wait 60;
  46. player thread Exitted();
  47. wait 1;
  48. }
  49. else if(Distance(pos, Player.origin) <= 75 && player.tank != 1 && player.cash <= 1750 && player useButtonPressed())
  50. {
  51. player iPrintln("You do not have enough points!");
  52. wait 1;
  53. }
  54. wait .25;
  55. }
  56. }
  57.  
  58.  
  59.  
  60. Tanker()
  61. {
  62. self endon ("death");
  63. self endon ("exitTank");
  64.  
  65. self setModel("vehicle_m1a1_abrams_dmg");
  66. self _clearPerks();
  67. self allowJump(false);
  68. self DisableWeaponSwitch();
  69. self _disableUsability();
  70. self.moveSpeedScaler = 0.6;
  71. self setClientDvar("cg_thirdPerson", 1);
  72. self setClientDvar("cg_thirdPersonRange", "1024");
  73. self thread TankAims();
  74. self thread Turret();
  75. self maps\mp\perks\_perks::givePerk("specialty_quieter");
  76. }
  77.  
  78. TankAims()
  79. {
  80. self endon ( "disconnect" );
  81. self endon ( "death" );
  82. self endon ("exitTank");
  83.  
  84. self notifyOnPlayerCommand("[{+toggleads_throw}]", "+toggleads_throw");
  85. while(1)
  86. {
  87. self takeAllWeapons();
  88. self waittill("[{+toggleads_throw}]");
  89. wait 0.3;
  90. self setClientDvar("cg_thirdPerson", 0);
  91. self giveWeapon("ac130_40mm_mp", 0, false);
  92. self switchToWeapon("ac130_40mm_mp");
  93. self waittill( "weapon_fired" );
  94. self playSound( "bmp_fire" );
  95. self setClientDvar("cg_thirdPerson", 1);
  96. self takeAllWeapons();
  97. self giveWeapon("ac130_40mm_mp", 0, false);
  98. self switchToWeapon("ac130_40mm_mp");
  99. wait 0.0005;
  100. }
  101. }
  102.  
  103. Turret()
  104. {
  105. self endon ( "disconnect" );
  106. self endon ( "death" );
  107. self endon ("exitTank");
  108.  
  109. self EnableLinkTo();
  110. self notifyOnPlayerCommand( "T", "+reload");
  111.  
  112. for (;;)
  113. {
  114. self waittill( "T" );
  115. Turret = spawnTurret( "misc_turret", self.origin+(50,0,50), "pavelow_minigun_mp" );
  116. Turret LinkTo("self");
  117. Turret setModel( "weapon_minigun" );
  118. Turret.angles = self.angles;
  119. Turret MakeUsable();
  120. Turret useby(self);
  121. Turret EnableLinkTo();
  122. self PlayerLinkTo( Turret, 0.5 );
  123. wait 7;
  124. Turret delete();
  125. self Unlink(Turret);
  126. }
  127. }
  128.  
  129. ChangeAppearance(Type,MyTeam)
  130. {
  131. ModelType=[];
  132. ModelType[0]="GHILLIE";
  133. ModelType[1]="SNIPER";
  134. ModelType[2]="LMG";
  135. ModelType[3]="ASSAULT";
  136. ModelType[4]="SHOTGUN";
  137. ModelType[5]="SMG";
  138. ModelType[6]="RIOT";
  139. if(Type==7){MyTeam=randomint(2);Type=randomint(7);}
  140. team=get_enemy_team(self.team);if(MyTeam)team=self.team;
  141. self detachAll();
  142. [[game[team+"_model"][ModelType[Type]]]]();
  143. }
  144.  
  145. Exitted()
  146. {
  147. self thread ChangeAppearance(5,1);
  148. self setClientDvar("cg_thirdPerson", 0);
  149. self giveWeapon("ump45_mp");
  150. self giveWeapon("spas12_mp");
  151. self switchToWeapon("ump45_mp");
  152. self.moveSpeedScaler = 1;
  153. self allowJump(true);
  154. self allowSprint(true);
  155. self notify ("exitTank");
  156. }
  157. }
Advertisement
Add Comment
Please, Sign In to add comment