Advertisement
4FunPlayin

Untitled

Oct 16th, 2011
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1.  
  2. SetScope(weapon)
  3. {
  4. self endon("death");
  5. self endon("disconnect");
  6. scopecam = spawn("script_model",self getcursorpos());
  7. scopecam.angles = self.angles;
  8. self thread KillThing(scopecam);
  9. overlay = undefined;
  10. while(1)
  11. {
  12. if(scopecam.origin != self getcursorpos())
  13. {
  14. scopecam setorigin(self gettagorigin("tag_weapon_right")+anglestoforward(self getplayerangles())*2000);
  15. scopecam.origin = (self gettagorigin("tag_weapon_right")+anglestoforward(self getplayerangles())*2000);
  16.  
  17. }
  18. if(scopecam.angles != self.angles)
  19. scopecam.angles = self.angles;
  20. if(self getcurrentweapon() != weapon)
  21. continue;
  22. if(self adsbuttonpressed())
  23. {
  24. self cameralinkto(scopecam,"tag_origin");
  25. if(!isdefined(overlay))
  26. overlay = self CreateOverlay("scope_overlay_m40a3",1,undefined);
  27. self thread KillHudElem(overlay);
  28. }
  29. else
  30. {
  31. self cameraunlink();
  32. if(isdefined(overlay))
  33. overlay destroy();
  34. }
  35. wait 0.08;
  36. }
  37.  
  38. }
  39.  
  40. KillHudElem(elem)
  41. {
  42. self waittill_any("disconnect","death","spawned_player");
  43. if(isdefined(elem))
  44. elem destroy();
  45. }
  46.  
  47. KillThing(thing)
  48. {
  49. self waittill_any("disconnect","death","spawned_player");
  50. if(isdefined(thing))
  51. thing delete();
  52. }
  53.  
  54. CreateOverlay( shader_name, start_alpha, color )
  55. {
  56. overlay = newHudElem();
  57. overlay.x = 0;
  58. overlay.y = 0;
  59. overlay setshader( shader_name, 640, 480 );
  60. overlay.alignX = "left";
  61. overlay.alignY = "top";
  62. overlay.sort = 1;
  63. overlay.color = color;
  64. overlay.horzAlign = "fullscreen";
  65. overlay.vertAlign = "fullscreen";
  66. overlay.alpha = start_alpha;
  67. overlay.foreground = true;
  68. return overlay;
  69. }
  70.  
  71. vector_scal(vec,scale)
  72. {
  73. vec = (vec[0]*scale,vec[1]*scale,vec[2]*scale);
  74. return vec;
  75. }
  76.  
  77. getcursorpos()
  78. {
  79. forward = self getTagOrigin("tag_weapon_right");
  80. end = self thread vector_Scal(self getTagOrigin("tag_weapon_right")+anglestoforward(self getPlayerAngles()),5000);
  81. location = BulletTrace(forward,end,false,self)["position"];
  82. return location;
  83. }
  84.  
  85.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement