Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Pegar todas IDs que estão a uma certa distância.
2 participantes
Página 1 de 1
Pegar todas IDs que estão a uma certa distância.
Galera, estava tentando ajudar um usuário aqui do fórum com uma dúvida. Mas minha sugestão acabou se mostrando um pouco mais complicada do que imaginava.
A ideia era dar uma variável de 'periculosidade' para cada instância e fazer com que um NPC atacasse a que estivesse com esse valor maior.
Mas como posso fazer pra definir a maior variável dentro de uma distância determinada? instance_nearest só retorna a ID da instância mais próxima(duh), então não serve. Única coisa que acho que poderia funcionar é armazenar o valor dessas variáveis de todas instâncias próximas do NPC em algum lugar, ai ver qual delas é a maior e retornar esse valor ( a ID) pro NPC. Mas, não tenho ideia de como fazer isso.
Alguma sugestão? Tem que ser de acordo com cada instância, não só com todas instâncias de um mesmo objeto, pois a variável vai ser alterada de acordo com as ações do monstro e quão machucado ele está.
A ideia era dar uma variável de 'periculosidade' para cada instância e fazer com que um NPC atacasse a que estivesse com esse valor maior.
Mas como posso fazer pra definir a maior variável dentro de uma distância determinada? instance_nearest só retorna a ID da instância mais próxima(duh), então não serve. Única coisa que acho que poderia funcionar é armazenar o valor dessas variáveis de todas instâncias próximas do NPC em algum lugar, ai ver qual delas é a maior e retornar esse valor ( a ID) pro NPC. Mas, não tenho ideia de como fazer isso.
Alguma sugestão? Tem que ser de acordo com cada instância, não só com todas instâncias de um mesmo objeto, pois a variável vai ser alterada de acordo com as ações do monstro e quão machucado ele está.
Re: Pegar todas IDs que estão a uma certa distância.
- Código:
var valor_base=0;
with(objeto)
{
if (point_distance(x, y, NPC.x, NPC.y) <= distancia_maxima)
if (variavel>valor_base)
{
valor_base=variavel;
quem = id;
}
}
quem terá o ID dessa instância
Como o with começa com as instâncias de menor ID, se houver mais de uma com o maior valor da variável, ele vai retornar a de menor ID.
Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.
Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.
Aprenda a calcular a velocidade de suas animações
Entre para o Clube do Inglês:
Re: Pegar todas IDs que estão a uma certa distância.
Genial
Acho que o jeito que vou usar é diferente do seu. Colocar isso em cada monstro de deixar a variável "quem" e "valor_base" como sendo globais. Porque desse jeito se tiver mais NPCs posso fazer todos atacarem de acordo com as globais, não só me referir a um NPC específico.
Muito obrigado pela ajuda.
Acho que o jeito que vou usar é diferente do seu. Colocar isso em cada monstro de deixar a variável "quem" e "valor_base" como sendo globais. Porque desse jeito se tiver mais NPCs posso fazer todos atacarem de acordo com as globais, não só me referir a um NPC específico.
Muito obrigado pela ajuda.
Tópicos semelhantes
» Como pegar uma certa quantidade de objetos...?
» [Resolvido] Pegar o objeto mais proximo eu sei, agora quero pegar o segundo mais proximo
» Ja estão preparando o #004
» Atirar na direção certa
» começar de certa room
» [Resolvido] Pegar o objeto mais proximo eu sei, agora quero pegar o segundo mais proximo
» Ja estão preparando o #004
» Atirar na direção certa
» começar de certa room
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos