clifich
Новичок
Всем привет, перевожу свой мод на mysql но не могу разобраться.
Помогите пожалуйста. Как сделать, чтоб ник который меняется командой, сохранялся в базе и сверялся с ней занят ли уже такой ник. Потому, что после ввода команды он просто меняется в игре(при повторном входе, вводить нужно старый ник). Как быть? Вот код. Заранее спасибо
Помогите пожалуйста. Как сделать, чтоб ник который меняется командой, сохранялся в базе и сверялся с ней занят ли уже такой ник. Потому, что после ввода команды он просто меняется в игре(при повторном входе, вводить нужно старый ник). Как быть? Вот код. Заранее спасибо
Код:
if(strcmp(cmd, "/changename", true) == 0)
{
new newname[23];
new stringo[128];
if (PlayerInfo[playerid][pAdmin] >= 1)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
send(playerid, COLOR_WHITE, "Используйте: /changename [ID игрока/Часть имени] [Новое имя]");
return true;
}
giveplayerid = ReturnUser(tmp);
if(giveplayerid != INVALID_PLAYER_ID)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
while ((idx < length) && ((idx - offset) < (sizeof(newname) - 1)))
{
newname[idx - offset] = cmdtext[idx];
idx++;
}
newname[idx - offset] = EOS;
if(!strlen(newname))
{
send(playerid, COLOR_WHITE, "Используйте: /changename [ID игрока/Часть имени] [Новое имя]");
return true;
}
else
{
format(stringo,sizeof(stringo),"Players/%s.ini",newname);
if(fexist(stringo))
{
send(playerid,COLOR_GRAD1,"Такое имя уже есть на сервере");
return true;
}
format(newname,sizeof(newname),"%s",newname);
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
send(giveplayerid,COLOR_WHITE,"");
format(string, sizeof(string), "Ваш новый ник [ %s ] не забудте сменить его в окне мультиплеера", newname);
send(giveplayerid, COLOR_YELLOW, string);
send(giveplayerid,COLOR_YELLOW,"Обязательно сделайте скриншот с этим сообщением (Клавиша F8)");
namechan[giveplayerid] = 3;
new nameold[24];
GetPlayerName(giveplayerid, nameold, sizeof(nameold));
strmid(namechannew[giveplayerid], newname, 0, strlen(newname), 255);
strmid(namechanold[giveplayerid], nameold, 0, strlen(nameold), 255);
}
}
else if(giveplayerid == INVALID_PLAYER_ID)
{
send(playerid, COLOR_GRAD1, "Нет такого игрока!");
}
}
return true;
}
}
