SA-MP Forums

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

Reply
 
Thread Tools Display Modes
Old 26/12/2019, 02:29 PM   #21
AdrianoStk
Huge Clucker
 
AdrianoStk's Avatar
 
Join Date: Jan 2013
Location: Presidente Prudente-SP
Posts: 477
Reputation: 32
Default Re: tem como usar o switch assim?

Exemplo 1

PHP Code:
new variavel[100]; //Cria um vetor de variavel com tamanho 100 (equivalente a 100 váriaveis ou um vetor de caracteres)

stock funcao()
{
    
variavel[0] = 1;//Variavel na posição 0 recebe valor 1
    
variavel[2] = 10;//Variavel na posição 2 recebe valor 10
    
new 0;//i vai ser o indice e por sua vez acessara a posição 0 do vetor (variavel)
    
switch(variavel[i])
    {
        case 
1://Caso o valor da variavel[i] seja 1
        
{
        }
        case 
2://Caso o valor da variavel[i] seja 1
        
{
        }
        case 
3://Caso o valor da variavel[i] seja 1
        
{
        }
        case 
4..10://Caso o valor esteva entre 4 e 10
        
{
        }
        default:
//Opicional, caso não encontre nenhum valor!
        
{
        }
    }


Exemplo 2

PHP Code:
enum abc
{
    
variavel,
    
teste,
    
gloselia
}
new 
algumacoisa[100][abc]; //Cria um vetor de variaveis com tamanho 100 da enum abc...


stock funcao2()
{
    
algumacoisa[0][teste] = 10//Setamos o valor da variavel teste como 10, por sua vez ela esta armazenada no posição 0 do vetor
    
new 0;//i vai ser o indice e por sua vez acessara a posição 0 do vetor
    
switch(algumacoisa[i][teste])
    {
        case 
1://Caso o valor da algumacoisa[i][teste] seja 1
        
{
        }
        case 
2://Caso o valor da algumacoisa[i][teste] seja 1
        
{
        }
        case 
3://Caso o valor da algumacoisa[i][teste] seja 1
        
{
        }
        case 
4..10://Caso o valor esteva entre 4 e 10
        
{
        }
        default:
//Opicional, caso não encontre nenhum valor!
        
{
        }
    }


Exemplo inválido!


PHP Code:
enum xxx
{
    
abacate,
    
vetor[100]
}
new 
vl[10][xxx];
switch(
vl[i][vetor[10]])//Impossivel o pawn não consegue acessar! 
__________________
Hayllander Server's


Breve, nos servidores


Discord
AdrianoStk is offline   Reply With Quote
Old 26/12/2019, 02:40 PM   #22
Hatiro
Huge Clucker
 
Join Date: Mar 2019
Posts: 303
Reputation: 5
Default Re: tem como usar o switch assim?

warning 213: tag mismatch
warning 213: tag mismatch
error 033: array must be indexed (variable "DrawsTxt")
error 035: argument type mismatch (argument 2)
Code:
new PlayerText:DrawsTxt[MAX_PLAYERS][13];
for(new i = 0; i < sizeof(DrawsTxt); i++)
			{
			    if(playertextid >= 2 && playertextid <= 8)
			    {
			    	if(playertextid == DrawsTxt[i])
			   		 {
			        printf("clicou na textdraw de index %i", i);
			        
			        TextDrawHideForPlayer(playerid, DrawsTxt[i]); //exemplo, para esconder a textdraw
			        break;
			    	}
			    }
			}
edit: prints https://prnt.sc/qg16pv,https://prnt.sc/qg1774
Hatiro is offline   Reply With Quote
Old 26/12/2019, 03:06 PM   #23
RiqueP
Gangsta
 
RiqueP's Avatar
 
Join Date: Jan 2014
Location: 01010011 01010000
Posts: 875
Reputation: 64
Default Re: tem como usar o switch assim?

Ainda não entendi porra nenhuma, mas:
PHP Code:
if(playertextid >= PlayerText:&& playertextid <= PlayerText:8
@EDIT
O código da primeira SS, você deve tirar esses trecho:
PHP Code:
if(playertextid == DrawsTxt[playerid][10]) 
Isso aqui é redundante visto que o loop está indo de 2 à 8.
PHP Code:
if(playertextid >= PlayerText:&& playertextid <= PlayerText:8
RiqueP is offline   Reply With Quote
Old 26/12/2019, 03:16 PM   #24
Hatiro
Huge Clucker
 
Join Date: Mar 2019
Posts: 303
Reputation: 5
Default Re: tem como usar o switch assim?

tem como eu fazer alguma coisa do tipo?
Code:
if(playertextid == DrawsTxt[playerid][10] &&  playertextid >= PlayerText:2 && playertextid <= PlayerText:8) 
{
}
DrawsTxt[playerid][10]// é importante
edit: esqueci de pergunta oq é ss
Hatiro is offline   Reply With Quote
Old 26/12/2019, 03:21 PM   #25
RodrigoMSR
High-roller
 
RodrigoMSR's Avatar
 
Join Date: Mar 2015
Location: Brazil
Posts: 1,068
Reputation: 140
Default Re: tem como usar o switch assim?

Veja se é isso:
pawn Code:
new PlayerText:DrawsTxt[MAX_PLAYERS][13];

for(new i = 0; i < sizeof(DrawsTxt[]); i++)
{
    if(playertextid == DrawsTxt[playerid][i])
    {
        switch(i)
        {
            case 2..8:
            {
                printf("clicou na textdraw de index %i", i);
           
                PlayerTextDrawHide(playerid, DrawsTxt[playerid][i]); //exemplo, para esconder a textdraw
            }
        }
        break;
    }
}
__________________
sttserver.net

RodrigoMSR is offline   Reply With Quote
Old 26/12/2019, 03:22 PM   #26
RiqueP
Gangsta
 
RiqueP's Avatar
 
Join Date: Jan 2014
Location: 01010011 01010000
Posts: 875
Reputation: 64
Default Re: tem como usar o switch assim?

Quote:
Originally Posted by Hatiro View Post
tem como eu fazer alguma coisa do tipo?
Code:
if(playertextid == DrawsTxt[playerid][10] &&  playertextid >= PlayerText:2 && playertextid <= PlayerText:8) 
{
}
DrawsTxt[playerid][10]// é importante
edit: esqueci de pergunta oq é ss
Isso não tem lógica nenhuma cara. Você está pensando da forma errada!

OBS: SS é screenshot. Foram os prints que você mandou.
RiqueP is offline   Reply With Quote
Old 26/12/2019, 03:57 PM   #27
Hatiro
Huge Clucker
 
Join Date: Mar 2019
Posts: 303
Reputation: 5
Default Re: tem como usar o switch assim?

RodrigoMSR resolveu valeu e obrigado ajuda de todos
Hatiro 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
[Off] Acham melhor continuar assim ou usar hooks ou outras ideias? CALENZ021 Português/Portuguese 18 24/10/2019 11:50 AM
[Ajuda] Como criar tutorial assim? pedrotvr Português/Portuguese 6 28/12/2014 03:06 AM
[Ajuda] Como assim? StringBR Português/Portuguese 7 04/06/2013 11:18 PM
[Ajuda] Como assim? Rijin Português/Portuguese 0 04/09/2012 04:17 AM


All times are GMT. The time now is 05:23 PM.


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