ShowPlayerDialog(playerid, dialogid, style, caption[], info[], button1[], button2[])
playerid La id Del Jugador al Que se le va a Mostrar. dialogid La id Del Dialogo Definida en Los "define". style El Estilo Del Dialogo . caption[] El Titulo En La Parte Superior Del Dialogo . info[] El Texto a Mostrar en el Dialogo. Usa \n Para Comenzar una Nueva Linea y \t Para tabular. button1[] El texto con el botуn izquierdo. button2[] El texto con el botуn Derecho.
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
playerid La id Del Jugador al Que se le va a Mostrar. dialogid La id Del Dialogo Par que el Jugador Clickee la Funcion response boolean, true if first button was pressed, false if second button was pressed listitem Solo se usa en el DIALOG_STYLE_LIST . inputtext[] Solo se usa en el DIALOG_STYLE_INPUT, Es una Cadena De Entrada Con el Dialogo. Bueno Listo Ahora Podemos Proceder
if(!strcmp(cmdtext, "/bebidas", true))
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Que Desea ?", "Bebidas ($1)\nCerveza ($2)\nVino ($3)", "Comprar", "Cancelar");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)// Si se pulsa el primer botуn.
{
switch(dialogid)// Si sуlo tiene un cuadro de diбlogo, entonces esto no es necesario, pero es mбs Organizado para cuando se implementan mбs cuadros de diбlogo.
{
case 1:// Nuestro dialogo
{
switch(listitem)// Comprueba Si a Sido Seleccionado
{
case 0:// El Primer Boton Incluido
{
if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, 0xFFFFFF, "Usted No Tiene Suficiente Dinero Para pagar Esta Bebida!");//El GetPlayerMoney Significa que mira el Dinero al Jugador. <1 Esto Significa Que Debe Tener mas de 1 Dolar
GivePlayerMoney(playerid, -1);//El GivePLayerMoney -1 Significa Que le Quita 1 Dolar
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);// Esto es una animacion Despues les paso el link de las animaciones
}
case 1: // Esto es el segundo boton
{
if(GetPlayerMoney(playerid) < 2) return SendClientMessage(playerid, 0xFFFFFF, "Usted No Tiene suficiente Dinero.");
GivePlayerMoney(playerid, -2);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
}
case 2: // El Tercer boton
{
if(GetPlayerMoney(playerid) < 3) return SendClientMessage(playerid, 0xFFFFFF, "No Tiene dinero Para Pagar Esta bebida");
GivePlayerMoney(playerid, -3);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
}
}
}
}
}
return 1;
}
MSGBOX
if(!strcmp(cmdtext, "/Dormir", true))
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_MSGBOX, "Desea Dormir?", "Tienes Tiempo de Relajarte?", "Si", "No");//el 2 Se Define en #define 2
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)// Cuando pulsa el 1 Boton
{
switch(dialogid)// Comprueba el cuadro de dialogo que usamos
{
case 1:// Nuestro primer dialogo
{
switch(listitem)// Comprueba de Que Fue elejido
{
case 0: // la Primera funcion
{
if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, 0xFFFFFF, "Usted no Tiene Suficiente dinero.");
GivePlayerMoney(playerid, -1);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);
}
case 1: // Segundo Boton
{
if(GetPlayerMoney(playerid) < 2) return SendClientMessage(playerid, 0xFFFFFF, "Usted No Tiene suficiente dinero.");
GivePlayerMoney(playerid, -2);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
}
case 2: // Tercer boton
{
if(GetPlayerMoney(playerid) < 3) return SendClientMessage(playerid, 0xFFFFFF, "No tienes suficiente dinero.");
GivePlayerMoney(playerid, -3);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
}
}
}
//Apartir de Aca aсadiremos cosas
case 2:// El nuevo dialogo
{
ApplyAnimation(playerid,"BEACH","Lay_Bac_Loop",4.1,1,1,1,1,10);//Esto Aplicara la Animacion Durante 10 segundos
}
// Aca Termina
}
}
return 1;
}
if(!strcmp(cmdtext, "/saludar", true))
{
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_INPUT, "Saluda", "Escriba Aca su Saludo.", "Aceptar", "Cancelar");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)// Comprueba si se Pulsa Aceptar y Sigue:
{
switch(dialogid)//Si no esta en uso un cuadro de dialogo pero nunca se sabe
{
case 1:// Tu dialogo
{
switch(listitem)// Comprueba Que Fue Elejido
{
case 0: // El Primer Elemento
{
if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, 0xFFFFFF, "Usted no tiene suficiente dinero .");
GivePlayerMoney(playerid, -1);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_SPRUNK);
}
case 1: // Segundo item
{
if(GetPlayerMoney(playerid) < 2) return SendClientMessage(playerid, 0xFFFFFF, "Usted no tiene suficiente dinero ");
GivePlayerMoney(playerid, -2);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_BEER);
}
case 2: // El Tercer Item de la Lista
{
if(GetPlayerMoney(playerid) < 3) return SendClientMessage(playerid, 0xFFFFFF, "Usted no tiene suficiente dinero .");
GivePlayerMoney(playerid, -3);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
}
}
}
case 2:// El Nuevo Dialogo
{
ApplyAnimation(playerid,"BEACH","Lay_Bac_Loop",4.1,1,1,1,1,10);// Esto lo Relajara Durante 10 Segundos Osea Aplicara la Animacion.
}
// Nuestro Nuevo Dialogo
case 3:
{
if(strlen(inputtext) > 0)
{
SendPlayerMessageToAll(playerid, inputtext);
}
else
{
SendClientMessage(playerid,0xFFFFFFAA,"Su Mensaje fue Muy Corto");
}
}
// Aca terminamos.
}
}
return 1;
}
Gracias por sus Respuestas.
T1nCh010 Estoy analisando bien el Dialog Pasword Para No Publicar cosas incompletas o con Errores. |