DajK Napisano 8 Października 2019 Witam, napotkałem się z problemem takim, że wiadomości [ADMIN], [VIP], [WŁAŚCICIEL] działają na chacie publicznym, ale na teamowym już nie do końca. Wydaję mi się, że mam wszystko dobrze, lecz proszę o porady co do kodu. Wysyłam kod: Spoiler #include <sourcemod> #include <multicolors> #include <cstrike> // CS_TEAM_T // CS_TEAM_CT //{"{default}", "{darkred}", "{green}", "{lightgreen}", "{red}", "{blue}", "{olive}", "{lime}", "{lightred}", "{purple}", "{grey}", "{yellow}", "{orange}", "{bluegrey}", "{lightblue}", "{darkblue}", "{grey2}", "{orchid}", "{lightred2}"}; char prefix[][] = { "{darkred}[WŁAŚCICIEL]", "{darkblue}[ADMIN]", "{purple}[VIP]" }; int flaga[] = { ADMFLAG_ROOT, ADMFLAG_BAN, ADMFLAG_CUSTOM1 } public void OnPluginStart() { RegConsoleCmd("say", ProcessChat); RegConsoleCmd("say_team", ProcessChat_Team); } public Action ProcessChat(int client, int args) { char buffer[512]; GetCmdArgString(buffer, sizeof(buffer)); StripQuotes(buffer); if (strlen(buffer) == 0) return Plugin_Handled; if (buffer[0] == '/' || buffer[0] == '!' || buffer[0] == '@') return Plugin_Handled; char prefixBuffer[64]; Format(prefixBuffer, sizeof(prefixBuffer), ""); for (int i = 0; i < sizeof(prefix); i++) { if (GetUserFlagBits(client) & flaga) { Format(prefixBuffer, sizeof(prefixBuffer), "%s", prefix); break; } } CPrintToChatAll("%s%s%N{default}: %s", prefixBuffer, GetClientTeam(client) == CS_TEAM_T ? "{orange}" : "{orange}", client, buffer); return Plugin_Handled; } public Action ProcessChat_Team(int client, int args) { char buffer[512]; GetCmdArgString(buffer, sizeof(buffer)); StripQuotes(buffer); if (strlen(buffer) == 0) return Plugin_Handled; if (buffer[0] == '/' || buffer[0] == '!' || buffer[0] == '@') return Plugin_Handled; for (int i = 1; i < MAXPLAYERS; i++) { if (IsValidClient(i) && GetClientTeam(i) == GetClientTeam(client)) CPrintToChat(i, "{orchid}(team say) %s%s%N{default}: %s", GraczJestAdminem(client) ? "{darkblue}[ADMIN] " : "", GraczJestVipem(client) ? "{purple}[VIP] " : "", GraczJestWlascicielem(client) ? "{darkred}[WŁAŚCICIEL] " : "", GetClientTeam(client) == CS_TEAM_T ? "{lightred}" : "{lightblue}", client, buffer); } return Plugin_Handled; } bool GraczJestAdminem(int client) { if (GetUserFlagBits(client) & ADMFLAG_BAN) return true; return false; } bool GraczJestVipem(int client) { if (GetUserFlagBits(client) & ADMFLAG_CUSTOM1) return true; return false; } bool GraczJestWlascicielem(int client) { if (GetUserFlagBits(client) & ADMFLAG_ROOT) return true; return false; } public bool IsValidClient(int client) { if (client >= 1 && client <= MaxClients && IsClientInGame(client)) return true; return false; } Przez Vasto_Lorde, 9 Października 2019 Pamiętaj o wstawianiu kodu w tagi [code], a jeśli jest długi, to wstawiaj go również w tag [spoiler]. Poprawiam temat ^^ Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
DajK 1 Napisano 9 Października 2019 @MAGNET Chyba tylko ty wiesz odpowiedź na to pytanie bardzo bym prosił o pomoc. Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach
Vasto_Lorde Napisano 11 Października 2019 Wiadomość wygenerowana automatycznie Temat został zamknięty i przeniesiony do działu "Przestarzałe tematy". Powodem jest brak rozwiązania problemu zawartego w temacie lub brak zainteresowania autora w jego rozwiązaniu. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji. Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach