Admin Prefix con Mensajes a Color
#1
Necesitaría un Simple prefijos Admin que figure [ADMIN] Nick: [Mensaje en Verde] al tener la FLAG A y que figure [STAFF] Nick: [Mensaje en Verde] al tener la FLAG L

Muchas Gracias.

PD: Busque pero ninguno me sirvió :/
Responder
#2
Código PHP:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "[R]ak"

new g_MsgSayTextg_MaxPlayersg_AdminTag[33][10]

enum _:Data {
    
TAG[10],
    
FLAG
}

new const 
AdminsTags[][Data] = {
    { 
"[STAFF]"ADMIN_IMMUNITY },
    { 
"[ADMIN]"ADMIN_KICK }
}

const 
SPECT 3

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say""cmdSay")
    
    
g_MaxPlayers get_maxplayers()
    
    
g_MsgSayText get_user_msgid("SayText")
}

public 
client_putinserver(id) {
    
    if(!
is_user_admin(id)) {
        
copy(g_AdminTag[id], charsmax(g_AdminTag[]), "")
        return
    }
        
    new 
Flags get_user_flags(id)
    
    for(new 
isizeof AdminsTagsi++) {
        if(
Flags AdminsTags[i][FLAG]) {
            
copy(g_AdminTag[id], charsmax(g_AdminTag[]), AdminsTags[i][TAG])
            break;
        }
    }
    
}

public 
cmdSay(id)
{
    static 
Text[192]
    
read_args(Textcharsmax(Text))
    
remove_quotes(Text)
    
    
replace_all(Textcharsmax(Text), "%""")
    
    
replace_all(Textcharsmax(Text), "#""")
    
    if(!
ValidMessage(Text))
        return 
PLUGIN_HANDLED
    
    
static Name[32], AliveMessage[192]
    
get_user_name(idNamecharsmax(Name))
    
    
Alive is_user_alive(id)
    
    
formatex(Messagecharsmax(Message), "^x04%s %s^x03%s^x01 : %s"g_AdminTag[id], get_user_team(id) == SPECT "^x01*SPEC* " : !Alive "^x01*DEAD* " ""NameText)
    
    for( new 
1<= g_MaxPlayersi++ ) {
        if(!
is_user_connected(i) || is_user_alive(i) != Alive)
            continue;
        
        
message_begin(MSG_ONE_UNRELIABLEg_MsgSayText_i)
        
write_byte(id)
        
write_string(Message)
        
message_end()
    }
    
    return 
PLUGIN_HANDLED_MAIN;
}

