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
» Colisões não funcionando
por RastaMaan Ontem à(s) 19:49

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Ontem à(s) 16:45

» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21


[Tutorial] Introdução a GML - Parte 1

+6
jpaulo
mayck
Super Games
Hatzo enkiri
Kyuubi
itarodrigo
10 participantes

Ir para baixo

[Tutorial] Introdução a GML - Parte 1 Empty [Tutorial] Introdução a GML - Parte 1

Mensagem por itarodrigo Dom 29 Ago 2010, 21:45

oi pessoal,

estou cooperando com o forum traduzindo algumas partes do arquivo de ajuda que vem no proprio GM8, nao sou muito bom em ingles, mas espero que possa ajudar.

nao vou prometer traduzir mais, devido ao tempo, porem, assim que estiver livre, posto mais um.

abraços.

O PROGRAMA

Um programa consiste em um conjunto de instruções. Um programa deve começar com o símbolo '{' e termina com o símbolo '}'. Entre esses símbolos ficam as instruções. As instruções devem ser separados por um símbolo ';'. Assim, a estrutura global de cada programa é:

{
declaração;
declaração;
...
}

Há um número de diferentes tipos de declarações, que serão discutidos abaixo.

VARIÁVEIS

Como qualquer linguagem de programação, o GML contém variáveis. Variáveis são posições de memória que armazenam informações. Eles têm um nome para que você possa consultá-las. A variável em GML pode armazenar um número real ou uma string(texto). As variáveis não precisam ser declaradas como em muitas outras línguas. Há um grande número de variáveis embutidas. Algumas são gerais, como mouse_x e mouse_y que indicam a posição atual do mouse. Uma variável tem um nome que deve começar com uma letra e podem conter apenas letras, números, símbolos e sublinhado '_'. (O comprimento máximo é de 64 símbolos.) Quando você usa uma nova variável ela é local para a instância atual e não é conhecida nos programas de outras instâncias (inclusive do mesmo objeto). Você pode ainda fazer referência a variáveis em outros casos, ver abaixo.

ATRIBUIÇÕES

Uma atribuição pode ser um valor simples, mas também pode ser mais complicado. Ao invés de atribuir um valor a uma variável, pode-se acrescentar também o valor para o valor atual da variável usando +=. Semelhantemente, você pode subtraí-lo usando -=, multiplicá-lo utilizando *=, dividí-lo usando / =, ou usar os operadores bit a bit usando |=, &\ ou ^=.

EXPRESSÕES

As expressões podem ser números reais (por exemplo, 3.4), os números hexadecimais, começando com um sinal $ (eg $ 00FFAA), strings entre aspas simples ou duplas (por exemplo, "Olá" ou 'Olá') ou expressões mais complicadas. (Note que uma string pode ser executada em várias linhas!) Para as expressões, existem os seguintes operadores binários existentes (em ordem de prioridade):
&& || ^ ^: Combinar valores booleanos (&& = e, || = ou, ^= xor)
<<= ==! =>> =: Comparações, resultar em verdadeiro (1) ou falso (0)
| & ^: Operadores bitwise (| = bitwise ou, bit a bit e & =, ^ = xor bit a bit)
<< >> Os operadores bitwise (<= desvio à esquerda,>> = right shift)
+ -: Adição, subtração
* Mod / div: multiplicação, divisão, divisão de inteiros, e modulo
Note que o valor de x y div é o valor de x / y arredondado na direção de zero para o número inteiro mais próximo. O operador mod retorna o resto obtido dividindo seus operandos. Em outras palavras, y mod x = x - (x y div) * y. Além disso, os seguintes operadores unários existem:

!: Não, transforma falso em verdadeiro e verdadeiro em falso
-: Nega o valor próximo
~: Nega o valor do próximo bit a bit

Como valores, você pode usar números, variáveis ou funções que retornam um valor. Sub-expressões podem ser colocados entre parênteses. Todos os operadores trabalham para valores reais. Comparações também trabalhar com strings e concatena strings usando '+'.

Aqui está um exemplo com alguns trabalhos.

{
x = 23;
color = $FFAA00;
str = 'Olá Mundo';
y += 5;
x *= y;
y = x << 2;
x = 23 * ((2 +4) / sin (y));
str = "Olá" + "mundo";
b = (x < 5) && !(x == 2 || x == 4);
}

MAIS SOBRE VARIÁVEIS

Você pode criar novas variáveis, atribuindo um valor para eles (sem necessidade de declará-los primeiro). Se você simplesmente usar um nome de variável, a variável será armazenado com a instância do objeto atual. Então, não espere encontrá-lo quando se trata de outro objeto (ou outra instância do mesmo objeto) mais tarde. Você também pode configurar e ler as variáveis em outros objetos, colocando o nome do objeto com um ponto antes do nome da variável.
Para criar variáveis globais, que são visíveis a todas as instâncias de objeto, precedê-los com a palavra 'global' e um ponto. Assim, por exemplo, você pode escrever:

{
se global.doit ()
{
/ / Fazer algo
global.doit = false;
}
}

Alternativamente, você pode declarar as variáveis como sendo global. Esta declaração tem o seguinte aspecto.

globalvar varname1, varname2, varname3 ... ;
Uma vez que essa declaração tenha sido executada, a variável é sempre tratada como global sem a necessidade de colocar a palavra global e um ponto na frente dele. Ele só precisa ser declarada uma vez em um pedaço de código que é executado. Depois disso, em todos os outros lugares a variável é considerada como sendo global.

