Conectar-se

Esqueci minha senha

Últimos assuntos
» Nota de esclarecimento - GMBR voltou!
Ontem à(s) 20:33 por Willy

» Regras do Fórum
Ontem à(s) 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» GMS sempre salva projeto ao compilar?
Sex 21 Ago 2015, 12:32 por Pai véi

» Tipo de Draw que dê melhor fps...
Sex 21 Ago 2015, 12:25 por Pai véi

» Banco de Dados online fácil de configurar
Sex 21 Ago 2015, 11:47 por Pai véi

» Ficou estranho esse efeito na terra?
Qua 19 Ago 2015, 20:08 por Adriel

» Você consegue decifrar o que é isso?
Qua 19 Ago 2015, 15:48 por Mateus O de Andrade

» Texto centralizado em sprite 64x64
Qua 19 Ago 2015, 14:00 por Vandson Fernandes

» [Tutorial] Um Único Script para Todos Diálogos do Jogo
Ter 18 Ago 2015, 22:12 por dharrison

» VIDEO AULAS - Plataforma - Recriando Super Mario
Ter 18 Ago 2015, 20:44 por Adriel

» Ajuda deixar room maior
Ter 18 Ago 2015, 15:56 por Stickman

» OST - Rain From The Past (Para Main Themes)
Seg 17 Ago 2015, 23:00 por Jessezyn

» #DGM Aula 01 - Views
Seg 17 Ago 2015, 00:16 por victor13.

» Alguém sabe as dimensões de um galaxy s5?
Dom 16 Ago 2015, 20:06 por vitorfernandes13

» Conquer The Kingdom
Dom 16 Ago 2015, 12:13 por DVictorPS

» [Ajuda] Bug ds_list
Dom 16 Ago 2015, 08:27 por Witen

» câmera seguir player com touch control android
Sab 15 Ago 2015, 15:05 por Lighter

» Apk não roda no celular
Sab 15 Ago 2015, 12:10 por xLuiZzz


Manual de GML para Iniciantes

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Manual de GML para Iniciantes

Mensagem por PedroX em Seg 31 Out 2011, 20:02



Esse guia serve para os que estão começando saberem por onde começar, pois há tantos tutoriais que os iniciantes ficam confusos. Abaixo há uma relação dos assuntos abordados.

Comentários
Instruções
Operadores
Variáveis
Funções
Scripts
Arrays

Comentários

São usados para comentar o seu código, facilitando a organização dele.
São ignorados pelo compilador.

Exemplo:
Código:
/*
Aqui tenho um
comentário de várias linhas.
*/
if (dinheiro>0) //se eu tenho dinheiro (comentário de uma linha)
{compro balas} //eu compro balas (note a diferença entre os tipos de comentário)
Ir para o topo

Instruções de controle

As instruções são muito importantes para o jogo.
Por meio delas são definidas as condições para que algo aconteça.
Vamos ver cada uma delas.

Ir para o topo

Condicionais

Padrão:
Código:
if (expressão) {
instrução
}
Definição:
Essa instrução checa se uma expressão é verdadeira. Se for, executa uma instrução.

Exemplo:
Código:
if (moedas==10){
compra refrigerante
}
Padrão:
Código:
if (expressão){
instrução A
}else{
instrução B
}
Definição: Se a expressão for verdadeira, executa a instrução A, mas se não for, executa a instrução B.

Aprenda mais:
http://gmbr.forumeiros.com/t16893-game-maker-aula-8-as-declaracoes-if-e-else
http://gmbr.forumeiros.com/t5118-aula-4-introducao-em-gml-if

Padrão:
Código:
switch (valor)
{
 case 1: instrução; break;
 case 2: instrução; break;
 case 3: instrução; break;
 default: instrução;
}
Definição:
Essa instrução compara o valor com cada case, executando a instrução respectiva.
Se nenhuma comparação for correta, então a default é executada.
Ela é mais útil quando temos várias comparações a fazer.

Exemplo:
Código:
switch(moedas)
{
case 10: compra 1 bala; break;
case 20: compra 2 balas; break;
case 30: compra 3 balas; break;
default: vai embora;
}
Aprenda mais: http://gmbr.forumeiros.com/t12322-curso-de-gml-aula-3-as-declaracoes-if-if-else-e-switch

Ir para o topo

Laços

Padrão:
Código:
repeat(numero)
{instrução}
Definição:
Repete numero vezes aquela instrução.

Exemplo:
Código:
repeat(10)
{compra 1 bala}
Padrão:
Código:
while(expressão)
{instrução}
Definição:
Enquanto a expressão for verdadeira, ele executa aquela instrução.

Exemplo:
Código:
while(dinheiro>0)
{compra balas}
Padrão:
Código:
do
{
instrução
}
until (expressão)
Definição:
Faz aquela instrução enquanto a expressão for verdadeira.

