sd:sd-8516_user_s_guide
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| sd:sd-8516_user_s_guide [2026/03/28 14:46] – appledog | sd:sd-8516_user_s_guide [2026/04/02 07:13] (current) – appledog | ||
|---|---|---|---|
| Line 1104: | Line 1104: | ||
| 7900 RETURN | 7900 RETURN | ||
| - | And let's also add a beep every time the robots move, to add to their dread: | + | And let's also add a beep every time the robots move, to add to their dread. You can read more about the PLAY command in [[SD-8516 Stellar Basic# |
| - | 7100 PLAY "T120 O2 L8 A24" | + | 7100 PLAY " |
| If you play the game, you will notice the collision check doesn' | If you play the game, you will notice the collision check doesn' | ||
| Line 1123: | Line 1123: | ||
| === ROBOTS.BAS Complete Program | === ROBOTS.BAS Complete Program | ||
| - | Here is the complete program: | + | The source code for ROBOTS.BAS |
| - | < | + | * [[Stellar |
| - | 10 LET PX = 19 | + | * Direct link: [[https:// |
| - | 20 LET PY = 11 | + | |
| - | 30 LET RX = 1 | + | |
| - | 40 LET RY = 1 | + | |
| - | + | ||
| - | 100 REM DRAW MAP | + | |
| - | 110 GOSUB 1000 | + | |
| - | 120 REM GET PLAYER INPUT | + | |
| - | 130 GOSUB 2000 | + | |
| - | 140 REM MAKE ROBOTS MOVE | + | |
| - | 150 GOSUB 7000 | + | |
| - | 160 REM CHECK FOR COLLISION | + | |
| - | 170 IF PX = RX THEN IF PY = RY THEN GOTO 4000 | + | |
| - | 180 REM LOOP UNTIL QUIT | + | |
| - | 190 GOTO 100 | + | |
| - | + | ||
| - | 1000 REM DRAW MAP | + | |
| - | 1005 VSTOP | + | |
| - | 1010 CLS | + | |
| - | 1020 LET A = ASC("*") | + | |
| - | 1030 FOR X = 0 TO 39 | + | |
| - | 1040 CHARXY X, 0, A | + | |
| - | 1050 CHARXY X, 24, A | + | |
| - | 1060 NEXT X | + | |
| - | 1070 FOR Y = 0 TO 24 | + | |
| - | 1080 CHARXY 0, Y, A | + | |
| - | 1090 CHARXY 39, Y, A | + | |
| - | 1100 NEXT Y | + | |
| - | 1110 LET PC = ASC(" | + | |
| - | 1120 LET RC = ASC(" | + | |
| - | 1200 CHARXY PX, PY, PC | + | |
| - | 1300 CHARXY RX, RY, RC | + | |
| - | 1800 VSTART | + | |
| - | 1900 RETURN | + | |
| - | + | ||
| - | 2000 REM *** SECTION B) INPUT LOOP | + | |
| - | 2010 LET K = GETKEY() | + | |
| - | 2015 IF K >= 97 THEN LET K = K - 32 | + | |
| - | 2020 LET L = ASC(" | + | |
| - | 2030 LET D = ASC(" | + | |
| - | 2040 LET U = ASC(" | + | |
| - | 2050 LET R = ASC(" | + | |
| - | 2060 LET Q = ASC(" | + | |
| - | 2200 IF K = L THEN GOSUB 5000 : REM MOVE LEFT | + | |
| - | 2210 IF K = D THEN GOSUB 5100 : REM MOVE DOWN | + | |
| - | 2220 IF K = U THEN GOSUB 5200 : REM MOVE UP | + | |
| - | 2230 IF K = R THEN GOSUB 5300 : REM MOVE RIGHT | + | |
| - | 2240 IF K = Q THEN GOSUB 5400 : REM QUIT | + | |
| - | 2900 RETURN | + | |
| - | + | ||
| - | 4000 REM ROBOT CATCHES YOU | + | |
| - | 4010 CLS | + | |
| - | 4020 ? "OH NO! THE ROBOT CATCHES YOU." | + | |
| - | 4030 ? "GAME OVER." | + | |
| - | 4900 END | + | |
| - | + | ||
| - | 5000 REM MOVE PLAYER LEFT | + | |
| - | 5010 LET PX = PX - 1 | + | |
| - | 5020 IF PX < 1 THEN LET PX = 1 | + | |
| - | 5030 RETURN | + | |
| - | 5100 REM MOVE PLAYER DOWN | + | |
| - | 5110 LET PY = PY + 1 | + | |
| - | 5120 IF PY > 22 THEN LET PY = 22 | + | |
| - | 5130 RETURN | + | |
| - | 5200 REM MOVE PLAYER UP | + | |
| - | 5210 LET PY = PY - 1 | + | |
| - | 5220 IF PY < 1 THEN LET PY = 1 | + | |
| - | 5230 RETURN | + | |
| - | 5300 REM MOVE PLAYER RIGHT | + | |
| - | 5310 LET PX = PX + 1 | + | |
| - | 5320 IF PX > 38 THEN LET PX = 38 | + | |
| - | 5330 RETURN | + | |
| - | 5400 REM QUIT | + | |
| - | 5410 CLS | + | |
| - | 5420 PRINT "QUIT GAME" | + | |
| - | 5430 END | + | |
| - | + | ||
| - | 7000 REM MAKE ROBOT MOVE TOWARDS PLAYER | + | |
| - | 7010 IF RX < PX THEN LET RX = RX + 1 | + | |
| - | 7020 IF RX > PX THEN LET RX = RX - 1 | + | |
| - | 7030 IF RY < PY THEN LET RY = RY + 1 | + | |
| - | 7040 IF RY > PY THEN LET RY = RY - 1 | + | |
| - | 7100 PLAY "T120 O2 L8 A24" | + | |
| - | 7900 RETURN | + | |
| - | </ | + | |
| == NEXT STEPS | == NEXT STEPS | ||
sd/sd-8516_user_s_guide.1774709204.txt.gz · Last modified: by appledog
