Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Мут

Статус пользователя paraz1t15
сообщение 24.1.2017, 17:16
Сообщение #1
Стаж: 11 лет
Город: Красноярск

Сообщений: 240
Благодарностей: 49
Полезность: 171

Даю мут, для этого используется
Код
public Fwd_Voice_ClientListening(iReceiver, iSender, listen)
{
    if(iReceiver == iSender)
        return FMRES_IGNORED

    if(!is_user_connected(iSender))
        return FMRES_IGNORED
    
    if(native_get_mute(iSender) || (get_pcvar_num(pCvar) && native_get_mutecountry(iSender)))
    {
        engfunc(EngFunc_SetClientListening, iReceiver, iSender, false)
        return FMRES_SUPERCEDE
    }
    return FMRES_IGNORED
}


бывает, но редко проскакивает народ который сидя в муте говорит в микро, куда копать то?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя SISA
сообщение 24.1.2017, 17:56
Сообщение #2
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

paraz1t15,

Копать код плагина, очевидно же. ClientListening срабатывает без проблем.

Цитата
if(native_get_mute(iSender) || (get_pcvar_num(pCvar) && native_get_mutecountry(iSender)))


Знаешь, сколько у этой функции вызовов и какая там конская нагрузка будет ?

Для блокировки микрофона есть Api от VTC или стандартные энжиновские функции:

native set_speak(iIndex, iSpeakFlags);
native get_speak(iIndex);

Хукать ClientListening на уровне амх - это самое последнее дело.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя paraz1t15
сообщение 27.1.2017, 0:09
Сообщение #3
Стаж: 11 лет
Город: Красноярск

Сообщений: 240
Благодарностей: 49
Полезность: 171

Приведи пример использования, чот поглядел другие муты, используют похожие способы что и у меня.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 27.1.2017, 18:27
Сообщение #4
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Цитата(paraz1t15 @ 27.1.2017, 2:09) *
Приведи пример использования, чот поглядел другие муты, используют похожие способы что и у меня.


Названия натив выше дал. Пример их использования ищи в инклудах или в гугле.

Цитата
используют похожие способы что и у меня


Пабловые плагины делают, чтобы сделать. Там не задумываются об оптимизации и нагрузке. К тому же, задачи могут быть разные. Если нужны какие-то сложные условия разделения по iReceiver и iSender, то без ClientListening не обойтись.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: