Jump to content
  • 0

Problema comanda /ban si /kick


Question

Posted

Salutare am si eu o problema cu /ban  & /kick

când dau ban & kick apare mesaj doar la cei care is online.

eu vreau sa apar? ?i celui banat.

daca se poate putin ajutor

multumesc!

[pawn] if(strcmp(cmd, "/ban", true) == 0)

{

    if(IsPlayerConnected(playerid))

    {

    tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ban [playerid/PartOfName] [reason]");

return 1;

}

giveplayerid = ReturnUser(tmp);

if (PlayerInfo[playerid][pAdmin] >= 1)

{

    if(IsPlayerConnected(giveplayerid))

    {

        if(giveplayerid != INVALID_PLAYER_ID)

        {

    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));

GetPlayerName(playerid, sendername, sizeof(sendername));

new length = strlen(cmdtext);

while ((idx < length) && (cmdtext[idx] <= ' '))

{

idx++;

}

new offset = idx;

new result[64];

while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))

{

result[idx - offset] = cmdtext[idx];

idx++;

}

result[idx - offset] = EOS;

if(!strlen(result))

{

SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ban [playerid/PartOfName] [reason]");

return 1;

}

                        if(bantime[playerid] == 1) return SendClientMessage(playerid, COLOR_GRAD2, "** Are you trying to ban this server?");

new year, month,day;

getdate(year, month, day);

format(string, sizeof(string), "AdmCmd: %s was banned by %s, reason: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);

BanLog(string);

format(string, sizeof(string), "AdmCmd: %s was banned by %s, reason: %s", giveplayer, sendername, (result));

SendClientMessageToAll(COLOR_LIGHTRED, string);

                        new playersip[256];

GetPlayerIp(giveplayerid,playersip, sizeof(playersip));

    SendClientMessage(giveplayerid,CRISTIAN,"|______________Ban Info______________|");

            format(string, sizeof(string), "  Your nick: %s !",giveplayer);

                        SendClientMessage(giveplayerid, COLOR_GRAD1, string);

                        format(string, sizeof(string), "  Your ip is: %s !",playersip);

                        SendClientMessage(giveplayerid, COLOR_GRAD2, string);

                        format(string, sizeof(string), "  You are banned by: %s !",sendername);

                        SendClientMessage(giveplayerid, COLOR_GRAD3, string);

                        format(string, sizeof(string), "  Reason: %s !",(result));

                        SendClientMessage(giveplayerid, COLOR_GRAD4, string);

                        format(string, sizeof(string), "  Data: %d/%d/%d !",day,month,year);

                        SendClientMessage(giveplayerid, COLOR_GRAD5, string);

                        SendClientMessage(giveplayerid,CRISTIAN,"|______________Ban Info______________|");

                        bantime[playerid] = 1;

            SetTimerEx("bant", 10000, 0, "%d", playerid);

                        PlayerInfo[giveplayerid][pLocked] = 1;

Ban(giveplayerid);

return 1;

}

}//not connected

}[/pawn]

1 answer to this question

Recommended Posts

Posted

Hmmm ...

Tu ai SendClientMessageToAll adica trimite mesaj la toti playerii online

si

SendClientMessage adica trimite mesaj playerului .

Exemplu:

[pawn]CMD:ban( playerid , params [ ] )

{

    Dm(playerid);// functia care verifica ca playerul e in DM si nu poate folosi comanda

AC( playerid , 8); //functia care verifica daca are level 8 admin

new player, str[ 128 ] ,reason[ 128 ]; //news

if( sscanf( params , "us[128]", player , reason ) )return SCM( playerid , -1 , ""R"Use"W": "O"/ban  "W"< "G"playerid "W"|| "G"reason || "G"day(s)"W"> " ); // mesajul pentru a folosi corect comanda ban , folosind sscanf by Alex "Y_LESS" Cole .

    if( !IsPlayerConnected( player ) ) return SCM( playerid , -1 , ""R"P"W"layerul nu este conectat "O"!" ); // functia care verifica daca playerul este conectat

    if(P_DATA[ player ][ pAdmin ] > P_DATA[ playerid ][ pAdmin ] )return SCM( playerid , -1 , ""R"N"W"u poti da BAN unui admin !" ); // functia care verifica daca un admin incearca sa ii dea ban altuia

format( str , sizeof( str ) , ""O"%s "W"a primit Ban de la adminul "O"%s "W"< "R"reason"W": "G"%s "W">" , GetName( player ) , GetName( playerid ) , reason );//mesajul

SCMToAll( -1 , str );// mesajul trimis catre toti

print( str );

Ban( player ); // baneaza playerul

return 1;

}[/pawn]

SCMToAll - Folosit si definit ca SendClientMessageToAll

SCM - Folosit si definit ca SendClientMessage

Daca vei folosi comanda si vei avea probleme incearca sa faci asa :

#define SCMToAll SendClientMessageToAll

#define SCM SendClientMessage

idiots.png
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.