Ruzio Napisano 30 Maja 2020 Witam wszystkich Chcialbym aby ten kod przerobic, tak by dzialal on pod komenda "!wycisz" [ON/OFF] i mogl on wlaczac i wylaczac to tylko admin Po wlaczeniu tej komendy pisalo by na chacie "Komenda wlaczona" tylko dla osoby wywolujaca ta komende Po wylaczeniu "Komenda wlaczona" tylko dla osoby wywolujaca ta komende #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; } Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Ruzio Napisano 30 Maja 2020 NIeaktualne, przeczytalem kod XD Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Paweł Napisano 1 Lipca 2020 Wiadomość wygenerowana automatycznie ✔ Problem został rozwiązany Jeżeli się z tym nie zgadzasz, raportuj ten post Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach