[Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 04.12.2012
Estou criando o menu de um loja de armas e estб mais ou menos assim:
1.Seleciona a categoria desejada: Pistolas, Sub-Metralhadoras, etc.;
2.Escolhe a arma desejada: Categoria selecionada>Modelos das Armas;
3.Depois da arma escolhida vem um Dialog para informar a quantia de muniзгo que o jogador queira;
Este seria o algoritmo para comprar uma arma em meu sistema, o que eu queria й conseguir identificar a quantia de muniзгo que o jogador informou no Dialog e para poder adicionar o GivePlayerWeapon(playerid, idarma, quantiamunicaoinformadanodialod).
Re: [Ajuda] "Pegar" resposta de um Dialog. -
Sky™ - 04.12.2012
pawn Код:
if(dialogid == dialogid)//dialog de escolha das muniзхes
{
if(response)
{
new strg[50];
//funзгo da muniзгo!
format(strg, sizeof(strg), "{A9A9A9}blablabla %d",inputtext);//aki fala o quanto ele escolheu ou informou no dialog!
SendClientMessageToAll(-1, strg);
}
return 1;
}
Re: [Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 04.12.2012
beleza Sky, hj a noite eu testo pq agr eu estou pelo celular.
valeu!
Re: [Ajuda] "Pegar" resposta de um Dialog. -
Hayden_Almeida - 04.12.2012
Eu fiz um sistema assim , se precisar depois te passo...
Re: [Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 04.12.2012
Ok, sу vou conseguir coddar hoje a noite.
Estou no trabalho agora haha sem SA-MP aqui ):
Re: [Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 06.12.2012
Nгo estou conseguindo puxar a resposta do Dialog e colocar pra dar a muniзгo pro jogador.
pawn Код:
if(dialogid == DIALOG_PISTWEAPONS && response)//Pistolas
{
switch(listitem)
{
case 0: //9mm
{
ShowPlayerDialog(playerid, DIALOG_PISTWEAPONS_1, DIALOG_STYLE_INPUT, "Muniзгo", "Informe a quantia de muniзгo que deseja para sua nova 9mm:", "Comprar", "Sair");
if(dialogid == DIALOG_PISTWEAPONS)
{
if(response)
{
new stringmunicao[50];
format(stringmunicao, sizeof(stringmunicao), "Muniзгo: %d", inputtext);
GivePlayerMoney(playerid, -650);
GivePlayerWeapon(playerid, 22, ????);
}
}
}
Respuesta: [Ajuda] "Pegar" resposta de um Dialog. -
kratty - 06.12.2012
Siga essa base:
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case 1: //ID da dialog
{
if(response)
{
switch(listitem)
{
case 0: //9mm
{
GivePlayerMoney(playerid, -650);
GivePlayerWeapon(playerid, 22, ????);
}
case 1: //Shotgun
{
GivePlayerMoney(playerid, -650);
GivePlayerWeapon(playerid, 22, ????);
}
}
}
}
}
return 1;
}
Re: [Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 06.12.2012
Entгo, o cуdigo que vocк mandou funciona sim. Mas o que eu quero й que o valor que o jogador digitar й a quantia de muniзгo que deve ser fornecida a ele.
Na linha onde tem o
GivePlayerWeapon(playerid, idarma, ? ? ?), os pontos de interrogaзгo seria a vбriavel que recebeu o valor da resposta do Dialog.
Nгo estou conseguindo fazer isso.
Respuesta: [Ajuda] "Pegar" resposta de um Dialog. -
kratty - 06.12.2012
Use ao voce selecionar a arma use um estilo de dialog (DIALOG_STYLE_INPUT)
Ao ele apertar em "comprar" ou aceitar, que seja, voce seta a muniзгo como
PHP код:
strval(inputtext)
//inputtext - й o q ele vai digitar na caixa da dialog
//strval - para ser apenas nъmeros
Ficando assim:
PHP код:
GivePlayerWeapon(playerid, 22, strval(inputtext));
Obs: Nгo lembro se assim da certo, se nгo der verifique se o que ele digitou й NUMERO, se for vc seta apenas como
inputtext
Se caso tiver dъvidas, veja o link:
OnDialogResponse
Espero ter ajudado
Re: [Ajuda] "Pegar" resposta de um Dialog. -
lgoulart - 06.12.2012
Beleza Kratty!
A noite eu testo, valeu.
+1Rep pra vc.