instancia desapare

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

Resolvido instancia desapare

Mensagem por Pit Bull em Sex 15 Jun 2012, 15:02

Não consigo entender porque isso acontece.


o objeto bomber_other deveria aparece, o engraçado e que eu nem fiz modificações nele e ele desapareceu.

como podem ver ele esta visivel(visible=1=true), está na coordenada x=16y=16, que fica bem em cima do quadrado vermelho(esse quadrado eu fiz no paint)

alguem sabe o que está acontecendo?

-----resolução
se você está usando evento draw no objeto, deve acresentar o draw_sprite do objeto.


Última edição por Pit Bull em Sex 15 Jun 2012, 21:18, editado 1 vez(es)

Pit Bull

Número de Mensagens : 630
Idade : 21
Data de inscrição : 31/08/2010
Reputação : 15
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://leninja.com.br

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Need 90 em Sex 15 Jun 2012, 15:32

Se você perceber o bomber_other.x está no 16, ou seja, embaixo de um bloco solido, que provavelmente tem o depth negativo.

Ou talvez, tenha algum evento de draw na bomba, se tiver você tem que adicionar antes dos códigos no draw :
Código:
draw_sprite (spr_bomba,-1,x,y)

Need 90

Ranking : Nota B
Número de Mensagens : 787
Data de inscrição : 16/01/2012
Notas recebidas : D+A+B
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://need90games.blogspot.com.br

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Super Maker em Sex 15 Jun 2012, 15:46

Já que o debug mostra que o objeto tá na room...
Ou alguma coisa pode ter dado um retorno falso do evento draw dele ou o depth dele ta mais alto do que devia ou então ele não tem nada no image_index.


Última edição por Super Maker em Sex 15 Jun 2012, 18:45, editado 1 vez(es)

Super Maker

Número de Mensagens : 646
Idade : 33
Data de inscrição : 09/07/2011
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Pit Bull em Sex 15 Jun 2012, 15:57

Need 90 escreveu:Se você perceber o bomber_other.x está no 16, ou seja, embaixo de um bloco solido, que provavelmente tem o depth negativo.
o bomber_other não está em baixo do solido pq eu não marquei a origin no centro,o depth do bomber e do bloco são 0.

o chão da sala não e porque antes ele funcionava.

Need 90 escreveu:
Ou talvez, tenha algum evento de draw na bomba, se tiver você tem que adicionar antes dos códigos no draw :
Código:
draw_sprite (spr_bomba,-1,x,y)

Mais eu não coloquei nenhuma bomba nele.

Não sei se isso ajuda mais quando eu coloquei solid=true no bomber_other meu personagem não conseguiu passar onde tem o quadrado vermelho, o que faz com que ele esteja la.

edit:
"Ou alguma coisa pode ter dado um retorno falso do evento draw dele ou o depth dele ta mais alto do que devia ou então ele não tem nada no image_index."

la na print que eu mostrei do lado do nome da instancia tem a image_index que e blk_down


Pit Bull

Número de Mensagens : 630
Idade : 21
Data de inscrição : 31/08/2010
Reputação : 15
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://leninja.com.br

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por saim em Sex 15 Jun 2012, 16:19

Bom, vamos eliminar as possibilidades.

A mais comum é você ter colocado alguma coisa no draw_event e esquecido de acrescentar draw_sprite. É a mais comum e a mais provável, porque marcá-lo como sólido impede o outro personagem de andar por cima dele, indicando que ele está, de fato, no lugar.
Foi isso o que o Need90 quis dizer.

Outra, bem menos provável, é realmente ter algo desenhado por cima do bicho. Defina a depth dele pra -100000, só pra desencargo de consciência.

A possibilidade dele não ter um sprite associado já era remota antes, agora que ele mostrou ter uma mask de colisão ficou ainda menor, mas se tudo mais falhar, pode ser isso.

Dê uma olhada nisse tópico aqui, segundo item.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por PedroX em Sex 15 Jun 2012, 16:26

Use o código para saber se ele está na room:
Código:
if instance_exists(bomber_other)
{show_message('Existe'); game_end();}

Use o código para saber qual é o seu sprite:
Código:
show_message(sprite_get_name(bomber_other.sprite_index)); game_end();

Tente fazer outros testes para achar a origem do problema.

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Super Maker em Sex 15 Jun 2012, 18:50

Pit Bull escreveu:o bomber_other não está em baixo do solido pq eu não marquei a origin no centro,o depth do bomber e do bloco são 0.
Então experimenta tirar ele e colocar de novo ou então, coloca no depth dele assim: depth=bloco.depth-1;

Super Maker

Número de Mensagens : 646
Idade : 33
Data de inscrição : 09/07/2011
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Pit Bull em Sex 15 Jun 2012, 21:17

saim, você está certo, não sei como mais o codigo que eu havia colocado que era o draw_sprite sumiu O.o

Muito obrigado por cada um que postou aqui, por precaução não vou colocar o evento draw nele denovo.

o/

Pit Bull

Número de Mensagens : 630
Idade : 21
Data de inscrição : 31/08/2010
Reputação : 15
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://leninja.com.br

Voltar ao Topo Ir em baixo

Resolvido Re: instancia desapare

Mensagem por Conteúdo patrocinado Hoje à(s) 08:25


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum