DuskXtremeX

SA-MP MJay768 Simple Token System v1.0

Jul 30th, 2014
489
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.93 KB | None | 0 0
  1. #define FILTERSCRIPT
  2.  
  3. #include <a_samp>
  4. #include <YSI\y_ini>
  5. #include <zcmd>
  6. #include <sscanf2>
  7. #define PATH "/Tokens/%s.ini"
  8. #define COLOR_RED 0xAA3333AA
  9.  
  10.  
  11. enum pData
  12. {
  13.   ptokens
  14. }
  15. new PlayerInfo[MAX_PLAYERS][pData];
  16.  
  17. forward LoadUser_Data(playerid,TarID,name[],value[]);
  18. public LoadUser_Data(playerid,TarID,name[],value[])
  19. {
  20.   INI_Int("Tokens:", PlayerInfo[TarID][ptokens]);
  21.   return 1;
  22. }
  23.  
  24. stock UserPath(TarID)
  25. {
  26.   new string[128],pName[MAX_PLAYER_NAME];
  27.   GetPlayerName(TarID,pName,MAX_PLAYER_NAME);
  28.   format(string,sizeof(string),PATH,pName);
  29.   return string;
  30. }
  31.  
  32.  
  33. COMMAND:givetokens(playerid, params[])
  34. {
  35.   new TarID, amount;
  36.   if(sscanf(params,"ui",TarID,amount)) return SendClientMessage(playerid,COLOR_RED,"Syntax: [Playerid] [tokens]");
  37.   if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_RED,"You're not authorized to use this command");
  38.   if(!IsPlayerConnected(TarID)) return SendClientMessage(playerid,COLOR_RED,"Check your entry.~n~Player is not Connected to the game");
  39.   new currentok = PlayerInfo[TarID][ptokens];
  40.   PlayerInfo[TarID][ptokens] = currentok + amount;
  41.   new INI:File = INI_Open(UserPath(TarID));
  42.   INI_SetTag(File, "VIP Tokens");
  43.   INI_WriteInt(File,"Tokens:", PlayerInfo[TarID][ptokens]);
  44.   INI_Close(File);
  45.   return 1;
  46. }
  47.  
  48.  
  49. forward OnPlayerConnect(playerid);
  50. public OnPlayerConnect(playerid)
  51. {
  52.     if(fexist(UserPath(playerid)))
  53.     {
  54.      INI_ParseFile(UserPath(playerid), "LoadUser_%s",.bExtra =true, .extra =playerid);
  55.     }
  56.     else if(!fexist(UserPath(playerid)))
  57.     {
  58.       new INI:File = INI_Open(UserPath(playerid));
  59.       INI_SetTag(File,"VIP Tokens");
  60.       INI_WriteInt(File,"Tokens:", 0);
  61.       INI_Close(File);
  62.     }
  63.     return 1;
  64. }
  65. forward CheckTokens(playerid);
  66. public CheckTokens(playerid)
  67. {
  68.   new INI:File = INI_Open(UserPath(playerid));
  69.   INI_SetTag(File, "VIP Tokens");
  70.   INI_WriteInt(File,"Tokens:", PlayerInfo[playerid][ptokens]);
  71.   INI_Close(File);
  72.   return 1;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment