Conectar-se
Quem está conectado
15 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 14 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Sem avaliações
Data de inscrição : 17/06/2015
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

[Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 15:38
eu fiz que quando o inimigo tem a vida menor ou igual a 0 ele troca para um objeto de explosão para representar a animação de morte dele, porém quando ele morre e acontece a explosão o objeto da explosão continua na tela.

Eu gostaria que depois de 2 segundos após a morte do inimigo e a explosão acontecer, o objeto da explosão destrua-se.

Edit:

Aproveitando tb... quando a o inimigo tem a vida igual ou menor a 0 e ocorre a explosão, todos os inimigos da room tb morrem mesmo estando de vida cheia



[Moderação]
Mensagens unidas.
Post duplo não é permitido, fique atento as regras do fórum.


Última edição por kael'thas em Sex 19 Jun 2015, 13:32, editado 1 vez(es)
avatar
Data de inscrição : 18/01/2015
Número de Mensagens : 36
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 6
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 16:26
Vc pode usar o comando instance_destroy() no objeto explosão

E o segundo problema, vc provavelmente, deve estar acessando a variavel vida através de outro objeto.... tenta colocar o comando de morrer dentro do proprio objeto.. pq assim, ele vai diferenciar dos outros...

avatar
Ranking : Sem avaliações
Data de inscrição : 17/06/2015
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 16:38
encontrei um bug tb... quando a vida do inimigo chega a zero e outro tiro o atingi ele não morre... como resolvo ?

Edit:

no caso eu fiz a variável de vida ta no create do objeto inimigo e o if esta no evento de colisão do tiro com o inimigo


if (life <=0) {
hspeed=0;
instance_create(x,y,obj_explosao);
} )



[Moderação]
Mensagens unidas.
Post duplo não é permitido, fique atento as regras do fórum.
avatar
Data de inscrição : 05/10/2012
Número de Mensagens : 47
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 3
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 16:53
na verdade vc ta criando inimigos clonando eles em tempo de execução, certo ? se for este o caso o evento de colisão tem que estar dentro do objeto inimigo, caso contrário, por ser clone, o teu tiro estará reduzindo os pontos de vida de todos os objetos clonados.

sendo assim vc precisa ter no create do objeto inimigo a variavel 'life'
no evento de colisão com o tiro a subtração da variavel 'life'
e no step a condição que chama o objeto explosão.

Deu pra entender?
avatar
Ranking : Sem avaliações
Data de inscrição : 17/06/2015
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 19:43
não, o tiro não afeta inimigos que não são atingidos, e a variável life já esta criada
avatar
Data de inscrição : 26/12/2012
Número de Mensagens : 152
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 8

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 20:13
Para fazer a explosao se destruir tente fazer isto:

Create:

destruir_explosao = false

Crie um alarme:

no alarme, bote o seguinte codigo

instance_destroy()

Step:

If life <= 0 and destruir_explosao = false
{
alarm[0] = 60 (2 segundos se a velocidade da room for 30)
destruir_explosao = true
}
avatar
Ranking : Sem avaliações
Data de inscrição : 14/06/2015
Número de Mensagens : 11
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Qua 17 Jun 2015, 22:13
Já que é uma explosão, é mais fácil fazer uma animação e no objeto da explosão, colocar no evento Animation End, o comando instance_destroy(). Daí você não precisa se preocupar com alarms.

O que acontece é que o inimigo não está morrendo quando ocorre tal explosão, segundo seus scripts. Como o ekuhnen falou, o evento de colisão tem de estar no inimigo, não no tiro.
Você pode usar instance_create e instance_destroy(), ou instance_change para isso.


Código:
if (life <=0) {
hspeed=0;
instance_create(x,y,obj_explosao);
instance_destroy();
} )
avatar
Ranking : Sem avaliações
Data de inscrição : 17/06/2015
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Resolvido]Como destruir o objeto explosão

em Sex 19 Jun 2015, 13:29
Deu certo muito obrigado!!!
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum