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

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

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

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

Помогите со сменой ника

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

#Fredd

Новичок
Проблема со сменой ника когда человек подаёт заявку на смену ника я её подтверждаю ник меняется но я могу ещё раз подтвердить смену ника и ник меняется на старый, как сделать что бы ник можно было менять один раз для одного игрока что бы не было вот так



Вот команда для подтверждения смены ника

PHP:
	if(strcmp(cmd, "/changename", true) == 0){
		new newname[128],stringo[128],string[128],passpass1[64];
		new giveplayer[MAX_PLAYER_NAME],sendername[MAX_PLAYER_NAME];
		new giveplayerid;
		if (PlayerInfo[playerid][pAdmins] >= 3){
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) return SCM(playerid, COLOR_WHITE, "{F74848}» Введите{FFFFFF}: /changename [id]");
			giveplayerid = ReturnUser(tmp);
			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++;}{
					format(stringo,sizeof(stringo),"users/%s.ini",newname);
					if(fexist(stringo)) return SCM(playerid,COLOR_GREY,"Этот ник занят уже.");
					GetPlayerName(playerid, sendername, sizeof(sendername));
					if(strlen(WantNickChange[giveplayerid]) < 3) return SCM(playerid,RIFA_COLOR,"Этот игрок не подавал заявку на смену NickName");
					nick[giveplayerid] = 1;
					format(changenam,sizeof(changenam),"%s",WantNickChange[giveplayerid]);
					format(stringo,sizeof(stringo),"users/%s.ini",WantNickChange[giveplayerid]);
					dini_Create(stringo);
					format(string,sizeof(string),"users/%s.ini",giveplayer);
					new File = iniOpen(string);
					iniGet(File,"Key",passpass1);
					iniClose(File);
					strmid(smgs[giveplayerid], passpass1, 0, strlen(passpass1), 255);
					ChangeName(giveplayerid);}}else if(giveplayerid == INVALID_PLAYER_ID){ SCM(playerid, COLOR_GREY, "[X] Игрок оффлайн!");}}return true;}
Сама смена ника

PHP:
GetPlayerName(playerid,plnamep,sizeof(plnamep));
	if(!strcmp(PlayerInfo[playerid][pNik1],"None",true)) strmid(PlayerInfo[playerid][pNik1], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik2],"None",true)) strmid(PlayerInfo[playerid][pNik2], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik3],"None",true)) strmid(PlayerInfo[playerid][pNik3], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik4],"None",true)) strmid(PlayerInfo[playerid][pNik4], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik5],"None",true)) strmid(PlayerInfo[playerid][pNik5], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik6],"None",true)) strmid(PlayerInfo[playerid][pNik6], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik7],"None",true)) strmid(PlayerInfo[playerid][pNik7], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik8],"None",true)) strmid(PlayerInfo[playerid][pNik8], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik9],"None",true)) strmid(PlayerInfo[playerid][pNik9], plnamep, 0, strlen(plnamep), 255);
	else if(!strcmp(PlayerInfo[playerid][pNik10],"None",true)) strmid(PlayerInfo[playerid][pNik10], plnamep, 0, strlen(plnamep), 255);
	SetPlayerName(playerid, changenam);
	format(string,sizeof(string),"users/%s.ini",plnamep);
	dini_Remove(string);
	format(string,sizeof(string),"users/%s.ini",changenam);
	new File = iniOpen(string);
	iniSet(File,"Key",smgs[playerid]);
	iniClose(File);
	format(string,sizeof(string),"{fde910}%s Сменил(а) Имя на %s",plnamep,changenam);
	SendClientMessageToAll(COLOR_ORANGE,string);
	ShowPlayerDialog(playerid, 2612, DIALOG_STYLE_MSGBOX, "{FFA200}Имя успешно изменено","{FFFFFF}Не забудьте изменить имя в окне клиента SA-MP\nПерезайдите в игру с новым Nick Name", "Ок", "");
	nick[playerid] = 0;
	OnPropUpdates();
	OnPropUpdate();
    return true;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу