Hacer tu propio chat
#26
Lo usare Gracias Raulitop C: lo usare
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando.
(08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck


Mis aportes

PLUGINS
MAPAS
Menú LANG [SF] Sistema de Frags
Say System (Admin Prefix)
Responder
#27
Como creo Esta Variable?
Código PHP:
g_isalive[id
Disculpen Mi Falta de conocimiento
Reputacion: -35 Es mi metaTrolleyes
Responder
#28
(23/03/2015, 04:00 PM)Thirti escribió: Como creo Esta Variable?
Código PHP:
g_isalive[id
Disculpen Mi Falta de conocimiento

Código PHP:
#include hamsandwich

new g_isalive[33]

public 
plugin_init()
{
    
RegisterHam(Ham_Spawn"player""ham_PlayerSpawnPost"true);
    
RegisterHam(Ham_Killed"player""ham_PlayerKilled");
}

public 
client_putinserver(idg_isalive[id] = false;

public 
ham_PlayerSpawnPost(idg_isalive[id] = true;

public 
ham_PlayerKilled(victimattackershouldgibg_isalive[victim] = false
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#29
(23/03/2015, 04:15 PM)kikizon2 escribió:
(23/03/2015, 04:00 PM)Thirti escribió: Como creo Esta Variable?
Código PHP:
g_isalive[id
Disculpen Mi Falta de conocimiento

Código PHP:
#include hamsandwich

new g_isalive[33]

public 
plugin_init()
{
    
RegisterHam(Ham_Spawn"player""ham_PlayerSpawnPost"true);
    
RegisterHam(Ham_Killed"player""ham_PlayerKilled");
}

public 
client_putinserver(idg_isalive[id] = false;

public 
ham_PlayerSpawnPost(idg_isalive[id] = true;

public 
ham_PlayerKilled(victimattackershouldgibg_isalive[victim] = false
Ya tengo el public client_putinserver Le Agregue Esto
Código PHP:
g_isalive[id] = false
Y Me quedo asi
Código PHP:
public client_putinserver(idg_isalive[id] = false;

EXPid ] = 0
LoadData
(id)
set_task(2.0,"hud",id+123,_,_,"b")

me tira error en la llave nose por que
Reputacion: -35 Es mi metaTrolleyes
Responder
#30
(23/03/2015, 04:39 PM)Thirti escribió:
(23/03/2015, 04:15 PM)kikizon2 escribió:
(23/03/2015, 04:00 PM)Thirti escribió: Como creo Esta Variable?
Código PHP:
g_isalive[id
Disculpen Mi Falta de conocimiento

Código PHP:
#include hamsandwich

new g_isalive[33]

public 
plugin_init()
{
    
RegisterHam(Ham_Spawn"player""ham_PlayerSpawnPost"true);
    
RegisterHam(Ham_Killed"player""ham_PlayerKilled");
}

public 
client_putinserver(idg_isalive[id] = false;

public 
ham_PlayerSpawnPost(idg_isalive[id] = true;

public 
ham_PlayerKilled(victimattackershouldgibg_isalive[victim] = false
Ya tengo el public client_putinserver Le Agregue Esto
Código PHP:
g_isalive[id] = false
Y Me quedo asi
Código PHP:
public client_putinserver(idg_isalive[id] = false;

EXPid ] = 0
LoadData
(id)
set_task(2.0,"hud",id+123,_,_,"b")

me tira error en la llave nose por que



Código PHP:
public client_putinserver(idg_isalive[id] = false;

EXPid ] = 0
LoadData
(id)
set_task(2.0,"hud",id+123,_,_,"b")


--->

Código PHP:
public client_putinserver(id)

    
g_isalive[id] = false;
    
EXPid ] = 0
    LoadData
(id)
    
set_task(2.0,"hud",id+123,_,_,"b")


Whatever
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#31
(23/03/2015, 04:41 PM)kikizon2 escribió:
(23/03/2015, 04:39 PM)Thirti escribió:
(23/03/2015, 04:15 PM)kikizon2 escribió:
(23/03/2015, 04:00 PM)Thirti escribió: Como creo Esta Variable?
Código PHP:
g_isalive[id
Disculpen Mi Falta de conocimiento

Código PHP:
#include hamsandwich

new g_isalive[33]

public 
plugin_init()
{
    
RegisterHam(Ham_Spawn"player""ham_PlayerSpawnPost"true);
    
RegisterHam(Ham_Killed"player""ham_PlayerKilled");
}

public 
client_putinserver(idg_isalive[id] = false;

public 
ham_PlayerSpawnPost(idg_isalive[id] = true;

public 
ham_PlayerKilled(victimattackershouldgibg_isalive[victim] = false
Ya tengo el public client_putinserver Le Agregue Esto
Código PHP:
g_isalive[id] = false
Y Me quedo asi
Código PHP:
public client_putinserver(idg_isalive[id] = false;

EXPid ] = 0
LoadData
(id)
set_task(2.0,"hud",id+123,_,_,"b")

me tira error en la llave nose por que



Código PHP:
public client_putinserver(idg_isalive[id] = false;

EXPid ] = 0
LoadData
(id)
set_task(2.0,"hud",id+123,_,_,"b")


--->

Código PHP:
public client_putinserver(id)

    
g_isalive[id] = false;
    
EXPid ] = 0
    LoadData
(id)
    
set_task(2.0,"hud",id+123,_,_,"b")


Whatever
Gracias me sirvio Pero Ahora Me da Error Esta linea
Código PHP:
    if (!ValidMessage(said1)) return PLUGIN_CONTINUE
Cita:Error: Undefined symbol "ValidMessage" on line 981
Reputacion: -35 Es mi metaTrolleyes
Responder
#32
crea el stock Genius
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#33
(23/03/2015, 06:07 PM)kikizon2 escribió: crea el stock Genius
A cierto, se me olvido que tenia que terminar de Adaptar Roflmao
Edit: Como creo la Variable g_isconnected? Es el unico Error que tengo Ahora
Reputacion: -35 Es mi metaTrolleyes
Responder
#34
(23/03/2015, 06:13 PM)Thirti escribió:
(23/03/2015, 06:07 PM)kikizon2 escribió: crea el stock Genius
A cierto, se me olvido que tenia que terminar de Adaptar Roflmao
Edit: Como creo la Variable g_isconnected? Es el unico Error que tengo Ahora
En ves de eso podes usar en su lugar
Código PHP:
is_user_connected(id
Es algo logico, el nombre te lo dice todo Genius
Heber[S]ourcE
Veteran Member
in
Desvirtue
Tatakae
Responder
#35
No entiendo muy bien esto..
Código PHP:
public changeTeamInfo(playerteam[]) 

Sin embargo estoy hookeando el say de otra manera es decir..

Código PHP:
    for(new 1<= g_iMaxPlayersi++)
    {
        if(
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i))
        {
            
message_begin(MSG_ONEg_msgSayText_i)
            
write_byte(is_user_admin(id) ? 33 id)
            
write_string(szSay)
            
message_end()
        }
    } 

Y Funciona peeero...

Lo estaré haciendo mal de esa manera (?
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

(18/11/2014, 05:47 PM)Neeeeeeeeeel.- escribió: Por qué necesitan una guía para todo? Meté mano y que salga lo que salga... es la mejor forma de aprender.

(16/05/2016, 11:08 PM)kikizon2 escribió: No cabe duda que tienen mierda en vez de cerebro, par de pendejos v:
Responder
#36
Estás directamente escribiendo el mensaje sin cambiar el equipo, estar está bien, pero a veces no saldrá con color correcto.

Te explico, se cambia de equipo porque el ^x03 muestra color de equipo del que recibe el mensaje.
Por lo tanto, si soy CT y habla un T, de tu forma se vera azul. En cambio, de mi forma, le cambia el equipo para que salga en rojo correctamente, y luego se lo vuelve a dejar como estaba
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#37
Gracias por responder Guiño y por lo del color aun no he presentado esa falla del color y en dado caso si llega a suceder, Usare este método. Approved
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

(18/11/2014, 05:47 PM)Neeeeeeeeeel.- escribió: Por qué necesitan una guía para todo? Meté mano y que salga lo que salga... es la mejor forma de aprender.

(16/05/2016, 11:08 PM)kikizon2 escribió: No cabe duda que tienen mierda en vez de cerebro, par de pendejos v:
Responder
#38
Quien Me Ayuda A Colocarle Para Que No Salga Doble Con El Plugins De Admin Chat Color.
InsecureCutecryCutecryCutecryCutecryCutecryCutecryCutecry


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

#define PLUGIN         "STEAM Players"
#define VERSION     "0.0b"
#define AUTHOR         "Quit edit"

#define ACCESS_LEVEL ADMIN_CVAR
#define ADMIN_LISTEN    ADMIN_RCON

new message[192]
new sayText
new teamInfo
new maxPlayers

new show_ip,show_steamid,show_time,show_ping,show_loss;

new g_MessageColor
new g_NameColor
new g_AdminListen

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

public plugin_init()
{
    register_plugin (PLUGIN , VERSION , AUTHOR)
    
    g_MessageColor = register_cvar ("amx_color", "1")
    g_NameColor = register_cvar ("amx_namecolor", "6")
    g_AdminListen = register_cvar ("amx_listen", "1")
    show_ip = register_cvar("sp_showip","0")
    show_steamid = register_cvar("sp_showsteamid","1")
    show_time = register_cvar("sp_showtime","0")
    show_ping = register_cvar("sp_showping","0")
    show_loss = register_cvar("sp_showloss","0")
    
    
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
    
    
    register_message (sayText, "det_duplicated")
    
    register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    
    register_clcmd ("say /whosteam", "who_steam")
    register_clcmd ("say /sp", "who_steam")
    register_clcmd ("say /ws", "who_steam")
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
}


public det_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}
public who_steam(id)
{
    new bool:ip_showed = false
    new bool:steamid_showed = false
    new bool:time_showed = false
    new bool:ping_showed = false
    new bool:loss_showed = false
    if (get_pcvar_num(show_ip)>0)
    {
        ip_showed = true
    }
    if (get_pcvar_num(show_steamid)>0)
    {
        steamid_showed = true
    }
    if (get_pcvar_num(show_time)>0)
    {
        time_showed = true
    }
    if (get_pcvar_num(show_ping)>0)
    {
        ping_showed = true
    }
    if (get_pcvar_num(show_loss)>0)
    {
        loss_showed = true
    }
    
    new players[32], playersFound
    get_players(players,playersFound)
    new pos, message[2048]
    new name[40], ip[30],steamid[32], ping, loss;
    new str_pt[6],str_pi[6],str_lo[6]
    pos += format(message[pos],2048 - pos,"<STYLE>body{background:#232323;color:#cfcbc2;margin:20px}table{width:100%%;line-height:160%%;font-size:12px}th{background:#2f3030;color:#c4b550;text-align:left}.q{border:2px solid #4a4945}tr{background:#4a4945}.b{background:#3b3b37}</STYLE>")
    for (new i = 0;i < playersFound;i++)
    {
        new bool:steam = false
        if (is_user_steam(id))
            steam = true
        new bool:bot = false
        if (is_user_bot(id))
            bot = true
        get_user_name(players[i],name,39)
        get_user_ip(players[i],ip,29,1)
        get_user_authid(players[i], steamid, 31)
        num_to_str(get_user_time(players[i]),str_pt,5)
        get_user_ping(players[i],ping,loss)
        num_to_str(ping,str_pi,5)
        num_to_str(loss,str_lo,5)
            
        pos += format(message[pos],2048 - pos,"%d.<font color=^"red^">%s</font> <font color=^"green^">%s</font>%s %s%s",i+1,name,steam?"[STEAM]":"",bot?"[BOT]":"",ip_showed?"IP:":"",ip_showed?ip:"")
        pos += format(message[pos],2048 - pos," %s%s %s%s",steamid_showed?"STEAMID:":"",steamid_showed?steamid:"",time_showed?"TIME:":"",time_showed?str_pt:"")
        pos += format(message[pos],2048 - pos," %s%s %s%s^n",ping_showed?"PING":"",ping_showed?str_pi:"",loss_showed?"LOSS:":"",loss_showed?str_lo:"")
    }
    show_motd(id,message,"Who Steam Player")
    return PLUGIN_HANDLED
}
public hook_say(id)
{
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))

        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:steam = false
    
    if (is_user_steam(id))
        steam = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01"
        }
    
    static color[10]
    

    
    if (steam)
        {
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

                    case 2:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                }
            
            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
        {
            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)
    
    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
    
    switch (playerTeam)
        {
            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)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))  

        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:steam = false
    
    if (is_user_steam(id))
        steam = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01"
        }
    
    static color[10]
    

    
    if (steam)
        {
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

                    case 2:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                }
            
            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
        {
            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)
    
    sendTeamMessage (color, isAlive, playerTeam)
    
    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_cvar_num ("amx_color", newColor)
            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_cvar_num ("amx_namecolor", 2)
                    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_cvar_num ("amx_namecolor", newColor)
            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_cvar_num ("amx_color", 2)
                    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_cvar_num ("amx_listen", newListen)
    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)
                    
                    changeTeamInfo (player, color)
                    
                    writeMessage (player, message)
                    
                    changeTeamInfo (player, teamName)
                }
        }
}


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)
                            
                            changeTeamInfo (player, color)
                            
                            writeMessage (player, message)
                            
                            changeTeamInfo (player, teamName)
                        }
                }
        }
}


public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player)
    write_byte (player)
    write_string (team)
    message_end()
}


