Естественно, для начала Вам нужна система фракций. Если её нет, то и эта команда не нужна. Кстати, планирую залить готовую или написать урок по созданию своей.
Ну да ладно, хватит разглагольствовать, давайте приступим!
В public OnPlayerCommandText мы запишем, что делать моду если игрок введёт команду /setleader. Никто не запрещает не использовать указанный ниже код, но в этом случае мы не сможем показать PlayerDialog нашему администратору.
Код: Выделить всё
if(strcmp(cmd, "/setleader", true) == 0) {
if(pInfo[playerid][pAdmin] >= 7) { // pInfo[playerid][pAdmin] - проверка на администратора 7 ранга или больше. Заменяйте на свою.
ShowPlayerDialog(playerid,9000,2,"Выдача лидерок","ППС\nФСБ\nАрмия","Выбрать","Закрыть");
} else {
SendClientMessage(playerid,COLOR_RED, "Ты не админ, чудик! ");
}
return true;
}
Код: Выделить всё
if(dialogid == 9000)
{
if(response)
{
switch(listitem)
{
case 0:
{
ShowPlayerDialog(playerid, 930, 1,"ППС","Введите ID игрока которому хотите выдать лидерку","Ок","Отмена");
}
case 1:
{
ShowPlayerDialog(playerid, 931, 1,"ФСБ","Введите ID игрока которому хотите выдать лидерку","Ок","Отмена");
}
case 2:
{
ShowPlayerDialog(playerid, 932, 1,"Армия","Введите ID игрока которому хотите выдать лидерку","Ок","Отмена");
}
}
}
else
{
SCM(playerid,-1,"Вы отменили выдачу лидерки");
}
return 1;
}
if(dialogid == 930)
{
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 930, 1,"ППС","Введите ID игрока которому хотите выдать лидерку","Ок","");
idtr[playerid] = strval(inputtext);
format(strings4,sizeof(strings4),"/setleader %d 1",idtr[playerid]);
OnPlayerCommandText(playerid,strings4);
}
}
if(dialogid == 931)
{
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 931, 1,"ФСБ","Введите ID игрока которому хотите выдать лидерку","Ок","");
idtr[playerid] = strval(inputtext);
format(strings4,sizeof(strings4),"/setleader %d 2",idtr[playerid]);
OnPlayerCommandText(playerid,strings4);
}
}
if(dialogid == 932)
{
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 932, 1,"Армия","Введите ID игрока которому хотите выдать лидерку","Ок","");
idtr[playerid] = strval(inputtext);
format(strings4,sizeof(strings4),"/setleader %d 3",idtr[playerid]);
OnPlayerCommandText(playerid,strings4);
}
}
Немного переделал: danilasar (я)