Como fazer uma instancia seguir outro objeto

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

Idéia Como fazer uma instancia seguir outro objeto

Mensagem por Jessezyn em Dom 17 Maio 2015, 12:16

Olá, eu criei um objeto Obj_LifeControl q controla a vida do meu personagem através das variáveis

Obj_Leona.life e Obj_Leona.maxlife

e faço ele seguir meu personagem através dos comandos

x = Obj_Leona.x
y = Obj_Leona.y

Até aqui tudo OK. O meu problema consiste em querer expandir o controle do Obj_LifeControl a todos os objetos. Para isso estou utilizando o comando

instance_create(x,y,Obj_LifeControl)

em cada objeto e quero que o Obj_LifeControl siga oo objeto que o criou.

O comando

obejto_index

me retorna a id do objeto que criou essa instancia (pelo menos foi assim que eu entendi do manual do GMS, me corrijam se eu estiver errado).
Eu quero associar às variáveis x e y do Obj_LifeControl às variáveis x e y do objeto criador.
Estou usando esse código:

with (objeto_index)
{
x = other.x
y = other.y
}

mas o Obj_LifeControl não segue o meu personagem....
Já tentei várias coisas, mas nenhuma deu certo...
Eu acho q estou no caminho certo, mas deve ser só uma besteirinha que não estou conseguindo acertar.

Aguardando respostas.

Jessezyn

Número de Mensagens : 35
Data de inscrição : 18/01/2015
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

Mensagem por Rodrigo Santiago em Dom 17 Maio 2015, 12:20

me corrijam se eu estiver errado

Sim você QUASE entendeu. Todo objeto tem seu object_index que refere a SI MESMO. Pra ascesar o outro você pode pegar o retorno de instance_create:
Código:

ObjetoCriado = instance_create(x,y,Obj_LifeControl);
E então você pode usar a variavel como se fosse o objeto.

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

Mensagem por Jessezyn em Dom 17 Maio 2015, 12:29

Esse codigo vai no objeto criador ou no objeto criado??

Jessezyn

Número de Mensagens : 35
Data de inscrição : 18/01/2015
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

Mensagem por Rodrigo Santiago em Dom 17 Maio 2015, 12:39

No objeto Criador. Ele vai possuir o 'id' do objeto criado.
E então você pode faze-lo seguir.

No objeto CRIADOR
Código:

filho = instance_create(x,y,Obj_LifeControl);
No evento Step do CRIADOR
Código:

filho.x = x;
filho.y = y;
Talvez você vai ter uma pequena falha de movimento(quase imperceptível), teste e você verá que o objeto filho vai ficar um pouquinho atrasado. Mas isso já é outra coisa.

Rodrigo Santiago

Ranking : Nota B
Número de Mensagens : 1281
Idade : 20
Data de inscrição : 28/07/2012
Notas recebidas : C + C + B
Reputação : 73
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 1
   : 3

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

Mensagem por Jessezyn em Dom 17 Maio 2015, 12:51

Deu certo... Eu não estava entendo a isntaxe das funções... agora eu saquei...

Não é a instancia criada que acessa as funções do seu criador, mas sim, o criador que altera as informações da instancia criada.

Jessezyn

Número de Mensagens : 35
Data de inscrição : 18/01/2015
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

Mensagem por Jessezyn em Dom 17 Maio 2015, 12:54

eu usei isso

with (objeto_criado)
{
x = other.x
y = other.y
}


por enquanto está dando certo.. vamos ver se isso gera algum problema quando eu tiver vários criadores diferentes para o mesmo criado.

Jessezyn

Número de Mensagens : 35
Data de inscrição : 18/01/2015
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Idéia Re: Como fazer uma instancia seguir outro objeto

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


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