Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Бан система

Статус
В этой теме нельзя размещать новые ответы.

Alvins

Ученик
Здравствуйте форумчане,у меня такая беда,когда банишь игрока,он начинает регестрироватся заного или заходит на сервере и у него не чего нету,тоесть как заного родился)
Помогите исправить:


PHP:
if(strcmp(cmd, "/ban", true) == 0)
	{
	    if(PlayerInfo[playerid][pAdmin] < 1)
		{
			SendClientMessage(playerid, COLOR_WHITE, "{b3f9b0}Недоступно!");
			return 1;
		}
		GetPlayerName(playerid, sendername, sizeof(sendername));
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /ban [ID] [срок бана] [Причина]");
		giveplayerid = strval(tmp);
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /ban [ID] [срок бана] [Причина]");
		new chislo = strval(tmp);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /ban [ID] [срок бана] [Причина]");
		if(PlayerInfo[playerid][pAdmin] >= 2)
		{
			if(giveplayerid != INVALID_PLAYER_ID)
			{
				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(chislo < 1|| chislo > 999) { SendClientMessage(playerid, COLOR_WHITE, "{b3f9b0}• {FFFFFF}Время от 1 до 40 часов!"); return true; }
				if(!strlen(result)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /ban [ID] [срок бана] [Причина]");
				new PlayerNick[MAX_PLAYER_NAME], PlayerBan[MAX_PLAYER_NAME];
				GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
				GetPlayerName(giveplayerid, PlayerBan, MAX_PLAYER_NAME);
				format(string, sizeof(string), "Criminal-Streets: %s забанен администратором %s, причина: %s", PlayerBan,PlayerNick, (result));
				ABroadCast(COLOR_GREEN, string,1);
				GetBan(playerid);
				SendClientMessage(giveplayerid, COLOR_ORANGE, "Оспорить свой бан можно на YourGame.su");
				SendClientMessage(giveplayerid, COLOR_LIGHTRED, "Обязательно сделайте скриншот (F8) с этим сообщением если хотите подать заявку на разбан");
				AddBan(giveplayerid, PlayerBan, PlayerNick, 2, chislo, result);
				return true;
			}
		}
		return true;
	}
	if(strcmp(cmd, "/sban", true) == 0)
	{
	    if(PlayerInfo[playerid][pAdmin] < 1)
		{
			SendClientMessage(playerid, COLOR_WHITE, "{b3f9b0}Недоступно!");
			return 1;
		}
		GetPlayerName(playerid, sendername, sizeof(sendername));
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /sban [ID] [срок бана] [Причина]");
		giveplayerid = strval(tmp);
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /sban [ID] [срок бана] [Причина]");
		new chislo = strval(tmp);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /ban [ID] [срок бана] [Причина]");
		if(PlayerInfo[playerid][pAdmin] >= 2)
		{
			if(giveplayerid != INVALID_PLAYER_ID)
			{
				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)) return SendClientMessage(playerid, COLOR_GRAD6, "{b3f9b0}• {FFFFFF} /sban [ID] [срок бана] [Причина]");
				new PlayerNick[MAX_PLAYER_NAME], PlayerBan[MAX_PLAYER_NAME];
				GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
				GetPlayerName(giveplayerid, PlayerBan, MAX_PLAYER_NAME);
				format(string, sizeof(string), "[SBAN]Criminal-Streets: %s забанен администратором %s, причина: %s", PlayerBan,PlayerNick, (result));
				ABroadCast(COLOR_GREEN, string,1);
				AddBan(giveplayerid, PlayerBan, PlayerNick, 2, chislo, result);
				return true;
			}
		}
		return true;
	}
	if(strcmp(cmd, "/unban", true) == 0)
	{
		if(PlayerInfo[playerid][pAdmin] >= 6)
		{
		    if(PlayerInfo[playerid][pAdmin] < 1)
			{
				SendClientMessage(playerid, COLOR_WHITE, "{b3f9b0}Недоступно!");
				return 1;
			}
			new ssss[300];
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_GREY,"{b3f9b0}• {FFFFFF} /unban [Игровой ник]");
			format(string,sizeof(string),"banlist/%s.ini",tmp);
			if(!fexist(string))
			{
				SendClientMessage(playerid,COLOR_WHITE,"{f9b0b0}x {FFFFFF}Данный игрок не забанен!");
				return 1;
			}
			else
			{
				new str1[70], str2[70];
				new File = iniOpen(string);
				iniGet(File,"PlayerBan",str1);
				iniGet(File,"Reason",str2);
				iniClose(File);
				format(ssss,sizeof(ssss), "Аккаунт %s разбанен!\nЗабанил(а): %s\nПричина бана: %s",tmp,str1,str2);
				ShowPlayerDialog(playerid,8059,DIALOG_STYLE_MSGBOX,"Инфо:",ssss,"Ok","");
				format(string, 256, "[Инфо: /unban] %s был разбанен!", tmp);
				ABroadCast(COLOR_YELLOW,string,1);
				UnBan(tmp);
			}
			return 1;
		}
	}




+'c к этому не разбанивает

+'сы раздам.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу