Ativar e desativar instancias

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

Resolvido Ativar e desativar instancias

Mensagem por Fireheaddew em Ter 11 Out 2011, 23:28

Bem, o meu problema é o seguinte:
Estou fazendo um jogo de nave, perfeito, sem bugs, e que rapidamente será postado aqui na GMBR. Então, nele, a nave vai avançando automaticamente na room(que é enorme). Existem inimigos dispersos na room, e que se movem na direção oposta da nave do jogador para atacá-lo. Porém, mesmo fora do view, eles continuam se movendo, e saindo da posição em que foram posicionados. Ou seja, no final da room, não há mais inimigos, já que todos eles já escaparam pela esquerda. Estudei o recurso de ativar e desativar instâncias, mas, ao desativar as instancias fora do view, eles não voltam mais, mesmo no evento Boundary View 0, que ao meu ver, parece ser o oposto de Outside View 0(Quando o inimigo fica fora do view). Mas, mesmo utilizando o código, ele não funciona de jeito nenhum e mesmo que esteja dentro do view.

Minha pergunta: como evitar que as instancias fora do view 0 realizem eventos e ações até que estes entrem no view 0, que é seguido pelo player?

Fireheaddew

Número de Mensagens : 235
Data de inscrição : 04/11/2010
Reputação : 1
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: Ativar e desativar instancias

Mensagem por fonetico em Ter 11 Out 2011, 23:41

Eu meio que tive uma idéia um tanto tosca, mas que talvez dê certo, afinal, errar é humano.

Pra começar, no objeto da nave, no create, poderíamos definir para que todas as instâncias sejam desativadas, ou algum inimigo em específico, utilizando as funções:

Código:
instance_deactivate_all(notme)
Em notme você coloca 1: para deativar tudo exceto este objeto que chamou a função
Ou 0: Para ser desativado também.

OU

Código:
instance_deactivate_object(obj)

Em obj você coloca o nome ou id do objeto que deseja desativar (no caso os inimigos).

O importante aqui é apenas desativar os inimigos.

Agora, no Step da nave ou de qualquer objeto de controle, podemos dizer para que quando um objeto entrar na view, ele ser ativado. É importante que este código não esteja em um objeto que esteja desativado, caso contrário não surtirá efeito (estando desativado não poderá fazer nada).

Um exemplo:

Código:
instance_activate_region(view_xview[0],view_yview[0],view_wview[0],view_hview[0],1)

A estrutura do código acima é a seguinte:

Código:
instance_activate_region(left,top,width,height,inside)

Agora tô sem tempo para explicá-lo, mas qualquer erro ou dúvida poste.

fonetico

Número de Mensagens : 1830
Idade : 21
Data de inscrição : 05/10/2009
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Resolvido Re: Ativar e desativar instancias

Mensagem por y_Tiago em Ter 11 Out 2011, 23:56

Ou então o exemplo presente no wiki do GML.
No Step do objeto que se movimenta:
Código:
{
  instance_activate_all();
  instance_deactivate_region(view_xview[0],view_yview[0],view_wview[0],view_hview[0],false,true);
 }
Uma observação na wiki é que na prática pode ser melhor deixar ativado uma área um pouco maior que a view.

Código:
Código:
instance_deactivate_region(left,top,width,height,inside,notme)
Inside indica se é para desativar o que está dentro (1) ou o que está fora (0) da view. Notme indica se é para desativar o objeto que chama o script (0) ou não (1).

y_Tiago

Número de Mensagens : 149
Idade : 19
Data de inscrição : 13/10/2010
Reputação : 1
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: Ativar e desativar instancias

Mensagem por Fireheaddew em Sab 15 Out 2011, 11:49

Muito obrigado aos dois! =D Só não respondi antes porque não consegui usar antes, mas resolvi agora o meu problema.
Podem trancar o tópico!

Fireheaddew

Número de Mensagens : 235
Data de inscrição : 04/11/2010
Reputação : 1
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: Ativar e desativar instancias

Mensagem por Conteúdo patrocinado Hoje à(s) 22:48


Conteúdo patrocinado


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