Skocz do zawartości
NWayne

[CS:GO/CS:S] Kiedy Admin mówi, gracz jest wyciszony!

Rekomendowane odpowiedzi

  • Lubię to! 4

Witajcie,

Prosty plugin który wycisza graczy, kiedy admin mówi.

 

Kod

Spoiler

#pragma semicolon 1

#define DEBUG

#define PLUGIN_AUTHOR "NWayne"
#define PLUGIN_VERSION "1.00"

#include <sourcemod>
#include <cstrike>
#include <sdkhooks>
#include <sdktools>
#include <basecomm>
#include <voiceannounce_ex>

#pragma newdecls required

public Plugin myinfo = 
{
    name = "[CS:GO/CS:S] When admin talks better stay quiet",
    author = PLUGIN_AUTHOR,
    description = "The plugin mutes all of player when admin's talking!",
    version = PLUGIN_VERSION,
    url = "https://www.nwayne.eu/"
};

ConVar Notify_Enabled;

bool g_playersnotify[MAXPLAYERS + 1];

public void OnPluginStart()
{
    Notify_Enabled = CreateConVar("Is_Notify_Enabled", "1", "1 - Player will see the notification | Diffrent value makes it off");
    RegConsoleCmd("sm_powiadomienia", Cmd_Notify);
}

public void OnClientPutInServer(int client)
{
    g_playersnotify[client] = true;
}

public void OnClientDisconnect(int client)
{
    g_playersnotify[client] = false;
}

public Action Cmd_Notify(int client, int args)
{
    if(IsClientInGame(client))
    {
        if(g_playersnotify[client] == true)
        {
            g_playersnotify[client] = false;
            PrintHintText(client, "Powiadomienia zostaly<span color='#FF0000'> Wylaczone</span>!");
            
        } else {
        
            g_playersnotify[client] = true;
            PrintHintText(client, "Powiadomienia zostaly<span color='#00FF00'> Wlaczone</span>!");
            
        }    
    }
}

public void OnClientSpeakingEx(int client)
{
    if (GetAdminFlag(GetUserAdmin(client), Admin_Ban))
    {
        for (int i = 1; i <= MaxClients; i++)
        {
            if (IsClientInGame(i))
            {
                /* < - Wysyla Powiadomienie - > */
                PrintNotify(i);
                /* < - Wycisza Wszystkich Wszystkich - > */
                SetClientListeningFlags(i, VOICE_MUTED);
                /* <- Sprawdza czy gracz posiada flage admina i czy nie byl wczesniej mutowany! -> */
                if (GetAdminFlag(GetUserAdmin(i), Admin_Ban) && !BaseComm_IsClientMuted(i))
                {
                    /* <- Jesli wszystko jest okej, pozwala mu mowic -> */
                    SetClientListeningFlags(i, VOICE_NORMAL);
                }
            }
        }
    }
}

public void OnClientSpeakingEnd(int client)
{
    for (int i = 1; i <= MaxClients; i++)
    {
        if(IsClientInGame(i))
        {
            if (!BaseComm_IsClientMuted(i))
            {
                SetClientListeningFlags(i, VOICE_NORMAL);
            }
        }
    }
}

public Action PrintNotify(int client)
{
    if (GetConVarInt(Notify_Enabled) == 1) 
        return Plugin_Continue;
        
    if(g_playersnotify[client] == true && !GetAdminFlag(GetUserAdmin(client), Admin_Ban))
    {
        PrintHintText(client, "%N zostales wyciszony! Przemawia<span color='#FF0000'> Admin</span>!", client);
    }
    return Plugin_Handled;
}

 

Wymagane:

  • DHooks
  • VoiceannounceEX

 

Uwaga!

Plugin nie był testowany ew. błedy prosze zglaszac w temacie!

 

nwayne_adminmowitozamknijmorde.sp
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

Edytowane przez NWayne

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Fajna nazwa pliku ?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)

mozna smx ? bo kompiluje w przegladarce xD

plugin.sp(13) : fatal error 183: cannot read from file: "voiceannounce_ex"
Edytowane przez Ruzio

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
48 minut temu, Ruzio napisał:

mozna smx ? bo kompiluje w przegladarce xD


plugin.sp(13) : fatal error 183: cannot read from file: "voiceannounce_ex"

Skompiluj plugin lokalnie - u siebie na komputerze. 

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)
15 godzin temu, VestSmart napisał:

Skompiluj plugin lokalnie - u siebie na komputerze. 

 

ale jeszcze trzeba to voiceannounce_ex a ja nie wiem jak 😞 gdzie ten inc trzeba wrzucic edit

 

do tego kompilatora include wrzucic czy do spedita ?

Edytowane przez Ruzio

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.


×
×
  • Dodaj nową pozycję...