SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 22/07/2018, 12:59 AM   #1
CypherInsano
Little Clucker
 
Join Date: Jul 2018
Posts: 13
Reputation: 0
Default Menu em Dialog

Quando clico no primeiro item, ele não mostra o segundo menu do dialog, por que?!
Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
	if(strcmp(cmdtext, "/lojaapple", true) == 0)
	{
 		ShowPlayerDialog(playerid, 0, DIALOG_STYLE_TABLIST_HEADERS, "Apple", "Produtos\tServiço\nCelulares\tApple\nComputadores\tApple\nNotebooks\tApple", "Selecionar", "Fechar");
	}
 	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == 0)
	{
	    if(response)
	    {
			if(listitem == 0)
			{
			    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_TABLIST_HEADERS, "Apple", "Produtos\tPreço\niPhone X\t$6999\niPhone 8 Plus\t$4599\niPhone 8\t$3999\niPhone 7 Plus\t$3799\niPhone 7\t$3199", "Selecionar", "Fechar");
			}
			
			if(listitem == 1)
			{
			    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_TABLIST_HEADERS, "Apple", "Produtos\tPreço\niMac\t$9799\niMac Pro\t$37999", "Selecionar", "Fechar");
			}
	    }
	}
 	return 1;
}
CypherInsano is offline   Reply With Quote
Old 22/07/2018, 01:09 AM   #2
InsaneBR
Big Clucker
 
InsaneBR's Avatar
 
Join Date: Feb 2018
Posts: 85
Reputation: 5
Default Re: Menu em Dialog

Topo do GM:
PHP Code:
#define dLojaApple 100
#define dLA1 101
#define dLA2 102 
PS: Mude os valores(ids) se você já usou para definir outra dialog com o mesmo.

Após definir, mude o parâmetro dialogid.
PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/lojaapple"true) == 0) {
        
ShowPlayerDialog(playeriddLojaAppleDIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tServiço\nCelulares\tApple\nComputadores\tApple\nNotebooks\tApple""Selecionar""Fechar");
        return 
1;
    }
    return 
0;
}

