Mensajes: 136
Temas: 46
Registro en: Aug 2014
Reputación:
1
Hola Kikizon2, mira tengo una duda para que es el clcmd_changeteam(id)? y disculpa si esto no es sobre el tema lo de la pregunta anterior, según lo que entiendo yo la función que indicas en la GUIA o C Y P que bloquea el traspaso de equipo al estar logueado algo así?
otra cosita más, CREO que el clcmd_changeteam(id) buguea el nombre es decir yo lo agregue segun la GUIA y a la hora de registrar cuando coloco contraseña y confirmo resetea mi nombre es decir lo elimina y simplemente quedo sin nombre hasta que me di de cuenta que en el sma que dejaste no lo colocas entonces, el clcmd_changeteam(id) da problemas y si es así porque sigue en la GUIA como tal?
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
(22/04/2016, 06:19 AM) BloodyDeath escribió: Hola Kikizon2, mira tengo una duda para que es el clcmd_changeteam(id)? y disculpa si esto no es sobre el tema lo de la pregunta anterior, según lo que entiendo yo la función que indicas en la GUIA o C Y P que bloquea el traspaso de equipo al estar logueado algo así?
otra cosita más, CREO que el clcmd_changeteam(id) buguea el nombre es decir yo lo agregue segun la GUIA y a la hora de registrar cuando coloco contraseña y confirmo resetea mi nombre es decir lo elimina y simplemente quedo sin nombre hasta que me di de cuenta que en el sma que dejaste no lo colocas entonces, el clcmd_changeteam(id) da problemas y si es así porque sigue en la GUIA como tal?
Viste la fecha del thread ? Cuando lo probé no me daba ni un problema
después que tenga tiempo trato de actualizar
aunque ahora recomiendo que dejen el sistema de cuentas aparte
Mensajes: 196
Temas: 29
Registro en: Apr 2016
Reputación:
0
clcmd_changeteam(id)
Como lo dice la linea es para el choose team, seguramente para el cambio de equipo o hookear la tecla M, pero espera que kizkinzon haga esa actualización mas detallada
Mensajes: 96
Temas: 26
Registro en: Apr 2016
Reputación:
0
Ayuda kikizon2 hice todo bien pero al compilarlo me dice lo siguiente:
Código PHP:
//// zombie_plague40.sma // C:\Archivos de programa\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\zombie_plague40.sma«396» : fatal error 100: cannot read from file: "dhudmessage" // // Compilation aborted. // 1 Error. // Could not locate output file C:\Archivos de Programas\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\compiled\zombie_plague40.amx «compile failed». // // Compilation Time: 0.62 sec // ---------------------------------------------- Press enter to exit ...
tengo el zombie plague 4.3 (sin editar nada del scripting zombie_plague40.sma).
CHOTO MATTE KUDASAI
Mensajes: 410
Temas: 9
Registro en: Apr 2015
Reputación:
5
(08/10/2016, 04:41 PM) ImNoob:( escribió: Ayuda kikizon2 hice todo bien pero al compilarlo me dice lo siguiente:
Código PHP:
//// zombie_plague40.sma // C:\Archivos de programa\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\zombie_plague40.sma«396» : fatal error 100: cannot read from file: "dhudmessage" // // Compilation aborted. // 1 Error. // Could not locate output file C:\Archivos de Programas\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\compiled\zombie_plague40.amx «compile failed». // // Compilation Time: 0.62 sec // ---------------------------------------------- Press enter to exit ...
tengo el zombie plague 4.3 (sin editar nada del scripting zombie_plague40.sma).te falta el dhudmessage.inc
va en cstrike/addons/amxmodx/scripting/include
Archivos adjuntos
dhudmessage.inc (Tamaño: 3.41 KB / Descargas: 3)
Mensajes: 96
Temas: 26
Registro en: Apr 2016
Reputación:
0
(08/10/2016, 05:02 PM) SthoNy escribió: (08/10/2016, 04:41 PM) ImNoob:( escribió: Ayuda kikizon2 hice todo bien pero al compilarlo me dice lo siguiente:
Código PHP:
//// zombie_plague40.sma // C:\Archivos de programa\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\zombie_plague40.sma«396» : fatal error 100: cannot read from file: "dhudmessage" // // Compilation aborted. // 1 Error. // Could not locate output file C:\Archivos de Programas\Zombie Escape War'Z 4.1b\cstrike\addons\amxmodx\scripting\compiled\zombie_plague40.amx «compile failed». // // Compilation Time: 0.62 sec // ---------------------------------------------- Press enter to exit ...
tengo el zombie plague 4.3 (sin editar nada del scripting zombie_plague40.sma). te falta el dhudmessage.inc
va en cstrike/addons/amxmodx/scripting/include
Muchas gracias amigo te ganaste mi respeto :,v
CHOTO MATTE KUDASAI
Mensajes: 63
Temas: 16
Registro en: Nov 2016
Reputación:
0
Una duda este sistema guarda por ip o por nick los datos del zp??
Mensajes: 853
Temas: 147
Registro en: Oct 2014
Reputación:
5
(06/01/2017, 11:36 PM) jimmerios escribió: Una duda este sistema guarda por ip o por nick los datos del zp??
Nick.
nalgas
(03/08/2018, 03:13 PM) Skylar escribió: Está bien que pidas ayudas, pero no para que crees 20 post todos los días mogolico de mierda, me tenes re podrido ya, contraté 10000 sicarios para que te busquen y te maten toda la familia, y a vos que te revienten con una bazooka.
Mensajes: 38
Temas: 7
Registro en: Jan 2017
Reputación:
0
22/01/2017, 09:44 PM
(Última modificación: 22/01/2017, 09:48 PM por intoxicadooo .)
Buenas segui los pasos al pie de la letra, exepto que en ves de exp, puse para guardar g_ammopacks.. no me tira ningun error el zp,, el unico problema es que al entrar al CS,, es en modo normal. como que bloquea el zp.. alguna solucion?? plizz
EDIT: probe bajarme el sma, lo compile y lo puse en el cs y la verdad q no andubo el zp... capaz sea mi adv_vault.inc,, allguien me pasa el include de adv_vault...
plsss
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
debes tener el PLUGIN COMPILADO adv_vault.amxx y activarlo en plugins.ini, por encima de este mod.
► NO DOY AYUDA VIA MENSAJE PRIVADO ◄
* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Mensajes: 38
Temas: 7
Registro en: Jan 2017
Reputación:
0
Mensajes: 38
Temas: 7
Registro en: Jan 2017
Reputación:
0
Alguien sabe donde me guarda la carpeta o el archivo dnde guarda las cuentas porque no la encuentro :S, gracias ^^
Mensajes: 1,867
Temas: 57
Registro en: Oct 2014
Reputación:
16
(24/01/2017, 05:50 PM) intoxicadooo escribió: Alguien sabe donde me guarda la carpeta o el archivo dnde guarda las cuentas porque no la encuentro :S, gracias ^^
data/advvault/nombredelacuenta
Mensajes: 38
Temas: 7
Registro en: Jan 2017
Reputación:
0
(24/01/2017, 05:58 PM) matrix123 escribió: (24/01/2017, 05:50 PM) intoxicadooo escribió: Alguien sabe donde me guarda la carpeta o el archivo dnde guarda las cuentas porque no la encuentro :S, gracias ^^
data/advvault/nombredelacuenta
ni siquiera esta la carpeta.. sera un error de code?'
otra cosa esta bien mi include de adv_vault?, porque me lo descarge de alliedmods creo... y habia varias versiones, y el module "nvault_amxx.dll"...
Archivos adjuntos
adv_vault.inc (Tamaño: 10.05 KB / Descargas: 2)
nvault_amxx.dll (Tamaño: 97.5 KB / Descargas: 2)
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
Si estas usando la version adv_vault se encuentra en data/adv_vault/nombre de la base de datos, no te recomiendo editar esos archivos
► NO DOY AYUDA VIA MENSAJE PRIVADO ◄
* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Mensajes: 38
Temas: 7
Registro en: Jan 2017
Reputación:
0
mira ni siquiera me creo la carpeta adv_nvault
Código PHP:
#include <adv_vault>[php] el include lo agrege al mismo q diste en el tuto
Archivos adjuntos
Nueva imagen de mapa de bits.bmp (Tamaño: 3 MB / Descargas: 12)
Mensajes: 36
Temas: 9
Registro en: Oct 2017
Reputación:
0
14/11/2017, 09:20 PM
(Última modificación: 14/11/2017, 09:20 PM por CRISTΔRΔNTULΔ!. .)
(28/11/2014, 12:58 PM) kikizon2 escribió: Bueno me pidieron lo siguiente:
"Adaptar Este Sistema de Niveles a Este Sistema de Cuentas , y al mismo tiempo que quede todo dentro del ZP"
Yo usare el zp 4.3 + human classes que hay en este foro...
Ya teniendo adaptado el sistema de niveles a nuestro zp siguiendo el respectivo tutorial procederemos a adaptar el sistema de cuentas y a guardar nuestros datos...
Paso 1:
Paso 2:
Creamos Variables y Constantes...
-->
Código PHP:
new g_contra [ 33 ][ 20 ], g_contra2 [ 33 ][ 20 ], g_cuenta [ 33 ][ 32 ]; new g_vault , g_MsgVgui , g_MsgShowMenu ; new g_Estado [ 33 ], g_Can [ 33 ], g_Fecha [ 33 ][ 32 ]; enum { EXP , NIVEL , FECHA , PASSWORD , DATA_M }; enum { NOREGISTRADO = 0 , REGISTRADO , LOGUEADO , ESTADOS }; new const Estado [ ESTADOS ][] = { "Sin Registrar" , "Registrado" , "Logueado" }; new g_campo [ DATA_M ];
Paso 3:
Nos vamos al init...
PD: Al final de la funcion antes de "}"
-->
Código PHP:
register_clcmd ( "INGRESAR_PASSWORD" , "Contra" ); register_clcmd ( "say /cuenta" , "ShowLogMenu" ); g_MsgVgui = get_user_msgid ( "VGUIMenu" ); g_MsgShowMenu = get_user_msgid ( "ShowMenu" ); register_message ( g_MsgVgui , "message_VGUImenu" ); register_message ( g_MsgShowMenu , "message_VGUImenu" ); g_vault = adv_vault_open ( "CuentasZP" , false ); g_campo [ EXP ] = adv_vault_register_field ( g_vault , "EXP" ) g_campo [ NIVEL ] = adv_vault_register_field ( g_vault , "NIVEL" ) g_campo [ FECHA ] = adv_vault_register_field ( g_vault , "FECHA" , DATATYPE_STRING , 32 ); g_campo [ PASSWORD ] = adv_vault_register_field ( g_vault , "PW" , DATATYPE_STRING , 20 ); adv_vault_init ( g_vault );
Paso 4:
Nos vamos al final del plugin y agregamos los nuevos menús y funciones...
-->
Código PHP:
/* MENUS */ public ShowLogMenu ( id ) { new Tit [ 128 ]; formatex ( Tit , charsmax ( Tit ), "Sistema de cuentas by \dkikizon^n\wBienvenido \r%s^n\wESTADO: \r%s^n\wTu ultima visita fue: \r%s" , g_cuenta [ id ], Estado [ g_Estado [ id ]], g_Fecha [ id ]); new menu = menu_create ( Tit , "menu_log" ); menu_additem ( menu , ( g_Estado [ id ] == REGISTRADO && adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]))? "Loguearse" : "\dLoguearse" , "1" ); menu_additem ( menu , ( g_Estado [ id ] == NOREGISTRADO && ! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]))? "Registrarse^n" : "\dRegistrarse^n" , "2" ); menu_additem ( menu , ( g_Estado [ id ] == LOGUEADO && ! g_Can [ id ])? "Cambiar Contra" : "\dCambiar Contra" , "3" ); menu_display ( id , menu , 0 ); } public menu_log ( id , menu , item ) { if( item == MENU_EXIT ) { menu_destroy ( menu ); return PLUGIN_HANDLED ; } switch( item ) { case 0 : { if( g_Estado [ id ] == REGISTRADO && adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { client_print ( id , print_center , "Ingresa tu PASSWORD para entrar a tu cuenta" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No puedes elegir esta opcion" ); return PLUGIN_HANDLED ; } } case 1 : { if( g_Estado [ id ] == NOREGISTRADO && ! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { client_print ( id , print_center , "Ingresa una PASSWORD para crear una cuenta" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No puedes elegir esta opcion" ); return PLUGIN_HANDLED ; } } case 2 : { if( g_Estado [ id ] == LOGUEADO && ! g_Can [ id ]) { client_print ( id , print_center , "Ingresa tu nueva PASSWORD" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No estas logueado o ya cambiaste tu password durante el mapa" ); return PLUGIN_HANDLED ; } } } return PLUGIN_HANDLED ; } public Confirmar ( id ) { new Tit [ 128 ]; formatex ( Tit , charsmax ( Tit ), "La password sera \r%s^n^n\yConfirmar?" , g_contra2 [ id ]); new menu = menu_create ( Tit , "menu_confirmar" ); menu_additem ( menu , "\rSi\w, confirmar" , "1" ); menu_additem ( menu , "\rNo\w, deseo reescribirla" , "2" ); menu_setprop ( menu , MPROP_EXIT , MEXIT_NEVER ); menu_display ( id , menu , 0 ); } public menu_confirmar ( id , menu , item ) { switch( item ) { case 0 : { switch( g_Estado [ id ]) { case LOGUEADO : { copy ( g_contra [ id ], 19 , g_contra2 [ id ]); Guardar ( id ); client_print ( id , print_center , "Tu password ha sido cambiada satisfactoriamente" ); g_Can [ id ] = 1 ; } case NOREGISTRADO : { client_print ( id , print_center , "Tu cuenta ha sido creada satisfactoriamente" ); copy ( g_contra [ id ], 31 , g_contra2 [ id ]); Guardar ( id ); jTeam ( id ); } } } case 1 : { menu_destroy ( menu ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); if( g_Estado [ id ] == LOGUEADO ) client_print ( id , print_center , "Ingresa tu nueva PASSWORD" ); else client_print ( id , print_center , "Ingresa la PASSWORD para tu nueva cuenta" ); } } return PLUGIN_HANDLED ; } public Guardar ( id ) { if(! is_user_connected ( id )) return; adv_vault_set_start ( g_vault ); adv_vault_set_field ( g_vault , g_campo [ EXP ], kExp [ id ]) adv_vault_set_field ( g_vault , g_campo [ NIVEL ], kNivel [ id ]) adv_vault_set_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ]); adv_vault_set_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ]); adv_vault_set_end ( g_vault , 0 , g_cuenta [ id ]); } public Cargar ( id ) { if(! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { g_Estado [ id ] = NOREGISTRADO ; return; } else { g_Estado [ id ] = REGISTRADO ; kExp [ id ] = adv_vault_get_field ( g_vault , g_campo [ EXP ]); kNivel [ id ] = adv_vault_get_field ( g_vault , g_campo [ NIVEL ]); adv_vault_get_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ], charsmax ( g_Fecha [])); adv_vault_get_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ], charsmax ( g_contra [])); } } public Contra ( id ) { read_args ( g_contra [ id ], charsmax ( g_contra )); remove_quotes ( g_contra [ id ]); trim ( g_contra [ id ]); if( equal ( g_contra [ id ], "" ) || containi ( g_contra [ id ], " " ) != - 1 ) { client_print ( id , print_center , "Tu password contiene errores" ); return 1 ; } switch( g_Estado [ id ]) { case NOREGISTRADO : { client_print ( id , print_center , "Confirma tu password para proseguir" ); copy ( g_contra2 [ id ], 19 , g_contra [ id ]); Confirmar ( id ); } case REGISTRADO : { new buffer [ 40 ]; adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]); adv_vault_get_field ( g_vault , g_campo [ PASSWORD ], buffer , charsmax ( buffer )); if( equal ( buffer , g_contra [ id ])) { Guardar ( id ); client_print ( id , print_center , "Te logueaste satisfactoriamente en tu cuenta" ); jTeam ( id ); } else { ShowLogMenu ( id ); client_print ( id , print_center , "Password Incorrecta." ); } } case LOGUEADO : { if( g_Can [ id ]) { client_print ( id , print_center , "Ya cambiaste tu contra en este mapa" ); return PLUGIN_HANDLED ; } client_print ( id , print_center , "Confirma tu password para cambiarla..." ); copy ( g_contra2 [ id ], 19 , g_contra [ id ]); Confirmar ( id ); } } return PLUGIN_HANDLED ; } public message_VGUImenu ( msgid , dest , id ) { if( g_Estado [ id ] != LOGUEADO ) ShowLogMenu ( id ); return 1 ; } public jTeam ( id ){ static teammsg_block , teammsg_block_vgui , restore , vgui ; restore = get_pdata_int ( id , 510 ); vgui = restore & ( 1 << 0 ); if ( vgui ) set_pdata_int ( id , 510 , restore & ~( 1 << 0 )); teammsg_block = get_msg_block ( g_MsgShowMenu ); teammsg_block_vgui = get_msg_block ( g_MsgVgui ); set_msg_block ( g_MsgShowMenu , BLOCK_ONCE ); set_msg_block ( g_MsgVgui , BLOCK_ONCE ); engclient_cmd ( id , "jointeam" , "5" ); engclient_cmd ( id , "joinclass" , "5" ); set_msg_block ( g_MsgShowMenu , teammsg_block ); set_msg_block ( g_MsgVgui , teammsg_block_vgui ); if ( vgui ) set_pdata_int ( id , 510 , restore ); g_Estado [ id ] = LOGUEADO ; }
Paso 5:
Editamos algunas funciones que ya existen en el zp...
-->
1.- client_putinserver()
PD: al final de la función antes de "}"
Código PHP:
get_user_name ( id , g_cuenta [ id ], 31 ); get_time ( "%c" , g_Fecha [ id ], 31 ); g_contra [ id ][ 0 ] = '^0' ; g_Estado [ id ] = NOREGISTRADO ; g_Can [ id ] = 0 ; Cargar ( id );
2.- Creamos esta funcion:
Código PHP:
public client_disconnect ( id ) Guardar ( id );
3.- Editamos esto: fw_ClientUserInfoChanged(id) por fw_ClientUserInfoChanged(id, buffer)
Ahora dentro de la función agregamos:
PD: Al final de la función antes de "}"
Código PHP:
if( is_user_connected ( id )) { if( g_Estado [ id ] == LOGUEADO ) { static OldName [ 33 ]; engfunc ( EngFunc_InfoKeyValue , buffer , "name" , OldName , sizeof OldName - 1 ); if( equal ( OldName , g_cuenta [ id ])) return FMRES_IGNORED ; set_user_info ( id , "name" , g_cuenta [ id ]); client_cmd ( id , "setinfo ^" name ^ " ^" % s ^ "" , g_cuenta [ id ]); } } return FMRES_IGNORED ;
4.- clcmd_changeteam(id)
Reemplazamos el contenido de la funcion por esto:
Código PHP:
static team team = fm_cs_get_user_team ( id ) if( g_Estado [ id ] != LOGUEADO && team == FM_CS_TEAM_SPECTATOR || g_Estado [ id ] != LOGUEADO && team == FM_CS_TEAM_UNASSIGNED ) { ShowLogMenu ( id ) return PLUGIN_HANDLED ; } else if( g_Estado [ id ] == LOGUEADO && team == FM_CS_TEAM_SPECTATOR || g_Estado [ id ] == LOGUEADO && team == FM_CS_TEAM_UNASSIGNED ) return PLUGIN_CONTINUE ; show_menu_game ( id ) return PLUGIN_HANDLED ;
y por si no pueden (casi imposible solo es C&P)
Les dejo el sma...
aja reset para que?
o niveles para que? osea lo adapte a mi zp y descarge el tuyo
pero osea si reseteo no hay recompensa como ejemplo
si reseteo que me den 1000 ammo packs
y que sean armas por niveles!. se podra kikion2?
(28/11/2014, 12:58 PM) kikizon2 escribió: Bueno me pidieron lo siguiente:
"Adaptar Este Sistema de Niveles a Este Sistema de Cuentas , y al mismo tiempo que quede todo dentro del ZP"
Yo usare el zp 4.3 + human classes que hay en este foro...
Ya teniendo adaptado el sistema de niveles a nuestro zp siguiendo el respectivo tutorial procederemos a adaptar el sistema de cuentas y a guardar nuestros datos...
Paso 1:
Paso 2:
Creamos Variables y Constantes...
-->
Código PHP:
new g_contra [ 33 ][ 20 ], g_contra2 [ 33 ][ 20 ], g_cuenta [ 33 ][ 32 ]; new g_vault , g_MsgVgui , g_MsgShowMenu ; new g_Estado [ 33 ], g_Can [ 33 ], g_Fecha [ 33 ][ 32 ]; enum { EXP , NIVEL , FECHA , PASSWORD , DATA_M }; enum { NOREGISTRADO = 0 , REGISTRADO , LOGUEADO , ESTADOS }; new const Estado [ ESTADOS ][] = { "Sin Registrar" , "Registrado" , "Logueado" }; new g_campo [ DATA_M ];
Paso 3:
Nos vamos al init...
PD: Al final de la funcion antes de "}"
-->
Código PHP:
register_clcmd ( "INGRESAR_PASSWORD" , "Contra" ); register_clcmd ( "say /cuenta" , "ShowLogMenu" ); g_MsgVgui = get_user_msgid ( "VGUIMenu" ); g_MsgShowMenu = get_user_msgid ( "ShowMenu" ); register_message ( g_MsgVgui , "message_VGUImenu" ); register_message ( g_MsgShowMenu , "message_VGUImenu" ); g_vault = adv_vault_open ( "CuentasZP" , false ); g_campo [ EXP ] = adv_vault_register_field ( g_vault , "EXP" ) g_campo [ NIVEL ] = adv_vault_register_field ( g_vault , "NIVEL" ) g_campo [ FECHA ] = adv_vault_register_field ( g_vault , "FECHA" , DATATYPE_STRING , 32 ); g_campo [ PASSWORD ] = adv_vault_register_field ( g_vault , "PW" , DATATYPE_STRING , 20 ); adv_vault_init ( g_vault );
Paso 4:
Nos vamos al final del plugin y agregamos los nuevos menús y funciones...
-->
Código PHP:
/* MENUS */ public ShowLogMenu ( id ) { new Tit [ 128 ]; formatex ( Tit , charsmax ( Tit ), "Sistema de cuentas by \dkikizon^n\wBienvenido \r%s^n\wESTADO: \r%s^n\wTu ultima visita fue: \r%s" , g_cuenta [ id ], Estado [ g_Estado [ id ]], g_Fecha [ id ]); new menu = menu_create ( Tit , "menu_log" ); menu_additem ( menu , ( g_Estado [ id ] == REGISTRADO && adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]))? "Loguearse" : "\dLoguearse" , "1" ); menu_additem ( menu , ( g_Estado [ id ] == NOREGISTRADO && ! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]))? "Registrarse^n" : "\dRegistrarse^n" , "2" ); menu_additem ( menu , ( g_Estado [ id ] == LOGUEADO && ! g_Can [ id ])? "Cambiar Contra" : "\dCambiar Contra" , "3" ); menu_display ( id , menu , 0 ); } public menu_log ( id , menu , item ) { if( item == MENU_EXIT ) { menu_destroy ( menu ); return PLUGIN_HANDLED ; } switch( item ) { case 0 : { if( g_Estado [ id ] == REGISTRADO && adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { client_print ( id , print_center , "Ingresa tu PASSWORD para entrar a tu cuenta" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No puedes elegir esta opcion" ); return PLUGIN_HANDLED ; } } case 1 : { if( g_Estado [ id ] == NOREGISTRADO && ! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { client_print ( id , print_center , "Ingresa una PASSWORD para crear una cuenta" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No puedes elegir esta opcion" ); return PLUGIN_HANDLED ; } } case 2 : { if( g_Estado [ id ] == LOGUEADO && ! g_Can [ id ]) { client_print ( id , print_center , "Ingresa tu nueva PASSWORD" ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); } else { client_print ( id , print_center , "No estas logueado o ya cambiaste tu password durante el mapa" ); return PLUGIN_HANDLED ; } } } return PLUGIN_HANDLED ; } public Confirmar ( id ) { new Tit [ 128 ]; formatex ( Tit , charsmax ( Tit ), "La password sera \r%s^n^n\yConfirmar?" , g_contra2 [ id ]); new menu = menu_create ( Tit , "menu_confirmar" ); menu_additem ( menu , "\rSi\w, confirmar" , "1" ); menu_additem ( menu , "\rNo\w, deseo reescribirla" , "2" ); menu_setprop ( menu , MPROP_EXIT , MEXIT_NEVER ); menu_display ( id , menu , 0 ); } public menu_confirmar ( id , menu , item ) { switch( item ) { case 0 : { switch( g_Estado [ id ]) { case LOGUEADO : { copy ( g_contra [ id ], 19 , g_contra2 [ id ]); Guardar ( id ); client_print ( id , print_center , "Tu password ha sido cambiada satisfactoriamente" ); g_Can [ id ] = 1 ; } case NOREGISTRADO : { client_print ( id , print_center , "Tu cuenta ha sido creada satisfactoriamente" ); copy ( g_contra [ id ], 31 , g_contra2 [ id ]); Guardar ( id ); jTeam ( id ); } } } case 1 : { menu_destroy ( menu ); client_cmd ( id , "messagemode INGRESAR_PASSWORD" ); if( g_Estado [ id ] == LOGUEADO ) client_print ( id , print_center , "Ingresa tu nueva PASSWORD" ); else client_print ( id , print_center , "Ingresa la PASSWORD para tu nueva cuenta" ); } } return PLUGIN_HANDLED ; } public Guardar ( id ) { if(! is_user_connected ( id )) return; adv_vault_set_start ( g_vault ); adv_vault_set_field ( g_vault , g_campo [ EXP ], kExp [ id ]) adv_vault_set_field ( g_vault , g_campo [ NIVEL ], kNivel [ id ]) adv_vault_set_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ]); adv_vault_set_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ]); adv_vault_set_end ( g_vault , 0 , g_cuenta [ id ]); } public Cargar ( id ) { if(! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { g_Estado [ id ] = NOREGISTRADO ; return; } else { g_Estado [ id ] = REGISTRADO ; kExp [ id ] = adv_vault_get_field ( g_vault , g_campo [ EXP ]); kNivel [ id ] = adv_vault_get_field ( g_vault , g_campo [ NIVEL ]); adv_vault_get_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ], charsmax ( g_Fecha [])); adv_vault_get_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ], charsmax ( g_contra [])); } } public Contra ( id ) { read_args ( g_contra [ id ], charsmax ( g_contra )); remove_quotes ( g_contra [ id ]); trim ( g_contra [ id ]); if( equal ( g_contra [ id ], "" ) || containi ( g_contra [ id ], " " ) != - 1 ) { client_print ( id , print_center , "Tu password contiene errores" ); return 1 ; } switch( g_Estado [ id ]) { case NOREGISTRADO : { client_print ( id , print_center , "Confirma tu password para proseguir" ); copy ( g_contra2 [ id ], 19 , g_contra [ id ]); Confirmar ( id ); } case REGISTRADO : { new buffer [ 40 ]; adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ]); adv_vault_get_field ( g_vault , g_campo [ PASSWORD ], buffer , charsmax ( buffer )); if( equal ( buffer , g_contra [ id ])) { Guardar ( id ); client_print ( id , print_center , "Te logueaste satisfactoriamente en tu cuenta" ); jTeam ( id ); } else { ShowLogMenu ( id ); client_print ( id , print_center , "Password Incorrecta." ); } } case LOGUEADO : { if( g_Can [ id ]) { client_print ( id , print_center , "Ya cambiaste tu contra en este mapa" ); return PLUGIN_HANDLED ; } client_print ( id , print_center , "Confirma tu password para cambiarla..." ); copy ( g_contra2 [ id ], 19 , g_contra [ id ]); Confirmar ( id ); } } return PLUGIN_HANDLED ; } public message_VGUImenu ( msgid , dest , id ) { if( g_Estado [ id ] != LOGUEADO ) ShowLogMenu ( id ); return 1 ; } public jTeam ( id ){ static teammsg_block , teammsg_block_vgui , restore , vgui ; restore = get_pdata_int ( id , 510 ); vgui = restore & ( 1 << 0 ); if ( vgui ) set_pdata_int ( id , 510 , restore & ~( 1 << 0 )); teammsg_block = get_msg_block ( g_MsgShowMenu ); teammsg_block_vgui = get_msg_block ( g_MsgVgui ); set_msg_block ( g_MsgShowMenu , BLOCK_ONCE ); set_msg_block ( g_MsgVgui , BLOCK_ONCE ); engclient_cmd ( id , "jointeam" , "5" ); engclient_cmd ( id , "joinclass" , "5" ); set_msg_block ( g_MsgShowMenu , teammsg_block ); set_msg_block ( g_MsgVgui , teammsg_block_vgui ); if ( vgui ) set_pdata_int ( id , 510 , restore ); g_Estado [ id ] = LOGUEADO ; }
Paso 5:
Editamos algunas funciones que ya existen en el zp...
-->
1.- client_putinserver()
PD: al final de la función antes de "}"
Código PHP:
get_user_name ( id , g_cuenta [ id ], 31 ); get_time ( "%c" , g_Fecha [ id ], 31 ); g_contra [ id ][ 0 ] = '^0' ; g_Estado [ id ] = NOREGISTRADO ; g_Can [ id ] = 0 ; Cargar ( id );
2.- Creamos esta funcion:
Código PHP:
public client_disconnect ( id ) Guardar ( id );
3.- Editamos esto: fw_ClientUserInfoChanged(id) por fw_ClientUserInfoChanged(id, buffer)
Ahora dentro de la función agregamos:
PD: Al final de la función antes de "}"
Código PHP:
if( is_user_connected ( id )) { if( g_Estado [ id ] == LOGUEADO ) { static OldName [ 33 ]; engfunc ( EngFunc_InfoKeyValue , buffer , "name" , OldName , sizeof OldName - 1 ); if( equal ( OldName , g_cuenta [ id ])) return FMRES_IGNORED ; set_user_info ( id , "name" , g_cuenta [ id ]); client_cmd ( id , "setinfo ^" name ^ " ^" % s ^ "" , g_cuenta [ id ]); } } return FMRES_IGNORED ;
4.- clcmd_changeteam(id)
Reemplazamos el contenido de la funcion por esto:
Código PHP:
static team team = fm_cs_get_user_team ( id ) if( g_Estado [ id ] != LOGUEADO && team == FM_CS_TEAM_SPECTATOR || g_Estado [ id ] != LOGUEADO && team == FM_CS_TEAM_UNASSIGNED ) { ShowLogMenu ( id ) return PLUGIN_HANDLED ; } else if( g_Estado [ id ] == LOGUEADO && team == FM_CS_TEAM_SPECTATOR || g_Estado [ id ] == LOGUEADO && team == FM_CS_TEAM_UNASSIGNED ) return PLUGIN_CONTINUE ; show_menu_game ( id ) return PLUGIN_HANDLED ;
y por si no pueden (casi imposible solo es C&P)
Les dejo el sma...
aja reset para que?
o niveles para que? osea lo adapte a mi zp y descarge el tuyo
pero osea si reseteo no hay recompensa como ejemplo
si reseteo que me den 1000 ammo packs
y que sean armas por niveles!. se podra kikion2?
CRISTΔRΔNTULΔ!.
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
si se puede pero te toca ver como se hace.
Mensajes: 853
Temas: 147
Registro en: Oct 2014
Reputación:
5
(14/11/2017, 09:32 PM) NkkI escribió: si se puede pero te toca ver como se hace.
nalgas
(03/08/2018, 03:13 PM) Skylar escribió: Está bien que pidas ayudas, pero no para que crees 20 post todos los días mogolico de mierda, me tenes re podrido ya, contraté 10000 sicarios para que te busquen y te maten toda la familia, y a vos que te revienten con una bazooka.
Mensajes: 117
Temas: 37
Registro en: Nov 2018
Reputación:
0
Ayuda?
Error: Number of arguments does not match definition on line 2464
Error: Number of arguments does not match definition on line 2470
Error: Start of function body without function header on line 3186
Error: Invalid function or declaration on line 3188
Error: Invalid function or declaration on line 3191
Error: Symbol already defined: "get_user_name" on line 3194
Error: Invalid function or declaration on line 3197
Error: Invalid function or declaration on line 3203
Error: Invalid function or declaration on line 3206
Error: Symbol already defined: "set_task" on line 3210
Error: Invalid function or declaration on line 3212
Error: Invalid function or declaration on line 3215
Error: Invalid function or declaration on line 3219
Error: Symbol already defined: "set_task" on line 3222
Error: Symbol already defined: "get_user_name" on line 3226
Error: Invalid function or declaration on line 3231
Warning: Old style prototypes used with optional semicolumns on line 3233
Error: Unmatched closing brace on line 3234
Error: Function heading differs from prototype on line 10174
Error: Symbol already defined: "reset_vars" on line 10175
Warning: Symbol is assigned a value that is never used: "cvar_huddisplay" on line 1767
Mensajes: 117
Temas: 37
Registro en: Nov 2018
Reputación:
0
No me guarda ningún dato..
Código PHP:
enum { EXP , NIVEL , RR , PUNTOS , GASTADOS , HABILIDAD , ZPUNTOS , ZGASTADOS , ZHABILIDAD , HPUNTOS , HGASTADOS , HHABILIDAD , FECHA , PASSWORD , DATA_M }; g_campo [ EXP ] = adv_vault_register_field ( g_vault , "EXP" ) g_campo [ NIVEL ] = adv_vault_register_field ( g_vault , "NIVEL" ) g_campo [ RR ] = adv_vault_register_field ( g_vault , "RR" ) g_campo [ PUNTOS ] = adv_vault_register_field ( g_vault , "PUNTOS" ); g_campo [ GASTADOS ] = adv_vault_register_field ( g_vault , "GASTADOS" ); g_campo [ HABILIDAD ] = adv_vault_register_field ( g_vault , "HABILIDAD" ); g_campo [ ZPUNTOS ] = adv_vault_register_field ( g_vault , "ZPUNTOS" ); g_campo [ ZGASTADOS ] = adv_vault_register_field ( g_vault , "ZGASTADOS" ); g_campo [ ZHABILIDAD ] = adv_vault_register_field ( g_vault , "ZHABILIDAD" ); g_campo [ HPUNTOS ] = adv_vault_register_field ( g_vault , "HPUNTOS" ); g_campo [ HGASTADOS ] = adv_vault_register_field ( g_vault , "HGASTADOS" ); g_campo [ HHABILIDAD ] = adv_vault_register_field ( g_vault , "HHABILIDAD" ); public Guardar ( id ) { if(! is_user_connected ( id )) return; adv_vault_set_start ( g_vault ); adv_vault_set_field ( g_vault , g_campo [ EXP ], g_iExp [ id ]) adv_vault_set_field ( g_vault , g_campo [ NIVEL ], g_iLevel [ id ]) adv_vault_set_field ( g_vault , g_campo [ RR ], g_iReset [ id ]) adv_vault_set_field ( g_vault , g_campo [ PUNTOS ], g_puntos [ id ]); adv_vault_set_field ( g_vault , g_campo [ GASTADOS ], g_gastados [ id ]); adv_vault_set_field ( g_vault , g_campo [ HABILIDAD ], g_habilidad [ id ]); adv_vault_set_field ( g_vault , g_campo [ ZPUNTOS ], g_puntos [ id ]); adv_vault_set_field ( g_vault , g_campo [ ZGASTADOS ], g_gastados [ id ]); adv_vault_set_field ( g_vault , g_campo [ ZHABILIDAD ], g_habilidad [ id ]); adv_vault_set_field ( g_vault , g_campo [ HPUNTOS ], g_puntos [ id ]); adv_vault_set_field ( g_vault , g_campo [ HGASTADOS ], g_gastados [ id ]); adv_vault_set_field ( g_vault , g_campo [ HHABILIDAD ], g_habilidad [ id ]); adv_vault_set_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ]); adv_vault_set_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ]); adv_vault_set_end ( g_vault , 0 , g_cuenta [ id ]); } public Cargar ( id ) { if(! adv_vault_get_prepare ( g_vault , _ , g_cuenta [ id ])) { g_Estado [ id ] = NOREGISTRADO ; return; } else { g_Estado [ id ] = REGISTRADO ; g_iExp [ id ] = adv_vault_get_field ( g_vault , g_campo [ EXP ]); g_iLevel [ id ] = adv_vault_get_field ( g_vault , g_campo [ NIVEL ]); g_iReset [ id ] = adv_vault_get_field ( g_vault , g_campo [ RR ]); adv_vault_get_field ( g_vault , g_campo [ PUNTOS ], g_puntos [ id ], sizeof ( g_puntos [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ GASTADOS ], g_gastados [ id ], sizeof ( g_gastados [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ ZPUNTOS ], g_puntos [ id ][ 1 ], sizeof ( g_puntos [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ HPUNTOS ], g_puntos [ id ][ 0 ], sizeof ( g_puntos [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ ZGASTADOS ], g_gastados [ id ][ 1 ], sizeof ( g_gastados [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ HGASTADOS ], g_gastados [ id ][ 0 ], sizeof ( g_gastados [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ ZHABILIDAD ], g_habilidad [ id ][ 1 ], sizeof ( g_habilidad [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ HHABILIDAD ], g_habilidad [ id ][ 0 ], sizeof ( g_habilidad [ ][ ] ) ); adv_vault_get_field ( g_vault , g_campo [ FECHA ], g_Fecha [ id ], charsmax ( g_Fecha [])); adv_vault_get_field ( g_vault , g_campo [ PASSWORD ], g_contra [ id ], charsmax ( g_contra [])); } }