[CS: Source] Welcome Player

Тема в разделе "Новые плагины", создана пользователем Алексей Гамов, 9 фев 2014.

  1. Алексей Гамов

    Алексей Гамов

    Сообщения:
    11
    Симпатии:
    3
    Welcome Player

    Описание:

    Приветствуем пользователя на сервере. Звук запускаем при выводе motd окна, а фраза непосредственно при выборе команды.
    Если не существует файла перевода будет использован cvar sm_welcome_message

    Настройки:

    sm_welcome_sound — пусть к файлу с музыкой (прим. server/welcome.mp3)
    sm_welcome_message — фраза с приветствием

    Файлы:
    • welcomeplayer.smx (плагин)
    • welcomeplayer.sp (исходник)
    • welcomeplayer.phrases.txt (файл перевода)
    Планы:
    1. Вывести фразу сразу после выбора команды
    2. Сделать задержку сообщения
    3. Заглушить остальные звуки (прим. round & sound)
    Исправления:
    1. Перенос кэширование на открытие карты (Vit_ amin)
    2. Если нет файла с треком - не будем делать кэша (R1KO)
    3. Добавлен файл переводов
    4. Фикс проверки файла переводов и исправление ошибки userid
     

    Вложения:

    Последнее редактирование: 10 фев 2014
    Andrey, CTe6eJIeK_vRn и ★Сириус★ нравится это.
  2. ★Сириус★

    ★Сириус★

    Сообщения:
    748
    Симпатии:
    199
    Re: Welcome Player 1.0.2

    мне кажется лучше сделать здесь путь к файлу переводов. Чтобы фраза могла писаться на разных языках, в зависимости от страны игрока
     
  3. artushonok

    artushonok

    Сообщения:
    961
    Симпатии:
    108
    Re: Welcome Player 1.0.2

    ★Сириус★, да было бы супер
     
  4. Алексей Гамов

    Алексей Гамов

    Сообщения:
    11
    Симпатии:
    3
    Re: Welcome Player 1.0.2

    ★Сириус★, artushonok для этого вроде есть другой плагин)
     
    Последнее редактирование: 10 фев 2014
  5. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.049
    Симпатии:
    344
    Re: Welcome Player 1.0.2

    Выскажу свое слово:

    1. Код:
      AddCommandListener(Command_JoinTeam, "jointeam");
      Если ты уже и сказал, что текст выводиться, когда игрок входит в команду то и используй
      Код:
      EventHook("player_team", ...);
    2. Кэширование звука и его загрузку я бы лучше делал в событии OnMapStart.
    3. Нету проверки AI игрок это или нет.
    4. Код:
      public OnClientPostAdminCheck()
      Почему не использовал
      Код:
      public OnClientPutInServer()
     
    Алексей Гамов нравится это.
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    Re: Welcome Player 1.0.2

    Интересно зачем писать сообщение при каждой смене команды...

    PHP:
    public OnConfigsExecuted()
    {
        
    GetConVarString(cvSoundsound256);
        
    GetConVarString(cvPhrasephrase256);

        
    PrecacheSound(soundtrue);

        
    decl String:buffer[256];

        
    Format(buffersizeof(buffer), "sound/%s"sound);

        
    AddFileToDownloadsTable(buffer);
    }
    Желательно было бы сделать так:
    PHP:
    public OnConfigsExecuted()
    {
        
    GetConVarString(cvSoundsound256);
        
    GetConVarString(cvPhrasephrase256);
        
        
    decl String:buffer[256];
        
    FormatEx(buffersizeof(buffer), "sound/%s"sound);

        if(
    FileExists(buffer))
        {
            
    PrecacheSound(soundtrue);
            
    AddFileToDownloadsTable(buffer);
        } else 
    sound[0] ='\0'// не обязательно
    }
    А насчет всего остального солидарен с Vit_ amin
     
    Алексей Гамов нравится это.
  7. ★Сириус★

    ★Сириус★

    Сообщения:
    748
    Симпатии:
    199
    Re: Welcome Player 1.0.2

    есть и не есть, я предложил просто сделать лучше.
    ну напишешь ты там русский текст. который потом япошки играя на твоем сервере не поймут
     
    Алексей Гамов нравится это.
  8. Алексей Гамов

    Алексей Гамов

    Сообщения:
    11
    Симпатии:
    3
    Re: Welcome Player 1.0.2

    спасибо за мысль. уже добавил)

    а не подскажешь события, которое срабатывает после выбора команды? (чтобы не перекрывало окно motd или варианты выбора команды)

    кстати часто вылетает ошибка про userid:

    PHP:
    public Action:OnPlayerTeam(Handle:event, const String:name[], bool:dontBroadcast)
    {
        
    PrintCenterText(GetClientOfUserId(GetEventInt(event"userid")), phrase);
    }
     
    Последнее редактирование: 10 фев 2014
  9. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    Re: Welcome Player 1.1.3

    Зачем это если есть файл перевода?

    Уже говорили


    Этого делать не нужно
    PHP:
    if (FileExists("welcomeplayer.phrases.txt"))
     
    Последнее редактирование: 10 фев 2014
  10. Алексей Гамов

    Алексей Гамов

    Сообщения:
    11
    Симпатии:
    3
    Re: Welcome Player 1.1.3

    Обновил до v1.2.2
    ---
    Может кому-то кроме меня не нужен файл переводов.
    Не добавляем его - всё работает по переменным.

    я и исправил. другой вопрос если ли другое событие (чтобы не показывало при смене команды)?

    если файла нет - пишет ошибку)
     
    Последнее редактирование: 10 фев 2014
  11. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    Re: Welcome Player 1.2.2

    Повторю вопрос: зачем выводить сообщение при смене команды?
     
  12. Алексей Гамов

    Алексей Гамов

    Сообщения:
    11
    Симпатии:
    3
    Re: Welcome Player 1.2.2

    а когда его стоит показать? при появлении motd не вариант(

    может есть событие когда игрок уже выбрал команду (не player_team)?
     
  13. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    Re: Welcome Player 1.2.2

    Алексей Гамов,
    PHP:
        HookEvent("player_team"OnPlayerTeam);
    У тебя не указан тип отлова, значит он пост, тоесть уже после смены команды
     
  14. POWERMAN-5000

    POWERMAN-5000

    Сообщения:
    25
    Симпатии:
    1
    Re: Welcome Player 1.2.2

    Текста много-толку 0. Видимо так и не допилили...
     
  15. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Re: Welcome Player 1.2.2

    Я уже давно делаю 1 показ после смены команды. Меняй команды, хоть обратно в наблюдатели лезь - больше показа не будет. Легко и эффективено по коду - удобно для игрока.
     
  16. ANALGIN

    ANALGIN

    Сообщения:
    12
    Симпатии:
    0
    Re: Welcome Player 1.2.2

    Подскажите почему при входе на сервер музыка играет 1 сек ? а на другом полностью никто не знает в чем дело , может какой то плагин не дает полностью проиграть трек???

    ////

    Все проблему решил ))
     
  17. dghjdjhdj

    dghjdjhdj

    Сообщения:
    6
    Симпатии:
    0
    Re: Welcome Player 1.2.2

    ПОМОГИИИИИИИТЕ!
    Все сделал, все работает, только осталось старое приветствие... НЕ могу найти в папке sound

    Добавлено через 5 минут
    Как исправил?
     
    Последнее редактирование: 28 янв 2015