Ajuda aqui , 4 classes Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Zplague

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Seu portal de Zombie Plague no Brasil

Zumbis Online

Últimos assuntos

» [ANÚNCIO] Alguem vivo ai?
por Eclipse 17/9/2024, 6:39 pm

» The Fen1xS CLan | Zombie Plague | [XP/LEVELS] #2024
por hevy 5/7/2024, 8:28 pm

»
por Eclipse 29/2/2024, 12:30 am

» [Plugin] /vm Com Status
por Isr7 4/6/2023, 3:24 pm

» Alguém pra manter um servidor comigo?
por Isr7 3/6/2023, 4:52 pm

» Alguém querendo criar um servidor de zp? eu pago a host quem quiser deixar o discord ai Isr7#6920
por Isr7 3/6/2023, 3:18 pm

» PEDIDO: Multijump pros VIP
por Madness 15/3/2023, 3:44 pm

» [ZP] Modo padre para 5.0
por XperitosEspetinho123 15/7/2022, 3:31 pm

» [KZ] Servidores de cs 1.6
por [Dk]Serial-Killer 7/5/2022, 4:12 am

» [PLUGIN BY SKVD & WILLIAN] SHOP DE FANTASIAS
por dushowW 23/7/2020, 5:44 pm

Os membros mais ativos da semana

Nenhum usuário

Frases filosóficas Zplague:

....

Google Adsense

Estatísticas

Os nossos membros postaram um total de 38140 mensagens em 6680 assuntos

Temos 2796 usuários registrados

O último membro registrado é zmplugins - Henrique


