Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 6 из 6
  1. #1
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±

    Радио в диалоге

    Всем привет. Сегодня мы создадим команду /radio в диалоге и с 5 радиостанциями.


     Вариант #1

    Создадим саму команду, в которой будут видны наши 5 радиостанции:

    В самое начало мода:
    PHP код:
    const
        
    DLG_RADIO 10011// если диалог с таким ID уже есть, замените 10011 на своё число 
    В public OnPlayerCommandText:
    PHP код:
    if(== strcmp(cmdtext"/radio"true))
        return 
    ShowPlayerDialog(playeridDLG_RADIODIALOG_STYLE_LIST"Радио""1.\tZaycev.FM\n2.\tRadio Record\n3.\tEuropa Plus\n4.\tBiker.FM\n5.\tRadioROKS\n6.\t{FF9900}Остановить прослушивание""Выбрать""Закрыть"); 
    Команда готова, перейдём к распознаванию диалога:

    В public OnDialogResponse:
    PHP код:
    if(dialogid == DLG_RADIO)
    {
        if(
    response == 0)
            return 
    1;

        switch(
    listitem)
        {
            case 
    0:
                
    PlayAudioStreamForPlayer(playerid"http://radio.zaycev.fm:9002/ZaycevFM(128).m3u"); // Если игрок выбрал 0 пункт в диалоге (listitem), то есть первый по списку, то запустим радио - "Зайцев ФМ"
            
    case 1:
                
    PlayAudioStreamForPlayer(playerid"http://online.radiorecord.ru:8101/rr_128");  // Если игрок выбрал 1 пункт в диалоге (listitem), второй по списку, то запустим радио - "Радио рекорд"
            
    case 2:
                
    PlayAudioStreamForPlayer(playerid"http://onair.eltel.net:80/europaplus-128k");  // Если игрок выбрал 2 пункт в диалоге (listitem), третий по списку, то запустим радио - "Европа Плюс"
            
    case 3:
                
    PlayAudioStreamForPlayer(playerid"http://stream3.radiostyle.ru:8001/biker-fm"); // Если игрок выбрал 3 пункт в диалоге (listitem), четвёртый по списку, то запустим радио - "Байкер ФМ"
            
    case 4:
                
    PlayAudioStreamForPlayer(playerid"http://online-radioroks.tavrmedia.ua/RadioROKS"); // Если игрок выбрал 4 пункт в диалоге (listitem), пятый по списку, то запустим радио - "Радио РОКС"
            
    case 5:
                
    StopAudioStreamForPlayer(playerid); // Если игрок выбрал 5 пункт в диалоге (listitem), шестой, последний, по списку, то остановим игроку прослушивание
        
    }


     Вариант #2

    Ко всем new:
    PHP код:
    const
        
    DLG_RADIO 10011// если диалог с таким ID уже есть, замените 10011 на своё число

    static const
        
    RadioAdresses[][] =
        {
            
    "http://radio.zaycev.fm:9002/ZaycevFM(128).m3u",
            
    "http://online.radiorecord.ru:8101/rr_128",
            
    "http://onair.eltel.net:80/europaplus-128k",
            
    "http://stream3.radiostyle.ru:8001/biker-fm",
            
    "http://online-radioroks.tavrmedia.ua/RadioROKS"
        
    }; 
    В public OnPlayerCommandText:
    PHP код:
    if(== strcmp(cmdtext"/radio"true))
        return 
    ShowPlayerDialog(playeridDLG_RADIODIALOG_STYLE_LIST"Радио""1.\tZaycev.FM\n2.\tRadio Record\n3.\tEuropa Plus\n4.\tBiker.FM\n5.\tRadioROKS\n6.\t{FF9900}Остановить прослушивание""Выбрать""Закрыть"); 
    В public OnDialogResponse:

    PHP код:
    if(dialogid == DLG_RADIO)
    {
        if(
    response == 0)
            return 
    1;

        return 
    listitem != PlayAudioStreamForPlayer(playeridRadioAdresses[listitem]) : StopAudioStreamForPlayer(playerid);



     Скриншот диалога


    Автор: L0ndl3m

    Специально для: Pro-Pawn.Ru


    Копирование данной статьи без разрешения автора запрещено!
    Последний раз редактировалось L0ndl3m; 20.01.2020 в 09:05.

  2. Пользователь сказал cпасибо:
    #Vito (11.08.2014)
  3. #2
    Аватар для TWIX
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.10.2013
    Сообщений
    100
    Репутация:
    41 ±
    Слишком просто (

  4. Пользователь сказал cпасибо:
    Mr_David (19.11.2013)
  5. #3
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Цитата Сообщение от TWIX Посмотреть сообщение
    Слишком просто (
    Можно сделать ещё проще.

  6. #4
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Можно сделать ещё проще.
    Ахах,ты можешь:)

  7. #5
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Можно сделать ещё проще.
    Как?

  8. Пользователь сказал cпасибо:
    Salvacore (16.11.2013)
  9. #6
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Добавлен второй вариант.
    Последний раз редактировалось L0ndl3m; 18.05.2014 в 23:52.

  10. 3 пользователя(ей) сказали cпасибо:
    #Vito (11.11.2013) Brendan (07.01.2016) Salvacore (16.11.2013)
 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •