CMD:ban(playerid, params[])
{ // admin lv: >=3 (moderatore)
new TargetPlayer, banreason[128], str[128];
if(Player[playerid][Admin] >= 3)
{
if(sscanf(params, "us[128]", TargetPlayer, banreason)) return SendClientMessage(playerid, COLOR_SYSTEM_ADMIN, "[COMANDO] Uso: /remoteban [Utente] [Motivo ban]");
if(isvoid(banreason))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Devi inserire il motivo del ban per: %s", Player[TargetPlayer][RPName]);
SendClientMessage(playerid, -1, str);
return 1;
}/*
if(TargetPlayer == playerid)
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Non puoi bannare te stesso!");
SendClientMessage(playerid, -1, str);
return 1;
}*/
if(!IsPlayerConnected(TargetPlayer))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Giocatore non trovato{FFFF}, se registrato al server usa /remoteban");
SendClientMessage(playerid, -1, str);
return 1;
}
if(TargetPlayer != INVALID_PLAYER_ID)
{
// messaggio all'admin
format(str, sizeof(str), "{FFFFFF}[INFO]: Hai appena bannato: {AFAFAFAF}%s", Player[TargetPlayer][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FFFFFF}[INFO]: Motivo: {FF0000}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
// messaggio all'utente bannato
format(str, sizeof(str), "{FF0000}[BAN]: Sei Stato bannato da: {FFFF00}%s", Player[playerid][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FF0000}[BAN]: Motivo: {FFFF00}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
new banquery[256];
mysql_format(g_SQL, banquery, sizeof banquery,
"INSERT INTO 'bans' ('username', 'bannedby', 'reason', 'date', 'ip?) VALUES ('%e', '%e', '%e', '%e', '%e')",
Player[TargetPlayer][Name], Player[playerid][Password], banreason, ReturnDate(), Player[TargetPlayer][LastIP]);
mysql_tquery(g_SQL, banquery);
DelayedKickTime(TargetPlayer, 1500); // 1,5 secondi
return 1;
}
}
else if(Player[playerid][Admin] < 3)
{
SendErrorMessage(playerid, ERROR_ADMIN_LEVEL);
return 1;
}
else if(Player[playerid][Admin] == 0)
{
SendErrorMessage(playerid, ERROR_ADMIN);
return 1;
}
return 1;
}
mysql_format(g_SQL, banquery, sizeof banquery, "INSERT INTO `bans` (`username`, `bannedby`, `reason`, `date`, `ip`) VALUES ('%e', '%e', '%e', '%e', '%e')", Player[TargetPlayer][Name], Player[playerid][Password], banreason, ReturnDate(), Player[TargetPlayer][LastIP]); mysql_tquery(g_SQL, banquery);
CMD:ban(playerid, params[])
{ // admin lv: >=3 (moderatore)
new TargetPlayer, banreason[128], str[128];
if(Player[playerid][Admin] >= 3)
{
if(sscanf(params, "us[128]", TargetPlayer, banreason)) return SendClientMessage(playerid, COLOR_SYSTEM_ADMIN, "[COMANDO] Uso: /remoteban [Utente] [Motivo ban]");
if(isvoid(banreason))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Devi inserire il motivo del ban per: %s", Player[TargetPlayer][RPName]);
SendClientMessage(playerid, -1, str);
return 1;
}/*
if(TargetPlayer == playerid)
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Non puoi bannare te stesso!");
SendClientMessage(playerid, -1, str);
return 1;
}*/
if(!IsPlayerConnected(TargetPlayer))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Giocatore non trovato{FFFF}, se registrato al server usa /remoteban");
SendClientMessage(playerid, -1, str);
return 1;
}
if(TargetPlayer != INVALID_PLAYER_ID)
{
// messaggio all'admin
format(str, sizeof(str), "{FFFFFF}[INFO]: Hai appena bannato: {AFAFAF}%s", Player[TargetPlayer][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FFFFFF}[INFO]: Motivo: {FF0000}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
// messaggio all'utente bannato
format(str, sizeof(str), "{FF0000}[BAN]: Sei Stato bannato da: {FFFF00}%s", Player[playerid][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FF0000}[BAN]: Motivo: {FFFF00}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
// da qua non inserisce niente non so perchй/ here don't insert nothing idk why
new banquery[256];
mysql_format(g_SQL, banquery, sizeof banquery,
"INSERT INTO `bans` (`username`, `bannedby`, `reason`, `date`, `ip`) VALUES ('%s', '%s', '%s', '%s', '%s')",
Player[TargetPlayer][Name], Player[TargetPlayer][RPName], banreason, ReturnDate(), Player[TargetPlayer][LastIP]);
mysql_tquery(g_SQL, banquery);
DelayedKickTime(TargetPlayer, 1500); // 1,5 secondi
return 1;
}
}
else if(Player[playerid][Admin] < 3)
{
SendErrorMessage(playerid, ERROR_ADMIN_LEVEL);
return 1;
}
else if(Player[playerid][Admin] == 0)
{
SendErrorMessage(playerid, ERROR_ADMIN);
return 1;
}
return 1;
}
CMD:ban(playerid, params[])
{ // admin lv: >=3 (moderatore)
new TargetPlayer, banreason[128], str[128], banquery[256];
if(Player[playerid][Admin] >= 3)
{
if(sscanf(params, "us[128]", TargetPlayer, banreason)) return SendClientMessage(playerid, COLOR_SYSTEM_ADMIN, "[COMANDO] Uso: /remoteban [Utente] [Motivo ban]");
if(isvoid(banreason))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Devi inserire il motivo del ban per: %s", Player[TargetPlayer][RPName]);
SendClientMessage(playerid, -1, str);
return 1;
}
if(TargetPlayer == playerid)
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Non puoi bannare te stesso!");
SendClientMessage(playerid, -1, str);
return 1;
}
if(!IsPlayerConnected(TargetPlayer))
{
format(str, sizeof(str), "{FF0000}[ERRORE]: Giocatore non trovato{FFFFFF}, se registrato al server usa /remoteban");
SendClientMessage(playerid, -1, str);
return 1;
}
if(TargetPlayer != INVALID_PLAYER_ID)
{ // messaggio all'admin
format(str, sizeof(str), "{FFFFFF}[INFO]: Hai appena bannato: {AFAFAF}%s", Player[TargetPlayer][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FFFFFF}[INFO]: Motivo: {FF0000}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
// messaggio all'utente bannato
format(str, sizeof(str), "{FF0000}[BAN]: Sei Stato bannato da: {FFFF00}%s", Player[playerid][RPName]);
SendClientMessage(TargetPlayer, -1, str);
format(str, sizeof(str), "{FF0000}[BAN]: Motivo: {FFFF00}%s", banreason);
SendClientMessage(TargetPlayer, -1, str);
mysql_format(g_SQL, banquery, sizeof(banquery),
"INSERT INTO `bans` (`username`, `bannedby`, `banreason`, `date`, `ip`) VALUES ('%s', '%s', '%s', '%s', '%s')",
Player[TargetPlayer][Name],
Player[playerid][Name],
banreason,
ReturnDate(),
Player[TargetPlayer][LastIP]);
mysql_tquery(g_SQL, banquery);
DelayedKickTime(TargetPlayer, 5000); // 1,5 secondi
return 1;
}
return 1;
}
else if(Player[playerid][Admin] < 3)
{
SendErrorMessage(playerid, ERROR_ADMIN_LEVEL);
return 1;
}
else if(Player[playerid][Admin] == 0)
{
SendErrorMessage(playerid, ERROR_ADMIN);
return 1;
}
return 1;
}
To be honest, if 1,5 seconds is not enough to run a simple INSERT query, you might have a more serious problem somewhere else, possibly in your database or in your MySQL plug-in. A query like that should take no more than a few milliseconds to run.
|