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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 29/12/2009
Número de Mensagens : 172
Insígnias de JAM :

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

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

Dúvida sobre colisão

em Sex 15 Out 2010, 16:15
Olá pessoal(estoudevoltamasseiqninguemselembrademim:D)!

Eu queria saber como que eu faço para q um objeto ao estar em colisão com dois outros objetos vá para onde está mais colisionado!(novapalavraparaoportugues?)

Ex:



No caso a área do objeto azul está mais no objeto preto então eu queria q ele fosse o centro do objeto preto e , caso sua área estivesse mais no objeto verde q ele fosse para o centro do objeto verde(entendeu?)

Se alguém puder ajudar...Very Happy
avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 16:25
Use if.
Meça o comprimento da colisão e coloque para que se x (verde) for maior ir para centro do verde e depois se y (preto) for maior ir para centro do preto.

Código:

x=comprimento da colisao do azul com o verde
y=comprimento da colisao do azul com o preto

if (x>y) {
//colocar o obj azul no centro do obj verde
} else {
if (x<y) {
//colocar o obj azul no centro do obj preto
}
Só não sei como medir.



Uploaded with ImageShack.us
avatar
Data de inscrição : 29/12/2009
Número de Mensagens : 172
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 16:56
Seu script tem lógica mas o q eu queria que o próprio objeto checasse sua posição e colisão com outros objetos automaticamente.


avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 17:03
Código:
a = area azul (10)
b = area verde (2)
c = area preta (4)
d = area amarela1
e = area amarela2

x = a + b - d
//faça algo para pegar o valor da area amarela1 (lembre-se que ele é menor que a+b)

y = a + c - e
//faça algo para pegar o valor da area amarela2 (lembre-se que ele é menor que a+c)

Daí é só usar o codigo anterior para saber o maior e colocar no centro de um.



Uploaded with ImageShack.us
avatar
Data de inscrição : 29/12/2009
Número de Mensagens : 172
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 17:31
Acho que seria muito trabalhoso esse seu método e não seria muito viável já que essa colisão acontecerá constantemente(estou querendo fazer um jogo de damas), eu queria fazer isso já para no futuro eu não ter nenhum problema, até pq eu vou ter que colocar em código todas as jogadas possíveis(parece dificil mais eu já fiz isso antes Very Happy), fazendo assim eu até poderia fazer uma IA inteligente, mas voltando ao tópico...

Todos o quadrados tem o mesmo tamanho então acho que deva haver algum script mais simples.

A colisão mais freqüente(como o movimento será com o auxilio do mouse,com certeza quem for jogar irá fazer isso alguma vez, e isso no futuro pode gerar alguns bugs):



avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 18:12
Você pode colocar 4 masks no obj azul, uma em cada 'quarto(1/4)' do obj.
Assim, você centraliza o obj azul aonde a mask estiver completamente em cima do outro obj.


Uploaded with ImageShack.us
Nesse caso, o obj azul centralizaria na casa 2.
E mais, para evitar um futuro bug se o obj azul ficar no meio das 4 casas, você coloca uma preferencia.
Ex.: Se a mask estiver na casa 2 e na acima dela, dar preferencia a mask x (que pode ser qualquer uma delas).
avatar
Data de inscrição : 29/12/2009
Número de Mensagens : 172
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 18:26
Parece que agora sim!

Como eu nunca fui de mexer com mask...Como que eu adiciono mais de uma mask?

Vlw!
avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 18:27
Aí eu já não sei.
xD
avatar
Data de inscrição : 29/12/2009
Número de Mensagens : 172
Insígnias de JAM :

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

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

Re: Dúvida sobre colisão

em Sex 15 Out 2010, 18:35
0_o

Agora euri

De volta ao zero!

Mas do jeito que vc disse me fez pensar de uma maneira semelhante mas usando objs invisiveis, mas pode ser q haja algum bug, mas vou tentar!

Se alguem tiver outra sugestão...

Conteúdo patrocinado

Re: Dúvida sobre colisão

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