Exemplo:
Código:
do {compra balas} until (dinheiro>0)
Padrão:
Código:
for (a; b; c)
{instrução}
Definição:
A instrução a é executada.Então a expressão b é testada.
Se for verdadeira, a instrução é executada. Depois c é executada.
Depois b é testada novamente. Esse laço continua até b ser falsa.

Exemplo:
Código:
for(contando=1;contando<10;contando =1){
mostra a contagem de 1 a 10;
}
Ir para o topo

Padrão:
Código:
with(objeto)
{instrução}
Definição:
Manipula outras instâncias.
Quando você colocar other dentro da instrução, você irá se referir a instância atual (que tem o código).

Exemplo:
Código:
with(inimigo)
{x=other.x}
Ir para o topo

Jumps

Padrão:
Código:
break;
Definição: Interrompe o laço atual, passando a executar os códigos seguintes (que estão fora da instrução).
Pode ser usada em: for, while, repeat e switch.

Exemplo: Já mostrado.

Padrão:
Código:
continue;
Definição: Passa para o próximo passa, interrompendo o atual.

Padrão:
Código:
exit;
Definição: para de executar os códigos abaixo desse.

Exemplo:
Código:
if sem_dinheiro {exit}
Balas =1
Ir para o topo

Operadores

Não vamos focar muito nessa parte. Existem vários tutoriais sobre isso no fórum e na internet.
Os principais são:

Código:
<, >, <=, >=, ==, !=, <>
que significam: menor, maior, menor ou igual, maior ou igual, igual, diferente, diferente.  
Código:
and ( pode usar && ), or ( pode usar || )
que significam: e, ou.

Exemplo:
Código:
if (dinheiro >= 1){
tenho dinheiro
}
Ir para o topo

Variáveis

São 'células' guardadas na memória RAM.
Guardam valores de coisas que não seriam possiveis de serem usadas sem serem salvas.
Não podem ter caracteres como acentos, vírgulas, pontos, espaços etc.

Existem algumas variáveis já prontas, que logicamente podem ser alteradas, como:
x, y, room, speed, image_angle, direction, entre outras.

Você também pode criar suas variáveis, então não estranhe quando ver algo em português no código de alguém.

Locais: São variáveis que só podem ser manipuladas pelo objeto que a criou.
Globais: São variáveis que podem ser usadas por qualquer objeto no jogo.
Temporárias: São usadas somente no trecho de código que foram criadas.


Criando as variáveis:


Ir para o topo

Locais:
variavel = valor;
Globais:
Código:
globalvar variavel;
variavel = valor;
Temporárias:
Código:
var variavel;
variavel = valor;
Aprenda mais sobre variáveis aqui:
http://gmbr.forumeiros.com/t15113-tutorial-variaveis

Ir para o topo

Funções

São usadas para diminuir o volume de código.
Do contrário, você teria que digitar o código dela (esses códigos não são mostrados) toda vez que precisasse.

Padrão:
Código:
nome_da_funcao(arg1, arg2, arg3, ...);
Exemplo:
Código:
if (room=fase_fogo)
move_snap(32, 32);
Ir para o topo

Scripts

São funções criadas por você.
Você deve criar um, digitar o código e depois chamá-lo em algum evento.
Aqui só mostrarei como chamar.

Exemplo:
Código:
inimigo_ataque(player, fogo);
Ir para o topo

Arrays

São uma forma de usar poucas variáveis.

Padrão:
Código:
nome[indice]=valor; //uma dimensão (como uma lista)
Código:
nome[indice,indice]=valor;//duas dimensões (como uma tabela)
Nome: segue o padrão das variáveis.
Indice: não pode ser negativo e deve ser inteiro.

Você pode aprender mais sobre arrays aqui:
http://gmbr.forumeiros.com/t14235-tutorial-arrays

Ir para o topo

Agradecimentos:
saim (variáveis e arrays)

Até mais!


Última edição por fredcobain em Sex 30 Ago 2013, 23:31, editado 13 vez(es) (Razão : Colocando âncoras)

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6034
Insígnias de JAM :

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

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Carlos Mahnke em Seg 31 Out 2011, 21:44

Legal o manual. Uma sugestão seria usar aquelas âncoras HTML (não sei se está ativo no sistema) pra rolar a página pro tópico que poderia ser clicado num tipo de índice.

Carlos Mahnke

Ranking : Sem avaliações
Notas recebidas : A+B (não colocar conceito)
Data de inscrição : 27/07/2011
Número de Mensagens : 202
Insígnias de JAM :

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por PedroX em Seg 31 Out 2011, 21:50

