SA-MP Forums Archive
Duda Guardado de Edad - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Duda Guardado de Edad (/showthread.php?tid=464643)



Duda Guardado de Edad - BecksLennon - 18.09.2013

Hola, gente e estado luchando en esto con un amigo, pero no tuvimos soluciуn a ello, querнa preguntarle si alguno sabe que es lo que falla en esto
pawn Код:
case SEdad:
      {
          if(!IsNumeric(inputtext))return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Escriba solo el nъmero, su Edad:", "Seleccionar", "");
          if(strval(inputtext) < 18 || strval(inputtext) > 80) ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Mбximo {DD0000}80, {FFFFFF}mнnimo {DD0000}18", "Seleccionar", "");
          Informacion[playerid][Edad] = strval(inputtext);
          ShowPlayerDialog(playerid, Dialog_Tutorial, DIALOG_STYLE_MSGBOX, "{DD0000}Fin del Registro","{FFFFFF}Has terminado el registro exitosamente\n\n{FFFFFF}Ahora, verб un pequeсo tutorial sobre este modo de juego", "Aceptar", "");
      }
Por las dudas aquн les dejo el Stocks que permite solo poner nъmeros por si capas es esto tambiйn.
pawn Код:
stock IsNumeric(string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return 0;
}
return 1;
}
Yo quiero que en eso osea, al registrarte te pida dicha edad vos pones 15 y te dija Mнnimo 18 mбximo 80, y tambiйn que si pones aceptar sin ningъn numero te re aparezca el dialog, ya que esta bug eso pones aceptar sin ningъn numero y te registra con edad 0 , y si pones 14 te registra con edad 14 yo quiero que registre solamente con mнnimo 18 y mбximo 80, y que al poner aceptar sin ingresar nada te vuelva a pedir la edad y asн hasta que la ingreses, no se si me explico bien yo creo que si, espero una respuesta.

Agradezco mucho su ayuda!


Respuesta: Duda Guardado de Edad - EduGTA - 18.09.2013

Intenta:

