Conectar-se

Esqueci minha senha

Últimos assuntos
» [Enquete] Concursos GMBR
por Willy Ontem à(s) 19:49

» CR - Concurso Relâmpago!!
por Willy Ter 18 Jul 2017, 17:11

» 3D:como rodar a camara em horizontal?
por Cambalinho Ter 18 Jul 2017, 15:09

» [Resolvido] pode explicar a d3d_set_projection()?
por Cambalinho Ter 18 Jul 2017, 11:28

» Escrever a resposta certa muda de room
por PedroX Seg 17 Jul 2017, 21:46

» Nota de esclarecimento - GMBR voltou!
por Mentos e Coca-cola Seg 17 Jul 2017, 17:05

» [CR] Campo Minado
por Katerp Dom 16 Jul 2017, 23:09

» [CR] The Bazooka Cat
por Tedi Ripper Dom 16 Jul 2017, 23:01

» Como melhorar um protótipo(Design)
por lolandoplayer Dom 16 Jul 2017, 22:56

» Diminuir velocidade ao arrastar objeto
por LwysF Dom 16 Jul 2017, 17:33

Quem está conectado
15 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 15 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36
Estatísticas
Temos 12700 usuários registrados
O último usuário registrado atende pelo nome de Eduardo Gomes

Os nossos membros postaram um total de 220919 mensagens em 30412 assuntos

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();
        }
    }
}
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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: 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();
}}}
avatar
Isaque Onix

Data de inscrição : 15/08/2010
Número de Mensagens : 1597
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 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
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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: Destruir o objeto mais próximo

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

falow Very Happy
avatar
Isaque Onix

Data de inscrição : 15/08/2010
Número de Mensagens : 1597
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 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?
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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: Destruir o objeto mais próximo

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

creio que qualquer uma que revele instancias
avatar
Isaque Onix

Data de inscrição : 15/08/2010
Número de Mensagens : 1597
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 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.
avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1832
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário 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.
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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: 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
avatar
Isaque Onix

Data de inscrição : 15/08/2010
Número de Mensagens : 1597
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 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...
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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: 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
}
avatar
Isaque Onix

Data de inscrição : 15/08/2010
Número de Mensagens : 1597
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 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.
avatar
Limalokão

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
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

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