[Duda]їCуmo no spawnear en el diбlogo? - 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]їCуmo no spawnear en el diбlogo? (
/showthread.php?tid=346228)
[Duda]їCуmo no spawnear en el diбlogo? -
Lunnatiicz - 27.05.2012
Tengo esto:
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response)
{
if(!strlen(inputtext))
{
new s[128];
format(s,sizeof(s),"{FF0000}No has escrito ninguna contraseсa");
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,"Error",s,"Logear","");
return 1;
}
LogearJugador(playerid,inputtext);
TogglePlayerSpectating(playerid, 0);
Logeado[playerid] = 1;
}
else
{
Kick(playerid);
}
}
if(dialogid == 2)
{
if(response)
{
if(!strlen(inputtext))
{
new s[128];
format(s,sizeof(s),"{FF0000}No has escrito ninguna contraseсa");
ShowPlayerDialog(playerid,2,DIALOG_STYLE_PASSWORD,"Error",s,"Registrar","");
return 1;
}
RegistrarJugador(playerid,inputtext);
LogearJugador(playerid, inputtext);
TogglePlayerSpectating(playerid, 0);
}
else
{
Kick(playerid);
}
}
return 1;
}
El problema es que si el user escribe mal la contraseсa el ped spawnea pero el dialogo sigue, por lo que los datos no cargan y lo manda a red country.
?
Respuesta: [Duda]їCуmo no spawnear en el diбlogo? -
Jovanny - 27.05.2012
Has que LogearJugador retorne false o true dependiendo si la contraseсa es correcta o no y en el dialog pones un if con el valor que retorne logearjugador, si retorna false le pones que le pida la contraseсa nuevamente y asta que retorne true usas TogglePlayerSpectating(playerid, 0);
Respuesta: [Duda]їCуmo no spawnear en el diбlogo? -
Lunnatiicz - 06.06.2012
Quote:
Originally Posted by Jovanny
Has que LogearJugador retorne false o true dependiendo si la contraseсa es correcta o no y en el dialog pones un if con el valor que retorne logearjugador, si retorna false le pones que le pida la contraseсa nuevamente y asta que retorne true usas TogglePlayerSpectating(playerid, 0);
|
Perdуn la tardanza en responder jeje.
Deja ver si te entendн
pawn Код:
public OnDialogResponse(...)
{
if (LogearJugador(..) == false)
{
ShowPlayerDialog(..);
} else if(LogearJugador(..) == true)
TogglePlayerSpectating(playerid, 0);
}
}
?
Respuesta: [Duda]їCуmo no spawnear en el diбlogo? -
Jovanny - 06.06.2012
Si, pero tienes que modificar LogearJugador para que retorne el boolean dependiendo si ingreso correctamente o no