Enviar respuesta 
[Inc/Stock] PrintF
Autor Mensaje
[R]ak Sin conexión
Miembro Pandawan


Panda Plugin developer Donador Plugin popular
Mensajes: 633
Registro en: Oct 2013
Reputación: 22
Mensaje: #1
[Inc/Stock] PrintF
Hola :3 como todos sabrán, existen stock o includes para mandar un mensaje con color, bueno.. no me gusta ninguno así que me arme este xD; soporta todos los colores.. aca les dejo unas imágenes



  • Imágenes






Image



Image




  • Inc.-






Código:
#if defined _printf_included

  #endinput

#endif



#define _printf_included



enum {

    DEFAULT,

    RED,

    BLUE,

    GRAY,

    GREEN

}



stock printf(id, color, const msg[], any:...) {

    

    static Buffer[192], MsgSayText, MsgTeamInfo, Team[11]

    

    if(!MsgSayText) {

        

        MsgTeamInfo = get_user_msgid("TeamInfo")

        

        MsgSayText = get_user_msgid("SayText")

        

    }

        

    vformat(Buffer[1], charsmax(Buffer) - 1, msg, 4)

    

    static const Teams[4][11] = {

        "UNASSIGNED",

        "TERRORIST",

        "CT",

        "SPECTATOR"

    }



    if(color) {

        

        if(color == GREEN) {

            

            Buffer[0] = 0x04

            

            printf_do(id, Buffer, MsgSayText)

            

        }

        else {

            

            Buffer[0] = 0x03

        

            get_user_team(id, Team, charsmax(Team))

        

            printf_do(id, Teams[color], MsgTeamInfo)

        

            printf_do(id, Buffer, MsgSayText)

        

            printf_do(id, Team, MsgTeamInfo)

            

        }

        

    }

    else {

        

        Buffer[0] = 0x01

        

        printf_do(id, Buffer, MsgSayText)

        

    }

}



printf_do(id, const data[], MsgID) {

    

    message_begin(MSG_ONE_UNRELIABLE, MsgID, _, id)

        

    write_byte(id)

        

    write_string(data)  

        

    message_end()

    

}




  • Stock







Código PHP:
enum {

    DEFAULT,

    
RED,

    
BLUE,

    
GRAY,

    
GREEN

}



