Collisions

Anselmedu25 -  
 Anselmedu25 -
Bonjour!

Alors voilà, pour un jeu je cherche à programmer les collisions: je vous décris mon jeu: on a un carré qu'on déplace en haut, en bas, a gauche, a droite... et 2 balles rebondissent sur les murs, et dès que le carré se fait toucher, bref, on arrete et on marque perdu...

Le problème, c'est que je n'arrive pas à faire les collisions: j'ai dit que si la position Y de la balle était égale à la position Y du carré, et pareil pour X, on alerte "Perdu." Mais le problème il faut que la balle soit PILE a la position du carré, et je cherche comment faire pour dire si la position Y est égale "à peu près" à celle du carré par exemple...

Pouvez vous m'aider?
Merci.

10 réponses

  1. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    Hum, le plus simple serait de calculer la distance entre les deux points, et que si il dépasse une limite, tu la considère comme touché.
    0
  2. Anselmedu25
     
    Hmmm... Intelligent... Merci beaucoup, je vais essayer sa.
    0
  3. Anselmedu25
     
    Je ne trouve pas comment faire cette fonction...
    0
  4. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    Tu as indiqué que :
    j'ai dit que si la position Y de la balle était égale à la position Y du carré, et pareil pour X ...

    TU doit te retrouver avec un truc quelque part indiquer
    if(posYballe==posYcarre && posXballe==posXcarre)

    il te suffit donc de remplacer
    posYballe==posYcarre
    par if(abs(posYballe-posYcarre)<10 , nan ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Anselmedu25
     
    Hum... Oui, je vais essayer mais à quoi sert abs?

    Merci de ton aide.
    0
  7. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    abs, pour obtenir la valeurs absolu de la différence.

    Par contre, c'est Math.abs( et non abs( tout simple je crois.
    0
  8. Anselmedu25
     
    Salut, merci.

    Comment je pourrais mesurer le temps, faire un chronomètre? Avec quel fonction?
    0
  9. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    Tu as toujours setTimeOut, qui te permet de lancer une fonction au bout de X temps
    0
  10. Anselmedu25
     
    Oui, mais sa ne compte pas comme un chronomètre...
    0