'EPIC WALK II V0.9.2 'BY DR GONZO & GREENPILLOZ 'ALL RIGHTS RESERVED 'APART FROM ALL THE STEALS OFC ;) 'JUST KIDDING 'ENTIRELY MADE ON IPHONE 6S :V '------------------------------------------- 'V0.9.1: SWITCHED BG SCROLL DIRECTION 'V0.9.2: ADDED TIMO BGDX VAR (THANKS TIMO :)) '------------------------------------------- 'JUST A PROOF THAT YOU CAN DEFINITELY MAKE A FULL LENGTH RPG/ROGUE GAME ON LOWRES :) 'OUR GAME IS FAR FROM DONE WITH MANY BUGS TO FIX AND ADJUSTMENTS TO MAKE. 'WE PLAN TO PORT ON ITCH.IO NEXT MONTH TO TRY GAINING VISIBILITY. 'HOPE YOU'LL ENJOY! MERRY X-MAS! '------------------------------------------- 'WHAT DO YOU GET WHEN YOU CROSS LEGEND OF ZELDA WITH QUENTIN TARANTINO? 'EPIC WALK 2 'MURDER 'ROAD RAGE 'PIMPING 'KEEP RAIDS 'HIJACKINGS 'ARMED ROBBERY 'EXTORTION 'ADULTERY 'SMUGGLING 'PETTY THIEVERY 'DRUG BUSTS 'LAW ENFORCER BRIBES 'AND DOUBLE PARKING! 'OVER 1 MISSION THROUGHOUT 150 COUNTRY MILES 'ORIGINAL AND CENSORED '------------------------------------------- 'TO BE ADDED: '@DR GONZO 'DRAGON FLYING CAR 'CHEST .DONE 'MONSTERS IN KEEP.DONE 'CHEST IN KEEP.DONE 'TWO (3!) MONSTERS FIGHT.DONE 'ARMORSMITH. DONE 'INVENTORY IN GAME (PAUSE). DONE 'JUMP IN KEEP FIX. DONE 'DEBT COLLECTOR. DONE 'STONE INVICIBILITY. DONE 'DUNGEON TILES BUG FIX. DONE 'STUPID LOOT. DONE 'TREE HARVEST. DONE 'ENDSCENE. DONE 'FANCY SPRITE ART. DONE 'FARMSIM '@GREENPILLOZ 'HOLE FIX.DONE 'MANY HOLES ADDED. DONE 'BOX BRIDGE. DONE 'FALLING TILES.DONE 'FX SOUNDS. DONE 'ROAD HOLES. DONE ' ------------ FX SOUND -------------------- ' PLAY 0, 46, 5 SOUND 3 = PUNCH SOUND 3 ' TRACK 16, 0 = GAME BIP ' TRACK 18, 0 = JUMP ' TRACK 19, 0 = COIN ' TRACK 21, 0 = SWORD SWOOF ' TALKING (SEE SUBROUTINE "SAY" AT THE BOTTOM OF THE PROGRAM) ' MUSIC 0 : MUSIC FOR INSHOP AND INTRO ' MUSIC 2 : KEEP ' MUSIC 32 : ROAD MUSIC (USES SOUNDS B TO F) '--------------NUMTALKS--------------------- NUMTALKS = 17 DIM TALKS$(NUMTALKS*2+1) DIM MSGA$(3, 3) DIM MSG$(3, 7) '--------------EPICWALK2-------------------- EPICWALK2: GAMEPAD 1 PAUSE OFF RANDOMIZE TIMER BGDCOLOR=0 PALETTE 0,BGDCOLOR,,, PAL 0 DIFFICULTY=0 TUNE=1 'LOGO ANIM SKIP=0 IF SKIP=1 THEN GOTO INIT IF SKIP=0 THEN BG 0 TEXT 4,-2, "=LOWRES-NX=" Y=0 WHILE Y>-72 SCROLL 0, 0, Y WAIT VBL ADD Y, -1 WEND 'GAME BIP SOUND TRACK 16,0 WAIT 100 CLS 'AMAZING DRAWING ;) BG COPY 0,64,20,16 TO 0,0 BG 1 PRIO 1 TEXT 1,15,"G&G STUDIO PRESENT" WAIT 125 CLS BG 0 'TITLE SCREEN BG COPY 0,80,20,16 TO 0,0 MUSIC BG 1 PRIO 1 PAL 0 TEXT 1,3," MAIN MUSIC:" TEXT 1,4," SKIP INTRO:" TEXT 1,5," DIFFICULTY:" TEXT 1,7,"+:MOVE" TEXT 1,8,"A:JUMP" TEXT 1,9,"B:FIGHT/INTERACT" TEXT 1,10,"START: INVENTORY" SPRITE 1 SIZE 1 SPRITE 1 PAL 3 SPRITE 2 SIZE 1 SPRITE 2 FLIP 1,0 SPRITE 2 PAL 3 X=0 T=0 Y1=3*8 DO IF T=0 THEN TEXT 4,13,"PRESS(START)" SPRITE 1,8,12.5*8,72 SPRITE 2,17*8,12.5*8,72 END IF IF T=30 THEN TEXT 4,13," " SPRITE 1,8,12.5*8,74 SPRITE 2,17*8,12.5*8,74 END IF INC T IF T>60 THEN T=0 IF X=0 THEN TEXT 13,4,"NO " IF X=1 THEN TEXT 13,4,"YES " IF DIFFICULTY=0 THEN TEXT 13,5,"EASY" IF DIFFICULTY=1 THEN TEXT 13,5,"EPIC" IF TUNE=1 THEN TEXT 13,3,"ON " IF TUNE=0 THEN TEXT 13,3,"OFF" IF PAUSE THEN IF X=0 THEN GOTO STORY1 IF X=1 THEN GOTO PREINIT END IF IF LEFT TAP (0) AND Y1=3*8 THEN TUNE=1 IF RIGHT TAP (0) AND Y1=3*8 THEN TUNE=0 IF LEFT TAP (0) AND Y1=5*8 THEN DIFFICULTY=1 IF RIGHT TAP (0) AND Y1=5*8 THEN DIFFICULTY=0 IF RIGHT TAP (0) AND Y1=4*8 THEN X=1 IF LEFT TAP (0) AND Y1=4*8 THEN X=0 IF UP TAP (0) AND Y1>3*8 THEN Y1=Y1-8 IF DOWN TAP (0) AND Y1<5*8 THEN Y1=Y1+8 SPRITE 0,8,Y1,117 WAIT VBL LOOP END IF '-------------FAKESTORY--------------------- STORY1: X=132 X1=182 T=0 Y=0 CLS SPRITE OFF SPRITE 1 SIZE 1 SPRITE 2 SIZE 0 SPRITE 1 PAL 6 SPRITE 2 PAL 0 SPRITE 3 PAL 5 SPRITE 3,64+4,4,177 'DIM MSG$(3, 7) MSG$(0, 0) = " REMEMBER LAST TIME? " MSG$(1, 0) = " WHEN YOU WALKED " MSG$(2, 0) = " THOSE 1000 MILES" MSG$(3, 0) = " ON AN EPIC QUEST?" MSG$(0, 1) = " SO YOU THOUGHT YOU " MSG$(1, 1) = " WERE THE MAN AFTER " MSG$(2, 1) = " YOU SAVED THAT " MSG$(3, 1) = " PRINCESS, EH? " MSG$(0, 2) = " WELL GUESS WHAT, " MSG$(1, 2) = " ALL THOSE MONSTERS " MSG$(2, 2) = " YOU MOLESTED ON " MSG$(3, 2) = " YOUR WAY... " MSG$(0, 3) = " HAVE INITIATED A " MSG$(1, 3) = " CLASS ACTION SUIT!" MSG$(2, 3) = " YOU'RE IN BIG " MSG$(3, 3) = " TROUBLES... " MSG$(0, 4) = " THE KING BAILED YOU" MSG$(1, 4) = " OUT BUT YOU OWE HIM" MSG$(2, 4) = " -- ONE GRAND!! -- " MSG$(3, 4) = " YEAH... THAT MUCH. " MSG$(0, 5) = " HE'S DEFINITELY NOT" MSG$(1, 5) = " THRILLED ABOUT THAT" MSG$(2, 5) = " SO YOU'VE GOTTA " MSG$(3, 5) = " REPAY HIM FAST... " MSG$(0, 6) = " BUT WHERE WILL YOU" MSG$(1, 6) = " GET ALL THAT CASH??" MSG$(2, 6) = " DARK TIMES LEAD TO" MSG$(3, 6) = " ... DARK WAYS " MSG$(0, 7) = " THE GPS SAYS YOU'RE " MSG$(1, 7) = " 150 KM AWAY FROM " MSG$(2, 7) = " THE KING'S CASTLE. " MSG$(3, 7) = " YOU'D BETTER HURRY!" ' ----- INTRO CINEMATIC ------ 'FOR EACH MESSAGE FOR M=0 TO 7 'FOR EACH SENTENCE FOR I=0 TO 3 'FOR EACH LETTER FOR J=1 TO LEN(MSG$(I, M)) ' PRINT LETTER C$ = MID$(MSG$(I, M), J, 1) TEXT J-1,5+I, C$ ' SAY LETTER CALL SAY(MSG$(I, M), J) ' ANIMATE GUY GOSUB GUYTALK GOSUB BTNMOVE IF NOT BUTTON (0,0) THEN WAIT 3 ELSE WAIT 1 END IF NEXT J NEXT I T=0 GOSUB GUYTALK 'WAIT FOR NEXT CHAPTER WHILE NOT BUTTON(0,0) GOSUB BTNMOVE WAIT VBL WEND 'CLEANING FOR I=0 TO 3 TEXT 0,5+I, " " NEXT I NEXT M ' ----- END INTRO CINEMATIC ------ GOTO PREINIT BTNMOVE: SPRITE 2,148,80, 182 + TIMER/10 MOD 2 RETURN GUYTALK: ADD T, 1, 0 TO 20 SPRITE 1,64,8, 134 - (T/2 MOD 2)*2 RETURN '---------FAKELOAD-------------------------- PREINIT: SPRITE OFF CLS BG COPY 0,64,20,16 TO 0,0 BG 1 STOP TRACK 19,0 TEXT 4,11," LOADING" WAIT 100 TEXT 4,11," LOADING." WAIT 20 TEXT 4,11," LOADING.." WAIT 20 TEXT 4,11," LOADING..." WAIT 20 TEXT 4,11," LOADING...." WAIT 20 '--------------------INIT------------------- INIT: ' INIT DES VARIABLES DU RASTER (CHANGE @GREENPILLOZ) GOSUB RASTERINIT CLS SPRITE OFF KM=0 TAK=0 TIME=0 DAY=0 STEPS=0 BGDCOLOR=47 GRASSCOLOR=0 SUNPOS=0 XCHAR=72 YCHAR=70 XENEMY=56 YENEMY=40 XENEMY1=40 YENEMY1=40 XENEMY2=40 YENEMY2=40 PUNCH=0 JUMP=0 PUNCHMOD=0 XENEMYMOTION=0 YENEMYMOTION=0 XENEMYMOTION1=0 YENEMYMOTION1=0 XENEMYMOTION2=0 YENEMYMOTION2=0 ENEMYANIM=0 HITPAL=0 ENEMYHITPAL=0 EVENT=5 EVENTSEARCH=0 COINMOVE=0 KEEPMOVE=0 SMALLKM=8 MEDKM=9 BIGKM=10 KEEPSPRITE=66 SHADOW=0 YSWORDDIR=-7 XSWORDDIR=0 DIR1=3 SWORDSPRITE=20 CHESTCHAR=103 ENEMYNUMBER=0 ENEMYHEALTH=0 ENEMYHEALTH1=0 ENEMYHEALTH2=0 ENEMYTYPE=0 ENEMYTYPE1=0 ENEMYTYPE2=0 ENEMYTYPEVAL=0 ENEMYPAL=0 DIR=16 'STATUS DEBT=1 MYDEBT=1000 SWORD=0 ATT=0 DEFENCE=0 IF DIFFICULTY=0 THEN HEALTH=9 MYMONEY=100 END IF IF DIFFICULTY=1 THEN HEALTH=4 MYMONEY=45 END IF 'TRADE STONE = 0 STONECOLOR=0 OUTSIDE = 1 MAX1=0 COKELVL=0 HEROINLVL=0 ECSTACYLVL=0 METHLVL=0 WEEDLVL=0 AMNT=1 PROFIT=0 ROOM=0 ROOMRND=0 BOXROOM=0 '-----------------GOTO---------------------- 'KEEP: 'GOSUB INITKEEP 'GOTO INKEEP 'SHOP: 'GOTO INSHOP '-----------------DRAW---------------------- DRAW: IF TUNE=1 THEN MUSIC 32 DRAW1: SPRITE 11 FLIP 0,0 BG 1 'TEXTBOX BG COPY 0,11,20,5 TO 0,11 'ROAD BG COPY 0,1,20,5 TO 0,6 'PAYSAGE '---GAUCHE--- IF KM<=50 THEN 'FORET 1 BG COPY 0,50,20,4 TO 0,2 END IF IF KM>50 AND KM<=95 THEN 'MONTAGNE 1 BG COPY 0,16,20,3 TO 0,3 END IF IF KM>95 AND KM<=125 THEN 'FORET 1 BG COPY 0,50,20,4 TO 0,2 END IF IF KM>125 THEN 'CASTLE BG COPY 0,54,20,4 TO 0,2 END IF '---DROITE---- IF KM<=25 THEN 'FORET 1 BG COPY 0,50,20,4 TO 12,2 END IF IF KM>25 AND KM<=75 THEN 'MONTAGNE 2 BG COPY 0,19,20,4 TO 12,2 END IF IF KM>75 AND KM<=100 THEN 'FORET 1 BG COPY 0,50,20,4 TO 12,2 END IF IF KM>100 THEN 'CASTLE BG COPY 0,54,20,4 TO 12,2 END IF BG 0 'GRASS BG COPY 0,6,20,5 TO 0,6 '-----------------MAIN---------------------- DO '-TIMERS- INC TAK INC TIME INC SUNPOS IF TAK=16 THEN TAK=0 XENEMYMOTION=RND(29) YENEMYMOTION=RND(31) XENEMYMOTION1=RND(29) YENEMYMOTION1=RND(31) XENEMYMOTION2=RND(29) YENEMYMOTION2=RND(31) END IF IF TIME=3200 THEN TIME=0 DAY=DAY+1 END IF IF STEPS=20 THEN STEPS=0 IF EVENT=0 THEN KM=KM+1 EVENTSEARCH=RND (20) 'EVENTSEARCH=4 IF STONE>0.2 THEN ADD STONE, -0.1 ELSE STONE=0 END IF END IF IF KM=26 THEN GOSUB LANDUP IF KM=51 THEN GOSUB LANDUP IF KM=76 THEN GOSUB LANDUP IF KM=96 THEN GOSUB LANDUP IF KM=101 THEN GOSUB LANDUP IF KM=126 THEN GOSUB LANDUP IF KM>=150 AND DEBT = 0 THEN GOSUB TRANSITION GOTO ENDSCENE END IF '-CONTROLS- IF UP (0) THEN INC KEEPMOVE INC COINMOVE GRASSCOLOR = ((TIME/8) MOD 2)*2 'CHANGE @GREENPILLOZ ADD TOTALDIST, DISTINC GOSUB CALCRAST GOSUB MOVEHOLE INC STEPS ADD BGDX,-ROADCURVE END IF IF RIGHT(0) THEN INC XCHAR IF LEFT (0) THEN DEC XCHAR IF BUTTON TAP (0,0) AND YCHAR=70 THEN TRACK 18, 0 'PLAY 0, 46, 5 SOUND 3 YCHAR=62 END IF IF BUTTON (0,1) THEN PUNCH=1 'TRACK 21, 0 END IF IF PAUSE THEN GOSUB INVENTORY2 GOTO DRAW1 END IF '-ALLSUBS- GOSUB STATUS GOSUB PALCHANGE GOSUB ROADMOVE GOSUB CHARMOVE IF DEBT=1 THEN GOSUB COLLECTOR GOSUB EVENTSEARCH IF EVENT=1 THEN GOSUB GREENCUBE GOSUB ENEMYSTATUS END IF IF EVENT=2 THEN GOSUB KEEP IF EVENT=3 THEN GOSUB SHOP IF EVENT=4 THEN GOSUB TREE IF EVENT=9 THEN GOSUB REWARD OUTSIDE=1 WAIT VBL LOOP '--------------COLLECTOR-------------------- COLLECTOR: IF MYDEBT>2500 THEN ENEMYHEALTH1=0 ENEMYHEALTH2=0 SPRITE OFF 32 SPRITE OFF 33 EVENT=1 ENEMYHEALTH=2 ENEMYNUMBER=1 ENEMYTYPE=128 BG 0 PAL 0 TEXT 11,13,"PREPARE " TEXT 11,14,"TO DIE! " END IF IF KM>=150 THEN ENEMYHEALTH1=0 ENEMYHEALTH2=0 SPRITE OFF 32 SPRITE OFF 33 EVENT=1 ENEMYHEALTH=2 ENEMYNUMBER=1 ENEMYTYPE=128 BG 0 PAL 0 TEXT 11,13,"PREPARE " TEXT 11,14,"TO DIE! " END IF RETURN '--------------EVENTSEARCH------------------- EVENTSEARCH: IF EVENTSEARCH=4 AND EVENT=0 THEN EVENT=4 KEEPMOVE=0 INTREE=1 END IF IF EVENTSEARCH=2 AND EVENT=0 THEN EVENT=2 KEEPMOVE=0 END IF IF EVENTSEARCH=3 AND EVENT=0 THEN EVENT=3 KEEPMOVE=0 END IF IF EVENTSEARCH>=5 AND EVENTSEARCH<=8 AND EVENT=0 THEN 'HOLE EVENT=5 END IF IF EVENTSEARCH>15 AND EVENT=0 THEN EVENT=1 ENEMYTYPEVAL=RND (10) 'ENEMYTYPEVAL=5 ENEMYHEALTH=5+ RND (2) IF ENEMYTYPEVAL=0 THEN ENEMYNUMBER=1 ENEMYTYPE=22 END IF IF ENEMYTYPEVAL=1 THEN ENEMYNUMBER=1 ENEMYTYPE=42 END IF IF ENEMYTYPEVAL=2 THEN ENEMYNUMBER=1 ENEMYTYPE=96 END IF IF ENEMYTYPEVAL=3 THEN ENEMYNUMBER=1 ENEMYTYPE=72 END IF IF ENEMYTYPEVAL=4 THEN ENEMYNUMBER=2 ENEMYTYPE=22 ENEMYTYPE1=22 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=5 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=72 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=6 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=96 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=7 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=22 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=8 THEN ENEMYNUMBER=3 ENEMYTYPE=72 ENEMYTYPE1=72 ENEMYTYPE2=72 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF IF ENEMYTYPEVAL=9 THEN ENEMYNUMBER=3 ENEMYTYPE=22 ENEMYTYPE1=22 ENEMYTYPE2=22 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF IF ENEMYTYPEVAL=10 THEN ENEMYNUMBER=3 ENEMYTYPE=72 ENEMYTYPE1=22 ENEMYTYPE2=22 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF END IF RETURN '--------------CHARMOVE--------------------- CHARMOVE: 'LITTLE GUY BODY SPRITE 10 SIZE 1 SPRITE 10 PAL 3-HITPAL PRIO 1 IF XCHAR<32 THEN XCHAR=32 IF XCHAR>112 THEN XCHAR=112 SPRITE 10,XCHAR,YCHAR,16+GRASSCOLOR 'JUMP IF YCHAR<70 THEN JUMP=1 ADD YCHAR, 0.5 SPRITE 47,XCHAR+4,83,48 SPRITE 47 PRIO 1 END IF IF YCHAR=70 THEN SPRITE OFF 47 JUMP=0 END IF IF YCHAR>70 THEN DEC YCHAR 'PUNCH IF PUNCH=0 THEN SPRITE OFF 11 IF PUNCH=1 THEN PUNCHMOD=((TAK/10) MOD 2) SPRITE 11,XCHAR+4+(PUNCHMOD*6),YCHAR-7+(PUNCHMOD*2),20+PUNCHMOD SPRITE 11 PRIO 1 END IF IF PUNCHMOD=1 THEN PUNCH=0 RETURN '------------------TREE--------------------- TREE: SPRITE 40 PAL 4 SPRITE 40 SIZE 0 SPRITE 40 PRIO 1 SPRITE 40, 18,44+KEEPMOVE/10,KEEPSPRITE SPRITE 39 PAL 4 SPRITE 39 SIZE 0 SPRITE 39 PRIO 1 SPRITE 39, 18+8,44+KEEPMOVE/10,KEEPSPRITE+1 SPRITE 38 PAL 7 SPRITE 38 SIZE 0 SPRITE 38 PRIO 1 SPRITE 38, 18,44+8+KEEPMOVE/10,KEEPSPRITE+16 SPRITE 37 PAL 7 SPRITE 37 SIZE 0 SPRITE 37 PRIO 1 SPRITE 37, 18+8,44+8+KEEPMOVE/10,KEEPSPRITE+17 IF KEEPMOVE/10> 5 THEN KEEPSPRITE= 136 ELSE KEEPSPRITE= 138 END IF SPRITE OFF 42 SPRITE 42 PRIO 1 SPRITE 42 SIZE 0 BG 0 PAL 0 TEXT 11,13," " TEXT 11,14," " IF SPRITE HIT (10,39) THEN SPRITE OFF 11 SPRITE 42,22,(44+KEEPMOVE/10)-9,116 TEXT 11,13,"SEARCH?" TEXT 11,14," (B) " IF BUTTON TAP (0,1) THEN GOSUB INTREE END IF IF KEEPMOVE>280 THEN TEXT 11,13," " TEXT 11,14," " SPRITE OFF 42 SPRITE OFF 40 SPRITE OFF 39 SPRITE OFF 38 SPRITE OFF 37 EVENT=0 END IF RETURN '------------------INTREE------------------ INTREE: IF INTREE=0 THEN PLAY 0, 46,1 SOUND 3 TEXT 11,13,"ALREADY" TEXT 11,14,"SEARCHED" WAIT 35 END IF IF INTREE=1 THEN STUPIDLOOT=RND(5) IF STUPIDLOOT=3 THEN WEEDLVL=WEEDLVL+1 TEXT 11,13," WOW! " TEXT 11,14," NICE! " TRACK 19, 0 WAIT 35 ELSE IF STUPIDLOOT=2 THEN METHLVL=METHLVL+1 TEXT 11,13," NO WAY! " TEXT 11,14," NICE! " TRACK 19, 0 WAIT 35 ELSE IF STUPIDLOOT=0 THEN EVENT=1 ENEMYHEALTH=5 ENEMYNUMBER=1 ENEMYTYPE=72 PLAY 0, 46,1 SOUND 3 SPRITE OFF 42 TEXT 11,13,"IT'S AN " TEXT 11,14,"AMBUSH! " WAIT 35 TEXT 11,13," " TEXT 11,14," " SPRITE OFF 40 SPRITE OFF 39 SPRITE OFF 38 SPRITE OFF 37 ELSE TEXT 11,13,"NOTHING " TEXT 11,14," IN IT " WAIT 35 END IF INTREE=0 END IF RETURN '------------------KEEP--------------------- KEEP: SPRITE 40 PAL 0 SPRITE 40 SIZE 1 SPRITE 40 PRIO 1 SPRITE 40, 126,44+KEEPMOVE/10,KEEPSPRITE IF KEEPMOVE/10> 5 THEN KEEPSPRITE= 64 ELSE KEEPSPRITE= 66 END IF IF SPRITE HIT (10,40) THEN PLAY 0, 46,1 SOUND 3 BG 0 PRIO 1 PAL 3 Y=0 FOR Y=0 TO 15 BG FILL 0,Y TO 20,Y CHAR 3 WAIT 5 NEXT Y SPRITE OFF 40 CLS GOSUB INITKEEP GOSUB INKEEP END IF IF KEEPMOVE>280 THEN SPRITE OFF 40 EVENT=0 END IF RETURN '------------------SHOP--------------------- SHOP: SPRITE 40 PAL 7 SPRITE 40 SIZE 1 SPRITE 40 PRIO 1 SPRITE 40, 126,44+KEEPMOVE/10,KEEPSPRITE IF KEEPMOVE/10> 5 THEN KEEPSPRITE= 68 ELSE KEEPSPRITE= 70 END IF IF SPRITE HIT (10,40) THEN PLAY 0, 46,1 SOUND 3 GOSUB INSHOP END IF 'IF KEEPMOVE/10>28 THEN KEEPMOVE=280 IF KEEPMOVE>280 THEN SPRITE OFF 40 EVENT=0 END IF RETURN '----------------HOLES--------------------- ' JE TE L'AI MIS EN SUB POUR TE MONTRER ' COMMENT CA MARCHE SUB DRAWHOLE(X0, Y0, DX, DY) PRIO 0 PAL 6 FOR J=Y0 TO Y0+DY FOR I=X0 TO X0+DX CELL I, 10-J, 3 NEXT I NEXT J END SUB DRAWBOX: SPRITE 43 SIZE 1 SPRITE 43, XBOX, YBOX, 107+BOXDOWN SPRITE 43 PAL 7 RETURN CHECKBOX: TOUCHBOX=0 IF XCHAR>(XBOX-12) AND XCHAR<(XBOX+12) AND YCHAR>(YBOX-14) AND YCHAR<(YBOX+8) THEN 'SPRITE HIT(43, 10) THEN TOUCHBOX=1 END IF RETURN MOVEBOX: ' MOVE THE BOX AWAY FROM THE GUY ' WHILE THE BOX TOUCHES HIM ' IN THE (DX, DY) DIR GOSUB CHECKBOX WHILE BOXHASFALLEN=0 AND TOUCHBOX=1 ADD XBOX, DX ADD YBOX, DY GOSUB CHECKBOX WEND 'PREVENT THE BOX FOR GOING OVER THE MENU IF YBOX>73 THEN YBOX=73 ' CHECK IF THE BOX SHOULD FALL IF BOXHASFALLEN=0 THEN X=XBOX Y=YBOX GOSUB CHECKFALL NOTE=36 IF FALLING = 1 THEN FOR I=0 TO 1 PLAY 0, NOTE,1 SOUND 3 DEC NOTE WAIT 5 NEXT I BOXHASFALLEN=1 BOXDOWN=2 END IF END IF ' CHANGING BOX ROOM IF XBOX<0 THEN BOXROOM = BOXROOM-1 XBOX = 144 END IF IF XBOX>144 THEN BOXROOM = BOXROOM+1 XBOX = 0 END IF RETURN DRAWBREAKABLE: PRIO 0 PAL 0 FOR I=0 TO 20 FOR J=4 TO 10 IF RND<=0.1 THEN CELL I, J, 111 END IF NEXT J NEXT I RETURN CHECKFALL: FALLING = 0 CX = X/8+1 CY = Y/8+1.8 BG 1 ' DEBUG (SHOW WHICH CELL HE IS STANDING ON) ' CELL CX, CY, 6 ' TRACE CELL.C(CX,CY) IF CELL.C(CX,CY) = 3 THEN FALLING=1 IF SPRITE HIT(10, 43) THEN FALLING=0 END IF IF CELL.C(CX,CY) = 111 AND RND(32)=0 THEN PAL 0 PRIO 0 CELL CX, CY, 127 TRACK 21, 0 END IF IF CELL.C(CX,CY) = 127 AND RND(32)=0 THEN PAL 1 PRIO 0 CELL CX, CY, 3 END IF RETURN '----------------INKEEP--------------------- INITKEEP: MUSIC 2 INCHEST=0 'INIT THE ROOM AND THE SEED ROOM=0 ROOMRND=RND(10000000) 'INIT THE POSITIONN OF THE GUY XCHAR = 0 YCHAR = 6*8 XBOX=72 YBOX=60 BOXROOM=0 RETURN INKEEP: BGDX=0 BOXDOWN=0 BOXHASFALLEN=0 SPRITE OFF 43 IF ROOM<0 THEN GOSUB KEEPOUT ' EVERY CALL TO RND WHILE ALLWAYS ' BE THE SAME IF ROOM AND ROOMRND ' ARE THE SAME (A.K.A THE SEED IS "ROOM+ROOMRND") ' ' FROM LOWRES NX MANUAL : ' ' * RANDOMIZE X ' SETS THE SEED FOR RANDOM NUMBERS TO X, WHICH SHOULD BE AN ' INTEGER VALUE. BY DEFAULT A PROGRAM STARTS WITH SEED 0, ' SO THE SEQUENCE OF RANDOM NUMBERS IS ALWAYS THE SAME. ' ' * RANDOMIZE TIMER ' IF YOU WANT DIFFERENT RANDOM NUMBERS EACH TIME YOU RUN ' YOUR PROGRAM, YOU SHOULD INSERT THIS LINE AT THE BEGINNING. ' ' * EXAMPLE: ' RANDOMIZE TIMER ' FOR I=1 TO 16 ' PRINT RND(1000) ' NEXT I RANDOMIZE ROOM+ROOMRND 'TURNS OFF RASTER 'ON RASTER OFFS OUTSIDE = 0 'DRAW THE KEEP BG 1 'KEEP BG COPY 0,23,20,9 TO 0,2 'TEXTBOX BG COPY 0,11,20,5 TO 0,11 'DRAW HOLES IF ROOM=0 THEN 'DRAWING A-HOLE X0 = RND(14)+2 Y0 = RND(6) DX = RND(20-X0) DY = RND(6-Y0) 'X0=6 Y0=0 DX=1 DY=6-Y0 CALL DRAWHOLE(X0, Y0, DX, DY) 'DRAWING ANOTHER HOLE X0 = RND(14)+2 Y0 = RND(3) DX = RND(1)+1 DY = RND(3-Y0)+3 CALL DRAWHOLE(X0, Y0, DX, DY) GOSUB DRAWBREAKABLE ELSE IF ROOM=1 THEN 'DRAWING MANY HOLES FOR I=0 TO 5 X0 = RND(18)+2 Y0 = RND(3) DX = RND(1)+1 DY = RND(3-Y0)+3 CALL DRAWHOLE(X0, Y0, DX, DY) NEXT I GOSUB DRAWBREAKABLE ELSE IF ROOM=2 THEN 'INIT THE KEEP'S BOSS CHESTCHAR=103 EVENT=1 CHESTLOOT=19+RND (80) ENEMYTYPEVAL=RND (10) ENEMYHEALTH=5+ RND (2) IF ENEMYTYPEVAL=0 THEN ENEMYNUMBER=1 ENEMYTYPE=22 END IF IF ENEMYTYPEVAL=1 THEN ENEMYNUMBER=1 ENEMYTYPE=42 END IF IF ENEMYTYPEVAL=2 THEN ENEMYNUMBER=1 ENEMYTYPE=96 END IF IF ENEMYTYPEVAL=3 THEN ENEMYNUMBER=1 ENEMYTYPE=72 END IF IF ENEMYTYPEVAL=4 THEN ENEMYNUMBER=2 ENEMYTYPE=22 ENEMYTYPE1=22 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=5 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=72 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=6 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=96 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=7 THEN ENEMYNUMBER=2 ENEMYTYPE=72 ENEMYTYPE1=22 ENEMYHEALTH1=5+ RND (2) END IF IF ENEMYTYPEVAL=8 THEN ENEMYNUMBER=3 ENEMYTYPE=72 ENEMYTYPE1=72 ENEMYTYPE2=72 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF IF ENEMYTYPEVAL=9 THEN ENEMYNUMBER=3 ENEMYTYPE=22 ENEMYTYPE1=22 ENEMYTYPE2=22 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF IF ENEMYTYPEVAL=10 THEN ENEMYNUMBER=3 ENEMYTYPE=72 ENEMYTYPE1=22 ENEMYTYPE2=22 ENEMYHEALTH1=5+ RND (2) ENEMYHEALTH2=5+ RND (2) END IF END IF 'KEEP LOOP DO INC TAK INC TIME INC SUNPOS IF TAK=16 THEN TAK=0 XENEMYMOTION=RND(29) YENEMYMOTION=RND(31) XENEMYMOTION1=RND(29) YENEMYMOTION1=RND(31) XENEMYMOTION2=RND(29) YENEMYMOTION2=RND(31) JUMP=0 END IF IF TIME=3200 THEN TIME=0 DAY=DAY+1 END IF 'MOVING IF UP (0) AND YCHAR>24 THEN DIR=16 DIR1=3 SPRITE 10 FLIP 0,0 DEC YCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 DY=-1 DX=0 GOSUB MOVEBOX END IF IF DOWN(0) AND YCHAR<70 THEN DIR=72 DIR1=2 SPRITE 10 FLIP 0,0 INC YCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 DY=1 DX=0 GOSUB MOVEBOX END IF IF RIGHT(0) THEN DIR=76 DIR1=1 SPRITE 10 FLIP 1,0 INC XCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 DY=0 DX=1 GOSUB MOVEBOX END IF IF LEFT (0) THEN DIR=76 DIR1=0 SPRITE 10 FLIP 0,0 DEC XCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 DY=0 DX=-1 GOSUB MOVEBOX END IF IF BUTTON TAP (0,0) AND JUMP=0 THEN JUMP=1 TAK=0 TRACK 18, 0 END IF IF BUTTON (0,1) THEN PUNCH=1 'TRACK 21, 0 END IF IF PAUSE THEN GOSUB INVENTORY2 GOTO INKEEP END IF GOSUB CHARMOVE2 GOSUB SUNPOSITION GOSUB PALCHANGE GOSUB STATUS ' CHANGING ROOM IF XCHAR<0 THEN ROOM = ROOM-1 ' INIT THE POSITION OF THE GUY XCHAR = 144 'YCHAR = 6*8 GOSUB INKEEP END IF IF XCHAR>144 THEN XCHAR=144 IF ROOM<2 THEN ROOM = ROOM+1 ' INIT THE POSITION OF THE GUY XCHAR = 0 'YCHAR = 6*8 GOSUB INKEEP END IF END IF IF ROOM=0 THEN 'DRAWING EXIT SIGN SPRITE 41 SIZE 1 SPRITE 41 PAL 7 SPRITE 41, 0, 64, 46 ELSE SPRITE OFF 41 END IF IF ROOM=BOXROOM THEN GOSUB DRAWBOX ELSE SPRITE OFF 43 END IF 'IF ROOM=1 AND BOXHASFALLEN=0 THEN GOSUB DRAWBOX IF ROOM=2 THEN GOSUB CHEST GOSUB ENEMYSTATUS IF EVENT=1 THEN GOSUB GREENCUBE IF EVENT=9 THEN GOSUB REWARD ELSE SPRITE OFF 42 SPRITE OFF 30 SPRITE OFF 32 SPRITE OFF 33 ENEMYHEALTH=0 ENEMYHEALTH1=0 ENEMYHEALTH2=0 GOSUB ENEMYSTATUS END IF '@GREENPILLOZ FALLING=0 X = XCHAR Y = YCHAR GOSUB CHECKFALL NOTE=46 IF FALLING=1 AND JUMP=0 THEN FOR I=0 TO 5 GOSUB CHARMOVE2 PLAY 0, NOTE,1 SOUND 3 DEC NOTE WAIT 5 NEXT I STOP HEALTH=HEALTH-1 ' NTM C'EST MIEUX COMME CA 'ROOM = 0 'XCHAR=0 'GOSUB INKEEP EVENT=0 STEPS=0 EVENTSEARCH=0 ENEMYHEALTH=0 GOSUB TRANSITION GOTO DRAW END IF WAIT VBL LOOP TRANSITION: BG 0 PRIO 1 PAL 3 Y=0 FOR Y=0 TO 15 BG FILL 0,Y TO 20,Y CHAR 3 WAIT 5 NEXT Y SPRITE OFF CLS RETURN '--------------CHEST--------------------- CHEST: SPRITE 42 SIZE 1 SPRITE 42 PAL 7 SPRITE 42, 130, 32, CHESTCHAR IF SPRITE HIT (10,42) AND INCHEST=0 THEN CHESTCHAR=105 PLAY 0, 66,1 SOUND 3 TEXT 6,1,"+$" MYMONEY=MYMONEY+CHESTLOOT NUMBER 8,1,CHESTLOOT,2 INCHEST=1 TAK=0 WAIT 15 END IF IF INCHEST=1 AND TAK>14 THEN TEXT 6,1," " RETURN '--------------KEEPOUT--------------------- KEEPOUT: STOP PLAY 0, 46,1 SOUND 3 EVENT=0 ENEMYHEALTH=0 STEPS=0 EVENTSEARCH=0 GOSUB TRANSITION GOTO DRAW RETURN '----------------INSHOP--------------------- INSHOP: BGDX=0 MUSIC RANDOMIZE TIMER COKE=INT(RND*28)+10 HEROIN=INT(RND*25)*2+25 ECSTACY=INT(RND*16)+10 METH=INT(RND*25)+10 WEED=INT(RND*13)+10 SWORDPRICE=100+RND(50) 'SHOPKEEPERS INIT A=RND(40)+16 B=RND(40)+16 A1=RND(20)+A+8 B1=RND(40)+16 A2=RND(30)+A1+8 B2=RND(40)+16 A3=RND(16)+A2+8 B3=RND(40)+16 TRADE=0 STUPID=0 HEALCOST=RND(10)+5 INSHOP2: GOSUB TRANSITION 'TURNS OFF RASTER 'ON RASTER OFF OUTSIDE = 0 INSHOP3: BG 1 'SHOP SHOPTYPE=RND (1) IF SHOPTYPE=0 THEN BG COPY 0,41,20,9 TO 0,2 IF SHOPTYPE=1 THEN BG COPY 0,32,20,9 TO 0,2 'TEXTBOX BG COPY 0,11,20,5 TO 0,11 DO INC TAK INC TIME INC SUNPOS IF TAK=16 THEN TAK=0 XENEMYMOTION=RND(29) YENEMYMOTION=RND(31) JUMP=0 STUPID=RND(2) END IF IF TIME=3200 THEN TIME=0 DAY=DAY+1 END IF 'MOVING IF UP (0) THEN DIR=16 DIR1=3 SPRITE 10 FLIP 0,0 DEC YCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 END IF IF DOWN(0) THEN DIR=72 DIR1=2 SPRITE 10 FLIP 0,0 INC YCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 END IF IF RIGHT(0) THEN DIR=76 DIR1=1 SPRITE 10 FLIP 1,0 INC XCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 END IF IF LEFT (0) THEN DIR=76 DIR1=0 SPRITE 10 FLIP 0,0 DEC XCHAR GRASSCOLOR = ((TIME/8) MOD 2)*2 END IF IF BUTTON TAP (0,0) AND JUMP=0 THEN JUMP=1 TAK=0 TRACK 18, 0 END IF IF PAUSE THEN GOSUB INVENTORY2 GOTO INSHOP3 END IF IF BUTTON TAP (0,1) AND TRADE=1 THEN GOSUB NPCTALK GOTO TRADING END IF IF BUTTON TAP (0,1) AND TRADE=2 THEN GOSUB HEALING IF BUTTON TAP (0,1) AND TRADE=3 THEN GOSUB DEBT IF BUTTON TAP (0,1) AND TRADE=4 THEN GOSUB NPCTALK GOTO TRADING2 END IF IF BUTTON TAP (0,1) AND TRADE=5 THEN GOSUB STUPID GOSUB SHOPKEEPER GOSUB CHARMOVE2 GOSUB SUNPOSITION GOSUB PALCHANGE GOSUB STATUS IF XCHAR<0 THEN STOP GOSUB KEEPOUT END IF IF XCHAR>144 THEN XCHAR=144 WAIT VBL LOOP '--------------SHOPKEEPER------------------- SHOPKEEPER: SPRITE 44 SIZE 1 SPRITE 44 PAL 5 SPRITE 44,A,B,72+((TIME/20) MOD 2)*2 SPRITE 45 SIZE 1 SPRITE 45 PAL 3 SPRITE 45,A1,B1,72+((TIME/25) MOD 2)*2 SPRITE 43 SIZE 1 SPRITE 43 PAL 6 SPRITE 43,A2,B2,128+((TIME/18) MOD 2)*2 SPRITE 46 SIZE 1 SPRITE 46 PAL 2 SPRITE 46,A3,B3,72+((TIME/22) MOD 2)*2 SPRITE 48 SIZE 1 SPRITE 48 PAL 6 SPRITE 48,140,16,132+((TIME/18) MOD 2)*2 SPRITE 49 PAL 6 SPRITE 49,140,32,88 SPRITE 50 PAL 6 SPRITE 50,148,32,89 SPRITE 51 PAL 6 SPRITE 51,144,10,177 SPRITE OFF 42 TRADE=0 BG 0 PAL 0 TEXT 11,13," " TEXT 11,14," " SPRITE 42 SIZE 0 IF SPRITE HIT (10,44) THEN SPRITE 42 PAL 0 SPRITE 42,A+4,B-9,116 TEXT 11,13," TRADE?" TEXT 11,14," (B) " TRADE=1 END IF IF SPRITE HIT (10,45) THEN SPRITE 42 PAL 0 SPRITE 42,A1+4,B1-9,118 TEXT 11,13,"HEAL: $" NUMBER 16,13,HEALCOST,2 TEXT 11,14," (B) " TRADE=2 END IF IF SPRITE HIT (10,43) THEN SPRITE 42 PAL 0 SPRITE 42,A2+4,B2-9,102 TEXT 11,13,"PAY DEBT" TEXT 11,14," (B) " TRADE=3 END IF IF SPRITE HIT (10,46) THEN SPRITE 42 PAL 0 SPRITE 42,A3+4,B3-9,37 TEXT 11,13," GEAR ? " TEXT 11,14," (B) " TRADE=4 END IF IF SPRITE HIT (10,48) THEN SPRITE 42 PAL 0 SPRITE 42,140+4,16-9,116 TEXT 11,13,"FEW WISE" TEXT 11,14,"WORDS? $" NUMBER 17,14,1+STUPID,1 TRADE=5 END IF RETURN '-----------------STUPID------------------- STUPID: IF MYMONEY>=STUPID+1 THEN MYMONEY=MYMONEY-(STUPID+1) 'TRACK 19, 0 GOSUB NPCTALK WAIT 5 STUPIDLOOT=RND(8) IF STUPIDLOOT=8 THEN WEEDLVL=WEEDLVL+1 TRACK 19, 0 END IF WAIT 5 ELSE PLAY 0, 36,1 SOUND 3 END IF RETURN '-----------------HEALING------------------- HEALING: IF MYMONEY>=HEALCOST AND HEALTH<9 THEN MYMONEY=MYMONEY-HEALCOST TRACK 19, 0 HEALTH=HEALTH+1 WAIT 5 ELSE PLAY 0, 36,1 SOUND 3 END IF RETURN '-----------------DEBT------------------- DEBT: IF MYMONEY>=MYDEBT AND DEBT=1 THEN MYMONEY=MYMONEY-MYDEBT TRACK 19, 0 DEBT=0 MYDEBT=0 WAIT 35 END IF IF MYMONEY16 THEN Y=Y-8 IF DOWN TAP (0) AND Y<24 THEN Y=Y+8 IF BUTTON TAP (0,0) AND Y=16 THEN GOSUB SWORDBUY IF BUTTON TAP (0,0) AND Y=24 THEN GOSUB SWORDBUY1 IF BUTTON TAP (0,1) THEN SPRITE OFF 1 GOTO INSHOP2 END IF WAIT VBL LOOP SWORDBUY: IF MYMONEY>=SWORDPRICE AND SWORD=0 THEN MYMONEY=MYMONEY-SWORDPRICE SWORD=1 ATT=0.5 TRACK 19, 0 NUMBER 8,0,MYMONEY,4 ELSE PLAY 0, 36,1 SOUND 3 TEXT 2,11, " CAN'T BUY !" WAIT 20 TEXT 2,11, " " END IF RETURN SWORDBUY1: IF MYMONEY>=SWORDPRICE+200 AND SWORD<2 THEN MYMONEY=MYMONEY-(SWORDPRICE+200) SWORD=2 ATT=1 TRACK 19, 0 NUMBER 8,0,MYMONEY,4 ELSE PLAY 0, 36,1 SOUND 3 TEXT 2,11, " CAN'T BUY !" WAIT 20 TEXT 2,11, " " END IF RETURN '-----------------TRADING------------------- TRADING: GOSUB TRANSITION SPRITE 1 SIZE 0 '----------------MAINSCREEN---------------- MAINSCREEN: Y=64 MAXC=INT(MYMONEY/COKE) MAXH=INT(MYMONEY/HEROIN) MAXE=INT(MYMONEY/ECSTACY) MAXM=INT(MYMONEY/METH) MAXW=INT(MYMONEY/WEED) CLS TEXT 0,0,"CASH:$" NUMBER 8,0,MYMONEY,4 TEXT 1,2,"ELVISH TOKE :$" NUMBER 15,2,COKE,2 TEXT 1,3,"GOBLIN SKULL:$" NUMBER 15,3,HEROIN,2 TEXT 1,4,"GREEN SLIME :$" NUMBER 15,4,ECSTACY,2 TEXT 1,5, "PHOENIX TAIL:$" NUMBER 15,5,METH,2 TEXT 1,6, "MAGIC WEED :$" NUMBER 15,6,WEED,2 TEXT 2,8, "BUY" TEXT 2,9, "SELL" TEXT 2,10, "INVENTORY" TEXT 0,13, "(A):OK. (B):BACK." DO SPRITE 1,0,Y,117 IF UP TAP (0) AND Y>64 THEN Y=Y-8 IF DOWN TAP (0) AND Y<80 THEN Y=Y+8 IF BUTTON TAP (0,0) AND Y=64 THEN GOTO BUY IF BUTTON TAP (0,0) AND Y=72 THEN GOTO SELL IF BUTTON TAP (0,0) AND Y=80 THEN GOTO INVENTORY IF BUTTON TAP (0,1) THEN SPRITE OFF 1 GOTO INSHOP2 END IF WAIT VBL LOOP BUY: Y=16 TEXT 2,8, "WHAT WOULD YOU " TEXT 2,9, "LIKE TO BUY ? " TEXT 2,10, " " WAIT 5 DO IF BUTTON TAP (0,0) AND Y=16 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,MAXC,4 TEXT 0,9,"MAX:" MAX1=MAXC AMNT=1 GOSUB AMNT DRUGBUY=COKE GOSUB BUYMONEYCHECK END IF IF BUTTON TAP (0,0) AND Y=24 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,MAXH,4 TEXT 0,9,"MAX:" MAX1=MAXH AMNT=1 GOSUB AMNT DRUGBUY=HEROIN GOSUB BUYMONEYCHECK END IF IF BUTTON TAP (0,0) AND Y=32 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,MAXE,4 TEXT 0,9,"MAX:" MAX1=MAXE AMNT=1 GOSUB AMNT DRUGBUY=ECSTACY GOSUB BUYMONEYCHECK END IF IF BUTTON TAP (0,0) AND Y=40 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,MAXM,4 TEXT 0,9,"MAX:" MAX1=MAXM AMNT=1 GOSUB AMNT DRUGBUY=METH GOSUB BUYMONEYCHECK END IF IF BUTTON TAP (0,0) AND Y=48 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,MAXW,4 TEXT 0,9,"MAX:" MAX1=MAXW AMNT=1 GOSUB AMNT DRUGBUY=WEED GOSUB BUYMONEYCHECK END IF IF UP TAP (0) AND Y>16 THEN Y=Y-8 IF DOWN TAP (0) AND Y<48 THEN Y=Y+8 IF BUTTON TAP (0,1) THEN WAIT 5 GOTO MAINSCREEN END IF SPRITE 1,0,Y,117 WAIT VBL LOOP RETURN '----------------AMOUNT-------------------- AMNT: WAIT 5 DO NUMBER 7,10,AMNT,4 IF LEFT TAP (0) AND AMNT > 1 THEN DEC AMNT WAIT 5 END IF IF RIGHT TAP (0) AND AMNTMYMONEY THEN TEXT 4,11,"NOT ENOUGH!" PLAY 0, 36,1 SOUND 3 WAIT 130 GOTO MAINSCREEN END IF MYMONEY=MYMONEY-TOTAL TRACK 19, 0 IF DRUGBUY=COKE THEN COKELVL=COKELVL+AMNT IF DRUGBUY=HEROIN THEN HEROINLVL=HEROINLVL+AMNT IF DRUGBUY=ECSTACY THEN ECSTACYLVL=ECSTACYLVL+AMNT IF DRUGBUY=METH THEN METHLVL=METHLVL+AMNT IF DRUGBUY=WEED THEN WEEDLVL=WEEDLVL+AMNT WAIT 5 GOTO MAINSCREEN RETURN '-------------------SELL-------------------- SELL: Y=16 TEXT 2,8, "WHAT WOULD YOU " TEXT 2,9, "LIKE TO SELL ? " TEXT 2,10, " " WAIT 5 DO IF BUTTON TAP (0,0) AND Y=16 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,COKELVL,4 TEXT 0,9,"MAX:" MAX1=COKELVL AMNT=1 GOSUB AMNT DRUGSELL=COKE DRUGS=COKELVL GOSUB SELLCHECK END IF IF BUTTON TAP (0,0) AND Y=24 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,HEROINLVL,4 TEXT 0,9,"MAX:" MAX1=HEROINLVL AMNT=1 GOSUB AMNT DRUGSELL=HEROIN DRUGS=HEROINLVL GOSUB SELLCHECK END IF IF BUTTON TAP (0,0) AND Y=32 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,ECSTACYLVL,4 TEXT 0,9,"MAX:" MAX1=ECSTACYLVL AMNT=1 GOSUB AMNT DRUGSELL=ECSTACY DRUGS=ECSTACYLVL GOSUB SELLCHECK END IF IF BUTTON TAP (0,0) AND Y=40 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,METHLVL,4 TEXT 0,9,"MAX:" MAX1=METHLVL AMNT=1 GOSUB AMNT DRUGSELL=METH DRUGS=METHLVL GOSUB SELLCHECK END IF IF BUTTON TAP (0,0) AND Y=48 THEN TEXT 2,8, " " TEXT 2,9, " " TEXT 2,10, " " TEXT 0,8," <- QUANTITY ->" NUMBER 7,9,WEEDLVL,4 TEXT 0,9,"MAX:" MAX1=WEEDLVL AMNT=1 GOSUB AMNT DRUGSELL=WEED DRUGS=WEEDLVL GOSUB SELLCHECK END IF IF UP TAP (0) AND Y>16 THEN Y=Y-8 IF DOWN TAP (0) AND Y<48 THEN Y=Y+8 IF BUTTON TAP (0,1) THEN WAIT 5 GOTO MAINSCREEN END IF SPRITE 1,0,Y,117 WAIT VBL LOOP RETURN '---------------SELLCHECK------------------- SELLCHECK: SOLD=0 IF AMNT>DRUGS THEN TEXT 4,11,"NOT ENOUGH!" PLAY 0, 36,1 SOUND 3 WAIT 130 GOTO MAINSCREEN END IF IF DRUGSELL=COKE THEN COKELVL=COKELVL-AMNT IF DRUGSELL=HEROIN THEN HEROINLVL=HEROINLVL-AMNT IF DRUGSELL=ECSTACY THEN ECSTACYLVL=ECSTACYLVL-AMNT IF DRUGSELL=METH THEN METHLVL=METHLVL-AMNT IF DRUGSELL=WEED THEN WEEDLVL=WEEDLVL-AMNT SOLD=AMNT*DRUGSELL MYMONEY=MYMONEY+SOLD TRACK 19, 0 WAIT 5 GOTO MAINSCREEN RETURN '------------------INVENTORY---------------- INVENTORY: SPRITE OFF 1 WAIT 5 CLS Y=16 '@GREENPILLOZ DO TEXT 0,0,"CASH:$" NUMBER 8,0,MYMONEY,4 TEXT 1,2,"ELVISH TOKE :" NUMBER 15,2,COKELVL,2 TEXT 1,3,"GOBLIN SKULL:" NUMBER 15,3,HEROINLVL,2 TEXT 1,4,"GREEN SLIME :" NUMBER 15,4,ECSTACYLVL,2 TEXT 1,5, "PHOENIX TAIL:" NUMBER 15,5,METHLVL,2 TEXT 1,6, "MAGIC WEED :" NUMBER 15,6,WEEDLVL,2 TEXT 1,8,"(B): BACK." TEXT 1,9,"(A): CONSUME." IF BUTTON TAP (0,0) AND Y=16 AND COKELVL>0 THEN DEC COKELVL STONE = 2 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=24 AND HEROINLVL>0 THEN DEC HEROINLVL STONE = 5 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=32 AND ECSTACYLVL>0 THEN DEC ECSTACYLVL STONE = 3 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=40 AND METHLVL>0 THEN DEC METHLVL STONE = 4 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=48 AND WEEDLVL>0 THEN DEC WEEDLVL STONE = 1 PLAY 0, 46,1 SOUND 3 END IF IF COKELVL<0 THEN COKELVL=0 IF HEROINLVL<0 THEN HEROINLVL=0 IF ECSTACYLVL<0 THEN ECSTACYLVL=0 IF METHLVL<0 THEN METHLVL=0 IF WEEDLVL<0 THEN WEEDLVL=0 IF UP TAP (0) AND Y>16 THEN Y=Y-8 IF DOWN TAP (0) AND Y<48 THEN Y=Y+8 IF BUTTON TAP (0,1) THEN WAIT 5 GOTO MAINSCREEN END IF SPRITE 1,0,Y,117 WAIT VBL LOOP '------------------INVENTORY2---------------- INVENTORY2: GOSUB TRANSITION SPRITE 1 SIZE 0 SPRITE OFF WAIT 5 CLS Y=16 '@GREENPILLOZ DO TEXT 0,0,"CASH:$" NUMBER 8,0,MYMONEY,4 TEXT 1,2,"ELVISH TOKE :" NUMBER 15,2,COKELVL,2 TEXT 1,3,"GOBLIN SKULL:" NUMBER 15,3,HEROINLVL,2 TEXT 1,4,"GREEN SLIME :" NUMBER 15,4,ECSTACYLVL,2 TEXT 1,5, "PHOENIX TAIL:" NUMBER 15,5,METHLVL,2 TEXT 1,6, "MAGIC WEED :" NUMBER 15,6,WEEDLVL,2 TEXT 1,8,"(B): BACK." TEXT 1,9,"(A): CONSUME." IF BUTTON TAP (0,0) AND Y=16 AND COKELVL>0 THEN DEC COKELVL STONE = 2 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=24 AND HEROINLVL>0 THEN DEC HEROINLVL STONE = 5 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=32 AND ECSTACYLVL>0 THEN DEC ECSTACYLVL STONE = 3 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=40 AND METHLVL>0 THEN DEC METHLVL STONE = 4 PLAY 0, 46,1 SOUND 3 END IF IF BUTTON TAP (0,0) AND Y=48 AND WEEDLVL>0 THEN DEC WEEDLVL STONE = 1 PLAY 0, 46,1 SOUND 3 END IF IF COKELVL<0 THEN COKELVL=0 IF HEROINLVL<0 THEN HEROINLVL=0 IF ECSTACYLVL<0 THEN ECSTACYLVL=0 IF METHLVL<0 THEN METHLVL=0 IF WEEDLVL<0 THEN WEEDLVL=0 IF UP TAP (0) AND Y>16 THEN Y=Y-8 IF DOWN TAP (0) AND Y<48 THEN Y=Y+8 IF BUTTON TAP (0,1) THEN WAIT 5 GOSUB TRANSITION RETURN END IF SPRITE 1,0,Y,117 WAIT VBL LOOP '--------------CHARMOVE2--------------------- CHARMOVE2: 'LITTLE GUY BODY SPRITE 10 SIZE 1 SPRITE 10 PAL 3-HITPAL PRIO 0 SPRITE 10,XCHAR,YCHAR,DIR+GRASSCOLOR 'JUMP IF YCHAR<24 AND JUMP=0 THEN INC YCHAR IF YCHAR<24 AND DIR=16 THEN JUMP=0 YCHAR=24 END IF IF YCHAR>70 AND DIR=72 THEN JUMP=0 YCHAR=70 END IF IF YCHAR<10 THEN INC YCHAR IF YCHAR>70 THEN DEC YCHAR IF JUMP=1 THEN DEC YCHAR INC SHADOW SPRITE 47,XCHAR+4,YCHAR+12+SHADOW,48 SPRITE 47 PRIO 1 END IF IF JUMP=1 AND TAK>=15 THEN JUMP=2 TAK=0 END IF IF JUMP=2 THEN INC YCHAR DEC SHADOW SPRITE 47,XCHAR+4,YCHAR+12+SHADOW,48 END IF IF JUMP=2 AND TAK>=15 THEN JUMP=0 IF JUMP=0 THEN SPRITE OFF 47 SHADOW=0 END IF 'PUNCH IF DIR1=3 THEN SWORDSPRITE=20 YSWORDDIR=-7 XSWORDDIR=0 SPRITE 11 FLIP 0,0 END IF IF DIR1=2 THEN SWORDSPRITE=20 YSWORDDIR=13 XSWORDDIR=0 SPRITE 11 FLIP 0,1 END IF IF DIR1=0 THEN SWORDSPRITE=100 YSWORDDIR=5 XSWORDDIR=-9 SPRITE 11 FLIP 0,0 END IF IF DIR1=1 THEN SWORDSPRITE=100 YSWORDDIR=5 XSWORDDIR=5 SPRITE 11 FLIP 1,0 END IF IF PUNCH=0 THEN SPRITE OFF 11 IF PUNCH=1 THEN PUNCHMOD=((TAK/10) MOD 2) SPRITE 11 PRIO 1 SPRITE 11,XCHAR+XSWORDDIR+4+(PUNCHMOD*6),YCHAR+YSWORDDIR+(PUNCHMOD*2),SWORDSPRITE+PUNCHMOD END IF IF PUNCHMOD=1 THEN PUNCH=0 RETURN '--------------GREENCUBE--------------------- GREENCUBE: '-I.A.- IF XENEMYMOTION>14 THEN INC XENEMY IF XENEMYMOTION<14 THEN DEC XENEMY IF YENEMYMOTION>14 THEN INC YENEMY IF YENEMYMOTION<14 THEN DEC YENEMY IF XENEMY<48 THEN XENEMY=48 IF XENEMY>96 THEN XENEMY=96 IF YENEMY>56 THEN YENEMY=56 IF YENEMY<35 THEN YENEMY=35 '-I.A.1- IF XENEMYMOTION1>14 THEN INC XENEMY1 IF XENEMYMOTION1<14 THEN DEC XENEMY1 IF YENEMYMOTION1>14 THEN INC YENEMY1 IF YENEMYMOTION1<14 THEN DEC YENEMY1 IF XENEMY1<48 THEN XENEMY1=48 IF XENEMY1>96 THEN XENEMY1=96 IF YENEMY1>56 THEN YENEMY1=56 IF YENEMY1<40 THEN YENEMY1=40 '-I.A.2- IF XENEMYMOTION2>14 THEN INC XENEMY2 IF XENEMYMOTION2<14 THEN DEC XENEMY2 IF YENEMYMOTION2>14 THEN INC YENEMY2 IF YENEMYMOTION2<14 THEN DEC YENEMY2 IF XENEMY2<48 THEN XENEMY2=48 IF XENEMY2>96 THEN XENEMY2=96 IF YENEMY2>56 THEN YENEMY2=56 IF YENEMY2<40 THEN YENEMY2=40 '-ENEMY ANIMATION- ENEMYANIM=((TAK/8) MOD 2)*2 '-HITS- IF SPRITE HIT (30,10) AND STONE=0 THEN PLAY 0, 36,1 SOUND 3 HEALTH=HEALTH-1 HITPAL=1 YENEMY=YENEMY-8 INC YCHAR INC YCHAR ELSE HITPAL=0 END IF IF SPRITE HIT (32,10) AND STONE=0 THEN PLAY 0, 36,1 SOUND 3 HEALTH=HEALTH-1 HITPAL=1 YENEMY1=YENEMY1-8 INC YCHAR INC YCHAR ELSE HITPAL=0 END IF IF SPRITE HIT (33,10) AND STONE=0 THEN PLAY 0, 36,1 SOUND 3 HEALTH=HEALTH-1 HITPAL=1 YENEMY2=YENEMY2-8 INC YCHAR INC YCHAR ELSE HITPAL=0 END IF IF ENEMYTYPE=22 THEN ENEMYPAL=4 IF ENEMYTYPE=42 THEN ENEMYPAL=5 IF ENEMYTYPE=96 THEN ENEMYPAL=5 IF ENEMYTYPE=72 THEN ENEMYPAL=4 IF ENEMYTYPE=128 THEN ENEMYPAL=6 IF SPRITE HIT (11,30) THEN 'PLAY 0, 46,1 SOUND 3 TRACK 21, 0 ENEMYHEALTH=ENEMYHEALTH-1-ATT ENEMYHITPAL=2 ENEMYPAL=0 YENEMY=YENEMY-8 IF DIR=76 THEN XENEMY=XENEMY+8 ELSE ENEMYHITPAL=0 END IF IF SPRITE HIT (11,32) THEN 'PLAY 0, 46,1 SOUND 3 TRACK 21, 0 ENEMYHEALTH1=ENEMYHEALTH1-1-ATT ENEMYHITPAL=2 ENEMYPAL=0 YENEMY1=YENEMY1-8 IF DIR=76 THEN XENEMY=XENEMY+8 ELSE ENEMYHITPAL=0 END IF IF SPRITE HIT (11,33) THEN 'PLAY 0, 46,1 SOUND 3 TRACK 21, 0 ENEMYHEALTH2=ENEMYHEALTH2-1-ATT ENEMYHITPAL=2 ENEMYPAL=0 YENEMY2=YENEMY2-8 IF DIR=76 THEN XENEMY=XENEMY+8 ELSE ENEMYHITPAL=0 END IF '-ENEMY SPRITE- SPRITE 30 PAL ENEMYPAL+ENEMYHITPAL SPRITE 30 SIZE 1 PRIO 1 SPRITE 30,XENEMY,YENEMY, ENEMYTYPE+ENEMYANIM IF ENEMYNUMBER=2 THEN SPRITE 32 PAL ENEMYPAL+ENEMYHITPAL SPRITE 32 SIZE 1 PRIO 1 SPRITE 32,XENEMY1,YENEMY1, ENEMYTYPE1+ENEMYANIM END IF IF ENEMYNUMBER=3 THEN SPRITE 32 PAL ENEMYPAL+ENEMYHITPAL SPRITE 32 SIZE 1 PRIO 1 SPRITE 32,XENEMY1,YENEMY1, ENEMYTYPE1+ENEMYANIM SPRITE 33 PAL ENEMYPAL+ENEMYHITPAL SPRITE 33 SIZE 1 PRIO 1 SPRITE 33,XENEMY2,YENEMY2, ENEMYTYPE2+ENEMYANIM END IF '---1 IF ENEMYHEALTH<=0 AND ENEMYNUMBER=1 THEN SPRITE OFF 30 EVENT=9 COINMOVE=0 HITPAL=0 END IF '----2 IF ENEMYHEALTH<=0 AND ENEMYNUMBER=2 THEN SPRITE OFF 30 HITPAL=0 END IF IF ENEMYHEALTH1<=0 AND ENEMYNUMBER=2 THEN SPRITE OFF 32 HITPAL=0 END IF IF ENEMYHEALTH<=0 AND ENEMYHEALTH1<=0 AND ENEMYNUMBER=2 THEN EVENT=9 COINMOVE=0 HITPAL=0 END IF '------3 IF ENEMYHEALTH<=0 AND ENEMYNUMBER=3 THEN SPRITE OFF 30 HITPAL=0 END IF IF ENEMYHEALTH1<=0 AND ENEMYNUMBER=3 THEN SPRITE OFF 32 HITPAL=0 END IF IF ENEMYHEALTH2<=0 AND ENEMYNUMBER=3 THEN SPRITE OFF 33 HITPAL=0 END IF IF ENEMYHEALTH<=0 AND ENEMYHEALTH1<=0 AND ENEMYHEALTH2<=0 AND ENEMYNUMBER=3 THEN EVENT=9 COINMOVE=0 HITPAL=0 END IF RETURN '----------------REWARD--------------------- REWARD: SPRITE 31 PAL 2 PRIO 1 COINMOVE1=YENEMY+COINMOVE+5 IF COINMOVE1>78 THEN COINMOVE1=78 SPRITE 31,XENEMY,COINMOVE1, 26 +((TAK/8) MOD 2) 'SPRITE 31,XENEMY,YENEMY+COINMOVE, 26 +((TAK/8) MOD 2) IF COINMOVE>28 THEN COINMOVE=28 IF SPRITE HIT (31,10) THEN TRACK 19, 0 SPRITE OFF 31 EVENT=0 MYMONEY=MYMONEY+1+RND(3) EVENTSEARCH=0 END IF RETURN '--------------PALCHANGE--------------------- PALCHANGE: 'AUBE MIDI SOIR NUIT IF TIME=0 THEN BGDCOLOR=47 IF TIME=800 THEN BGDCOLOR=27 END IF IF TIME=1600 THEN BGDCOLOR=22 IF TIME=2400 THEN BGDCOLOR=1 IF DEBT=1 THEN MYDEBT=MYDEBT+(MYDEBT*0.1) END IF IF STONE<>0 THEN ADD STONECOLOR, STONE*(RND(3)-1)/5, 0 TO 10 ELSE STONECOLOR = 0 END IF PALETTE 0,(BGDCOLOR + STONECOLOR) MOD 63,,, IF GRASSCOLOR=0 THEN PALETTE 1,,8,4, IF GRASSCOLOR=2 THEN PALETTE 1,,4,8, 'SUNCOLOR IF TIME<1600 THEN SPRITE 58 PAL 5 IF TIME=1600 THEN SPRITE 58 PAL 4 RETURN ' CHANGE @GREENPILLOZ '--------------RASTER TURNS----------------- 'INIT OF THE VARIABLES RASTERINIT: ON RASTER CALL RAST TOTALDIST = 0 DISTINC = 0.01 R1 = RND + 1 R2 = RND + 1 R3 = RND + 1 HOLE=-1 HOLESIZE=-1 ROADCURVE = 0 STONER = 0 BGDX=0 GLOBAL TOTALDIST, DISTINC, R1, R2, R3, GRASSCOLOR, STONE, OUTSIDE, ROADCURVE, STONER, HOLE, HOLESIZE, BGDX RETURN CALCRAST: ROADCURVE = (SIN(R1*TOTALDIST)+SIN(R2*TOTALDIST)+SIN(R3*TOTALDIST))/3 RETURN MOVEHOLE: ' REGENREATES A HOLE RANDOMLY IF HOLE = -1 THEN IF EVENT=5 THEN HOLE=48 HOLESIZE=1 END IF ELSE 'MOVES THE HOLE ADD HOLE, 1 ADD HOLESIZE, 0.1 'TRACE HOLE+HOLESIZE IF HOLE+HOLESIZE>=87 THEN HOLE=-1 HOLESIZE=-1 EVENT=0 END IF NOTE=46 IF HOLE+HOLESIZE>=85 AND JUMP=0 THEN FOR I=0 TO 3 'INC YCHAR SPRITE OFF PLAY 0, NOTE,1 SOUND 3 DEC NOTE WAIT 5 NEXT I HEALTH=HEALTH-1 EVENT=0 STEPS=0 EVENTSEARCH=0 ENEMYHEALTH=0 HOLE=-1 GOSUB TRANSITION GOTO DRAW1 END IF END IF RETURN ' THE FUNCTION CALLED AT EVERY LINE SUB RAST ' SO THE IDEA IS THAT THE ROAD IS DRAWN ON BG 1 ' AND FOR EVERY LINE DRAWN WE SCROLL THE BAGROUND A BIT ' ' TO KNOW HOW MUCH TO DISPLACE EVERY LINE WE DO: ' - DISTANCE FROM THE BOTTOM OF THE ROAD = 88-RASTER ' - POWER 1.2 SO WE HAVE A CURVY ROAD ' - TIMES A FUNCTION BETWEEN -1 AND 1 (-1=FULL LEFT, 1=FULL RIGHT) ' - IN THIS CASE WE USE A SUM OF 3 SINUS FUNCS WITH VARIOUS PERIODS ' SO IT GIVE SOMETHING THAT OSCILLATE NOT SO REGULARLY ' - THOSE SINUS DEPEND ON THE TOTALDIST SO WHEN WE MOVE FORWARD, ' THE ANGLE OF THE ROAD CHANGE (IN [-1,1]) ACCORDING TO THIS PERIODIC FUNCTION ' ' THINGS TO PLAY WITH: ' - DISTINC: CONTROLS HOW MUCH TOTALDIST CHANGES AT EVERY STEP ' PLAYING WITH THIS WILL CHANGE HOW FAST THE ROAD ANGLE CHANGE ' - THE POWER (HERE 1.2) WILL CHANGE THE CURVYNESS OF THE ROAD ' - THE PERIODS OF THE SIN FUNCTIONS (HERE 1, 1.2 AND 1.9) WILL CHANGE ' THE RACETRACK STONER = 5*SIN(RASTER/10+TIMER/10) * STONE IF RASTER<48 THEN SCROLL 1, BGDX, 0 ELSE IF RASTER<88 THEN SCROLL 1, ((88-RASTER)*ROADCURVE)*OUTSIDE + STONER , 0 IF ABS(RASTER-HOLE)50 AND KM<=85 THEN 'MONTAGNE 1 BG FILL 0,2 TO 18,2 CHAR 0 BG COPY 0,16,20,3 TO 0,3 END IF IF KM>95 AND KM<=125 THEN 'FORET 1 BG COPY 0,50,20,4 TO 0,2 END IF IF KM>125 THEN 'CASTLE BG COPY 0,54,20,4 TO 0,2 END IF '---DROITE---- IF KM<=25 THEN 'FORET 1 BG COPY 0,50,20,4 TO 12,2 END IF IF KM>25 AND KM<=75 THEN 'MONTAGNE 2 BG COPY 0,19,20,4 TO 12,2 END IF IF KM>75 AND KM<=100 THEN 'FORET 1 BG COPY 0,50,20,4 TO 12,2 END IF IF KM>100 THEN 'CASTLE BG COPY 0,54,20,4 TO 12,2 END IF BG 0 'GRASS BG COPY 0,6,20,5 TO 0,6 RETURN '---------------GAMEOVER-------------------- GAMEOVER: GOSUB TRANSITION NOTE=73 BG 0 PRIO 1 TEXT 4,-2, "=GAME-OVER=" Y=0 WHILE Y>-72 SCROLL 0, 0, Y PLAY 0, NOTE,1 SOUND 3 WAIT VBL ADD Y, -1 DEC NOTE WEND SPRITE 1 SIZE 1 SPRITE 1 PAL 3 SPRITE 2 SIZE 1 SPRITE 2 FLIP 1,0 SPRITE 2 PAL 3 X=0 T=0 'KINDA FAKE SCORE ATM SCORE=KM*100+MYMONEY*12+SWORD*24 MUSIC DO IF T=0 THEN TEXT 4,3,"PRESS(START)" TEXT 4,1,"SCORE:" NUMBER 10,1,SCORE,6 SPRITE 1,8,11.5*8,72 SPRITE 2,17*8,11.5*8,72 END IF IF T=30 THEN TEXT 4,3," " TEXT 4,1," " SPRITE 1,8,11.5*8,74 SPRITE 2,17*8,11.5*8,74 END IF INC T IF T>60 THEN T=0 IF PAUSE THEN STOP TRACK 19, 0 GOTO INIT END IF WAIT VBL LOOP RETURN '---------------NPCTALK-------------------- NPCTALK: TALK=RND(NUMTALKS) BG 0 PAL 0 TALKS$( 0) = "IM STILL" TALKS$( 1) = "A VIRGIN" TALKS$( 2) = "YOU ARE " TALKS$( 3) = "SO UGLY " TALKS$( 4) = "WHAT? " TALKS$( 5) = "GET LOST" TALKS$( 6) = "I ATE " TALKS$( 7) = "MY CAT " TALKS$( 8) = "ARE YOU " TALKS$( 9) = "A COP? " TALKS$(10) = "I SMELL " TALKS$(11) = "FISH... " TALKS$(12) = "THIS FOR" TALKS$(13) = "A LIVING" TALKS$(14) = "I ATE " TALKS$(15) = "MY CAT " TALKS$(16) = "MUST EAT" TALKS$(17) = "VEGGIES " TALKS$(18) = "HELLO :)" TALKS$(19) = "HANDSOME" TALKS$(20) = "WANT A " TALKS$(21) = "BEER? " TALKS$(22) = "MEET ME " TALKS$(23) = "BEHIND " TALKS$(24) = "TIME FOR" TALKS$(25) = "SOUP! " TALKS$(26) = "CHICKEN " TALKS$(27) = "NUGGETS " TALKS$(28) = "SIGN MY " TALKS$(29) = "REGISTER" TALKS$(30) = "KEEP IT " TALKS$(31) = "REAL ! " TALKS$(32) = "THATS WT" TALKS$(33) = "SHE SAID" TALKS$(34) = "DO A " TALKS$(35) = "KICKFLIP" TEXT 11,13, TALKS$(TALK*2) TEXT 11,14, TALKS$(TALK*2+1) CALL SAY(TALKS$(TALK*2), -1) CALL SAY(TALKS$(TALK*2+1), -1) WAIT 5 TEXT 11,13," " TEXT 11,14," " RETURN ' TALKING FX SUBROUTINE SUB SAY(MSG$, I) 'MSG$: THE MSG TO SAY 'I: THE LETTER TO SAY (IF -1 SAY ALL THE MSG) ' WE SEED RANDOM WITH HE MSG ' SO EACH MSG WILL SOUND ALLWAYS THE SAME RANDOMIZE ASC(MSG$) ' --- SAY ALL THE MSG --- IF I=-1 THEN FOR J=1 TO LEN(MSG$) CALL SAY(MSG$, J) WAIT 3 NEXT J EXIT SUB END IF '--- SAY ONLY ONE LETTER --- 'FIND THE CHAR AT J C$ = MID$(MSG$,I,1) 'IF IT IS A QUESTION GO UP DB = 0 IF INSTR(MSG$, "?")<>0 THEN DB = +0.1 IF INSTR(MSG$, "!")<>0 THEN DB = -0.1 IF INSTR(MSG$, "..")<>0 THEN DB = -0.1 'DETERMINE THE SOUND TO USE VOYE = INSTR("AEIOU0123456789", C$) CONS = INSTR("FHLMNVWJYZS", C$) PERC = INSTR("BCDGKPQRT", C$) IF VOYE<>0 THEN PLAY 0, 40+RND(12)+DB*I, 4 SOUND 7 IF CONS<>0 THEN PLAY 0, 40+RND(12)+DB*I, 4 SOUND 8 IF PERC<>0 THEN PLAY 0, 40+RND(12)+DB*I, 4 SOUND $A ' RESETING A MORE PROPER RANDOM GENERATOR RANDOMIZE TIMER END SUB '------------ENDSCENE------------- ENDSCENE: STOP MUSIC OUTSIDE=0 BGDCOLOR=0 PALETTE 0,BGDCOLOR,,, X=132 X1=182 T=0 Y=0 M=0 I=0 J=0 CLS SPRITE OFF SPRITE 1 SIZE 1 SPRITE 2 SIZE 0 SPRITE 1 PAL 6 SPRITE 2 PAL 0 SPRITE 3 PAL 5 PAL 0 SPRITE 3,64+4,4,162 'DIM MSGA$(3, 3) MSGA$(0, 0) = " !!!SURPRISE !!! " MSGA$(1, 0) = " IT WAS I THE KING " MSGA$(2, 0) = " FOR ALL THE TIME!" MSGA$(3, 0) = " HA. HA. HA. HA. " MSGA$(0, 1) = " SO YOU PAID YOUR " MSGA$(1, 1) = " DEBT TO SOCIETY, " MSGA$(2, 1) = " AND BY THAT I MEAN " MSGA$(3, 1) = " TO ME, EH? " MSGA$(0, 2) = " MMMMMMMMMMMMMMM, " MSGA$(1, 2) = " I SEE YOU ENJOY " MSGA$(2, 2) = " BEING A HYRULEAN " MSGA$(3, 2) = " PUSHER... " MSGA$(0, 3) = " AS YOU WISH MY BOY" MSGA$(1, 3) = " WOULD YOU LIKE TO " MSGA$(2, 3) = " KEEP ON QUESTING? " MSGA$(3, 3) = " WE ARE EVEN NOW :) " ' ----- INTRO CINEMATIC ------ 'FOR EACH MESSAGE FOR M=0 TO 3 'FOR EACH SENTENCE FOR I=0 TO 3 'FOR EACH LETTER FOR J=1 TO LEN(MSGA$(I, M)) ' PRINT LETTER C$ = MID$(MSGA$(I, M), J, 1) TEXT J-1,5+I, C$ ' SAY LETTER CALL SAY(MSGA$(I, M), J) ' ANIMATE GUY GOSUB GUYTALK GOSUB BTNMOVE IF NOT BUTTON (0,0) THEN WAIT 3 ELSE WAIT 1 END IF NEXT J NEXT I T=0 GOSUB GUYTALK 'WAIT FOR NEXT CHAPTER WHILE NOT BUTTON(0,0) GOSUB BTNMOVE WAIT VBL WEND 'CLEANING FOR I=0 TO 3 TEXT 0,5+I, " " NEXT I NEXT M ' ----- END ENDSCENE ------ XE=0 WAIT 25 TEXT 1,8,"CONTINUE:" DO IF XE=0 THEN TEXT 13,8,"NO " IF XE=1 THEN TEXT 13,8,"YES" IF BUTTON (0) AND XE=0 THEN STOP GOSUB TRANSITION GOTO EPICWALK2 END IF IF BUTTON (0) AND XE=1 THEN STOP GOSUB TRANSITION GOSUB PALCHANGE KM=0 GOTO DRAW END IF IF RIGHT (0) THEN XE=1 IF LEFT (0) THEN XE=0 WAIT VBL LOOP #1:MAIN PALETTES 053F2A1500082A00003A3020003A0800 05083F04003A3815003A2A00003F2500 #2:MAIN CHARACTERS 00000000000000000000000000000000 FFFFFFFFFFFFFFFF0000000000000000 0000000000000000FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 8181818181818181FEFEFEFEFEFEFEFE FF000000000000FF00FFFFFFFFFFFFFF 7F818181818181FE80FEFEFEFEFEFEFF 7F80808080808080FF7F7F7F7F7F7F7F 0808080000000000F7F7F7FFFFFFFFFF 0000001C1C1C0000FFFFFFE3E3E3FFFF 0000003E3E3E3E3EFFFFFFC1C1C1C1C1 00000000000000003C7EFFFFFFFF7E3C 0000000000000000000103070F1F3F7F 0000000000000000FEFCF8F0F0F8FCFE EEC2D2C2C2E66C10EEAEBEBEBEDE7C10 0000081C3E1C0800FFFFF7E3C1E3F7FF 0708101030387E7F070F1F1F3F3F5F4F E01008080C1C1E3EE0F0F8F8FCFCFAF2 000708101030387800070F1F1F3F3F5F 00E01008080C1C7E00E0F0F8F8FCFCFA 10383838383838381038282828282828 0000FC037F0E1C3800000003050A1428 0F1F3F7FFFCFDFFF0F1F3F7F80B0A080 FFFFFFFFFFFFFFFFFEFDFBF70F0F0F0F 001F3F7FFFFFCFDF001F3F7FFF80B0A0 00FEFEFEFEFEFEFE00FCFAF6EE1E1E1E 3C76C3C7F3C3763C3C4ABDB98DBD4A3C 181834242434181818103C3C3C3C1018 000000000000000000000000030F3FFF 0000000000000000030F3FFFFFFFFFFF 0804000000000000F7FBFFFFFFFFFFFF 1020000000000000EFDFFFFFFFFFFFFF 3F3C787B3C17110E333F4F4F3F1F1F0E FC3C1EDE3CE88870CCFCF2F2FCF8F870 7C7F7C381B0C0B074F735F3F1F0F0F07 FEFC3CDE1E3CC080F2CCFCF2F2FCC080 0000000000000000FEFCF8F0E0C0C080 3F7F7F7F7F7F7F1C3F01052911290104 FAFFFFFFFFFFFFFF85808080808080FF FFFFFFFFDE9CF8F00F0F0F0F2E6C08F0 FFFFFFFFFFFFFF00808080808080FF00 FEFEFEBE3CF8F0001E1E1E5EDC18F000 0000000062FBDE8C0000000062FBDD8F 0000000046DF7B310000000046DFBBF1 0000000060723B1E0000000060723B1D 00000000064EDC7800000000064EDCB8 001F3F7F7F3F1F003F7FE5E6EEE57F3F 00FEFEFEFEFEFE00FFFF51FBDB5BFFFF 003CFF7E00000000003CFF7E00000000 01021F7FFDA5C484FFFFE08103FFFFFF 01FFFF2A322260A0FF0000FFFFFFFFFF FFFEFCF8F0E0C080FFFFFFFFFFFFFFFF 000000000000000080C0C0E0F0F8FCFE 0102040810204080FFFFFFFFFFFFFFFF 000000004900000000000000DBFFFFFF 090909098A8C88F0FFFFFFFFFFFFFFFF FFFFFDF9A9090B0DFFFFFFFFFFFFFFFF 000000FF11224488FFFFFFFFFFFFFFFF 07000000000000000702041E12000000 E000000000000000E040207848000000 0C070000000000000F0702040C1E1200 30E0000000000000F0E0402030784800 00000000000000010000000000000001 C0C0C0C0C0C0C0E0C0C0C0C0C0C0C0E0 0F1F3F7FAA8080800F1F3F7FFFFFFFFF FFFEFCF8A8080808FFFFFFFFFFFFFFFF 0F1F2A202225253F0F1F3F3F3F3F3F3F FCF4A424283020C0FCFCFCFCF8F0E0C0 000103070F102040000103070F1F1F7F 0018FCFEFF7F3E1CE0F8FCFEFFFFFFFF 03070F183225253F03070F1F3F3F3F3F 30F8F4E4683020C0F0F8FCFCF8F0E0C0 0810103B3F7F7F3F0F1F1F3C37504232 100808DCFCFEFEFCF0F8F83CEC0A424C 070810103B3F7F7F070F1F1F3C3F5042 E0100808DCFCFEFEE0F0F8F83CFC0A42 0810181C111F1F1F0F1F17131F141410 10080404E4F4FCF0F0F8FCFCFCFC9C10 0F10203038233F3F0F1F3F2F273F2929 8040201010C8E8F880C0E0F0F0F8F838 808080878A8F8AFFFFFFFFFFFFFFFFFF 080808098A8C88F0FFFFFFFFFEFCF8F0 00000000000000000000000000000000 00000000000000000000000000000000 AEAAAA808A8F8AFFD1D5D5FFFFFFFFFF E8A8A8098A8C88F01F5F5FFFFEFCF8F0 00000000000000000000000000000000 00000000000000000000000000000000 3E7F7F3916110E00394F4F3F1F1F0E00 7CFEFE9C688870009CF2F2FCF8F87000 7F7E3F1B0E09070072593F1F0F0F0700 FC74FCFC78B000004C9CF4CCC8B00000 0B070303040403000C07030307070300 E8C8E8E8F020C00078F83838F0E0C000 3F170F3F49271C0020180F3F7F3F1C00 E0D0D0F0E8C8300020F0F03038F83000 040F070507020C1C040F070707030F1F 20F0E0E0E05F1F1B20F0E0A0E0DFFFFF 00040F0707020C1C00040F0507030F1F 0020F0A0E0403E3E0020F0E0E0C0FEFE 0000007FFF7F00000000007FC07F0000 0000007FFF7F00000000007FC07F0000 3F7F7F7F7F7F7F1C3F113D311D3D1104 000F207F40FF80FF000F3F7F7FFFFFFF 00FC06FE1EFA12F200FCFAF4EEDEFEFE 000F207F7FFFFFFF000F3F7F7FC080FF 00FC06FEFEFAF2F200FCFAF4EE1E1EFE 007F405850404040007F7F676F7F7F7F 00FE021A0A02020200FEFEE6F6FEFEFE 007F405950404040007F7F7F7F7F7F7F 00FE029A0A02020200FEFEFEFEFEFEFE 7F8191C9818D91FEFF7F7F7F7F7F7F01 3A321A0F060706003B03030301040600 555F4EC420A0A0E0DFDFCEC4E0E0E0E0 1A1A3263C48505071B03030307070707 362A3EDC28606000FEFEFEDCE8606000 3F7F7F7F7F7F7F1C3F01191901190104 080C0E7F7F0E0C080804027100000000 3F677F3D3D7F671C3F19197F7F191904 969690909090FF00FFFFFFFFFFFFFF00 929292969C98F000FEFEFEFEFCF8F000 969690909090FF00FFFFFFFFFFFFFF00 929292969C98F000FEFEFEFEFCF8F000 4040405058407F007F7F7F6F677F7F00 0202020A1A02FE00FEFEFEF6E6FEFE00 4040405059407F007F7F7F7F7F7F7F00 0202020A9A02FE00FEFEFEFEFEFEFE00 7FFB91CBA5ADD3FEFF4D7F7F7B7F3F01 080868D89FB7A2BA0F0F6FDF97B8BFB7 10101018FCEE465CF0F0F0F8EC1AFAEC 6FD0B0B0989FB7A26FDFBFBF9F9FB8BF F00808081CFCEE46F0F8F8F8FCFC1AFA 001F205FF1DFFFBF001F3F608EA480C0 00F804FA8FFBFFFD00F8FC0671250103 001F2053FFDFFFBF001F3F6C80A480C0 00F804CAFFFBFFFD00F8FC3601250103 3F7FFFFFFFFFFFFF0D1A326448484848 FCFEFFFFFFFFFFFFB8DC6E3616161616 000000003C7E7EFF0000000008142200 00000000000000000000000000000000 01C90109090909E9E1ED212D2D2DEDED 0078000000000000F8F8808080808080 40311018101810187F3F1E1E1E1E1E1E 8062203020302030FE7E3C3C3C3C3C3C BFFFFFB996D16E00B8CFCFBF9FDF6E00 FCFEFE9C688870001CF2F2FCF8F87000 BAFFBF9BCE690700B7D8BF9FCF6F0700 5CF4FCFC78B00000EC1CF4CCC8B00000 7E2023272320100F613F3F3C3F3F1F0F 7E04C4E4C40408F086FCFC3CFCFCF8F0 7E2027272720100F613F383F383F1F0F 7E04E4E4E40408F086FC1CFC1CFCF8F0 130E02020202040C130F03030303070F E828702020201018E8E8F0E0E0E0F0F8 24242466000000003C3C3C7E00000000 00000000000000000000000000000000 09090909090909090D0D0D0D0D0D0D0D 00000000000000F8808080808080F8F8 101810181018203F1E1E1E1E1E1E3F3F 203020302030407E3C3C3C3C3C3C7E7E 006666006600FFFFFF9999FF99FFFFFF 78888888888888F88FFFFFFFFFFFFFFF 0000000000000000000099DBFFFFFFFF 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 82BA8282828282BAFBFBC3C3C3C3FBFB 8044444444444426C066666666666637 284B4848484848482F6F6C6C6C6C6C4F 2020202020202020B0B0B0B0B0B0B0B0 888888888890A080CCCCCCCCCCD8F0E0 00000000000000000000000000000000 66242424242642817E3C3C3C3C3E7EFF 7E7EFFFFFFFFFFFF7E7EFFFFFFFFFFFF FFFFFFFFFFFFFFFF00000000000081C3 0000003C7EFFFFFF0000000000000000 3C7EFFFFFFFFFFFF00000000000081C3 FFFFFF7E3C000000FFFFFF7E3C000000 7E99A5BDA57E817E7EE7DBC3DB7EFF7E 00003C5AA5BDA57E00003C66DBC3DB7E 00000000000000000000000000000000 00000000000000000000000000000000 82828282828282FAC3C3C3C3C3C3FBFB 2E2A2A2A2A2A3A113F3B3B3B3B3B3B11 CB88888888888808CF8C8C8C8C8C8C0C 202020202020203EB0B0B0B0B0B0BEBE A090888888888888F0D8CCCCCCCCCCCC 00000000000000000000000000000000 00000000000000000000000000000000 00181818180018000000000000000000 006C6C24000000000000000000000000 00247E24247E24000000000000000000 00083E380E3E08000000000000000000 00626408102646000000000000000000 001C34386E643A000000000000000000 00181830000000000000000000000000 000C183030180C000000000000000000 0030180C0C1830000000000000000000 000024187E1824000000000000000000 000018187E1818000000000000000000 00000000181830000000000000000000 000000007E0000000000000000000000 00000000001818000000000000000000 00060C18306040000000000000000000 003C666E76663C000000000000000000 0018381818187E000000000000000000 003C660C18307E000000000000000000 003C660C06663C000000000000000000 0066667E060606000000000000000000 007E607C06067C000000000000000000 001C307C66663C000000000000000000 007E060C183030000000000000000000 003C663C66663C000000000000000000 003C663E06663C000000000000000000 00000018001800000000000000000000 00000018001830000000000000000000 00000C1830180C000000000000000000 0000007E007E00000000000000000000 000030180C1830000000000000000000 003C660C180018000000000000000000 003C666E6E603C000000000000000000 00183C667E6666000000000000000000 007C667C66667C000000000000000000 003C666060663C000000000000000000 00786C66666C78000000000000000000 007E607860607E000000000000000000 007E6078606060000000000000000000 003C606E66663C000000000000000000 0066667E666666000000000000000000 003C181818183C000000000000000000 001E060606663C000000000000000000 00666C78786C66000000000000000000 0060606060607E000000000000000000 0042667E7E6666000000000000000000 0066767E6E6666000000000000000000 003C666666663C000000000000000000 007C667C606060000000000000000000 003C66666A6C3E000000000000000000 007C667C786C66000000000000000000 003E603C06067C000000000000000000 007E1818181818000000000000000000 0066666666663C000000000000000000 00666666663C18000000000000000000 0066667E7E6642000000000000000000 00663C183C6666000000000000000000 0066663C181818000000000000000000 007E0C1830607E000000000000000000 003C303030303C000000000000000000 006030180C0602000000000000000000 003C0C0C0C0C3C000000000000000000 00183C66000000000000000000000000 0000000000007E000000000000000000 #3:MAIN BG 00001460000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000000000000000000C2002200220 022002200C2800200000000000000000 00000000000000000000000000000020 0C200220022002200220022002200C28 00200000000000000000000000000000 0000000000200C200220022002200220 02200220022002200C28002000000000 0000000000000000000000200C200220 02200220022002200220022002200220 02200C28000000000000000000010001 00010C20022002200220022002200220 0220022002200220022002200C280000 00000000010101010101010101010101 01010101010101010101010101010101 01010101010101010101010102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201010101010101010101010101 01010101010101010101010101010101 01010101010101010101010102010201 02010201020102010201020102010201 02010201020102010201020102010201 02010201010101010101010101010101 01010101010101010101010101010101 01010101010101010101010106000508 05080508050805080508050805080508 05080508050805080508050805080508 05080600040002080208020802080208 02080208020802080208020802080208 02080208020802080208040004000208 02080208020802080208020802080208 02080208020802080208020802080208 02080400040002080208020802080208 02080208020802080208020802080208 02080208020802080208040006000500 05000500050005000500050005000500 05000500050005000500050005000500 05000600000B000B000000001C041D04 1D0C1C0C000400040000000000000000 00000000000000000000000000000000 1C071D07020F020F020F020F1D0F1C0F 000F000F000F000F000F000F000F000F 000F00001C071D07020F020F020F020F 020F020F020F020F1D0F1C0F000F000F 000F000F000F000F000F000F000F000F 00000000000B000B000B000B000B0000 00000000000F000F000F000F000F000B 000000000010000F000F000B000B000B 000B000B00000000000000000000000F 000F000000000000000F0010000F000F 1C071D071D0F1C0F0C070C0F0C071D0F 1C0F0000000000000000000000000000 0000000F1C071D07020F020F020F020F 020F020F021F020F020F1D0F1C0F0000 00000000000000000000000040003800 36003600360036003600360036003600 36003600360036003600360036003600 40003800500037003900390039003900 39003900390039003900390039003900 39003900390039005000370006180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618061806180618061806180618 06180618060706078A048A048A040607 0607060706078A048A048A0406070607 06070607060706070607060706070607 06070607060706070607060706070607 06070607060706070607060706070607 06070607350435043500350035003500 35003500350035003500350035003500 35003500350035003500060735043504 35003500350035003500350035003500 35003500350035003500350035003200 32000607350435043500350035003500 35003500350035003500310035003100 35003500350035003100060735043504 35003500350035003500350035003500 32003200320032003500350035003500 35000607350435043500350035003500 35003100350031003500350031003500 35003500350035003500060735043504 35003500350035003200320032003200 35003500350035003500350035003500 35000607350435043500350035003100 35003100350035003500350035003500 35003500350035003500060706000600 8A048A048A0406000600060006008A04 8A048A048A048A040600060006000600 06000600060006000600060006000600 06000600060006000600060006000600 06000600060006000600060035043504 35003500350035003500350035003500 35003500350035003500350035003500 35000600350435043500350035003200 32003500310035003500320032003500 35003500320032003200060035043504 35003500310035003500350035003500 35003500310035003500350035003100 35000600350435043500350035003500 35003500350035003500350035003500 35003500350035003500060035043504 35003500350035003100350035003500 35003500350035003500350035003500 35000600350435043500350031003200 32003500350035003500320032003500 35003500350035003500060035043504 35003500350035003500350035003500 31003500310035003500350035003500 350006000000B3040004B304B304B304 0004B304B30400048A04000000000000 000000000000000000000000B404B204 B404B204B204B204B404B204B2048804 88048904000000000000000000000000 00000000B114B114B504B114B504B114 B504B114B11488048904890400040000 0000000000040004000000000000B007 0000B00F0000B0070000B007B00F0000 B00F00000000000000000000000B0000 00000000000000000000000000000000 00000000000000000014000000000000 00000000000B00000000000040004100 36003600360036003600360036004000 410000100000000000000000000B0004 00000000060006000600060006000600 0600060006000600A100000000000000 00000000000B00040000000050005008 06005000500806005000500806005000 37002413000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000020403060105010503060304 03040304030403040304030403040304 03040306010501050306020402040204 03060207030603060301030102050205 03060301030103060205030602070306 02040204020402040204030602050306 02050205030603060207010501050207 03060205030602040204020402040204 02040306020503060306030603060207 01050207030603060306020503060204 02040100020002000200030602050306 01000305030601020102030603050100 03060205030602000200020002000200 02000200030603060102030501000102 01060100030501020306030602000200 02000200020002000200020002000306 03060105010501050105010501050306 03060200020002000200020002000200 02000200030601040306030602070207 02070207030603060104030602000200 02000200020002000200030601040104 03060304030403040304030403040306 01040104030602000200020002000200 03060106010603060207030403040304 03040304030402070306010601060306 02000200020002000306020701060306 01040207020702050205020702070104 03060106020703060200020002000200 02000306030603060104010403040205 02050304010401040306030603060200 02000200030003000300030003000301 03010304010401040104010403040301 03010300030003000300030003000300 03000300030102020302030103010301 03010301030103020202030103000300 03000300030003000300030003010202 02020302030103000300030103020202 02020301030003000300030003050300 03000300030003010301030103000300 03000300030103010301030003000300 0300030000050005000500050005AA05 8C058D050000AB05AC05AD05AE050000 8E058F05000500050005000500050005 000500050005BA059C059D050000BB05 BC05BD05BE0500009E059F0500050005 00050005000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300030003000300030003000300 03000300 #15:MAIN SOUND 2800303A000000007801F04F0AFF0000 08005060000000002800303019FE0000 180080F0002F0F003800505000000000 2800106400227A00180000C8189BF900 1000010F1E2999000800000F00000000 180010011C9BF9000600A0F0121E9900 180084D0003A00002800B08012090A00 0600A64000EEFE000600A0F0120E9900 8300010D0388020EC040400440C04005 40000340400802404000014040070440 40000540400004404000064040070540 40000409400004094000050A40000409 4000060B4080050CC04040094040400E 4040400F40C04009C00040094007400E 4008400F408040094040404040404040 40404040404040404040404040404040 402928404029284040292A2840292A28 40292A2840292B28C0282A2D40282A2D 40282A2D40282B2D40282A2D40282A2D 40282A2D40282B2D4029282D4029282D 4029282D40A9282D4040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 00000000000000000000000043190000 0000000000000000000000000000113C 00000000431900000000000000000000 FF000000000000000000000043190000 00000000000000000000000000000000 00000000431900000000000000000000 327F0000000000000000000000000000 00000000000000000000000000000000 00000000377F00000000000000000000 397F0000000000000000000000000000 00000000000000000000000000000000 00000000377F00000000000000000000 3C7F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000000000003B7F0000 0000000000000000397F000000000000 00000000377F00000000000000000000 398F00FF0000000000000000378F00FF 0000000000000000398F00FF00000000 00000000378F00FF0000398F00FF0000 000000000000398F00FF0000378F00FF 0000000000000000398F00FF0000398F 00FF0000378F00FF0000000000000000 0F2F000000000F2F00000000112F0000 0000112F000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 192F00000000182F00000000142F0000 0000112F000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000043190000 0000000000000000000000000000113C 00000000431900000000000000000000 FF000000000000000000000043190000 00000000000000000000000000000000 00000000431900000000431900000000 1D650000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 22650000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 24650000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 22650000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 132F00000000000000000000132F0000 0000000000000000132F000000000000 00000000000000102F00102F00FF2F00 0E2F000000000000000000000E2F0000 00000000000000000E2F000000000000 000000000E2F00000000000000000000 152F00000000000000000000152F0000 0000000000000000152F000000000000 00000000152F00000000152F00000000 182F00000000000000000000182F0000 0000000000000000182F000000000000 000000001A2F00000000000000000000 1B650000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 4E4F00554F0000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 152F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 3100E13300003500003800003D000043 00004900004F0000FF00000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 4900E149000049000049000050000050 00005000005000005000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FF00000000000000 00000000000000000000000000000000 0000E15E00005E00005D00005B000058 00005600005500005100004E00004B00 004700004300003D00003700002E0000 2300001C00001400000E00000A000007 00000400000200000100000100000100 00010000000000000000000000FF0000 0000E121580043580057580000000000 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 26C20300000029C2000000002DC2A200 000030C20000000026C20000000029C2 000000002DC20000000030C200000000 24C20000000028C2000000002BC20000 00002FC20030C2002FC2000000002BC2 0000000028C20000000024C232000000 32C20300000035C20000000039C2A100 00003CC20000000032C20000000035C2 0000000039C2000000003CC200000000 30C20000000034C20000000037C20000 00003BC2003CC2003BC20000000037C2 0000000034C20000000030C200000000 3EF30000000000000000000000000000 000000000000000040F3000000000000 00000000000000000000000000000000 3CF30000000000000000000000000000 00000000000000003BF3000000000000 00000000000000000000000000000000 3EF30000000000000000000000000000 00003EF30000000040F3000000000000 000000000000000000003BF300000000 3CF30000000000000000000000000000 000034F3000000003BF3000000000000 0000000039F300000000000000000000 32B30200000000000000000000000000 00000000000000003EB3010000000000 00000000000000000000000000000000 30B30200000000000000000000000000 00000000000000003CB3010000000000 00000000000000000000000000000000 1AD50000000000000000000000000000 000000000000000026D5000000000000 00000000000000000000000000000000 18D50000000000000000000000000000 000000000000000024D5000000000000 00000000000000000000000000000000