Beispiel #1
0
 public override void Colisionar(MeshTipoCaja mesh, Colisionable colisionable)
 {
     if (colisionable.movimiento.Y <= 0)
     {
         //var centroCaraY = CaraBuilder.Instance().Mesh(mesh).HallarCentroDeCara("y");
         //personaje.Mesh.Transform *= TGCMatrix.Translation(personaje.Position.X, centroCaraY.Y, personaje.Position.Z); ;
         colisionable.movimiento.Y = 0;
         colisionable.ColisionoEnY();
     }
 }
        public override void Colisionar(MeshTipoCaja meshTipoCaja, Colisionable colisionable)
        {
            if (SeEstaMoviendoHaciaMi(colisionable))
            {
                //if(colisionable is Personaje) {
                //    AgregarRozamiento(colisionable);
                //}
                // Es feo, pero es la unica que se me ocurre, porque solo tenes que aplicarle rozamiento al personaje,
                // si empuja las dos cajas y aplicas rozamiento a la segunda caja, el efecto es que se termina atrasando la segunda
                // por el rozamiento y se mete adentro de la que esta mas cerca del personaje, o eso me entendi...

                meshTipoCaja.movimiento += Desplazamiento(colisionable);
            }
        }
Beispiel #3
0
 public CaraX(MeshTipoCaja meshTipoCaja, List <IAnteColision> accionesAnteColision, List <Rayo> rayos) : base(meshTipoCaja, accionesAnteColision, rayos)
 {
 }
Beispiel #4
0
 public Cara(MeshTipoCaja meshTipoCaja, List <IAnteColision> accionesAnteColision, List <Rayo> rayos)
 {
     this.accionesAnteColision = accionesAnteColision;
     this.meshTipoCaja         = meshTipoCaja;
     this.rayos = rayos;
 }
 public CaraBuilder Mesh(MeshTipoCaja mesh)
 {
     this.mesh = mesh;
     return(this);
 }
 public abstract void Colisionar(MeshTipoCaja meshTipoCaja, Colisionable colisionable);