Mostrando entradas con la etiqueta programación. Mostrar todas las entradas
Mostrando entradas con la etiqueta programación. Mostrar todas las entradas

viernes, 9 de mayo de 2008

Cambios importantes

En este tiempo he estado sin tocar mucho el proyecto, pero en 2 semanas en concreto hice varios avances importantes.

Primero, conseguí crear teletransportes funcionales, en los que la velocidad y dirección de salida son iguales a las de entrada. Dichos teletransportes funcionan con las rocas y con el protagonista.
La pieza que tienes seleccionada para añadir, ahora se dibuja en la posición donde aparecerá al hacer click, pero con algo de transparencia para no quitar visión y para distinguirla.

También he hecho un pequeño cambio en el diseño de las rocas gracias a un sprite de Miguel Herrero.

Esta semana he avanzado en partes importanes. He hecho un menú principal, un menú de pausa y ahora el HUD/GUI ya es funcional. Me faltan unos pequeños detalles, pero dentro de poco podré subir una versión beta.

miércoles, 9 de abril de 2008

Varios cambios

Desde la última actualización he estado trabajando más que nada en cambios internos (organización de las clases y demás), pero también he conseguido algunas cosas importantes:

- HUD básico, aunque no me gusta cómo ha quedado
- Mensajes por pantalla (para indicar el inicio y fin de nivel, para cuando pierdes...)
- Eliminado el doble salto (todavía no lo había hecho)
- Añadido sonido provisional para los pasos
- Cambiado el estilo de las bolas. Ahora serán bolas de fuego que no podrás tocar.
- Ya se dibujan las puertas de inicio y fin del nivel.

Creo que eso es todo por ahora.

lunes, 3 de marzo de 2008

Arreglando los movimientos

Hasta hoy el personaje se movía utilizando una rueda invisible proporcionada por el motor físico. Al pulsar las teclas aceleraba hacia cada lado y el movimiento del personaje era extraño (acelerando hasta velocidades muy grandes, no pudiendo mantenerse en las cuestas sin rodar por ellas...)

Me he pasado casi toda la tarde intentando arreglar eso "jugando" con las opciones de la rueda, la velocidad angular, el peso, elasticidad, fricción... pero sólo conseguía hacer cada vez más raro el control.

Al final se me ha ocurrido cambiar la rueda por un círculo. Al pulsar izquierda o derecha se mueve 3 pixeles a un lado o al otro. La gravedad y los bloques flotantes le afectan normalmente, y ahora puede subir cuestas y quedarse parado en ellas facilmente. No pensé que con tan pequeño cambio fuese a arreglar tantas cosas de golpe.

También he decidido dejar que se pueda cambiar de dirección en el aire como en muchos juegos de plataformas.

lunes, 21 de enero de 2008

Carga de archivos(2)

Hoy he terminado por fin la carga de mapas desde ficheros de texto. El siguiente paso será la parte de guardar los mapas en archivos desde el editor, que aún no está hecho.

También he mejorado los bloques botantes, que antes te hacían botar cada vez más pero aumentando demasiado el salto en cada bote, llegando a velocidades que daban problemas en el juego (atravesar paredes o techos por ejemplo)

- Tareas a corto plazo:
  • Crear estructuras y funciones varias para aligerar y simplificar el código. (Clase "bloque", con "botante", "triángulo".. etc por herencia)
  • Terminar la programación necesaria para hacer un nivel sencillo jugable (Puerta de inicio, puerta de salida y mensaje de fin de nivel)
- Tareas a largo plazo:
  • Menús del juego
  • Editor de niveles
  • Enemigos

lunes, 14 de enero de 2008

Carga de archivos

Hoy he estado investigando cómo guardar los mapas y cargarlos desde archivos de texto, ya que en clase sólo dimos lectura y escritura de ficheros con C++ por encima.

Al menos he conseguido leer desde un archivo la posición inicial del jugador y la posición de la salida del nivel.

La idea es que el archivo de cada mapa sea algo así:
[Inicio]
2 3
[Fin]
4 5
[Cuadrados] //coordenadas donde tiene que crear un bloque cuadrado
3 4 3 5 3 6 ..........
[Triangulos_peq_der] //Triangulos pequeños apuntando hacia la derecha
..........
etc etc