public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
    write_byte (player)
    write_string (message)
    message_end ()
}
stock bool:is_user_steam(id)
{
    static dp_pointer;
    
    if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
    {
        server_cmd("dp_clientinfo %d", id);
        server_exec();
        return (get_pcvar_num(dp_pointer) == 2) ? true : false;
    }
            
    return false;
}
Responder
#39
(20/04/2017, 07:59 PM)DavidJose9898 escribió: Quien Me Ayuda A Colocarle Para Que No Salga Doble Con El Plugins De Admin Chat Color.
InsecureCutecryCutecryCutecryCutecryCutecryCutecryCutecry


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

#define PLUGIN         "STEAM Players"
#define VERSION     "0.0b"
#define AUTHOR         "Quit edit"

#define ACCESS_LEVEL ADMIN_CVAR
#define ADMIN_LISTEN    ADMIN_RCON

new message[192]
new sayText
new teamInfo
new maxPlayers

new show_ip,show_steamid,show_time,show_ping,show_loss;

new g_MessageColor
new g_NameColor
new g_AdminListen

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

public plugin_init()
{
    register_plugin (PLUGIN , VERSION , AUTHOR)
    
    g_MessageColor = register_cvar ("amx_color", "1")
    g_NameColor = register_cvar ("amx_namecolor", "6")
    g_AdminListen = register_cvar ("amx_listen", "1")
    show_ip = register_cvar("sp_showip","0")
    show_steamid = register_cvar("sp_showsteamid","1")
    show_time = register_cvar("sp_showtime","0")
    show_ping = register_cvar("sp_showping","0")
    show_loss = register_cvar("sp_showloss","0")
    
    
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
    
    
    register_message (sayText, "det_duplicated")
    
    register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    
    register_clcmd ("say /whosteam", "who_steam")
    register_clcmd ("say /sp", "who_steam")
    register_clcmd ("say /ws", "who_steam")
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
}


public det_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}
public who_steam(id)
{
    new bool:ip_showed = false
    new bool:steamid_showed = false
    new bool:time_showed = false
    new bool:ping_showed = false
    new bool:loss_showed = false
    if (get_pcvar_num(show_ip)>0)
    {
        ip_showed = true
    }
    if (get_pcvar_num(show_steamid)>0)
    {
        steamid_showed = true
    }
    if (get_pcvar_num(show_time)>0)
    {
        time_showed = true
    }
    if (get_pcvar_num(show_ping)>0)
    {
        ping_showed = true
    }
    if (get_pcvar_num(show_loss)>0)
    {
        loss_showed = true
    }
    
    new players[32], playersFound
    get_players(players,playersFound)
    new pos, message[2048]
    new name[40], ip[30],steamid[32], ping, loss;
    new str_pt[6],str_pi[6],str_lo[6]
    pos += format(message[pos],2048 - pos,"<STYLE>body{background:#232323;color:#cfcbc2;margin:20px}table{width:100%%;line-height:160%%;font-size:12px}th{background:#2f3030;color:#c4b550;text-align:left}.q{border:2px solid #4a4945}tr{background:#4a4945}.b{background:#3b3b37}</STYLE>")
    for (new i = 0;i < playersFound;i++)
    {
        new bool:steam = false
        if (is_user_steam(id))
            steam = true
        new bool:bot = false
        if (is_user_bot(id))
            bot = true
        get_user_name(players[i],name,39)
        get_user_ip(players[i],ip,29,1)
        get_user_authid(players[i], steamid, 31)
        num_to_str(get_user_time(players[i]),str_pt,5)
        get_user_ping(players[i],ping,loss)
        num_to_str(ping,str_pi,5)
        num_to_str(loss,str_lo,5)
            
        pos += format(message[pos],2048 - pos,"%d.<font color=^"red^">%s</font> <font color=^"green^">%s</font>%s %s%s",i+1,name,steam?"[STEAM]":"",bot?"[BOT]":"",ip_showed?"IP:":"",ip_showed?ip:"")
        pos += format(message[pos],2048 - pos," %s%s %s%s",steamid_showed?"STEAMID:":"",steamid_showed?steamid:"",time_showed?"TIME:":"",time_showed?str_pt:"")
        pos += format(message[pos],2048 - pos," %s%s %s%s^n",ping_showed?"PING":"",ping_showed?str_pi:"",loss_showed?"LOSS:":"",loss_showed?str_lo:"")
    }
    show_motd(id,message,"Who Steam Player")
    return PLUGIN_HANDLED
}
public hook_say(id)
{
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))

        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:steam = false
    
    if (is_user_steam(id))
        steam = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01"
        }
    
    static color[10]
    

    
    if (steam)
        {
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

                    case 2:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                }
            
            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
        {
            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)
    
    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
    
    switch (playerTeam)
        {
            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)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))  

        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:steam = false
    
    if (is_user_steam(id))
        steam = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01"
        }
    
    static color[10]
    

    
    if (steam)
        {
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

                    case 2:
                        format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
                        }
                }
            
            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
        {
            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)
    
    sendTeamMessage (color, isAlive, playerTeam)
    
    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_cvar_num ("amx_color", newColor)
            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_cvar_num ("amx_namecolor", 2)
                    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_cvar_num ("amx_namecolor", newColor)
            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_cvar_num ("amx_color", 2)
                    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_cvar_num ("amx_listen", newListen)
    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)
                    
                    changeTeamInfo (player, color)
                    
                    writeMessage (player, message)
                    
                    changeTeamInfo (player, teamName)
                }
        }
}


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)
                            
                            changeTeamInfo (player, color)
                            
                            writeMessage (player, message)
                            
                            changeTeamInfo (player, teamName)
                        }
                }
        }
}


public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player)
    write_byte (player)
    write_string (team)
    message_end()
}


public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
    write_byte (player)
    write_string (message)
    message_end ()
}
stock bool:is_user_steam(id)
{
    static dp_pointer;
    
    if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
    {
        server_cmd("dp_clientinfo %d", id);
        server_exec();
        return (get_pcvar_num(dp_pointer) == 2) ? true : false;
    }
            
    return false;
}

Código PHP:
stock bool:is_user_steam(id)
{
    static 
dp_pointer;
     
    if (
dp_pointer || (dp_pointer get_cvar_pointer("dp_r_id_provider")))
    {
        
server_cmd("dp_clientinfo %d"id);
        
server_exec();
        return (
get_pcvar_num(dp_pointer) == 2) ? true false;
    }
            
    return 
false;


Mira ese dproto papu
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)