Advertisement
yuvaldor30

TimeRecord for MacQuid

Oct 4th, 2020 (edited)
2,229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.62 KB | None | 0 0
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include "amxmodx.inc"
  4. #include "fvault.inc"
  5.  
  6. #define PLUGIN "Time System"
  7. #define VERSION "1.0"
  8. #define AUTHOR "MJ"
  9.  
  10. #pragma semicolon 1
  11.  
  12. enum _:eTimeData
  13. {
  14.     Float:TIME_LOGIN,
  15.     TIME_RECORD
  16. };
  17.  
  18. new g_iData[33][eTimeData];
  19.  
  20. new const g_szFileVault[] = "TimeData";
  21.  
  22. public plugin_init() {
  23.     register_plugin(PLUGIN, VERSION, AUTHOR);
  24.  
  25.     register_clcmd("say","cmd_Say");
  26. }
  27.  
  28. public client_authorized(iIndex)
  29.     cmd_LoadData(iIndex);
  30.    
  31. public client_disconnect(iIndex)
  32.     cmd_SaveData(iIndex);
  33.  
  34. public cmd_Say(iIndex)
  35. {
  36.     new szText[192];
  37.     read_args(szText,charsmax(szText));
  38.    
  39.     remove_quotes(szText);
  40.     trim(szText);
  41.    
  42.     if(equali(szText,"/time"))
  43.     {
  44.         cmd_UpdateTime(iIndex);
  45.         client_print(iIndex,print_chat,"[AMXX] You have played %d:%d on server.",g_iData[iIndex][TIME_RECORD]/60, g_iData[iIndex][TIME_RECORD]%60);
  46.     }
  47. }
  48.  
  49. stock cmd_UpdateTime(iIndex)
  50. {
  51.     g_iData[iIndex][TIME_RECORD] += floatround(get_systime() - float(g_iData[iIndex][TIME_LOGIN]));
  52.     g_iData[iIndex][TIME_LOGIN] = get_systime();
  53. }
  54.  
  55. stock cmd_LoadData(const iIndex)
  56. {
  57.     new szData[16],szKey[25];
  58.     get_user_authid(iIndex,szKey,charsmax(szKey));
  59.    
  60.     if(fvault_get_data(g_szFileVault,szKey,szData,charsmax(szData)))
  61.         g_iData[iIndex][TIME_RECORD] = str_to_num(szData);
  62.  
  63.     g_iData[iIndex][TIME_LOGIN] = get_systime();
  64. }  
  65.  
  66. stock cmd_SaveData(const iIndex)
  67. {
  68.     cmd_UpdateTime(iIndex);
  69.    
  70.     static szKey[25];
  71.     get_user_authid(iIndex,szKey,charsmax(szKey));
  72.    
  73.     new szData[16];
  74.     formatex(szData,charsmax(szData),"%d",g_iData[iIndex][TIME_RECORD]);
  75.    
  76.     fvault_set_data(g_szFileVault,szKey,szData);
  77. }
  78.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement