Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

[PROG] Usando Alarms

Tutoriais, videoaulas, guias e downloads para te ajudar nos estudos.
Avatar do usuário
Tutoriais & Aulas
Colaborador
Colaborador
Reações: 0
Mensagens: 110

[PROG] Usando Alarms

Mensagem por Tutoriais & Aulas » Qui Abr 28, 2016 4:07 pm

Autor original: CLT
Nome: Alarms

Autor: CLT

Plataforma: GM PRO/LITE

Nível: Iniciante

Introdução

Alarms como o próprio nome diz, são como relógios, que após um determinado tempo dispara, ocorrendo uma determinada ação.
Esse evento é muito utilizado em jogos de estratégia, como o jogo Roma.

Exemplo:

Crie um objeto e chame de obj_controle.

No Create deste objeto coloque:

Código: Selecionar todos

pontos=0
alarm[0]=1*room_speed
Explicando


Toda vez que obj_controle for criado o alarm 0 será ativado e seus pontos serão 0.

No evento Alarm 0 coloque:

Código: Selecionar todos

pontos+=1
alarm[0]=1*room_speed
Explicando


A cada 1 segundo os pontos do obj_controle aumentarão em 1 e o alarm 0 será reativado, então a cada 1 segundo os pontos aumentarão em 1.

No evento Draw coloque:

Código: Selecionar todos

draw_text(32,32,"Pontos: "+string(pontos))
Explicando


Desenha os pontos em uma altura de 32 pixels e uma largura também de 32 pixels.

Coloque o objeto na room e teste. Se tudo foi feito certo à cada 1 segundo os pontos aumentarão em 1.

Calcular o tempo:

Para calcular o tempo, existem duas formas:


Código: Selecionar todos

alarm[n°]=n°*room_speed

Código: Selecionar todos

alarm[n°]=n°
Explicando


No 1° jeito, você coloca os segundos desejados, vezes a room_speed.

No 2° jeito, você tem que saber o room_speed para fazer, por exemplo se a room_speed for 60, você faz alarm[n°]=60. Então dará 1 segundo.

Usando mais de um Alarm:

Quando se está programando com Alarms, você pode adicionar até 12 Alarms, que vão de 0 a 11.

Exemplo:

Se você fez a primeira parte do tutorial, já poderá aproveitar para está parte.

Coloque no Create:

Código: Selecionar todos

alarm[1]=5*room_speed
Explicando

Após 5 segundos da criação do obj_controle, o Alarm 1 será ativado:

Coloque no evento Alarm 1:

Código: Selecionar todos

pontos*=2
alarm[1]=5*room_speed
Explicando

A cada 5 segundos os pontos são multiplicados por 2, e o Alarm 1 é reativado.

Ativando um Alarm através de outro objeto:

No obj_controle (mesmo de sempre) coloque no Alarm 2:

Código: Selecionar todos

pontos-=5
alarm[2]=3*room_speed
Explicando

Quando o Alarm 2 for ativado, a cada 3 segundos os pontos diminuíram em 5 pontos, e o Alarm 2 será reativado.

Crie um novo objeto e chame de obj_ativador.

No Step coloque:

Código: Selecionar todos

if keyboard_check_pressed(vk_space)
{
obj_controle.alarm[2]=3*room_speed
}
Explicando

Quando a tecla "space/espaço" for pressionada, o Alarm 2 do obj_controle será ativado.

Agora coloque os objetos na room e teste.

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 4 visitantes