Guest User

[FS] TempoJogado Total-Samp

a guest
Jun 10th, 2012
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* Vissite: Total-Samp (http://total-samp.blogspot.com) */
  2.  
  3. #include        <   a_samp  >
  4. #include        <   zcmd    >
  5. #include        <   dof2    >
  6. #include        <   sscanf  >
  7. #include        <   foreach >
  8.  
  9. #define         CaminhoArquivo         "TempoJogado/%s.txt"
  10. #define         SCM                     SendClientMessage
  11.  
  12. new
  13.     SecJogados[MAX_PLAYERS],
  14.     MinJogados[MAX_PLAYERS],
  15.     HorasJogadas[MAX_PLAYERS],
  16.     DiasJogados[MAX_PLAYERS],
  17.     MesesJogados[MAX_PLAYERS],
  18.     AnosJogados[MAX_PLAYERS];
  19.  
  20. CarregarTempoJogado(playerid);
  21. SalvarTempoJogado(playerid);
  22. ChecarTempoJogado(playerid);
  23.  
  24. public OnFilterScriptExit()
  25. {
  26.     foreach(Player, i)
  27.     {
  28.         SalvarTempoJogado(i);
  29.     }
  30.     DOF2_Exit();
  31.     return 1;
  32. }
  33.  
  34. public OnPlayerSpawn(playerid)
  35. {
  36.     ChecarTempoJogado(playerid);
  37.     CarregarTempoJogado(playerid);
  38.     return 1;
  39. }
  40.  
  41. public OnPlayerDisconnect(playerid)
  42. {
  43.     SalvarTempoJogado(playerid);
  44.     return 1;
  45. }
  46.  
  47. public CarregarTempoJogado(playerid)
  48. {
  49.     new Arquivo[200]; format(Arquivo, sizeof(Arquivo), CaminhoArquivo, GetPlayerNameEx(playerid));
  50.     if(!DOF2_FileExists(Arquivo)) return DOF2_CreateFile(Arquivo);
  51.  
  52.     SecJogados[playerid] = DOF2_GetInt(Arquivo, "Segundos Jogados");
  53.     MinJogados[playerid] = DOF2_GetInt(Arquivo, "Minutos Jogados");
  54.     HorasJogadas[playerid] = DOF2_GetInt(Arquivo, "Horas Jogadas");
  55.     DiasJogados[playerid] = DOF2_GetInt(Arquivo, "Dias Jogados");
  56.     MesesJogados[playerid] = DOF2_GetInt(Arquivo, "Meses Jogados");
  57.     AnosJogados[playerid] = DOF2_GetInt(Arquivo, "Anos Jogados");
  58.  
  59.     return 1;
  60. }
  61.  
  62. public SalvarTempoJogado(playerid)
  63. {
  64.     new Arquivo[200]; format(Arquivo, sizeof(Arquivo), CaminhoArquivo, GetPlayerNameEx(playerid));
  65.  
  66.     DOF2_SetInt(Arquivo, "Segundos Jogados", SecJogados[playerid]);
  67.     DOF2_SetInt(Arquivo, "Minutos Jogados", MinJogados[playerid]);
  68.     DOF2_SetInt(Arquivo, "Horas Jogadas", HorasJogadas[playerid]);
  69.     DOF2_SetInt(Arquivo, "Dias Jogados", DiasJogados[playerid]);
  70.     DOF2_SetInt(Arquivo, "Meses Jogados", MesesJogados[playerid]);
  71.     DOF2_SetInt(Arquivo, "Anos Jogados", AnosJogados[playerid]);
  72.  
  73.     DOF2_SaveFile();
  74.  
  75.     return 1;
  76. }
  77.  
  78. public ChecarTempoJogado(playerid)
  79. {
  80.     if(SecJogados[playerid] >= 60)
  81.     {
  82.         SecJogados[playerid] = 0;
  83.         MinJogados[playerid] ++;
  84.     }
  85.     if(MinJogados[playerid] >= 60)
  86.     {
  87.         MinJogados[playerid] = 0;
  88.         HorasJogadas[playerid] ++;
  89.     }
  90.     if(HorasJogadas[playerid] >= 24)
  91.     {
  92.         HorasJogadas[playerid] = 0;
  93.         DiasJogados[playerid] ++;
  94.     }
  95.     if(DiasJogados[playerid] >= 30)
  96.     {
  97.         DiasJogados[playerid] = 0;
  98.         MesesJogados[playerid] ++;
  99.     }
  100.     if(MesesJogados[playerid] >= 12)
  101.     {
  102.         MesesJogados[playerid] = 0;
  103.         AnosJogados[playerid] ++;
  104.     }
  105.     SecJogados[playerid] ++;
  106.     return SetTimerEx("ChecarTempoJogado", 1000, false, "i", playerid);
  107. }
  108.  
  109. stock GetPlayerNameEx(playerid)
  110. {
  111.     new Nome[MAX_PLAYER_NAME]; GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
  112.     return Nome;
  113. }
  114.  
  115. CMD:tempojogado(playerid)
  116. {
  117.     new string[128];
  118.     if(MinJogados[playerid] == 0)
  119.     {
  120.         format(string, 128, "Você está jogando no server a somente: {FE0000}%d {FFFFFF}segundos.", SecJogados[playerid]);
  121.     }
  122.     else if(HorasJogadas[playerid] == 0 && MinJogados[playerid] != 0)
  123.     {
  124.         format(string, 128, "Você está jogando no server a somente: {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", MinJogados[playerid], SecJogados[playerid]);
  125.     }
  126.     else if(DiasJogados[playerid] == 0 && HorasJogadas[playerid] != 0 && MinJogados[playerid] != 0)
  127.     {
  128.         format(string, 128, "Você já está jogando no server a: {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", HorasJogadas[playerid], MinJogados[playerid], SecJogados[playerid]);
  129.     }
  130.     else if(MesesJogados[playerid] == 0 && DiasJogados[playerid] != 0 && HorasJogadas[playerid] != 0 && MinJogados[playerid] != 0)
  131.     {
  132.         format(string, 128, "Você já está jogando no server a: {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", DiasJogados[playerid], HorasJogadas[playerid], MinJogados[playerid], SecJogados[playerid]);
  133.     }
  134.     else if(AnosJogados[playerid] == 0 && MesesJogados[playerid] != 0 && DiasJogados[playerid] != 0 && HorasJogadas[playerid] != 0 && MinJogados[playerid] != 0)
  135.     {
  136.         format(string, 128, "Nossa! Você já está jogando no server a: {FE0000}%d {FFFFFF}meses, {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos", MesesJogados[playerid], DiasJogados[playerid], HorasJogadas[playerid], MinJogados[playerid], SecJogados[playerid]);
  137.     }
  138.     else if(AnosJogados[playerid] != 0 && MesesJogados[playerid] != 0 && DiasJogados[playerid] != 0 && HorasJogadas[playerid] != 0 && MinJogados[playerid] != 0)
  139.     {
  140.         format(string, 128, "Puxa vida!!!!! Você já está jogando no server a: {FE0000}%d {FFFFFF}anos, {FE0000}%d {FFFFFF}meses, {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos", AnosJogados[playerid], MesesJogados[playerid], DiasJogados[playerid], HorasJogadas[playerid], MinJogados[playerid], SecJogados[playerid]);
  141.     }
  142.     return SCM(playerid, -1, string);
  143. }
  144.  
  145. CMD:tempojogadoid(playerid, params[])
  146. {
  147.     new string[128], id;
  148.     if(sscanf(params, "u", id)) return SCM(playerid, -1, "Utilize: /tempojogadoid [ID/Nome]");
  149.     if(!IsPlayerConnected(id)) return SCM(playerid, -1, "Jogador não conectado!");
  150.     if(MinJogados[id] == 0)
  151.     {
  152.         format(string, 128, "O jogador %s está jogando no server a somente: {FE0000}%d {FFFFFF}segundos.", GetPlayerNameEx(id), SecJogados[id]);
  153.     }
  154.     else if(HorasJogadas[id] == 0 && MinJogados[id] != 0)
  155.     {
  156.         format(string, 128, "O jogador %s está jogando no server a somente: {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", GetPlayerNameEx(id), MinJogados[id]);
  157.     }
  158.     else if(DiasJogados[id] == 0 && HorasJogadas[id] != 0 && MinJogados[id] != 0)
  159.     {
  160.         format(string, 128, "O jogador %s já está jogando no server a: {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", GetPlayerNameEx(id), HorasJogadas[id], MinJogados[id]);
  161.     }
  162.     else if(MesesJogados[id] == 0 && DiasJogados[id] != 0 && HorasJogadas[id] != 0 && MinJogados[id] != 0)
  163.     {
  164.         format(string, 128, "O jogador %s já está jogando no server a: {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos.", GetPlayerNameEx(id), DiasJogados[id], HorasJogadas[id], MinJogados[id]);
  165.     }
  166.     else if(AnosJogados[id] == 0 && MesesJogados[id] != 0 && DiasJogados[id] != 0 && HorasJogadas[id] != 0 && MinJogados[id] != 0)
  167.     {
  168.         format(string, 128, "O jogador %s já está jogando no server a: {FE0000}%d {FFFFFF}meses, {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos", GetPlayerNameEx(id), MesesJogados[id], DiasJogados[id], HorasJogadas[id], MinJogados[id]);
  169.     }
  170.     else if(AnosJogados[id] != 0 && MesesJogados[id] != 0 && DiasJogados[id] != 0 && HorasJogadas[id] != 0 && MinJogados[id] != 0)
  171.     {
  172.         format(string, 128, "O jogador %s já está jogando no server a: {FE0000}%d {FFFFFF}anos, {FE0000}%d {FFFFFF}meses, {FE0000}%d {FFFFFF}dias, {FE0000}%d {FFFFFF}horas, {FE0000}%d {FFFFFF}minutos e {FE0000}%d {FFFFFF}segundos", GetPlayerNameEx(id), AnosJogados[id], MesesJogados[id], DiasJogados[id], HorasJogadas[id], MinJogados[id]);
  173.     }
  174.     return SCM(playerid, -1, string);
  175. }
Advertisement
Add Comment
Please, Sign In to add comment