Conectar-se
Quem está conectado
27 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 27 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Manual de GML para Iniciantes

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)
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 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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.
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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!
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 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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
avatar
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 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 13

Prêmios
   : 1
   : 0
   : 1
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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
Ranking : Nota A
Notas recebidas : A
Data de inscrição : 11/01/2009
Número de Mensagens : 1339
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 8

Prêmios
   : 1
   :
   :
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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.
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 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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)
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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!
avatar
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 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 5

Prêmios
   : 2
   : 0
   : 0
Ver perfil do usuáriohttp://jotonsn.blogspot.com/

Re: Manual de GML para Iniciantes

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
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Manual de GML para Iniciantes

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!
avatar
Data de inscrição : 06/04/2012
Número de Mensagens : 1
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Manual do iniciante

em Sab 07 Abr 2012, 17:33
Bom Tutorial, vc só precisa ser mais específico as vezes rabbit
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 06/04/2012
Número de Mensagens : 155
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 2

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.yiahooo.no.comunidades.net

Re: Manual de GML para Iniciantes

em Sex 24 Ago 2012, 11:21
não entendi nada eu não entendo codgos ahhhhhh..
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum