Alternative Director HUD Message
#1
un pequeño stock que consegui en una pagina rusa quizas a alguien le puede servir

funciona igual que el dhud.inc solo que esta vez se hace de manera directa, el unico detalle es con la informacion dinamica "rangos, nombres, etc" se debe hacer un format(ex) para enviar dicha info, pero aun asi me parece bueno

PD: No se si ya stocks parecido/iguales esten en amx-eng/es

Código PHP:
stock UTIL_DirectorMessage( const index, const message[], const red 0, const green 160, const blue 0, const Float:= -1.0, const Float:0.65, const effect 2, const Float:fxTime 6.0, const Float:holdTime 3.0, const Float:fadeInTime 0.1, const Float:fadeOutTime 1.5 )
{
    
#define pack_color(%0,%1,%2) ( %2 + ( %1 << 8 ) + ( %0 << 16 ) )
    #define write_float(%0) write_long( _:%0 )
    
    
message_beginindex MSG_ONE MSG_BROADCASTSVC_DIRECTOR, .player index );
    {
        
write_bytestrlenmessage ) + 31 ); // size of write_*
        
write_byteDRC_CMD_MESSAGE );
        
write_byteeffect );
        
write_longpack_colorredgreenblue ) );
        
write_float);
        
write_float);
        
write_floatfadeInTime );
        
write_floatfadeOutTime );
        
write_floatholdTime );
        
write_floatfxTime );
        
write_stringmessage );
    }
    
message_end( );


por ejemplo

Código PHP:
new g_iMaxP

stock UTIL_DirectorMessage
( const index, const message[], const red 0, const green 160, const blue 0, const Float:= -1.0, const Float:0.65, const effect 2, const Float:fxTime 6.0, const Float:holdTime 3.0, const Float:fadeInTime 0.1, const Float:fadeOutTime 1.5 )
{
    
#define pack_color(%0,%1,%2) ( %2 + ( %1 << 8 ) + ( %0 << 16 ) )
    #define write_float(%0) write_long( _:%0 )
    
    
message_beginindex MSG_ONE MSG_BROADCASTSVC_DIRECTOR, .player index );
    {
        
write_bytestrlenmessage ) + 31 ); // size of write_*
        
write_byteDRC_CMD_MESSAGE );
        
write_byteeffect );
        
write_longpack_colorredgreenblue ) );
        
write_float);
        
write_float);
        
write_floatfadeInTime );
        
write_floatfadeOutTime );
        
write_floatholdTime );
        
write_floatfxTime );
        
write_stringmessage );
    }
    
message_end( );
}

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
g_iMaxP get_maxplayers()
    
set_task(1.0"pfn_task"___"b")
}
public 
pfn_task()
{
    static 
_fmt[128], i
    
for(<= g_iMaxP i++)
    {
        if(!
is_user_alive(i))
        {
            continue;
        }
        
get_user_name(i_fmtcharsmax(_fmt))
        
format(_fmtcharsmax(_fmt), "nombre: %s^nVida: %i^nChaleco: %i"_fmtget_user_health(id), get_user_armor(id))
        
UTIL_DirectorMessage(i_fmt2552552550.00.6501.01.1)
    }


donde:
Código:
i = id del player
_fmt = mensaje
255^3 = es el color en rgb
0.0 = posicion x
0.65 = posicion y
0 = efecto
1.0 = fxtime
1.1 = holdtime
Competitive/Face it Pick Up Game (PUG) servidor de prueba: 45.77.94.109:27016 Click para Entrar
[Imagen: b_350_20_5A6C3E_383F2D_D2E1B5_2E3226.png]

(14/08/2015, 10:15 PM)Sugisaki escribió: "El mundo es caotico, irracional e injusto. No tiene ningun significado"
Palabras que desde hace mucho tiempo he buscado para describir, ¿Que es el mundo?
Crab

Código PHP:
if(ayuda && free)
{
    exit();

Responder
#2
deja alguna información de como usarlo WhateverWhatever
Trolleyes
Responder
#3
(26/02/2017, 04:42 PM)Sugisaki escribió: funciona igual que el dhud.inc solo que esta vez se hace de manera directa,

pero si de algo sirve deje un ejemplo
Competitive/Face it Pick Up Game (PUG) servidor de prueba: 45.77.94.109:27016 Click para Entrar
[Imagen: b_350_20_5A6C3E_383F2D_D2E1B5_2E3226.png]

(14/08/2015, 10:15 PM)Sugisaki escribió: "El mundo es caotico, irracional e injusto. No tiene ningun significado"
Palabras que desde hace mucho tiempo he buscado para describir, ¿Que es el mundo?
Crab

Código PHP:
if(ayuda && free)
{
    exit();

Responder
#4
Baah:/, no lo había notado, lo probare y veré que onda.
Trolleyes
Responder
#5
Así también podría funcionar para evitar de usar format(ex)


Código PHP:
stock UTIL_DirectorMessage( const index, const red 0, const green 160, const blue 0, const Float:= -1.0, const Float:0.65, const effect 2, const Float:fxTime 6.0, const Float:holdTime 3.0, const Float:fadeInTime 0.1, const Float:fadeOutTime 1.5, const message[], any:...)
{
    new 
sBuffer[128];

    if(
numargs() < 13) {
        
copy(sBuffercharsmax(sBuffer), message);
    } else {
        
vformat(sBuffercharsmax(sBuffer), message13);
    }

    
#define pack_color(%0,%1,%2) ( %2 + ( %1 << 8 ) + ( %0 << 16 ) )
    #define write_float(%0) write_long( _:%0 )
    
    
message_beginindex MSG_ONE MSG_BROADCASTSVC_DIRECTOR, .player index );
    {
        
write_bytestrlensBuffer ) + 31 ); // size of write_*
        
write_byteDRC_CMD_MESSAGE );
        
write_byteeffect );
        
write_longpack_colorredgreenblue ) );
        
write_float);
        
write_float);
        
write_floatfadeInTime );
        
write_floatfadeOutTime );
        
write_floatholdTime );
        
write_floatfxTime );
        
write_stringsBuffer );
    }
    
message_end( );



Código PHP:
public pfn_task()
{
    static 
_fmt[128], i
    
for(<= g_iMaxP i++)
    {
        if(!
is_user_alive(i))
        {
            continue;
        }
        
get_user_name(i_fmtcharsmax(_fmt))
        
UTIL_DirectorMessage(i2552552550.00.6500.01.01.11.0"nombre: %s^nVida: %i^nChaleco: %i"_fmtget_user_health(id), get_user_armor(id))
    }

Believe, be yourself and don't hold on to just one dream ❤

https://github.com/FEDERICOMB96
Responder
#6
Es simplemente la primera version del DHud que publicó Arkshine antes que este fuera integrado en el AMXX. De preferencia utilizar la del AMXX, por motivos obvios

https://forums.alliedmods.net/showpost.p...ostcount=3 (comentario que contiene el código)

Fue un muy buen descubrimiento del CS. Y siguen saliendo algunos otros
Responder
#7
(26/02/2017, 06:26 PM)meTaLiCroSS escribió: Es simplemente la primera version del DHud que publicó Arkshine antes que este fuera integrado en el AMXX. De preferencia utilizar la del AMXX, por motivos obvios

https://forums.alliedmods.net/showpost.p...ostcount=3 (comentario que contiene el código)

Fue un muy buen descubrimiento del CS. Y siguen saliendo algunos otros

Insecure

alv no tenia idea gg de ese, este lo vi en una pagina rusa ahi a lo feo y lo puse por aqui
Competitive/Face it Pick Up Game (PUG) servidor de prueba: 45.77.94.109:27016 Click para Entrar
[Imagen: b_350_20_5A6C3E_383F2D_D2E1B5_2E3226.png]

(14/08/2015, 10:15 PM)Sugisaki escribió: "El mundo es caotico, irracional e injusto. No tiene ningun significado"
Palabras que desde hace mucho tiempo he buscado para describir, ¿Que es el mundo?
Crab

Código PHP:
if(ayuda && free)
{
    exit();

Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)