Destruir o objeto mais próximo

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

Destruir o objeto mais próximo

Mensagem por Limalokão em Qui 02 Jul 2015, 21:29

Galera... Eu sei que tem muitas dúvidas aqui, mas nenhuma conseguiu sanar a minha dúvida. Vejam a imagem abaixo:

O objeto que uso o comando para destruir é o X na tela, os objetos que preciso destruir são os botões vermelhos, reparem que estão numerados, o x deve deletar o mais próximo dele apenas, não todos... Já tentei o instance_nearest mas não funciona D=

para que destrua estou usando de teste assim:

Código:
if instance_nearest(x,y,obj_vermelho)
{
    if keyboard_check_pressed(vk_numpad1)
    {
    with(other)
        {
        instance_destroy();
        }
    }
}

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Isaque Onix em Qui 02 Jul 2015, 21:32

if keyboard_check_pressed(vk_numpad1){
with(instance_nearest(x,y,obj_vermelho)) {
instance_destroy();
}}}

Isaque Onix

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

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Limalokão em Qui 02 Jul 2015, 21:36

Afff kkkkkkkkkkkkkkk Vlw Isaque Very Happy

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Isaque Onix em Qui 02 Jul 2015, 21:38

falow Very Happy

Isaque Onix

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

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Limalokão em Qui 02 Jul 2015, 21:44

Eu não sabia que dentro do with funcionava funções também affraid Qualquer função vale dentro do with?

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Isaque Onix em Qui 02 Jul 2015, 21:47

creio que qualquer uma que revele instancias

Isaque Onix

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

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Willy em Qui 02 Jul 2015, 21:52

Fique atento às formas de retorno das funções do GML.
instance_nearest retorna um ID, e não um booleano, por isso não funcionou como o esperado.

Flws... blz

[Edit]
O with serve para nos referirmos a um objeto ou instância. Portanto, qualquer variável, função ou script que retorne um ID funcionará perfeitamente.

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Limalokão em Qui 02 Jul 2015, 22:31

É... Crescendo e aprendendo. Agora me deparei com uma coisa D= Digamos que a peça mais perto agora seja uma azul, e eu aperto o botão vermelho, tem que errar tipo... vida-=1 É algo parecido com guitar hero, só que as peças estão na sala então podem ser apertadas a qualquer momento pois não serão sincronizadas com música...

tipo se eu apertar o vermelho e a instancia mais perto não for a vermelha e sim uma azul, perde uma vida. Como fazer isso? Preciso abrir outro tópico? Vlw.

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Isaque Onix em Qui 02 Jul 2015, 23:26

Código:
O_red=instance_nearest(x,y,obj_vermelho)
O_blue=instance_nearest(x,y,obj_azul)
if(point_distance(x,y,O_red.x,O_red.y)<point_distance(x,y,O_blue.x,O_blue.y)){
//apertou o vermelho
}else if(point_distance(x,y,O_blue.x,O_blue.y)<point_distance(x,y,O_red.x,O_red.y)){
//apertou o azul
}

Ps, fiz o code de cabeca, me conta noque deu Laughing

Isaque Onix

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

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Limalokão em Qui 02 Jul 2015, 23:55

Então isaque, assim não dá pq tipo vai ter mais 3 cores além do vermelho, uma azul, outra verde e outra amarela, elas virão randomicamente pela room, logo que elas aparecem eu já tenho que apertar o botão correspondente a cor, e destruir ele.

Porém se, vier um vermelho logo após um verde e logo após um azul, eu posso apertar o vermelho e destruir ele, então na sequencia lógica seria o verde, mas eu aperto o azul, então perderia uma vida. Estou fazendo um puzzle...

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Isaque Onix em Sex 03 Jul 2015, 00:47

cara, é só almentar a pilha de codigo...
Código:

O_red=instance_nearest(x,y,obj_vermelho)
O_blue=instance_nearest(x,y,obj_azul)
O_green=instance_nearest(x,y,obj_verde)
if(point_distance(x,y,O_red.x,O_red.y)<point_distance(x,y,O_blue.x,O_blue.y) && point_distance(x,y,O_red.x,O_red.y)<point_distance(x,y,O_green.x,O_green.y)){
//apertou o vermelho
}else
if(point_distance(x,y,O_blue.x,O_blue.y)<point_distance(x,y,O_red.x,O_red.y) && point_distance(x,y,O_blue.x,O_blue.y)<point_distance(x,y,O_green.x,O_green.y)){
//apertou o vermelho
}else
if(point_distance(x,y,O_green.x,O_green.y)<point_distance(x,y,O_red.x,O_red.y) && point_distance(x,y,O_green.x,O_green.y)<point_distance(x,y,O_blue.x,O_blue.y)){
//apertou o verde
}

Isaque Onix

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

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

Mensagem por Limalokão em Sex 03 Jul 2015, 20:41

Não vai cara =/ tentei adaptar para cada um, mas não ta rolando D=



veja só, como eu disse anteriormente, nesta ordem que mando agora o primeiro é o azul depois o amarelo então dois verdes, se na vez do primeiro verde eu apertar o amarelo ou qualquer outra cor, perde uma vida.

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Destruir o objeto mais próximo

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


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