REM (A) DO ACTION REM (B) VIEW INFO REM MAKE STORE REM ========== REM ORE FUEL REM MAKE 1 ORE=0.02/SEC REM MAKE 1 FUEL=0.2/SEC REM REM FACTORIES: REM ORE: 100 200 REM FUEL: 200 100 REM REM SHIPS: REM EXPLORER: 10 100(MAX) REM TRANSPOR: 25 500(MAX) REM BATTLESH: 100 2000(MAX) REM R_ = RESOURCE REM F_ = FACTORY REM O_ = OTHER DIM GLOBAL R_ORE(19,15) DIM GLOBAL R_FUEL(19,15) DIM GLOBAL F_ORE(19,15) DIM GLOBAL F_FUEL(19,15) FONT 64 REM WAS8BIT GAMEPAD 1 IWAIT=0 ICUR=0 CY=0 CX=0 CALL MOVECURSOR(CX,CY,0,0) F_ORE(1,1)=1 F_FUEL(1,1)=1 BG 1 BG FILL 0,0 TO 19,15 CHAR 1 BG FILL 0,0 TO 2,2 CHAR 0 ATTR(1) CELL 1,1,7 BG 1 DO IF ICUR=0 THEN CALL MOVECURSOR(CX,CY,0,0) IF RIGHT(0) THEN CALL MOVECURSOR(CX,CY,1,0) IF LEFT(0) THEN CALL MOVECURSOR(CX,CY,-1,0) IF DOWN(0) THEN CALL MOVECURSOR(CX,CY,0,1) IF UP(0) THEN CALL MOVECURSOR(CX,CY,0,-1) IF BUTTON(0,0) THEN CALL DOACTION(CX,CY,0) IF BUTTON(0,1) THEN CALL DOACTION(CX,CY,1) END IF FOR IY=0 TO 15 FOR IX=0 TO 15 C=CELL.C(IX,IY) IF C>1 THEN IF C=7 THEN IF IWAIT=0 THEN CALL INC_RESOURCES(IX,IY) END IF END IF NEXT IX NEXT IY ICUR=(ICUR+1) MOD 10 IWAIT=(IWAIT+1) MOD 60 WAIT VBL LOOP SUB MOVECURSOR(X,Y,DX,DY) XX=X+DX YY=Y+DY IF XX>=0 AND XX<=19 THEN X=XX IF YY>=0 AND YY<=15 THEN Y=YY CLS 0 BG 0 ATTR(0) CELL X,Y,16 IF DX<>0 OR DY<>0 THEN PLAY 0,70,10 SOUND 0 END SUB SUB DOACTION(X,Y,T) BG 1 C=CELL.C(X,Y) A=CELL.A(X,Y) IF T=0 THEN IF C=0 THEN CALL MESSAGE("NOTHING TO COMMAND") IF C=1 THEN CALL MESSAGE("UNEXPLORED SPACE") IF C>1 THEN CALL COMMAND(X,Y,C,A) ELSE IF C=0 THEN CALL MESSAGE("= EMPTY SPACE") IF C=1 THEN CALL MESSAGE("= UNEXPLORED SPACE") IF C=7 AND T=1 AND A=1 THEN CALL MESSAGE("= HOME PLANET") END IF END SUB SUB MESSAGE(M$) ATTR(0) PLAY 0,80,5 SOUND 1 CLS 0 BG 0 LOCATE 0,0 PRINT M$ WAIT 60 CLS 0 END SUB SUB COMMAND(X,Y,C,A) ATTR(0) PLAY 0,70,5 SOUND 1 CLS 0 BG 0 LOCATE 0,0 PRINT "COM:"; IF C=7 AND A=1 THEN PRINT "HOME PLANET" WHILE NOT BUTTON(0,1) LOCATE 0,1 PRINT "F:ORE = "+STR$(F_ORE(X,Y)) PRINT "F:FUEL = "+STR$(F_FUEL(X,Y)) PRINT "R:ORE = "+STR$(R_ORE(X,Y)) PRINT "R:FUEL = "+STR$(R_FUEL(X,Y)) PRINT "===============" PRINT "(U) MF:ORE 100/200" PRINT "(D) MF:FUEL 200/100" PRINT "(L) BS:EXP 10/100" PRINT "(R) BS:TRA 26/500" PRINT "(A) BS:BAT 100/2000" PRINT "(B) EXIT" IWAIT=(IWAIT+1) MOD 60 IF IWAIT=0 THEN CALL INC_RESOURCES(X,Y) WAIT VBL WEND END SUB SUB INC_RESOURCES(X,Y) R_ORE(X,Y)=R_ORE(X,Y)+0.02*F_ORE(X,Y) R_FUEL(X,Y)=R_FUEL(X,Y)+0.2*F_FUEL(X,Y) END SUB #1:MAIN PALETTES 003F2A15000B1703000C180400302010 003F2A15003F2A15003F2A15003F2A15 #2:MAIN CHARACTERS 00000000000000000000000000000000 00000010000000000000000000000000 00100000000800000000000040080000 00044001000020081004000080020008 4001240000248002404300000000C202 9060609009060609F09090F00F09090F 3C4299BDBD99423C3C5AA5C3C3A55A3C 58BD7EFFFF7EBD5A64C381000081C366 FF9999A5A5A5A5FF0000241800002400 00181824242424240000241800002424 0000F80606F800000000C40808C40000 24242424241818002424000018240000 00001F60601F00000000231010230000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 10100003C00008080000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 FFFFFFBDDBFFFFFF0042422400002400 187E7E3C5A7E7E5A2442422400002418 00F66EFFFF6EF6000006498080490600 5A7E7E5A3C7E7E181824000024424224 006F76FFFF766F000060920101926000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 FFBDFFFFBDDBA5FF0042000042663C00 183C7EFFBDDBA5812442810042663C00 F82C5E3F3F5E2CF80432614040613204 81A5DBBDFF7E3C18003C664200814224 1F347AFCFC7A341F204C860202864C20 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FFFFFFFFFFFFFFFF 0018181818001800FFE7E7E7E7FFE7FF 006C6C2400000000FF9393DBFFFFFFFF 00247E24247E2400FFDB81DBDB81DBFF 00083E380E3E0800FFF7C1C7F1C1F7FF 0062640810264600FF9D9BF7EFD9B9FF 001C34386E643A00FFE3CBC7919BC5FF 0018183000000000FFE7E7CFFFFFFFFF 000C183030180C00FFF3E7CFCFE7F3FF 0030180C0C183000FFCFE7F3F3E7CFFF 000024187E182400FFFFDBE781E7DBFF 000018187E181800FFFFE7E781E7E7FF 0000000018183000FFFFFFFFE7E7CFFF 000000007E000000FFFFFFFF81FFFFFF 0000000000181800FFFFFFFFFFE7E7FF 00060C1830604000FFF9F3E7CF9FBFFF 003C666E76663C00FFC399918999C3FF 0018381818187E00FFE7C7E7E7E781FF 003C660C18307E00FFC399F3E7CF81FF 003C660C06663C00FFC399F3F999C3FF 0066667E06060600FF999981F9F9F9FF 007E607C06067C00FF819F83F9F983FF 001C307C66663C00FFE3CF839999C3FF 007E060C18303000FF81F9F3E7CFCFFF 003C663C66663C00FFC399C39999C3FF 003C663E06663C00FFC399C1F999C3FF 0000001800180000FFFFFFE7FFE7FFFF 0000001800183000FFFFFFE7FFE7CFFF 00000C1830180C00FFFFF3E7CFE7F3FF 0000007E007E0000FFFFFF81FF81FFFF 000030180C183000FFFFCFE7F3E7CFFF 003C660C18001800FFC399F3E7FFE7FF 003C666E6E603C00FFC39991919FC3FF 00183C667E666600FFE7C399819999FF 007C667C66667C00FF839983999983FF 003C666060663C00FFC3999F9F99C3FF 00786C66666C7800FF879399999387FF 007E607860607E00FF819F879F9F81FF 007E607860606000FF819F879F9F9FFF 003C606E66663C00FFC39F919999C3FF 0066667E66666600FF999981999999FF 003C181818183C00FFC3E7E7E7E7C3FF 001E060606663C00FFE1F9F9F999C3FF 00666C78786C6600FF999387879399FF 0060606060607E00FF9F9F9F9F9F81FF 0042667E7E666600FFBD9981819999FF 0066767E6E666600FF998981919999FF 003C666666663C00FFC399999999C3FF 007C667C60606000FF8399839F9F9FFF 003C66666A6C3E00FFC399999593C1FF 007C667C786C6600FF839983879399FF 003E603C06067C00FFC19FC3F9F983FF 007E181818181800FF81E7E7E7E7E7FF 0066666666663C00FF9999999999C3FF 00666666663C1800FF99999999C3E7FF 0066667E7E664200FF9999818199BDFF 00663C183C666600FF99C3E7C39999FF 0066663C18181800FF9999C3E7E7E7FF 007E0C1830607E00FF81F3E7CF9F81FF 003C303030303C00FFC3CFCFCFCFC3FF 006030180C060200FF9FCFE7F3F9FDFF 003C0C0C0C0C3C00FFC3F3F3F3F3C3FF 00183C6600000000FFE7C399FFFFFFFF 0000000000007E00FFFFFFFFFFFF81FF #15:MAIN SOUND 26003399004FCF0021008000103AF000 08006060000000002800303019FE0000 38002020000000003800505000000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000