[AYUDA]Dialogos -
Luis_Andrade - 07.07.2011
Hola, Bueno, estoy viendo tutos y manuales para aprender muy bien de pawno...
Bueno, pasa de que estaba practicando creando diбlogos, lo hice bien, pero me quedo una duda
Como hago para cuando le de en cancelar, se cierre el cuadro y no seleccione una opciуn
Aquн les dejo el cуdigo de lo que hice:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
if(strcmp(cmd, "/traje", true) == 0) {
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Traje de trabajo", "Traje I\nTraje II\nTraje III\nTraje VI", "Colocar", "Cancelar");
return 1;
}
return 0;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 0)
{
switch(listitem)
{
case 0:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje I");
SetPlayerSkin(playerid, 61);
}
case 1:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje II");
SetPlayerSkin(playerid, 34);
}
case 2:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje III");
SetPlayerSkin(playerid, 32);
}
case 3:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje IV");
SetPlayerSkin(playerid, 202);
}
}
}
return 1;
}
Bueno, como les decia, quiero que cuando le de en cancelar se cierre el cuandro, espero haberme hecho entender, agradesco cualquier ayuda
Saludos
Respuesta: [AYUDA]Dialogos -
TiNcH010 - 07.07.2011
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 0)
{
if(response)
{
switch(listitem)
{
case 0:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje I");
SetPlayerSkin(playerid, 61);
}
case 1:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje II");
SetPlayerSkin(playerid, 34);
}
case 2:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje III");
SetPlayerSkin(playerid, 32);
}
case 3:{
SendClientMessage(playerid, COLOR_YELLOW, "Te Has Colocado el Traje IV");
SetPlayerSkin(playerid, 202);
}
}
}
} else {
SendClientMessage(playerid, 0xFFFFFFFF, "Has cancelado !");
}
return 1;
}
Ni lo probe y tengo sueсo jaja
Respuesta: [AYUDA]Dialogos -
Nicolas_Castillo - 07.07.2011
cuando colocas
Es cuando le dan al cuadro de la izquierda (comunmente llamado 'Aceptar')
y si quieres que haga algo cuando le de al cuadro de la derecha. usas
Respuesta: [AYUDA]Dialogos -
Luis_Andrade - 07.07.2011
Listo
Solo le coloce el:
Gracias a todos
Respuesta: [AYUDA]Dialogos -
TheChaoz - 07.07.2011
la variable response toma el valor 1 si hacen click en el 1є boton, y toma el valor 0 si se hace click en el segundo boton (en caso de q este este habilitado)
por eso los codigos:
pawn Код:
if(response)//= que if(response == 1)
if(!response)//= que if(response == 0)
Respuesta: [AYUDA]Dialogos -
FunFuckFeel - 08.07.2011
En vez de meter otra sentencia if, tambiйn puede ser una opciуn que primero pongas el if(response) y luego un else diciendo que cancelo.
pawn Код:
if(response){
blablabla
}else{
cancelaste!
}
Re: [AYUDA]Dialogos -
Luis_Andrade - 08.07.2011
@the_chaoz Gracias por la explicacion
@FunFuckFeel Gracias, pero lo arregle solo colocando el if(response) sin el else, Gracias de todas maneras
Respuesta: [AYUDA]Dialogos -
3dg4r - 04.08.2011
Quote:
Originally Posted by FunFuckFeel
En vez de meter otra sentencia if, tambiйn puede ser una opciуn que primero pongas el if(response) y luego un else diciendo que cancelo.
pawn Код:
if(response){ blablabla }else{ cancelaste! }
|
Disculpa por revivir tema pero esa Opsion que tu pones no es para usar el segundo boton en caso de poner Info, Me explico; Si doy aceptar que me de lo que elegi pero si pongo el segundo boton con (Volver) no funciona el ( else ) que tu dices. hay que hacer otra sentencia
if(dialogid == 101) //Si en el Dialogo "ID 101"
{
if (!response) //Reponde con el Boto derecho
{
ShowPlayerDefaultDialog2( playerid );//Ir al Dialogo "ShowPlayerDefaultDialog2" de vuelta
}
me explico?