Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Mute menu - nie mozna mutowac przeciwnika


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 LucKy_skiLL

    Godlike

  • Power User

Reputacja: 163
Profesjonalista

  • Postów:1 301
  • GG:
  • Lokalizacja:Kraków
Offline

Napisano 07.09.2011 11:56

Tak wygląda plugin, działa, lecz można mutować tylko graczy ze swojego teamu, przeciwników nie. proszę o dodanie tego.


#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <colorchat>
#define PLUGIN "mute menu"
#define VERSION "1.0"
#define AUTHOR "cheap_suit"
#define MAX_PLAYERS 32
new bool:g_mute[MAX_PLAYERS+1][MAX_PLAYERS+1]
new g_menuposition[MAX_PLAYERS+1]
new g_menuplayers[MAX_PLAYERS+1][32]
new g_menuplayersnum[MAX_PLAYERS+1]
new cvar_alltalk
new g_maxclients
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar(PLUGIN, VERSION, FCVAR_SPONLY|FCVAR_SERVER)
register_clcmd("say", "clcmd_say")
register_clcmd("say_team", "clcmd_say")
register_forward(FM_Voice_SetClientListening, "fwd_voice_setclientlistening")
register_menucmd(register_menuid("mute menu"), 1023, "action_mutemenu")

cvar_alltalk = get_cvar_pointer("sv_alltalk")
g_maxclients = global_get(glb_maxClients)
}
public client_putinserver(id)
clear_list(id)

public client_disconnect(id)
clear_list(id)
clear_list(id)
{
for(new i = 0; i <= g_maxclients; ++i)
g_mute[id][i] = false
}
public clcmd_say(id)
{
static say_args[10]
read_args(say_args, 9)
remove_quotes(say_args)

if(say_args[0] == '/' && containi(say_args, "mute") != -1)
{
display_mutemenu(id, g_menuposition[id] = 0)
return PLUGIN_HANDLED_MAIN
}
return PLUGIN_CONTINUE
}
public fwd_voice_setclientlistening(receiver, sender, listen)
{
if(receiver == sender)
return FMRES_IGNORED

if(g_mute[receiver][sender])
{
engfunc(EngFunc_SetClientListening, receiver, sender, 0)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
display_mutemenu(id, pos)
{
if(pos < 0)
return

static team[11]
get_user_team(id, team, 10)

new at = get_pcvar_num(cvar_alltalk)
get_players(g_menuplayers[id], g_menuplayersnum[id],
at ? "c" : "ce", at ? "" : team)
new start = pos * 8
if(start >= g_menuplayersnum[id])
start = pos = g_menuposition[id]
new end = start + 8
if(end > g_menuplayersnum[id])
end = g_menuplayersnum[id]

static menubody[512]
new len = format(menubody, 511, "\wWybierz gracza ktorego nie chcesz slyszec^n^n")
static name[32]

new b = 0, i
new keys = MENU_KEY_0

for(new a = start; a < end; ++a)
{
i = g_menuplayers[id][a]
get_user_name(i, name, 31)

if(i == id)
{
++b
len += format(menubody[len], 511 - len, "\d# %s %s\w^n", name, g_mute[id][i] ? "(Wyciszony)" : "")
}
else
{
keys |= (1<<B)
len += format(menubody[len], 511 - len, "%s%d. %s %s\w^n", g_mute[id][i] ? "\y" : "\w", ++b, name, g_mute[id][i] ? "(Wyciszony)" : "")
}
}
if(end != g_menuplayersnum[id])
{
format(menubody[len], 511 - len, "^n9. %s...^n0. %s", "Dalej", pos ? "Powrot" : "Wyjscie")
keys |= MENU_KEY_9
}
else
format(menubody[len], 511-len, "^n0. %s", pos ? "Powrot" : "Wyjscie")

show_menu(id, keys, menubody, -1, "mute menu")
}

public action_mutemenu(id, key)
{
switch(key)
{
case 8: display_mutemenu(id, ++g_menuposition[id])
case 9: display_mutemenu(id, --g_menuposition[id])
default:
{
new player = g_menuplayers[id][g_menuposition[id] * 8 + key]

g_mute[id][player] = g_mute[id][player] ? false : true
display_mutemenu(id, g_menuposition[id])

static name[32]
get_user_name(player, name, 31)
ColorChat(id, GREEN, "[Mute]^x01 Dales^x03 %smuted^x01 graczowi^x04 %s", g_mute[id][player] ? "" : "un", name)
}
}
return PLUGIN_HANDLED
}


Odświeżam

Powie mi ktoś co jest źle ?

Help
  • +
  • -
  • 0

Oglądasz seriale typu: The Flash, Arrow, Daredevil, The Walking Dead? Jeśli tak, to zapraszam na mój kanał YouTube


#2 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 07.09.2011 16:25

get_players(g_menuplayers[id], g_menuplayersnum[id], at ? "c" : "ce", "");
spróbuj tego

Użytkownik LKZ (funfel) edytował ten post 07.09.2011 16:25

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych