SA-MP Forums

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

Reply
 
Thread Tools Display Modes
Old 22/08/2019, 08:34 PM   #1
FilipiMelo
Big Clucker
 
FilipiMelo's Avatar
 
Join Date: Nov 2016
Location: Vila do Sr. Barriga
Posts: 66
Reputation: 0
Question Dúvida sobre VARIAVEIS

Olá pessoal, estava estudando pawn quando surgiu uma dúvida, porque eu precisaria usar uma variável se eu posso adicionar o valor sem precisar da variável? A variavel n serve apenas pra armazenar um valor?

Estou quebrando a cabeça pra entender a lógica de variáveis...

Last edited by FilipiMelo; 22/08/2019 at 09:52 PM.
FilipiMelo is offline   Reply With Quote
Old 22/08/2019, 08:47 PM   #2
Delete_
High-roller
 
Delete_'s Avatar
 
Join Date: Mar 2011
Location: Gurupi - TO
Posts: 1,736
Reputation: 110
Default Re: Dúvida

Explica melhor
__________________
Araguaia Roleplay
Delete_ is offline   Reply With Quote
Old 22/08/2019, 09:42 PM   #3
FilipiMelo
Big Clucker
 
FilipiMelo's Avatar
 
Join Date: Nov 2016
Location: Vila do Sr. Barriga
Posts: 66
Reputation: 0
Default Re: Dúvida

exemplo:
new MinhaVariavel;
MinhaVariavel = CreateVehicle(522, 5457.47, 567.788, 0.0, -1,-1, 9);

Eu não poderia por direto:
CreateVehicle(522, 5457.47, 567.788, 0.0, -1,-1, 9);
FilipiMelo is offline   Reply With Quote
Old 22/08/2019, 09:54 PM   #4
Felipealves
Huge Clucker
 
Felipealves's Avatar
 
Join Date: Mar 2016
Location: Paraná
Posts: 358
Reputation: 16
Default Re: Dúvida

Por que você pode acessar o id do veiculo que vai está armazenado na variável, mas é opcional, se você não for usar para nada.

Ex: precisa verificar se um jogador entrou no veiculo ID da Org tal, você precisa da variável.
de resto se for para deixar o veiculo parado la e tds forem usar nem precisa.
__________________
Felipealves is offline   Reply With Quote
Old 22/08/2019, 10:05 PM   #5
FilipiMelo
Big Clucker
 
FilipiMelo's Avatar
 
Join Date: Nov 2016
Location: Vila do Sr. Barriga
Posts: 66
Reputation: 0
Default Re: Dúvida

Ficaria tipo:
new Organização

#if (playerid != Organização);
{
SendClientMensage (playerid, "Você não pode entrar nesse veículo");
}

(Obs: Não sei se os comandos então certos, pois estou aprendendo, mas a lógica seria essa?)
__________________
FilipiMelo is offline   Reply With Quote
Old 22/08/2019, 11:10 PM   #6
Ermanhaut
Gangsta
 
Ermanhaut's Avatar
 
Join Date: Apr 2016
Location: Curitiba
Posts: 635
Reputation: 47
Default Re: Dúvida

Quando você atribui uma função à uma variável você está fazendo com que ela receba o valor retornado pela função.
Usarei seu exemplo:
Code:
new MinhaVariavel;
MinhaVariavel = CreateVehicle(522, 5457.47, 567.788, 0.0, -1,-1, 9); // A função CreateVehicle retornará o ID do veículo criado, fazendo com que MinhaVariavel tenha o valor 1, caso este seja o primeiro veículo criado.
Uma aplicação desta função é salvar as informações de um veículo criado, por exemplo, por admins.

PHP Code:
// Por exemplo: Comando /adminveiculo
new AdminVehicle CreateVehicle(/*parametros*/); // Criamos um carro para o admin
new text[64];
format(textsizeof(text), "Você criou um veículo com o ID %d, ele será destruído em 120 segundos."AdminVehicle); // Mensagem simples para avisar o ID do veículo e informar o tempo de vida do veiculo
SendClientMessage(playerid, -1text); // Enviando mensagem
SetTimerEx("publicDestroyAdminVehicle"1200, -1"d"AdminVehicle); // Criamos um timer que executará a função de destruir o carro, utilizando a informação da variável AdminVehicle

forward publicDestroyAdminVehicle(vehicleid); public publicDestroyAdminVehicle(vehicleid) {
  return 
DestroyVehicle(vehicleid); // FUnção para destruir o veículo

Para saber o que será retornado por cada função utilize este site. Procure a função desejada e olhe o Return Values.
__________________
try, try and try again
Ermanhaut is offline   Reply With Quote
Old 22/08/2019, 11:45 PM   #7
willttoonn
Gangsta
 
willttoonn's Avatar
 
Join Date: Nov 2011
Location: Brazil
Posts: 876
Reputation: 62
Default Re: Dúvida

A variável vai armazenar o resultado de algo, você só deve armazenar isso se em algum momento ou possibilidade você vai precisar ler esse resultado. Caso contrário, não precisa armazenar.

Por exemplo, se você criar um veiculo e quer armazenar o ID do veículo, para poder mover ele de lugar em uma função abaixo do CreateVehicle, ai você coloca declara a variável para armazenar o resultado da função.

Por exemplo:
pawn Code:
new vehicleid;//Criou a variável.

vehicleid = CreateVehicle(411, 0.0, 0.0, 0.0, 0.0, 0, 0, -1);//Declarei que a variável vehicleid será o ID do veiculo criado em CreateVehicle, se ele for um INVALID_VEHICLE_ID (65535) ele não é um veículo válido e o limite máximo de veículos (2000) foi atingido. Ou se o vehicleid for 0 significa que ele não foi criado.
SetVehiclePos(vehicleid, 1.0, 1.0, 1.0);//Movi o veiculo que armazenei no vehicleid para a posição x=1.0 y=1.0 z=1.0.

Se você vai criar um veiculo apenas por criar, não vai precisar mexer mais nele, apenas coloque o CreateVehicle e já era.
__________________
Sometimes a captain has to make the unpopular call because that's his responsibility
willttoonn is offline   Reply With Quote
Old 23/08/2019, 01:12 AM   #8
FilipiMelo
Big Clucker
 
FilipiMelo's Avatar
 
Join Date: Nov 2016
Location: Vila do Sr. Barriga
Posts: 66
Reputation: 0
Default Re: Dúvida

Você não poderia por apenas: SetVehiclePos(411, 1.0, 1.0, 1.0);

É muito confuso, essa questão da variável pra mim, acho que devo ser burro .-.
__________________
FilipiMelo is offline   Reply With Quote
Old 23/08/2019, 01:44 AM   #9
FilipiMelo
Big Clucker
 
FilipiMelo's Avatar
 
Join Date: Nov 2016
Location: Vila do Sr. Barriga
Posts: 66
Reputation: 0
Default Re: Dúvida

Alguém da pra dar uma luz?
__________________
FilipiMelo is offline   Reply With Quote
Old 23/08/2019, 01:57 AM   #10
1sbedx
Huge Clucker
 
Join Date: Dec 2015
Posts: 282
Reputation: 39
Default Re: Dúvida

Quote:
Originally Posted by FilipiMelo View Post
Você não poderia por apenas: SetVehiclePos(411, 1.0, 1.0, 1.0);

É muito confuso, essa questão da variável pra mim, acho que devo ser burro .-.
411 é o modelo do veículo, não o ID.
__________________
Estou desenvolvendo por dinheiro, qualquer dúvida entre em contato para negociação.
1sbedx 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
[DUVIDA] Duvida sobre new e bool. Supera Português/Portuguese 8 11/10/2012 05:11 AM
[duvida] tira minha duvida aqui felipe_mr Português/Portuguese 1 07/01/2012 04:02 PM
[Dúvida/Ajuda] Dúvida besta e significativa para mim :) Kuddy Português/Portuguese 21 25/08/2011 08:37 PM
[DUVIDA]Qual a diferença ZCMD, DCMD, e cmd Normal[DUVIDA] Dj_Paradox Português/Portuguese 3 21/02/2011 10:05 PM
[DUVIDA] Opções de Chat [DUVIDA] Dj_Paradox Português/Portuguese 5 05/01/2011 05:25 PM


All times are GMT. The time now is 01:36 PM.


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