Conectar-se

Esqueci minha senha

Últimos assuntos
» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» GMS sempre salva projeto ao compilar?
Sex 21 Ago 2015, 12:32 por Pai véi

» Tipo de Draw que dê melhor fps...
Sex 21 Ago 2015, 12:25 por Pai véi

» Banco de Dados online fácil de configurar
Sex 21 Ago 2015, 11:47 por Pai véi

» Ficou estranho esse efeito na terra?
Qua 19 Ago 2015, 20:08 por Adriel

» Você consegue decifrar o que é isso?
Qua 19 Ago 2015, 15:48 por Mateus O de Andrade

» Texto centralizado em sprite 64x64
Qua 19 Ago 2015, 14:00 por Vandson Fernandes

» [Tutorial] Um Único Script para Todos Diálogos do Jogo
Ter 18 Ago 2015, 22:12 por dharrison

» VIDEO AULAS - Plataforma - Recriando Super Mario
Ter 18 Ago 2015, 20:44 por Adriel

» Ajuda deixar room maior
Ter 18 Ago 2015, 15:56 por Stickman

» OST - Rain From The Past (Para Main Themes)
Seg 17 Ago 2015, 23:00 por Jessezyn

» #DGM Aula 01 - Views
Seg 17 Ago 2015, 00:16 por victor13.

» Alguém sabe as dimensões de um galaxy s5?
Dom 16 Ago 2015, 20:06 por vitorfernandes13

» Conquer The Kingdom
Dom 16 Ago 2015, 12:13 por DVictorPS

» [Ajuda] Bug ds_list
Dom 16 Ago 2015, 08:27 por Witen

» câmera seguir player com touch control android
Sab 15 Ago 2015, 15:05 por Lighter

» Apk não roda no celular
Sab 15 Ago 2015, 12:10 por xLuiZzz


Instância do Objeto

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

Instância do Objeto

Mensagem por junilinho em Qui 22 Ago 2013, 13:41

Alô, Alô!
Minha duvida é simples e rápida, como faço para diferenciar duas ou mais instâncias de um mesmo obj em um mapa do jogo ?

Mas como assim ?

Simples, suponhamos que tenho dois Objetos, um chamado Soldado, e outro chamado Monstro, eu coloco um monstro para atirar e seguir um soldado, porém se houver mais de uma instância do mesmo objeto, ou seja, se houver mais de um soldado no mapa, ele pode acabar seguindo um e atirando em outro, e acontece o mesmo quando um Soldado mira em um monstro.

Se alguém tiver como explicar... tutorial... engine... eu agradeceria cheers 
avatar
junilinho

Data de inscrição : 16/08/2013
Número de Mensagens : 15
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Instância do Objeto

Mensagem por Alex FC em Qui 22 Ago 2013, 15:09

As instâncias tem uma variável que as diferencia, ela se chama id.

Há varias maneiras de se conseguir a id de um objeto durante o jogo.

Exemplo 1: Seguir o objeto Soldado mais perto (Evento Step):

Código:
i = instance_nearest(x,y,Soldado)
Agora a variável i guardou a id da instância do objeto Soldado que estiver mais perto. Logo se quiser que siga essa instância de Soldado só usar:

Código:
move_towards_point(i.x,i.y,5)
Ou se quiser executar alguns comandos para essa instância:

Código:
with(i)
{
    instance_destroy();
}
Esse código destrói a instância.

Há varias formas de se conseguir o id de uma instância.

Pode ser quando você cria-la:

Código:
i = instance_create(x,y,Soldado)
Você pode procurar uma instância por sua ordem de criação:

Código:
i = instance_find(Soldado,0)
No código acima ele pega a primeira instância do objeto Soldado. Lembrando que começa por zero.

Você pode pegar a id em uma colisão também:

Código:
i = instance_place(x,y,Soldado)
O código acima pega a id quando se colide com a instância de Soldado.

Mas podem ocorrer erros caso não exista nenhuma instância do objeto selecionado. Então antes de tudo você deve verificar sua existência:

Código:
if instance_exists(Soldado)
{
    //Seu código aqui
}
Para saber quais funções retornam o id de uma instância, consulte a documentação pressionando F1.

Espero que ajude.

FLWS!
avatar
Alex FC

Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2503
Insígnias de JAM :

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Re: Instância do Objeto

Mensagem por fredcobain em Qui 05 Set 2013, 00:00

Tem um tutorial fantástico sobre id's na seção ESCOLHA DA STAFF. Dê uma olhada.
avatar
fredcobain

Ranking : Sem avaliações
Data de inscrição : 14/04/2011
Número de Mensagens : 691
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Instância do Objeto

Mensagem por saim em Qui 05 Set 2013, 08:29

Tem um bocado de funções que retornam a id da instância. Instance_place, instance_position, um monte. Procure funções de colisão (tem um tutorial do PedroX a respeito).
Outra coisa que vc precisa saber é que no EVENTO de colisão, o objeto "other" passa a ser a instância colidida.
avatar
saim

Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 1
   : 0
   : 3

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Instância do Objeto

Mensagem por Conteúdo patrocinado


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