public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == dLojaApple)
    {
        if(
response)
        {
            if(
listitem == 0)
            {
                
ShowPlayerDialog(playeriddLA1DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niPhone X\t$6999\niPhone 8 Plus\t$4599\niPhone 8\t$3999\niPhone 7 Plus\t$3799\niPhone 7\t$3199""Selecionar""Fechar");
            }
            
            if(
listitem == 1)
            {
                
ShowPlayerDialog(playeriddLA2DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niMac\t$9799\niMac Pro\t$37999""Selecionar""Fechar");
            }
        }
    }
    return 
1;


Last edited by InsaneBR; 22/07/2018 at 12:32 PM.
InsaneBR is offline   Reply With Quote
Old 22/07/2018, 01:27 AM   #3
AutoMatic2
Huge Clucker
 
Join Date: Apr 2018
Posts: 244
Reputation: 6
Default Re: Menu em Dialog

tem 2 dialogs definidas como 1
AutoMatic2 is online now   Reply With Quote
Old 22/07/2018, 10:51 AM   #4
CypherInsano
Little Clucker
 
Join Date: Jul 2018
Posts: 13
Reputation: 0
Default Re: Menu em Dialog

Ele continua não mostrando nenhum dos itens do menu :\
CypherInsano is offline   Reply With Quote
Old 22/07/2018, 11:10 AM   #5
CypherInsano
Little Clucker
 
Join Date: Jul 2018
Posts: 13
Reputation: 0
Default Re: Menu em Dialog

Quote:
Originally Posted by InsaneBR View Post
Topo do GM:
PHP Code:
#define dLojaApple 100
#define dLA1 101
#define dLA2 102 
PS: Mude os valores(ids) se você já usou para definir outra dialog com o mesmo.

Após definir, mude o parâmetro dialogid.
PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/lojaapple"true) == 0)
    {
         
ShowPlayerDialog(playeriddLojaAppleDIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tServiço\nCelulares\tApple\nComputadores\tApple\nNotebooks\tApple""Selecionar""Fechar");
    }
    return 
1;
}

public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == dLojaApple)
    {
        if(
response)
        {
            if(
listitem == 0)
            {
                
ShowPlayerDialog(playeriddLA1DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niPhone X\t$6999\niPhone 8 Plus\t$4599\niPhone 8\t$3999\niPhone 7 Plus\t$3799\niPhone 7\t$3199""Selecionar""Fechar");
            }
            
            if(
listitem == 1)
            {
                
ShowPlayerDialog(playeriddLA2DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niMac\t$9799\niMac Pro\t$37999""Selecionar""Fechar");
            }
        }
    }
    return 
1;

Ele mostra o primeiro menu, ao digitar o comando, mas ele não mostra nenhum dos outros após fazer essa alteração no código, o que fazer?
CypherInsano is offline   Reply With Quote
Old 22/07/2018, 12:40 PM   #6
InsaneBR
Big Clucker
 
InsaneBR's Avatar
 
Join Date: Feb 2018
Posts: 85
Reputation: 5
Default Re: Menu em Dialog

Perdão, eu não percebi o return true abaixo do comando e, sua OnPlayerCommandText está incorreta, nunca iria retornar erro(SERVER: Unknown command.) caso o comando fosse inválido nos scripts usados pelo servidor, neste caso.

Mude-a para
PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/lojaapple"true) == 0) {
         
ShowPlayerDialog(playeriddLojaAppleDIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tServiço\nCelulares\tApple\nComputadores\tApple\nNotebooks\tApple""Selecionar""Fechar");
        return 
1;
    }

    return 
0;

Você precisa retornar true para cada dialogid assim como usa-se para cada comando na OnPlayerCommandText.
PHP Code:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == dLojaApple)
    {
        if(
response)
        {
            if(
listitem == 0)
            {
                
ShowPlayerDialog(playeriddLA1DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niPhone X\t$6999\niPhone 8 Plus\t$4599\niPhone 8\t$3999\niPhone 7 Plus\t$3799\niPhone 7\t$3199""Selecionar""Fechar");
            }

            if(
listitem == 1)
            {
                
ShowPlayerDialog(playeriddLA2DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niMac\t$9799\niMac Pro\t$37999""Selecionar""Fechar");
            }
        }
        return 
1;
    }
    return 
0;

Após ter feito isso, note que estará listando apenas Celulares(listitem 0) e Computadores(listitem 1) na callback OnDialogResponse, falta a opção Notebooks que você ainda não a criou(listitem 2).
InsaneBR is offline   Reply With Quote
Old 22/07/2018, 02:31 PM   #7
CypherInsano
Little Clucker
 
Join Date: Jul 2018
Posts: 13
Reputation: 0
Default Re: Menu em Dialog

Quote:
Originally Posted by InsaneBR View Post
Perdão, eu não percebi o return true abaixo do comando e, sua OnPlayerCommandText está incorreta, nunca iria retornar erro(SERVER: Unknown command.) caso o comando fosse inválido nos scripts usados pelo servidor, neste caso.

Mude-a para
PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/lojaapple"true) == 0) {
         
ShowPlayerDialog(playeriddLojaAppleDIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tServiço\nCelulares\tApple\nComputadores\tApple\nNotebooks\tApple""Selecionar""Fechar");
        return 
1;
    }

    return 
0;

Você precisa retornar true para cada dialogid assim como usa-se para cada comando na OnPlayerCommandText.
PHP Code:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == dLojaApple)
    {
        if(
response)
        {
            if(
listitem == 0)
            {
                
ShowPlayerDialog(playeriddLA1DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niPhone X\t$6999\niPhone 8 Plus\t$4599\niPhone 8\t$3999\niPhone 7 Plus\t$3799\niPhone 7\t$3199""Selecionar""Fechar");
            }

            if(
listitem == 1)
            {
                
ShowPlayerDialog(playeriddLA2DIALOG_STYLE_TABLIST_HEADERS"Apple""Produtos\tPreço\niMac\t$9799\niMac Pro\t$37999""Selecionar""Fechar");
            }
        }
        return 
1;
    }
    return 
0;

Após ter feito isso, note que estará listando apenas Celulares(listitem 0) e Computadores(listitem 1) na callback OnDialogResponse, falta a opção Notebooks que você ainda não a criou(listitem 2).
Ele continua não mostrando, o que eu faço? Está tudo certinho, como você fez no código, mas ele simplesmente não mostra os dialogs dos menus.
CypherInsano is offline   Reply With Quote
Old 22/07/2018, 02:45 PM   #8
InsaneBR
Big Clucker
 
InsaneBR's Avatar
 
Join Date: Feb 2018
Posts: 85
Reputation: 5
Default Re: Menu em Dialog

Aqui está funcionando normal, de qualquer forma te mandei um PM para mais informações.
InsaneBR is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Menu Dialog c/ CMD FernandoSS Português/Portuguese 2 12/07/2014 11:17 PM
[BUG]Tab menu / Dialog antonio112 Scripting Help 3 18/03/2012 08:05 AM
Dialog menu help Sepelin Help Archive 0 15/02/2011 11:22 PM
dialog menu [Lsrcr]Rafa Help Archive 4 12/09/2010 12:08 PM
Help me!!!! with dialog menu!!!! jpboy1 Help Archive 8 21/08/2010 08:25 AM


All times are GMT. The time now is 08:11 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.