' POWER PUZZLE GAMES ' =================== ' ' LEFT BUTTON CHANGES GRAPHICS ' RIGHT BUTTON CHANGES GAME ' ' GAME #1 "LINKS" RULES ' --------------------- ' GOAL = FILL THE ENTIRE GAME SCREEN WITH LINK SYMBOLS ' ' HOW TO PLAY: ' 1) MOVE CHARACTER TO EMPTY SPACE OR TARGET OF SAME COLOR ' BY FLICKING THE CHARACTER TOWARDS THAT DIRECTION ' 2) TO RESET A CHARACTER'S MOVEMENTS, TAP ITS CHARACTER ' AT THE TOP ' ' YOU WIN: WHEN THE LINKS TWINKLE AND MUSIC PLAYS ' RANDOMIZE TIMER TOUCHSCREEN REM MINI GAME VARIABLES DIM GLOBAL XSTART(7),YSTART(7),XSTOP(7),YSTOP(7) REM POWER PUZZLE SETUP GLOBAL ICON,GAME,MODE DIM GLOBAL DIG(9),GRID(9,7),GRAPHICS(7,8) FOR IX=1 TO 7 FOR IY=0 TO 7 GRAPHICS(IX,IY)=IY*32+IX*2 NEXT IY NEXT IX FOR I=1 TO 7 SPRITE I,I*16,0,GRAPHICS(I,ICON) SPRITE I SIZE 1 PAL I NEXT I FOR I=0 TO 9 READ DIG(I) NEXT I DATA 96,97,112,113,128,129,144,145,160,161 CELL SIZE 1,1 BG 0 PAL 0 CELL 16,0,176 BG 1 PAL 0 CELL 0,0,64 CELL 8,0,64 CELL 9,0,64 PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 ICON=0 GAME=1 SCROLL 0,-4,-4 CALL SHOWSET CALL SHOWGAME DO IF TOUCH THEN TX=TOUCH.X\16 TY=TOUCH.Y\16 IF TX=0 AND TY=0 THEN PLAY 2,56,1 SOUND 2 ADD ICON,1,0 TO 7 CALL SHOWSET ELSE IF TX=8 AND TY=0 THEN IF GAME=1 THEN CALL GAME1 BG 1 PAL 0 CELL 0,0,64 CELL 8,0,64 CELL 9,0,64 ELSE IF TX=9 AND TY=0 THEN PLAY 2,49,1 SOUND 2 ADD GAME,1,1 TO 1 CALL SHOWGAME END IF END IF WAIT VBL LOOP SUB GAME1 REM INITIALIZE DIM MX(7),MY(7) BG 0 PAL 0 CELL 16,0,0 BG 1 IDONE=0 WHILE IDONE=0 IDONE=1 PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 FOR I=1 TO 7 C=0 WHILE C<>32 X=RND(9) Y=RND(6)+1 C=CELL.C(X,Y) WEND PAL I CELL X,Y,GRAPHICS(I,ICON) MX(I)=X MY(I)=Y XSTART(I)=X YSTART(I)=Y NEXT I ISTOP=50+RND(50) IF RND(25)=0 THEN RANDOMIZE TIMER FOR II=1 TO ISTOP FOR I=1 TO 7 DD=RND(1)*2-1 DX=0 DY=0 IF RND(1)=0 THEN DX=DD ELSE DY=DD XX=MX(I)+DX YY=MY(I)+DY C=CELL.C(XX,YY) IF C=32 THEN PAL I CELL XX,YY,GRAPHICS(I,ICON) MX(I)=XX MY(I)=YY XSTOP(I)=XX YSTOP(I)=YY END IF NEXT I NEXT II FOR Y=1 TO 7 FOR X=0 TO 9 IF CELL.C(X,Y)=32 THEN IDONE=0 NEXT X NEXT Y PLAY 0,2,1 WEND PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 FOR I=1 TO 7 PAL I CELL XSTART(I),YSTART(I),GRAPHICS(I,ICON) CELL XSTOP(I),YSTOP(I),224 NEXT I MODE=1 BG 0 PAL 0 CELL 16,0,177 BG 1 ITOUCH=0 IWIN=0 DO IF TOUCH AND IWIN=0 THEN TX=TOUCH.X\16 TY=TOUCH.Y\16 TC=CELL.C(TX,TY) IF ITOUCH=0 THEN ITOUCH=1 SX=TX SY=TY SC=TC SP=CELL.A(TX,TY) END IF IF TY=0 AND TX>0 AND TY<8 THEN PPAL=TX TRACE PPAL PAL 0 PLAY 1,56,1 SOUND 1 FOR IY=1 TO 7 FOR IX=0 TO 9 P=CELL.A(IX,IY) IF P=PPAL THEN CELL IX,IY,32 NEXT IX NEXT IY IF PPAL<0 OR PPAL>7 THEN PPAL=0 PAL PPAL CELL XSTART(PPAL),YSTART(PPAL),GRAPHICS(PPAL,ICON) CELL XSTOP(PPAL),YSTOP(PPAL),224 END IF IF TX=8 AND TY=0 THEN BG 0 PAL 0 CELL 16,0,176 BG 1 PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 PLAY 0,56,1 SOUND 0 WAIT 15 EXIT SUB END IF ELSE IF ITOUCH=1 THEN EX=TX EY=TY EC=CELL.C(EX,EY) DX=EX-SX DY=EY-SY ITOUCH=0 IF (ABS(DX)+ABS(DY))=1 AND (SC<>32 AND SC<>192 AND SC<>64 AND SC<>224) THEN C=CELL.C(EX,EY) IF C=32 OR C=224 THEN PLAY 0,61,1 SOUND 0 PAL SP CELL EX,EY,SC IF C=224 THEN CELL EX,EY,192 PLAY 2,68,1 SOUND 0 END IF CELL SX,SY,192 IWIN=1 FOR IY=1 TO 7 FOR IX=0 TO 9 IF CELL.C(IX,IY)<>192 THEN IWIN=0 NEXT IX NEXT IY IF IWIN=1 THEN PLAY 3,56,1 SOUND 3 WAIT 15 END IF END IF END IF END IF IF IWIN=1 THEN TINT RND(9),1+RND(6) PAL RND(7) IF RND(30)=10 THEN PLAY 3,30+RND(30),1 SOUND 3 IF TAP THEN EXIT SUB END IF WAIT VBL LOOP END SUB SUB SHOWGAME BG 0 PAL 0 CELL 18,0,DIG(GAME) BG 1 PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 MODE=-1 WAIT 15 END SUB SUB SHOWSET FOR I=1 TO 7 SPRITE I,,,GRAPHICS(I,ICON) NEXT I BG 0 PAL 0 CELL 0,0,DIG(ICON+1) BG 1 PAL 0 PAL 0 BG FILL 0,1 TO 9,7 CHAR 32 MODE=-1 WAIT 15 END SUB #1:MAIN PALETTES 0130201000383520003C2915002E0C08 003F2A16000F0B07003B373200272213 #2:MAIN CHARACTERS 00000000000000000000000000000000 00000000000000000000000000000000 00000000180C0F0E03070F1F3F7777F5 000000001830F070C0E0F0F8FCEEEEAF 030F1C1932323232030C13162D2D2D2D C0F0088844444444C030F878FCFCFCFC 0123777FFFFF7F7F01225448808C5240 80C4EEFEFFFFFEFE80442A1201619202 187CFEAFEF8FFFFF1864867574700199 7C92A945834529117CFEFFFFFFFFFFFF 0000000F1F3F3F0F00070F0C1630300C 0E1E0EFEFEFCFCF800C8F09E0644FC18 071921735F8C8888071E3E4C60F3F7F7 E09884CEFA311111E0787C3206CFEFEF 00030F1F3F3F7F7F00030C1020204042 00E0F8FCFEFEFFFF00E01804022A2901 00000000000000000000000000000000 00000000000000000000000000000000 0E00070F0F1F1F0FF1FF780000181C0E 7000E0F0FCFEFEFC8FFF1E000C3E7E7C 3232303011100C032D2D2F2F1F1F0F03 44444444880830C0FCFCFCFCF8F8F0C0 3F1F073A4682837C2018073B7FFFFF7C FCF8E0784482827C0418E0F8FCFEFE7C EF4F1F3F3F1F3F3FAA4A12252F10203F 11AAFEFFFFFEBF1FFFFEFE0101FEA11F 3E3E3C1C666360403F3723077F7F7E40 B0A0820606860000F0F072FEFEFE0000 98FCFFFD7D3F3F1FE7C3FFF26220301F 193FFFBFBEFCFCF8E7C3FF4F46040CF8 7FFFFFFF7F3F0F074189868040300807 AB83830656FCF8C0557D7DFAAA0438C0 0710204000808080071F204040C0C0C0 E008040200010101E0F8040202030303 071E3E4C60F3F7F7071921735F8C8888 E0787C3206CFEFEFE09884CEFA311111 7078707F7F3F3F1F00130F7960223F18 000000F0F8FCFCF000E0F030680C0C30 3E4995A2C1A294883E7FFFFFFFFFFFFF 183E7FF5F7F1FFFF182661AE2E0E8099 00071F3F7F7FFFFF0007182040549480 00C0F0F8FCFCFEFE00C0300804040242 00000000180C0F0E03070F1F3F7777F5 000000001830F070C0E0F0F8FCEEEEAF 0000000103070F1F0000000102040810 1E67A3A1A1BE827C1E7FDF5F5F427E84 0102020478848E4E00010103077B7535 008080403C42E2E400000080C0BC5C58 8080800040201007C0C0C04040201F07 01010100020408E0030303020204F8E0 E783FFFF7F3F3F1F98FCFFF26220301F E7C1FFFFFEFCFCF8193FFF4F46040CF8 0D054160606100000F0F4E7F7F7F0000 7C7C3C3866C60602FCECC4E0FEFE7E02 88557FFFFF7FFDF8FF7F7F80807F85F8 F7F3F8FCFCF8FCFC555348A4F40804FC D5C1C1606A3F1F03AABEBE5F55201C03 FEFFFFFFFEFCF0E082916101020C10E0 0E00070F3F7F7F3FF1FF7800307C7E3E 7000E0F0F0F8F8F08FFF1E0000183870 1E3D3B372F5EA0C011222428317EE0C0 F8F0E0C0800000000810204080000000 2E14202041469860150B1F1F3E386000 E850080804C4320C50A0F0F0F8380C00 0718275F5CB8B0B000071F3F3C787070 E018E4FA3A1D0D0D00E0F8FC3C1E0E0E 0F373F7F7FFFFFFF00084420985C1C00 F0ECFCFEFEFFFFFF0010220461727000 0F3F7F7FFFFFFFFF0000000018353D3D 80E0F0F0F8F8F8F900000000C0A0E0E0 F7FFFFFF7FFFFFFFF0B0C0C00C0E0E00 EFFFFFFFFEFFFFFF0F0D030360707000 0C3E675BDBDBDBC3030319343C3C3C3C 007CE6DADBDBDBC3FFFF99343C3C3C3C 7B8F8F8FFFFFFFFF0070707000040600 DEF1F1F1FFFFFFFF000E0E0E00406000 F08F9FBF7F7FFFFF0070604006060000 0FF1F9FDFEFEFFFF000E060230300080 0E3D7D7DFEF3E1CC01020202010C1E3F 30FC3EDE3FE7C399C000C020C0183C7E B0B0B85C5F2718077070783C3F1F0700 0D0D1D3AFAE418E00E0E1E3CFCF8E000 FFFFAFFFFF7F7FD78070530080403828 FFFFF5FFFFFEFEEB010ECA0001021C14 FFFFFFFFFF7020703D180009060F1F0F FAFAFAF9F9F14EE0E1C1010000008000 CFCFFFFF7F7F0757313000020100F8F8 F3F3FFFFFEFEE0EA8C0C004080001F1F E7FFFFFF5F753F0F18020100200A0000 E7FFFFFFFAAEFCF81840800004500000 E7E7FFFF7F3FFFFF181A010000000000 E7E7FFFFFEFCFFFF1858800000000000 FFFF7F2A00557F38000180D57F2A0000 FFFFFE5400AAFE1C008001ABFE540000 CCE1F3FF7F7F3F0F3F1E0C0002010000 99C3E7FFFEFEFCF87E3C180040800000 FFFFFFFFFFFFFFFFFFC3DBDBDBDBC3FF FFFFFFFFFFFFFFFFFFE7F7F7F7F7E3FF 00030F1F37377F7F000000000E0E0000 00C0F0F8BCBCFEFE0000000070700000 0000030F1F1F3F3F00030C1026264640 0000C0F0E0C0800000C0300810204080 0000030C1117272F0000030F1E183830 0000C03088E8E4F40000C0F078181C0C 000000000102050B000000000103060C 000000008040A0D00000000080C06030 00030F1F3F317F7F000000000E0E0000 00C0F0F8FC8CFEFE0000000070700000 00030F1F313F7F7F000000000E0E0000 00C0F0F88CFCFEFE0000000070700000 00000000010202080000000001060F17 00007C881010202000007C8810102060 FFFFFFFFFFFFFFFFFFC3FBC3DFDFC3FF FFFFFFFFFFFFFFFFFFC3FBE3FBFBC3FF 7F7F7F6E440000000000000000000000 FEFEFE76220000000000000000000000 3E3E1F1F0F03000041412020100C0300 00000080C0E00000000080402010C000 2F2717110C0300003038181E0F030000 F4E4E88830C000000C1C1878F0C00000 0B050201000000000C06030100000000 D0A04080000000003060C08000000000 7F7F7F6E440000000000000000000000 FEFEFE76220000000000000000000000 7F7F7F6E440000000000000000000000 FEFEFE76220000000000000000000000 00000000000000001E0D050000000000 0080000000000000F078F8F060000000 FFFFFFFFFFFFFFFFFFDBDBC3FBFBFBFF FFFFFFFFFFFFFFFFFFC3DFC3FBFBC3FF 0001020408080A0100010204090B0B1F 00FC20400080000000FC2040E070F8F8 0000030F1E1C3830071F3C7061E3C7CF 0000E08000010303E0F81C7EFEFFFFFF 010800004304088800050C0020630747 80200000C40010100090300002E6F0F3 000000000704040410123BFF1F1C3C7C 00000000C0404040404060FCF0203830 0010180000006020000004060202021F 0000101020000000000000000060C080 000000031313100000070F0F0F0F0F0F 000000606464040000F0F8F8F8F8F8F8 00000F1F3F3F3F3F3F404080848A8040 0000E0F0F8F8F8F8F804020141A20204 FFFFFFFFFFFFFFFFFFC3DFC3DBDBC3FF FFFFFFFFFFFFFFFFFFC3FBFBFBFBFBFF 00102000000000003F6F5F7F7F3F1E00 8040404000000000F8F8F0E080000000 3030202000001F07CFCFDF5F7F3F1F07 07070F1E3EFCF8E0FFFFFFFEFEFCF8E0 0808002300000401C7076763000C0D01 111020C200001080F3F0E6C60030B080 04070000000000001C1C3FFF0D040400 40C0000000000000203EF8F0B0901000 00010100000000000703030303071F00 808080804038000080808080C0F8F800 01010070D8807E000F070301217F0100 C0C0000E1B013E00F8F0E0C0C4FEC000 3F30383F1F0F00001F1F0F0700000000 F81838F8F0E00000F0F0E0C000000000 FFFFFFFFFFFFFFFFFFC3DBC3DBDBC3FF FFFFFFFFFFFFFFFFFFC3DBC3FBFBC3FF 000000100880408000001E3F3C3C1801 00000000000404040000008080C0C480 5CEE776C7B772F2F54AA576F3C583030 003EFE34DBEFF6F4002CDAF43A1D0E0C 00010204040911090000010303070F1F 00008040402010200000008080C0E0F0 00000103217020000001022452895139 0080C0E0C48E8480804020142A518A8C 00000F1F3F3F3F3F3F404080808E8440 0000E0F0F8F8F8F8F804020101E24204 000000000103091C00070300010F3763 3860C080800000003860D89C8060F8FC 000411401500000307337EBFEEBF6F3F 00044410022000C090FCACFCFDDFFEFE FFFFFFFFFFFFFFFF0701383801033F3F FFFFFFFFFFFFFFFFC3993C7E723198C4 00000000000000000303060606030100 0400000000000000040C181830E0C000 2F6FF7DBAC7FFC483070B85CAF5BB448 F4F4EEDE36EE76300C0C1A3CF6EA5420 05030101010000001F0F0F0703000000 4080000000000000F0E0E0C080000000 000600000F0000030F070101000F0703 00708080F01020C0F8F0808000F0E0C0 3F3F3C3F1F0F00000003070300000000 F8F878F8F0E000000080C08000000000 3830100000000000474F6F3F3F1F0700 0000000000000000FCFCFCF8F8F0C000 01010101010103073D11010101010307 808080808080C0E0B48080808080C0E0 00000004041901060000000812030D06 00000020209880600000001048C0B060 0718274F5FBFBFBF000718302C565E4D E018E4F2FAFDFDFD00E0180C345A7AB2 071820474F9F9F9F00071F38376D6D6D E01804E2F2F9F9F900E0F81CECB6B6B6 071820474F9F9F9F00071F3F38727270 E01804E2F2F9F9F900E0F8FC1C4E4E0E 07182442578F9F9F00071B3D2877696F E0182442EAF1F9F900E0D8BC14EE96F6 07182442478F9F9F00071F3F3F787272 E0188442F2F9FDFD00E0F8FCFC0E2626 071823474F9FBFBF00071F3834746068 E01884C2E2F1F9F900E0F83C5C5E0E2E 071820464F9F9F9F00071F3F39707272 E0180462F2F9F9F900E0F8FC9C0E4E4E 0601190404000000060D031208000000 608098202000000060B0C04810000000 BFBFBF5F4F27180741404F2331180700 FDFDFDFAF2E418E08202F2C48C18E000 9F9F9F4F472018076F6B6C37381F0700 F9F9F9F2E20418E0F6D636EC1CF8E000 9F9F9F4F47201807717271383F1F0700 F9F9F9F2E20418E08E4E8E1CFCF8E000 9F8F9744482018076E77683B371F0700 F9F1E922120418E076EE16DCECF8E000 9F8F87424620180770787F3F3F1F0700 FDF9F142620418E0860EFEFCFCF8E000 BFBF9F4F47201807646370383F1F0700 F9F9F1E2C20418E04E8E1E3CFCF8E000 8F87834140201807787C7E3F3F1F0700 F1E1C182020418E01E3E7EFCFCF8E000 094000108F0F01810E00201080808000 90020008F1F080817000040801010100 01026511617B5F0F010366F69E84E010 8040A68886DEFAF080C0666F79210708 18235FBFBF7F7E7E1F3C60C0C0808181 08F4FAC4B8408080F80C063C78C08080 225DBEBFBF5F2F2F3E63C1C0C0603030 44BA7DFDFDFAF4F47CC6830303060C0C 0718275F5FBCBBBB00071F3F3C7B7776 F804FAFDFD3FCEF600F8FCFE3ECFF67A 02050B172F5FBF7F03060C183060C080 40A0D0E8F4FAFDFEC06030180C060301 1C225DBEBF7F7F7F1C3E63C1C0808080 3844BA7DFDFEFEFE387CC68303010101 001A3A7B675F5F5F002606071FBFBFBF 00585CDEE6FAFAFA006460E0F8FDFDFD 8101018110004009008080801020000E 81808081080002900001010108040070 0F5F7B611165020110E0849EF6660301 F0FADE8688A64080080721796F66C080 7E7E7FBFBF5F2718818180C0C060381F 808040BCC2FDF20C8080C07C3E030EFC 5FBFBFBF5D211D0260C0C0C0623E1E03 FAFDFDFDBB86B84006030303477E78C0 BBBBBC5F5F27180776777B3C3F1F0700 F67A7AFAFAE418E03ABCBC7CFCF8E000 7FBF5F2F170B050280C06030180C0603 FEFDFAF4E8D0A0400103060C183060C0 7FBF5F2F170B050280C06030180C0603 FEFDFAF4E8D0A0400103060C183060C0 5F5F6F6F331C0F07BFBF9F1F4F231000 FAFAF6F6CC38F0E0FDFDF9F8F2C40800 #15:MAIN SOUND 2800306610F600002800306614F60000 08006060000000000800F0BB00FC0000 0800F044000000001800F05500000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 8340404004C040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 142F00000000000000000000132F0000 0000000000000000142F000000000000 00000000132F00000000000000000000 142F00000000000000000000132F0000 0000000000000000142F000000000000 00000000132F00000000000000000000 1F4F00000000FF0000000000134F00FF 00000000000000002B4F00000000FF00 00000000134F00FF0000000000000000 374F0000000000000000000000000000 0000000000000000FF00000000000000 00000000000000000000000000000000 374F002B4F001F4F00134F00074F0000 00000000000000000000000000000000 00000000000000000000000000000000 FF000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 405F00FF0000405F00FF000000000040 5F00FF5F000000003E5F00FF0000405F 00FF0000000000435F00FF0000000000 000000000000000000000000375F00FF 00000000000000000000000000003C5F 00FF0000000000000000000000000000 395F00FF000000000000000000000000 00003B5F00FF00000000003A5F00FF5F 00395F00FF0000000000000000375F00 FF5F0000000000000000000000000000 00000000002B5F000000000000000000 00FF0000000000000000000000000000