Артур-1
Мастер
Хороших мануалов на эту тему не видел,решил сделать
Команды:
В OnDialogResponse:
В конец мода:
Команды:
PHP:
c:setname;
{
if(PlayerInfo[playerid][bAdmin] < 14) return SendClientMessage(playerid, COLOR_GREY, "Недоступно"); // вместо 5 своё
if(sscanf(params, "d", params[0])) return SendClientMessage(playerid, COLOR_GREY, "Введите: /setname [id]");
if(GetPVarInt(params[0], "ChangeNickQuery") == 0) return SendClientMessage(playerid, COLOR_GREY, "Данный игрок не запрашивал смену ника");
new name[64], text[128];
GetPVarString(params[0], "NewNickName", name, sizeof(name));
format(text, sizeof(text), "SELECT * FROM `accounts` WHERE `Name` = '%s'", name);
mysql_function_query(1, text, true, "", "");
new rows, fields;
cache_get_data(rows, fields);
if(rows) return SendClientMessage(playerid, COLOR_GREY, "Данный ник уже занят");
format(text, sizeof(text), "%s сменил(а) имя на %s", PlayerInfo[params[0]][pNames], name);
SendClientMessageToAll(COLOR_LIGHTGREEN, text);
SetPlayerNickName(params[0], name);
PlayerInfo[params[0]][pDMInections] -= 3000;
SendClientMessage(params[0], COLOR_GREY, "Поздавляем вы успешно сменили свой ник!Пожалуйста перезайдите.");
SPD(params[0], 32000, 0, "Ник успешно изменён", "{FFFFFF}Пропишите новый ник в окне клиента SA:MP\n\n{CC00CC}Для того чтобы выйти нажмите F6 и пропишите /q", "Закрыть", "");
KickEx(playerid);
return true;
}
c:zayava;
{
ShowPlayerDialog(playerid, 22870, DIALOG_STYLE_INPUT, "DONATE: Сменить никнейм", "Данная услуга стоит 3000 донат очкова[NOT]", "Отправить", "Назад");
return 1;
}
PHP:
case 22870:
{
//if(PlayerInfo[playerid][pDMInections] < 3000) return SendClientMessage(playerid, COLOR_WHITE, "Ошибка: Недостаточное количество донат - очков");
if(GetPVarInt(playerid, "ChangeNickQuery") == 1) return SendClientMessage(playerid, -1, "Нельзя запросить смену ника чаще, чем 1 раз за сеанс");
new text[128];
SetPVarInt(playerid, "ChangeNickQuery", 1);
SetPVarString(playerid, "NewNickName", inputtext);
SendClientMessage(playerid, -1, "Вы отправили заявку!");
format(text, sizeof(text), "(/setname)Игрок %s [%d] просит сменить ник на %s.", PlayerInfo[playerid][pNames], playerid, inputtext);
SendAdminMessage(COLOR_BLUE, text);
return true;
}
PHP:
stock SetPlayerNickName(playerid, nick[])
{
new update[600];
format(update, sizeof(update), "UPDATE `accounts` SET `Name`='%s' WHERE `Name`='%s'", nick, PlayerInfo[playerid][pNames]); //Таблица с аккаунтами
mysql_function_query(connects, update, false, "", "");
format(update, sizeof(update), "UPDATE `house` SET `hOwner`='%s' WHERE `hOwner`='%s'", nick, PlayerInfo[playerid][pNames]);//Таблица с домами
mysql_function_query(connects, update, false, "", "");
format(update, sizeof(update), "UPDATE `bizz` SET `owner`='%s' WHERE `owner`='%s'", nick, PlayerInfo[playerid][pNames]);//Таблица с бизнесами
mysql_function_query(connects, update, false, "", "");
format(update, sizeof(update), "UPDATE `avtomast` SET `abOwner`='%s' WHERE `abOwner`='%s'", nick, PlayerInfo[playerid][pNames]);//Таблица с оружейками[бизз]
mysql_function_query(connects, update, false, "", "");
SetPlayerName(playerid, nick);
}
