Edwin
Мастер
Искал команду выдачи именно статического скина, то есть такого, который выставляется навсегда, и прикидываете, не нашёл!
Поэтому написал сам, теперь хочу сделать урок по таким скинам.
Начинал с простого:
то бишь: "если ввести /statskin".
Дальше ответвляем и делаем функцию. Я сделал проверку на админа, то есть с 4-го уровня смогут ей пользоваться
Дальше сделал проверку на правильность введённой команды:
Ну и дальше сама функция:
А в конце сделал вывод сообщений игроку и всем админам:
Всё, команда готова.
Целиком она выглядит вот так:
Кстати, хочу обратить внимание на то, что в начале паблика OnPlayerCommandText у меня заданы все вот эти переменные:
Если кому-то пригодилось, соглашусь на +сик)
Поэтому написал сам, теперь хочу сделать урок по таким скинам.
Начинал с простого:
PHP:
if(strcmp(cmd, "/statskin", true) == 0)
Дальше ответвляем и делаем функцию. Я сделал проверку на админа, то есть с 4-го уровня смогут ей пользоваться
PHP:
if(PlayerInfo[playerid][pAdmin] >= 4) return SendClientMessage(playerid,COLOR_RED,"У вас нет прав!");
PHP:
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GREY, "Подсказка: /statskin [id] [skin]");
new playaid = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GREY, "Подсказка: /statskin [id] [skin]");
PHP:
new skinid = strval(tmp);
if(!IsPlayerConnected(playaid)) return SendClientMessage(playerid, COLOR_GREY, "Этот игрок оффлайн"); // Проверка на то, есть ли игрок с таким id
SetPlayerSkin(playaid,skinid);
PlayerInfo[playerid][pModel] = skinid;
PHP:
GetPlayerName(playaid, hisname, sizeof(hisname));
GetPlayerName(playerid, myname, sizeof(myname));
format(string, sizeof(string), "Администратор %s выдал вам статический скин номер %d",myname,skinid);
SendClientMessage(playaid, COLOR_BLUE, string);
format(string, sizeof(string), "%s выдал %s статический скин № %d", myname, hisname, skinid);
SendAdminMessage(COLOR_YELLOW, string, 1);
return 1;
Целиком она выглядит вот так:
PHP:
if(strcmp(cmd, "/statskin", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 3) return SendClientMessage(playerid,COLOR_RED,"У вас нет прав!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GREY, "Подсказка: /statskin [id] [skin]");
new playaid = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GREY, "Подсказка: /statskin [id] [skin]");
new skinid = strval(tmp);
if(!IsPlayerConnected(playaid)) return SendClientMessage(playerid, COLOR_GREY, "Этот игрок оффлайн");
SetPlayerSkin(playaid,skinid);
PlayerInfo[playerid][pModel] = skinid;
GetPlayerName(playaid, hisname, sizeof(hisname));
GetPlayerName(playerid, myname, sizeof(myname));
format(string, sizeof(string), "Администратор %s выдал вам статический скин номер %d",myname,skinid);
SendClientMessage(playaid, COLOR_BLUE, string);
format(string, sizeof(string), "%s выдал %s статический скин № %d", myname, hisname, skinid);
SendAdminMessage(COLOR_YELLOW, string, 1);
return 1;
}
PHP:
new string[128];
new myname[MAX_PLAYER_NAME];
new hisname[MAX_PLAYER_NAME];
new cmd[32],tmp[128],idx;
cmd = strtok(cmdtext, idx);
Последнее редактирование:
