Time for info 1.0

kasperch1k

Постоялец
Регистрация
8 Июн 2017
Сообщения
166
Симпатии
42
Пол
Мужской
#1
Автор: neugomon
Версия: 1.0

Суть - немного очистить голосовой чат для живых игроков от говорливых

Описание:
  • Через время, указанное в макросе, живые игроки перестают слышать игрока, который умер
  • После подключения, игрока так же не будут слышать живые
Доп инфо:
  • Плагин не полностью на ReAPI - отсутствует форвард Voice_SetClientListening. Для него используется fakemeta

Код:
#define TIME_FOR_INFO 5.0 // Время после смерти, через которое живые не услышат игрока
 

Вложения

REVO

Пользователь
Регистрация
9 Июн 2017
Сообщения
273
Симпатии
73
Пол
Мужской
#2
А мертвые могут общаться с мертвыми?
Еще имеет значение, что этот квар у меня такой вот: sv_alltalk 0
 

Damir4ik

Пользователь
Регистрация
22 Июн 2017
Сообщения
89
Симпатии
2
#3
Никто не добавит проверку на админов, чтобы могли слушать чат. + Добавить команду на отключение прослушивания мертвых игроков )
1 Ноя 2017
:Help:или не будет таких людей))
 

ex3m777

Пользователь
Регистрация
10 Июн 2017
Сообщения
87
Симпатии
23
Пол
Мужской
#4
Damir4ik, я могу скинуть, но у меня админы соышат всех и все слышат админа и выпилил фремя для инфы
 

Molodoi

Команда форума
Модератор
Регистрация
14 Июн 2017
Сообщения
490
Симпатии
87
#7
ex3m777, раз уж он у вас без инфы но с иммунитетом скину и с тем и стем.
С иммунитетом для Адм. и нфа 5 сек после смерти
PHP:
// *************************************************************************************//
// Плагин загружен с  www.neugomon.ru                                                   //
// Автор: Neygomon  [ https://neugomon.ru/members/1/ ]                                  //
// Официальная тема поддержки: https://neugomon.ru/threads/2598/                        //
// При копировании материала ссылка на сайт www.neugomon.ru ОБЯЗАТЕЛЬНА!                //
// *************************************************************************************//

#include <amxmodx>
#include <fakemeta>
#include <reapi>

#define VIP_ACCESS ADMIN_BAN

#define TIME_FOR_INFO 5.0 // Время после смерти, через которое живые не услышат игрока

#if !defined MAX_PLAYERS
    #define MAX_PLAYERS 32
#endif
#if AMXX_VERSION_NUM < 183
    #define client_disconnected client_disconnect
    #include <colorchat>
#endif

#define is_user_vip(%0) (get_user_flags(%0) & VIP_ACCESS)

new bool:g_bBlockVoice[MAX_PLAYERS + 1];
new g_iUserAlive[MAX_PLAYERS + 1];

public plugin_init()
{
    register_plugin("Time for info", "1.0", "neugomon");
    
    RegisterHookChain(RG_CBasePlayer_Spawn, "fwdPlayerSpawnPost", true);
    RegisterHookChain(RG_CBasePlayer_Killed, "fwdPlayerKilledPost", true);
    
    register_forward(FM_Voice_SetClientListening, "FwdSetClientListening", false);
}

public client_putinserver(id)
{
    if(is_user_vip(id))
    {
        g_iUserAlive[id] = false;
        g_bBlockVoice[id] = false;
    }
    else
    {
        g_iUserAlive[id] = false;
        g_bBlockVoice[id] = true;       
    }
}   

public fwdPlayerSpawnPost(id)
{
    if(is_user_vip(id)) return;
    
    g_iUserAlive[id] = is_user_alive(id);
    if(g_iUserAlive[id])
        g_bBlockVoice[id] = false;
}
    
public fwdPlayerKilledPost(const id)
{
    g_iUserAlive[id] = 0;
    client_print_color(id, 0, "^1[^4TFI^1] ^1У Вас есть ^3%.0f сек^1, чтобы дать инфу, далее живые Вас ^3не услышат^1.", TIME_FOR_INFO);
    set_task(TIME_FOR_INFO, "BlockVoice", id);
}

public FwdSetClientListening(iReciever, iSender)
{
    if(iSender != iReciever && g_bBlockVoice[iSender] && g_iUserAlive[iReciever])
    {   
        engfunc(EngFunc_SetClientListening, iReciever, iSender, false);
        forward_return(FMV_CELL, false);
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}
    
public BlockVoice(id)
{
    if(!g_iUserAlive[id])
    {
        g_bBlockVoice[id] = true;
        client_print_color(id, 0, "^1[^4TFI^1] ^1Время для передачи инфы ^3истекло^1. Живые игроки Вас ^3не слышат^1.");
    }   
}
 

Molodoi

Команда форума
Модератор
Регистрация
14 Июн 2017
Сообщения
490
Симпатии
87
#8
Molodoi, этот плагин не работает с имункой извеняйте если что не так исправлю.

ex3m777, тебя подставляю извеняй.
 

borzoy

Пользователь
Регистрация
12 Июн 2017
Сообщения
30
Симпатии
4
Пол
Мужской
#9
1538217442697.png
пишет вот такую ошибку,кто подскажет в какую сторону искать
 

women's server

Пользователь
Регистрация
29 Сен 2018
Сообщения
23
Симпатии
2
Пол
Женский
#10

Вложения

borzoy

Пользователь
Регистрация
12 Июн 2017
Сообщения
30
Симпатии
4
Пол
Мужской
#11

ifx

Пользователь
Регистрация
11 Фев 2018
Сообщения
181
Симпатии
65
#14
а есть что-то подобное простенькое, только для живых игроков?
чтобы живой говорун спустя теже 5 сек не был слышан другими живыми игроками