RONKA
Новичок
Здравствуйте уважаемые форумчане этого сайта, у меня возникла такая проблема и я бы хотел попросить опытных людей помочь мне с этой проблемой.
Вот суть проблемы: Раньше у меня была обычная регистрация, ник-нейм менял и всё было отлично, но буквально неделю назад перевёл мод на mxINI и обнаружил проблему со сменой ник-нейма, когда я меняю ник-нейм себе или другому игроку - аккаунт удаляется, хотя путь к папке с персонажами указан правильно, прошу вашей помощи, благодарю!:df:
Вот команда:
Вот сток:
Вот суть проблемы: Раньше у меня была обычная регистрация, ник-нейм менял и всё было отлично, но буквально неделю назад перевёл мод на mxINI и обнаружил проблему со сменой ник-нейма, когда я меняю ник-нейм себе или другому игроку - аккаунт удаляется, хотя путь к папке с персонажами указан правильно, прошу вашей помощи, благодарю!:df:
Вот команда:
PHP:
if(strcmp(cmd, "/setname", true) == 0)
{
if(gAuthorize[playerid] == 0) return SendClientMessage(playerid, -1, " *Вы не прошли вторичную авторизацию!");
if(!IsPlayerConnected(playerid)) return true;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, " *Использование: /setname [id] [новое имя]");
if(PlayerInfo[playerid][pAdmin] < 2) return true;
new playa;
new name[32];
playa = ReturnUser(tmp);
name = strtok(cmdtext, idx);
if(!IsPlayerConnected(playa)) return true;
if((PlayerInfo[playa][pNameTime] == 0 && PlayerInfo[playa][pAdmin] == 0) || PlayerInfo[playa][pAdmin] >= 0)
{
new string4[56];
format(string4, sizeof(string4), "Users/%s.ini", name);
if(fexist(string4)) return SendClientMessage(playerid, COLOR_GRAD1, " *Аккаунт с таким именем уже существует!");
RenamePlaya(playa, name, Name(playa), Name(playerid));
}
else
{
format(string, 256, " *Этот игрок не может менять ник, т.к не отыграл ещё %d часов.", PlayerInfo[playa][pNameTime]);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
return true;
}
PHP:
RenamePlaya(playa, name[], giveplayer[], sendername[])
{
new string[256], string4[56];
SetPlayerName(playa, name);
new key = PlayerInfo[playa][pPhousekey];
if (key != 255)
{
strmid(HouseInfo[key][hOwner], name, 0, strlen(name), 255);
UpdateHouse(key);
}
key = PlayerInfo[playa][pPbiskey];
if (key != 255)
{
if (key > 100)
{
key -= 100;
strmid(SBizzInfo[key][sbOwner], name, 0, strlen(name), 255);
}
else
{
strmid(BizzInfo[key][bOwner], name, 0, strlen(name), 255);
}
OnPropUpdate();
}
//=============================
format(string4, sizeof(string4), "Users/%s.ini", giveplayer);
fremove(string4);
format(string, sizeof(string), " *CrimeWave[RP]: %s теперь известен как %s.",giveplayer, name);
SendClientMessageToAll(COLOR_LIGHTRED,string);
format(string, sizeof(string)," *AdmCmd: %s теперь известен как %s, Администратор: %s.", giveplayer, name, sendername);
SendAdminMessage(COLOR_RED, string);
PlayerInfo[playa][pNameTime] = 6;
SendClientMessage(playa, COLOR_LIGHTBLUE, " *Вы сменили ник! Не забудьте изменить имя в SA:MP!");
SendClientMessage(playa, COLOR_YELLOW, " *Вы не больше не сможете менять ник, пока не отыграете 6 часов!");
new year,month,day,ho,mn,sec;
getdate(year, month, day);
gettime(ho,mn,sec);
format(string, sizeof(string),"RENAME LOG: %s change name to %s, by administrator: %s. date:(%d.%d.%d). time:(%d:%d)", giveplayer, name, sendername, day, month, year, ho, mn);
Rename(string);
}
Последнее редактирование:
