'ALICE 'PLANS; 'EFFECTS 'DYNAMIC GROUND LEVEL EFFECT 'ON BG0 'DIALOG BOX BOTTOM TWO CELLS USING 'BOTH BG 'THAT WAVY TENTACLE EFFECT FOR 'ALICE USING RASTER CALLS 'OPENING SCENE IDEA WITH SUNSET 'AND SILLOUETES OF HERO, BOY, GIRL 'AND PRE XFORM ALICE, THEN ALICE 'XFORMS, GROWING TENDRILS 'MULTIPLE "ENDINGS" 'ONE WHERE THE THROLLS TAKE BOY 'AND GIRL OFFSCREEN AND HERO 'CANNOT KEEP UP WITH THEM, THEN 'HERO ADMITS DEFEAT 'ONE WHERE HERO FIGHTS HIS WAY TO 'THE FINAL CONFRONTATION AND IN 'FIGHTING ALICE LOSES BOY AND GIRL 'ONE WHERE HERO FIGHTS UNTIL FINAL 'CONFRONTATION AND GROWS THE SAME 'TENDRILS AS ALICE IN ORDER TO 'DEFEAT HER 'ONE WHERE HERO LETS THE THROLLS 'TAKE BOY AND GIRL WITHOUT 'FIFHTING AND ACCOMPANIES THEM TO 'ALICE, ALICE THEN LOSES TENDRILS 'AND APOLOGISES AND THANKS HERO 'GAMEPLAY; 'THROLLS TRY TO TAKE BOY AND GIRL 'BOY MUST BE CARRIED BY HERO 'GIRL WALKS AND FOLLOWS HERO 'FROM BEHIND 'HERO CAN PUT BOY DOWN TO ATTACK 'FASTER POSSIBLY 'SOME OBSTACLES REQUIRE GIRL TO 'PASS, SUCH AS A HIGH LEDGE TO 'HELP CLIMB 'THROLLS DONT HURT HERO DIRECTLY 'THEY SLOW HERO DOWN OR STOP HIM 'SHOP KEEPER NANED JEFF WILL GIVE 'HERO ANYTHING HE NEEDS, BUT WILL 'INCREASE HEROS DEBT AND START 'MAKING COMMENTS ABOUT HIS DEBT 'SPRITES; '0-1 SWORD '2-3 GIRL '4 BOY '5-8 PARTICLES '9-13 HERO '14-18 22-26 ALICE '19-26 14-21 TENDRILS '27 JEDS HEAD '28-59 THROLLSX7 '60 GOLD '61-63 UNUSED 'MAY USE SOME FOR A WEATHER EFFECT 'MAY USE ONE FOR SUN 'PALETTES '0 GROUND '1 BACKDROP/ TEXTBOX '2 SKY/ TEXT '3 HERO '4 BOY,GIRL '5 THROLLS/ JED '6 PARTICLES BLOOD/DUST/ TITLE '7 ALICE 'TRACKS '0 SWORD SWING/JUMP '1 FOOTSTEP '2 LANDING '3 ENEMY HIT '4 COINS '5 GIRL '6 BOY '7 TEXT '8 ALICE FLIGHT '9-13 MUSIC 'BG 1 BACKDROP/TEXTBOX 'BG 2 GROUND/TEXTBOX 'ONLY BOTTOM 2 CELL LINES DISPLAY 'THE TEXT BOX. A RASTER CALL WILL 'SCROLL BOTH BG UP TO DISPLAY THE 'TEXTBOX AT RASTER LINE 102 AND 'SET THE SCROLL BACK AT LINE 0 DIM GLOBAL HERO(14) 'X,Y,X SPEED,Y SPEED,ANIM T,BOBY, 'FACING,ANIM,ATTACK SPEED, 'ATTACK DIRECTION,ATTACK DAMAGE 'JUMP HEIGHT,HOLD ESCAPE,GOLD 'DROP BOY TIMER 'ANIM 0=IDLE/WALKING 1=ATTACKING '2=LANDING 3=FALLING/JUMPING '4=HELD DIM GLOBAL BOY(2) 'X,Y,HELD 'HELD 0-6=THROLL 7=HERO 8=NOBODY DIM GLOBAL GIRL(4) 'X,Y,FOLLOW,BURDEN,GOLD DIALOGUE 'FOLLOW 0-6=THROLL 7=HERO 8=NOBODY DIM GLOBAL ALICE(6) 'X,Y,X2,Y2,X3,Y3,ANIM DIM GLOBAL THROLL(6,6) 'X,Y,ANIM,FACING,ACTION,HEALTH, 'ACTION TIME 'ACTION 0=CHASE HERO 1=CHASE BOY '2=CHASE GIRL 3=EXIT SCREEN RIGHT '4=HOLD HERO 5=STAGGER DIM GLOBAL TENDRIL(2) 'X,Y,SCALE DIM GLOBAL JED(5) 'X,Y,ANIM,DEBT,TALK TIMER,ACTION 'ACTION 0=LOOK DOWN INITIAL '1=TALK GREETING '2=IDLE '3=TALK GOODBYE '4=LOOK DOWN FINAL DIM GLOBAL DIREC(6) 'ACTION,TIMER,LEVEL,LEVEL TIMER, 'CUTSCENE/CONTROL,TOGGLE,KILLS DIM GLOBAL INV(3) 'ACTIVE,SLOT 1,SLOT 2,SLOT 3 DIM GLOBAL GOLD(4) 'X,Y,X SPEED,Y SPEED,ACTIVE DIM GLOBAL COL(5,2) 'SWITCHES PALETTES MID-RASTER 'FREES UP A COUPLE PALETTES 'R*16+G*4+B 1,2,3 'BACKDROP,SKY,TEXTBOX,TEXT 'THROLLS,JED COL(0,0)=53 COL(0,1)=20 COL(0,2)=16 COL(1,0)=54 COL(1,1)=38 COL(1,2)=22 COL(2,0)=61 COL(2,1)=41 COL(2,2)=20 COL(3,0)=63 COL(3,1)=42 COL(3,2)=0 COL(4,0)=9 COL(4,1)=5 COL(4,2)=4 COL(5,0)=63 COL(5,1)=57 COL(5,2)=36 DIM GLOBAL HGHT(31) 'TERRAIN HEIGHTS DIM GLOBAL PART(7,3) 'PARTICLES SUCH AS BLOOD AND DUST 'X,Y,X SPEED,Y SPEED RESTART: RANDOMIZE TIMER 'PARTICLE TIME TO LIVE PTTL=0 'MENU TIME TO LIVE MTTL=0 'TEXT POSITON TPOS=0 'TEXTBOX STRING TBOX$="" 'NEXT TEXTBOX STRING 'MIGHT MAKE AN ARRAY TBOX2$="" 'CAMERA X POSITION CAMX=0 'LEFT MOST GROUND CHAR X GRNDX=0 'SUB RETURN VAR R=0 T=TIMER GLOBAL TBOX$,TBOX2$,TPOS,MTTL,CAMX,GRNDX,R,T,PTTL ON RASTER CALL RASTCALL ON VBL CALL VBLCALL FOR I=0 TO 13 HERO(I)=0 NEXT I FOR I=0 TO 6 DIREC(I)=0 NEXT I HERO(6)=1 HERO(8)=20 HERO(9)=-1 BOY(2)=7 GIRL(2)=7 GIRL(3)=0 GIRL(4)=0 BG 0 BG FILL 0,0 TO 31,31 CHAR 0 BG 1 BG FILL 0,0 TO 31,31 CHAR 0 'FILL IN TEXTBOX BG 1 CELL 0,16,1 TINT 0,16 FLIP 0,0 CELL 0,17,1 TINT 0,17 FLIP 0,1 CELL 19,16,1 TINT 19,16 FLIP 1,0 CELL 19,17,1 TINT 19,17 FLIP 1,1 BG FILL 1,16 TO 18,17 CHAR 2 BG TINT 1,17 TO 18,17 FLIP 0,1 BG TINT 0,16 TO 19,17 PAL 1 PRIO 1 BG 0 BG FILL 0,16 TO 19,17 CHAR 0 BG TINT 0,16 TO 19,17 PAL 2 PRIO 1 'FILL IN INVENTORY MENU BG 1 CELL 0,18,1 TINT 0,18 FLIP 0,0 CELL 0,31,1 TINT 0,31 FLIP 0,1 CELL 19,18,1 TINT 19,18 FLIP 1,0 CELL 19,31,1 TINT 19,31 FLIP 1,1 BG FILL 1,18 TO 18,18 CHAR 2 BG TINT 1,18 TO 18,18 FLIP 0,0 BG FILL 1,31 TO 18,31 CHAR 2 BG TINT 1,31 TO 18,31 FLIP 0,1 BG FILL 0,19 TO 0,30 CHAR 14 BG TINT 0,19 TO 0,30 FLIP 0,0 BG FILL 19,19 TO 19,30 CHAR 14 BG TINT 19,19 TO 19,30 FLIP 1,0 BG FILL 1,19 TO 18,30 CHAR 15 BG TINT 0,19 TO 0,30 FLIP 0,0 BG TINT 0,18 TO 19,31 PAL 1 PRIO 1 BG 0 BG FILL 0,18 TO 19,31 CHAR 0 BG TINT 0,18 TO 19,31 PAL 2 PRIO 1 'SET THE SCENE 'FILL BACKGROUND BG 1 FOR I=0 TO 32 CELL I,5,RND(2)+3 NEXT I BG FILL 0,6 TO 32,15 CHAR 11 BG TINT 0,0 TO 32,15 PAL 1 PAL 2 BG FILL 0,4 TO 32,4 CHAR 12 'FOREGROUND BG 0 PAL 0 CELL 20,8,7 HGHT(20)=8.5 BG FILL 20,9 TO 20,15 CHAR 11 CAMX=160 GRNDX=INT(CAMX/8)*8 FOR I=0 TO 20 CALL GENGRND ADD CAMX,-8 NEXT I ADD CAMX,8 HERO(0)=GRNDX+80 HERO(1)=0 GIRL(0)=HERO(0) GAMEPAD 1 'SWORD SPRITE 0,0,0,191 SPRITE 0 PAL 3 SPRITE 1,0,0,191 SPRITE 1 PAL 3 SPRITE OFF 5 TO 6 'GIRL SPRITE 2,0,0,34 SPRITE 2 PAL 4 SPRITE 3,0,0,50 SPRITE 3 PAL 4 'BOY SPRITE 4,0,0,18 SPRITE 4 PAL 4 'PARTICLES SPRITE 5,0,0,13 SPRITE 5 PAL 6 FLIP 0,0 SPRITE 6,0,0,13 SPRITE 6 PAL 6 FLIP 1,0 SPRITE 7,0,0,13 SPRITE 7 PAL 6 FLIP 0,1 SPRITE 8,0,0,13 SPRITE 8 PAL 6 FLIP 1,1 SPRITE OFF 5 TO 8 'HERO SPRITE 9,HERO(0)-4,HERO(1)-20,48 SPRITE.A 9,3 SPRITE 10,HERO(0)-8,HERO(1)-16,16 SPRITE.A 10,3 SPRITE 11,HERO(0),HERO(1)-16,17 SPRITE.A 11,3 SPRITE 12,HERO(0)-8,HERO(1)-8,32 SPRITE.A 12,3 SPRITE 13,HERO(0),HERO(1)-8,33 SPRITE.A 13,3 'ALICE SPRITE 14,0,0,21 SPRITE 14 PAL 7 SPRITE 15,0,0,37 SPRITE 15 PAL 7 SPRITE 16,0,0,38 SPRITE 16 PAL 7 SPRITE 17,0,0,53 SPRITE 17 PAL 7 SPRITE 18,0,0,54 SPRITE 18 PAL 7 'TENDRILS SPRITE 19,0,0,190 SPRITE 19 PAL 7 FLIP 0,0 SPRITE 20,0,0,190 SPRITE 20 PAL 7 FLIP 1,0 SPRITE 21,0,0,190 SPRITE 21 PAL 7 FLIP 0,1 SPRITE 22,0,0,190 SPRITE 22 PAL 7 FLIP 1,1 SPRITE 23,0,0,190 SPRITE 23 PAL 7 FLIP 1,1 SPRITE 24,0,0,190 SPRITE 24 PAL 7 FLIP 0,1 SPRITE 25,0,0,190 SPRITE 25 PAL 7 FLIP 1,0 SPRITE 26,0,0,190 SPRITE 26 PAL 7 FLIP 0,0 SPRITE OFF 19 TO 26 'JED SPRITE 27,0,0,22 SPRITE 27 PAL 5 'THROLLS FOR I=0 TO 6 SPRITE 28+(I*4),0,0,25 SPRITE 28+(I*4) PAL 5 SPRITE 29+(I*4),0,0,42 SPRITE 29+(I*4) PAL 5 SPRITE 30+(I*4),0,0,43 SPRITE 30+(I*4) PAL 5 SPRITE 31+(I*4),0,0,58 SPRITE 31+(I*4) PAL 5 NEXT I SPRITE OFF 26 TO 59 'GOLD SPRITE 60,0,0,28 SPRITE OFF 60 'DEBUG ALICE(0)=0 ALICE(1)=0 ALICE(6)=0 JED(0)=0 JED(1)=0 JED(2)=0 JED(3)=0 JED(4)=0 JED(5)=0 FOR I=0 TO 6 THROLL(I,0)=0 THROLL(I,1)=0 THROLL(I,2)=0 THROLL(I,3)=-1 THROLL(I,4)=0 THROLL(I,5)=20 NEXT I DIREC(1)=TIMER DIREC(3)=TIMER DIREC(2)=1 INV(0)=0 INV(1)=1 INV(2)=1 INV(3)=1 '......................... ALICE(0)=106 CALL GETHGT(ALICE(0)) ALICE(1)=R*8 ALICE(6)=1 GIRL(0)=90 CALL GETHGT(GIRL(0)) GIRL(1)=R GIRL(2)=8 BOY(0)=76 CALL GETHGT(BOY(0)) BOY(1)=R BOY(2)=8 HERO(0)=66 CALL GETHGT(HERO(0)) HERO(1)=R 'SET PALETTES FOR SCENE PALETTE 7,,63,58,51 TENDRIL(2)=0 DIREC(1)=TIMER BG 0 PAL 6 TEXT 8,2,"ALICE" PALETTE 6,,6,6,6 INTRO: CALL HEROPHYS CALL HEROANIM CALL BOYS CALL GIRLS CALL ALICES CALL SPRRES CALL TENDRILS N=TIMER-DIREC(1) IF N=60 OR N=740 THEN PALETTE 6,,27,27,27 IF N=120 OR N=680 THEN PALETTE 6,,42,27,26 IF N=180 OR N=620 THEN PALETTE 6,,63,27,22 IF N=300 THEN TRACK 8,0 IF N>300 AND N<480 THEN PALETTE 7,,25,5,0 ADD ALICE(1),-0.1 TENDRIL(0)=ALICE(0)-4 TENDRIL(1)=ALICE(1)-16 ADD TENDRIL(2),0.02 END IF IF N>360 THEN GIRL(2)=7 IF N>660 THEN ADD ALICE(0),1 TENDRIL(0)=ALICE(0)-4 TENDRIL(1)=ALICE(1)-16 END IF IF N>800 THEN TENDRIL(2)=0 DIREC(4)=1 ALICE(6)=0 BG TINT 7,2 TO 12,2 PAL 0 BG FILL 7,2 TO 12,2 CHAR 0 CALL TEXTBOX("CANT STOP. GOTTA FIND HELP..") TBOX2$="DOWN=PICK UP BOY. A=ATTACK." STOP 0 MUSIC 0 GOTO START END IF WAIT VBL GOTO INTRO START: CALL HEROCONT CALL HEROPHYS CALL HEROANIM CALL PARTICLES CALL BOYS CALL GIRLS CALL ALICES CALL JEDS CALL THROLLS CALL SPRRES CALL TENDRILS CALL DIRECTOR CALL GOLDS CALL GENGRND IF GRNDX<>INT(CAMX/8)*8 THEN CALL GENGRND END IF WAIT VBL GOTO START '......................... SUB GOLDS IF GOLD(4)=0 THEN SPRITE OFF 60 ELSE SPRITE 60,GOLD(0)-CAMX,GOLD(1),28 END IF END SUB SUB HEROCONT 'CONTROLS IF BUTTON(0,0) THEN IF HERO(7)=0 OR (HERO(7)=4 AND HERO(4)<15) THEN 'ATTACK IF BOY(2)=7 THEN HERO(4)=HERO(8) ELSE IF BOY(2)<>7 THEN HERO(4)=HERO(8)/2 END IF HERO(2)=HERO(6) HERO(7)=1 HERO(9)=HERO(9)*-1 TRACK 0,0 END IF END IF IF BUTTON TAP(0,1) THEN 'INTERACTION BUTTON IF JED(2)<>0 AND ABS(HERO(0)-(JED(0)*8))<16 AND DIREC(5)=0 THEN 'OPEN INVENTORY MENU CALL INVMENU ELSE IF DIREC(4)=0 THEN 'RESTART GAME GOTO RESTART ELSE IF ABS(GIRL(0)-HERO(0))<=16 THEN ADD HERO(13),GIRL(3) GIRL(3)=0 TRACK 3,0 END IF END IF IF NOT DOWN(0) THEN HERO(14)=0 IF DOWN(0) AND HERO(7)=0 THEN 'PICK UP/PUT DOWN BOY IF BOY(2)=7 THEN IF HERO(14)<15 THEN INC HERO(14) ELSE BOY(2)=8 END IF ELSE IF ABS(BOY(0)-HERO(0))<8 AND HERO(14)=0 THEN BOY(2)=7 END IF TRACK 6,0 END IF IF HERO(3)=0 THEN IF RIGHT(0) AND HERO(7)=0 THEN 'WALK RIGHT IF BOY(2)=7 AND HERO(2)<0.5 THEN ADD HERO(2),0.05 ELSE IF BOY(2)<>7 AND HERO(2)<1 THEN ADD HERO(2),0.05 END IF 'MIGHT CHANGE HERO(6)=1 SPRITE 9 FLIP 0,0 ELSE IF LEFT(0) AND HERO(7)=0 THEN 'WALK LEFT IF BOY(2)=7 AND HERO(2)>-0.5 THEN ADD HERO(2),-0.05 ELSE IF BOY(2)<>7 AND HERO(2)>-1 THEN ADD HERO(2),-0.05 END IF HERO(6)=-1 SPRITE 9 FLIP 1,0 ELSE IF HERO(3)=0 THEN 'NOT LEFT OR RIGHT IF HERO(2)<>0 THEN ADD HERO(2),SGN(HERO(2))*-0.05 IF ABS(HERO(2))<=0.05 THEN HERO(2)=0 END IF END IF IF UP(0) AND HERO(3)=0 AND HERO(7)=0 THEN 'JUMP HERO(3)=-0.9-(HERO(11)/20) HERO(7)=3 TRACK 0,0 END IF END SUB SUB HEROPHYS 'COLLISION/PHYSICS N=0 IF HERO(7)<>4 THEN FOR I=0 TO 6 X=ABS((THROLL(I,0)-HERO(0))*HERO(6)) IF THROLL(I,2)<>0 AND X>0 AND X<8 AND HERO(1)>THROLL(I,1)-12 THEN N=1 HERO(2)=0 END IF NEXT I END IF IF N=0 THEN ADD HERO(0),HERO(2) ADD HERO(1),HERO(3) IF DIREC(4)=1 THEN N=(HERO(0)+(HERO(6)*16))-(CAMX+80) ADD CAMX,N/25 'CAMX=HERO(0)-80 END IF CALL GETHGT(HERO(0)) Y=R IF HERO(7)=3 OR HERO(7)=4 THEN 'FALL IF HERO(3)<0.5 THEN ADD HERO(3),0.05 IF HERO(1)>=Y*8 THEN 'LAND HERO(2)=0 HERO(3)=0 HERO(4)=30 HERO(7)=2 CALL DUST(HERO(0)-4,HERO(1)-8) TRACK 2,0 END IF ELSE HERO(1)=Y*8 HERO(3)=0 END IF END SUB SUB HEROANIM 'ANIMATE IF HERO(4)>0 AND HERO(7)<>3 THEN DEC HERO(4) IF HERO(4)=0 THEN HERO(7)=0 END IF IF HERO(7)=0 THEN 'WALKING OR IDLE SPRITE OFF 0 SPRITE OFF 1 END IF IF HERO(7)=1 THEN 'ATTACKING 'ANIMATE SWORD N=HERO(4)/HERO(8) IF BOY(2)<>7 THEN N=N*2 IF HERO(9)=-1 THEN N=(N*-1)-1 X=COS((N-0.5)*PI)*HERO(6)*4 Y=SIN((N-0.5)*PI)*4 CALL LIN(N) SPRITE 0,HERO(0)-CAMX+X+(4*HERO(6))-4,HERO(1)-12-Y,191 SPRITE 1,HERO(0)-CAMX+(X*3)+(4*HERO(6))-4,HERO(1)-12-(Y*3),191 END IF IF HERO(7)=2 THEN 'LANDING HERO(5)=HERO(4)/5 END IF IF HERO(3)<>0 THEN 'JUMPING SPRITE 12,,,35 SPRITE 13,,,36 ELSE IF HERO(2)<>0 THEN 'WALKING HERO(5)=TIMER MOD 30 IF HERO(5)<7 THEN SPRITE 12,,,32 SPRITE 13,,,33 ELSE IF HERO(5)<15 THEN SPRITE 12,,,19 SPRITE 13,,,20 ELSE IF HERO(5)<22 THEN SPRITE 12,,,35 SPRITE 13,,,36 ELSE SPRITE 12,,,51 SPRITE 13,,,52 END IF IF HERO(5)=0 THEN TRACK 1,0 HERO(5)=SIN(HERO(5)*PI/60)*3 ELSE 'IDLE SPRITE 12,,,32 SPRITE 13,,,33 IF HERO(7)<2 THEN HERO(5)=TIMER MOD 180 HERO(5)=SIN(HERO(5)*PI/180)*3 END IF END IF ADD HERO(0),HERO(2) ADD HERO(1),HERO(3) N=48 IF HERO(7)=4 THEN N=49 'SPRITE UPDATE SPRITE 9,HERO(0)-4-CAMX+(HERO(2)*4),HERO(1)-20+(HERO(5)/2),N SPRITE 10,HERO(0)-8-CAMX+(HERO(2)*2),HERO(1)-16+HERO(5), SPRITE 11,HERO(0)-CAMX+(HERO(2)*2),HERO(1)-16+HERO(5), SPRITE 12,HERO(0)-8-CAMX,HERO(1)-8, SPRITE 13,HERO(0)-CAMX,HERO(1)-8, IF HERO(0)CAMX+176 THEN SPRITE OFF 9 TO 13 END IF END SUB SUB PARTICLES IF PTTL>0 THEN IF PTTL>15 OR TIMER MOD 3=0 THEN DEC PTTL N=(TIMER MOD 2)*4 FOR I=N TO 3+N ADD PART(I,0),PART(I,2) ADD PART(I,1),PART(I,3) SPRITE 5+I-N,PART(I,0)-CAMX,PART(I,1),13 NEXT I END IF IF PTTL=0 THEN SPRITE OFF 5 TO 8 END IF END IF END SUB SUB BOYS IF BOY(2)=8 THEN 'NOT HELD CALL GETHGT(BOY(0)) BOY(1)=(R-1)*8 ELSE IF BOY(2)=7 THEN 'HELD BY HERO BOY(0)=HERO(0)-4 BOY(1)=HERO(1)-16 ELSE 'HELD BY THROLL BOY(0)=THROLL(BOY(2),0)+8 BOY(1)=THROLL(BOY(2),1)-20 END IF IF BOY(0)>CAMX-8 AND BOY(0)X THEN ADD GIRL(0),-1.5+(GIRL(3)/50) ELSE IF GIRL(0)30 AND GIRL(4)=0 THEN CALL TEXTBOX("WOW THIS GOLD IS SO HEAVY!") TBOX2$="PRESS B TO TAKE IT!" GIRL(4)=1 END IF END IF END IF 'SPRITES IF GIRL(0)>CAMX-8 AND GIRL(0)0 THEN X=ALICE(0)-CAMX Y=ALICE(1)-20 IF X+8>0 AND X-8<180 THEN SPRITE 14,X-4,Y,21 X=ALICE(2)-CAMX Y=ALICE(3)-14 SPRITE 15,X-8,Y,37 SPRITE 16,X,Y,38 X=ALICE(4)-CAMX Y=ALICE(5)-8 SPRITE 17,X-8,Y,53 SPRITE 18,X,Y,54 SPRITE 14 PAL 7 SPRITE 15 PAL 7 SPRITE 16 PAL 7 SPRITE 17 PAL 7 SPRITE 18 PAL 7 ELSE SPRITE OFF 14 TO 18 END IF END IF END SUB SUB JEDS IF JED(2)<>0 THEN IF JED(4)>0 THEN DEC JED(4) IF JED(4)=0 THEN INC JED(5) END IF IF JED(5)=0 AND HERO(0)-(JED(0)*8)>-32 THEN 'GREET JED(5)=1 JED(4)=180 IF DIREC(2)=1 THEN CALL TEXTBOX("NAMES JED. PRESS B TO BUY FROM ME.") TBOX2$="TAKE ANYTHING. JUST PAY ME BACK LATER" ELSE IF DIREC(2)=2 THEN CALL TEXTBOX("THE THROLLS WERE PEOPLE TOO ONCE") TBOX2$="WHAT WOULD MAKE THEM TURN LIKE THAT?" ELSE IF JED(3)<500 THEN CALL TEXTBOX("GOOD TO SEE YOU! WHATLL IT BE?") TBOX2$="NEED SOME BETTER EQUIPMENT? ILL HELP!" ELSE IF JED(3)<1000 THEN CALL TEXTBOX("IF YOU HAD NEVER TRUSTED HER...") TBOX2$="NONE OF THIS WOULD HAVE HAPPENED" ELSE IF JED(3)<2000 THEN CALL TEXTBOX("SO WHEN ARE YOU GOING TO GET A JOB?") TBOX2$="YOU STILL PLAN ON. PAYING ME RIGHT?" ELSE IF JED(3)<4000 THEN CALL TEXTBOX("YOU SHOULD HAVE LEARNED A TRADE.") TBOX2$="BUT INSTEAD YOURE A LIABILITY." END IF END IF IF JED(5)=2 AND HERO(0)-(JED(0)*8)>32 THEN 'GOODBYE JED(5)=3 JED(4)=180 IF DIREC(2)=1 THEN CALL TEXTBOX("SEE YOU LATER DOWN THE PATH!") TBOX2$="AND GOOD LUCK FIGHTING THE WITCH!" ELSE IF DIREC(2)=2 THEN CALL TEXTBOX("JUST BRING WHAT GOLD YOU CAN.") TBOX2$="YOURE DOING THE RIGHT THING FOR THEM." ELSE IF JED(3)<500 THEN CALL TEXTBOX("DONT GIVE UP! YOULL HAVE THEM SOON!") TBOX2$="SOME DAY THEYLL LOOK BACK AND SEE." ELSE IF JED(3)<1000 THEN CALL TEXTBOX("STRAIGHTEN YOUR LIFE OUT ALREADY!") TBOX2$="IT MAKES YOU LOOK LIKE A BAD FATHER." ELSE IF JED(3)<2000 THEN CALL TEXTBOX("STOP COSTING ME MONEY AND GET A JOB") TBOX2$="ITS EMBARASSING." ELSE IF JED(3)<4000 THEN CALL TEXTBOX("THAT WOMAN NEEDS TO STEP UP.") TBOX2$="MAYBE THEY WOULD BE BETTER WITH HER." END IF END IF 'CELLS/SPRITE BG 0 PAL 5 CELL JED(0)+1,JED(1)-1,40+INT((TIMER MOD 120)/60) IF JED(5)=0 OR JED(5)=4 THEN N=22 ELSE N=23 IF INT((TIMER MOD 15)/7)=0 AND JED(4)>0 THEN N=24 END IF SPRITE 27,(JED(0)*8)+6-CAMX,(JED(1)*8)-16,N IF JED(0)*8CAMX+300 THEN 'DESPAWN JED(2)=0 CELL JED(0),JED(1)-1,0 CELL JED(0)+1,JED(1)-1,0 CELL JED(0),JED(1),0 CELL JED(0)+1,JED(1),0 CELL JED(0)+2,JED(1),0 SPRITE OFF 27 DIREC(0)=0 INC DIREC(2) DIREC(3)=TIMER DIREC(5)=0 'CHANGE PAL 5 TO THROLL PAL PALETTE 5,,COL(4,0),COL(4,1),COL(4,2) END IF END IF END SUB SUB THROLLS FOR I=0 TO 6 IF THROLL(I,2)<>0 THEN 'MOVEMENT IF THROLL(I,4)=0 THEN X=HERO(0) ELSE IF THROLL(I,4)=1 THEN X=GIRL(0) ELSE IF THROLL(I,4)=2 THEN X=BOY(0) ELSE IF THROLL(I,4)=3 THEN X=CAMX+250 ELSE X=THROLL(I,0) END IF IF THROLL(I,4)<4 THEN IF XTHROLL(I,0) THEN IF THROLL(I,4)=3 THEN ADD THROLL(I,0),0.3 ELSE ADD THROLL(I,0),0.5 END IF ADD THROLL(I,2),0.05 THROLL(I,3)=1 END IF N=0 IF ABS(THROLL(I,0)-HERO(0))<8 AND ABS(THROLL(I,1)-HERO(1))<12 AND HERO(4)=0 AND DIREC(5)=1 THEN 'HOLD HERO THROLL(I,4)=4 THROLL(I,6)=60 HERO(7)=4 HERO(4)=65-(HERO(12)*5) IF BOY(2)=7 THEN BOY(2)=8 HERO(2)=HERO(6)*-0.3/(HERO(12)+1) HERO(3)=-0.7+(HERO(12)/20) ELSE IF ABS(THROLL(I,0)-BOY(0))<8 AND BOY(2)=8 THEN 'TAKE BOY THROLL(I,4)=3 BOY(2)=I INC N TRACK 6,0 ELSE IF ABS(THROLL(I,0)-GIRL(0))<8 AND GIRL(2)>6 THEN 'TAKE GIRL THROLL(I,4)=3 GIRL(2)=I INC N TRACK 5,0 END IF IF DIREC(5)=0 AND N=2 THEN 'ACCOMPANY FOR N=0 TO 6 THROLL(N,4)=3 NEXT N END IF ELSE IF THROLL(I,6)>0 THEN DEC THROLL(I,6) ELSE THROLL(I,4)=0 END IF END IF IF THROLL(I,2)>=4 THEN THROLL(I,2)=1 END IF CALL GETHGT(THROLL(I,0)) THROLL(I,1)=R*8 'SPRITES X=THROLL(I,0)-CAMX IF X>-16 AND X<160 THEN SPRITE 28+(I*4),X,THROLL(I,1)-23, SPRITE 29+(I*4),X,THROLL(I,1)-16,42 SPRITE 30+(I*4),X+(8*THROLL(I,3)),THROLL(I,1)-16,43 SPRITE 31+(I*4),X,THROLL(I,1)-8,57+INT(THROLL(I,2)) 'SPRITE FLIPPING X=(THROLL(I,3)-1)/-2 IF THROLL(I,4)=5 AND INT((TIMER MOD 15)/7)=0 THEN N=6 ELSE N=5 END IF SPRITE 28+(I*4) FLIP X,0 PAL N SPRITE 29+(I*4) FLIP X,0 PAL N SPRITE 30+(I*4) FLIP X,0 PAL N SPRITE 31+(I*4) FLIP X,0 PAL N IF SPRITE HIT(1,28+(I*4) TO 31+(I*4)) AND THROLL(I,4)<>5 THEN 'HIT WITH SWORD DIREC(5)=1 THROLL(I,4)=5 THROLL(I,6)=60 ADD THROLL(I,5),-1-(HERO(10)*0.75) CALL BLOOD(THROLL(I,0),THROLL(I,1)-16) IF GIRL(2)=I THEN GIRL(2)=7 IF BOY(2)=I THEN BOY(2)=8 TRACK 4,0 IF THROLL(I,5)<=0 THEN 'IF DEAD THROLL(I,2)=0 INC DIREC(6) 'N=INT(THROLL(I,0)/8) 'CALL GETHGT(N) GOLD(0)=THROLL(I,0) GOLD(1)=THROLL(I,1)-8 GOLD(2)=(RND(10)/10)-0.5 GOLD(3)=(RND(10)/10)-0.5 GOLD(4)=1 ADD HERO(13),RND(6) END IF END IF ELSE SPRITE OFF 28+(I*4) TO 31+(I*4) END IF IF THROLL(I,0)+800 THEN CALL WAV(1,1) SPRITE 19,TENDRIL(0)-TENDRIL(2),TENDRIL(1)-TENDRIL(2), SPRITE 20,TENDRIL(0)+TENDRIL(2),TENDRIL(1)-TENDRIL(2), SPRITE 21,TENDRIL(0)-TENDRIL(2),TENDRIL(1)+TENDRIL(2), SPRITE 22,TENDRIL(0)+TENDRIL(2),TENDRIL(1)+TENDRIL(2), SPRITE 23,TENDRIL(0)-TENDRIL(2)-8,TENDRIL(1)-TENDRIL(2)-8, SPRITE 24,TENDRIL(0)+TENDRIL(2)+8,TENDRIL(1)-TENDRIL(2)-8, SPRITE 25,TENDRIL(0)-TENDRIL(2)-8,TENDRIL(1)+TENDRIL(2)+8, SPRITE 26,TENDRIL(0)+TENDRIL(2)+8,TENDRIL(1)+TENDRIL(2)+8, ELSE SPRITE OFF 19 TO 26 END IF END SUB SUB DIRECTOR 'MIGHT ALSO SPAWN OBSTACLES IF DIREC(2)>0 THEN N=0 FOR I=0 TO 6 IF THROLL(I,2)<>0 THEN INC N NEXT I IF DIREC(0)=0 AND TIMER-DIREC(1)>=60 THEN 'SPAWN TIMER IF TIMER-DIREC(3)>=1800 THEN 'JED/ALICE TIMER IF DIREC(5)=1 THEN INC DIREC(0) DIREC(3)=TIMER ELSE IF DIREC(5)=0 AND DIREC(4)=1 THEN 'SPAWN ALICE DIREC(3)=TIMER DIREC(5)=2 ALICE(0)=CAMX+152 ALICE(1)=0 ALICE(6)=1 TENDRIL(0)=ALICE(0) TENDRIL(1)=ALICE(1) TENDRIL(2)=1 SPRITE 14 FLIP 1,0 STOP END IF END IF IF N=180 THEN 'SPAWN JED IF N=0 THEN CALL JEDSPAWN((CAMX/8)+20) DIREC(1)=TIMER DIREC(5)=0 INC DIREC(0) END IF END IF 'CHECK ENDGAME STATES IF (BOY(0)-CAMX>200 OR BOY(0)-CAMX<-40) AND DIREC(4)=1 THEN 'BOY TAKEN DIREC(5)=0 DIREC(4)=0 CALL TEXTBOX("HES GONE...") TBOX2$="ENDING 1 OF 3 PRESS B TO RESTART" STOP END IF IF (GIRL(0)-CAMX>200 OR GIRL(0)-CAMX<-40) AND DIREC(4)=1 THEN 'GIRL TAKEN DIREC(5)=0 DIREC(4)=0 CALL TEXTBOX("SHES GONE...") TBOX2$="ENDING 2 OF 3 PRESS B TO RESTART" STOP END IF IF DIREC(5)>1 THEN 'BOY AND GIRL ACCOMPANIED N=TIMER-DIREC(3) IF N<300 THEN CALL GETHGT(ALICE(0)) N=1-(N/300) ALICE(1)=(R*8)-(N*80) TENDRIL(0)=ALICE(0)-4-CAMX TENDRIL(1)=ALICE(1)-16 TENDRIL(2)=N*4 FOR I=0 TO 6 THROLL(I,4)=4 NEXT I ELSE IF N>=300 AND DIREC(5)=2 THEN CALL TEXTBOX("IM SO SORRY") TBOX2$="ITS NOT YOUR FAULT" TENDRIL(2)=0 FOR I=0 TO 6 THROLL(I,2)=0 NEXT I PALETTE 7,,63,58,51 INC DIREC(5) ELSE IF N>=900 AND DIREC(5)=3 THEN CALL TEXTBOX("THANK YOU FOR PLAYING!") TBOX2$="ENDING 3 OF 3 PRESS B TO RESTART" INC DIREC(5) ELSE IF N>900 THEN DIREC(4)=0 ADD CAMX,0.25 END IF END IF END IF END SUB SUB INVMENU 'SHOW JED INVENTORY MENU PALETTE 6,,48,32,16 IF DIREC(2)=1 THEN CALL TEXTBOX("A=SELECT ITEM. B=FINISH.") END IF INV(0)=1 DIM A(2,1) FOR I=0 TO 2 A(I,1)=RND(2)-1 IF INV(I+1)+A(I,1)<1 THEN A(I,1)=1 NEXT I BG 0 PAL 2 PRIO 1 BG FILL 0,18 TO 19,31 CHAR 0 TEXT 1,19,"JED INVENTORY" TEXT 2,22,"BLADE LVL."+STR$(DIREC(2)+A(0,1))+" GP"+STR$((DIREC(2)+A(0,1))*75) TEXT 2,24,"SHOES LVL."+STR$(DIREC(2)+A(1,1))+" GP"+STR$((DIREC(2)+A(1,1))*75) TEXT 2,26,"ARMOR LVL."+STR$(DIREC(2)+A(2,1))+" GP"+STR$((DIREC(2)+A(2,1))*75) FOR I=0 TO 2 CELL 0,22+(I*2),29 IF DIREC(2)+A(I,1)HERO(13) THEN ADD JED(3),-HERO(13) HERO(13)=0 ELSE ADD HERO(13),-JED(3) JED(3)=0 END IF 'MIGHT ADD AN ANIMATION OR 'SHOW GOLD DRAIN DOWN TEXT 2,28,"GOLD: GP"+STR$(HERO(13))+" " TEXT 2,29,"DEBT: GP"+STR$(JED(3))+" " 'SELECT ITEMS N=0 DO PRIO 1 IF UP TAP(0) THEN CELL 1,22+(N*2),0 DEC N IF N<0 THEN N=2 CELL 1,22+(N*2),44 TRACK 7,0 END IF IF DOWN TAP(0) THEN CELL 1,22+(N*2),0 INC N IF N>2 THEN N=0 CELL 1,22+(N*2),44 TRACK 7,0 END IF IF BUTTON TAP(0,0) THEN 'SELECT BG TINT 2,22+(N*2) TO 19,22+(N*2) PAL 6 A(N,0)=1 TRACK 7,0 END IF IF BUTTON TAP(0,1) THEN 'FINISH TRACK 7,0 GOTO SELECT END IF WAIT VBL LOOP SELECT: WAIT 60 PRIO 1 FOR I=0 TO 2 IF A(I,0)=1 THEN INV(I+1)=DIREC(2)+A(I,1) 'ADD INV(I+1),A(I,1) ADD JED(3),INV(I+1)*75 HERO(10+I)=INV(I+1) 'ADD HERO(10+I),A(I,1) END IF NEXT I 'SHOW NEW DEBT BG FILL 0,18 TO 19,31 CHAR 0 BG TINT 0,18 TO 19,31 FLIP 0,0 TEXT 2,25,"NEW DEBT: GP"+STR$(JED(3)) WAIT 180 PRIO 0 INV(0)=0 DIREC(5)=1 END SUB SUB THROLLSPAWN(X) I=0 DO IF THROLL(I,2)=0 THEN GOTO SKIP INC I IF I>6 THEN GOTO SKIP LOOP SKIP: IF I<=6 THEN THROLL(I,0)=X CALL GETHGT(X) THROLL(I,1)=R THROLL(I,2)=1 THROLL(I,4)=RND(2) THROLL(I,5)=DIREC(2) SPRITE 28+(I*4),,,25+RND(2) END IF END SUB SUB JEDSPAWN(X) 'DRAWS JED ON BG 0 'CHANGE PAL 5 TO JED PAL PALETTE 5,,COL(5,0),COL(5,1),COL(5,2) BG 0 PAL 5 JED(0)=INT(X) CALL GETHGT(X*8) JED(1)=INT(R-1.5) JED(2)=1 JED(5)=0 CELL JED(0),JED(1)-1,39 CELL JED(0)+1,JED(1)-1,40 CELL JED(0),JED(1),55 CELL JED(0)+1,JED(1),56 CELL JED(0)+2,JED(1),57 END SUB SUB GETHGT(X) XX=INT(X/8) MOD 32 WHILE XX<0 ADD XX,32 WEND IF XX<31 THEN N=HGHT(XX+1) ELSE N=HGHT(0) END IF R=(N-HGHT(XX))*((X MOD 8)/8) ADD R,HGHT(XX) END SUB SUB DUST(X,Y) PTTL=120 PALETTE 6,,63,42,21 FOR I=0 TO 7 PART(I,0)=X PART(I,1)=Y PART(I,2)=(((I MOD 2)*2)-1)/5 PART(I,3)=(RND(10)/30)-0.2 NEXT I END SUB SUB BLOOD(X,Y) PTTL=15 PALETTE 6,,48,32,16 FOR I=0 TO 7 PART(I,0)=X PART(I,1)=Y A=(X-HERO(0)) IF A=0 THEN A=0.1 B=(Y-HERO(1)) IF B=0 THEN B=0.1 C=SQR((A^2)+(B^2)) PART(I,2)=(A/C)+(RND(10)/5)-1 PART(I,3)=(B/C)+(RND(10)/5)-1 NEXT I END SUB SUB WAV(A,F) 'DRAWS A WAVE ON CHARACTER 190 'FOR TENDRILS 'ALWAYS CROSS THROUGH 0,0 'ANGLED 45 DEGREES DOWN 'A=AMPLITUDE F=FREQUENCY M=$8000+(190*16) B=0 X=0 Y=0 FOR Y=0 TO 7 X=INT(Y+COS(Y+(TIMER MOD 30)*PI/15)*2) IF X<0 THEN X=0 IF X>7 THEN X=7 B=2^(7-X) IF Y>0 THEN POKE M+Y+7,B IF Y<7 THEN POKE M+Y+1,B POKE M+Y,B OR PEEK(M+Y) POKE M+Y+8,B OR PEEK(M+Y+8) NEXT Y END SUB SUB LIN(A) 'DRAWS A LINE IN CHARACTER 191 'FOR SWORD 'A IS A RATIO BETWEEN 0 - 1 FOR 'ANGLE OF SWORD SWING M=$8000+(191*16) X=0 Y=0 XX=0 YY=(SIN((1-A)*PI)/COS((1-A)*PI))*HERO(6) B=0 N1=0 N2=0 FOR Y=0 TO 7 'DRAW LINE ON 191 XX=X X=INT((Y-4)*YY)+4 B=0 IF X>=0 AND X<=7 THEN IF XX=0 THEN XX=X N1=INT(MIN(X,XX)) IF N1<0 THEN N1=0 IF N1>7 THEN N1=7 N2=INT(MAX(X,XX)) IF N2<0 THEN N2=0 IF N2>7 THEN N2=7 B=(2^N2)-1 ADD B,-((2^N1)-1) ELSE B=0 END IF POKE M+INT(Y),B/2 OR B POKE M+INT(Y)+8,B/2 OR B*2 NEXT Y END SUB SUB GENGRND 'DRAWS ONE GROUND CHARACTER BG 0 PAL 0 XX=0 C=0 IF CAMX>=GRNDX+8 THEN 'IF THE SCREEN MOVED RIGHT X=((GRNDX/8)+20) MOD 32 WHILE X<0 ADD X,32 WEND XX=1 BG FILL X-20,0 TO X-20,15 CHAR 0 ELSE IF CAMX<=GRNDX-8 THEN 'IF SCREEN MOVED LEFT X=(GRNDX/8) MOD 32 WHILE X<0 ADD X,32 WEND XX=-1 BG FILL X+20,0 TO X+20,15 CHAR 0 END IF IF XX<>0 THEN 'IF SCREEN MOVED ENOUGH 'GRNDX=INT(CAMX/8)*8 GRNDX=GRNDX+(XX*8) 'FIND Y OF NEXT GROUND Y=HGHT(X) 'DECIDE DIRECTION TO GO 'MAY CHANGE 'RANDOMIZE X YY=RND(6)+RND(6)+2 IF YYY THEN N=2 ELSE N=1 END IF IF Y=15 AND N=2 THEN N=1 IF Y=2 AND N=0 THEN N=1 'SET CELLS IF X+XX<0 THEN HGHT(31)=Y+((N-1)/2) ELSE IF X+XX>31 THEN HGHT(0)=Y+((N-1)/2) ELSE HGHT(X+XX)=Y+((N-1)/2) END IF BG FILL X+XX,Y TO X+XX,15 CHAR 11 IF INT(Y)0 THEN 'SET TEXBOX SCROLL PALETTE 1,,COL(2,0),COL(2,1),COL(2,2) PALETTE 2,,COL(3,0),COL(3,1),COL(3,2) SCROLL 0,0,16 SCROLL 1,0,16 END IF IF RASTER=16 AND INV(0)>0 THEN 'SET INVENTORY SCROLL PALETTE 1,,COL(2,0),COL(2,1),COL(2,2) PALETTE 2,,COL(3,0),COL(3,1),COL(3,2) SCROLL 0,0,128 SCROLL 1,0,128 END IF END SUB SUB TEXTBOX(S$) 'SET UP THE TEXT BOX TO DISPLAY MTTL=180+(LEN(S$)*4) TBOX$=S$ TPOS=0 BG 0 BG FILL 0,16 TO 19,17 CHAR 0 END SUB SUB VBLCALL 'SET GAME SCROLL SCROLL 0,CAMX,0 SCROLL 1,CAMX/4,0 PALETTE 1,,COL(0,0),COL(0,1),COL(0,2) PALETTE 2,,COL(1,0),COL(1,1),COL(1,2) IF MTTL>0 AND TPOS<=LEN(TBOX$) AND INT(TPOS)=TPOS THEN 'TYPE NEXT LETTER X=TPOS MOD 20 IF TPOS>=20 THEN Y=17 ELSE Y=16 END IF BG 0 PAL 2 PRIO 1 TEXT X,Y,MID$(TBOX$,TPOS+1,1) PRIO 0 TRACK 7,0 END IF IF MTTL>0 THEN DEC MTTL ADD TPOS,0.25 IF MTTL=0 AND TBOX2$<>"" THEN CALL TEXTBOX(TBOX2$) TBOX2$="" END IF END IF END SUB #1:MAIN PALETTES 061928240035141000362616003F2A00 002F1A0500090504003F2A1500150500 #2:MAIN CHARACTERS 00000000000000000000000000000000 FF80BFBFBFBFBFBF007F7F7F7F7F7F7F FF00FFFFFFFFFFFF00FFFFFFFFFFFFFF FFFFFFFFFD22DFFF0000000002DFFFFF FFFFE79B7CFFFFFF0000187CFFFFFFFF FFFFFFFFFFFE39C7000000000001C7FF 0000000003043B87000000000003073F 000000DB24DBFFFF00000000DBFFFFFF 030817EB1FFFFFFF00030B1FFFFFFFFF DD22DDFFFFFFFFFF00DDFFFFFFFFFFFF 0102010F130F7F9F000103030F1F1F7F FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FFFF000000FFFFFFFFFFFFFFFF000000 04424004140010000012400084005200 BFBFBFBFBFBFBFBF7F7F7F7F7F7F7F7F FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000A150A15090F0003070F1F0F0704 0000689CA89448E800C0D0F0FCF8FC14 0000004C4A1A1A14000060EEBFFFFF1E 0C070303030301000707000103050601 14E860C080C0C020E8E0E00040C000C0 0C366CDCB8F060000C3E7EFBFEFE7C1C 3C7EC381240018003C7EFFFFDB7E7E3C 3C428124000018003C7EFFDBFF7E7E3C 3C428124001818003C7EFFDBFF7E7E3C 78F8E0C88000000078FEFEF6FF7E3818 0844342800000000087E7E777E3E3C1C 0000E0F440000000003CFEFB7E3C3838 000040A042152A10000000C040063210 103060C6EF0C0C1C080C1E3FFF3C3C3C 00000000000000000000000000000000 00000000000000000000000000000000 0C07060E081838400707070204180838 14E8607020303808E8E0E0C010300870 00001C303C20202000001C3C363E3C38 0C070606040606080707070002060006 14E82060E0602000E8E0C0C020804000 000103030707070701070F1F1F3F3737 0080C0C0E0E0E0E080E0F0F8F8ECECEC 00071F3F1F1F0703033F3D7F7D7F7D3F 00E0F0F0FCF8F8F8C0FCBEFEBFE7A6E4 00E0F8F8F0F0F8F8C0FCA6E7BFFEB8F8 001C3E7F7F7F7F7E0008181C3F3F303C 000000E0C0E0E0000010161CFFFC1F00 080878801F7E0C080004067FFF7E0C08 00007E4000003E000000003E007E7E00 00000000000000000000000000000000 00000000000000000000000000000000 385CC0CCC0C0CE403860BCB6BEFEFE5C 385CC0C8C4C0CE4C3860BCBEBEFEF25C 1C3E3E3E3E7F59003E43655B00267D6E 0C070606040C0C1007070700020C000E 14E8607018161C08E8E0E0F0000C1204 070F1F1F24000000270F1F1F26060C08 F0F0F8F8CC020000F4F0F8F8EC623010 000C0F1F1E3E22001F0F07181E3E3E3E 00FF00FC7C7C4C0CFFFFFF3070707070 00FF001818181818FFFFFF0000000000 3C2464485C5692E000181836272F6707 3C42622226241026003C1C1C18180818 244242316949440F183C3C4EF6E6E2F0 #15:MAIN SOUND 78082282119500007502212100FB0400 78088282143903005803913001A00000 780421880150000008005050109B0000 6802000F000000002800660F00F80B00 78022120000000002800757F00035000 6810358F002A40000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 4009404040094040C0090A4040090A40 40090A0B40090A0B40090A0C40090A0C 40090A0D40890A0D4040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 3C0F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0E1F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0E2F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 5E3F00593F0000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 444F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 32560000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 3C550000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 1B6F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 277F00000000000000000000297F0000 00000000000000002A7F000000000000 000000002C7F00000000000000000000 2E7F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 2A88000000002A88002A88002A880000 00002A88002A88002A88000000002A88 002A88002A88000000002A88002A8800 2A88000000002A88002A88002A880000 00002A88002A88002A88000000002A88 002A88002A88000000002A88002A8800 1B980000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 35A80000000000000000000035A80000 000000000000000035A8000000000000 0000000035A800000000000000000000 35A80000000000000000000035A80000 000000000000000035A8000000000000 0000000035A800000000000000000000 3AA8000000000000000000003AA80000 00000000000000003AA8000000000000 000000003AA800000000000000000000 3AA8000000000000000000003AA80000 00000000000000003AA8000000000000 000000003AA800000000000000000000 33A80000000000000000000033A80000 000000000000000033A8000000000000 0000000033A800000000000000000000 33A80000000000000000000033A80000 000000000000000033A8000000000000 0000000033A800000000000000000000