_iLustcheR_

SAMP-IL Spy System v1.0 by LustcheR

Mar 15th, 2014
592
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.45 KB | None | 0 0
  1. // ================ [Spy System By LustcheR SAMP-IL v1.0] =================== //
  2. #include <a_samp>
  3. #include <DOF2>
  4. #include "../include/gl_common.inc"
  5.  
  6. #pragma unused DOF2_Exit
  7.  
  8. new String[256];
  9. #define SpyPrice 5000000
  10. #define Color_Red   0xFF0000AA
  11. #define Color_Green 0x00FF00FF
  12. #define Color_White 0xFFFFFFAA
  13. #define SendFormatMessage(%0,%1,%2,%3) format(String, sizeof(String),%2,%3) && SendClientMessage(%0, %1, String)
  14. #define SendFormatMessageToAll(%0,%1,%2) format(String, sizeof(String),%1,%2) && SendClientMessageToAll(%0, String)
  15.  
  16. enum SpyInfo
  17. {
  18.     SpyOn,
  19.     SpySpec
  20. };
  21. new PSpy[MAX_PLAYERS][SpyInfo];
  22. new Float:Pos[3];
  23.  
  24. public OnPlayerConnect(playerid)
  25. {
  26.     if(!DOF2_FileExists(SFile(playerid)))
  27.     {
  28.         DOF2_CreateFile(SFile(playerid));
  29.         DOF2_SetInt(SFile(playerid), "HaveSpy" ,0);
  30.     }
  31.     PSpy[playerid][SpyOn] = 0;
  32.     PSpy[playerid][SpySpec] = 0;
  33.     return 1;
  34. }
  35.  
  36. public OnPlayerDisconnect(playerid, reason)
  37. {
  38.     PSpy[playerid][SpyOn] = 0;
  39.     PSpy[playerid][SpySpec] = 0;
  40.     return 1;
  41. }
  42.  
  43. public OnPlayerCommandText(playerid, cmdtext[])
  44. {
  45.     new cmd[3][256], idx;
  46.     cmd[0] = strtok(cmdtext, idx);
  47.    
  48.     if(strcmp(cmd[0], "/Spy", true) == 0)
  49.     {
  50.         cmd[1] = strtok(cmdtext, idx);
  51.         if(!strlen(cmd[1])) return SendClientMessage(playerid, Color_White, "Usage: /Spy [Buy | Sell | Spec | UnSpec | On | Off]");
  52.         if(!strcmp(cmd[1], "Buy", true))
  53.         {
  54.             if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 1) return SendClientMessage(playerid, Color_Red, "./Spy Sell - למכירת המערכת הקלד ,Spy כבר קנית מערכת");
  55.             if(GetPlayerMoney(playerid) < SpyPrice) return SendClientMessage(playerid, Color_Red, ".[5,000,000$] Spy אין לך מספיק כסף לקניית מערכת");
  56.             SendFormatMessageToAll(Color_Green, "! Spy רכש את המערכת ''%s'' השחקן", GetName(playerid));
  57.             DOF2_SetInt(SFile(playerid), "HaveSpy", 1);
  58.             GivePlayerMoney(playerid, - SpyPrice);
  59.             PSpy[playerid][SpySpec] = 0;
  60.             PSpy[playerid][SpyOn] = 0;
  61.             return 1;
  62.         }
  63.         if(!strcmp(cmd[1], "Sell", true))
  64.         {
  65.             if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 0) return SendClientMessage(playerid, Color_Red, "./Spy Buy -לקניית המערכת הקלד ,Spy אין לך מערכת");
  66.             SendClientMessage(playerid, Color_Green, ".[2,500,000$] וקיבלת חצי מסכום הקנייה Spy מכרת את המערכת");
  67.             DOF2_SetInt(SFile(playerid), "HaveSpy", 0);
  68.             GivePlayerMoney(playerid, - SpyPrice / 2);
  69.             PSpy[playerid][SpySpec] = 0;
  70.             PSpy[playerid][SpyOn] = 0;
  71.             return 1;
  72.         }
  73.         if(!strcmp(cmd[1], "Spec", true))
  74.         {
  75.             cmd[2] = strtok(cmdtext, idx);
  76.              if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 0) return SendClientMessage(playerid, Color_Red, "./Spy Buy -לקניית המערכת הקלד ,Spy אין לך מערכת");
  77.             if(PSpy[playerid][SpyOn] == 0) return SendClientMessage(playerid, Color_Red, "./Spy On - שלך כבויה, להפעלת המערכת הקלד Spy המערכת");
  78.             if(!strlen(cmd[2])) return SendClientMessage(playerid, Color_White, "Usage: /Spy Spec [PlayerID]");
  79.             if(IsPlayerConnected(strval(cmd[2]))) return SendClientMessage(playerid, Color_Red, ".השחקן לא מחובר");
  80.             SendFormatMessage(playerid, Color_Green, "./Spy UnSpec - להפסקת הצפייה הקלד ''%s'' כעת אתה צופה בשחקן", GetName(strval(cmd[2])));
  81.             GetPlayerPos(playerid, Pos[0], Pos[1], Pos[1]);
  82.             PlayerSpectatePlayer(playerid, strval(cmd[2]));
  83.             TogglePlayerSpectating(playerid, true);
  84.             PSpy[playerid][SpySpec] = 1;
  85.             return 1;
  86.         }
  87.         if(!strcmp(cmd[1], "UnSpec", true))
  88.         {
  89.              if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 0) return SendClientMessage(playerid, Color_Red, "./Spy Buy -לקניית המערכת הקלד ,Spy אין לך מערכת");
  90.             if(PSpy[playerid][SpyOn] == 0) return SendClientMessage(playerid, Color_Red, "./Spy On - שלך כבויה, להפעלת המערכת הקלד Spy המערכת");
  91.             SendFormatMessage(playerid, Color_Green, "./Spy Spec - לצפייה חוזרת הקלד ''%s'' הפסקת את הצפייה על השחקן", GetName(strval(cmd[2])));
  92.             SetPlayerPos(playerid, Pos[0], Pos[1], Pos[1]);
  93.             TogglePlayerSpectating(playerid, false);
  94.             PSpy[playerid][SpySpec] = 0;
  95.             return 1;
  96.         }
  97.         if(!strcmp(cmd[1], "On", true))
  98.         {
  99.              if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 0) return SendClientMessage(playerid, Color_Red, "./Spy Buy -לקניית המערכת הקלד ,Spy אין לך מערכת");
  100.             if(PSpy[playerid][SpyOn] == 1) return SendClientMessage(playerid, Color_Red, "./Spy Off - שלך כבר דלוקה, לכיבוי המערכת הקלד Spy המערכת");
  101.             PSpy[playerid][SpyOn] = 1;
  102.             return 1;
  103.         }
  104.         if(!strcmp(cmd[1], "Off", true))
  105.         {
  106.              if(DOF2_GetInt(SFile(playerid), "HaveSpy") == 0) return SendClientMessage(playerid, Color_Red, "./Spy Buy -לקניית המערכת הקלד ,Spy אין לך מערכת");
  107.             if(PSpy[playerid][SpyOn] == 0) return SendClientMessage(playerid, Color_Red, "./Spy On - שלך כבר כבויה, להדלקת המערכת הקלד Spy המערכת");
  108.             PSpy[playerid][SpyOn] = 0;
  109.             return 1;
  110.         }
  111.         return 1;
  112.     }
  113.     return 0;
  114. }
  115.  
  116. stock GetName(playerid)
  117. {
  118.     new Name[MAX_PLAYER_NAME];
  119.     GetPlayerName(playerid, Name, sizeof(Name));
  120.     return Name;
  121. }
  122.  
  123. stock SFile(playerid)
  124. {
  125.     new S[64];
  126.     format(S, sizeof(S), "SpySystem/%s.ini", GetName(playerid));
  127.     return S;
  128. }
Advertisement
Add Comment
Please, Sign In to add comment