Advertisement
Guest User

Untitled

a guest
Feb 28th, 2010
897
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Sniper Privilegis 0.1b by Psycho aka Faus Ver
  2. #include <a_samp>
  3.  
  4. new tima[MAX_PLAYERS];
  5. new Text: ____[MAX_PLAYERS];
  6.  
  7. //------------------------------------------------------------------------------------------------------
  8.  
  9. public OnFilterScriptInit() {
  10. print("Sniper Privilegies by Faus aka Psycho loaded.");
  11. for(new i = 0; i < GetMaxPlayers(); i++) {
  12. if(IsPlayerConnected(i)) {
  13. tima[i] = SetTimerEx("Faus",750,1,"d",i);
  14. ____[i] = TextDrawCreate(300,300,"-");
  15. TextDrawAlignment(____[i],0);
  16. TextDrawBackgroundColor(____[i],0x000000ff);
  17. TextDrawFont(____[i],2);
  18. TextDrawLetterSize(____[i],0.3,1.100000);
  19. TextDrawColor(____[i],0xffffffff);
  20. TextDrawSetOutline(____[i],1);
  21. TextDrawSetProportional(____[i],1);
  22. TextDrawSetShadow(____[i],1);
  23. }
  24. }
  25. return 1;
  26. }
  27.  
  28. //------------------------------------------------------------------------------------------------------
  29.  
  30. public OnFilterScriptExit() {
  31. print("Sniper Privilegies by Faus aka Psycho loaded.");
  32. for(new i = 0; i < GetMaxPlayers(); i++) {
  33. if(IsPlayerConnected(i)) {
  34. KillTimer(tima[i]);
  35. TextDrawHideForPlayer(i,____[i]);
  36. TextDrawDestroy(____[i]);
  37. }
  38. }
  39. return 1;
  40. }
  41.  
  42. //------------------------------------------------------------------------------------------------------
  43.  
  44. public OnPlayerConnect(playerid){
  45. ____[playerid] = TextDrawCreate(406,307,"PREVED");
  46. TextDrawAlignment(____[playerid],0);
  47. TextDrawBackgroundColor(____[playerid],0x000000ff);
  48. TextDrawFont(____[playerid],2);
  49. TextDrawLetterSize(____[playerid],0.3,1.100000);
  50. TextDrawColor(____[playerid],0xffffffff);
  51. TextDrawSetOutline(____[playerid],1);
  52. TextDrawSetProportional(____[playerid],1);
  53. TextDrawSetShadow(____[playerid],1);
  54. tima[playerid] = SetTimerEx("Faus",750,1,"d",playerid);
  55. return 1;
  56. }
  57.  
  58. //------------------------------------------------------------------------------------------------------
  59.  
  60. public OnPlayerDisconnect(playerid,reason){
  61. TextDrawHideForPlayer(playerid,____[playerid]);
  62. TextDrawDestroy(____[playerid]);
  63. KillTimer(tima[playerid]);
  64. return 1;
  65. }
  66.  
  67. //------------------------------------------------------------------------------------------------------
  68.  
  69. stock IsPlayerAiming(playerid, aimid){
  70. new Float:X1, Float:Y1, Float:Z1, Float:X2, Float:Y2, Float:Z2;
  71. GetPlayerPos(playerid, X1, Y1, Z1);
  72. GetPlayerPos(aimid, X2, Y2, Z2);
  73. new Float:Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
  74. if(Distance < 100){
  75. new Float:A;
  76. GetPlayerFacingAngle(playerid, A);
  77. X1 += (Distance * floatsin(-A, degrees));
  78. Y1 += (Distance * floatcos(-A, degrees));
  79. Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
  80. if(Distance < 1.3){
  81. return true;
  82. }
  83. }
  84. return false;
  85. }
  86.  
  87. //------------------------------------------------------------------------------------------------------
  88.  
  89. forward Float:GetDistanceBetweenPlayers(p1,p2);
  90. stock Float:GetDistanceBetweenPlayers(p1,p2) {
  91. new Float:x11,Float:y11,Float:z11,Float:x3,Float:y3,Float:z3;
  92. if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)) {
  93. return -1.00;
  94. }
  95. GetPlayerPos(p1,x11,y11,z11);
  96. GetPlayerPos(p2,x3,y3,z3);
  97. return floatsqroot(floatpower(floatabs(floatsub(x3,x11)),2)+floatpower(floatabs(floatsub(y3,y11)),2)+floatpower(floatabs(floatsub(z3,z11)),2));
  98. }
  99.  
  100. stock GetName(playerid){
  101. new Name[256];
  102. GetPlayerName(playerid,Name,MAX_PLAYER_NAME);
  103. return Name;
  104. }
  105.  
  106. //------------------------------------------------------------------------------------------------------
  107.  
  108. forward Faus(playerid);
  109. public Faus(playerid) {
  110. new string[128];
  111. new Float:x,Float:y,Float:z;
  112. for(new i = 0; i < GetMaxPlayers(); i++) {
  113. if(IsPlayerAiming(playerid,i) && GetPlayerWeapon(playerid) == 34 && i != playerid) {
  114. GetPlayerPos(i,x,y,z);
  115. format(string,128,"~g~%s dist: ~r~%d m.~n~~b~Ping: ~r~%dms~n~~g~AMSL: ~r~%d m.~n~~b~Weapon: ~r~%s~p~(%d)",LOL(GetName(i)),floatround(GetDistanceBetweenPlayers(i,playerid)),GetPlayerPing(i),floatround(z),ReturnWeaponName(GetPlayerWeapon(i)),GetPlayerAmmo(i));
  116. TextDrawSetString(____[playerid],string);
  117. TextDrawShowForPlayer(playerid,____[playerid]);
  118. }
  119. }
  120. return 1;
  121. }
  122.  
  123. //------------------------------------------------------------------------------------------------------
  124.  
  125. LOL(string[]) {
  126. new result[256];
  127. for (new i; i < 256; i++) {
  128. switch(string[i]) {
  129. case '[':result[i] = '(';
  130. case ']':result[i] = ')';
  131. default:result[i]=string[i];
  132. }
  133. }
  134. return result;
  135. }
  136.  
  137. //------------------------------------------------------------------------------------------------------
  138.  
  139. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
  140. if(oldkeys == 128) {
  141. TextDrawHideForPlayer(playerid,____[playerid]);
  142. }
  143. return 1;
  144. }
  145.  
  146. //------------------------------------------------------------------------------------------------------
  147.  
  148. ReturnWeaponName(weaponid){
  149. new weaponname[256];
  150. GetWeaponName(weaponid,weaponname,sizeof(weaponname));
  151. return weaponname;
  152. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement