13.02.2009, 14:42
pawn Код:
#define red 0xFF0000AA
#define green 0x33FF33AA
public OnPlayerConnect(playerid)
{
new pname[MAX_PLAYER_NAME], File:file=fopen("samp-names.ban", io_read), string[256]; //256 not 128 for reading files
GetPlayerName(playerid, pname, sizeof(pname));
while(fread(file, string))
{
if(strfind(string, pname, true) == 0)
{
SendClientMessage(playerid, red, "Sorry, that username has been banned. Please join with a diffrent undername!");
Kick(playerid);
}
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/nameban", cmdtext, true, 8) == 0)
{
if(IsPlayerAdmin(playerid) == 0) return SendClientMessage(playerid, red, "You are not an admin");
if(strlen(cmdtext[9]) == 0) return SendClientMessage(playerid, red, "Usage: /nameban [id] [reason]");
new pos = strfind(cmdtext, " ", true, 9);
if(pos == -1) return SendClientMessage(playerid, red, "Usage: /nameban [id] [reason]");
if(strlen(cmdtext[pos++]) == 0) return SendClientMessage(playerid, red, "Usage: /nameban [id] [reason]");
if(IsPlayerConnected(strval(cmdtext[9])) == 0) return SendClientMessage(playerid, red, "That player is not connected");
new pname[MAX_PLAYER_NAME], File:file=fopen("samp-names.ban", io_write), string[MAX_PLAYER_NAME + 5];
GetPlayerName(strval(cmdtext[9]), pname, sizeof(pname));
format(string, sizeof(string), "%s\r\n", pname);
fwrite(file, string);
fclose(file);
format(string, sizeof(string), "%s has been banned from the name (reason: %s)", pname, cmdtext[pos++]);
SendClientMessageToAll(green, string);
Ban(strval(cmdtext[9]));
return 1;
}
return 0;
}