Às vezes você quer apenas as variáveis dentro da peça atual do código ou script. Desta forma, você evita o desperdício de memória e tem a certeza que não há conflito de nomes. É também mais rápido que usar variáveis globais. Para conseguir isso, você deve declarar as variáveis no início do trecho de código usando a palavra-chave var. Esta declaração tem o seguinte aspecto.

var varname1, varname2, varname3 ... ;
Por exemplo, você pode escrever:

{
var xx, yy;
xx x = 10;
yy y = 10;
instance_create (xx, yy, bola);
}

DECLARAÇÃO IF

A declaração tem a seguinte forma

if (expressão) código
ou
if (expressão) código else código

A declaração também pode ser um bloco. A expressão será avaliada.
Se o valor(arredondado) é <= 0 (false) a declaração é executada após outra, de outra forma (true) a outra declaração é executado. É um bom hábito de sempre colocar colchetes em torno das declarações na declaração.

if (expressão)
{
código se verdadeiro
}
else
{
código se falso
}

exemplo:

if (dinheiro > 1000)
{
show_message('posso comprar muitas coisas');
}
else
{
show_message('tenho que juntar mais');
}

REPEAT

Uma declaração repeat tem a forma

repeat (expressão) statement

A afirmação é repetida o número de vezes indicado pelo valor em parenteses da expressão.

Exemplo
O programa a seguir cria cinco bolas em posições aleatórias.

{
repeat(5) instance_create (random (400), random (400), bola);
}

itarodrigo
itarodrigo

Data de inscrição : 28/08/2010
Reputação : 52
Número de Mensagens : 599
Prêmios : [Tutorial] Introdução a GML - Parte 1 Empty

Medalhas x 0 Tutoriais x 4 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por Kyuubi Dom 29 Ago 2010, 22:20

nossa cara vc chama isso de tutorial?Eu chamo me mega-tutorial nota10000!!!!muito bom msm!!!
flws!!!
Kyuubi
Kyuubi

Data de inscrição : 28/11/2009
Reputação : 0
Número de Mensagens : 443
Prêmios : [Tutorial] Introdução a GML - Parte 1 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://animeworldmugen.forumeiros.com/forum

Ir para o topo Ir para baixo

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por Hatzo enkiri Seg 30 Ago 2010, 09:04

Bom tutorial com alguns laços de repetição e de condição
Infelizmente eu vou te dar uma nota que não é condizente com a realidade:
..............10000000000.(Se bem que merecia mais)
Tá otimo hein cara.Bom trabalho!
E continue ajudando os novatos Smile
Boa!
avatar
Hatzo enkiri

Games Ranking : Nota B

Notas recebidas : B
Data de inscrição : 19/02/2009
Reputação : 7
Número de Mensagens : 226
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por Super Games Seg 30 Ago 2010, 09:42

Cara, seu tutorial ta otimo!
Vai ajudar bastante os novatos, espero outros tutoriais de você.
Aqui vai minha nota que é 10.
Super Games
Super Games

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 10/06/2010
Reputação : 36
Número de Mensagens : 2799
Prêmios : [Tutorial] Introdução a GML - Parte 1 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 1.4
  • Game Maker Studio 2.0
  • Java
  • C ou C++


Ir para o topo Ir para baixo

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por mayck Qui 23 Set 2010, 16:53

Tutu Ta Muito BOoooom Manow Voce Chego no Forum Chegando xD Muito Bom Meus parabens Vai Ajudar muitas Pessoas
mayck
mayck

Data de inscrição : 11/01/2010
Reputação : 0
Número de Mensagens : 370
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por jpaulo Sex 24 Set 2010, 11:14

É novato mas ja chegou arrasando,hein?muito boa a tutorial.gostei mesmo.
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por jogos_jv Sex 24 Set 2010, 11:25

O tutorial está excelente. Nota 9.5.
Mas você poderia dar mas formatação. Por exemplo, colocando os códigos dentro de caixa de códigos, e, na parte das Expressões, você poderia colocar as expressões em ordem, dentro de uma lista, mais ou menos assim:
  • Expressão 1
  • Expressão 2
  • Etc...

Tirando isso, o tutorial está muito bom, explicando várias funções do GM. Continue criando bons tutoriais. Smile
avatar
jogos_jv

Data de inscrição : 10/02/2010
Reputação : 0
Número de Mensagens : 92
Prêmios : [Tutorial] Introdução a GML - Parte 1 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://jogosjosevitoria.blogspot.com/

Ir para o topo Ir para baixo

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por Jonhy8000 Qui 14 Out 2010, 13:45

Nuss cara arrazou mto bommm msm, me ajudou bastanteee e eu tenho certeza q vai ajudar aos outros Happy nota 1000000.
Jonhy8000
Jonhy8000

Data de inscrição : 13/10/2010
Reputação : 0
Número de Mensagens : 3
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por Alexandre Dias Sáb 16 Out 2010, 01:45

Gostei muito. Enfim, só acho que tem coisa que não precisa ser traduzida como o tradicional Hello World(o primeiro programa que todos fazem em C++) ~ Olá Mundo.

Mas tá muito bom mesmo.Mas como eu disse, tem coisa que não precisa traduzir D:
Alexandre Dias
Alexandre Dias

Data de inscrição : 13/10/2010
Reputação : 8
Número de Mensagens : 397
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

Mensagem por douglaslds Sáb 16 Out 2010, 10:45

Show!

Estou vendo que se vc continuar assim eu vou aprender muito mais Very Happy
douglaslds
douglaslds

Data de inscrição : 29/12/2009
Reputação : 0
Número de Mensagens : 172
Prêmios : [Tutorial] Introdução a GML - Parte 1 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

[Tutorial] Introdução a GML - Parte 1 Empty Re: [Tutorial] Introdução a GML - Parte 1

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