Поиск Плагин "Выключение микрофона"

Top4ik

Пользователь
Регистрация
10 Фев 2020
Сообщения
54
Симпатии
6
Добрый вечер,может кто нибудь подсказать где скачать (или может у кого есть) плагин выключает микрофон игрокам когда остается 1 живой человек в любой из команд(возпроизводится фраза)"Микрофон отключен" и в чат пишет что "Когда остается 1 живой игрок T или CT микрофон отключается у всех игроков"
 

ade888

Пользователь
Регистрация
9 Июн 2017
Сообщения
191
Симпатии
24
Пол
Мужской
И?
Дайка угадаю.. из сервера дизбаланса увидел это )
 

s1ngle71rus

Пользователь
Регистрация
27 Июн 2017
Сообщения
154
Симпатии
8
Пол
Мужской
Очень полезный плагин себе бы тоже поставил
 

Феня

Пользователь
Регистрация
11 Июл 2017
Сообщения
76
Симпатии
8
Я бы тоже себе такой забрал !) Может кто то помочь?
 

umk0

Скриптер
Пользователь
Регистрация
24 Дек 2017
Сообщения
18
Симпатии
12
Добрый вечер,может кто нибудь подсказать где скачать (или может у кого есть) плагин выключает микрофон игрокам когда остается 1 живой человек в любой из команд(возпроизводится фраза)"Микрофон отключен" и в чат пишет что "Когда остается 1 живой игрок T или CT микрофон отключается у всех игроков"
Очень полезный плагин себе бы тоже поставил
Я бы тоже себе такой забрал !) Может кто то помочь?
Наверное должно работать :Bye2:
Код:
#include <amxmodx>
#include <cstrike>
public plugin_init()
{
    register_plugin("Block All Voice For Last Player", "1.0", "uMk0");
    register_logevent("round_end", 2, "1=Round_End");
}
public round_end(){
    server_cmd("sv_alltalk 1");
}
public client_death(){
    new Players[32],Count, i,ct_count = 0,tt_count = 0,CsTeams:team;
    get_players(Players, Count, "a")
    for (i=0; i<Count; i++) {
        team = cs_get_user_team(Players[i]);
        switch (team){
            case (CS_TEAM_CT):{
                ct_count++;
            }   
            case (CS_TEAM_T):{
                tt_count++;
            }   
        }
    }
    if(ct_count == 1 || tt_count == 1){
        server_cmd("sv_alltalk 0");
    }
}
 

umk0

Скриптер
Пользователь
Регистрация
24 Дек 2017
Сообщения
18
Симпатии
12
Ещё как вариант :D
C#:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#tryinclude <reapi>
#if !defined _reapi_included
    #include <VtcApi>
#endif
#include <fakemeta>
new bool:blockVoise = false,ct_count = 0,tt_count = 0,bool:alert_tt = false,bool:alert_ct = false,userLastTT,userLastCT;
public plugin_init()
{
    register_plugin("Block All Voice For Last Player", "2.0", "uMk0");
    register_forward(FM_Voice_SetClientListening, "ClientListeng", false)
    RegisterHookChain(RG_CBasePlayer_Spawn, "round_update", true);
    RegisterHookChain(RG_CBasePlayer_Killed, "killed", true);
}
public killed(id){
    switch (TeamName:get_member(id, m_iTeam)) {
        case TEAM_TERRORIST: {
            tt_count--;
        }
        case TEAM_CT: {
            ct_count--;
        }
    }
    if(ct_count == 1 && !alert_ct){
        client_print_color(0, 0, "^1[^4BVP^1] ^4Выживший ^3контр-террорист ^4не слышит теперь всех!");
        alert_ct = true;
        userLastCT = getLastPlayer("CT");
    }
    if(tt_count == 1 && !alert_tt){
        client_print_color(0, 0, "^1[^4BVP^1] ^4Выживший ^3террорист ^4не слышит теперь всех!");
        alert_tt = true;
        userLastTT = getLastPlayer("TERRORIST");
    }
    if(ct_count <= 1 || tt_count <= 1){
        blockVoise = true;
    }
    
}
public ClientListeng(iReciever, iSender)
{
    if((iReciever == userLastTT || iReciever == userLastCT) && blockVoise){
        engfunc(EngFunc_SetClientListening, iReciever, iSender, false);
        forward_return(FMV_CELL, false);
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}
getLastPlayer(const team[]) {
    new players[MAX_PLAYERS], num;
    get_players_ex(players, num, GetPlayers_ExcludeDead | GetPlayers_ExcludeBots | GetPlayers_ExcludeHLTV | GetPlayers_MatchTeam, team);
    return num == 1 ? players[0] : 0;
}
public round_update(){
    tt_count = get_member_game(m_iNumSpawnableTerrorist);
    ct_count = get_member_game(m_iNumSpawnableCT);
    alert_tt = false;
    alert_ct = false;
    blockVoise = false;
    userLastTT = 0;
    userLastCT = 0;
}
 

foxy

Пользователь
Регистрация
19 Июн 2017
Сообщения
14
Симпатии
0
Пол
Мужской
Ещё как вариант :D
C#:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#tryinclude <reapi>
#if !defined _reapi_included
    #include <VtcApi>
#endif
#include <fakemeta>
new bool:blockVoise = false,ct_count = 0,tt_count = 0,bool:alert_tt = false,bool:alert_ct = false,userLastTT,userLastCT;
public plugin_init()
{
    register_plugin("Block All Voice For Last Player", "2.0", "uMk0");
    register_forward(FM_Voice_SetClientListening, "ClientListeng", false)
    RegisterHookChain(RG_CBasePlayer_Spawn, "round_update", true);
    RegisterHookChain(RG_CBasePlayer_Killed, "killed", true);
}
public killed(id){
    switch (TeamName:get_member(id, m_iTeam)) {
        case TEAM_TERRORIST: {
            tt_count--;
        }
        case TEAM_CT: {
            ct_count--;
        }
    }
    if(ct_count == 1 && !alert_ct){
        client_print_color(0, 0, "^1[^4BVP^1] ^4Выживший ^3контр-террорист ^4не слышит теперь всех!");
        alert_ct = true;
        userLastCT = getLastPlayer("CT");
    }
    if(tt_count == 1 && !alert_tt){
        client_print_color(0, 0, "^1[^4BVP^1] ^4Выживший ^3террорист ^4не слышит теперь всех!");
        alert_tt = true;
        userLastTT = getLastPlayer("TERRORIST");
    }
    if(ct_count <= 1 || tt_count <= 1){
        blockVoise = true;
    }
   
}
public ClientListeng(iReciever, iSender)
{
    if((iReciever == userLastTT || iReciever == userLastCT) && blockVoise){
        engfunc(EngFunc_SetClientListening, iReciever, iSender, false);
        forward_return(FMV_CELL, false);
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED;
}
getLastPlayer(const team[]) {
    new players[MAX_PLAYERS], num;
    get_players_ex(players, num, GetPlayers_ExcludeDead | GetPlayers_ExcludeBots | GetPlayers_ExcludeHLTV | GetPlayers_MatchTeam, team);
    return num == 1 ? players[0] : 0;
}
public round_update(){
    tt_count = get_member_game(m_iNumSpawnableTerrorist);
    ct_count = get_member_game(m_iNumSpawnableCT);
    alert_tt = false;
    alert_ct = false;
    blockVoise = false;
    userLastTT = 0;
    userLastCT = 0;
}
На сервере стоит UCC, и не работает)
 
Сверху Снизу