'BOMBER GAME FOR LOWRES NX ' GAME BY PABLO ' TITLE IMAGE BY THESAILOR ' GLOBAL DATA RETRYLEVEL = 0 GAMEOVER = 0 NENEMY = 0 NLIVES = 0 NLEVEL = 0 NTIME = 0 NBLOCK = 0 NPOWER = 0 PLAYER1 = 0 PLAYER1X = 0 PLAYER1Y = 0 PLAYER1T = 0 PLAYER1DIR = 0 DIM ENEMY(8) DIM ENEMYX(8) DIM ENEMYY(8) DIM ENEMYT(8) DIM ENEMYDIR(8) DIM RESPAWN(8) DIM RESPAWNX(8) DIM RESPAWNY(8) DIM RESPAWNT(8) BOMB = 0 BOMBX = 0 BOMBY = 0 BOMBT = 0 DIM FIRE(16) DIM FIREX(16) DIM FIREY(16) DIM FIRET(16) POWERUP = 0 POWERUPX = 0 POWERUPY = 0 POWERUPT = 0 DOOR = 0 DOORX = 0 DOORY = 0 ' INIT GAMEPAD 1 NENEMY = 6 NLIVES = 3 NPOWER = 1 NTIME = 200 GOSUB OPENING GOSUB INIT_GAME ' MAIN LOOP DO SPRITE OFF GOSUB UPDATE_RESPAWN GOSUB UPDATE_PLAYER1 GOSUB UPDATE_ENEMIES GOSUB UPDATE_BOMB GOSUB UPDATE_FIRE GOSUB UPDATE_DOOR GOSUB UPDATE_POWERUP GOSUB UPDATE_DISPLAY GOSUB UPDATE_STATUS WAIT 2 LOOP ' SUBROUTINES OPENING: SPRITE OFF CLS COPY ROM(13), SIZE(13) TO $8000 BG SOURCE ROM(14) BG COPY 0,0,20,16 TO 0,0 FOR I=1 TO 120 PLAY 0, 15 SOUND 0 IF BUTTON(0) THEN EXIT WAIT 2 NEXT I COPY ROM(2), SIZE(2) TO $8000 RETURN INIT_GAME: RANDOMIZE TIMER SPRITE OFF GOSUB STAGE_SELECT ' REMOVE EXPLOSIONS BOMB = 0 FOR I=0 TO 16 FIRE(I) = 0 NEXT I ' REMOVE ENEMIES PLAYER1 = 0 FOR I=0 TO 7 ENEMY(I) = 0 NEXT I ' REMOVE POWERUPS POWERUP = 0 ' REMOVE DOOR DOOR = 0 ' LOAD LEVEL NBLOCK = 0 PAL 0 BG SOURCE ROM(3) BG COPY 0, 0, 32, 16 TO 0, 0 FOR I=4 TO 14 FOR J=1 TO 29 IF CELL.C(J, I) = 0 AND RND(3) = 0 THEN CELL J, I, 32 NBLOCK = NBLOCK + 1 END IF NEXT J NEXT I CELL 1, 4, 0 CELL 2, 4, 0 CELL 1, 5, 0 NBLOCK = NBLOCK - 3 PLAYER1 = 1 PLAYER1X = 8 PLAYER1Y = 32 PLAYER1DIR = 0 FOR I=1 TO 6 FOR TRY=1 TO 100 RESPAWNX(I) = RND(28) RESPAWNY(I) = RND(10) DIST = RESPAWNX(I) + RESPAWNY(I) ODD = RESPAWNX(I) MOD 2 AND RESPAWNY(I) MOD 2 IF (ODD = 0) AND (DIST > 2) THEN EXIT NEXT TRY CELL RESPAWNX(I) + 1, RESPAWNY(I) + 4, 0 NBLOCK = NBLOCK - 1 RESPAWN(I) = 2 RESPAWNX(I) = RESPAWNX(I) * 8 + 8 RESPAWNY(I) = RESPAWNY(I) * 8 + 32 NEXT I RETURN STAGE_SELECT: SPRITE OFF CLS PAL 6 BG FILL 0, 0 TO 19, 15 CHAR 15 TEXT 6, 8, "STAGE " + STR$(NLEVEL + 1) FOR I=1 TO 60 WAIT 2 NEXT I RETURN UPDATE_STATUS: NTIME = NTIME - 0.03 IF NTIME < 1 THEN NTIME = 0 NLIVES = 0 IF PLAYER1 THEN PLAYER1 = 0 PLAY 3, 25 SOUND 5 END IF END IF IF (PLAYER1 = 0) AND (NLIVES > 0) THEN IF RETRYLEVEL AND (BUTTON(0) = 0) THEN NENEMY = 6 NPOWER = 1 NTIME = 200 GOSUB INIT_GAME RETRYLEVEL = 0 END IF IF (RETRYLEVEL = 0) AND BUTTON(0) THEN RETRYLEVEL = 1 END IF END IF IF (NLIVES = 0) THEN IF GAMEOVER AND (BUTTON(0) = 0) THEN NENEMY = 6 NLIVES = 3 NPOWER = 1 NLEVEL = 0 NTIME = 200 GOSUB OPENING GOSUB INIT_GAME GAMEOVER = 0 END IF IF (GAMEOVER = 0) AND BUTTON(0) THEN GAMEOVER = 1 END IF END IF RETURN UPDATE_RESPAWN: FOR I=0 TO 7 IF RESPAWN(I) THEN RESPAWNT(I) = RESPAWNT(I) + 1 IF (RESPAWNT(I) > 8) THEN RESPAWNT(I) = 0 IF RESPAWN(I) = 2 THEN ENEMY(I-1) = 1 - (I <= NLEVEL) ENEMYX(I-1) = RESPAWNX(I) ENEMYY(I-1) = RESPAWNY(I) ENEMYDIR(I-1) = RND(3) END IF RESPAWN(I) = 0 END IF ' DRAW RESPAWN SPRITE 30 + I, RESPAWNX(I)-SCROLL.X(0), RESPAWNY(I), 16 + (RESPAWNT(I)\5 MOD 4) END IF NEXT I RETURN UPDATE_PLAYER1: IF PLAYER1 THEN ' PLAYER MOVE LASTX = PLAYER1X LASTY = PLAYER1Y PLAYER1T = PLAYER1T - 1 IF (PLAYER1T < 0) THEN PLAYER1T = 0 END IF IF LEFT(0) THEN PLAYER1Y = (PLAYER1Y + 4) \ 8 * 8 PLAYER1X = PLAYER1X - 1 PLAYER1DIR = 3 ELSE IF RIGHT(0) THEN PLAYER1Y = (PLAYER1Y + 4) \ 8 * 8 PLAYER1X = PLAYER1X + 1 PLAYER1DIR = 1 ELSE IF UP(0) THEN PLAYER1X = (PLAYER1X + 4) \ 8 * 8 PLAYER1Y = PLAYER1Y - 1 PLAYER1DIR = 0 ELSE IF DOWN(0) THEN PLAYER1X = (PLAYER1X + 4) \ 8 * 8 PLAYER1Y = PLAYER1Y + 1 PLAYER1DIR = 2 END IF ' COLLIDE WITH TILES IF CELL.C(PLAYER1X\8, PLAYER1Y\8) THEN PLAYER1X = LASTX PLAYER1Y = LASTY ELSE IF CELL.C((PLAYER1X+7)\8, PLAYER1Y\8) THEN PLAYER1X = LASTX PLAYER1Y = LASTY ELSE IF CELL.C(PLAYER1X\8, (PLAYER1Y+7)\8) THEN PLAYER1X = LASTX PLAYER1Y = LASTY ELSE IF CELL.C((PLAYER1X+7)\8, (PLAYER1Y+7)\8) THEN PLAYER1X = LASTX PLAYER1Y = LASTY END IF ' COLLIDE WITH BOMBS IF BOMB THEN IF PLAYER1X > (BOMBX - 8) AND PLAYER1X < (BOMBX + 8) THEN IF PLAYER1Y > (BOMBY - 8) AND PLAYER1Y < (BOMBY + 8) THEN FREEPOS = 1 IF LASTX > (BOMBX - 8) AND LASTX < (BOMBX + 8) THEN IF LASTY > (BOMBY - 8) AND LASTY < (BOMBY + 8) THEN FREEPOS = 0 END IF END IF ' IF LAST POSITION IS FREE IF FREEPOS THEN PLAYER1X = LASTX PLAYER1Y = LASTY ENEMYT(I) = ENEMYT(I) + 16 END IF END IF END IF END IF ' COLLIDE WITH POWERUPS IF POWERUP THEN IF PLAYER1X > (POWERUPX - 8) AND PLAYER1X < (POWERUPX + 8) THEN IF PLAYER1Y > (POWERUPY - 8) AND PLAYER1Y < (POWERUPY + 8) THEN POWERUP = 0 IF NPOWER < 4 THEN NPOWER = NPOWER + 1 END IF END IF END IF ' COLLIDE WITH DOOR IF DOOR AND (NENEMY = 0) THEN IF PLAYER1X > (DOORX - 4) AND PLAYER1X < (DOORX + 4) THEN IF PLAYER1Y > (DOORY - 4) AND PLAYER1Y < (DOORY + 4) THEN NENEMY = 6 NLEVEL = (NLEVEL + 1) MOD 10 NLIVES = NLIVES + 1 NTIME = 200 GOSUB INIT_GAME END IF END IF END IF ' PLAYER MOVE SOUND IF (PLAYER1X = LASTX) AND (PLAYER1Y = LASTY) THEN ELSE IF (PLAYER1X + PLAYER1Y) MOD 4 = 0 THEN PLAY 0, 27 SOUND 1 IF (PLAYER1X-10*8) > 0 AND (PLAYER1X-16*8) < 5*8 THEN SCROLL 0, PLAYER1X-10*8, 0 END IF END IF ' PLAYER SHOT IF (BOMB = 0) THEN IF BUTTON(0) AND (PLAYER1T = 0) THEN BOMB = 1 BOMBX = (PLAYER1X + 4) \ 8 * 8 BOMBY = (PLAYER1Y + 4) \ 8 * 8 BOMBT = 0 PLAYER1T = 4 END IF END IF ' DRAW PLAYER SPRITE 0 PAL 2 IF (PLAYER1DIR = 0) THEN SPRITE 0, PLAYER1X-SCROLL.X(0), PLAYER1Y, 1 + PLAYER1Y\4 MOD 2 SPRITE 0 FLIP 0, 0 ELSE IF (PLAYER1DIR = 2) THEN SPRITE 0, PLAYER1X-SCROLL.X(0), PLAYER1Y, 1 + PLAYER1Y\4 MOD 2 SPRITE 0 FLIP 1, 0 ELSE IF (PLAYER1DIR = 1) THEN SPRITE 0, PLAYER1X-SCROLL.X(0), PLAYER1Y, 3 + PLAYER1X\4 MOD 2 SPRITE 0 FLIP 0, 0 ELSE IF (PLAYER1DIR = 3) THEN SPRITE 0, PLAYER1X-SCROLL.X(0), PLAYER1Y, 3 + PLAYER1X\4 MOD 2 SPRITE 0 FLIP 1, 0 END IF ELSE ' DRAW DEAD PLAYER SPRITE 27, PLAYER1X-SCROLL.X(0), PLAYER1Y, 11 END IF RETURN UPDATE_ENEMIES: FOR I=0 TO 7 IF ENEMY(I) THEN ' ENEMY MOVE LASTX = ENEMYX(I) LASTY = ENEMYY(I) ENEMYT(I) = ENEMYT(I) + 1 IF (ENEMYT(I) > 32) THEN ENEMYT(I) = 0 ENEMYDIR(I) = RND(3) IF (ENEMY(I) = 2) AND (RND(2) <> 0) THEN DX = PLAYER1X - ENEMYX(I) DY = PLAYER1Y - ENEMYY(I) IF ABS(DX) < 32 AND ABS(DY) < 32 THEN IF ABS(DX) > ABS(DY) THEN ENEMYDIR(I) = SGN(DX) + 2 ELSE ENEMYDIR(I) = SGN(DY) + 1 END IF END IF END IF END IF IF ENEMYDIR(I) = 1 THEN ENEMYY(I) = (ENEMYY(I) + 4) \ 8 * 8 ENEMYX(I) = ENEMYX(I) - 1 ELSE IF ENEMYDIR(I) = 3 THEN ENEMYY(I) = (ENEMYY(I) + 4) \ 8 * 8 ENEMYX(I) = ENEMYX(I) + 1 ELSE IF ENEMYDIR(I) = 0 THEN ENEMYX(I) = (ENEMYX(I) + 4) \ 8 * 8 ENEMYY(I) = ENEMYY(I) - 1 ELSE IF ENEMYDIR(I) = 2 THEN ENEMYX(I) = (ENEMYX(I) + 4) \ 8 * 8 ENEMYY(I) = ENEMYY(I) + 1 END IF ' SLOWDOWN IF (ENEMY(I) = 1) AND (ENEMYT(I) MOD 4) = 0 THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY END IF ' COLLIDE WITH TILES IF CELL.C(ENEMYX(I)\8, ENEMYY(I)\8) THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY ENEMYT(I) = ENEMYT(I) + 16 ELSE IF CELL.C((ENEMYX(I)+7)\8, ENEMYY(I)\8) THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY ENEMYT(I) = ENEMYT(I) + 16 ELSE IF CELL.C(ENEMYX(I)\8, (ENEMYY(I)+7)\8) THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY ENEMYT(I) = ENEMYT(I) + 16 ELSE IF CELL.C((ENEMYX(I)+7)\8, (ENEMYY(I)+7)\8) THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY ENEMYT(I) = ENEMYT(I) + 16 END IF ' COLLIDE WITH BOMBS IF BOMB THEN IF ENEMYX(I) > (BOMBX - 8) AND ENEMYX(I) < (BOMBX + 8) THEN IF ENEMYY(I) > (BOMBY - 8) AND ENEMYY(I) < (BOMBY + 8) THEN FREEPOS = 1 IF LASTX > (BOMBX - 8) AND LASTX < (BOMBX + 8) THEN IF LASTY > (BOMBY - 8) AND LASTY < (BOMBY + 8) THEN FREEPOS = 0 END IF END IF ' IF LAST POSITION IS FREE IF FREEPOS THEN ENEMYX(I) = LASTX ENEMYY(I) = LASTY ENEMYT(I) = ENEMYT(I) + 16 END IF END IF END IF END IF ' COLLIDE WITH PLAYER1 IF PLAYER1 THEN IF ENEMYX(I) > (PLAYER1X - 8) AND ENEMYX(I) < (PLAYER1X + 8) THEN IF ENEMYY(I) > (PLAYER1Y - 8) AND ENEMYY(I) < (PLAYER1Y + 8) THEN NLIVES = NLIVES - 1 PLAYER1 = 0 PLAY 3, 25 SOUND 5 END IF END IF END IF ' DRAW ENEMY SPRITE 2 + I PAL 4 IF ENEMY(I) = 2 THEN SPRITE 2 + I PAL 3 IF (ENEMYDIR(I) = 0) THEN SPRITE 2 + I, ENEMYX(I)-SCROLL.X(0), ENEMYY(I), 5 + ENEMYY(I)\4 MOD 2 SPRITE 2 + I FLIP 0, 0 ELSE IF (ENEMYDIR(I) = 2) THEN SPRITE 2 + I, ENEMYX(I)-SCROLL.X(0), ENEMYY(I), 5 + ENEMYY(I)\4 MOD 2 SPRITE 2 + I FLIP 0, 0 ELSE IF (ENEMYDIR(I) = 1) THEN SPRITE 2 + I, ENEMYX(I)-SCROLL.X(0), ENEMYY(I), 7 + ENEMYX(I)\4 MOD 2 SPRITE 2 + I FLIP 0, 0 ELSE IF (ENEMYDIR(I) = 3) THEN SPRITE 2 + I, ENEMYX(I)-SCROLL.X(0), ENEMYY(I), 7 + ENEMYX(I)\4 MOD 2 SPRITE 2 + I FLIP 1, 0 END IF END IF NEXT I RETURN UPDATE_BOMB: IF BOMB THEN SPRITE 1 PAL 2 SPRITE 1, BOMBX-SCROLL.X(0), BOMBY, 9 + TIMER\5 MOD 2 BOMBT = BOMBT + 1 IF (BOMBT > 64) THEN BOMBT = 0 BOMB = 0 PLAY 3, 1 SOUND 6 ' CREATE EXPLOSIONS N = 0 FIRE(N) = 1 FIREX(N) = BOMBX FIREY(N) = BOMBY FIRET(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) = 33 THEN FIRE(N) = 0 N = N + 1 L = 1 R = 1 U = 1 D = 1 FOR I=1 TO NPOWER IF L THEN FIRE(N) = 1 FIREX(N) = BOMBX - I * 8 FIREY(N) = BOMBY FIRET(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) = 33 THEN FIRE(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) <> 0 THEN L = 0 N = N + 1 END IF IF R THEN FIRE(N) = 1 FIREX(N) = BOMBX + I * 8 FIREY(N) = BOMBY FIRET(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) = 33 THEN FIRE(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) <> 0 THEN R = 0 N = N + 1 END IF IF U THEN FIRE(N) = 1 FIREX(N) = BOMBX FIREY(N) = BOMBY - I * 8 FIRET(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) = 33 THEN FIRE(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) <> 0 THEN U = 0 N = N + 1 END IF IF D THEN FIRE(N) = 1 FIREX(N) = BOMBX FIREY(N) = BOMBY + I * 8 FIRET(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) = 33 THEN FIRE(N) = 0 IF CELL.C(FIREX(N)\8, FIREY(N)\8) <> 0 THEN D = 0 N = N + 1 END IF NEXT I END IF END IF RETURN UPDATE_FIRE: FOR I=0 TO 16 IF FIRE(I) THEN SPRITE 10 + I PAL 2 SPRITE 10 + I, FIREX(I)-SCROLL.X(0), FIREY(I), 16 + FIRET(I)\2 MOD 4 FIRET(I) = FIRET(I) + 1 IF (FIRET(I) > 10) THEN FIRET(I) = 0 FIRE(I) = 0 END IF IF SPRITE HIT(10 + I) THEN IF HIT > 1 AND HIT < 10 THEN IF ENEMY(HIT-2) THEN NENEMY = NENEMY - 1 ENEMY(HIT-2) = 0 PLAY 1, 25 SOUND 5 END IF END IF END IF IF SPRITE HIT(10 + I) THEN IF HIT = 0 AND PLAYER1 THEN NLIVES = NLIVES - 1 PLAYER1 = 0 PLAY 3, 25 SOUND 5 END IF END IF IF CELL.C((FIREX(I)+4)\8, (FIREY(I)+4)\8) THEN IF CELL.C((FIREX(I)+4)\8, (FIREY(I)+4)\8) = 32 THEN CELL (FIREX(I)+4)\8, (FIREY(I)+4)\8, 0 NBLOCK = NBLOCK - 1 IF DOOR = 0 AND (RND(NBLOCK) = 0 OR NBLOCK = 0) THEN DOOR = 1 DOORX = FIREX(I) DOORY = FIREY(I) ELSE IF POWERUP = 0 AND RND(NBLOCK) = 0 THEN POWERUP = 1 POWERUPT = 0 POWERUPX = FIREX(I) POWERUPY = FIREY(I) END IF PLAY 2, 25 SOUND 4 END IF IF CELL.C((FIREX(I)+4)\8, (FIREY(I)+4)\8) = 11 THEN CELL (FIREX(I)+4)\8, (FIREY(I)+4)\8, 0 NLIVES = 0 PLAYER1 = 0 PLAY 3, 25 SOUND 5 END IF ELSE IF CELL.C((FIREX(I)+3)\8, (FIREY(I)+3)\8) THEN IF CELL.C((FIREX(I)+3)\8, (FIREY(I)+3)\8) = 32 THEN CELL (FIREX(I)+3)\8, (FIREY(I)+3)\8, 0 NBLOCK = NBLOCK - 1 IF DOOR = 0 AND (RND(NBLOCK) = 0 OR NBLOCK = 0) THEN DOOR = 1 DOORX = FIREX(I) DOORY = FIREY(I) ELSE IF POWERUP = 0 AND RND(NBLOCK) = 0 THEN POWERUP = 1 POWERUPT = 0 POWERUPX = FIREX(I) POWERUPY = FIREY(I) END IF PLAY 2, 25 SOUND 4 END IF IF CELL.C((FIREX(I)+3)\8, (FIREY(I)+3)\8) = 11 THEN CELL (FIREX(I)+3)\8, (FIREY(I)+3)\8, 0 NLIVES = 0 PLAYER1 = 0 PLAY 3, 25 SOUND 5 END IF END IF END IF NEXT I RETURN UPDATE_POWERUP: IF POWERUP THEN POWERUPT = POWERUPT + 1 IF (POWERUPT > 320) THEN POWERUPT = 0 POWERUP = 0 END IF ' DRAW POWERUP SPRITE 28 PAL 7 SPRITE 28, POWERUPX-SCROLL.X(0), POWERUPY, 20 + (POWERUPT\5 MOD 2) END IF RETURN UPDATE_DOOR: IF DOOR THEN DOORT = DOORT + 1 IF (DOORT > 320) THEN DOORT = 0 END IF ' DRAW DOOR SPRITE 29 PAL 2 SPRITE 29, DOORX-SCROLL.X(0), DOORY, 34 + (DOORT\10 MOD 2) END IF RETURN UPDATE_DISPLAY: BG 1 BG FILL 0, 0 TO 19, 2 CHAR 15 TEXT 1, 1, "TIME" NUMBER 6, 1, NTIME, 3 TEXT 13, 1, "LEFT" NUMBER 18, 1, NLIVES, 1 BG 0 RETURN #1:PALETTES 003F1B060029140000382411002F1A04 00392510002E1904003F2A15003E2914 #2:CHARACTERS 00000000000000000000000000000000 181874587C663A1458245C643C7C3E34 181874583E665C2858245C643C3E7C2C 181874583E665C0858245C643C3E7C0C 181874587C663A1058245C643C7C3E30 3C5A3C663C6618003C66427E425A2418 00181824FFE7BD420018245A81FFC37E 00181824FFE7BD420018245A81FFC37E 3C5A3C663C6618003C66427E425A2418 00183C7E7E3C18000024420000422400 0024420000422400003C7E7E7E7E3C00 00001028142A54200000303C1C3E7660 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FFFFFFFFFFFFFFFF 00387C7C7C3800001028448244281000 00003838380000000010284428100000 0038547C5438000010286C826C281000 00003838380000000010284428100000 0000107C7CC644000010288244AAC600 0010288200288200001038FE386C8200 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 DF3030EFFB0606FD20EFEFFF04FDFDFF FE8181818181817F017F7F7F7F7F7FFF 54AAEE6C6C6CAA927CD69292BA92D6FE 54AAEE6C546CAA927CD69292BA92D6FE 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FFFFFFFFFFFFFFFF 0010000000000800FFF7E7E7E7FFEFFF 0024000000000000FFB793DBFFFFFFFF 00245A00005A2400FFFFDBDBDBDBFFFF 0008320000260800FFFFF3C7F1E7FFFF 0022000000024000FFBF9BF7EFDBF9FF 0014200048402000FFF7EBC7D9DBE5FF 0008081000000000FFEFEFDFFFFFFFFF 0004080000080400FFF7EFCFCFEFF7FF 0020100000102000FFEFF7F3F3F7EFFF 0000240842082400FFFFFFEFC3EFFFFF 0000000042000800FFFFE7E7C3E7EFFF 0000000010001000FFFFFFFFF7E7DFFF 0000000042000000FFFFFFFFC3FFFFFF 0000000000080000FFFFFFFFFFEFE7FF 0002040810200000FFFBF7EFDFBFBFFF 0024420000422400FFE7DB9189DBE7FF 0008280808084200FFEFEFEFEFEFC3FF 0024420408104200FFE7DBF7EFDFC3FF 0024420402422400FFE7DBF7FBDBE7FF 0022204000000400FFBBB9C1F9F9FDFF 0002204402024400FF83BFC7FBFBC7FF 0004000422020400FFE7CF87BB9BC7FF 0040020408001000FFC1FBF7EFCFDFFF 0024420000422400FFE7DBC399DBE7FF 0024422000422400FFE7DBE1F9DBE7FF 0000000800080000FFFFFFEFFFEFFFFF 0000000800081000FFFFFFEFFFEFDFFF 0000040800080400FFFFF7EFCFEFF7FF 0000004200420000FFFFFFC3FFC3FFFF 0000201000102000FFFFEFF7F3F7EFFF 0024420000000800FFE7DBF3E7FFEFFF 002442000A402400FFE7DB919BDFE7FF 0000004200002400FFE7C3DB8199BDFF 0044020402020400FFC79B879B9B87FF 0024420000422400FFE7DB9F9FDBE7FF 0048000202000800FFCF939B9B938FFF 0042000800004200FFC39F8F9F9FC3FF 0042000800004000FFC39F8F9F9FDFFF 0024400A00422400FFE7DF9B99DBE7FF 0042000000004200FFDB99819999DBFF 0034000000003400FFF7E7E7E7E7F7FF 0012000000220400FFF3F9F9F9BBC7FF 0042040800004200FFDB978F8793DBFF 0040000000004200FFDF9F9F9F9FC3FF 0000201028202400FFBDB991A9B9BDFF 0022100800004200FFBB99899199DBFF 0024420000422400FFE7DB9999DBE7FF 0044020400002000FFC79B879F9FBFFF 0024420000482400FFE7DB9995DBE5FF 0044220408044200FFC7BB878F97DBFF 0022002400004400FFE39FE7F9F9C7FF 0042000000000800FFC3E7E7E7E7EFFF 0042000000420400FFDB999999DBC7FF 0024000042180000FFBD9999DBDBE7FF 0024202810200000FFBDB9A991B9BDFF 0024180018422400FFBDDBE7DBDBBDFF 0024422400001000FFBDDBE7E7E7F7FF 0040080010400200FFC1FBE7DFDF83FF 0024000000002400FFE7CFCFCFCFE7FF 0020100804020000FFBFDFEFF7FBFDFF 0024000000002400FFE7F3F3F3F3E7FF 0000102200000000FFE7D3BBFFFFFFFF 0000000000004200FFFFFFFFFFFFC3FF #3:STAGE 00002010000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000210021002100210021002100 21002100210021002100210021002100 21002100210021002100210021002100 21002100210021002100210021002100 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000002100000021000000 21000000210000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 21000000210021002100210021002100 21002100210021002100210021002100 21002100210021002100210021002100 21002100210021002100210021002100 21000000 #13:CHARACTERS 00000000000000000000000000000000 000000000001020F0000000000010207 00000000000080D000000000000080D0 00000000000000000000000001111111 000000001818181800000000E7E7E7E7 00000000000000000000000080888888 000000000000010B000000000000010B 00000000008040F000000000008040E0 0000000000000F0F0000000000000000 000000000000FFFF0000000000000000 000000000000C0C00000000000000000 0F17170F2E2F4F0F070F0F1F1E1F3F7F A850A8D0A870F070A850A8D0A870F070 0000000000000000000000000000010F 0000000000000000111111111131F101 0000183C3C3C3C18FFFFE7C3C3C3C3E7 000000000000000088888888888C8F80 000000000000000000000000000080F0 150A150B150E0F0E150A150B150E0F0E F0E8E8F074F4F2F0E0F0F0F878F8FCFE 0F0F0F0F0F0F0F0F0000000000000000 FFFFFFE0E0E0E0E00000000000000000 FFFFFF00000000000000000000000000 FFFFFFFCFCFCFCFC0000000000000000 FFFFFF1F1F1F1F1F0000000000000000 C0C0C0C0C0C0C0C00000000000000000 00000000000000010000000000000000 9F9F9F9F9F1F3E3C7F7F7F7F7FFFFEFD D0C0A0C080800003D0C3A3C79FFFC080 00000000000000FF78C0001FFFFF0000 00000000000000E0010000C0F0FC0E03 0000000000000000FFFF7E3C3C181800 0000000000000007800000030F3F70C0 00000000000000FF1E0300F8FFFF0000 0B030503010100C00BC3C5E3F9FF0301 F9F9F9F9F9F87C3CFEFEFEFEFEFF7FBF 00000000000000800000000000000000 0F0F0F0F0F0000000000000000000000 FFFFFFFFFF0000000000000000000000 C0C0C0C0C00000000000000000000000 0200060E0E0E0C0E0103010101010301 3D3933373F3F3F3EFFFFFFFFFFFFFFFF 878787C08080000090B0B0FFFFF0E3FF FFFFFF0000000000000000FFFF8000C0 F8F8F80000000000010000FEF8000101 00000000000000000000000066E7E7E7 1F1F1F00000000008000007F1F008080 FFFFFF0000000000000000FFFF010003 E1E1E10301010000090D0DFFFF0FC7FF BC9CCCECFCFCFC7CFFFFFFFFFFFFFFFF 400060707070307080C080808080C080 000F0F0F0F0F0F0F0000000000000000 00FFFFFFFFFFE0E00000000000000000 00FFFFFFFFFF00000000000000000000 00FFFFFFFFFF1F1F0000000000000000 00C0C0C0C0C0C0C00000000000000000 0C0C080800000000030307070C0C0C0C 3E3C3F3B393C3E3FFFFFFC7C7E7F7F7F 000000C0E0D83C3EFFFFFC3B07078341 0000000000000000B07CFDFAFDFCFAFD 00000000000000010101010000000001 0000000000013FFFE7E7FFA55A013FFE 0000000000FFFFFF8080800000FF7F7F 0000000000F6FFFF0D3E1F0300F6FFFF 000000030703E0F0FFFF3FDCE000E0F0 7C3CFCDC80000030FFFF3F3E60000333 3030000000000000C0C08000041D99B9 000000000000028C00000063E7CECEDC 00000004000020600000001C3C787167 0F0F0F037B1813030000000078F0F3E7 E0E0E0FFFF7F7F0F0000000000000000 000000FFFFFFFFFF0000000000000000 1F1F1FFFFFFFFFFF0000000000000000 00000000000000000C0C0C0C0C0C0602 1F1F1F1F1F1F1F1F7F7F7F7F7F7F7F7F 1EEFFFFBF9F8F0F061F0F8FCFEFFFFFF 00000080C1C30F1FFAFDFE7C3123CF9F 030F7FFFFFFFFFFF030F7FFFFFFEFCF8 FFFFFFFFFFFEFFFFFCF8FBFF8F010000 FFFFFFFFDB3A2C040F7F7D7975C5D3FB FFFFFFFFFFFF3F1FFFFFFFFFFFFFFFFF F0E6E4CCD8D8D8DCF0E6E4CCD8D8D8DC 7073FB79793D1C0E7373FB7B793D1C0E 0180A1A694308040B9B0B1B6B4308040 80A320000000000080A3200000000000 43160000000000004316000000000000 1010B0420E0600009E3EB14307050000 002020000B03504200E0E0C088387876 00000000FFFFFF7F0000000000000000 00000000FFFFFFFF0000000000000000 00000000C0C0C0C00000000000000000 00000000000000000301010000000000 1F1F0F0F0F0F0F0F7FFFFF7F7F7F7F3F D0A0E0E1E3C7CF8FDEBCFCF1E3C7CF8F 3F7FFFFFFFFEFFFF3F7FFFFFFFFFFEF8 FFFFFFBFBF7FFFFFF0E0C0C0C0800000 FFFF8F07070787CF0000000000000000 CCC8E0E3F2F2F2F133371F1C0D0D0D0E 0F07F35B687840C0FFFF0FA79787BF3F ECECE6F7FBF7FF7DECECE6F7FBF7FFFD 070000C0F0FFBFEF070000C0F0FFBFEF 0020607074E6CE9F0020607074E6CE9F 630080700000C0C0470E8E7C03050000 7F00000000003F3F0000000000000000 FF0000000000FFFF0000000000000000 FF1F1F1F1F1FFFFF0000000000000000 0F0F0E0C000000003F3F3E3C38300000 1F1F3F3F3F7F7FFF1F1F3F3F3F7F7FFF FFFFEFE0E0C0C397F0F0F0FFFFFFFCF8 FFE1E1E3FFFFFFFF0000000000000000 FFFFCF87838383C30000000000000004 F0F0F1F2F2E1E0E00F0F0E0D0D1E1F1F C000C02020C080003FFF3FDFDF3F7FFF 7F7F3F3F3F7F7F7FFFFFFFFFFFFFFFFF F0FFFFFFFFFFFFFFF0FFFFFFFFFFFFFF 7FFFFFFFFFFFFFFF7FFFFFFFFFFFFFFF 808080C0C0E0E0F0808080C0C0E0E0F0 0F0F0F000000020B0000000000000000 8C9F1F1FDD30303B0C11100000000000 3F2713C0E8F870790000000000000000 FFFFFF00000000FF0000000000000000 FFFFFF1F1F1F1FFF0000000000000000 00000101010101010001010101010101 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 8F0F1F744C385810F0F0E0FCFDF9FBF3 FFC783BD3C3C3C18000010C0C0C2C2E6 FFFFFFFFFFFC0004000000000003FFFB E7C88887403010C818377778BFCEEE36 008080007070F0F0FF7F409E0F0F0F0F 7F7FFF3FBF5F5F5FFFFFFF3FBFDFDFDF FFFFE3E3E1E1F0E0FFFFFFFFFFFFFFFF F0F0F0F0F8F8FCFCF0F0F0F0F8F8FCFC 0000000000000F100000000000000F10 0B4B0B080000C818000000000000C000 343F9D8F8F0700000000000000000000 7B70F0E2CCEC02020000000000000000 FFFFFF7F000000000000000000000000 FFFFFFFF000000000000000000000000 C0C0C0C0000000000000000000000000 03030303030301010303030303030101 FEFEFEFCF9F9F8F0FFFFFFFCF8FAFBF7 34341440E0E0E064F7F7170707171797 000C0C0C00000000FEF2F2F2FEFEC000 02C261797F7F7F7FFDFD7E7F7F7F7F7F B98181A9F8F8F8F1447C7C78F9F9F9F1 C0808000000060003F7F7FFFFFFFE100 1F1F1F1F1F1F1F1FDFDFDFDFDFDF9F1F FFFFFFFFFFFFFFF8FFFFFFFFFFFFFFF8 F0F0F0F0F0F0F818FFFFFFFFFFFFFF1F FCFC7C7C7C7C7C7CFCFCFCFCFCFCFCFC 101010000F101010101010000F101010 500F0F0F8F4F4F4F0000000080404040 00FFFFFFFFFF00800000000000000000 00FFFFFFFFFFFCFC0000000000000000 01010101010000000101010101000000 F0F0F0E0E0E0E090F7F7F7F7F6F6F490 0200010109010109F2F0F1C1091979F9 0040E070707078783F7FFFFFFFFFFFFF 7F3F3F3F1F1F8F0F7F3F3F3F1F1F8F8F F0F3F2F3E3E3E3E3F0F3F3F0E0E0E0E0 000000808787070F3EFFFF7F7F7FFFFF 3FBF3F3F3F0F0F063FBFBFBFBF8F8F86 F3E3E7CF8E0E0C08F0E4E8D09131730F 0820040303030303CFE7F7FBFBFBFBFB FC7C7CFCF8F8F8F8FCFCFCFCF8F8F8F8 0F000F10100F10100F000F10100F1010 8F0FCF0F0F0F0F008000C00000000000 E0E0FFFFFFFFFF000000000000000000 8000FFFFFFFFFF000000000000000000 FCFCFFFFFFFFFF000000000000000000 0000FFFFFFFFFF000000000000000000 1F1FFFFFFFFFFF000000000000000000 C0C0C0C0C0C0C0000000000000000000 82820602020703038383070303070303 01050000000080C0F9FDF8F8FCFCFEFE 7C7C7EBE3E3C3807FFFFFFFF7F7C7907 0F070300000000008FC7C38020F0F8F8 C3C787060200000BC0C480010101040F 1F1F1F1F1F7F7F80FFFFFFFFFFFF7F80 06040000000000008684818383870F1F 0000000100021E3C03F3F9F9FCFEFEFC 434303040C881810FBFBF7E4CC981810 F8F0302020404080F8F0302020404080 0F001F0404041B000F001F0404041B00 C000C0404F4F8F0FC000C04040408000 03030303010000000303030301000000 C0E0FCF9077FFF7FFEFEFDF9077FFF7F 3F1F1F1F0F8F87C33F3F1F9F8FCFC7E3 0000E0F8F9FDFEFFF8FCFEFEFFFFFFFF 0B030103030303270F0F0F1F1F1F9FBF FEFEFEFEFCFCF8F8FEFEFEFEFCFDFDF9 00000107070F3F7F1F3F3FFFFFFFFFFF 3EFCF8F8F0F0E0C0FEFCF8F8F0F0E0C0 00010100003070C0000101000C3C7CFC 80000000000000008000000000000000 0F111111100011120F11111110001112 8F4F4F4F4F0080408040404040008040 FFE0E0E0E00000000000000000000000 FF000000000000000000000000000000 FFFCFCFCFC0000000000000000000000 FF1F1F1F1F0000000000000000000000 7F3F3F0F0F0703037F3F3F1F1F0F0F0F C3E3E1C9B1BEDEDCE3FFFFCFB1BEDEDC FFFF81BCBF3EBE0CFFFF81BCBFBEBE0C 0787C74761646F6F9FDFDF5F71646F6F F8F0F0E1E001CBC7FBFFFFFFFE29EBE7 7F7F7FFF1EDEDDDFFFFFFFFF1EDEDDDF C3C89C3C7EF8E0E0C3C89C3C7EFEFEFE C080000000000000FCF8F0C0C0800000 12120C00001F000012120C00001F0000 40404F0F0FCF4F404040400000C04040 0000FFFFFFFFFFFC0000000000000000 0000FFFFFFFFFF1F0000000000000000 0000C0C0C0C0C0C00000000000000000 00000000000000000F07030300000000 C070383F1F070000C0F0F8FF3F3F3F3F 406078FFFF3F0F0F406078FFFFFFFFFF 6763E0E0F0FFFFFF6763E0E0F0FFFFFF 97C320307CFFFFFFD7C320307CFFFFFF DF3F1C5CC0800000DF3F3F7FFEE0C0C0 C000000000000000FCF0E0C000000000 001F001805020518001F001805020518 800000CF0F0F0FCF800000C0000000C0 FCFCFC03030303030000000000000000 00000000000000001F00000000000000 01000000000000003F07010100000000 FF00000000000000FFFFFFFF00000000 F800000000000000FFFF1E0000000000 00000000000000008000000000000000 #14:BG 00001410000701070207000703070407 05070007060707070007000700070807 090709070907090709070A0700070B07 0C070D070E070F071007110712071307 00070007000714071507160717071607 180719071A071B071C071D071E071F07 20072107220723072407000700072507 26072607260726072607270728072907 2A072B072C072D072E072F0730073107 32070007000733073407350735073507 36073707380739073A073B073C073D07 3E073F07400741074207430744074507 46074707470747074807190749074A07 4B074C074D074E074F07500751075207 53075407550756075707580759075907 59075A075B075C075D075E075F076007 61076207630764076507000700070807 66076707680768076907190700076A07 6B076C076D076E076F07700771077207 73077407000775077607770778077807 7907190700077A077B077C077D077E07 7F07800781077B078207830784078507 860787078807890789078A0700078B07 8C078D078E078F079007910792079307 94079507960797073407980799073507 3607370700079A079B079C079D079E07 9F07A007A107A207A307A407A507A607 A707A807A907AA07AB07AC0700070007 AD07AE07AF07B007B107B207B307B407 B507B607B707B8075907590759075907 59075A0700070007B907BA07BB07BC07 BD07BE07BF07C007C107C207C307C407 C507C607C707C607C807270700070007 0007C907CA07CB07CC07CD07CE07CF07 D0070007D107D207AA07AA07D307AA07 D407D507000700070007D607D707D807 D907DA07DB07DC0700070007DD07DE07 47074707DF0747074807190700070007 00070007E007E107E207E307E4070007 00070007000700070007000700070007 00070007 #15:SOUNDS 08001010180008002800101018000800 0800606000000000180030301EFF0F00 380020201DFF0000380040401CFF0000 380060201DFF00000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000