Weird Problem
#1

This command used to ban players but now it doesnt o_O

pawn Код:
CMD:ban(playerid, params[])
{
    if(APlayerData[playerid][PlayerLevel] < 3 && !IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Error: No command for you!");
    new ID, reason[48];
    if (sscanf(params, "us[48]", ID, reason)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /ban [id] [reason]");
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF0000FF, "This player is not connected.");
    new string[90];
    SendClientMessage(ID, 0xFF0000FF, "You have been banned from the server");
    format(string,sizeof(string),"Reason: %s", reason);
    SendClientMessage(ID, 0xFF0000FF, string);
    new name[24], name2[24];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(ID, name2, sizeof(name2));
    format(string,sizeof(string),"Admin: %s", name);
    SendClientMessage(ID, 0xFF0000FF, string);
    SendClientMessage(ID, 0xFF0000FF, "If you think this is an unfair ban, create ban appeal at www.GranTrucking.com");
    format(string, sizeof string, "Admin %s has banned %s (Reason: %s)", name, name2, reason);
    SendClientMessageToAll(0xFF0000FF, string);
    return 1;
}
Reply
#2

Try this

pawn Код:
CMD:ban(playerid, params[])
{
    if(APlayerData[playerid][PlayerLevel] < 3 && !IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Error: No command for you!");
    //
    new ID, reason[48];
    if (sscanf(params, "us[48]", ID, reason)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /ban [id] [reason]");
    //
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF0000FF, "This player is not connected.");
    //
    new string[90];
    SendClientMessage(ID, 0xFF0000FF, "You have been banned from the server");
    format(string,sizeof(string),"Reason: %s", reason);
    SendClientMessage(ID, 0xFF0000FF, string);
    //
    new name[24], name2[24];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(ID, name2, sizeof(name2));
    //
    format(string,sizeof(string),"Admin: %s", name);
    SendClientMessage(ID, 0xFF0000FF, string);
    SendClientMessage(ID, 0xFF0000FF, "If you think this is an unfair ban, create ban appeal at www.GranTrucking.com");
    format(string, sizeof string, "Admin %s has banned %s (Reason: %s)", name, name2, reason);
    SendClientMessageToAll(0xFF0000FF, string);
    BanEx(ID,reason);//ban a player with ur reason
    //or if you have ban function put it here
    return 1;
}
Cheers
PDS2012
Reply
#3

Ban(ID)?
Reply
#4

Okay, you did all the command, i don't see any BanEx(ID, reason);

Edit : lol too late.
Reply
#5

Quote:
Originally Posted by newbienoob
Посмотреть сообщение
Ban(ID)?
BanEx(playerid, reason); if you want a reason why that player got banned
you can also use
Ban(ID); if you dont want any reason why the player got banned
Reply
#6

When a player gets banned it only says "Server closed the connection", and not the other it is supposed to say like:
You have been banned from the server
Reason:
Admin:
If you think this is an unfair ban, create ban appeal at www.GranTrucking.com

pawn Код:
CMD:ban(playerid, params[])
{
    if(APlayerData[playerid][PlayerLevel] < 3 && !IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Error: No command for you!");
    //
    new ID, reason[48];
    if (sscanf(params, "us[48]", ID, reason)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /ban [id] [reason]");
    //
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF0000FF, "This player is not connected.");
    //
    new string[90];
    SendClientMessage(ID, 0xFF0000FF, "You have been banned from the server");
    format(string,sizeof(string),"Reason: %s", reason);
    SendClientMessage(ID, 0xFF0000FF, string);
    //
    new name[24], name2[24];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(ID, name2, sizeof(name2));
    //
    format(string,sizeof(string),"Admin: %s", name);
    SendClientMessage(ID, 0xFF0000FF, string);
    SendClientMessage(ID, 0xFF0000FF, "If you think this is an unfair ban, create ban appeal at www.GranTrucking.com");
    format(string, sizeof string, "Admin %s has banned %s (Reason: %s)", name, name2, reason);
    SendClientMessageToAll(0xFF0000FF, string);
    BanEx(ID,reason);//ban a player with ur reason
    //or if you have ban function put it here
    return 1;
}
Reply
#7

Set a timer for the BanEx.
Reply
#8

Still dont work /:
Can you do it?
Maybe i did it wrong.
Reply
#9

Quote:
Originally Posted by NathNathii
Посмотреть сообщение
When a player gets banned it only says "Server closed the connection", and not the other it is supposed to say like:
You have been banned from the server
Reason:
Admin:
If you think this is an unfair ban, create ban appeal at www.GranTrucking.com

pawn Код:
CMD:ban(playerid, params[])
{
    if(APlayerData[playerid][PlayerLevel] < 3 && !IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Error: No command for you!");
    //
    new ID, reason[48];
    if (sscanf(params, "us[48]", ID, reason)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /ban [id] [reason]");
    //
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, 0xFF0000FF, "This player is not connected.");
    //
    new string[90];
    SendClientMessage(ID, 0xFF0000FF, "You have been banned from the server");
    format(string,sizeof(string),"Reason: %s", reason);
    SendClientMessage(ID, 0xFF0000FF, string);
    //
    new name[24], name2[24];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(ID, name2, sizeof(name2));
    //
    format(string,sizeof(string),"Admin: %s", name);
    SendClientMessage(ID, 0xFF0000FF, string);
    SendClientMessage(ID, 0xFF0000FF, "If you think this is an unfair ban, create ban appeal at www.GranTrucking.com");
    format(string, sizeof string, "Admin %s has banned %s (Reason: %s)", name, name2, reason);
    SendClientMessageToAll(0xFF0000FF, string);
    BanEx(ID,reason);//ban a player with ur reason
    //or if you have ban function put it here
    return 1;
}
Anyone? :/
Reply
#10

Man instead of Ban/BanEx why you don't use variable, and write var in playerfile when player disconnects, and when player connects check if that variable is true, player won't be able to play on server, and it will kick him..

pawn Код:
// in the enumerator of variables, or anywhere, like on top of the script
new banned[MAX_PLAYERS] = 0;
// now command..
COMMAND:ban(playerid, params[])
{
     new reason[128], string[128], player;
     if(!IsPlayerAdmin(playerid)
             return SendClientMessage(playerid, -1, "ERROR: You are not admin!");
     else if(sscanf(params, "us[128]", player, reason))
             return SendClientMessage(playerid, -1, "USAGE: /ban [playerid] [reason]");
     else if(IsPlayerAdmin(player))
             return SendClientMessage(playerid, -1, "ERROR: You can not ban admin");
     else if(player == playerid)
             return SendClientMessage(playerid, -1, "Don't ban yourself motherfucker!");
     else if(!IsPlayerConnected(playerid))
             return SendClientMessage(playerid, -1, "ERROR: Player is not connected");
     banned[player] = 1;
     Kick(player);
     new strrrrrr[128], playernm[MAX_PLAYER_NAME], adminnm[MAX_PLAYER_NAME];
     GetPlayerName(playerid, adminnm, sizeof(adminnm));
     GetPlayerName(player, playernm, sizeof(playernm));
     format(strrrrrr, sizeof(strrrrrr), "Admin %s has banned %s", adminnm, playernm);
     SendClientMessageToAll(0xFF4500FF, strrrrrr);
     return 1;
}
And, make sure that variable "banned" is written when player dissconects!
I don't know if you are using yini or fwrite
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)