Facebook
From Sludgy Pudu, 5 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 205
  1. CMD:banoffline(playerid, params[])
  2. {
  3.         new name[MAX_PLAYER_NAME];
  4.         if(PlayerInfo[playerid][pAdmin] >= 2)
  5.         {
  6.                 new giveplayerid[25],days,reason[128],string[128],cont;
  7.                 if(sscanf(params, "s[25]ds[128]", giveplayerid,days,reason)) return SCM(playerid,COLOR_GREY, "UŻYJ: {FFFFFF}/banoffline <name> <dni> <powód>");
  8.                 if(days <= 0 || days > 1000) return SendClientMessage(playerid, COLOR_GREY, "Zla data! (1-1000)");
  9.         cont = MySQLCheckAccount(giveplayerid);
  10.         if(cont == 0) return SCM(playerid,COLOR_GREY, "Ta nazwa nie istnieje w bazie danych.");
  11.                 GetPlayerName(playerid, name, sizeof name);
  12.             new year,month,day;
  13.             getdate(year, month, day);
  14.             day += days;
  15.             if (IsMonth31(month))
  16.             {
  17.                 if (day > 31)
  18.                 {
  19.                     month += 1;
  20.                     if (month > 12)
  21.                     {
  22.                         year += 1;
  23.                         while(day > 31) day -= 31;
  24.                     }
  25.                     else while(day > 31) day -= 31;
  26.                 }
  27.             }
  28.             else if (!IsMonth31(month))
  29.             {
  30.                 if (day > 30)
  31.                 {
  32.                     month += 1;
  33.                     if (month > 12)
  34.                     {
  35.                         year += 1;
  36.                         while(day > 30) day -= 30;
  37.                     }
  38.                     else while(day > 30) day -= 30;
  39.                 }
  40.             }
  41.             else if (!IsMonth31(month) && IsMonth29(year) && month == 2)
  42.             {
  43.                 if (day > 29)
  44.                 {
  45.                     month += 1;
  46.                     if (month > 12)
  47.                     {
  48.                         year += 1;
  49.                         while(day > 29) day -= 29;
  50.                     }
  51.                     else while(day > 29) day -= 29;
  52.                 }
  53.             }
  54.             else if (!IsMonth31(month) && !IsMonth29(year) && month == 2)
  55.             {
  56.                 if (day > 28)
  57.                 {
  58.                     month += 1;
  59.                     if (month > 12)
  60.                     {
  61.                         year += 1;
  62.                         while(day > 28) day -= 28;
  63.                     }
  64.                     else while(day > 28) day -= 28;
  65.                 }
  66.             }
  67.                 new y,m,d;
  68.                 getdate(y,m,d);
  69.                 new var[184];
  70.                 mysql_real_escape_string(giveplayerid, hackmysql);
  71.                 format(var, sizeof(var), "UPDATE `users` SET `BTemp`='1' WHERE `name`='%s'",hackmysql);
  72.                 mysql_query(SQL ,var);
  73.                 format(var, sizeof(var), "UPDATE `users` SET `BYear`='%d' WHERE `name`='%s'",y,hackmysql);
  74.                 mysql_query(SQL ,var);
  75.                 format(var, sizeof(var), "UPDATE `users` SET `BMonth`='%d' WHERE `name`='%s'",m, hackmysql);
  76.                 mysql_query(SQL ,var);
  77.                 format(var, sizeof(var), "UPDATE `users` SET `BDay`='%d' WHERE `name`='%s'",day, hackmysql);
  78.                 mysql_query(SQL ,var);
  79.                 format(var, sizeof(var), "UPDATE `users` SET `BBy`='%s' WHERE `name`='%s'",name, hackmysql);
  80.                 mysql_query(SQL ,var);
  81.                 format(var, sizeof(var), "UPDATE `users` SET `BReason`='%s' WHERE `name`='%s'",reason, hackmysql);
  82.                 mysql_query(SQL ,var);
  83.                 if(days == 1)
  84.                 {
  85.                         format(string,128,"AdmCmd: %s otrzymal bana od %s na %d dni, Powód: %s",hackmysql,name,days,reason);
  86.                         SendClientMessageToAll(COLOR_LIGHTRED,string);
  87.                 }
  88.                 else if(days > 1)
  89.                 {
  90.                         format(string,128,"AdmCmd: %s otrzymal bana od %s na %d dni, Powód: %s",hackmysql,name,days,reason);
  91.                         SendClientMessageToAll(COLOR_LIGHTRED,string);
  92.                         AdminLog("/logs/admin.log", string);
  93.                 }
  94.                 Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
  95.         }
  96.         else return SendClientMessage(playerid,COLOR_LGREEN, "Nie posiadasz dostepu do tego polecenia!");
  97.         return true;
  98. }