voice_manager

umka66666629

Пользователь
Регистрация
17 Июн 2017
Сообщения
15
Симпатии
1
Пол
Мужской
OS
Linux
Amx Mod X
AMXX 1.8.2
Билд
rehlds
Metamod
Metamod v1.21p37
Meta модули
Код:
..
Плагины
Код:
.
Amxx Модули
Код:
..
Ошибка
Код:
..
Исходник
Код:
// *************************************************************************************//
// Плагин загружен с 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.");
}
}
Можно ли в плагине voice_manager сделать так - когда остался 1 или 2 игрока живых то чтоб они не слышали мертвых
 

perfectblood0

Команда форума
Администратор
Регистрация
29 Окт 2017
Сообщения
2.578
Симпатии
914
Пол
Женский
Они и так их не должны слышать
 

umka66666629

Пользователь
Регистрация
17 Июн 2017
Сообщения
15
Симпатии
1
Пол
Мужской
Они и так их не должны слышать
мне надо чтоб не такую функцию исполнял плагин как сейчас
именно чтоб он работал так: когда 1-2 человека остались в живых в команде то они не слышат мертвых
 

perfectblood0

Команда форума
Администратор
Регистрация
29 Окт 2017
Сообщения
2.578
Симпатии
914
Пол
Женский
мне надо чтоб не такую функцию исполнял плагин как сейчас
именно чтоб он работал так: когда 1-2 человека остались в живых в команде то они не слышат мертвых
Составляйте ТЗ и указывайте цену
Не исключено, что помогут бесплатно
 
Сверху Снизу