Bonjour,

Je code actuellement un jeu Android et je cherche à implémenter une gestion de collisions de sprites.

J'ai dans mon jeu 10 sprites 'méchants' + 1 'gentil'.

J'aimerais faire en sorte que :
Lorsque deux sprites 'méchants' se rencontrent il y ait une collision et ajouter une exception lorsque l'un de ces sprites rencontre le sprite 'gentil', il n'y ait pas de collision mais que le sprite 'gentil' soit enlevé de l'écran (= game over).

J'ai essayé ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
public boolean isCollition(float x2, float y2) {
    return x2 > x && x2 < x + width && y2 > y && y2 < y + height;
}
 
public boolean collidesWith(Sprite obj) {
    if (obj.y <= this.y + this.height && 
                   obj.y + obj.height >= this.y    && 
                   obj.x + obj.width >= this.x && 
                   obj.x <= this.x + this.width){
        return true;
   }
   return false;
}
Donc ma première demande est la plus importante et concerne la collision entre les sprites, et la deuxième est d'ajouter une exception pour un sprite spécifique, ici le 'gentil'.

Quelqu'un saurait-il m'indiquer comment procéder ?

Merci d'avance pour votre aide.