GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Aula 4 - Vars ??? Hammm???

+10
Trevor Belmont
minato.11
Janx
Zerei
makgamer
doug_maker
DDaniel
CPinheiro
Rubens T [Stormy Games]
reddragon
14 participantes

Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Aula 4 - Vars ??? Hammm???

Mensagem por reddragon Dom 01 Fev 2009, 10:35

Bom como venho dizendo, por favor, quem ainda não leu as aulas anteriores leia para entender o que estarei escrevendo.

Galera nesta aula estaremos falando um pouco sobre variáveis.

Gosto de fazer uma analogia do GM com um relógio e é assim:

Pensa no jogo que você monta no GM fosse um relógio as sprites seriam os ponteiros só a parta que se consegue ver do relógio, o script e como se fosse a estrutura dele a parte por trais do mostrador onde você não esta vendo, e as variáveis são as engrenagens que sozinha não fazem nada por isso que a estrutura o script da sustentação e direciona para fazer seu serviço e o resultado você vê na tela ou no mostrador.

Analogias a parte vãos a hora que interessa que é explicamos o que são essas tais de variáveis.

Variáveis são como sessões da memória do computador onde você coloca a informação que quiser basicamente textos e números.

Existem dois tipos de vars principais as variáveis locais e variáveis globais.

As var locais são variáveis que são criadas e usadas por cada obj separadamente e que para se usadas em outro obj será necessário índex, com a vantagem de que cada obj pode ter a mesma var só que trabalhada separadamente, isto é, cada uma em seu obj.

Já as vars globais são criadas em um obj e todos podem usar sem a necessidade de uma índex mas se você alterar seu valor em um obj você altera em todos ao mesmo tempo.

Bom com essa explicação complicada que mais confundiu que explicou vamos montar nossa primeira var.

Abra a aula anterior ela deve estar assim:

Aula 4 - Vars ??? Hammm??? Comoestavajj4

Iremos usar um novo evento agora chamado CREATE esse evento é o evento como o nome diz de criação mas ele chama assim não porque ele cria coisas mas sim porque ele é o primeiro evento executado quando seu obj for criado, por isso que é nele que iremos criar nossas vars.

Agora o adicione e nele coloque um excute code e escreva o seguinte script.

Aula 4 - Vars ??? Hammm??? Addcreategz2

Código:
velocidade = 5

Obs: cuidado com maiúsculo e minúsculo na hora de criar os nomes de suas variáveis porque o GM reconhece isso e o melhor seria você adotar um padrão escrever de minúsculo sempre.

Pronto!!! Criamos nossa primeira var e ela vai controlar a velocidade da minha bola. Mas como?

Vá ate o script no evento step e nele subistitua todos os 5 por velocidade.

Assim:

Código:
if keyboard_check(vk_up){y -= velocidade}
if keyboard_check(vk_down){y += velocidade}
if keyboard_check(vk_left){x -= velocidade}
if keyboard_check(vk_right){x += velocidade}

Agora quando você apertar um botão o script somara o valor de velocidade as coordenadas de nossa bola. Agora teste o jogo você vera que não mudou praticamente nada em nosso jogo, mas agora que vem à parte interessante:

Vá ao create e mude o valor da velocidade para 15, por exemplo. E teste.

Você automaticamente mudou o valor que é somado as suas coordenadas sem precisar mudar todo seu script de movimentação.

Isso é só uma das muitas utilidades das vars por isso fique atento que haverá mais explicações sobre o assunto.

Agora vou fazer o que deixei pendente na aula anterior.


Aperte a campainha.

Você provavelmente quando pensava em apertar um botão pensava nele como se fosse uma campainha.

Uma campainha quando apertada toca um som enquanto é pressionada e após soltar o botão o som para. Então basicamente são duas posições:

Apertadocom som
Desapertadosem som

Mas no GM existe isso, mas também existem mais duas coisas.

Imagine que a campainha quando apertada toca três sons diferentes. Um quando você o aperta outro enquanto você está apertado e por ultimo quando você solta o dedo do botão.

O GM trabalha dessa forma ele tem 3 divisões quando você aperta o botão.

keyboard_check_pressedquando você aperta o botão
keyboard_checkenquanto você esta apertando o botão
keyboard_check_releasede quando você solta o botão

Vamos fazer um teste para você entender melhor:

Volte na aula anterior e modifique o script de movimentação que criamos para esse:

Código:
if keyboard_check_pressed(vk_up){y -= velocidade}
if keyboard_check_pressed(vk_down){y += velocidade}
if keyboard_check_released(vk_left){x -= velocidade}
if keyboard_check_released(vk_right){x += velocidade}

E aumente o valor de velocidade para 25. E teste.

Agora repare que quando você aperta pra cima e pra baixo a bola se move na hora que você aperta, mas quando você move se para os lados a bola só se move na hora que você soltar o botão.

Galera chega ao fim mais uma aula mas essa aula pode te deixado com mais duvidas do que ter explicando alguma coisa. Tenham calma, esse assunto é extenso mesmo, na próxima aula vamos usar mais vars e assim posso mostrar lhes mais coisas.

tutorial feito por RedDragon
reddragon
reddragon

Data de inscrição : 19/03/2008
Reputação : 0
Número de Mensagens : 267
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Rubens T [Stormy Games] Sáb 18 Abr 2009, 15:02

if keyboard_check_pressed(vk_up)

cara, o que eu coloco ali se o comando for um numero, letra ou qualquer outra tecla?
Rubens T [Stormy Games]
Rubens T [Stormy Games]

Data de inscrição : 15/04/2009
Reputação : 1
Número de Mensagens : 85
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por CPinheiro Sáb 18 Abr 2009, 16:27

números:
vk_numpad1
vk_numpad2
vk_numpad3
(...)

Letras:
ord("X")
ord("Z")
ord("H")
exemplo:
Código:

if (keyboard_check(ord("H"))) //Checa se a letra H foi apertada
{
//código
}
CPinheiro
CPinheiro

Data de inscrição : 01/06/2008
Reputação : 0
Número de Mensagens : 1015
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://supermariobrasileiro.blogspot.com

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Rubens T [Stormy Games] Seg 20 Abr 2009, 10:25

atah...

vlw cara...

o codigo das letras eu ja tinha achado, mas tava em duvida sobre os numeros msm...
Rubens T [Stormy Games]
Rubens T [Stormy Games]

Data de inscrição : 15/04/2009
Reputação : 1
Número de Mensagens : 85
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por DDaniel Dom 03 maio 2009, 18:55

a placa de video nao consegue faser funfar os testes comé que eu vou saber se tá funfando? Suspect No affraid Sad
DDaniel
DDaniel

Data de inscrição : 03/05/2009
Reputação : 0
Número de Mensagens : 3
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por doug_maker Sáb 18 Jul 2009, 11:59

o significa VK antes das direções tipo (vk_up)
doug_maker
doug_maker

Data de inscrição : 14/02/2009
Reputação : 0
Número de Mensagens : 152
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por makgamer Sáb 18 Jul 2009, 12:35

vk é a tecla especial por exemplo:
keyboard_check(vk_up)
vai checkar se ajente esta apertando para cima ou vk_left é o botão esquerdo mais teclas normais não se coloca vk ai seria:
keyboard_check(ord('Letra'))
isto checkaria se ajente esta apertando tal letra entendeu?
makgamer
makgamer

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 29/03/2009
Reputação : 7
Número de Mensagens : 941
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 2.0
  • Unity
  • Java
  • C#
  • Javascript
  • RPG Maker
  • C ou C++
  • Outros


Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Zerei Ter 04 Ago 2009, 19:17

2 perguntas:
1° a variavel tem tamanho?
Tipo
teme um limite de caracteres pro tamanho da variavel? como no pascalque só pode ate 8 caracteres?
1+1° nao preciso declarar que tipo a variavel é? ou ele reconhece automaticamente só pelo conteudo dentro dela?
Zerei
Zerei

Data de inscrição : 04/08/2009
Reputação : 0
Número de Mensagens : 10
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Janx Ter 04 Ago 2009, 19:36

Hmmm acredito que o limite da variavel seja o equivalente a um "long int" de c++ ou seja:
entre -2,147,483,647 e 2,147,483,647

Bom, posso estar enganado, mas acredito que seja isso Happy

Não é presiso especificar a variavel. Mas lembre-se, se ela for texto e você tentar usar como numero irá dar erro!
Você pode converter facilmente usando os comandos:
real(string); //retorna valor real
string(real); //retorna o valor em texto

Espero ter esclarecido sua duvida Happy
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por minato.11 Ter 04 Ago 2009, 19:43

Belo tuto RedDragon!
Agora esclareceu todas minhas duvidas sobre Vars!

\o/
minato.11
minato.11

Data de inscrição : 14/12/2008
Reputação : 0
Número de Mensagens : 170
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Zerei Qua 05 Ago 2009, 13:26

vlw cara a parte do tamanho intendi apesar de n precisar de uma var desse tamanho Happy
mas onde eu declaro essa mudança de variavel?
antes de por um valor diferente q tava nela?
Zerei
Zerei

Data de inscrição : 04/08/2009
Reputação : 0
Número de Mensagens : 10
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Janx Qua 05 Ago 2009, 17:05

hmm.. vc nao pode mudar o tipo de variavel.
Você pode criar uma variavel e atribuir a ela o valor da outra
por exemplo:
Código:
idade = 25;
idade_texto = string(idade);
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Zerei Qua 05 Ago 2009, 17:12

intendi
intaum so tirar o q ta ladentro e por em outro lugar ela ja fica livre pra qq valor ne?
e isso mesmo ou to errado de novo?
Zerei
Zerei

Data de inscrição : 04/08/2009
Reputação : 0
Número de Mensagens : 10
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Janx Qua 05 Ago 2009, 17:14

voce quer dizer q no meu exemplo, dai a variavel
idade iria poder guardar textos? nao, ela nao vai mudar de tipo.
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Trevor Belmont Ter 15 Set 2009, 14:22

Ei, muito boa essa aula, no inicio você fica com dúvidas, mais vai um conselho, antes de esperniar e ficar desedperado e postar aqui, tenta resolver sozinho...eu fikei com dúvida me desesperei e vi q tinha uma coisinha errada, é galera programação é isso, as vezes uma poeira pode se tornar uma grande pedra de 75metros de altura xD, flw!!!


Última edição por Trevor Belmont em Ter 15 Set 2009, 15:52, editado 1 vez(es)
Trevor Belmont
Trevor Belmont

Data de inscrição : 15/09/2009
Reputação : 0
Número de Mensagens : 24
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://infotechnet.wordpress.com/

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Janx Ter 15 Set 2009, 15:31

tem um pequeno erro de digitaçao:
keyboard_check
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por fore Ter 06 Out 2009, 15:18

só consigo fazer coisas quando estou lendo tutos
quando vou tentar fazer algo sozinhu até desisto..
muito complicada essa parte de variaveis No
fore
fore

Data de inscrição : 01/10/2009
Reputação : 0
Número de Mensagens : 14
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Thiagoct Sex 05 Mar 2010, 10:52

e Se For um Joystick??
Thiagoct
Thiagoct

Data de inscrição : 26/02/2010
Reputação : 0
Número de Mensagens : 3
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por xXCristhianXx Dom 30 Jan 2011, 02:28

Vlw reddragon Feliz
xXCristhianXx
xXCristhianXx

Data de inscrição : 30/01/2011
Reputação : 0
Número de Mensagens : 4
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Leandro 17 Dom 12 Fev 2012, 19:57

Muito bom, estou acompanhando desde o começo, é genial!!!!!

Editado por joton
Se você não notou o tópico é de 2009, só post em caso de duvida.
Leandro 17
Leandro 17

Data de inscrição : 10/02/2012
Reputação : 1
Número de Mensagens : 3
Prêmios : Aula 4 - Vars ??? Hammm??? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Aula 4 - Vars ??? Hammm??? Empty Re: Aula 4 - Vars ??? Hammm???

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos