Conectar-se

Esqueci minha senha

Últimos assuntos
» [DÚVIDA] Colisão de objeto afetar apenas um
Hoje à(s) 22:32 por Dragonrod

» colisão de queda após outra colisão dando problema
Ontem à(s) 20:18 por Willy

» [Duvida] O que aprender
Seg 26 Jun 2017, 15:32 por Markituh

» BUILD FAILED: Cannot find BUILD.xml
Seg 26 Jun 2017, 14:50 por ReisBlender

» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

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

» Jogo Dengue HTML
Seg 30 Nov 2015, 16:17 por guga

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

» Ordenar variavel em ordem decrescente
Sex 28 Ago 2015, 21:09 por Kodained

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

» Problema com Colisão
Qui 27 Ago 2015, 12:30 por The_Game

» Quem quer Uma Engine, e de Quê?
Qui 27 Ago 2015, 09:22 por theguitarmester

» [RESOLV]Como adicionar 2 objetos na mesma posição?
Qua 26 Ago 2015, 11:38 por Bhryenno Kelvyn Carlson

» Sistema de porta!!!
Ter 25 Ago 2015, 21:29 por theguitarmester

» Venda de objetos em Inventário - Multiplicado
Seg 24 Ago 2015, 18:33 por AG Hydra

» Atirar na direção certa
Seg 24 Ago 2015, 09:03 por theguitarmester

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

» Problemas na compilação android
Dom 23 Ago 2015, 23:43 por Zero.

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

» Como estabilizar um som
Sab 22 Ago 2015, 19:03 por Isquilo_Roedor

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

» Sobre instance Creation Code
Sab 22 Ago 2015, 08:39 por Pai véi

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

» Como fazer um temporizador
Sex 21 Ago 2015, 19:02 por Isquilo_Roedor

Quem está conectado
24 usuários online :: 2 usuários cadastrados, Nenhum Invisível e 22 Visitantes

Dragonrod, ReisBlender

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36

Usando condições e operadores

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

Usando condições e operadores

Mensagem por PedroX em Qui 15 Jul 2010, 13:42

Nome: Condições e operadores

No fim desse tutorial você estará bem preparado para usar as condições e operadores no game maker.
Você pode usar qualquer versão do Game Maker, mas recomendo as mais recentes.
Não há dificuldade, pelo menos para quem se esforçar.

Condições:

if -> verifica se uma condicao assume o valor esperado
Código:
if  (condicao)
{ação}

else -> se a condição usada acima não acontecer, então ocorre outra ação
Código:
if  (condicao)
{ação}
else
{outra ação}

while -> enquanto uma condição for verdadeira ocorre a ação escolhida
Código:
while (p<10)
{p+=1} //adiciona 1 na variavel enquanto esta for menor que 10

for -> Declara-se um valor inicial, e enquanto esse valor não se tornar o valor escolhido, executa-se uma ação, e muda-se o valor para outro.
Código:
for( i=0; i<=10; i+=1 )
{
show_message(string(i)); // mostra a contagem de 0 a 10
}

Outras funções:

begin - é o mesmo que '{'
end - é o mesmo que '}'

exit- sai da função
Código:
if vidas>0
exit;
game_end();
Se as vidas forem maiores que zero, então para de executar o codigo. Se não parar o codigo, encerra o jogo.

Operadores lógicos:

&& , and - são a mesma coisa
Código:
if vidas>0 && score>0
{show_message('Win')}
Se as vidas forem maiores que zero e o score for maior que zero, mostrar a mensagem.

or , || - São a mesma coisa - significam 'ou'.
Se uma função ou a outra for verdadeira, executa a ação.
No exemplo, se a vida ou a pontuação for igual a 100, passar de fase.
Código:
if (vida==100 or score==100){
room=room_fase2;
}

Operadores de comparação:

< Menor
<= Menor ou igual
== Igual
> Maior
>= Maior ou igual
!= Diferente


FLW


Última edição por Pedro Henrique em Seg 27 Jun 2011, 18:46, editado 1 vez(es)

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: Usando condições e operadores

Mensagem por Da Galáxia em Qua 28 Jul 2010, 10:29

Muito bom para quem não conhecia essas operações e palavras chave, eu particularmente não sabia como fazia o diferente, pois em algumas outras linguagens é <>. Se poder explicar o RETURN, o REPEAT (claro que ja diz tudo, mais ensinar o jeito de usar) e tambem o CASE (não sei como se usa essa palavra chave no GM) e por fim o SWITH e BREAK. VLW.
avatar
Da Galáxia

Data de inscrição : 14/01/2010
Número de Mensagens : 348
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: Usando condições e operadores

Mensagem por Igor KinGamer em Qua 28 Jul 2010, 11:41

exit - "sai" do script ou do piece of code.

return - quando você faz um script, você pode fazê-lo retornar um valor. Por exemplo, um script para multiplicar dois números (sim, é inútil, mas é só um exemplo):
Script "multiplicar":
Código:
return argument0*argument1;
Esse script pega o argumento 0, o argumento 1, e multiplica-os.
Você poderia usar assim:
Código:
resultado = multiplicar(5, 3);
O script multiplicaria 5 por 3, e armazenaria o resultado (15) na variável resultado. Um script termina quando aparece o return.

break - termina um loop. Pode ser usado no for, while, switch, repeat e with.

repeat - repete a quantidade de vezes entre parenteses as ações:
Código:
repeat (quantidade de vezes)
{
    // Ações
}

switch - dependendo de um valor (uma variável ou uma expressão), realiza determinadas ações. O case é usado nele.
Código:
switch (valor que será testado)
{
    case valor: <ações>; break;
    case valor2: <ações>; break;
    case valor3: <ações>; break;
    ...
    default: <ações>;
}
O break não é necessário. Porém, se você não colocá-lo, ao encontrar um valor que seja igual ao valor testado, ele realizará todas as ações posteriores que estão dentro do switch, inclusive as que estiverem após os outros case's. Ex.:
Código:
switch (nivel)
{
    case 5: bazuca = true;
    case 4: metralhadora = true;
    case 3: shotgun = true;
    case 2: pistola = true;
    case 1: faca = true;
}
Caso o valor da variável nível for 3, executará as ações: "shotgun = true", "pistola = true;" e "faca = true". Porém, se houver um break depois do "case 3: shotgun = true;", apenas o "shotgun = true" será executado.
O default também não é necessário. Ele ocorrerá se nenhum dos valores for o correto ou se não houver nenhum break antes dele.
Para mais detalhes, veja o help.
avatar
Igor KinGamer

Data de inscrição : 26/09/2008
Número de Mensagens : 890
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: Usando condições e operadores

Mensagem por Da Galáxia em Seg 02 Ago 2010, 15:24

valeu!
avatar
Da Galáxia

Data de inscrição : 14/01/2010
Número de Mensagens : 348
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: Usando condições e operadores

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