SCREEN 12 DIM char(36): RESTORE char: FOR y = 1 TO 6: FOR x = 1 TO 6: READ c: PSET (x, y), c: NEXT: NEXT: GET (1, 1)-(6, 6), char DIM watr(36): RESTORE watr: FOR y = 1 TO 6: FOR x = 1 TO 6: READ c: PSET (x, y), c: NEXT: NEXT: GET (1, 1)-(6, 6), watr DIM gras(36): RESTORE gras: FOR y = 1 TO 6: FOR x = 1 TO 6: READ c: PSET (x, y), c: NEXT: NEXT: GET (1, 1)-(6, 6), gras DIM tree(36): RESTORE tree: FOR y = 1 TO 6: FOR x = 1 TO 6: READ c: PSET (x, y), c: NEXT: NEXT: GET (1, 1)-(6, 6), tree DIM screensize(30, 30) AS LONG DIM mx AS INTEGER, my AS INTEGER, world(12, 12) AS INTEGER FOR y = 1 TO 12: FOR x = 1 TO 12: READ world(x, y): NEXT: NEXT mx = 2: my = 2 CLS DO FOR x = 1 TO 5: FOR y = 1 TO 5 sx = mx + (4 - x) sy = my + (4 - y) IF sx > 0 AND sy > 0 AND sx < 12 AND sy < 12 THEN IF world(sx, sy) = 1 THEN PUT (x * 6, y * 6), watr, PSET IF world(sx, sy) = 2 THEN PUT (x * 6, y * 6), gras, PSET IF world(sx, sy) = 3 THEN PUT (x * 6, y * 6), tree, PSET END IF NEXT y: NEXT x PUT (24, 24), char, PSET DO g$ = INPUT$(1) IF g$ = CHR$(27) THEN END IF mx = 0 THEN mx = 1 IF my = 0 THEN my = 1 IF mx > 0 AND my > 0 THEN IF g$ = "w" THEN IF world(mx, my + 1) = 1 OR world(mx, my + 1) = 3 THEN ELSE my = my + 1 IF g$ = "s" THEN IF world(mx, my - 1) = 1 OR world(mx, my - 1) = 3 THEN ELSE my = my - 1 IF g$ = "a" THEN IF world(mx + 1, my) = 1 OR world(mx + 1, my) = 3 THEN ELSE mx = mx + 1 IF g$ = "d" THEN IF world(mx - 1, my) = 1 OR world(mx - 1, my) = 3 THEN ELSE mx = mx - 1 END IF IF g$ <> "" THEN EXIT DO LOOP LOOP char: DATA 2,2,7,7,2,2 DATA 7,4,4,4,4,7 DATA 7,2,4,4,2,7 DATA 7,1,1,1,1,7 DATA 2,7,2,2,7,2 DATA 2,0,2,2,0,2 watr: DATA 1,1,1,1,1,1 DATA 1,1,1,1,1,1 DATA 1,1,1,1,1,1 DATA 1,1,1,1,1,1 DATA 1,1,1,1,1,1 DATA 1,1,1,1,1,1 gras: DATA 2,2,2,2,2,2 DATA 2,2,2,2,2,2 DATA 2,2,2,2,2,2 DATA 2,2,2,2,2,2 DATA 2,2,2,2,2,2 DATA 2,2,2,2,2,2 tree: DATA 2,10,10,10,10,2 DATA 10,10,10,10,10,10 DATA 10,6,10,10,6,10 DATA 2,6,6,6,6,2 DATA 2,2,6,6,2,2 DATA 2,2,6,6,2,2 map: DATA 3,3,3,3,3,3,3,3,3,3,3,3 DATA 3,2,2,2,2,2,2,2,1,1,1,3 DATA 3,2,3,3,1,1,2,2,1,1,1,3 DATA 3,2,2,2,2,2,2,2,2,3,3,3 DATA 3,2,3,2,3,3,3,2,2,1,3,3 DATA 3,2,2,2,2,3,3,2,2,2,3,3 DATA 3,2,3,2,3,2,3,2,2,2,2,3 DATA 3,2,2,2,2,2,2,2,2,2,2,3 DATA 3,2,2,2,2,2,2,2,2,2,2,3 DATA 3,2,2,2,2,2,2,2,2,2,2,3 DATA 3,2,2,2,2,2,2,2,2,2,2,3 DATA 3,3,3,3,3,3,3,3,3,3,3,3