SA-MP Forums Archive
[Ajuda] Comparaзгo de inputtext com uma variбvel com matriz. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Comparaзгo de inputtext com uma variбvel com matriz. (/showthread.php?tid=645059)



Comparaзгo de inputtext com uma variбvel com matriz. - Pool - 19.11.2017

Bom, estou querendo que uma dialog em um estilo de texto, consiga detectar o valor que eu armazenei em uma variбvel, porйm nгo consigo...
Estou tentando fazer dessa forma, e nгo funciona...
PHP код:
new Enter[] = 
{
   
0001,
   
0002
};
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
   if(
dialogid == var)
   {
      if(!
response) return Kick(playerid);
      if(
response)
      {
          if(
inputtext == Enter[])
          {
              
/* O erro ocorre na condicional acima, se puderem me ajudar, fico grato!*/
          
}
      }
   }
   return 
true;




Re: Comparaзгo de inputtext com uma variбvel com matriz. - RogerCosta - 19.11.2017

Vocк tem que passar o inputtext pra int usando o strval.

strval(inputtext)

E tem que passar a index dentro da array Enter, exemplo

if(strval(inputtext) == Enter[0]) {} // Verifica se o nъmero digitado no dialog й igual a 0009
} else if(strval(inputtext) == Enter[1]) {} // Verifica se o nъmero digitado no dialog й igual a 0011


Re: Comparaзгo de inputtext com uma variбvel com matriz. - Pool - 19.11.2017

Quote:
Originally Posted by RogerCosta
Посмотреть сообщение
Vocк tem que passar o inputtext pra int usando o strval.

strval(inputtext)

E tem que passar a index dentro da array Enter, exemplo

if(strval(inputtext) == Enter[0]) {} // Verifica se o nъmero digitado no dialog й igual a 0009
} else if(strval(inputtext) == Enter[1]) {} // Verifica se o nъmero digitado no dialog й igual a 0011
Suponhamos, dessa forma?:
Obs.: O compilador nгo apresentou erros.
PHP код:
        if(!response) return SendClientMessage(playerid, -1"Funзгo cancelada com sucesso.");
        if(
response)
        {
            
Enter[0] = strval(inputtext);
            
Enter[1] = strval(inputtext);
            if(
strval(inputtext) == Enter[0])
            {
            }
            else
            {
                if(
strval(inputtext) == Enter[1])
                {
                }
            }
        } 



Re: Comparaзгo de inputtext com uma variбvel com matriz. - Whoo - 19.11.2017

Nгo, da forma a cima vocк esta fazendo o vetor receber o valor de inputtext, vocк tem que fazer como o roger disse, pode utilizar um loop para percorrer as indices tambйm.


Re: Comparaзгo de inputtext com uma variбvel com matriz. - Pool - 19.11.2017

Quote:
Originally Posted by Whoo
Посмотреть сообщение
Nгo, da forma a cima vocк esta fazendo o vetor receber o valor de inputtext, vocк tem que fazer como o roger disse, pode utilizar um loop para percorrer as indices tambйm.
Assim?
Eu tenho bastante dificuldade em relaзгo a matrizes. Se puderem me enviar algum tipo de tutorial ou explicaзгo sobre o assunto, fico agradecido!
PHP код:
        if(!response) return SendClientMessage(playerid, -1"Funзгo cancelada com sucesso.");
        if(
response)
        {
            for(new 
i2i++)
            {
                if(
strval(inputtext) == Enter[i])
                {
                }
                else
                {
                    if(
strval(inputtext) == Enter[i])
                    {
                    }
                }
            }
        } 



Re: Comparaзгo de inputtext com uma variбvel com matriz. - Whoo - 19.11.2017

O loop vai percorrer todas as indices do vetor, entгo a verificaзгo vai ocorrer em todas as indices, sempre utilize sizeof para saber o tamanho da variбvel que esta acessando.

PHP код:
  if(response
  { 
            for(new 
isizeof(Enter); i++) 
            { 
                if(
strval(inputtext) == Enter[i]) 
                { 
                }
        }

Estou pelo celular


Re: Comparaзгo de inputtext com uma variбvel com matriz. - RogerCosta - 19.11.2017

Isso, assim mesmo. Como o Whoo comentou, use o loop (como vocк fez corretamente), e use a tag sizeof, assim ele pega o tamanho da sua array (Enter). Sу otimizando mais ainda o loop, faзa assim:

for(new i, k = sizeof(Enter); i < k; i++)

Edit: use a tag break no final do if, para parar o loop, pois se a verificaзгo for verdadeira, nгo hб necessidade do loop continuar rodando.


Re: Comparaзгo de inputtext com uma variбvel com matriz. - Pool - 19.11.2017

Quote:
Originally Posted by Whoo
Посмотреть сообщение
O loop vai percorrer todas as indices do vetor, entгo a verificaзгo vai ocorrer em todas as indices, sempre utilize sizeof para saber o tamanho da variбvel que esta acessando.

PHP код:
  if(response
  { 
            for(new 
isizeof(Enter); i++) 
            { 
                if(
strval(inputtext) == Enter[i]) 
                { 
                }
        }

Estou pelo celular
Obrigado!
Se puderem me enviar os tutoriais com matriz, fico muito agradecido!