home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib24a.dsk
/
JUNE.1985
/
TYPING.GAME.bas
< prev
Wrap
BASIC Source File
|
2023-02-26
|
3KB
|
89 lines
10 REM **********************
20 REM * TYPING.GAME *
30 REM * BY GREG VAN HOLLAND*
40 REM * COPYRIGHT (C) 1985 *
50 REM * BY MICROSPARC, INC *
60 REM * CONCORD, MA 01742 *
70 REM **********************
90 REM OPENING DEMO
100 REM
110 TEXT : HOME
120 Z$ = "NIBBLE"
130 GOSUB 820
140 PRINT :Z$ = "PROUDLY PRESENTS..."
150 GOSUB 820
160 Z$ = "CHICKEN LITTLE'S TYPING GAME"
170 FOR I = 1 TO LEN(Z$)
180 FOR J = 5 TO 9
190 VTAB J -1: HTAB I: PRINT " "
200 VTAB J: HTAB I: PRINT MID$ (Z$,I,1)
210 FOR DE = 1 TO 10: NEXT
220 NEXT : NEXT
230 VTAB 22
240 PRINT "** COPYRIGHT 1985 BY MICROSPARC, INC. **": HTAB 10: PRINT "PRESS ANY KEY TO START";
250 GET Z$
260 REM ********************
270 REM * MAIN VARIABLES
280 REM ********************
290 LL = 15:DE = 100
300 PW = 3:PS = 10:NS = 5
310 Z$ = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
320 DD = DE/5
330 PT = 0:NL = 0:LE = 1
340 REM ********************
350 REM * SET SCREEN
360 REM ********************
370 HOME : INVERSE : PRINT SPC( 39)
380 FOR I = 1 TO 19: HTAB 40: PRINT " ";: NEXT
390 NORMAL : VTAB 20: HTAB 1
400 FOR J = 1 TO 40: PRINT "-";: NEXT
410 REM *******************
420 REM * MAIN PROGRAM
430 REM *******************
440 VTAB 6: HTAB 17: PRINT "LEVEL "LE
450 IF LE = 1 THEN 480
460 BN = (5 -TS) *5: PRINT : HTAB 16
470 PRINT "BONUS: "BN:PT = PT +BN
480 GOSUB 870:TS = 0: FOR I = 1 TO 2000: NEXT
490 VTAB 6: HTAB 17: PRINT SPC( 7)
500 VTAB 8: HTAB 16: PRINT SPC( 10)
510 Y = 3:X = INT( RND(1) *35) +3
520 L = INT( RND(1) * LEN(Z$)) +1
530 V$ = MID$ (Z$,L,1)
540 VTAB Y -1: HTAB X: PRINT " "
550 VTAB Y: HTAB X: PRINT V$
560 FOR I = 1 TO DE: NEXT
570 Y = Y +1: IF Y = 21 THEN 690
580 KE = PEEK( -16384): IF KE <128 THEN 540
590 KE = KE -128
600 IF KE = ASC(V$) THEN 630
610 FOR I = 1 TO 3:S = PEEK( -16336): NEXT
620 PT = PT -PW: GOSUB 870: GOTO 540
630 PT = PT +21 -Y: GOSUB 870
640 VTAB Y -1: HTAB X: PRINT " "
650 NL = NL +1: IF NL <LL THEN 510
660 LE = LE +1:NL = 0:DE = DE -DD
670 IF LE <10 THEN 390
680 GOTO 510
690 PRINT CHR$(7)
700 VTAB 20: HTAB X: PRINT " "
710 PT = PT -PS:TS = TS +1
720 GOSUB 870: IF TS < >NS THEN 650
730 VTAB 6: HTAB 16: PRINT "GAME OVER"
740 FOR I = 1 TO 2000: NEXT
750 PRINT : HTAB 4: PRINT "DO YOU WISH TO PLAY AGAIN <Y/N> ";
760 POKE -16368,0
770 GET Z$: IF Z$ < >"N" THEN 290
780 HOME : END
790 REM *******************
800 REM * SUBROUTINES
810 REM *******************
820 FOR I = 1 TO LEN(Z$)
830 FOR J = 1 TO 5
840 S = PEEK( -16336): NEXT
850 PRINT MID$ (Z$,I,1);
860 NEXT : PRINT : RETURN
870 IF PT <0 THEN PT = 0
880 VTAB 22: HTAB 16
890 PRINT "POINTS="PT; SPC( 1)
900 POKE -16368,0: RETURN