Intermission

Capítulo Tres

Cuando Pac-man recorre tres laberintos con éxito pasamos a la escena de "Intermission" que consiste en presentar el nuevo nivel donde todo será más difícil. Pac-man se pasea y come una bola de poder y se gira hacia Blinky, ahora puede atraparlo.

EVENT GAMEINIT

Abre el editor MPAGD. Selecciona "Game initialisation" del menú "Events", deberá quedar así:

EVENT GAMEINIT

; VARIABLES GLOBALES

LET LIVES = 3
LET N = 0    ; contador PILDORAS
LET D = 0    ; contador PILDORAS DE PODER
LET M = 0    ; Modo/cronómetro. "DISPERSION o DESPLIEGUE", "PERSECUCION", "ASUSTADO".
LET Z = 0 ; Ritmo
LET P = 1 ; PANTALLAS
LET L = 1 ; niveles de dificultad
LET C = 1 ; CONTADOR INTERMISIÓN
LET H = 0        ; contador FRUTAS

LET B = 0        ; cronómetro marcador de BONUS en pantalla
LET J = 0        ; contador PACKS 200 BONUS 
LET G = 0        ; contador fantasmas 

LET K = 5    ; PACMAN DEATH 0,1,2,3,4 = MURIENDO, 5 = READY.
LET Q = 0    ; TARJET X
LET R = 0    ; TARJET Y
LET T = 0    ; coordenada X de BLINKY
LET U = 0    ; coordenada Y de BLINKY
LET V = 0    ; coordenada X de PACMAN
LET W = 0    ; coordenada Y de PACMAN
LET I = 0    ; DIRECCION de PACMAN
; MARCADORES

AT 22 16
DISPLAY LIVES
AT 22 14
AT 22 2
SHOWSCORE
AT 22 24
SHOWHIGH

Guarda el texto, cierra el editor de textos, guarda el proyecto.

Hemos añadido "LET C = 1" para establecer el contador de niveles (o pantallas) que debemos agotar pasa saltar a la pantalla "Intermission". 

RESTARTSCREEN

Como estamos haciendo hasta ahora establecemos las condiciones iniciales.

Abre el editor MPAGD. Selecciona "Restart screen" del menú "Events", añade este código:

IF SCREEN = 3        ; si estamos entrando en "INTERMISSION" entonces
LET F = 1        ; establecer modo "enmarcado"
LET S = 0        ; restaurar cronómetro
LET M = 0        ; asegurar modo "dispersión"
LET N = 0        ; restaurar contador "puntos de luz"
ENDIF

Guarda el texto, cierra el editor de textos, guarda el proyecto.

El programa vuelve a levantar la bandera "enmarcado" para que Main loop 2 haga su trabajo. Se asegura de que Blinky persigue a Pac-man desde un principio (M=0). Hasta este momento N=193, debemos restaurar N=0 ya que Pac-man saltaría a BONUS de nuevo si N=193 (consulta diagrama de flujo de pantallas).

Main loop 2

Selecciona "Restart screen" del menú "Events". Añade este código:

IF SCREEN = 3        ; si estamos en INTERMISSION
    IF F = 1            ; y en modo "enmarcado" entonces
INK 7                ; tinta White
PAPER 0              ; papel Black
PUT 8 136 0          ; coloca a "Kokoro"
AT 10 12 MESSAGE 7   ; pinta el nivel
AT 10 18 DISPLAY P
;SILENCE             ; apagar Player
;SOUND 2             ; reproduce música "Intermission"
;SOUND 0             ; sonar solo una vez
LET F = 2            ; establece ya el modo "Insert coin"
    ENDIF
ENDIF

Guarda el texto, cierra el editor de textos, guarda el proyecto.

Volvemos a pintar y reproducir sonidos una sola vez para pasar a modo "Insert coin" enseguida (evitamos contadores y efectos de sonido).

Event Player

Siempre tiene la última palabra.

Selecciona "Player" del menú "Events". Añade este código a las comprobaciones:

IF SCREEN = 3    ; si estamos en pantalla INTERMISSION
    IF S > 7          ; y agotamos 7 segundos
        SILENCE           ; parar el reproductor con tema INTERMISION
LET X = 112       ; posición GET READY
LET Y = 96
LET FRAME = 0
LET IMAGE = 0     ; mirar a derecha
LET DIRECTION = RIGHT
LET SCREEN = 0    ; saltar a la pantalla LABERINTO
        LET F = 0         ; restauramos modo "Juego"
EXIT              ; salir del script
    ENDIF
ENDIF

Exacto. Es Pac-man el que se adentra en el laberinto. Antes apaga la música, se coloca en posición, se orienta a la derecha y cambia el decorado y se dispone a jugar!

Test

Si quieres probar si funciona la pantalla de "Intermission" cambia en "Event Player" la siguiente línea de la "sección comprobaciones"...

IF N = 193     ; si terminamos el tablero entonces

...por esta otra línea...

IF N >5 ;= 193     ; si terminamos el tablero entonces

...y guarda los cambios. Prueba con F5 para poder ver la pantalla de Intermission cuando hayas completado 3 niveles.

Vuelve a dejar la línea del script como estaba después de comprobar que todo funciona. Debe quedar así:

IF N = 193     ; si terminamos el tablero entonces

Recuerda guardar los cambios y guardar el proyecto.

Fin de impresión

Fin de Impresión

Si. Así es, hemos terminado el guion de esta historia. Han pasado muchas semanas, espero que entretenidas. Hemos imaginado ser los desarrolladores de uno de los juegos más famosos de la historia y creo que uno de los más interesantes.

Hasta aquí el desarrollo del juego, a partir de aquí implementamos cosas como el sonido y la producción final. No son necesarios para echar unas partiditas; pero los video-juegos no son solo programas. Hay otro 30% de marketing y el otro 30% de diseño.

Para una buena película, una buena banda sonora es fundamental. Pac-man está lleno de sonido y música. Estos elementos son esenciales en un Arcade y nosotros los vamos a añadir al juego. No podría ser de otra manera.

"Además de un programador, el equipo de Iwatani incluye un ingeniero de hardware para desarrollar los diversos dispositivos y componentes. Sólo el equipo de ingenieros de hardware conocen los secretos del lenguaje de las máquinas, serán los que hagan posible el ensamblado final"

Sala de reuniones del Proyecto Pacman 7 de diciembre de 1977.

Comentarios

Entradas populares de este blog

El laberinto