#define DIALOG 1 //defino DIALOG
//este es el comando:
if (strcmp("/vehiculos" , cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid, DIALOG, DIALOG_STYLE_LIST, "VEHICULOS:", "Autos\nMotos", "Seleccionar", "Cancelar");
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)
{
new vehicle, Float:x, Float:y, Float:z, Float:angle;
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, angle );
switch(dialogid)
{
case 1:
{
ShowPlayerDialog(playerid,DIALOG, DIALOG_STYLE_LIST, "Autos", "Infernus\nTurismo", "Seleccionar", "Cancelar");
if(response)
{
switch(listitem)
{
case 0:
{
vehicle = CreateVehicle( 411, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 1:
{
vehicle = CreateVehicle( 451, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
}
}
}
case 2:
{
ShowPlayerDialog(playerid, DIALOG+1, DIALOG_STYLE_LIST, "Motos", "FCR-900\nNRG-500", "Seleccionar", "Cancelar");
if(response)
{
switch(listitem)
{
case 0:
{
vehicle = CreateVehicle( 521, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 1:
{
vehicle = CreateVehicle( 522, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
}
}
}
}
}
return 1;
}
ShowPlayerDialog(playerid,DIALOG, DIALOG_STYLE_LIST, "Autos", "Infernus\nTurismo", "Seleccionar", "Cancelar");
|
Segъn tu cуdigo siempre te mostrara el mismo dialog.
Dentro del case 1 del switch tienes este cуdigo: pawn Код:
|
ShowPlayerDialog(playerid,ID_DIALOG, DIALOG_STYLE_LIST, "Autos", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
#define ID_DIALOG (1)
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
new vehicle, Float:x, Float:y, Float:z, Float:angle;
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, angle );
switch(dialogid){
case ID_DIALOG:{
if(response){
switch(listitem){
case 0:{
vehicle = CreateVehicle( 411, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 1:{
vehicle = CreateVehicle( 451, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 2:{
vehicle = CreateVehicle( 521, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 3:{
vehicle = CreateVehicle( 522, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
//ETC...
}
}
}
}
return false;
}
|
pawn Код:
pawn Код:
|
switch(dialogid){
case ID_DIALOG+0:{
if(response){
switch(listitem){
case 0:{
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
//ETC...
}
}
}
}
switch(dialogid){ //menu 1
case ID_DIALOG+1:{
if(response){
switch(listitem){
case 0:{{
//ACA TU FUNCION
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
case 1:{{
//ACA TU FUNCION
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
case 2:{{
//ACA TU FUNCION
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
case 3:{{
//ACA TU FUNCION
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
//ETC...
}
}else{ //cuando cancelas el menu vuelve al principal
ShowPlayerDialog(playerid,ID_DIALOG+1, DIALOG_STYLE_LIST, "MMenu Autos 1", "coche1\coche2\ncoche3\ncoche4", "Seleccionar", "Cancelar");
}
}
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)
{
new vehicle, Float:x, Float:y, Float:z, Float:angle;
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, angle );
switch(dialogid)
{
case 1:
{
//Aquн tu error ====> ShowPlayerDialog(playerid,DIALOG, DIALOG_STYLE_LIST, "Autos", "Infernus\nTurismo", "Seleccionar", "Cancelar");
// Eso se ejecutaba antes del switch y por eso no funcionaba
if(response)
{
switch(listitem)
{
case 0:
{
vehicle = CreateVehicle( 411, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 1:
{
vehicle = CreateVehicle( 451, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
}
}
}
case 2:
{
ShowPlayerDialog(playerid, DIALOG+1, DIALOG_STYLE_LIST, "Motos", "FCR-900\nNRG-500", "Seleccionar", "Cancelar");
if(response)
{
switch(listitem)
{
case 0:
{
vehicle = CreateVehicle( 521, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
case 1:
{
vehicle = CreateVehicle( 522, x, y, z, angle, -1, -1, -1);
LinkVehicleToInterior( vehicle, GetPlayerInterior( playerid ) );
SetVehicleVirtualWorld( vehicle, GetPlayerVirtualWorld( playerid ) );
PutPlayerInVehicle(playerid,vehicle,0);
}
}
}
}
}
}
return 1;
}