Forums Développement Multimédia

Aller au contenu

hitTest

CODE Actionscript

12 réponses à ce sujet

#1 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 02 February 2003 - 13:09 PM

Bonjour,

Un ptit probleme de gestion de hitTest (rhooo le boulet tongue.gif)

Vala... hitTest a 2 modes de fonctionnement (à ma connaissance...)

1- du style : monClipQuiBouge.hitTest(monClipQuiBougePas) où le clip qui bouge pas est considéré de manière englobante (meme si le clip est en forme de rond, les bords du clip (carrés) seront quand meme pris en compte, tout comme le clip qui bouge..

2- du style : monClipQuiBougePas.hitTest(ClipBouge._x,ClipBouge._y,true/false), où dans ce cas on considère le clip qui bouge pas a part entière.. (on regardera bien le hit avec le clip, et non pas sa boite englobante), et le point central du clip qui bouge..

Et la est mon probleme, moi je voudrais pouvoir tester un hit avec 2 formes complexes.. genre on va dire 1 anneaux et un rectangle.

Dans le premier cas.. il y aura un HIT meme si le rectangle est a l interieur de l anneau (et donc ne touche pas l anneau),
Dans le second cas, il n y aura pas HIT si le rectangle touche l anneau avec un morceaux qui n'est pas son this._x, this._y..

rhaaaa comment faire ?

#2 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 02 February 2003 - 13:21 PM

Tu as bien mis true dans
CODE
monClipQuiBougePas.hitTest(ClipBouge._x,ClipBouge._y,true/false)


#3 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 02 February 2003 - 13:27 PM

vi... attend je te fais un lien vers un .swf pour bien te montrer..



tadan smile.gif

Je veux un hitTest sur toute la barre.. et sur le carre quand il est noir...

#4 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 02 February 2003 - 13:30 PM

Je vais te renvoyer vers ce post où Mouette a mis a dispo un fla qui je pense répondra à ta demande

#5 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 02 February 2003 - 13:39 PM

et non ca repond pas... sniff..
Tu as vu mon exemple ? je sais pas comment faire pour que la barre complete soit prise en compte dans le hitTest, tout en gardant le carre avec des trous...

dur dur la vie d'étudiant smile.gif

(et dire que tout ca c pour un jeu.. et que c pour le plaisir.. mais bon.. c la qu on apprend le plus smile.gif

#6 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 02 February 2003 - 13:50 PM

Pourtant c'est bien presque le même fla et swf que je pose ici et qui répond à ta question non ? :roll:

Fichier(s) joint(s)



#7 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 02 February 2003 - 14:29 PM

c que tu triches la smile.gif
Tu utilises un clip zone qui est dans le clip zonechp.. du coup vi facile..
tu testes le hitTest avec ce clip la (zonechp.zone)... hors moi je veux pas imbriquer des clips..
je veux qu'il n y ai qu'un seul clip "mesMurs".

En fait imagine un labyrinthe.. tu vas pas t'amuser a tester chaque mur indépendemment.. tu fais juste un seul clip "murs", et tu le test avec "true" en parametre de hitTest..
Le pb c que dans ce cas la, ton perso (celui qui se cogne aux murs on va dire) ne sera considéré qu'avec son this._x et this._y...et non pas son clip entier..(genre si son centre est au milieu de son corps, il pourra mettre la tete dans les murs ainsi que les pieds sans provoquer de hit)

you know what i mean ? ;p

#8 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 02 February 2003 - 14:32 PM

/me part faire une lessive... revient dans un ptit bout de temps..

/me espere avoir Ze solution pas tirée par les cheveux (genre test en boucle des 12000 murs indépendemment) à son retour.. tongue.gif

/me se dit qu'il en demande beaucoup peut-être.. mais c ca.. internet smile.gif

#9 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 04 February 2003 - 23:03 PM

up

#10 supertomate

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 4147 messages

Posté 04 February 2003 - 23:08 PM

UP 8)
Jette un coup d'oeil à cette adresse

#11 neolao

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 3827 messages

Posté 05 February 2003 - 01:19 AM

d'ailleurs, c'est pour ca que j'dis que le hitTest est tout pourri
ya bien des moyens de contourner mais c'est franchement pourri

#12 Mouette1327249797

  • Members
  • PipPipPipPipPipPipPipPip
  • 982 messages

Posté 05 February 2003 - 03:29 AM

hello,

bin t'as qu'a faire plusieurs hitTest...

CODE
if((monClipQuiBougePas.hitTest(ClipBouge._x-ClipBouge._width/2, ClipBouge._y-ClipBouge._height/2, true)

or

 (monClipQuiBougePas.hitTest(ClipBouge._x+ClipBouge._width/2, ClipBouge._y-ClipBouge._height/2, true)

or

(monClipQuiBougePas.hitTest(ClipBouge._x-ClipBouge._width/2, ClipBouge._y+ClipBouge._height/2, true)

or

(monClipQuiBougePas.hitTest(ClipBouge._x+ClipBouge._width/2, ClipBouge._y+ClipBouge._height/2, true)){

trace("collision");

}


c'est pas beau mais ca marche...

a+
Mouette

#13 top_moumoute

    Ceinture Jaune

  • Members
  • PipPip
  • 16 messages

Posté 06 February 2003 - 23:19 PM

merci pour le site c nickel smile.gif du coup je vais abandonner les hitTests je pense smile.gif

Enfin ca marche smile.gif



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)