Ayuda con un dialog -
sdantuoni - 12.05.2014
Buenas gente de samp
Consegui una GM MYSQl y la estoy modificando para crear mi servidor, bueno pues cuando voy a probarla en la parte del registro, hay un dialog que te pide la contraseсa por primera vez, pues la ingresas y luego otro que te la pide para logearte, bueno resulta que el dialog para REGISTRARSE si aparece pero solo un segundito y ensegida pasa al de LOGEARSE, y no se porque, ya trate de solucionarlo de muchas formas pero no me doy cuenta donde esta el problema
les dejo el codigo de los dos case, el del REGISTRO y el del LOGIN
Код HTML:
case REGISTRO:{
if(!response){
LimpiarConsola(playerid, 30);
Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Cancelar el registro de su personaje.");
Expulsar(playerid);
}
if(response){
if(!strlen(inputtext)){
format(string, sizeof(string), "La contraseсa que has introducido para el personaje %s es invбlida.\n\nIntйntalo de nuevo, coloca una contraseсa correcta por favor:", NombreOOC(playerid));
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_PASSWORD,GM_NAME" - Registrar personaje",string,"Enviar","Salir");
}
mysql_real_escape_string(JugadorInfo[playerid][jClave],JugadorInfo[playerid][jClave],TuberiasMySQL);
WP_Hash(JugadorInfo[playerid][jClave], 129, inputtext);
JugadorInfo[playerid][jRegistrado] = 1;
format(Query, sizeof(Query), "INSERT INTO `cuentas` (username, clave, ip, registrado) VALUES ('%s', '%s', '%s', '%d')", NombreOOC(playerid), JugadorInfo[playerid][jClave], JugadorInfo[playerid][jIP], JugadorInfo[playerid][jRegistrado]);
mysql_function_query(TuberiasMySQL, Query, true, "OnQueryFinish", "ii", SIN_RESULTADO, playerid);
format(string, sizeof(string), "Acabas de registrar el personaje %s en nuestra base de datos.\n\nAhora inicia sesiуn con la contraseсa introducida anteriormente:", NombreOOC(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,GM_NAME" - Iniciar sesiуn",string,"Enviar","Salir");
}
return 1;
case LOGIN:{
if(!response){
LimpiarConsola(playerid, 30);
Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Cancelar el inicio de sesiуn.");
Expulsar(playerid);
return 1;
}
mysql_real_escape_string(JugadorInfo[playerid][jClave],JugadorInfo[playerid][jClave],TuberiasMySQL);
WP_Hash(inputtext, 129, inputtext);
if(strcmp(JugadorInfo[playerid][jClave], inputtext, true, 128) == 0){
if(strlen(inputtext) >= 1){
format(Query, sizeof(Query), "SELECT * FROM `cuentas` WHERE `username` = '%s'", NombreOOC(playerid));
mysql_function_query(TuberiasMySQL, Query, true, "OnQueryFinish", "ii", VERIFICAR_CUENTA, playerid);
GetPlayerIp(playerid, JugadorInfo[playerid][jIP], 16);
StopAudioStreamForPlayer(playerid);
TextDrawHideForPlayer(playerid, Cargando);
TogglePlayerSpectating(playerid, 0);
JugadorInfo[playerid][jConexion] = 1;
SetPlayerPos(playerid, JugadorInfo[playerid][jCoordX], JugadorInfo[playerid][jCoordY], JugadorInfo[playerid][jCoordZ]);
SetPlayerSkin(playerid, JugadorInfo[playerid][jSkin]);
EstablecerDinero(playerid);
EstablecerVida(playerid, JugadorInfo[playerid][jVida]);
EstablecerChaleco(playerid, JugadorInfo[playerid][jChaleco]);
}
else{
Intentos[playerid] ++;
if(Intentos[playerid] > 2) { LimpiarConsola(playerid, 30); Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Introducir una contraseсa incorrecta tres veces."); Expulsar(playerid); }
format(string, sizeof(string), "La contraseсa introducida no coincide con el personaje %s (mбximo 3 intentos).\n\nColoca nuevamente la contraseсa correcta en el siguiente campo:", NombreOOC(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,GM_NAME" - Iniciar sesiуn",string,"Enviar","Salir");
}
}
}
Bueno gracias por todo. Si me pueden ayudar a resolver este problemita les agradeceria mucho, si necesitan q les pase algo mas me dicen y se los paso
Respuesta: Ayuda con un dialog -
unuky - 13.05.2014
pawn Код:
case REGISTRO:
{
if(!response)
{
LimpiarConsola(playerid, 30);
Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Cancelar el registro de su personaje.");
Expulsar(playerid);
}
if(response)
{
if(!strlen(inputtext))
{
format(string, sizeof(string), "La contraseсa que has introducido para el personaje %s es invбlida.\n\nIntйntalo de nuevo, coloca una contraseсa correcta por favor:", NombreOOC(playerid));
ShowPlayerDialog(playerid, REGISTRO, DIALOG_STYLE_PASSWORD,GM_NAME" - Registrar personaje",string,"Enviar","Salir");
}
mysql_real_escape_string(JugadorInfo[playerid][jClave],JugadorInfo[playerid][jClave],TuberiasMySQL);
WP_Hash(JugadorInfo[playerid][jClave], 129, inputtext);
JugadorInfo[playerid][jRegistrado] = 1;
format(Query, sizeof(Query), "INSERT INTO `cuentas` (username, clave, ip, registrado) VALUES ('%s', '%s', '%s', '%d')", NombreOOC(playerid), JugadorInfo[playerid][jClave], JugadorInfo[playerid][jIP], JugadorInfo[playerid][jRegistrado]);
mysql_function_query(TuberiasMySQL, Query, true, "OnQueryFinish", "ii", SIN_RESULTADO, playerid);
format(string, sizeof(string), "Acabas de registrar el personaje %s en nuestra base de datos.\n\nAhora inicia sesiуn con la contraseсa introducida anteriormente:", NombreOOC(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,GM_NAME" - Iniciar sesiуn",string,"Enviar","Salir");
}
return 1;
}
case LOGIN:
{
if(!response)
{
LimpiarConsola(playerid, 30);
Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Cancelar el inicio de sesiуn.");
Expulsar(playerid);
return 1;
}
mysql_real_escape_string(JugadorInfo[playerid][jClave],JugadorInfo[playerid][jClave],TuberiasMySQL);
WP_Hash(inputtext, 129, inputtext);
if(strcmp(JugadorInfo[playerid][jClave], inputtext, true, 128) == 0)
{
if(strlen(inputtext) >= 1)
{
format(Query, sizeof(Query), "SELECT * FROM `cuentas` WHERE `username` = '%s'", NombreOOC(playerid));
mysql_function_query(TuberiasMySQL, Query, true, "OnQueryFinish", "ii", VERIFICAR_CUENTA, playerid);
GetPlayerIp(playerid, JugadorInfo[playerid][jIP], 16);
StopAudioStreamForPlayer(playerid);
TextDrawHideForPlayer(playerid, Cargando);
TogglePlayerSpectating(playerid, 0);
JugadorInfo[playerid][jConexion] = 1;
SetPlayerPos(playerid, JugadorInfo[playerid][jCoordX], JugadorInfo[playerid][jCoordY], JugadorInfo[playerid][jCoordZ]);
SetPlayerSkin(playerid, JugadorInfo[playerid][jSkin]);
EstablecerDinero(playerid);
EstablecerVida(playerid, JugadorInfo[playerid][jVida]);
EstablecerChaleco(playerid, JugadorInfo[playerid][jChaleco]);
}
else
{
Intentos[playerid] ++;
if(Intentos[playerid] > 2)
{
LimpiarConsola(playerid, 30);
Mensaje(playerid, ROJO_VINO, "Usted ha sido expulsado automбticamente del servidor. Razуn: Introducir una contraseсa incorrecta tres veces.");
Expulsar(playerid);
}
format(string, sizeof(string), "La contraseсa introducida no coincide con el personaje %s (mбximo 3 intentos).\n\nColoca nuevamente la contraseсa correcta en el siguiente campo:", NombreOOC(playerid));
ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,GM_NAME" - Iniciar sesiуn",string,"Enviar","Salir");
}
}
}
Respuesta: Ayuda con un dialog -
C1ruj4n0 - 13.05.2014
Simple.
Hermano te falto cerrar una llave y por eso se salta al otro dialogo. verifica ,mira que la llave que te falto fue la del return 1 del REGISTROS Saludos.
Respuesta: Ayuda con un dialog -
sdantuoni - 14.05.2014
Muchisimas gracias a todos me solucionaron un gran problema