Isso só seria possivel se cada tópico estivesse em um post diferente.
Valeu. Gastei algumas horinhas, mas acho que vale a pena.

Até mais!

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6034
Insígnias de JAM :

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

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Carlos Mahnke em Seg 31 Out 2011, 21:58

Acho que vc não compreendeu. Eu me refiro a uma "âncora" em HTML que é uma tag que possui uma contraparte que se comporta como um link mas ao ser clicada move a página (ou desce, mas sem sair da mesma) pro ponto em que está o marcador.

Veja no exemplo abaixo como ao clicar no falso link a página desce até onde eu defini:

Tópico tal
























Texto do tópico selecionado

Carlos Mahnke

Ranking : Sem avaliações
Notas recebidas : A+B (não colocar conceito)
Data de inscrição : 27/07/2011
Número de Mensagens : 202
Insígnias de JAM :

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Livsk em Seg 31 Out 2011, 22:10

É, ficaria legal essas "âncoras" mesmo.

Outra sugestão seria fixar o tópico para não morrer tão facilmente, assim os iniciantes achariam mais fácil, que nem o índice de tutoriais, pois o conteúdo está muito bom.

Flws!
avatar
Livsk

Ranking : Nota C
Notas recebidas : C + C + D + D + D + D + B + B + A + C + B
Data de inscrição : 02/06/2011
Número de Mensagens : 364
Insígnias de JAM :

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

Prêmios
   : 1
   : 0
   : 1

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Dancity em Seg 31 Out 2011, 22:18

Muito bom Pedro, gostei muito, explica muitas funções direitinho e com uma ótima organização! Parabéns, acho um tópico de grande ajuda.

Muito legal essas âncoras, eu já sabia pra que serviam, mas não sabia como utilizá-las, enfim, com essas Âncoras vai ficar mais organizado ainda.
avatar
Dancity

Ranking : Nota A
Notas recebidas : A
Data de inscrição : 11/01/2009
Número de Mensagens : 1339
Insígnias de JAM :

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

Prêmios
   : 1
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Carlos Mahnke em Seg 31 Out 2011, 22:27

@Dancity escreveu:Muito legal essas âncoras, eu já sabia pra que serviam, mas não sabia como utilizá-las, enfim, com essas Âncoras vai ficar mais organizado ainda.
Melhor que a organização (que já era ótima) é a tamanha comodidade de ter todos os assuntos a um clique do mouse!

Uma última sugestão, adicionar uma âncora levando novamente ao topo após cada assunto =]


Edit
Opa, parece que já tinham feito e eu não notei.


Última edição por Carlos Mahnke em Seg 31 Out 2011, 22:28, editado 1 vez(es)

Carlos Mahnke

Ranking : Sem avaliações
Notas recebidas : A+B (não colocar conceito)
Data de inscrição : 27/07/2011
Número de Mensagens : 202
Insígnias de JAM :

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por PedroX em Ter 01 Nov 2011, 10:22

Sugestão aceita. Agora o artigo tem âncoras.

Se alguém quiser complementar alguma parte do tópico, me enviem uma mp com o conteúdo que eu analiso e coloco. Nem precisa ser formatado. Coloco os créditos.

Até mais!

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6034
Insígnias de JAM :

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

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Joton em Ter 01 Nov 2011, 19:39

Nosssa é disso que os novatos precisam, muito bem explicado e direto, quero também sugerir:

Você poderia colocar um "link de aprenda mais" na Funções, por ser mais complexo, acho que precisa de um link para o cara aprender mais sobre funções o/

Valewww
avatar
Joton

Ranking : Nota B
Notas recebidas : A+B+C
Data de inscrição : 25/07/2010
Número de Mensagens : 836
Insígnias de JAM :

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

Prêmios
   : 2
   : 0
   : 0

Ver perfil do usuário http://jotonsn.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por PedroX em Dom 06 Nov 2011, 11:04

Quem desejar que o seu tutorial seja adicionado ao Aprenda Mais de cada parte do tutorial, manda o link para mim.

Até mais!

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6034
Insígnias de JAM :

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

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual do iniciante

Mensagem por BrunoGomesDias14 em Sab 07 Abr 2012, 17:33

Bom Tutorial, vc só precisa ser mais específico as vezes rabbit
avatar
BrunoGomesDias14

Data de inscrição : 06/04/2012
Número de Mensagens : 1
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por yiahooo em Sex 24 Ago 2012, 11:21

não entendi nada eu não entendo codgos ahhhhhh..
avatar
yiahooo

Ranking : Nota E
Notas recebidas : E
Data de inscrição : 06/04/2012
Número de Mensagens : 155
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://www.yiahooo.no.comunidades.net

Voltar ao Topo Ir em baixo

Re: Manual de GML para Iniciantes

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum