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


[TUTORIAL] Exemplo de Variáveis Globais em um mini jogo.

Ir para baixo

[TUTORIAL] Exemplo de Variáveis Globais em um mini jogo. Empty [TUTORIAL] Exemplo de Variáveis Globais em um mini jogo.

Mensagem por CyberTrox Dom 11 Jan 2009, 00:57

Como vi neste forum existem explicações sobre as "tais" variáveis simples e globais, que de fato são explicações ótimas, bom mas pra quem ainda fico com alguma dúvida sobre elas, resolvi fazer este tutorial com exemplo de um mini jogo.

Nível de dificuldade - Conhecimento Mínimo de GML

Bom vamos la:
Primeiramente vamos criar os Sprites:

Escolha um sprite e de a ele o nome de "bola" sem as aspas

[TUTORIAL] Exemplo de Variáveis Globais em um mini jogo. Imagemspriteti3

Crie outro sprite e de o nome a esse de "item" sem as aspas.
Mesmo procedimento, crie outro e de a esse o nome de "parede" sem as aspas.

Já temos os 3 sprites básicos do mini jogo, agora falta crias os objetos para eles:

[TUTORIAL] Exemplo de Variáveis Globais em um mini jogo. Imagemobjetowl2

Depois de criar o objeto, de dois cliques sobre ele, na janela que aparecer no

Name/Nome: Coloque "bola" sem as aspas.
Sprite: Clique no botão ao lado do quadro branco, escolha o sprite respectivo ao objeto que neste caso é a bola.

Dê OK.

Agora faça o mesmo procedimento de criar objetos, crie mais um, coloque no nome dele "item1" sem as aspas e selecione o sprite respectivo a ele o item.
Crie mais outro objeto, de a ele o nome de "parede" sem as aspas, e selecione o sprite respectivo a ele, que é a parede.

Dê OK para confirmar os objetos criados.

Pronto já temos os objetos "bola","item" e "parede", básicos para um jogo simples.

Agora vamos para a parte das variáveis, logo depois vamos definir o movimento da bola e as colisões.

Variáveis Globais e Simples:

Faça o procedimento de criar objetos, crie um objeto e dê a ele o nome de "Variaveis Globais" sem as aspas, não e necessário definir um sprite pra este objeto já que ele nem precisa ser visto, mas precisa estar presente na room.
Bom vamos lá, depois de criado o objeto, vamos criar o evento Other>Game Start, de dois cliques no objeto Variaveis Globais:

[TUTORIAL] Exemplo de Variáveis Globais em um mini jogo. Imagemcriandoeventogameih8

Já temos o evento agora vamos declarar as variáveis, crie um Execute a piece Code, de dois cliques nele e escreva o seguinte código:

global.diamantes=0
global.fase=0

Estão declaradas as variáveis Globais, lembre-se toda variável global vem no começo do nome global.

----------------------------------------------------------------------------------------

Agora volte nos objetos de dois cliques na bola, clique em Add Event e crie um evento de colisão com o item1, crie um execute a piece code, de dois cliques nele e escreva o seguinte código:

global.diamantes+=1 with (other) instance_destroy()

Explicando o código:

global.diamantes+=1 : Adiciona/Declara +1 na variável.
with (other) instance_destroy() : declara que o outro (other) other é o objeto que colidiu com a bola, neste caso seria o item1 se destrua "instance_destroy().

Confirme o código, dê Ok

-------------------------------------------------------------------------------------

Crie um objeto e dê a ele o nome de Condicao_fase1, não precisa de sprite, clique em Add Event e adicione o evento Step > Step, crie um Execute a piece Code, dê dois cliques e escreva o seguinte código:

if global.diamantes=5
{
global.fase+=1
room_goto_next()
}
-----------------------
Explicando o código:

if global.diamantes=5 : SE global.diamantes FOR igual a 5. CONDICAO
{ : Chave que abre uma CONDICAO
global.fase+=1 : Adiciona/Declara +1 na variável. ACAO
room_goto_next() : Ir para a próxima Sala(Room) ACAO
} : Chave que fecha uma CONDICAO

Confirme o código, Dê Ok

------------------------------------------------------------------------------

Agora vamos criar a Condicao_fase2, crie um objeto com este nome, não precisa ter sprite, cliquem em Add Event e adicione o evento Create, crie um Execute a piece of code, dê dois cliques nele e escreva o seguinte código:

if global.fase=1 instance_create(0,224,bola)

------------------------------------------

Explicando o código:

if global.fase=1 : SE global.fase FOR igual a 1.
instance_create (0,224,bola) : Cria um objeto nas seguintes coordenadas X = 0, Y = 224,bola.
-----------------------------------------------------------------------
Confirme o código mais ainda não dê Ok no Objeto, crie um outro evento, só que agora crie um Step > Step, crie um Execute a piece of Code, dê dois cliques e coloque o seguinte Código:

if global.diamantes=7 room_goto_next()

-----------------------------------------------------------------
Explicando o código:

if global.diamantes=7 : SE global.diamantes FOR igual a 7.
room_goto_next() : Ir para a próxima Sala(Room)

Confirme o código, Dê Ok.

-----------------------------------------------------------------

Agora vamos fazer o movimento da bola pra depois criarmos a fase.

Dê dois cliques na bola, vá em Add Event depois em Key Press e escolha , na aba Move, selecione o primeiro item e arraste-o até Actions.

Na janela que aparecer, em Directions selecione a seta < esquerda, e em speed coloque 4, de Ok.

Crie outro evento, só que agora Key Release e selecione , arraste o mesmo item para Actions o de Movimento, em directions você seleciona o Quadrado e deixa a velocidade em 0.

Agora é so fazer o mesmo para os outros lados: Direito , Cima e Baixo . A direction do Key Release sempre será o quadrado e com velocidade 0, isso fará que quando você solte a tecla a bola pare.

Confirme tudo, e antes de dar Ok, temos que criar a colisão com a parede

Crie um evento de colisão com a parede, arraste o primeiro item da aba Move, (o que você usou para ajustar o moviento da bola), em direction selecione o Quadrado e em velocidade 0, isso fará que quando a bola colida com a parede não a atravesse.

OBS: No objeto parede deixe marcado SOLID, ele fica do lado de VISIBLE.

Pronto agora confirme e dê Ok.
--------------------------------------------------------------------------------

Agora vamos montar nosso cenário:

Vá em Rooms, clique com o botão direito e clique em Add Room, agora e só usar sua criatividade e criar um cenário com seus objetos, lembre-se como o primeiro cenário tera de ter 5 items, como você declarou no objeto Condicao fase1, então coloque 5 items na fase onde bem quiser.

Não se esqueça de colocar o objeto Variaveis Globais na primeira Room.
A Condicao_fase1 vai na Room 1
A Condicao_fase2 vai na Room 2

Na Room 2 não precisa colocar o objeto bola, pois a Condicao_fase2 irá criá-la nas coordenadas X = 0 Y = 224.

----------------------------------------------------------------------------------------

É isso galera, espero que tenham gostado e que tenha tirado as dúvidas de quem tinha. Very Happy


Créditos: CyberTrox
Créditos parte do Forum: Ao Lap que me tirou dúvidas sobre um projeto meu valeu ae, e toda a galera que posta os tutoriais ae, que ajudam.

Valeu Ate + Cool
CyberTrox
CyberTrox

Data de inscrição : 05/01/2009
Reputação : 0
Número de Mensagens : 72
Prêmios : [TUTORIAL] Exemplo de Variáveis Globais em um mini jogo. 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

Ir para o topo

- Tópicos semelhantes

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