Conectar-se

Esqueci minha senha

Últimos assuntos
» [Enquete] Concursos GMBR
por Willy Ontem à(s) 19:49

» CR - Concurso Relâmpago!!
por Willy Ter 18 Jul 2017, 17:11

» 3D:como rodar a camara em horizontal?
por Cambalinho Ter 18 Jul 2017, 15:09

» [Resolvido] pode explicar a d3d_set_projection()?
por Cambalinho Ter 18 Jul 2017, 11:28

» Escrever a resposta certa muda de room
por PedroX Seg 17 Jul 2017, 21:46

» Nota de esclarecimento - GMBR voltou!
por Mentos e Coca-cola Seg 17 Jul 2017, 17:05

» [CR] Campo Minado
por Katerp Dom 16 Jul 2017, 23:09

» [CR] The Bazooka Cat
por Tedi Ripper Dom 16 Jul 2017, 23:01

» Como melhorar um protótipo(Design)
por lolandoplayer Dom 16 Jul 2017, 22:56

» Diminuir velocidade ao arrastar objeto
por LwysF Dom 16 Jul 2017, 17:33

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

Lighter, Willy

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36
Estatísticas
Temos 12700 usuários registrados
O último usuário registrado atende pelo nome de Eduardo Gomes

Os nossos membros postaram um total de 220919 mensagens em 30412 assuntos

[Resolvido]duvida time (tempo)

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

[Resolvido]duvida time (tempo)

Mensagem por bruno2012 em Seg 23 Mar 2015, 16:43

galera a minha duvida e seguente na teoria esse código era  
para meu player mudar de cor durante 5 segundos

Código:
max_segundos = (current_second+5)

{
  while (current_second<=max_segundos)
  {
  image_blend = make_colour_hsv(30, 30, random(255));
  }
}
mais na pratica ele trava o jogo por 5 segundos e muda de cor o play só uma vez
eu quero fazer o meu player fica mudando de cor por 5 segundos alguém pode me ajudar?
avatar
bruno2012

Ranking : Sem avaliações
Data de inscrição : 17/03/2015
Número de Mensagens : 6
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: [Resolvido]duvida time (tempo)

Mensagem por Fuzenrad em Seg 23 Mar 2015, 16:54

O jogo trava porque entra em loop infinito, não vai funcionar assim. Na verdade, nem precisa de loop pra fazer isso, um if simples já resolveria. Pelo que eu entendi, você quer que após 5 segundos o jogador fique mudando a cor? Basta ter uma variável para contar os frames (a cada 30, se estiver configurado na sua room, conta 1 segundo).

O que você pode fazer é o seguinte:

Código:
//CREATE
max_segundos=room_speed*5;
atual_segundos=0;

//STEP
atual_segundos+=1;

if atual_segundos>=max_segundos {
  image_blend = make_colour_hsv(30, 30, random(255));
 }

Se for pra ficar exatamente 5 segundos animando (e parar de trocar a cor após o período), basta colocar um 'not' antes da verificação do step. Assim:

Código:
if not atual_segundos>=max_segundos {
  image_blend = make_colour_hsv(30, 30, random(255));
 }

Edit:

Ah e supondo que após um período de tempo qualquer (tipo 15 segundos), você quiser que a animação volte a ocorrer, basta verificar (no step mesmo) o valor do atual_segundos e comparar com 15*room_speed, quando for maior, reseta a variável.

Código:
if not atual_segundos>=max_segundos {
  image_blend = make_colour_hsv(30, 30, random(255));
 }

if atual_segundos>=15*room_speed {
  atual_segundos=0;
 }
avatar
Fuzenrad

Ranking : Nota A
Notas recebidas : A-A-A-A-B
Data de inscrição : 04/07/2010
Número de Mensagens : 1027
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: [Resolvido]duvida time (tempo)

Mensagem por bruno2012 em Seg 23 Mar 2015, 19:20

só mudei as variáveis para globais q pego normal obg Very Happy
resolvido
avatar
bruno2012

Ranking : Sem avaliações
Data de inscrição : 17/03/2015
Número de Mensagens : 6
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

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