brhvitor6 Postado Junho 26, 2009 Denunciar Share Postado Junho 26, 2009 (editado) Estou com um problema com emu jogo. ciei quato praedes e denominei com um UNICO movie clip Wallsentão no personhagem:onClipEvent(enterFrame){ if(this.hitTest(_root.w)){ //aqui oque vai acontescer } }So que quando estou no MEIO do movie WALLS ele ainda acm executa a ação mesmo que eu não esteja encostando em nenhuma parte "solida" do movie clip. ps: dentro das paredes não tem nada nenhum dezenho... nada.Podem me ajudar? Editado Junho 27, 2009 por Jonathan Queiroz Adcionar tag's e modificar título (Jonathan) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonathan Queiroz Postado Junho 27, 2009 Denunciar Share Postado Junho 27, 2009 Movendo: Tutoriais & Dicas - Flash & ActionScript --> Flash & ActionScript Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pooh Postado Junho 27, 2009 Denunciar Share Postado Junho 27, 2009 É simples :)A colisão que o hittest se refere não é o ato de 'encostar' e sim o 'fato' de estarem em contato um com o outro;Resumindo se vosso objeto mantiver o contato com o alvo em questão ele considerar como hittest true;Por mais que vocÊ diga que dentro das paredes não existe nada, o flash demarca o tamanho de um movieClip pelos seus lados extremos;Teste você mesmo desenhe duas linhas fazendo um 'X' depois transofrme em movieClip;Agora veja qual o Width e Height que você obtem ^_^AbraçosPooh Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 brhvitor6 Postado Junho 28, 2009 Autor Denunciar Share Postado Junho 28, 2009 isso eu já percebi...mas.. tem um geito para que ele "ignore" isso e so de o hittest quando encostar em outro objeto? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pooh Postado Junho 28, 2009 Denunciar Share Postado Junho 28, 2009 ai você entra em 2 opções, uma é fazer um elemento para cada parede ou seja seu quadrado vira quatro elementos para serem testados no hittest;dai você vai testar toda uma array :)Outro jeito é por relações trigonométricas;aqui tem algumas dicas pra você : "blog.generalrelativity.org"bastante sobre fisica e detecções de colisão, você pode achar alguns exemplos mais simples...porém uma boa detecção de colisão é preciso estudar fisica;mas se o seu caso for apenas uma demonstração ou teste, divida seu quadrado em 4 paredes, coloqueas numa Array e mande seu objeto testar a colisão com as 4 paredes, assim ele vai considerar todas :)ou procure no google mesmo sobre colisões e trigonometria !Boa sorte e bons estudos ^_^Pooh Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 brhvitor6 Postado Junho 28, 2009 Autor Denunciar Share Postado Junho 28, 2009 opa... vlw...é que eu tava com algumas sources do "o jogo mais dificil do mundo" dai fiquei curioso... vou estoudar mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
brhvitor6
Estou com um problema com emu jogo. ciei quato praedes e denominei com um UNICO movie clip Walls
então no personhagem:
So que quando estou no MEIO do movie WALLS ele ainda acm executa a ação mesmo que eu não esteja encostando em nenhuma parte "solida" do movie clip.
ps: dentro das paredes não tem nada nenhum dezenho... nada.
Podem me ajudar?
Editado por Jonathan QueirozAdcionar tag's e modificar título (Jonathan)
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.