Conectar-se
Quem está conectado
17 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 17 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Destruir o objeto mais próximo

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
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Destruir o objeto mais próximo

em Qui 02 Jul 2015, 21:32
Reputação da mensagem: 100% (1 votos)
if keyboard_check_pressed(vk_numpad1){
with(instance_nearest(x,y,obj_vermelho)) {
instance_destroy();
}}}
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Destruir o objeto mais próximo

em Qui 02 Jul 2015, 21:36
Afff kkkkkkkkkkkkkkk Vlw Isaque Very Happy
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Destruir o objeto mais próximo

em Qui 02 Jul 2015, 21:38
falow Very Happy
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Destruir o objeto mais próximo

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
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Destruir o objeto mais próximo

em Qui 02 Jul 2015, 21:47
creio que qualquer uma que revele instancias
avatar
Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1846
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 254

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://willy-gmbr.blogspot.com/

Re: Destruir o objeto mais próximo

em Qui 02 Jul 2015, 21:52
Reputação da mensagem: 100% (1 votos)
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
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/11/2009
Número de Mensagens : 803
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Destruir o objeto mais próximo

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
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Destruir o objeto mais próximo

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

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Destruir o objeto mais próximo

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
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Destruir o objeto mais próximo

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

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Destruir o objeto mais próximo

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.
Conteúdo patrocinado

Re: Destruir o objeto mais próximo

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum