Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

gruQ
 Udostępnij

Rekomendowane odpowiedzi

Witam, po wgraniu pluginu armyranks który między innymi wyświetla na czacie aktualną rangę(stopień, tytuł), tracę możliwość korzystania z Simple Chat Colors aby dodawać tagi z cfg na flagę, wyświetla się tylko ranga z armyranks. Można to jakoś pogodzić ze sobą czy trzeba się kierować bardziej w stronę dorobienia jakiejś funkcji która będzie czytała flagi i dodawała konkretny tag w armyranks_chat?

 

 

Kod army ranks chat

Spoiler

#include <army_ranks>
#include <basecomm>

#include <colors>

new    String: PrefixColor[MAXPLAYERS+1][20],
    String: NameColor[MAXPLAYERS+1][20],
    String: TextColor[MAXPLAYERS+1][20],
    String: DeathColor[MAXPLAYERS+1][20],
    String: SpecColor[MAXPLAYERS+1][20],
    String:    g_sRank[MAXPLAYERS+1][36],
    g_iLastSay[MAXPLAYERS+1];
    
public Plugin:myinfo =
{
    name = "[ ARMY ] Chat",
    author = "sahapro33",
    description = "",
    version = "1.1 BaseComm"
}

public OnPluginStart()
{    
    AddCommandListener(Command_Say, "say");
    AddCommandListener(Command_Say_Team, "say_team");
    AddCommandListener(CommandBack, "jointeam");
}
public Action:CommandBack(client, const String:command[], args) GetChatColor(client);
public ARMY_PlayerSpawn(client) GetChatColor(client);
public ARMY_ArmyUp(client) GetChatColor(client);
public OnClientPutInServer(client) g_iLastSay[client] = 0;

public Action:Command_Say_Team(client, const String:command[], argc)
{
    if ( 0 < client <= MaxClients && IsClientInGame(client) && !BaseComm_IsClientGagged(client) )
    {
        new iTime = GetTime();
        if ( g_iLastSay[client] > iTime )
        {
            return Plugin_Handled;
        }
        g_iLastSay[client] = iTime +2;
        decl String:sName[64], String:sMessage[256];
        GetClientName(client, sName, sizeof(sName) - 1);
        GetCmdArgString(sMessage, sizeof(sMessage) - 1);
        StripQuotes(sMessage);
        if(!Army_GetStringRank(client,g_sRank[client])) SetFailState("Error");
        switch(GetClientTeam(client))
        {
            case 1:
            {
                Format(sMessage, 500, "{default}*SPEC*[%s%s{default}] %s%s{default}: %s%s",PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
            }
            case 2:
            {
                Format(sMessage, 500, "{default}(Terrorist)[%s%s{default}] %s%s{default}: %s%s",PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
            }
            case 3:
            {
                Format(sMessage, 500, "{default}(Antyterrorist)[%s%s{default}] %s%s{default}: %s%s",PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
            }
        }
        for (new i = 1; i<MaxClients; i++)
        {
            if (IsClientInGame(i)&&GetClientTeam(client)==GetClientTeam(i))
            {
                CPrintToChatEx(i,client,sMessage);
            }
        }
        return Plugin_Handled;
    }
    return Plugin_Continue;
}
public Action:Command_Say(client, const String:command[], argc)
{
    if (0 < client <= MaxClients && IsClientInGame(client) && !BaseComm_IsClientGagged(client))
    {
        new iTime = GetTime();
        if ( g_iLastSay[client] > iTime )
        {
            return Plugin_Handled;
        }
        decl String:sName[64], String:sMessage[500];
        GetClientName(client, sName, sizeof(sName) - 1);
        GetCmdArgString(sMessage, sizeof(sMessage) - 1);
        StripQuotes(sMessage);
        if(!Army_GetStringRank(client,g_sRank[client])) SetFailState("Error");
        if ( IsPlayerAlive(client) )
        {            
            Format(sMessage, 500, "{default}[%s%s{default}] %s%s{default}: %s%s",PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
            CPrintToChatAllEx(client,sMessage);
        }
        else
        {
            if ( GetClientTeam(client) > 1  )
            {
                Format(sMessage, 500, "%s*DEAD* {default}[%s%s{default}] %s%s{default}: %s%s",DeathColor[client],PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
                CPrintToChatAllEx(client,sMessage);
            }
            else
            {
                Format(sMessage, 500, "%s*SPEC*{default}[%s%s{default}] %s%s{default}: %s%s",SpecColor[client],PrefixColor[client],g_sRank[client],NameColor[client],sName,TextColor[client],sMessage);
                CPrintToChatAllEx(client,sMessage);        
            }
        }
        return Plugin_Handled;
    }
    return Plugin_Continue;
}

GetChatColor(client)
{
    if(!Army_GetStringAtributes(client,"PrefixColor","{green}",PrefixColor[client]))SetFailState("Error");
    if(!Army_GetStringAtributes(client,"NameColor","{teamcolor}",NameColor[client]))SetFailState("Error");
    if(!Army_GetStringAtributes(client,"TextColor","{default}",TextColor[client]))SetFailState("Error");
    if(!Army_GetStringAtributes(client,"DeathColor","{default}",DeathColor[client]))SetFailState("Error");
    if(!Army_GetStringAtributes(client,"SpecColor","{default}",SpecColor[client]))SetFailState("Error");
}

 

 

 

Edytowane przez gruQ
Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×
×
  • Dodaj nową pozycję...