// collision avec voiture public bool EstEnCollision2(Voiture ennemi) { // 2 x 2 sphères de collisions bool valeurRetour = false; if (SphèreDeCollisionArrière.Intersects(ennemi.SphèreDeCollisionArrière)) { valeurRetour = true; } else if (SphèreDeCollisionArrière.Intersects(ennemi.SphèreDeCollisionAvant)) { valeurRetour = true; } else if (SphèreDeCollisionAvant.Intersects(ennemi.SphèreDeCollisionArrière)) { valeurRetour = true; } else if (SphèreDeCollisionAvant.Intersects(ennemi.SphèreDeCollisionAvant)) { valeurRetour = true; } EstEnCollisionAvecOBJ = valeurRetour; return(EstEnCollisionAvecOBJ); }
//collisions avec objets public bool EstEnCollision(object autreObjet) { bool valeurRetour1 = false; bool valeurRetour2 = false; // box if (autreObjet is Maison) { valeurRetour1 = SphèreDeCollisionAvant.Intersects((autreObjet as Maison).BoxDeCollision); valeurRetour2 = SphèreDeCollisionArrière.Intersects((autreObjet as Maison).BoxDeCollision); } // sphères else if (autreObjet is ICollisionable) { valeurRetour1 = SphèreDeCollisionAvant.Intersects((autreObjet as ICollisionable).SphèreDeCollision); valeurRetour2 = SphèreDeCollisionArrière.Intersects((autreObjet as ICollisionable).SphèreDeCollision); } EstEnCollisionAvecOBJ = (valeurRetour1 || valeurRetour2); return(valeurRetour1 || valeurRetour2); }