+3
Leozinho
wanderson_1312
macdos
7 participantes

    Ajuda aqui , 4 classes

    macdos
    macdos
    Humano


    Nick : Matheus Azevedo
    Masculino Número de Mensagens : 22
    Ammo Packs : 4550
    Honra : 1
    Data de inscrição : 08/06/2012

    Ajuda aqui , 4 classes Empty Ajuda aqui , 4 classes

    Mensagem por macdos 9/6/2012, 6:47 am

    ae galerinha tive vendo um serv que ele tem 4 classes , Fundador , Master , Adm , Vip
    e eu só sei fazer no maximo 3 tem como me ajudar? Zplague12
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 9/6/2012, 2:18 pm

    Spoiler:

    e tem la em cima fundador e tu muda o nivel do acesso ou o moderador seila eo nivel do ascesso
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 9/6/2012, 2:20 pm

    se tu sabe mudar o level do acesso ai tu fez ai coloca

    adicionar fundadores (que ridiculo esse tutorial e eu nem sei) ''aaaarnas'' ''senha'''
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 9/6/2012, 2:29 pm

    macdos vo editar pra vc man.
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 9/6/2012, 2:31 pm

    mano eu n entendi isso e a config do um plugin?
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 9/6/2012, 2:47 pm

    sim? tem q editar pelo sma
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 9/6/2012, 3:10 pm

    Sabe onde é que eu vou ter que editar ?
    Junin
    Junin
    Administrador


    Nick : jr_acn
    Masculino Número de Mensagens : 1988
    Ammo Packs : 4612
    Honra : 149
    Data de inscrição : 12/03/2009

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Junin 9/6/2012, 3:13 pm

    bom se for steam o fundador
    usa o get_user_authid ou o get_user_name

    ou pode usar uma flag só pra Fundador

    é meio complicadinho isso '-'
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 9/6/2012, 3:26 pm

    mano você sabe colocar nesse aqui?

    Código:
    #include <amxmodx>
    #include <amxmisc>

    #define PLUGIN "Admin Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "---"

    #define ACCESS_LEVEL ADMIN_ADMIN
    #define ADMIN_LISTEN ADMIN_IMMUNITY

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
            "",
            "[MASTER]",
            "[ADM]",
            "[VIP]"
    }

    public plugin_init()
    {
            register_plugin(PLUGIN, VERSION, AUTHOR)

            g_MessageColor = register_cvar("amx_color", "2") // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
            g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
            g_AdminListen = register_cvar("amx_listen", "1") // Set whether admins see or not all messages(Alive, dead and team-only)


            sayText = get_user_msgid("SayText")
            teamInfo = get_user_msgid("TeamInfo")
            maxPlayers = get_maxplayers()


            register_message(sayText, "avoid_duplicated")

            register_concmd("amx_color", "set_color", ACCESS_LEVEL, "<color>")
            register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
            register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
            register_clcmd("say", "hook_say")
            register_clcmd("say_team", "hook_teamsay")
    }


    public avoid_duplicated(msgId, msgDest, receiver)
    {
            return PLUGIN_HANDLED
    }


    public hook_say(id)
    {
            read_args(message, 191)
            remove_quotes(message)

            // Gungame commands and empty messages
            if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
                    return PLUGIN_CONTINUE

            new name[32]
            get_user_name(id, name, 31)

            new admin = 0, iFlags = get_user_flags(id)

            if(iFlags & ADMIN_IMMUNITY)
                    admin = 1
            else if(iFlags & ADMIN_BAN)
                    admin = 2
            else if(iFlags & ADMIN_RESERVATION)
                    admin = 3

            new isAlive

            if(is_user_alive(id))
            {
                    isAlive = 1
                    alive = "^x01"
            }
            else
            {
                    isAlive = 0
                    alive = "^x01*DEAD* "
            }

            static color[10]

            if(admin)
            {
                    // Name
                    switch(get_pcvar_num(g_NameColor))
                    {
                            case 1:
                                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                            case 2:
                                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                            case 3:
                            {
                                    color = "SPECTATOR"
                                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                            }
                            case 4:
                            {
                                    color = "CT"
                                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                            }
                            case 5:
                            {
                                    color = "TERRORIST"
                                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                            }
                            case 6:
                            {
                                    get_user_team(id, color, 9)
                                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                            }
                    }

                    // Message
                    switch(get_pcvar_num(g_MessageColor))
                    {
                            case 1:    // Yellow
                                    format(strText, 191, "%s", message)
                            case 2:    // Green
                                    format(strText, 191, "^x04%s", message)
                            case 3:    // White
                            {
                                    copy(color, 9, "SPECTATOR")
                                    format(strText, 191, "^x03%s", message)
                            }
                            case 4:    // Blue
                            {
                                    copy(color, 9, "CT")
                                    format(strText, 191, "^x03%s", message)
                            }
                            case 5:    // Red
                            {
                                    copy(color, 9, "TERRORIST")
                                    format(strText, 191, "^x03%s", message)
                            }
                    }
            }
            else    // Player is not admin. Team-color name : Yellow message
            {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s^x03%s", alive, name)
                    format(strText, 191, "%s", message)
            }

            format(message, 191, "%s^x01 :  %s", strName, strText)

            sendMessage(color, isAlive)    // Sends the colored message

            return PLUGIN_CONTINUE
    }


    public hook_teamsay(id)
    {
            new playerTeam = get_user_team(id)
            new playerTeamName[19]

            switch(playerTeam) // Team names * appear on team-only messages
            {
                    case 1:
                            copy(playerTeamName, 11, "Terrorists")

                    case 2:
                            copy(playerTeamName, 18, "Counter-Terrorists")

                    default:
                            copy(playerTeamName, 9, "Spectator")
            }

            read_args(message, 191)
            remove_quotes(message)

            // Gungame commands and empty messages
            if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
                    return PLUGIN_CONTINUE

            new name[32]
            get_user_name(id, name, 31)

            new admin = 0, iFlags = get_user_flags(id)

            if(iFlags & ADMIN_IMMUNITY)
                    admin = 1
            else if(iFlags & ADMIN_BAN)
                    admin = 2
            else if(iFlags & ADMIN_RESERVATION)
                    admin = 3

            new isAlive

            if(is_user_alive(id))
            {
                    isAlive = 1
                    alive = "^x01"
            }
            else
            {
                    isAlive = 0
                    alive = "^x01*DEAD* "
            }

            static color[10]

            if(admin)
            {
                    // Name
                    switch(get_pcvar_num(g_NameColor))
                    {
                            case 1:
                                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                            case 2:
                                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                            case 3:
                            {
                                    color = "SPECTATOR"
                                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                            }
                            case 4:
                            {
                                    color = "CT"
                                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                            }
                            case 5:
                            {
                                    color = "TERRORIST"
                                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                            }
                            case 6:
                            {
                                    get_user_team(id, color, 9)
                                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                            }
                    }

                    // Message
                    switch(get_pcvar_num(g_MessageColor))
                    {
                            case 1:    // Yellow
                                    format(strText, 191, "%s", message)
                            case 2:    // Green
                                    format(strText, 191, "^x04%s", message)
                            case 3:    // White
                            {
                                    copy(color, 9, "SPECTATOR")
                                    format(strText, 191, "^x03%s", message)
                            }
                            case 4:    // Blue
                            {
                                    copy(color, 9, "CT")
                                    format(strText, 191, "^x03%s", message)
                            }
                            case 5:    // Red
                            {
                                    copy(color, 9, "TERRORIST")
                                    format(strText, 191, "^x03%s", message)
                            }
                    }
            }
            else    // Player is not admin. Team-color name : Yellow message
            {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
                    format(strText, 191, "%s", message)
            }

            format(message, 191, "%s ^x01:  %s", strName, strText)

            sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

            return PLUGIN_CONTINUE
    }


    public set_color(id, level, cid)
    {
            if(!cmd_access(id, level, cid, 2))
                    return PLUGIN_HANDLED

            new arg[1], newColor
            read_argv(1, arg, 1)

            newColor = str_to_num(arg)

            if(newColor >= 1 && newColor <= 5)
            {
                    set_pcvar_num(g_MessageColor, newColor)

                    if(get_pcvar_num(g_NameColor) != 1 &&
                            ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                            ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                            ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
                    {
                            set_pcvar_num(g_NameColor, 2)
                    }
            }

            return PLUGIN_HANDLED
    }


    public set_name_color(id, level, cid)
    {
            if(!cmd_access(id, level, cid, 2))
                    return PLUGIN_HANDLED

            new arg[1], newColor
            read_argv(1, arg, 1)

            newColor = str_to_num(arg)

            if(newColor >= 1 && newColor <= 6)
            {
                    set_pcvar_num(g_NameColor, newColor)

                    if((get_pcvar_num(g_MessageColor) != 1
                            &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                            ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                            ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                            || get_pcvar_num(g_NameColor) == 6)
                    {
                            set_pcvar_num(g_MessageColor, 2)
                    }
            }

            return PLUGIN_HANDLED
    }


    public set_listen(id, level, cid)
    {
            if(!cmd_access(id, level, cid, 2))
                    return PLUGIN_HANDLED

            new arg[1], newListen
            read_argv(1, arg, 1)

            newListen = str_to_num(arg)

            set_pcvar_num(g_AdminListen, newListen)

            return PLUGIN_HANDLED
    }


    public sendMessage(color[], alive)
    {
            new teamName[10]

            for(new player = 1; player < maxPlayers; player++)
            {
                    if(!is_user_connected(player))
                            continue

                    if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                    {
                            get_user_team(player, teamName, 9)    // Stores user's team name to change back after sending the message
                            changeTeamInfo(player, color)        // Changes user's team according to color choosen
                            writeMessage(player, message)        // Writes the message on player's chat
                            changeTeamInfo(player, teamName)    // Changes user's team back to original
                    }
            }
    }


    public sendTeamMessage(color[], alive, playerTeam)
    {
            new teamName[10]

            for(new player = 1; player < maxPlayers; player++)
            {
                    if(!is_user_connected(player))
                            continue

                    if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                    {
                            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                            {
                                    get_user_team(player, teamName, 9)    // Stores user's team name to change back after sending the message
                                    changeTeamInfo(player, color)        // Changes user's team according to color choosen
                                    writeMessage(player, message)        // Writes the message on player's chat
                                    changeTeamInfo(player, teamName)    // Changes user's team back to original
                            }
                    }
            }
    }


    public changeTeamInfo(player, team[])
    {
            message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(* is responsable for * time player is)
            write_byte(player)                // Write byte needed
            write_string(team)                // Changes player's team
            message_end()                    // Also Needed
    }


    public writeMessage(player, message[])
    {
            message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(* is responsable for writing colored messages)
            write_byte(player)                    // Write byte needed
            write_string(message)                    // Effectively write the message, finally, afterall
            message_end()                        // Needed as always
    }
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 9/6/2012, 3:40 pm

    sim acho q sei ja to começando a entender esse negocio de sma(tomara q num leve 10 dias editando isso)
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 9/6/2012, 3:42 pm

    é do admin chat colors?
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 9/6/2012, 10:43 pm

    wanderson_1312 escreveu:é do admin chat colors?

    Sim e sim.
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 10/6/2012, 12:17 am

    Leozinho escreveu:
    wanderson_1312 escreveu:é do admin chat colors?

    Sim e sim.
    versão 2.0?
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 10/6/2012, 1:02 am

    Mano nem sei qual e foi um amigo que me arrumou esse.
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 10/6/2012, 1:06 am

    pode perguntar a ele por favor se puder se for a versão q to pensando(a v2.0) me da o sma upa o sma ai se de certo eu fiz o modo fundador so mudar o level do acesso
    macdos
    macdos
    Humano


    Nick : Matheus Azevedo
    Masculino Número de Mensagens : 22
    Ammo Packs : 4550
    Honra : 1
    Data de inscrição : 08/06/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por macdos 10/6/2012, 2:30 am

    wanderson_1312 escreveu:pode perguntar a ele por favor se puder se for a versão q to pensando(a v2.0) me da o sma upa o sma ai se de certo eu fiz o modo fundador so mudar o level do acesso

    manda pra mim?
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 10/6/2012, 2:38 am

    macdos escreveu:
    wanderson_1312 escreveu:pode perguntar a ele por favor se puder se for a versão q to pensando(a v2.0) me da o sma upa o sma ai se de certo eu fiz o modo fundador so mudar o level do acesso

    manda pra mim?
    quem tem o sma é o Leozinho
    macdos
    macdos
    Humano


    Nick : Matheus Azevedo
    Masculino Número de Mensagens : 22
    Ammo Packs : 4550
    Honra : 1
    Data de inscrição : 08/06/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por macdos 10/6/2012, 3:04 am

    Leozin nao tem ele é fundador do meu server nois tambem ta lutando pra consegui '-'
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 10/6/2012, 3:18 am

    macdos escreveu:Leozin nao tem ele é fundador do meu server nois tambem ta lutando pra consegui '-'
    consegui o q?
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 10/6/2012, 5:26 am

    conseguir colocar o [FUNDADOR] o dedicado já ta on só falta mecher nisso ai.
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 10/6/2012, 4:16 pm

    então me da o sma manolo pra editar
    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 10/6/2012, 7:12 pm

    mano so tenho essa ai que eu postei
    avatar
    Convidad
    Convidado


    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Convidad 11/6/2012, 7:07 pm

    Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <  amxmodx>
    #include <  amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    Leozinho
    Leozinho
    Administrador


    Masculino Número de Mensagens : 2865
    Ammo Packs : 5412
    Honra : 75
    Data de inscrição : 20/11/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Leozinho 11/6/2012, 7:31 pm

    E consegui já colocar mais vlw pela intenção.
    Luankc
    Luankc
    Administrador


    Masculino Número de Mensagens : 3340
    Ammo Packs : 7212
    Honra : 143
    Data de inscrição : 21/02/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Luankc 11/6/2012, 7:32 pm

    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....
    Ajuda aqui , 4 classes Image51
    omg
    AnDroidEL
    AnDroidEL
    Moderador
    Moderador


    Nick : AnDroidEL
    Masculino Número de Mensagens : 1936
    Zzzzzzzzz...
    Ammo Packs : 6471
    Honra : 50
    Data de inscrição : 07/10/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por AnDroidEL 11/6/2012, 8:35 pm

    A classe "Fundador" terá quais direitos no servidor?
    Luankc
    Luankc
    Administrador


    Masculino Número de Mensagens : 3340
    Ammo Packs : 7212
    Honra : 143
    Data de inscrição : 21/02/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Luankc 11/6/2012, 8:42 pm

    AnDroidEL escreveu:A classe "Fundador" terá quais direitos no servidor?
    Depende de como configurar, o plugin simplesmente dará o símbolo "fundador" é como um título (Pra quem vê todo mundo odeia o cris sabem do que to falando kkkk), o que vai mudar é os acessos nas flags conforme cada um configura o servidor...
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 11/6/2012, 10:16 pm

    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <    amxmodx>
    #include <    amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?
    avatar
    Convidad
    Convidado


    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Convidad 12/6/2012, 12:21 am

    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <      amxmodx>
    #include <      amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 12/6/2012, 12:33 am

    guh._.rds escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <      amxmodx>
    #include <      amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    vlw pela ajuda sou teu fan mano vou fazer um video pra todo mundo q quizer saber como se coloca isso dae
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 12/6/2012, 12:37 am

    wanderson_1312 escreveu:
    guh._.rds escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <        amxmodx>
    #include <        amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    vlw pela ajuda sou teu fan mano vou fazer um video pra todo mundo q quizer saber como se coloca isso dae
    e mais toda vez q falo aparece [vip] [fundador] exemplo [fundador]eae
    [VIP]eae fica assim
    AnDroidEL
    AnDroidEL
    Moderador
    Moderador


    Nick : AnDroidEL
    Masculino Número de Mensagens : 1936
    Zzzzzzzzz...
    Ammo Packs : 6471
    Honra : 50
    Data de inscrição : 07/10/2011

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por AnDroidEL 12/6/2012, 12:38 am

    Luankc escreveu:
    AnDroidEL escreveu:A classe "Fundador" terá quais direitos no servidor?
    Depende de como configurar, o plugin simplesmente dará o símbolo "fundador" é como um título (Pra quem vê todo mundo odeia o cris sabem do que to falando kkkk), o que vai mudar é os acessos nas flags conforme cada um configura o servidor...

    kkkkkkkkkkkkkk me lembro do título que ele ganhou kk
    avatar
    Convidad
    Convidado


    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Convidad 12/6/2012, 12:44 am

    wanderson_1312 escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <          amxmodx>
    #include <          amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    vlw pela ajuda sou teu fan mano vou fazer um video pra todo mundo q quizer saber como se coloca isso dae
    e mais toda vez q falo aparece [vip] [fundador] exemplo [fundador]eae
    [VIP]eae fica assim

    Voce quiz dizer:
    Vc escreve e aparece:
    [FUNDADOR] eae
    [VIP] eae

    É isso? Se for esse o caso:
    Exemplo 1: vc deve estar usando as FLAGS de FUNDADOR e VIP 'vy'
    Exemplo 2: vc deve estar usando um outro plugin de chat.... Exemplo: allchat, admin chat colors, ultimate chat...... (isso gera bugs, os plugins entram em conflito...)
    wanderson_1312
    wanderson_1312
    Humano


    Masculino Número de Mensagens : 180
    feliz
    Ammo Packs : 4610
    Honra : 1
    Data de inscrição : 19/04/2012

    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por wanderson_1312 12/6/2012, 12:48 am

    guh._.rds escreveu:
    wanderson_1312 escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <            amxmodx>
    #include <            amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    vlw pela ajuda sou teu fan mano vou fazer um video pra todo mundo q quizer saber como se coloca isso dae
    e mais toda vez q falo aparece [vip] [fundador] exemplo [fundador]eae
    [VIP]eae fica assim

    Voce quiz dizer:
    Vc escreve e aparece:
    [FUNDADOR] eae
    [VIP] eae

    É isso? Se for esse o caso:
    Exemplo 1: vc deve estar usando as FLAGS de FUNDADOR e VIP 'vy'
    Exemplo 2: vc deve estar usando um outro plugin de chat.... Exemplo: allchat, admin chat colors, ultimate chat...... (isso gera bugs, os plugins entram em conflito...)
    eu to usando ichat 1.2.0
    avatar
    Convidad
    Convidado


    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Convidad 12/6/2012, 12:51 am

    wanderson_1312 escreveu:
    guh._.rds escreveu:
    wanderson_1312 escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:
    wanderson_1312 escreveu:
    guh._.rds escreveu:Vo confeçar... fiquem com dó de vcs e resolvi ajudar....

    LINK ORIGINAL DO PLUGIN:
    http://forums.alliedmods.net/showpost.php?p=1411322&postcount=29

    PLUGIN EDITADO POR MIM: (FUNDADOR, MASTER, ADMIN e VIP)
    Tags:
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]

    Código:

    #include <            amxmodx>
    #include <            amxmisc>

    #define PLUGIN "Tag and Chat Colors"
    #define VERSION "2.0"
    #define AUTHOR "Arion"

    #define ACCESS_LEVEL ADMIN_IMMUNITY
    #define ADMIN_LISTEN ADMIN_LEVEL_H

    #define ADMIN_FLAG_V (1<<21)
    #define ADMIN_FLAG_W (1<<22)
    #define ADMIN_FLAG_X (1<<23)
    #define ADMIN_FLAG_Y (1<<24)

    new message[192]
    new sayText
    new teamInfo
    new maxPlayers

    new g_MessageColor
    new g_NameColor
    new g_AdminListen

    new strName[191]
    new strText[191]
    new alive[11]

    new const g_szTag[][] = {
        "", // NAO REMOVA
        "[FUNDADOR]",
        "[MASTER]",
        "[ADMIN]",
        "[VIP]"
    }

    new const g_iTagFlag[sizeof(g_szTag)] = {
        ADMIN_ALL, // NAO REMOVA
        ADMIN_FLAG_V,
        ADMIN_FLAG_W,
        ADMIN_FLAG_X,
        ADMIN_FLAG_Y
    }

    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)

        g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
        g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
        g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

        sayText = get_user_msgid("SayText")
        teamInfo = get_user_msgid("TeamInfo")
        maxPlayers = get_maxplayers()

        register_message(sayText, "avoid_duplicated")

        register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
        register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
        register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
        register_clcmd("say", "hook_say")
        register_clcmd("say_team", "hook_teamsay")
    }

    public avoid_duplicated(msgId, msgDest, receiver)
    {
        return PLUGIN_HANDLED
    }

    get_tag_index(id)
    {
        new flags = get_user_flags(id)
       
        for(new i = 1; i < sizeof(g_iTagFlag); i++)
        {
            if(check_admin_flag(flags, g_iTagFlag[i]))
            {
                return i
            }
        }
       
        return 0
    }

    check_admin_flag(flags, flag)
    {
        if(flag == ADMIN_ADMIN)
        {
            return ((flags & ~ADMIN_USER) > 0)
        }
        else if(flag == ADMIN_ALL)
        {
            return 1
        }
       
        return (flags & flag)
    }

    public hook_say(id)
    {
        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
                case 2:
                    format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s^x03%s", alive, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s^x01 :  %s", strName, strText)

        sendMessage(color, isAlive)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public hook_teamsay(id)
    {
        new playerTeam = get_user_team(id)
        new playerTeamName[19]

        switch(playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy(playerTeamName, 11, "Terrorists")

            case 2:
                copy(playerTeamName, 18, "Counter-Terrorists")

            default:
                copy(playerTeamName, 9, "Spectator")
        }

        read_args(message, 191)
        remove_quotes(message)

        // Gungame commands and empty messages
        if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
            return PLUGIN_CONTINUE

        new name[32]
        get_user_name(id, name, 31)

        new admin = get_tag_index(id)

        new isAlive

        if(is_user_alive(id))
        {
            isAlive = 1
            alive = "^x01"
        }
        else
        {
            isAlive = 0
            alive = "^x01*DEAD* "
        }

        static color[10]

        if(admin)
        {
            // Name
            switch(get_pcvar_num(g_NameColor))
            {
                case 1:
                    format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
                case 2:
                    format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
                case 3:
                {
                    color = "SPECTATOR"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 4:
                {
                    color = "CT"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 5:
                {
                    color = "TERRORIST"
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
                case 6:
                {
                    get_user_team(id, color, 9)
                    format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
                }
            }

            // Message
            switch(get_pcvar_num(g_MessageColor))
            {
                case 1:    // Yellow
                    format(strText, 191, "%s", message)
                case 2:    // Green
                    format(strText, 191, "^x04%s", message)
                case 3:    // White
                {
                    copy(color, 9, "SPECTATOR")
                    format(strText, 191, "^x03%s", message)
                }
                case 4:    // Blue
                {
                    copy(color, 9, "CT")
                    format(strText, 191, "^x03%s", message)
                }
                case 5:    // Red
                {
                    copy(color, 9, "TERRORIST")
                    format(strText, 191, "^x03%s", message)
                }
            }
        }
        else    // Player is not admin. Team-color name : Yellow message
        {
            get_user_team(id, color, 9)
            format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
            format(strText, 191, "%s", message)
        }

        format(message, 191, "%s ^x01:  %s", strName, strText)

        sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

        return PLUGIN_CONTINUE
    }

    public set_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 5)
        {
            set_pcvar_num(g_MessageColor, newColor)

            if(get_pcvar_num(g_NameColor) != 1 &&
                ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
            {
                set_pcvar_num(g_NameColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_name_color(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newColor
        read_argv(1, arg, 1)

        newColor = str_to_num(arg)

        if(newColor >= 1 && newColor <= 6)
        {
            set_pcvar_num(g_NameColor, newColor)

            if((get_pcvar_num(g_MessageColor) != 1
                &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
                ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
                ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
                || get_pcvar_num(g_NameColor) == 6)
            {
                set_pcvar_num(g_MessageColor, 2)
            }
        }

        return PLUGIN_HANDLED
    }

    public set_listen(id, level, cid)
    {
        if(!cmd_access(id, level, cid, 2))
            return PLUGIN_HANDLED

        new arg[1], newListen
        read_argv(1, arg, 1)

        newListen = str_to_num(arg)

        set_pcvar_num(g_AdminListen, newListen)

        return PLUGIN_HANDLED
    }

    public sendMessage(color[], alive)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)    // Changes user's team back to original
            }
        }
    }

    public sendTeamMessage(color[], alive, playerTeam)
    {
        new teamName[10]

        for(new player = 1; player < maxPlayers; player++)
        {
            if(!is_user_connected(player))
                continue

            if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
                {
                    get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                    changeTeamInfo(player, color)      // Changes user's team according to color choosen
                    writeMessage(player, message)      // Writes the message on player's chat
                    changeTeamInfo(player, teamName)  // Changes user's team back to original
                }
            }
        }
    }

    public changeTeamInfo(player, team[])
    {
        message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
        write_byte(player)    // Write byte needed
        write_string(team)  // Changes player's team
        message_end()      // Also Needed
    }

    public writeMessage(player, message[])
    {
        message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
        write_byte(player)    // Write byte needed
        write_string(message)  // Effectively write the message, finally, afterall
        message_end()          // Needed as always

    vlw pelo plugin mais como a gente faz para ser o fundador tem que ir no users.ini e colocar ''nick'' ''senha'' assim? e tem que instalar em plugins.ini ou plugins-zplague?

    Tem que instalar em plugins.ini ou plugins-zplague.ini?
    Tanto faz..... pq se tiver escrito plugins.ini ou plugins-algo_escrito_aqui.ini da na mesma coisa.....

    ---------
    users.ini:
    NICK | SENHA | FLAGS | NIVEL DE ACESSO DA CONTA

    "NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
    "NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
    "NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADMIN]
    "NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

    -------
    Repare que no final das FLAGS e u adcionei as letras 'v; w; x; y;' ou seja, o player que tiver a flag 'v' tera escrito [FUNDADOR] ates de seu nome....

    ------
    v - [FUNDADOR]
    w - [MASTER]
    x - [ADMIN]
    y - [VIP]
    vlw pela ajuda sou teu fan mano vou fazer um video pra todo mundo q quizer saber como se coloca isso dae
    e mais toda vez q falo aparece [vip] [fundador] exemplo [fundador]eae
    [VIP]eae fica assim

    Voce quiz dizer:
    Vc escreve e aparece:
    [FUNDADOR] eae
    [VIP] eae

    É isso? Se for esse o caso:
    Exemplo 1: vc deve estar usando as FLAGS de FUNDADOR e VIP 'vy'
    Exemplo 2: vc deve estar usando um outro plugin de chat.... Exemplo: allchat, admin chat colors, ultimate chat...... (isso gera bugs, os plugins entram em conflito...)
    eu to usando ichat 1.2.0

    Use apenas 1 plugin de chat.....

    Conteúdo patrocinado


    Ajuda aqui , 4 classes Empty Re: Ajuda aqui , 4 classes

    Mensagem por Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 12:25 pm