Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 10 HOME
- 20 LET L = 1
- 30 LET W = 40 : LET H = 24
- 40 GOSUB 2000
- 50 DIM X(800) : DIM Y(800)
- 60 X(L) = 20 : Y(L) = 12
- 65 REM MAIN LOOP
- 70 GOSUB 3000
- 80 FOR N = 1 TO 700 : NEXT N
- 90 GOTO 70
- 999 REM READ KEYBOARD INPUT
- 1000 LET K = PEEK(49152)
- 1010 IF K = 196 THEN X(L) = X(L) + 1
- 1020 IF K = 193 THEN X(L) = X(L) - 1
- 1030 IF K = 215 THEN Y(L) = Y(L) - 1
- 1040 IF K = 211 THEN Y(L) = Y(L) + 1
- 1050 RETURN
- 1990 REM CREATE FOOD
- 2000 LET FX = INT(RND(1) * W) + 1
- 2010 LET FY = INT(RND(1) * H) + 1
- 2020 HTAB FX : VTAB FY
- 2030 PRINT "F"
- 2040 RETURN
- 2990 REM DISPLAY SNAKE
- 3000 HTAB X(1) : VTAB Y(1)
- 3010 PRINT " "
- 3020 IF L > 1 THEN GOSUB 5000
- 3030 GOSUB 1000
- 3040 IF X(L) = FX AND Y(L) = FY THEN GOSUB 4000
- 3050 IF X(L) = 0 OR X(L) > W OR Y(L) = 0 OR Y(L) > H THEN GOSUB 6000
- 3060 IF L > 1 THEN GOSUB 5500
- 3070 HTAB X(L) : VTAB Y(L)
- 3080 PRINT "S"
- 3090 RETURN
- 3990 REM GROW SNAKE
- 4000 L = L + 1
- 4010 X(L) = X(L - 1)
- 4020 Y(L) = Y(L - 1)
- 4030 GOSUB 1000
- 4040 IF L = 800 THEN GOSUB 7000
- 4050 GOSUB 2000
- 4060 RETURN
- 4990 REM SHIFT SNAKE ARRAY
- 5000 FOR I = 1 TO L - 1
- 5010 X(I) = X(I + 1)
- 5020 Y(I) = Y(I + 1)
- 5030 NEXT I
- 5040 RETURN
- 5490 REM CHECK LOSE ITSELF
- 5500 FOR I = 1 TO L - 1
- 5510 IF X(I) = X(L) AND Y(I) = Y(L) THEN GOSUB 6000
- 5520 NEXT I
- 5530 RETURN
- 5990 REM LOSE
- 6000 HTAB 15 : VTAB 12
- 6010 PRINT "YOU LOSE"
- 6020 STOP
- 6990 REM VICTORY
- 7000 HTAB 16 : VTAB 12
- 7010 PRINT "VICTORY"
- 6020 STOP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement