Beispiel #1
0
        // 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);
        }
Beispiel #2
0
        //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);
        }