Aprende a crear juegos en HTML5 Canvas

viernes, 1 de julio de 2016

Reto: Terrenos con laderas

Sea que empezaste desde cero, o tan solo buscando perfeccionar tus avanzados conocimientos, llegaste a este blog buscando conocimiento, el cual gracias a comentarios como el tuyo, me enorgullece saber que ha sido de mucha ayuda a todos ustedes. Bueno, es tiempo de regresar un poco de ese conocimiento a la comunidad.

Hoy nos enfrentamos a un problema que aun no hemos podido resolver entre los participantes del blog, y por eso queremos alcanzar a toda la comunidad para encontrar la solución más óptima. Propuesto por +FormatCom, llega uno de los retos más complejos que hemos tenido hasta el momento en el blog: Terrenos con laderas.

¿No sabes lo que es un terreno con ladera? Tal vez si lo sepas y simplemente no lo conoces por nombre, pero ellos han estado entre nosotros desde mucho tiempo atrás en los videojuegos. Posiblemente te sea más claro viendo este nivel (1-2) de un clásico del NES:


https://youtu.be/bKublR3pZ2s?t=1m25s

Entonces ¿Cómo debemos programar para obtener estas pendientes en nuestros juegos de plataformas? Es aquí donde te necesitamos. Investiga y prueba métodos para realizar este efecto, estudia el código de los compañeros que han mostrado aquí sus progresos y propón las mejoras requeridas para llegar al mejor código para realizar este efecto. La idea es apoyar entre toda la comunidad para conseguir nuestra meta y compartirla con los demás.

Todas las ideas serán agregadas aquí abajo, para ir viendo el progreso del reto. Esperamos contar con tu participación. ¡Mucha suerte a todos! Felices códigos.

Lista de participantes:

Karl Tayfer
https://jsfiddle.net/daPhyre/sxjow3zm/

Ventajas:
- Funciona con tile maps.
Problemas encontrados:
- El suelo del personaje debería estar en medio, en este caso está ocurriendo en una de las dos orillas inferiores.
- Cuando llega a la esquina de una ladera encadenada, se frena por un instante antes de seguir.

12 comentarios:

  1. Ok trabajando, para la otra semana subo una demo.

    ResponderEliminar
    Respuestas
    1. ¡Mucha suerte! Estaré al pendiente de tu entrada.

      Eliminar
  2. Me apunto :D sacare algo de tiempo para montar un demo

    ResponderEliminar
    Respuestas
    1. ¡Mucha suerte! ¡Ojalá puedas conseguir algo también para compartir!

      Eliminar
  3. Muy buenos tutoriales :) , Hay una pagina que habla de esto aqui
    http://www.redribera.es/formacion/tutoriales/viewfile.html?file=tilegames0909-29.xml
    adaptando el condigo un poco se puede mejorar ademas habla de la busqueda de caminos y muchas tecnicas mas.

    ResponderEliminar
    Respuestas
    1. muy bueno, aun no he tenido tiempo por culpa del trabajo pero apenas pueda hago un demo en verdad gran aporte anonimo.

      Eliminar
    2. ¡Muchas gracias por el enlace! Ya estaba creando una segunda versión, con otras ventajas y desventajas, pero lo que menciona este enlace que nos proporcionas, podría ser la clave faltante para que funcione la nueva idea que tengo en desarrollo. Les avisaré una vez que lo implemente. ¡Muchas gracias!

      Eliminar
  4. con función lineal si quieren detectar que dos rectas (inclinadas) se tocan
    igualan la ecuación de la circunferencia con la función lineal si quieren trabajar con súrculos y lineas
    saludos

    ResponderEliminar
  5. he descubierto que esto que investigamos en ingles se llama slope y sale mucha mas informacion buscando de esa manera

    https://www.google.com.co/search?q=slope&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi_jajyu8vOAhWC4iYKHYxIDlkQ_AUICCgB&biw=1366&bih=667#tbm=isch&q=game+slope+2d

    ResponderEliminar
  6. to hice esto..pero... aun no puedo hacer q resbale por ellas case 6:
    rh=blockSize-1;
    rr=0;
    while(rr<blockSize){
    rmp1.push(new Rectangle((col*blockSize)+rr,(row*blockSize)+rh,1,blockSize-rh,true));
    rr+=1;
    rh-=1;
    }

    ResponderEliminar
  7. intentare :( apenas llevo esto http://comenzando.pe.hu/Triangulo%20Interactivo%20en%20canvas.html

    ResponderEliminar