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

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

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

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

/setname и /setpass

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

Dima_Neo

Умник
Здравствуйте!У возникла проблема с командами setname и setpass

Команда setname Меняю ник слетает акк и пароль,тоесть могу любой пароль ввести и зайти.
Команда setpass меняю пароль,а он не меняется остается старый помогите плиз

PHP:
     if(strcmp(cmd, "/changenick", true)==0 || strcmp(cmd, "/setname", true) == 0)
	{
	    if (PlayerInfo[playerid][pAdmin] >= 3)
		{
			new nicktmp[19];
			new string2[256];
			new string3[256];
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_ISPOLZUY, "*Используйте: /changenick [ид игрока][новый ник]");
				return 1;
			}
			giveplayerid = strval(tmp);
			format(nicktmp, sizeof(nicktmp), "%s", strtok(cmdtext, idx));
			if(!strlen(nicktmp))
			{
				SendClientMessage(playerid, COLOR_ISPOLZUY, "*Используйте: /changenick [ид игрока][новый ник]");
				return 1;
			}
			else
			{
				if(strlen(nicktmp) < 3)
				{
					SendClientMessage(playerid, COLOR_RED, "** Слишком короткий ник!");
					return 1;
				}
				else if(strlen(nicktmp) > 19)
				{
					SendClientMessage(playerid, COLOR_RED, "** Слишком длинный ник!");
					return 1;
				}
				else
				{
		  			new character[256];
				   	new i, j;
				   	new found = 0;
				    new foundchar[256];
		   			for(i=0; i<(strlen(nicktmp)); i++)
					{
						strmid(character, nicktmp, i, i+1, 2);
						for(j = 0; j<MAX_NICK_ALLOWED_CHARS; j++)
						{
					    	tmps1 = allowednickchars[j];
					        if(strcmp(hash(character), hash(tmps1), false) == 0)
							{
		    	    	  		found += 1;
				   		      	foundchar = tmps1;
				          	}
	  					}
					}
					if (found != strlen(nicktmp))
					{
						SendClientMessage(playerid, COLOR_RED, "** Вы используйте запрещенные символы. Используйте A-Z a-z 0-9 [ ] _");
					}
					else
					{
						format(string, sizeof(string), "%s.ini", nicktmp);
						if(fexist(string))
						{
							SendClientMessage(playerid, COLOR_RED, "** Это ник уже занят");
							return 1;
						}
						else
						{
						    if(IsPlayerConnected(giveplayerid))
						    {
								OnPlayerRename(nicktmp,string,giveplayerid);
								format(string, sizeof(string), "* Теперь ваш ник: %s .Не забудте сменить в клиенте SA-MP на такойже.", nicktmp);
								SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
								GetPlayerName(giveplayerid, playername, sizeof(playername));
								format(string3, sizeof(string3), "*[RP]GameLife: %s Теперь известен как: %s", playername, nicktmp);
								SendClientMessageToAll(COLOR_LIGHTRED, string3);
								format(string2, sizeof(string2), "%s.ini", playername);
								fremove(string2);
								SetPlayerName(giveplayerid, nicktmp);
								format(string, sizeof(string), "* %s = Smenil nick na = %s",playername, nicktmp);//ëîã ñìåíû íèêîâ
			                	SaveSETNAME(string);//ëîã ñìåíû íèêîâ
								return 1;
							}
						}
					}
				}
			}
		}
	}
PHP:
//==============================[лог /setname]==================================
stock SaveSETNAME(string[])//лог - смены ников
{
	new config[256];
	format(config,sizeof(config),"%s\n",string);
	new File:CFile;
	CFile = fopen("[logi-servera]/SETNAME.txt",io_append);
	fwrite(CFile,config);
	fclose(CFile);
}
PHP:
	if (strcmp(cmd, "/setpass", true)==0)
	{
		tmp = strtok(cmdtext, idx);
		if (gPlayerLogged[playerid] != 1)
		{
			SendClientMessage(playerid, COLOR_RED, "**Вы не авторизованы чтобы использовать эту команду!");
			return 1;
		}
		if(!strlen(tmp))
		{
			SendClientMessage(playerid, COLOR_ISPOLZUY, "*Используйте: /setpass [пароль(не должен превышать 20 символов)]");
			return 1;
		}
		if(strlen(tmp) > 20)
		    {
		    SendClientMessage(playerid, COLOR_RED, "** Пароль не должен привышать 20 символов!");
		    return 1;
		    }
		strmid(PlayerInfo[playerid][pKey], tmp, 0, strlen(cmdtext), 255);
		format(string, sizeof(string), "* Твой новый пароль %s не забудь его!(так же сделайте скрин [F8])", PlayerInfo[playerid][pKey]);
		SendClientMessage(playerid, COLOR_YELLOW, string);
		Encrypt(PlayerInfo[playerid][pKey]);
		GetPlayerName(playerid, playername, sizeof(playername));
		printf("%s has changed there password.", playername);
		return 1;
	}
Лога смены пароля нет.....

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