Auto 1 # Run-time Variables Var d: Num = 2 Var x: Num = 17 Var y: Num = 12 Var p: Num = 3 Var pa: Num = 2007 Var pb: Num = 2019 Var pc: Num = 2027 Var pd: Num = 2038 Var pe: Num = 2050 Var pf: Num = 2060 Var pg: Num = 2070 Var ph: Num = 2078 Var pj: Num = 2089 Var a: NumArray(20, 20) = 1, 3, 1, 0, 0, 0, 3, 0, 0, 2, 0, 1, 1, 2, 0, 2, 0, 1, 1, 0, 0, 2, 0, 0, 3, 2, 3, 3, 2, 1, 0, 1, 0, 0, 0, 2, 2, 0, 0, 3, 1, 0, 1, 1, 2, 3, 3, 0, 0, 2, 2, 2, 1, 3, 2, 0, 2, 3, 3, 1, 0, 1, 0, 3, 0, 0, 3, 1, 3, 0, 0, 3, 0, 2, 1, 3, 1, 1, 3, 1, 1, 2, 3, 0, 1, 0, 3, 0, 3, 3, 0, 2, 3, 0, 3, 2, 2, 2, 3, 3, 2, 2, 1, 1, 3, 1, 3, 2, 2, 2, 2, 2, 3, 1, 3, 1, 2, 3, 1, 1, 3, 0, 1, 3, 3, 0, 0, 3, 0, 0, 1, 3, 3, 2, 2, 3, 1, 3, 2, 3, 0, 0, 3, 1, 2, 0, 5, 0, 0, 1, 1, 3, 0, 2, 3, 1, 0, 0, 0, 2, 2, 0, 0, 0, 2, 0, 1, 0, 0, 0, 1, 1, 2, 3, 1, 1, 2, 1, 1, 3, 2, 2, 1, 0, 2, 0, 1, 1, 1, 0, 0, 0, 1, 2, 1, 2, 0, 3, 1, 2, 1, 3, 3, 1, 3, 0, 1, 3, 3, 3, 2, 1, 0, 3, 0, 3, 0, 1, 3, 2, 0, 1, 3, 3, 1, 1, 3, 0, 3, 2, 3, 3, 1, 0, 3, 2, 1, 2, 3, 3, 0, 3, 0, 3, 2, 1, 1, 1, 1, 1, 1, 2, 3, 0, 3, 0, 0, 3, 0, 3, 1, 1, 3, 2, 3, 0, 3, 1, 1, 3, 3, 3, 0, 1, 1, 1, 1, 0, 3, 0, 0, 3, 3, 2, 2, 3, 2, 3, 1, 0, 3, 1, 3, 3, 1, 3, 3, 1, 2, 3, 1, 1, 0, 1, 1, 2, 0, 1, 2, 3, 2, 2, 0, 3, 1, 2, 2, 3, 2, 3, 0, 2, 2, 0, 2, 0, 2, 1, 1, 2, 3, 1, 0, 1, 3, 3, 1, 0, 0, 0, 2, 2, 1, 1, 2, 1, 3, 0, 2, 1, 1, 0, 2, 3, 2, 1, 0, 3, 3, 2, 0, 1, 0, 0, 0, 2, 2, 1, 3, 2, 0, 3, 1, 0, 0, 2, 2, 2, 3, 1, 2, 1, 0, 2, 0, 2, 2, 1, 0, 0, 2, 1, 0, 1, 2, 2, 1, 1, 2, 2 Var a: NumFOR = 15, 14, 1, 2, 4 Var b: NumFOR = 21, 20, 1, 20, 2 Var c: NumFOR = 21, 20, 1, 20, 3 Var s$: Str = "" # End Run-time Variables 1 PAPER 0: INK 1: BORDER 0: CLS 2 INK 3: PAPER 8: FOR a=7 TO 14: PRINT AT a,9;" ": NEXT a: INK 8: PRINT AT 5,10;"___ ___ ___ ": PRINT AT 6,8;"___|___|___|___": PRINT AT 7,7;"__|___|___|___|___": PRINT AT 8,8;"__";AT 8,22;"__": PRINT AT 9,7;"__|";AT 9,22;"|__": PRINT AT 10,8;"__";AT 10,22;"__": PRINT AT 11,7;"__|";AT 11,22;"|__": PRINT AT 12,8;"__";AT 12,22;"__": PRINT AT 13,7;"__|";AT 13,22;"|__": PRINT AT 14,8;"___|___|___|___": PRINT AT 15,9;"|___|___|___|_" 3 PRINT AT 0,29; INK 6;"N";AT 1,29; INK 4;"|"; INK 6;AT 2,27;"O"; INK 4;"-X-"; INK 6;"E";AT 3,29; INK 4;"|";AT 4,29; INK 6;"S" 10 DIM a(20,20) 20 FOR b=1 TO 20: FOR c=1 TO 20: LET d=INT (RND*4): LET a(b,c)=d: NEXT c: NEXT b 40 LET a(8,7)=5 100 REM inicializamos variables 110 LET x=10: LET y=10: LET p=1: GO TO 1000 120 REM rutina movimiento 130 LET s$=INKEY$ 140 IF s$="a" THEN GO TO 141+p 141 GO TO 150 142 LET x=x-(a(x-1,y)<5): GO TO 1000 143 LET y=y-(a(x,y-1)<5): GO TO 1000 144 LET x=x+(a(x+1,y)<5): GO TO 1000 145 LET y=y+(a(x,y+1)<5): GO TO 1000 150 IF s$="d" THEN GO TO 151+p 151 GO TO 160 152 LET x=x+(a(x+1,y)<5): GO TO 1000 153 LET y=y+(a(x,y+1)<5): GO TO 1000 154 LET x=x-(a(x-1,y)<5): GO TO 1000 155 LET y=y-(a(x,y-1)<5): GO TO 1000 160 IF s$="w" THEN GO TO 161+p 161 GO TO 170 162 LET y=y-(a(x,y-1)<5): GO TO 1000 163 LET x=x+(a(x+1,y)<5): GO TO 1000 164 LET y=y+(a(x,y+1)<5): GO TO 1000 165 LET x=x-(a(x-1,y)<5): GO TO 1000 170 IF s$="s" THEN GO TO 171+p 171 GO TO 180 172 LET y=y+(a(x,y+1)<5): GO TO 1000 173 LET x=x-(a(x-1,y)<5): GO TO 1000 174 LET y=y-(a(x,y-1)<5): GO TO 1000 175 LET x=x+(a(x+1,y)<5): GO TO 1000 180 IF s$="q" THEN LET p=p-1: GO TO 1000 190 IF s$="e" THEN LET p=p+1: GO TO 1000 200 GO TO 130 1000 REM rutina de vision 1001 IF x<3 THEN LET x=3: GO TO 1090 1002 IF y<3 THEN LET y=3: GO TO 1090 1003 IF x>17 THEN LET x=17: GO TO 1090 1004 IF y>17 THEN LET y=17: GO TO 1090 1090 GO TO 1092 1092 GO TO (1093+p) 1093 LET p=4: GO TO 1100 1097 GO TO 1100 1098 LET p=1 1100 GO TO (1100+p) 1101 PRINT AT 0,29; INK 6;"N";AT 1,29; INK 4;"|"; INK 6;AT 2,27;"O"; INK 4;"-X-"; INK 6;"E";AT 3,29; INK 4;"|";AT 4,29; INK 6;"S": LET pa=(2010-(a(x-1,y-2))): LET pb=(2020-(a(x,y-2))): LET pc=(2030-(a(x+1,y-2))): LET pd=(2040-(a(x-1,y-1))): LET pe=(2050-(a(x+1,y-1))): LET pf=(2060-(a(x,y-1))): LET pg=(2070-(a(x-1,y))): LET ph=(2080-(a(x+1,y))): LET pj=(2090-(a(x,y))): GO TO 1200 1102 PRINT AT 0,29; INK 6;"O";AT 1,29; INK 4;"|"; INK 6;AT 2,27;"S"; INK 4;"-X-"; INK 6;"N";AT 3,29; INK 4;"|";AT 4,29; INK 6;"E": LET pa=(2010-(a(x+2,y-1))): LET pb=(2020-(a(x+2,y))): LET pc=(2030-(a(x+2,y+1))): LET pd=(2040-(a(x+1,y-1))): LET pe=(2050-(a(x+1,y+1))): LET pf=(2060-(a(x+1,y))): LET pg=(2070-(a(x,y-1))): LET ph=(2080-(a(x,y+1))): LET pj=(2090-(a(x,y))): GO TO 1200 1103 PRINT AT 0,29; INK 6;"S";AT 1,29; INK 4;"|"; INK 6;AT 2,27;"E"; INK 4;"-X-"; INK 6;"O";AT 3,29; INK 4;"|";AT 4,29; INK 6;"N": LET pa=(2010-(a(x+1,y+2))): LET pb=(2020-(a(x,y+2))): LET pc=(2030-(a(x-1,y+2))): LET pd=(2040-(a(x+1,y+1))): LET pe=(2050-(a(x-1,y+1))): LET pf=(2060-(a(x,y+1))): LET pg=(2070-(a(x+1,y))): LET ph=(2080-(a(x-1,y))): LET pj=(2090-(a(x,y))): GO TO 1200 1104 PRINT AT 0,29; INK 6;"E";AT 1,29; INK 4;"|"; INK 6;AT 2,27;"N"; INK 4;"-X-"; INK 6;"S";AT 3,29; INK 4;"|";AT 4,29; INK 6;"O": LET pa=(2010-(a(x-2,y+1))): LET pb=(2020-(a(x-2,y))): LET pc=(2030-(a(x-2,y-1))): LET pd=(2040-(a(x-1,y+1))): LET pe=(2050-(a(x-1,y-1))): LET pf=(2060-(a(x-1,y))): LET pg=(2070-(a(x,y+1))): LET ph=(2080-(a(x,y-1))): LET pj=(2090-(a(x,y))) 1200 PAPER 7 1210 PRINT AT 8,10;" " 1220 PRINT AT 9,10;" " 1230 PAPER 6 1240 PRINT AT 10,10;" " 1250 PRINT AT 11,10;" " 1260 PRINT AT 12,10;" " 1270 PRINT AT 13,10;" " 1280 PAPER 8 2000 GO TO pa 2005 PRINT AT 9,13; PAPER 3;" ": GO TO 2010 2007 GO TO 2010 2008 PRINT AT 9,14; INK 4;".": GO TO 2010 2009 PRINT AT 8,13; INK 4;"\ .\::";AT 9,14; INK 2;"\: " 2010 GO TO pb 2015 PRINT AT 9,15; PAPER 3;" ": GO TO 2020 2017 GO TO 2020 2018 PRINT AT 9,16; INK 4;".": GO TO 2020 2019 PRINT AT 8,15; INK 4;"\ .\::";AT 9,16; INK 2;"\: " 2020 GO TO pc 2025 PRINT AT 9,17; PAPER 3;" ": GO TO 2030 2027 GO TO 2030 2028 PRINT AT 9,18; INK 4;".": GO TO 2030 2029 PRINT AT 8,17; INK 4;"\ .\::";AT 9,18; INK 2;"\: " 2030 GO TO pd 2035 PRINT AT 8,10; INK 3; PAPER 3;" "; PAPER 8;"\:.\. ";AT 9,10; PAPER 3;" ";AT 10,10;" "; PAPER 8;"\:'";AT 11,10; PAPER 3;" "; PAPER 8;"\:'" 2037 GO TO 2040 2038 PRINT AT 11,13; INK 4;"\. ": GO TO 2040 2039 PRINT AT 8,10; INK 4;"\ .\::\:.";AT 9,10;"\ '\::\::\' ";AT 10,11; INK 2;"\'.\' ";AT 11,11;"\ :" 2040 GO TO pe 2045 PRINT AT 8,17; INK 3;"\ .\.:"; PAPER 3;" ";AT 9,17;" "; PAPER 8;AT 10,17;"\':"; PAPER 3;" ";AT 11,18; PAPER 8;"\':"; PAPER 3;" " 2047 GO TO 2050 2048 PRINT AT 11,19; INK 4;"\. ": GO TO 2050 2049 PRINT AT 8,18; INK 4;"\ .\::\:.";AT 9,18;"\ '\::\::\' ";AT 10,19; INK 2;"\'.\' ";AT 11,19;"\ :" 2050 GO TO pf 2055 PRINT AT 8,13; PAPER 3;" ";AT 9,13;" ";AT 10,13;" ";AT 11,13;" " 2057 GO TO 2060 2058 PRINT AT 11,16; INK 4;"\. ": GO TO 2060 2059 PRINT AT 8,14; INK 4;"\ .\::\:.";AT 9,14;"\ '\::\::\' ";AT 10,15; INK 2;"\'.\' ";AT 11,15;"\ :" 2060 GO TO pg 2065 PRINT AT 8,10; PAPER 3; INK 3;" ";AT 9,10;" ";AT 10,10;" ";AT 11,10;" ";AT 12,10;" "; PAPER 8;"\:'";AT 13,10; PAPER 3;"\::"; PAPER 8;"\:'" 2067 GO TO 2070 2068 PRINT AT 13,12; INK 4;"\.:": GO TO 2070 2069 PRINT AT 8,10; INK 4;"\::\::\::";AT 9,10;"\::\''"; INK 2;"\: ";AT 10,10;"\:.\.:\' ";AT 11,10;"\::";AT 12,10;"\::";AT 13,10;"\::\. " 2070 GO TO ph 2075 PRINT AT 8,19; PAPER 3; INK 3;" ";AT 9,19;" ";AT 10,19;" ";AT 11,19;" ";AT 12,19; PAPER 8;"\':"; PAPER 3;" ";AT 13,20; PAPER 8;"\':"; PAPER 3;" " 2077 GO TO 2080 2078 PRINT AT 13,20; INK 4;"\.:": GO TO 2080 2079 PRINT AT 8,19; INK 4;"\::\::\::";AT 9,19;"\ '\::\::";AT 10,20; INK 2;"\ :\..";AT 11,21;"\''" 2080 GO TO Pj 2087 GO TO 2090 2088 PRINT AT 13,16; INK 4;"\.:": GO TO 2090 2089 PRINT AT 8,13; INK 4;"\::\::\::\::\::\::";AT 9,13;"\ '\::\::\::\''"; INK 2;"\: ";AT 10,14;"\ :\..\:.\.:\' ";AT 11,15;"\''\::";AT 12,16;"\::";AT 13,16;"\::\. " 2090 PRINT AT 0,0; INK 7;"X: ";x;" ";AT 1,0;"Y: ";y;" ";AT 2,0;"P: ";p 2100 GO TO 130