13.10.2011, 22:19
Explicaзгo como usar a CallBack...
Explicaзгo como aplicar em comandos updates e etc.
Quando vocк cria um dialog 'ShowPlayerDialog' o mesmo id do dialog criado. Tem que ser usado na callback como 'if(dialogid == X)' para poder identificar o tal dialog, e executar a tal funзгo escrita por vocк.
pawn Code:
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;
}
pawn Code:
//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...

