User Tools

Site Tools


sd:sd-8516_user_s_guide

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sd:sd-8516_user_s_guide [2026/03/28 14:56] appledogsd:sd-8516_user_s_guide [2026/04/02 07:13] (current) appledog
Line 1123: Line 1123:
  
 === ROBOTS.BAS Complete Program === ROBOTS.BAS Complete Program
-Here is the complete program:+The source code for ROBOTS.BAS is listed on the BASIC Programs page:
  
-<codify BASIC> +* [[Stellar BASIC Programs]] 
-10 LET PX = 19 +Direct link[[https://www.appledog.ca/wiki/doku.php?id=sdb:robots|ROBOTS.BAS source code]]
-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("r"+
-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("H"+
-2030 LET D = ASC("J"+
-2040 LET U = ASC("K"+
-2050 LET R = ASC("L"+
-2060 LET Q = ASC("Q"+
-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 +
-</codify>+
  
 == NEXT STEPS == NEXT STEPS
sd/sd-8516_user_s_guide.1774709764.txt.gz · Last modified: by appledog

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki