Sir Ababol Remaster; 20160413

Entre otras cosas envío los sprites de los enemigos a la copia de la OAM en un orden diferente cada frame, evitando desapariciones (ahora hay parpadeos: BIEN).

Ahora voy a hacer el HUD. Para ello crearé un metasprite con los elementos fijos para ahorrar código.

0x51 = vidas
0x52 = ababol
0x53 = llave
0x54 = 'x'
0x55... = '0'

Todo esto lo quiero encasquetar al final de la OAM.

La parte fija del HUD son 6 elementos, o sea, 24 bytes. La parte variable son 4 elementos, o sea, 16 bytes. Total: 40 bytes. Lo creo al principio, en la parte fija de mi mierda, justo después del player, en 28. El inicio del parque movil se mueve, por tanto, a 68.

~~

No sé en qué punto pasó esto, pero hay algo jodiéndomelo todo. Los sonidos no suenan, la música se corrompe, aparecen sprites donde no son… Uf.

Medio resuelto: estaba usando una versión de famitracker que no se llevaba bien con el conversor que estaba usando (eran versiones diferentes). Aún sigue sonando raro, es un misterio. A unas malas, al final del proyecto, cojo y le encasquieto famitracker 1 y los archivos antiguos, que sí sonaban bien.

Ahora he visto que los hotspots no funcionan en otro piso que no sea el segundo. Probablemente no se esté actualizando algo.

Medio resuelto: ahora va, a medias. Los detecta y reacciona, pero no es capaz de “tapar” los objetos. Algo falla en el scroller.

Fixed: No era en el scroller, era que a la hora de poner a 0 la posición correcta del array, no se estaba añadiendo el offset de la tira.

Ya va todo guay (menos el puto sonido del salto).

Ahora lo que quedaría sería:

[X] Tocar ppu_mask, desactivar la tira izquierda, activar +B en el subsuelo.
[X] Intentar introducir las subsecciones, pensar en una forma de organizar la info (*)
[X] Condición de fin de juego.
[X] Pantalla (C)
[ ] Título
[ ] Game Over
[ ] Ending sequence

Con esto hecho, ya puedo empezar a meter el modo secreto de juego = la DIABLURA.

(*) En el cambio de strip se consulta la posición X de tile del centro del sprite del prota con una serie de datos almacenados en un array.

-> array de cambios:
0  1  2  3
a, b, c, d

Si por ejemplo a <= x <= b, se toma que es la sección del índice de “a”, o sea, la 0. -> array de limites
l_x1 [] y l_x2 [], indizados por ‘a’, establecen los limites de la camara para esa sección.

Esto va a funcionar de la muerter! Mañana le meto.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s