File tree Expand file tree Collapse file tree 3 files changed +80
-3
lines changed
Expand file tree Collapse file tree 3 files changed +80
-3
lines changed Original file line number Diff line number Diff line change 667 LET DY = 0
778 LET D = 0
889 LET DA = 0
9+ 10 LET RSA = 0 : REM Rolling scan angle
10+ 11 LET RWD = 3 : REM Rolling scan width
911
1012200 T = RND 2
1113205 IF T = 0 THEN GOSUB 220
1214206 IF T = 1 THEN GOSUB 320
1315210 GOSUB 9000
1416250 GOTO 200
1517
16-
18+ 219 REM move in the X plane
1719220 LET DX = (RND 800 ) + 100
1820221 LET LX = LOCX
1921222 LET LY = LOCY
2224226 DRIVE DA,100
2325230 GOSUB 8000
2426235 IF D < 20 THEN GOTO 250
27+ 237 GOSUB 7000 : REM rolling scan and shoot
2528240 GOTO 221
2629250 DRIVE DA, 0
2730260 RETURN
2831
32+ 319 REM move in the Y plane
2933320 LET DY = (RND 800 ) + 100
3034321 LET LX = LOCX
3135322 LET LY = LOCY
3438326 DRIVE DA,100
3539330 GOSUB 8000
3640335 IF D < 20 THEN GOTO 350
41+ 337 GOSUB 7000 : REM rolling scan and shoot
3742340 GOTO 322
3843350 DRIVE DA, 0
3944360 RETURN
4045
4146
47+ 7000 REM scan and shoot while moving to target
48+ 7010 LET RR = SCAN RSA, RWD
49+ 7020 if RR > 0 AND RR < 700 THEN GOTO 7100
50+ 7030 LET RSA = RSA + RWD
51+ 7035 IF RSA > 360 THEN LET RSA = RDA - 360
52+ 7040 RETURN
53+ 7100 CANNON RSA, RR
54+ 7110 RETURN
4255
4356
4457
45- 8000 REM
58+ 8000 REM calculate distance to target
46598010 LET TX = DX - LX
47608015 LET TY = DY - LY
48618020 LET D = SQR (TX* TX)+ (TY* TY)
49628025 RETURN
5063
5164
52- 9000 REM
65+ 9000 REM scan and shoot
53669010 LET SD = 0
54679011 LET SW = 5
55689020 LET R = SCAN SD,SW
Original file line number Diff line number Diff line change 1+ 1 REM rook.bas
2+ 2 REM only move in the X or Y at a time.
3+
4+ 5 LET T = 0
5+ 6 LET DX = 0
6+ 7 LET DY = 0
7+ 8 LET D = 0
8+ 9 LET DA = 0
9+
10+ 200 T = RND 2
11+ 205 IF T = 0 THEN GOSUB 220
12+ 206 IF T = 1 THEN GOSUB 320
13+ 210 GOSUB 9000
14+ 250 GOTO 200
15+
16+
17+ 220 LET DX = (RND 800 ) + 100
18+ 221 LET LX = LOCX
19+ 222 LET LY = LOCY
20+ 223 LET DY = LY
21+ 225 IF LX > DX THEN LET DA = 180 ELSE LET DA = 0
22+ 226 DRIVE DA,100
23+ 230 GOSUB 8000
24+ 235 IF D < 20 THEN GOTO 250
25+ 240 GOTO 221
26+ 250 DRIVE DA, 0
27+ 260 RETURN
28+
29+ 320 LET DY = (RND 800 ) + 100
30+ 321 LET LX = LOCX
31+ 322 LET LY = LOCY
32+ 323 LET DX = LX
33+ 325 IF LY > DY THEN LET DA = 270 ELSE LET DA = 90
34+ 326 DRIVE DA,100
35+ 330 GOSUB 8000
36+ 335 IF D < 20 THEN GOTO 350
37+ 340 GOTO 322
38+ 350 DRIVE DA, 0
39+ 360 RETURN
40+
41+
42+
43+
44+
45+ 8000 REM
46+ 8010 LET TX = DX - LX
47+ 8015 LET TY = DY - LY
48+ 8020 LET D = SQR (TX* TX)+ (TY* TY)
49+ 8025 RETURN
50+
51+
52+ 9000 REM
53+ 9010 LET SD = 0
54+ 9011 LET SW = 5
55+ 9020 LET R = SCAN SD,SW
56+ 9030 IF R = 0 THEN GOTO 9060
57+ 9040 IF R > 700 THEN GOTO 9060
58+ 9050 CANNON SD,R
59+ 9051 LET SW = SW - 1
60+ 9052 IF SW = 1 THEN LET SW = 5
61+ 9055 GOTO 9020
62+ 9060 LET SD = SD + 5
63+ 9065 IF SD > 360 THEN RETURN
64+ 9070 GOTO 9020
You can’t perform that action at this time.
0 commit comments