Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
22/05/2014, 08:24 PM
(Última modificación: 22/05/2014, 08:33 PM por LNATIC .)
Este debería funcionar:
Archivos adjuntos
Descargar AMXX / Untitled Script.sma (Tamaño: 1.82 KB / Descargas: 76)
Mensajes: 2,105
Temas: 196
Registro en: Mar 2014
Reputación:
13
22/05/2014, 08:27 PM
(Última modificación: 22/05/2014, 08:28 PM por K.-' .)
Código PHP:
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <fakemeta> // get_pdata_init #define PLUGIN "estadisticas" #define VERSION "1.0" #define AUTHOR "K.-'"// fix poR P.R. ZSIRCA" const KEYSMENU = ( 1 << 0 )|( 1 << 1 )|( 1 << 2 )|( 1 << 3 )|( 1 << 4 )|( 1 << 5 )|( 1 << 6 )|( 1 << 7 )|( 1 << 8 )|( 1 << 9 ) new g_conectado [ 33 ], muertes [ 33 ], g_frags [ 33 ], g_cocos [ 33 ] public plugin_init () { register_plugin ( PLUGIN , VERSION , AUTHOR ) register_menu ( "show_menu" , KEYSMENU , "handler_show_menu" ) RegisterHam ( Ham_Killed , "player" , "Ham_PlayerKilled" , 1 ) register_clcmd ( "say /estadisticas" , "estadisticas_menu" ) } public Ham_PlayerKilled ( victim , attacker ) { if(( get_user_team ( victim ) == get_user_team ( attacker )) || ! g_conectado [ attacker ]) return; // Aca xD if( get_pdata_int ( victim , 75 ) == HIT_HEAD ) g_cocos [ attacker ]++ g_frags [ attacker ]++ client_print ( attacker , print_chat , "Ganaste un Frag , tienes %d frags" , g_frags [ attacker ]) muertes [ victim ]++ client_print ( victim , print_chat , "Te han matado!! , Tienes %d Muertes" , muertes [ victim ]) } public estadisticas_menu ( id ) { new name [ 32 ] get_user_name ( id , name , sizeof ( name ) - 1 ) static szMenu [ 1500 ], Len ; Len = 0 Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\wMenu de Estadisticas^n^n" ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Nombre] \r[ \w%d \r]" , name ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Frags] \r[ \w%d \r]" , get_user_frags ( id )) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Muertes] \r[ \w%d \r]" , get_user_deaths ( id )) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Equipo] \r[ \w%d \r]" , get_user_team ( id )) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Tiempo jugando] \r[ \w%d \r]" , get_user_time ( id )) show_menu ( id , KEYSMENU , szMenu , - 1 , "show_menu" ); } public handler_show_menu ( id , seleccion , page ) { switch ( seleccion ) { case 0 : estadisticas_menu ( id ) case 1 : estadisticas_menu ( id ) case 2 : estadisticas_menu ( id ) } return PLUGIN_HANDLED ; }
proba , te falto crear las variables para definir el name
(22/05/2014, 08:24 PM) LNATIC escribió:
si te referis a mi que por que dije "deci los errores" esque me da paja copiarlo y ver cual es el error :b :b
(10/10/2014, 06:38 PM) RauliTop escribió: (10/10/2014, 04:40 PM) ivan escribió: no sabía que se podia poner los iconos gestuales cuando das reputacion negativa/positiva. ui, peligro...
pronto habrán reputaciones de ivan:
hace muy muy muii buenos tutoriales me encataan
Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
No es eso, era por como estaba ese code
Mensajes: 377
Temas: 82
Registro en: May 2014
Gracias Lnatic por agregarme los cocos :3
El code esta asi
Código PHP:
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <fakemeta> // get_pdata_init #define PLUGIN "estadisticas" #define VERSION "1.0" #define AUTHOR "K.-'// jajaja fix poR P.R. ZSIRCA" const KEYSMENU = ( 1 << 0 )|( 1 << 1 )|( 1 << 2 )|( 1 << 3 )|( 1 << 4 )|( 1 << 5 )|( 1 << 6 )|( 1 << 7 )|( 1 << 8 )|( 1 << 9 ) new g_conectado [ 33 ], g_muertes [ 33 ], g_frags [ 33 ], g_cocos [ 33 ] public plugin_init () { register_plugin ( PLUGIN , VERSION , AUTHOR ) register_menu ( "show_menu" , KEYSMENU , "handler_show_menu" ) RegisterHam ( Ham_Killed , "player" , "Ham_PlayerKilled" , 1 ) register_clcmd ( "say /estadisticas" , "estadisticas_menu" ) } public Ham_PlayerKilled ( victim , attacker ) { if(( get_user_team ( victim ) == get_user_team ( attacker )) || ! g_conectado [ attacker ]) return; // Aca xD if( get_pdata_int ( victim , 75 ) == HIT_HEAD ) g_cocos [ attacker ]++ g_frags [ attacker ]++ client_print ( attacker , print_chat , "Ganaste un Frag , tienes %d frags" , g_frags [ attacker ]) g_muertes [ victim ]++ client_print ( victim , print_chat , "Te han matado!! , Tienes %d Muertes" , g_muertes [ victim ]) } public estadisticas_menu ( id ) { static szMenu [ 1500 ], Len ; Len = 0 Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\wMenu de Estadisticas^n^n" ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Nombre] \r[ \w%d \r]" , get_user_name [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Equipo] \r[ \w%d \r]" , get_user_team [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Frags] \r[ \w%d \r]^n" , g_frags [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Muertes] \r[ \w%d \r]^n" , g_muertes [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Headshots] \r[ \w%d \r]" , g_cocos [ id ]) show_menu ( id , KEYSMENU , szMenu , - 1 , "show_menu" ); } public handler_show_menu ( id , seleccion , page ) { switch ( seleccion ) { case 0 : estadisticas_menu ( id ) case 1 : estadisticas_menu ( id ) } return PLUGIN_HANDLED ; }
me tira el siguiente error al compilarlo
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Invalid subscript (not an array or too many subscripts): "get_user_name" on line 41
Warning: Expression has no effect on line 41
Error: Expected token: ";", but found "]" on line 41
Error: Invalid expression, assumed zero on line 41
Error: Too many error messages on one line on line 41
Compilation aborted.
4 Errors.
Could not locate output file C:\Users\bazarpergamino\Desktop\HNS LASERS\SCRIPT\Untitled Script.amx (compile failed).
Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
22/05/2014, 08:34 PM
(Última modificación: 22/05/2014, 08:39 PM por LNATIC .)
(22/05/2014, 08:32 PM) cLi escribió: Gracias Lnatic por agregarme los cocos :3
El code esta asi Código PHP:
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <fakemeta> // get_pdata_init #define PLUGIN "estadisticas" #define VERSION "1.0" #define AUTHOR "K.-'// jajaja fix poR P.R. ZSIRCA" const KEYSMENU = ( 1 << 0 )|( 1 << 1 )|( 1 << 2 )|( 1 << 3 )|( 1 << 4 )|( 1 << 5 )|( 1 << 6 )|( 1 << 7 )|( 1 << 8 )|( 1 << 9 ) new g_conectado [ 33 ], g_muertes [ 33 ], g_frags [ 33 ], g_cocos [ 33 ] public plugin_init () { register_plugin ( PLUGIN , VERSION , AUTHOR ) register_menu ( "show_menu" , KEYSMENU , "handler_show_menu" ) RegisterHam ( Ham_Killed , "player" , "Ham_PlayerKilled" , 1 ) register_clcmd ( "say /estadisticas" , "estadisticas_menu" ) } public Ham_PlayerKilled ( victim , attacker ) { if(( get_user_team ( victim ) == get_user_team ( attacker )) || ! g_conectado [ attacker ]) return; // Aca xD if( get_pdata_int ( victim , 75 ) == HIT_HEAD ) g_cocos [ attacker ]++ g_frags [ attacker ]++ client_print ( attacker , print_chat , "Ganaste un Frag , tienes %d frags" , g_frags [ attacker ]) g_muertes [ victim ]++ client_print ( victim , print_chat , "Te han matado!! , Tienes %d Muertes" , g_muertes [ victim ]) } public estadisticas_menu ( id ) { static szMenu [ 1500 ], Len ; Len = 0 Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\wMenu de Estadisticas^n^n" ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Nombre] \r[ \w%d \r]" , get_user_name [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Equipo] \r[ \w%d \r]" , get_user_team [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Frags] \r[ \w%d \r]^n" , g_frags [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Muertes] \r[ \w%d \r]^n" , g_muertes [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Headshots] \r[ \w%d \r]" , g_cocos [ id ]) show_menu ( id , KEYSMENU , szMenu , - 1 , "show_menu" ); } public handler_show_menu ( id , seleccion , page ) { switch ( seleccion ) { case 0 : estadisticas_menu ( id ) case 1 : estadisticas_menu ( id ) } return PLUGIN_HANDLED ; }
me tira el siguiente error al compilarlo
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Invalid subscript (not an array or too many subscripts): "get_user_name" on line 41
Warning: Expression has no effect on line 41
Error: Expected token: ";", but found "]" on line 41
Error: Invalid expression, assumed zero on line 41
Error: Too many error messages on one line on line 41
Compilation aborted.
4 Errors.
Could not locate output file C:\Users\bazarpergamino\Desktop\HNS LASERS\SCRIPT\Untitled Script.amx (compile failed).
Comienza a editar a partir del que deje yo, el otro tenía una cosa innecesaria y otras mal
EDIT: Es que fui quitando cosas que encontraba en ese code de a poco, fijate que esta editado el mensaje mío donde dejo el sma.
Mensajes: 2,105
Temas: 196
Registro en: Mar 2014
Reputación:
13
22/05/2014, 08:41 PM
(Última modificación: 22/05/2014, 08:48 PM por K.-' .)
Fijate en el que te deje antes la variable que cree en la public de las estadisticas , te falto crear eso
new name[32]
get_user_name(id, name, sizeof(name) -1)
Len += formatex( szMenu[ Len ], sizeof szMenu - 1 - Len, "\w-[Nombre] \r[ \w%d \r]", name)
Código PHP:
#include <amxmisc> #include <hamsandwich> #include <fakemeta> // get_pdata_init #define PLUGIN "estadisticas" #define VERSION "1.0" #define AUTHOR "K.-'// fix poR P.R. ZSIRCA y LNATIC const KEYSMENU = ( 1 << 0 )|( 1 << 1 )|( 1 << 2 )|( 1 << 3 )|( 1 << 4 )|( 1 << 5 )|( 1 << 6 )|( 1 << 7 )|( 1 << 8 )|( 1 << 9 ) new g_muertes [ 33 ], g_frags [ 33 ], g_cocos [ 33 ] public plugin_init () { register_plugin ( PLUGIN , VERSION , AUTHOR ) register_menu ( "show_menu" , KEYSMENU , "handler_show_menu" ) RegisterHam ( Ham_Killed , "player" , "Ham_PlayerKilled" , 1 ) register_clcmd ( "say /estadisticas" , "estadisticas_menu" ) } public Ham_PlayerKilled ( victim , attacker ) { if(( get_user_team ( victim ) == get_user_team ( attacker )) || ! is_user_connected ( attacker )) return; // Aca xD if( get_pdata_int ( victim , 75 ) == HIT_HEAD ) g_cocos [ attacker ]++ g_frags [ attacker ]++ client_print ( attacker , print_chat , "Ganaste un Frag , tienes %d frags" , g_frags [ attacker ]) g_muertes [ victim ]++ client_print ( victim , print_chat , "Te han matado!! , Tienes %d Muertes" , g_muertes [ victim ]) } public estadisticas_menu ( id ) { new name [ 32 ] get_user_name ( id , name , sizeof ( name ) - 1 ) static szMenu [ 280 ], Len ; Len = 0 Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\wMenu de Estadisticas^n^n" ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Name] \r[ \w%d \r]^n" , name ) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Frags] \r[ \w%d \r]^n" , g_frags [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Muertes] \r[ \w%d \r]^n" , g_muertes [ id ]) Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Headshots] \r[ \w%d \r]" , g_cocos [ id ]) show_menu ( id , KEYSMENU , szMenu , - 1 , "show_menu" ); } public handler_show_menu ( id , seleccion , page ){ estadisticas_menu ( id ) return 1 ; }
creo que es haci !
(10/10/2014, 06:38 PM) RauliTop escribió: (10/10/2014, 04:40 PM) ivan escribió: no sabía que se podia poner los iconos gestuales cuando das reputacion negativa/positiva. ui, peligro...
pronto habrán reputaciones de ivan:
hace muy muy muii buenos tutoriales me encataan
Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
Código PHP:
Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Name] \r[ \w%d \r]^n" , name ) // ================> Len += formatex ( szMenu [ Len ], sizeof szMenu - 1 - Len , "\w-[Name] \r[ \w%s \r]^n" , name )
Mensajes: 377
Temas: 82
Registro en: May 2014
Muchisimas Gracias a todos por ayudarme ya lo terminamos :3
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
22/05/2014, 08:55 PM
(Última modificación: 13/07/2014, 02:24 AM por Federicomb .)
Acá te dejo uno que recién te terminé de hacer con lo que vos pedís y unas cosas de regalo que seguro te interesarán.
Plugin optimizado, testeado 100% y con menú nuevo.
Cualquier cosa avisame y si queres agregar algo más también, no hay problema.
Mensajes: 377
Temas: 82
Registro en: May 2014
Gracias fede , el tuyo esta mas completito
. las estadisticas se resetean cuando cambia el mapa ?
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
22/05/2014, 08:59 PM
(Última modificación: 22/05/2014, 08:59 PM por Federicomb .)
(22/05/2014, 08:59 PM) cLi escribió: Gracias fede , el tuyo esta mas completito . las estadisticas se resetean cuando cambia el mapa ?
Si, siempre es así.
Mensajes: 2,105
Temas: 196
Registro en: Mar 2014
Reputación:
13
Mensajes: 377
Temas: 82
Registro en: May 2014
22/05/2014, 09:09 PM
(Última modificación: 22/05/2014, 09:11 PM por cLi .)
ahaha , nono asi por mapa me parece bien
alguno tiene un menu de mute ?
vi uno que es asi
1.Mutear jugador
2.Voice enable [ON/OFF]
3.ALLTALCK [ON/OFF]
4.Quienes me mutearon?
Es algo asi alguno tiene el amxx ? o el sma si se puede pasar
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
22/05/2014, 09:13 PM
(Última modificación: 13/07/2014, 02:23 AM por Federicomb .)
Mirá acá te dejo el mismo plugin con unas correcciones en el menú y los mensajes que se me pasaron por alto.
Para el menú de mute hay varios en el foro oficial
Mensajes: 377
Temas: 82
Registro en: May 2014
Genio fede . me podes pasar la pagina oficial ?
¿tenes algo que ver con zyg?
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
Acá encontré uno que está aprobado: Mute Menu
OFF: Sí, soy administrador de uno de sus servidores.
Mensajes: 377
Temas: 82
Registro en: May 2014
gracias , aunque ya lo tenia a ese mute estoy buscando otra cosa
algo como esto
Mute V5
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
Ah, en todo caso hace un nuevo thread para no desvirtuar este y trataré de ayudarte.
Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
24/05/2014, 03:11 PM
(Última modificación: 24/05/2014, 03:17 PM por LNATIC .)
(22/05/2014, 09:23 PM) Federicomb escribió: Ah, en todo caso hace un nuevo thread para no desvirtuar este y trataré de ayudarte.
Fíjate que en tu handler del menú de estadísticas no haces un menu_destroy y eso es importante para limpiar memoria
Archivos adjuntos
Descargar AMXX / menu_estadisticas.sma (Tamaño: 4.44 KB / Descargas: 82)
Mensajes: 3,284
Temas: 41
Registro en: Jan 2014
Reputación:
28
24/05/2014, 03:56 PM
(Última modificación: 24/05/2014, 03:59 PM por Federicomb .)
(24/05/2014, 03:11 PM) LNATIC escribió: (22/05/2014, 09:23 PM) Federicomb escribió: Ah, en todo caso hace un nuevo thread para no desvirtuar este y trataré de ayudarte.
Fíjate que en tu handler del menú de estadísticas no haces un menu_destroy y eso es importante para limpiar memoria
Con un simple return PLUGIN_HANDLED; es suficiente, muchos menúes lo usan así y otros no. Igualmente, no es la gran cosa el plugin, no gasta prácticamente nada.
Mensajes: 276
Temas: 5
Registro en: Oct 2013
Reputación:
6
24/05/2014, 04:03 PM
(Última modificación: 24/05/2014, 04:11 PM por LNATIC .)
(24/05/2014, 03:56 PM) Federicomb escribió: (24/05/2014, 03:11 PM) LNATIC escribió: (22/05/2014, 09:23 PM) Federicomb escribió: Ah, en todo caso hace un nuevo thread para no desvirtuar este y trataré de ayudarte.
Fíjate que en tu handler del menú de estadísticas no haces un menu_destroy y eso es importante para limpiar memoria
Con un simple return PLUGIN_HANDLED; es suficiente, muchos menúes lo usan así y otros no. Igualmente, no es la gran cosa el plugin, no gasta prácticamente nada.
Obvio que sirve pero no limpias memoria, aunque sea poca, en un servidor poco potente puedes llegar al crash aunque no lo creas (si en todos tus menús haces lo mismo)
Archivos adjuntos
Descargar AMXX / menu_estadisticas.sma (Tamaño: 4.14 KB / Descargas: 76)