E sobre ela acompanhar o player, seria fisicamente mesmo durante o level, dando a impressão do level todo estar sendo “ imprensado “
alarm 0 event:
vspeed = 2;
alarm[1] = room_speed/4;
alarm 1 event:
vspeed = 0;
alarm[0] = room_speed * random_range(5,10);
step event:
vspeed = -alarm[1];
( era pra ser um gif )
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. |
[GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
[GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Estou participando da ludum dare e eu dei uma travada na implementação em uma mecanica do meu jogo, vamos la:
Tenho essa parede e gostaria que a cada 5 ou 10 segundos ela descesse verticalmente, tentei usar alarm e o random_range(5,10) para os segundos, mas ela não descia, então usei o vspeed e ela desceu de uma vez, e também gostaria de saber como fazer ela acompanhar o player ( como se fosse uma hud ) para dar a impressão que ela está se fechando.
Obrigado.
Tenho essa parede e gostaria que a cada 5 ou 10 segundos ela descesse verticalmente, tentei usar alarm e o random_range(5,10) para os segundos, mas ela não descia, então usei o vspeed e ela desceu de uma vez, e também gostaria de saber como fazer ela acompanhar o player ( como se fosse uma hud ) para dar a impressão que ela está se fechando.
Obrigado.
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Eu não sei como você está implementado a parede, mas já que você disse que o vspeed funcionou, use dois alarmes, um deles aplica valor ao vspeed e o outro será o vspeed.
Por exemplo
Alarme 0
Vspeed = 2;
Alarm1 = room_speed/4;
Alarme 1
Vspeed = 0;
Alarm0 = room_speed * choose(5,10);
Desse jeito ele desce um pouco e fica 5 ou 10 segundos até descer de novo.
Eu particularmente não usaria este método, mas a única coisa que eu sei sobre a sua parede é que o vspeed funcionou uma.vez para isso.
Em relação a hud, é a mesma coisa, eu não sei como você está implementado a parede, provavelmente (se você quer como uma hud) você deve ter que desenhar outra parede no draw gui.
Já se for apenas acompanhar o player fisicamente, é só usar o X do player como base, criar um offset (distância, margem) para o player e definir o X dela com base no do player e do offset.
Por exemplo
Alarme 0
Vspeed = 2;
Alarm1 = room_speed/4;
Alarme 1
Vspeed = 0;
Alarm0 = room_speed * choose(5,10);
Desse jeito ele desce um pouco e fica 5 ou 10 segundos até descer de novo.
Eu particularmente não usaria este método, mas a única coisa que eu sei sobre a sua parede é que o vspeed funcionou uma.vez para isso.
Em relação a hud, é a mesma coisa, eu não sei como você está implementado a parede, provavelmente (se você quer como uma hud) você deve ter que desenhar outra parede no draw gui.
Já se for apenas acompanhar o player fisicamente, é só usar o X do player como base, criar um offset (distância, margem) para o player e definir o X dela com base no do player e do offset.
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Tentei implementar e agora ela está subindo e de uma vez só sem esperar os segundos.None escreveu:Eu não sei como você está implementado a parede, mas já que você disse que o vspeed funcionou, use dois alarmes, um deles aplica valor ao vspeed e o outro será o vspeed.
Por exemplo
Alarme 0
Vspeed = 2;
Alarm1 = room_speed/4;
Alarme 1
Vspeed = 0;
Alarm0 = room_speed * choose(5,10);
Desse jeito ele desce um pouco e fica 5 ou 10 segundos até descer de novo.
Eu particularmente não usaria este método, mas a única coisa que eu sei sobre a sua parede é que o vspeed funcionou uma.vez para isso.
Em relação a hud, é a mesma coisa, eu não sei como você está implementado a parede, provavelmente (se você quer como uma hud) você deve ter que desenhar outra parede no draw gui.
Já se for apenas acompanhar o player fisicamente, é só usar o X do player como base, criar um offset (distância, margem) para o player e definir o X dela com base no do player e do offset.
E sobre ela acompanhar o player, seria fisicamente mesmo durante o level, dando a impressão do level todo estar sendo “ imprensado “
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Você poderia colocar o código que você está usando para ver o que está sendo feito?
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Ja ia dar um edit na mensagem anterior, bom consegui um resultado, a parede agora está descendo ( de uma vez sem esperar o tempo ), então vamos la:None escreveu:Você poderia colocar o código que você está usando para ver o que está sendo feito?
alarm 0 event:
vspeed = 2;
alarm[1] = room_speed/4;
alarm 1 event:
vspeed = 0;
alarm[0] = room_speed * random_range(5,10);
step event:
vspeed = -alarm[1];
( era pra ser um gif )
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Então você quer que ela fique descendo o tempo todo?
O que você quer é que ela aumente a velocidade caindo ou algo do tipo?
O seu step event está sobrescrevendo ambos os alarmes.
Se você quer a parede caindo sempre, basta dar um valor baixo para o vspeed dela e conforme o alarme é ativo você aumentar um pouco o valor do vspeed, nem precisa de dois alarmes neste caso.
O que você quer é que ela aumente a velocidade caindo ou algo do tipo?
O seu step event está sobrescrevendo ambos os alarmes.
Se você quer a parede caindo sempre, basta dar um valor baixo para o vspeed dela e conforme o alarme é ativo você aumentar um pouco o valor do vspeed, nem precisa de dois alarmes neste caso.
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Quero q ela desça por exemplo : o jogador está andando pelo level, passa 5 segundos a parede desce 2 pixels, passa mais 5 segundos, ela desce +2 e assim vai, e caso o player demore de passar o level ele morre pela parede, e como as rooms terão tamanhos diferentes a parede acompanharia o player dando a impressão de ser a room toda.None escreveu:Então você quer que ela fique descendo o tempo todo?
O que você quer é que ela aumente a velocidade caindo ou algo do tipo?
O seu step event está sobrescrevendo ambos os alarmes.
Se você quer a parede caindo sempre, basta dar um valor baixo para o vspeed dela e conforme o alarme é ativo você aumentar um pouco o valor do vspeed, nem precisa de dois alarmes neste caso.
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Neste caso é bem simples.
Start event
alarm[0] = room_speed * irandom_range(2, 4);
alarm[0] event
Y += 2;
alarm[0] = room_speed * irandom_range(2, 4);
Pronto, desta forma a cada 2-4 segundos a parede desce 2 pixels.
Isso funciona se a sua parede for um objeto único, se forem vários objetos você precisa evitar o random range individual, aí ou você usa um valor fixo de tempo ou usa um controlador para definir o tempo do alarme deles.
Start event
alarm[0] = room_speed * irandom_range(2, 4);
alarm[0] event
Y += 2;
alarm[0] = room_speed * irandom_range(2, 4);
Pronto, desta forma a cada 2-4 segundos a parede desce 2 pixels.
Isso funciona se a sua parede for um objeto único, se forem vários objetos você precisa evitar o random range individual, aí ou você usa um valor fixo de tempo ou usa um controlador para definir o tempo do alarme deles.
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Cara funcionou perfeitamente, você não tem ideia do alivio que eu to agora, consegui fazer essa paredona seguir o player também, obrigado de verdade, vou conseguir entregar a tempoNone escreveu:Neste caso é bem simples.
Start event
alarm[0] = room_speed * irandom_range(2, 4);
alarm[0] event
Y += 2;
alarm[0] = room_speed * irandom_range(2, 4);
Pronto, desta forma a cada 2-4 segundos a parede desce 2 pixels.
Isso funciona se a sua parede for um objeto único, se forem vários objetos você precisa evitar o random range individual, aí ou você usa um valor fixo de tempo ou usa um controlador para definir o tempo do alarme deles.
Re: [GMS2][Duvida] Objeto acompanhar o player pela view port e o mesmo objeto descer a cada 10 segundos
Fico feliz por ter sido útil :)
Posta o projeto aqui depois!
Posta o projeto aqui depois!
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante