• Страница 1 из 1
  • 1
Модератор форума: dr40  
Хотелось бы подправить одну команду, подробности внутри.
MoriartyДата: Воскресенье, 02.11.2014, 13:35 | Сообщение # 1
.::Offline::.
Новичок
Сообщений: 2
[ 0 ]
Награды: 0

Статус отсутствует
Сделал команду для администратора телепортация всех игроков к администратору, но хотелось ещё сделать , чтобы игроков не сразу телепортировало ,а они могли выбрать согласиться или отказаться. Т.к. я не знаю толком скриптинга , то решил обратится к вам , надеюсь поможете.

Текст команды:
Код
if(strcmp(cmd, "/gethereall", true) == 0)
{
new admin[256];
new Float:PX,Float:PY,Float:PZ,Float:PANGLE;
if (PlayerInfo[playerid][pAdmin] >= 2)
{
GetPlayerName(playerid,admin,sizeof(admin));
PlayerInfo[playerid][pInt] = GetPlayerInterior(playerid);
GetPlayerPos(playerid,PX,PY,PZ);
GetPlayerFacingAngle(playerid,PANGLE);
for(new i = 0; i < MAX_PLAYERS; i++)
{
SetPlayerPos(i,PX,PY,PZ+3);
SetPlayerFacingAngle(i,PANGLE);
SetPlayerInterior(i,PlayerInfo[playerid][pInt]);
}
format(string,sizeof(string)," Âñå èãðîêè òåëåïîðòèðîâàíû ê %s.",admin);
SendClientMessageToAll(LIGHTBLUE_COLOR,string);
}
else
{
SendClientMessage(playerid, LIGHTBLUE_COLOR, " Íåò ïðàâ äëÿ èñïîëüçîâàíèÿ ýòîé êîìàíäû");
return 1;
}
return 1;
}
 
ZioSHikДата: Воскресенье, 02.11.2014, 21:24 | Сообщение # 2
.::Offline::.
Авторитет
Сообщений: 831
[ 82 ]
Награды: 29

Статус отсутствует
Просто покажите всем игрокам диалог. И если они да нажмут, то телепортируются на координаты админа, а если нет, то ни чего не произойдет.
 
ZioSHikДата: Воскресенье, 02.11.2014, 23:38 | Сообщение # 3
.::Offline::.
Авторитет
Сообщений: 831
[ 82 ]
Награды: 29

Статус отсутствует
Замените свою команду на эту:

Перенесите переменные вверх, если они будут совпадать с существующими, то замените их на другие:

Код
new Float:PX,Float:PY,Float:PZ,Float:PANGLE,INTplayer;


Код
if(strcmp(cmd, "/gethereall", true) == 0)   
{    
if (PlayerInfo[playerid][pAdmin] >= 2)   
{   
GetPlayerName(playerid,admin,sizeof(admin));   
INTplayer = GetPlayerInterior(playerid);   
GetPlayerPos(playerid,PX,PY,PZ);   
GetPlayerFacingAngle(playerid,PANGLE);   
for(new i = GetMaxPlayers() - 1; i != -1; i--)
{   
ShowPlayerDialog(i,3030,DIALOG_STYLE_LIST,"Телепорт",Вас хочет телепортировать администратор,"Телепортироваться","Отклонить");
}
}   
else   
{   
SendClientMessage(playerid, LIGHTBLUE_COLOR, " Íåò ïðàâ äëÿ èñïîëüçîâàíèÿ ýòîé êîìàíäû");   
return 1;   
}   
return 1;   
}


В public OnDialogResponse

Код
else if(dialogid == 3030)
   {
    if(response)
    {
     if(listitem == 0)
     {
      SetPlayerPos(playerid,PX,PY,PZ+3);   
SetPlayerFacingAngle(playerid,PANGLE);   
SetPlayerInterior(playerid,INTplayer);   
}   
     }
     if(listitem == 1)
     {
       
     }
    }
   }


Могут быть ошибки. Скиньте их в эту тему.
 
  • Страница 1 из 1
  • 1
Поиск:


Copyright www.SAMP-TEAM.com (c) 2009-2024
Правила использования материалов сайта

При копировании материалов из нашего сайта
ссылка на www.SAMP-TEAM.com обязательна!
Нарушители правил будут строго наказаны!

Хостинг от uCoz   
Для корректного просмотра мы рекомендуем Вам использовать браузер Google Chrome.
Яндекс.Метрика