stock printf(idcolor, const msg[], any:...) {

    

    static 
Buffer[192], MsgSayTextMsgTeamInfoTeam[11]

    

    if(!
MsgSayText) {

        

        
MsgTeamInfo get_user_msgid("TeamInfo")

        

        
MsgSayText get_user_msgid("SayText")

        

    }

        

    
vformat(Buffer[1], charsmax(Buffer) - 1msg4)

    

    static const 
g_Teams[4][11] = {

        
"UNASSIGNED",

        
"TERRORIST",

        
"CT",

        
"SPECTATOR"

    
}

    

    if(
color) {

        

        if(
color == GREEN) {

            

            
Buffer[0] = 0x04

            

            message_begin
(MSG_ONE_UNRELIABLEMsgSayText_id

        

            
write_byte(id

        

            
write_string(Buffer)   

        

            
message_end()

            

        }

        else {

            

            
Buffer[0] = 0x03

        

            get_user_team
(idTeamcharsmax(Team))

            

            
message_begin(MSG_ONE_UNRELIABLEMsgTeamInfo_id

        

            
write_byte(id

        

            
write_string(g_Teams[color])   

        

            
message_end()

            

            
message_begin(MSG_ONE_UNRELIABLEMsgSayText_id

        

            
write_byte(id

        

            
write_string(Buffer)   

        

            
message_end()

        

            
message_begin(MSG_ONE_UNRELIABLEMsgTeamInfo_id

        

            
write_byte(id

        

            
write_string(Team)   

        

            
message_end()

            

        }

        

    }

    else {

        

        
Buffer[0] = 0x01

        

        message_begin
(MSG_ONE_UNRELIABLEMsgSayText_id

        

        
write_byte(id

        

        
write_string(Buffer)   

        

        
message_end()

        

    }






  • Ejemplo con Include






Código PHP:
#include <amxmodx>

#include <printf>



#define PLUGIN "Test Stock Chat Color"

#define VERSION "1.0"

#define AUTHOR "[R]ak"



public plugin_init() {

    
register_plugin(PLUGINVERSIONAUTHOR)

    

    
register_clcmd("say test""cmdTest")

    

    
register_clcmd("say test2""cmdTest2")



}



public 
cmdTest(id) {

    

    
printf(id, DEFAULT, "%s Acme Inc.- %s"AUTHORPLUGIN// comun

    

    
printf(idRED"%s Acme Inc.- %s"AUTHORPLUGIN// rojo

    

    
printf(idBLUE"%s Acme Inc.- %s"AUTHORPLUGIN// azul

    

    
printf(idGRAY"%s Acme Inc.- %s"AUTHORPLUGIN// gris

    

    
printf(idGREEN"^%s Acme Inc.- %s"AUTHORPLUGIN// verde

    

    
return PLUGIN_HANDLED

}



public 
cmdTest2(id) {

    

    
printf(id, DEFAULT, "^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// comun

    

    
printf(idRED"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// rojo



    
printf(idBLUE"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// azul

    

    
printf(idGRAY"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// gris

    

    
printf(idGREEN"%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// verde

    

    
return PLUGIN_HANDLED





  • Ejemplo con Stock






Código PHP:
#include <amxmodx>



#define PLUGIN "Test Stock Chat Color"

#define VERSION "1.0"

#define AUTHOR "[R]ak"



enum {

    DEFAULT,

    
RED,

    
BLUE,

    
GRAY,

    
GREEN

}



public 
plugin_init() {

    
register_plugin(PLUGINVERSIONAUTHOR)

    

    
register_clcmd("say test""cmdTest")

    

    
register_clcmd("say test2""cmdTest2")



}



public 
cmdTest(id) {

    

    
printf(id, DEFAULT, "%s Acme Inc.- %s"AUTHORPLUGIN// comun

    

    
printf(idRED"%s Acme Inc.- %s"AUTHORPLUGIN// rojo

    

    
printf(idBLUE"%s Acme Inc.- %s"AUTHORPLUGIN// azul

    

    
printf(idGRAY"%s Acme Inc.- %s"AUTHORPLUGIN// gris

    

    
printf(idGREEN"^%s Acme Inc.- %s"AUTHORPLUGIN// verde

    

    
return PLUGIN_HANDLED

}



public 
cmdTest2(id) {

    

    
printf(id, DEFAULT, "^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// comun

    

    
printf(idRED"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// rojo



    
printf(idBLUE"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// azul

    

    
printf(idGRAY"^x04%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// gris

    

    
printf(idGREEN"%s^x03 Acme Inc.- ^x01%s"AUTHORPLUGIN// verde

    

    
return PLUGIN_HANDLED

}



stock printf(idcolor, const msg[], any:...) {

    

    static 
Buffer[192], MsgSayTextMsgTeamInfoTeam[11]

    

    if(!
MsgSayText) {

        

        
MsgTeamInfo get_user_msgid("TeamInfo")

        

        
MsgSayText get_user_msgid("SayText")

        

    }

        

    
vformat(Buffer[1], charsmax(Buffer) - 1msg4)

    

    static const 
Teams[4][11] = {

        
"UNASSIGNED",

        
"TERRORIST",

        
"CT",

        
"SPECTATOR"

    
}

    

    if(
color) {

        

        if(
color == GREEN) {

            

            
Buffer[0] = 0x04

            

            message_begin
(MSG_ONE_UNRELIABLEMsgSayText_id

        

            
write_byte(id

        

            
write_string(Buffer)   

        

            
message_end()

            

        }

        else {

            

            
Buffer[0] = 0x03

        

            get_user_team
(idTeamcharsmax(Team))

            

            
message_begin(MSG_ONE_UNRELIABLEMsgTeamInfo_id

        

            
write_byte(id

        

            
write_string(Teams[color])   

        

            
message_end()

            

            
message_begin(MSG_ONE_UNRELIABLEMsgSayText_id

        

            
write_byte(id

        

            
write_string(Buffer)   

        

            
message_end()

        

            
message_begin(MSG_ONE_UNRELIABLEMsgTeamInfo_id

        

            
write_byte(id

        

            
write_string(Team)   

        

            
message_end()

            

        }

        

    }

    else {

        

        
Buffer[0] = 0x01

        

        message_begin
(MSG_ONE_UNRELIABLEMsgSayText_id

        

        
write_byte(id

        

        
write_string(Buffer)   

        

        
message_end()

        

    }





Saludos :3


Archivo(s) adjuntos
printf.inc (Tamaño: 1.1 KB / Descargas: 278)

Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

Image
Link
(Este mensaje fue modificado por última vez en: 24/07/2015 08:56 PM por [R]ak.)
21/10/2013 11:46 PM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
alan_el_more Sin conexión
Miembro Destacado


Plugin developer
Mensajes: 986
Registro en: Oct 2013
Reputación: 16
Mensaje: #2
RE: [Inc/Stock] PrintF
Estaría bueno si le pudieras agregar soporte para ML


Ni te molestes en enviarme un mensaje privado para pedirme ayuda porque NO lo voy a contestar.
Gracias por su atención.
21/10/2013 11:55 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
r0ma Sin conexión
Miembro


Plugin developer Plugin popular
Mensajes: 60
Registro en: Oct 2013
Reputación: 4
Mensaje: #3
RE: [Inc/Stock] PrintF
y soporte para index 0

Panda Nuestro

Sistema de Cuentas

No ayudo por privado
21/10/2013 11:57 PM
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
[R]ak Sin conexión
Miembro Pandawan


Panda Plugin developer Donador Plugin popular
Mensajes: 633
Registro en: Oct 2013
Reputación: 22
Mensaje: #4
RE: [Inc/Stock] PrintF
(21/10/2013 11:57 PM)r0ma escribió:  y soporte para index 0



haces un loop cuando queres mandarlo a varios users y evitas q ponga un chequeo todo el tiempo

Hi Milashkasiya CrabCrab

Soy un #Panda.. Soy solo un tipo que parece #común pero soy todo lo contrario; alguien #atípico en esta sociedad actual

Image
Link
22/10/2013 12:58 AM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Neeeeeeeeeel.- Sin conexión
Administrador


El protector Plugin developer 1k
Mensajes: 1,976
Registro en: Oct 2013
Reputación: 38
Mensaje: #5
RE: [Inc/Stock] PrintF
(22/10/2013 12:58 AM)[R]ak escribió:  
(21/10/2013 11:57 PM)r0ma escribió:  y soporte para index 0



haces un loop cuando queres mandarlo a varios users y evitas q ponga un chequeo todo el tiempo

Es mejor hacer un if todo el tiempo en vez de un get_players cada vez que querés mandar a todos...



PD: Lo muevo a tutoriales/guias despues creo una sección para incs y porongas así...
22/10/2013 09:38 AM
Visita su sitio web Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Enviar respuesta 


Salto de foro:


Usuario(s) navegando en este tema: 1 invitado(s)

Contáctanos | Allied Modders en español | Volver arriba | Volver al contenido | Archivo (Modo simple) | Sindicación RSS