Code: Select all
screen 13
DIM wall(10, 10), floor(10, 10), door(10, 10), player(10, 10)
DIM map(20, 19)
for y = 1 to 10
for x = 1 to 10
read clr
pset (x, y), clr
NEXT: NEXT
GET (1, 1)-(10, 10),wall
for y = 1 to 10
for x = 1 to 10
read clr
pset (x, y), clr
NEXT: NEXT
GET (1, 1)-(10, 10),floor
for y = 1 to 10
for x = 1 to 10
read clr
pset (x, y), clr
NEXT: NEXT
GET (1, 1)-(10, 10),door
for y = 1 to 10
for x = 1 to 10
read clr
pset (x, y), clr
NEXT: NEXT
GET (1, 1)-(10, 10),player
CLS
for y = 1 to 19
for x = 1 to 20
read map(x, y)
NEXT:NEXT
FOR y = 1 TO 19
FOR x = 1 TO 20
IF map(x, y) = 1 THEN PUT (x * 10 - 10, y * 10 - 10), wall
IF map(x, y) = 2 THEN PUT (x * 10 - 10, y * 10 - 10), floor
IF map(x, y) = 3 THEN PUT (x * 10 - 10, y * 10 - 10), door
IF map(x, y) = 4 THEN PUT (x * 10 - 10, y * 10 - 10), player
NEXT
NEXT
'wall
DATA 0,8,8,8,8,8,8,8,8,0
DATA 8,7,7,8,7,7,7,7,7,8
DATA 8,8,8,8,8,8,8,8,8,8
DATA 8,7,7,7,7,7,8,7,7,8
DATA 8,8,8,8,8,8,8,8,8,8
DATA 8,7,7,8,7,7,7,7,7,8
DATA 8,8,8,8,8,8,8,8,8,8
DATA 8,7,7,8,7,7,8,7,7,8
DATA 8,7,7,8,7,7,8,7,7,8
DATA 0,8,8,8,8,8,8,8,8,0
'floor
DATA 6,6,6,6,6,6,6,6,6,6
DATA 0,0,0,0,0,0,0,0,0,0
DATA 6,6,6,6,6,6,6,6,6,6
DATA 0,0,0,0,0,0,0,0,0,0
DATA 6,6,6,6,6,6,6,6,6,6
DATA 0,0,0,0,0,0,0,0,0,0
DATA 6,6,6,6,6,6,6,6,6,6
DATA 0,0,0,0,0,0,0,0,0,0
DATA 6,6,6,6,6,6,6,6,6,6
DATA 0,0,0,0,0,0,0,0,0,0
'door
DATA 1,1,1,1,1,1,1,1,1,1
DATA 1,9,9,9,9,9,9,9,9,1
DATA 1,9,9,1,1,1,1,9,9,1
DATA 1,9,1,9,9,9,9,1,9,1
DATA 1,6,6,9,1,1,9,1,9,1
DATA 1,6,6,9,1,1,9,1,9,1
DATA 1,9,1,9,9,9,9,1,9,1
DATA 1,9,9,1,1,1,1,9,9,1
DATA 1,9,9,9,9,9,9,9,9,1
DATA 1,1,1,1,1,1,1,1,1,1
'player
DATA 6,6,0,0,0,0,0,0,6,6
DATA 0,0,0,7,0,0,7,0,0,0
DATA 6,6,0,0,0,0,0,0,6,6
DATA 0,0,0,12,12,12,12,0,0,0
DATA 6,6,2,2,2,2,2,2,6,6
DATA 1,1,2,2,2,2,2,2,1,1
DATA 1,1,2,2,2,2,2,2,1,1
DATA 0,0,14,14,14,14,14,0,0,0
DATA 6,6,14,14,6,14,14,6,6,6
DATA 0,0,14,14,0,14,14,0,0,0
'map
DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,1
DATA 1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,4,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1
DATA 1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
do
k$=INKEY$
x=2
y=18
if k$ = chr$(100) then
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
x = x + 1
locate x,y
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
end if
if k$ = chr$(97) then
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
x = x - 1
locate x,y
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
end if
if k$ = chr$(119) then
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
y = y - 1
locate x,y
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
end if
if k$ = chr$(115) then
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
y = y + 1
locate x,y
PUT (x * 10 - 10, y * 10 - 10), player
PUT (x * 10 - 10, y * 10 - 10), floor
end if
loop until k$ = chr$(27)
If you compile you will see what is the problem. (use a,w,s,d)