Skip to content

Commit 2a644a5

Browse files
committed
blaster added
1 parent 5b19931 commit 2a644a5

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed

robots/blaster.bas

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
1 REM pick a spot, run to it, shoot while moving, lead shots
2+
2 LET DX = 0
3+
3 LET DY = 0
4+
4 LET DMG = 0
5+
5 LET ODMG = 0
6+
6 LET LX = 0
7+
7 LET LY = 0
8+
8 LET DTT = 0
9+
9 LET ATT = 0
10+
10 LET RSA = 0
11+
11 let RSW = 5
12+
13+
14+
100 REM main loop
15+
110 DMG = DAMAGE
16+
120 GOSUB 2000 : REM pick spot
17+
130 GOSUB 2600 : REM get angle
18+
140 DRIVE ATT, 100
19+
150 GOSUB 2500 : REM get distance
20+
160 IF DTT < 50 THEN GOTO 200
21+
160 IF DMG <> ODMG THEN GOTO 250
22+
170 GOSUB 2700
23+
180 GOTO 150
24+
25+
200 DRIVE ATT,0
26+
210 GOTO 120
27+
28+
249 REM damage!
29+
250 LET ODMG = DMG
30+
260 GOSUB 2000 : REM pick spot
31+
270 GOSUB 2600 : REM get angle
32+
275 DRIVE ATT, 100
33+
280 GOSUB 2500 : REM get distance
34+
290 IF DTT < 100 THEN G0T0 350
35+
300 GOSUB 2700
36+
310 RETURN
37+
350 DRIVE ATT,0
38+
360 RETURN
39+
40+
2000 REM pick random DX,DY
41+
2010 LET DX = (RND 700) + 100
42+
2020 LET DY = (RND 700) + 100
43+
2030 RETURN
44+
45+
2500 REM get distance to target
46+
2510 LET LX = LOCX
47+
2515 LET LY = LOCY
48+
2520 LET TX = DX - LOCX
49+
2521 LET TY = DY - LY
50+
2530 LET DTT = SQR (TX*TX) + (TY*TY)
51+
2540 RETURN
52+
53+
2600 REM angle to target
54+
2610 LET LX = LOCX
55+
2620 LET LY = LOCY
56+
2630 LET ATT = ATN2 DY-LY, DX - LX
57+
2640 RETURN
58+
59+
2700 REM scan and shoot
60+
2710 LET SDTT = SCAN RSA,RSW
61+
2720 IF SDTT > 0 AND SDTT < 700 THEN GOTO 2800
62+
2730 LET RSA = RSA + RSW
63+
2740 RETURN
64+
65+
2800 LET DTTN = SCAN RSA,RSW
66+
2810 LET DIF = DTTN + (DTTN - SDTT)
67+
2820 CANNON RSA, DIF
68+
2830 RETURN

0 commit comments

Comments
 (0)