Ban text ...
#1

Hello

On abbord I apologize for my English

So I have a little problem when I ban someone and they reconnect to the server that it does not direct give the information why he was banned it says directly server closed the connection i have try timmers etc but doesnt work.

The ban systeme is in SQL

Код:
stock MySQL_Ban(playerid)
{
    new query[300], pname[20];
    GetPlayerName(playerid, pname, 24);
    new IP[16];
    new string[300];
    new cmdreason[128];
    new Admin[128];
    new TimeBan[128];
    new Pseudo[28];
    new Ipban[28];
	GetPlayerIp(playerid, IP, 16);
    format(query, sizeof(query), "SELECT * FROM bans WHERE Player = '%s' OR Ip = '%s'", pname, IP);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query,"|"))
    {

        mysql_fetch_field_row(Admin, "Admin");
        mysql_fetch_field_row(Pseudo, "Player");
        mysql_fetch_field_row(Ipban, "Ip");
        mysql_fetch_field_row(cmdreason, "Reason");
        mysql_fetch_field_row(TimeBan, "Time");


    }
    mysql_free_result();
    Logged[playerid] = 0;
	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
 	SendClientMessage(playerid,COLOR_WHITE,"");
  	SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
  	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
   	SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"");
    SendClientMessage(playerid,COLOR_WHITE,"----------------------------------------------------------------------------------------");
	format(string,sizeof(string),"* La connexion au serveur а йtй refusй car vous кtes bannis dйfinitivement de LSFC *");
	SendClientMessage(playerid,COLOR_RED,string);
	format(string,sizeof(string),"* Vous avez йtй bannis le {FFFFFF}%s{FF0000} avec le pseudo {FFFFFF}%s{FF0000} *",TimeBan,pname);
	SendClientMessage(playerid,COLOR_RED,string);
	format(string,sizeof(string),"* Raison: {FFFFFF}%s. *",cmdreason);
	SendClientMessage(playerid,COLOR_RED,string);
	format(string,sizeof(string),"* Vous pouvez faire une demande de dйbanissement sur {FFFFFF}wwww.lsfc.fr {FF0000}*");
	SendClientMessage(playerid,COLOR_RED,string);
	format(string,sizeof(string),"* Vous devez vous rappeller que nous ne dйbannissons pas les Cheateurs *");
	SendClientMessage(playerid,COLOR_RED,string);
	SendClientMessage(playerid,COLOR_WHITE,"----------------------------------------------------------------------------------------");
	Kick(playerid);
    return 1;
}
Reply
#2

Due to some security enhancements, Kick() can not be called directly after sending a message. You should put Kick() and Ban() on a 100ms timer.
Reply
#3

pawn Код:
forward SendDelayedBan(playerid);
public SendDelayedBan(playerid)
{
Ban(playerid);
}

forward SendDelayedKick(playerid);
public SendDelayedKick(playerid)
{
Kick(playerid);
}
Call them like so

pawn Код:
SetTimerEx("SendDelayedBan",100,0,"d",playerid);

SetTimerEx("SendDelayedKick",100,0,"d",playerid);
Sorry I couldn't indent that, I'm away from my computer right now.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)