13.10.2011, 20:19
como fais um dialog que nem o menu do gps ?
if(!strcmp(cmdtext,"/menu",true))
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST,"Exemplo de menu","Aqui\r\nFica\r\nAs\r\nOpзхes","Escolher","Cancelar");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1) // o mesmo id do que vocк usou acima...
{
if(response) // se o botгo for o '1' ou o botгo da esquerda...
{
if(listitem == 0) // a primeira opзгo que no caso й 'Aqui'
{
//funзгo...
return 1;
}
if(listitem == 1) // a segunda opзгo que no caso й 'Fica'
{
//funзгo
return 1;
}
// e por ai em diante '-'
}
return 1;
}
return 1;
}
if(dialogid == 9515) // o mesmo id do que vocк usou acima... { if(response) // se o botгo for o '1' ou o botгo da esquerda... { if(listitem == 0) // a primeira opзгo que no caso й 'Aqui' { SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro."); return 1; } if(listitem == 1) // a segunda opзгo que no caso й 'Fica' { SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro."); return 1; } if(listitem == 2) { SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro."); return 1; { if(listitem == 3) { SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro."); return 1; } return 1; } return 1; } return 1; } |
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 9515) // o mesmo id do que vocк usou acima...
{
if(response) // se o botгo for o '1' ou o botгo da esquerda...
{
if(listitem == 0) // a primeira opзгo que no caso й 'Aqui'
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
}
if(listitem == 1) // a segunda opзгo que no caso й 'Fica'
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
}
if(listitem == 2)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
}
if(listitem == 3)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
}
}
}
return 1;
}
if(dialogid == 9515) // o mesmo id do que vocк usou acima...
{
if(response) // se o botгo for o '1' ou o botгo da esquerda...
{
if(listitem == 0) // a primeira opзгo que no caso й 'Aqui'
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
}
if(listitem == 1) // a segunda opзгo que no caso й 'Fica'
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
}
if(listitem == 2)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
{
if(listitem == 3)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
}
}
return 1;
}
if(listitem == 2)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
{
if(listitem == 2)
{
SendClientMessage(playerid, COLOR_YELLOW, "Esta conta jб existe em nosso sistema de registros, por favor escolha outro.");
return 1;
}
Luigi darб erro novamente.
pawn Code:
pawn Code:
|
ShowPlayerDialog(........
ShowPlayerDialog(playerid, DIALOGID, STYLE, "Titulo", "Texto", "Botгo 1", "botгo 2");
ShowPlayerDialog(playerd, 124, DIALOG_STYLE_MSGBOX,"Testandoo.","Testo bбsico aqui...","Botao1","Botao2");
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{ //playerid = vocк, dialogid = ID do dialogo quando criado, response = resposta de botao 1 ou 2
// listitem = Item de lista caso seu dialog seja estilo LISTA
//inputtext = Item de um texto digitado na caixa de dialog caso seja estilo input
if(dialogid == X) // X й = ao numero do dialog usado para criar '-'
{
if(response == 0) // 0 = botгo 2 ou botгo direito..
{
// aqui vocк aplica as funзхes que quer que ele execute quando clicado...
return 1;
}
if(response == 1)// 1 = botгo 1 ou botгo esquerdo
{
//aqui vocк aplica as funзхes que quer que ele execute...
return 1;
}
return 1;
}
//CASO SEJA UM DIALOG DE LISTA
if(dialogid == X) // X й = ao numero do dialog usado por vocк '-'
{
if(response == 1) // resposta do primeiro botгo (esquerdo)
{
if(listitem == 0) // primeiro item da lista...
{
//funзхes do primeiro item da lista...
return 1;
}
if(listitem == 1) // a mesma mer.reca do primeiro... sendo que й o segundo item
{
//funзхes....
return 1;
}//e por ai emdiante de acordo com quantos itens vocк usar,
}
return 1;
}
//CASO SEJA UM DIALOG DE TEXTO OU INPUT
if(dialogid == X) // X й = ao numero do dialog usado por vocк '-'
{
if(response == 1) // response do primeiro botгo (esquerdo)
{
// Aqui farб as funзхes normais por EXEMPLO
//vou salvar oque vocк digitou em uma string...
new wiiStr[128]; //string
strcat(wiiStr,inputtext,sizeof( wiiStr ));
return 1;
}
return 1;
}
return 1;
}
//Exemplo de aplicaзгo em comando.
if(!strcmp(cmd,"/comando",true))
{
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Titulo", "Texto...", "Ok", "Cancelar");
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST,"Titulo","Item 1\r\nItem 2\r\nItem 3\r\nE Por ai em diante..","Selecionar","Cancelar");
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT,"Titulo","Texto para te convencer a digitar algo kkk","Confirmar","Cancelar");
return 1;
}//Observaзгo: ids de dialogs nгo podem ser o mesmos quando criados... Apenas quando forem ser aplicados na CallBack...
//Exemplo em tecla
if(newkeys == 1) // 1 = CTRL
{
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "Titulo", "Texto...", "Ok", "Cancelar");
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST,"Titulo","Item 1\r\nItem 2\r\nItem 3\r\nE Por ai em diante..","Selecionar","Cancelar");
//ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT,"Titulo","Texto para te convencer a digitar algo kkk","Confirmar","Cancelar");
return 1;
}//Observaзгo: ids de dialogs nгo podem ser o mesmos quando criados... Apenas quando forem ser aplicados na CallBack...
//OnPlayerCommandText
if(!strcmp(cmd,"/relato",true))
{
ShowPlayerDialog(playerid, 51512, DIALOG_STYLE_INPUT,"Relato","Informe o ocorrido","Enviar","Cancelar");
return 1;
}
//OnDialogResponse
if(dialogid == 51512) // veja que o id usado para criar й o mesmo usado para manusea-lo
{
if(response) //resposta do botгo 1 (esquerdo) que no caso й 'enviar'
{
new
wiiStr[128], //string nova
wiiN[MAX_PLAYER_NAME]//string nova
;
GetPlayerName(playerid, wiiN, sizeof( wiiN ));//Getando o seu nome para 'wiiN'
for(new i, x = GetMaxPlayers(); i < x; i++)//fazendo um loop para identificar admins
{
if(PlayerInfo[i][pAdmin] >= 1) //se tiver admins level 1 pra cima ele continua...
{ //troque PlayerInfo pela sua variбvel de admins...
format(wiiStr,sizeof( wiiStr ), "%s: %s",wiiN, inputtext); //format para pegar o seu nome e o seu texto.
SendClientMessage(i, -1, wiiStr);//Enviando o texto para os admins.
return 1;
}
}
}
return 1;
}
//OnPlayerCommandText
if(strcmp(cmd,"/relato",true) == 0)
{
ShowPlayerDialog(playerid, 916662, DIALOG_STYLE_INPUT,"Relato","Informe o ocorrido","Enviar","Cancelar");
return 1;
}
//OnDialogResponse
if(dialogid == 916662) // veja que o id usado para criar й o mesmo usado para manusea-lo
{
if(response) //resposta do botгo 1 (esquerdo) que no caso й 'enviar'
{
new
wiiStr[128], //string nova
wiiN[MAX_PLAYER_NAME]//string nova
;
GetPlayerName(playerid, wiiN, sizeof( wiiN ));//Getando o seu nome para 'wiiN'
for(new i, x = GetMaxPlayers(); i < x; i++)//fazendo um loop para identificar admins
{
if(PlayerInfo[i][pAdmin] >= 1) //se tiver admins level 1 pra cima ele continua...
{ //troque PlayerInfo pela sua variбvel de admins...
format(wiiStr,sizeof( wiiStr ), "%s: %s",wiiN, inputtext); //format para pegar o seu nome e o seu texto.
SendClientMessage(i, -1, wiiStr);//Enviando o texto para os admins.
return 1;
}
}
}
return 1;
}