pawn Код:
case SEdad:
{
    if(!strlen(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Por favor, introduza un nъmero entre 18 y 80", "Seleccionar", "");
    if(!IsNumeric(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Escriba solo el nъmero, su Edad:", "Seleccionar", "");
    if(strval(inputtext) < 18 || strval(inputtext) > 80) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Mбximo {DD0000}80, {FFFFFF}mнnimo {DD0000}18", "Seleccionar", "");
    Informacion[playerid][Edad] = strval(inputtext);
    ShowPlayerDialog(playerid, Dialog_Tutorial, DIALOG_STYLE_MSGBOX, "{DD0000}Fin del Registro","{FFFFFF}Has terminado el registro exitosamente\n\n{FFFFFF}Ahora, verб un pequeсo tutorial sobre este modo de juego", "Aceptar", "");
}
Dices "luchando" como si fuese una guerra lol


Respuesta: Duda Guardado de Edad - OTACON - 18.09.2013

Tu problema esta ke te esta faltando el response.

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    if(dialogid == DIALOG) {
        if(response) { //Cuando presionas el primer boton
        //TU FUNCION
        }
        else { //Cuando presionas el segundo boton o ESC
        //TU FUNCION
        }
    }
    return false;
}



Respuesta: Duda Guardado de Edad - BecksLennon - 18.09.2013

Quote:
Originally Posted by Edugta.
Посмотреть сообщение
Intenta:

pawn Код:
case SEdad:
{
    if(!strlen(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Por favor, introduza un nъmero entre 18 y 80", "Seleccionar", "");
    if(!IsNumeric(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Escriba solo el nъmero, su Edad:", "Seleccionar", "");
    if(strval(inputtext) < 18 || strval(inputtext) > 80) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Mбximo {DD0000}80, {FFFFFF}mнnimo {DD0000}18", "Seleccionar", "");
    Informacion[playerid][Edad] = strval(inputtext);
    ShowPlayerDialog(playerid, Dialog_Tutorial, DIALOG_STYLE_MSGBOX, "{DD0000}Fin del Registro","{FFFFFF}Has terminado el registro exitosamente\n\n{FFFFFF}Ahora, verб un pequeсo tutorial sobre este modo de juego", "Aceptar", "");
}
Dices "luchando" como si fuese una guerra lol
Nu funciono, na mentira funciono aver por cuanto :P
Gracias edugta, y enserio si que fue una guerra jajaja, para mi claro, de todo modos gracias, te debo la rep te la doy cuando pueda :3


Respuesta: Duda Guardado de Edad - OTACON - 18.09.2013

Te recomiendo esto:

Tu problema esta ke te esta faltando el response.
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    if(dialogid == DIALOG) {
        if(response) { //Cuando presionas el primer boton
        //TU FUNCION
        }
        else { //Cuando presionas el segundo boton o ESC
        //TU FUNCION
        }
    }
    return false;
}



Respuesta: Duda Guardado de Edad - BecksLennon - 18.09.2013

Quote:
Originally Posted by OTACON
Посмотреть сообщение
Tu problema esta ke te esta faltando el response.

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    if(dialogid == DIALOG) {
        if(response) { //Cuando presionas el primer boton
        //TU FUNCION
        }
        else { //Cuando presionas el segundo boton o ESC
        //TU FUNCION
        }
    }
    return false;
}
Ya lo solucione gracias de todo modos Otacon, y Edugta ahн te pude dar la rep, otacon avos si te la debo por que ya te di jaja tengo que esperar a esparcir.


Respuesta: Duda Guardado de Edad - DesingMyCry - 18.09.2013

pawn Код:
case SEdad:
{
    if(!IsNumeric(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Escriba solo el nъmero, su Edad:", "Seleccionar", "");
    if(strval(inputtext) < 18 || strval(inputtext) > 80) ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Mбximo {DD0000}80, {FFFFFF}mнnimo {DD0000}18", "Seleccionar", "");

    Informacion[playerid][Edad] = strval(inputtext);
    ShowPlayerDialog(playerid, Dialog_Tutorial, DIALOG_STYLE_MSGBOX, "{DD0000}Fin del Registro","{FFFFFF}Has terminado el registro exitosamente\n\n{FFFFFF}Ahora, verб un pequeсo tutorial sobre este modo de juego", "Aceptar", "");
}
Siempre te mostraba segundo diбlogo. Enrealidad te mostraba ambos, solo que es tan rбpido el actuar que nisiquiera te percatas.

pawn Код:
strval(inputtext) < 18 || strval(inputtext) > 80
Esa condiciуn dice que si el nъmero que ingresa es menor a 18 o mayor a 80, le debia mostrar el diбlogo. Solo que nunca le dijiste al servidor que debia detenerse en ese momento, por lo que luego de mostrar ese diбlogo continuaba el cуdigo y finalmente le mostraba el segundo diбlogo. Resultando esto como si nunca ubiera funcionado esa condiciуn.


Respuesta: Duda Guardado de Edad - OTACON - 18.09.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
pawn Код:
case SEdad:
{
    if(!IsNumeric(inputtext)) return ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Escriba solo el nъmero, su Edad:", "Seleccionar", "");
    if(strval(inputtext) < 18 || strval(inputtext) > 80) ShowPlayerDialog(playerid, SEdad, DIALOG_STYLE_INPUT, "{DD0000}Edad", "{FFFFFF}Mбximo {DD0000}80, {FFFFFF}mнnimo {DD0000}18", "Seleccionar", "");

    Informacion[playerid][Edad] = strval(inputtext);
    ShowPlayerDialog(playerid, Dialog_Tutorial, DIALOG_STYLE_MSGBOX, "{DD0000}Fin del Registro","{FFFFFF}Has terminado el registro exitosamente\n\n{FFFFFF}Ahora, verб un pequeсo tutorial sobre este modo de juego", "Aceptar", "");
}
Siempre te mostraba segundo diбlogo. Enrealidad te mostraba ambos, solo que es tan rбpido el actuar que nisiquiera te percatas.

pawn Код:
strval(inputtext) < 18 || strval(inputtext) > 80
Esa condiciуn dice que si el nъmero que ingresa es menor a 18 o mayor a 80, le debia mostrar el diбlogo. Solo que nunca le dijiste al servidor que debia detenerse en ese momento, por lo que luego de mostrar ese diбlogo continuaba el cуdigo y finalmente le mostraba el segundo diбlogo. Resultando esto como si nunca ubiera funcionado esa condiciуn.
yo pregunto...
todo eso fue para decirle que le faltaron los return?



Respuesta: Duda Guardado de Edad - DesingMyCry - 18.09.2013

Las dudas se responden con palabras humanas, no cуdigos.


Respuesta: Duda Guardado de Edad - OTACON - 18.09.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Las dudas se responden con palabras humanas, no cуdigos.
solo pregutaba man, gracias por responde .
saludos.