ValidMessage(text[]) {
    static 
leni
    len 
strlen(text)
    
    if(!
len)
        return 
false
    
    
for(0leni++) {
        if( 
text[i] != ' ' ) {
            return 
true
        
}
    }

    return 
false

[Imagen: zcsztw-4.png] [Imagen: 6u5fj2-4.png]
[Imagen: linkedin_thumb_image.png][Imagen: 76561198283253977.png][Imagen: linkedin_thumb_image.png]
Responder
#3
Código PHP:
#include <amxmodx>
#include <amxmisc>

#define VERSION    "2.2"
#define MAX_PREFIXES 10

// Admin Prefix One
#define FLAGADMINONE ADMIN_LEVEL_B
#define PREFIXADMINONE "DUEÑO"

// Admin Prefix Two
#define FLAGADMINTWO ADMIN_LEVEL_C
#define PREFIXADMINTWO "Head Admin"

// JuniorAdmin Prefix
#define FLAGADMINSMS ADMIN_LEVEL_D
#define PREFIXADMINSMS "Admin"

// VIP Prefix
#define FLAGADMINVIP ADMIN_LEVEL_E
#define PREFIXADMINVIP "V.I.P"

new AdminPrefixOneAdminPrefixTwoSmsPrefix ,VIPPrefix
new 
SzMaxPlayersSzSayText;

new 
SzGTeam[3][] = {
    
"Spectator",
    
"Terrorist",
    
"Counter-Terrorist"
}

public 
plugin_init()
{
    
register_plugin("Admin Prefix And Chat Color"VERSION"kostov & Dark_Style");
    
    
// Cvars Plugins
    
AdminPrefixOne register_cvar("show_admin_prefix_one""1");
    
AdminPrefixTwo register_cvar("show_admin_prefix_two""1");
    
SmsPrefix      register_cvar("show_sms_admin_prefix""1");
    
VIPPrefix      register_cvar("show_VIP_admin_prefix""1");
    
    
register_cvar("admin_prefix_version",    VERSIONFCVAR_SERVER|FCVAR_SPONLY);
    
set_cvar_string("admin_prefix_version",    VERSION);
    
register_clcmd("say""hook_say");
    
register_clcmd("say_team""hook_say_team");
    
    
SzSayText get_user_msgid ("SayText");
    
SzMaxPlayers get_maxplayers();
    
    
register_message(SzSayText"MsgDuplicate");
}

public 
MsgDuplicate(id){ return PLUGIN_HANDLED; }

public 
hook_say(id)
{
    new 
SzMessages[192], SzName[32];
    new 
SzAlive is_user_alive(id);
    new 
SzGetFlag get_user_flags(id);
    
    
read_args(SzMessages191);
    
remove_quotes(SzMessages);
    
get_user_name(idSzName31);
    
    if(!
is_valid_msg(SzMessages))
        return 
PLUGIN_CONTINUE;
    
    if(
get_pcvar_num(AdminPrefixOne) && SzGetFlag FLAGADMINONE)(SzAlive format(SzMessages191"^4[%s] ^3%s : ^4%s"PREFIXADMINONESzNameSzMessages) : format(SzMessages191"^1*DEAD* ^4[%s] ^3%s : ^4%s"PREFIXADMINONESzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixTwo) && SzGetFlag FLAGADMINTWO)(SzAlive format(SzMessages191"^4[%s] ^3%s : ^4%s"PREFIXADMINTWOSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^4[%s] ^3%s : ^4%s"PREFIXADMINTWOSzNameSzMessages));
    else if(
get_pcvar_num(SmsPrefix) && SzGetFlag FLAGADMINSMS)(SzAlive format(SzMessages191"^4[%s] ^3%s : ^4%s"PREFIXADMINSMSSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^4[%s] ^3%s : ^4%s"PREFIXADMINSMSSzNameSzMessages));
    else if(
get_pcvar_num(VIPPrefix) && SzGetFlag FLAGADMINVIP)(SzAlive format(SzMessages191"^4[%s] ^3%s : ^4%s"PREFIXADMINVIPSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^4[%s] ^3%s : ^4%s"PREFIXADMINVIPSzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixOne) && !(SzGetFlag FLAGADMINONE))(SzAlive format(SzMessages191"^3%s : ^1%s"SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^3%s : ^1%s"SzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixTwo) && !(SzGetFlag FLAGADMINTWO))(SzAlive format(SzMessages191"^3%s : ^1%s"SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^3%s : ^1%s"SzNameSzMessages));
    else if(
get_pcvar_num(SmsPrefix) && !(SzGetFlag FLAGADMINSMS))(SzAlive format(SzMessages191"^3%s : ^1%s"SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^3%s : ^1%s"SzNameSzMessages));
    else if(
get_pcvar_num(VIPPrefix) && !(SzGetFlag FLAGADMINVIP))(SzAlive format(SzMessages191"^3%s : ^1%s"SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^3%s : ^1%s"SzNameSzMessages));

    for(new 
1<= SzMaxPlayersi++)
        {
            if(!
is_user_connected(i))
                continue;
        
            if(
SzAlive && is_user_alive(i) || !SzAlive && !is_user_alive(i))
                {
                    
message_begin(MSG_ONEget_user_msgid("SayText"), {000}, i);
                    
write_byte(id);
                    
write_string(SzMessages);
                    
message_end();
                }
        }

    return 
PLUGIN_CONTINUE;
}

public 
hook_say_team(id){
    new 
SzMessages[192], SzName[32];
    new 
SzAlive is_user_alive(id);
    new 
SzGetFlag get_user_flags(id);
    new 
SzGetTeam get_user_team(id);

    
read_args(SzMessages191);
    
remove_quotes(SzMessages);
    
get_user_name(idSzName31);
    
    if(!
is_valid_msg(SzMessages))
        return 
PLUGIN_CONTINUE;
    
    if(
get_pcvar_num(AdminPrefixOne) && SzGetFlag FLAGADMINONE)(SzAlive format(SzMessages191"^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINONESzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINONESzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixTwo) && SzGetFlag FLAGADMINTWO)(SzAlive format(SzMessages191"^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINTWOSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINTWOSzNameSzMessages));
    else if(
get_pcvar_num(SmsPrefix) && SzGetFlag FLAGADMINSMS)(SzAlive format(SzMessages191"^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINSMSSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINSMSSzNameSzMessages));
    else if(
get_pcvar_num(VIPPrefix) && SzGetFlag FLAGADMINVIP)(SzAlive format(SzMessages191"^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINVIPSzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s"SzGTeam[SzGetTeam], PREFIXADMINSMSSzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixOne) && !(SzGetFlag FLAGADMINONE))(SzAlive format(SzMessages191"^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages));
    else if(
get_pcvar_num(AdminPrefixTwo) && !(SzGetFlag FLAGADMINTWO))(SzAlive format(SzMessages191"^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages));    
    else if(
get_pcvar_num(SmsPrefix) && !(SzGetFlag FLAGADMINSMS))(SzAlive format(SzMessages191"^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages));    
    else if(
get_pcvar_num(VIPPrefix) && !(SzGetFlag FLAGADMINVIP))(SzAlive format(SzMessages191"^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages) : format(SzMessages191"^1*DEAD* ^1(%s) ^3%s : ^1%s"SzGTeam[SzGetTeam], SzNameSzMessages));    
    
    for(new 
1<= SzMaxPlayersi++)
        {
            if(!
is_user_connected(i))
                continue;
            
            if(
get_user_team(i) != SzGetTeam)
                continue;
            
            if(
SzAlive && is_user_alive(i) || !SzAlive && !is_user_alive(i))
                {
                    
message_begin(MSG_ONEget_user_msgid("SayText"), {000}, i);
                    
write_byte(id);
                    
write_string(SzMessages);
                    
message_end();
                }
        }

    return 
PLUGIN_CONTINUE;
}


bool:is_valid_msg(const SzMessages[]){
    if( 
SzMessages[0] == '@'
    
|| !strlen(SzMessages)){ return false; }
    return 
true;

Hey tu!! verdad que todo fuera mejor si no hubiera maldad.?



[Imagen: lost_in_the_forest.jpg]
Responder
#4
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <ColorChat>

#define PLUGIN "HookSay"
#define VERSION "1.0"
#define AUTHOR "author"

new g_nombre[33][33]

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say""SayHook")
}

public 
SayHook(id)
{
    static 
say[192], Admin[33];
    
read_args(saycharsmax(say))
    
remove_quotes(say)
    
trim(say)
    
    
get_user_name(idg_nombre[id], charsmax(g_nombre[]))
    
    if(
get_user_flags(id) & ADMIN_RCON)
        
Admin "[STAFF]"
    
else if(get_user_flags(id) & ADMIN_IMMUNITY)
        
Admin "[ADMIN]"
    
else
        
Admin ""
    
    
log_to_file("say.log""%s : %s"g_nombre[id], say)
    
replace_all(saycharsmax(say), "%""")
    
replace_all(saycharsmax(say), "#""")
    
    if(!
MensajeValido(say))
        return 
PLUGIN_HANDLED
    
    
switch(get_user_team(id))
    {
        case 
0ColorChat(0GREY"^1(Spectador)^3 %s^1 : %s"g_nombre[id], say)
        case 
3ColorChat(0GREY"^1(Spectador)^3 %s^1 : %s"g_nombre[id], say)
        case 
2ColorChat(0BLUE"^4%s^1%s^3 %s^1 :%s %s"Adminis_user_alive(id) ? "" "* Muerto *"g_nombre[id], is_user_admin(id) ? "^4" ""say)
        case 
1ColorChat(0RED"^4%s^1%s^3 %s^1 :%s %s"Adminis_user_alive(id) ? "" "* Muerto *"g_nombre[id], is_user_admin(id) ? "^4" ""say)
    }
    return 
PLUGIN_HANDLED
}

MensajeValido(Texto[]) {
    static 
leni
    len 
strlen(Texto)
    
    if(!
len)
        return 
false
    
    
for(0leni++) {
        if( 
Texto[i] != ' ' ) {
            return 
true
        
}
    }

    return 
false

Responder
#5
Gracias deiby Roflmao
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)