home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.whtech.com
/
ftp.whtech.com.tar
/
ftp.whtech.com
/
snug
/
MASTER.TXT
< prev
next >
Wrap
Text File
|
2006-10-19
|
3KB
|
80 lines
100 REM Mastermind
110 REM By Walid Maalouli
120 REM May 1999
130 DISPLAY AT(12)BEEP,"MASTERMIND":PAUSE:RANDOMIZE
140 DIM C$(5),H$(9),P(5),P1(5),T$(9,5)
150 FOR I=1 TO 4
160 C=INTRND(6):C$(I)=CHR$(96+C)
170 NEXT I
180 CALL CHAR(0,"000e111111110e"):CALL CHAR(1,"000e1f1f1f1f0e")
190 DISPLAY BEEP,"Do you need instructions? (y/n)"
200 K$=KEY$:IF K$=""THEN 200
210 IF K$="y"THEN GOSUB 680
220 DISPLAY BEEP,"Code is set. Good luck!":PAUSE
230 T=1:CUR=T
240 PRINT T;" _ _ _ _ ____";
250 DISPLAY AT(20)BEEP,"Enter code";:L=5
260 FOR I=1 TO 4
270 ACCEPT AT(L)BEEP SIZE(1)VALIDATE("abcdef"),T$(T,I)
280 IF T$(T,I)=""THEN 270
290 L=L+2
300 NEXT I
310 L=15
320 FOR I=1 TO 4
330 IF T$(T,I)=C$(I)THEN DISPLAY AT(L)SIZE(1),CHR$(1) ELSE P(I)=0:GOTO 350
340 L=L+1:P(I)=1:S$=S$&CHR$(1)
350 NEXT I
360 IF L-1=18 THEN 540
370 FOR I=1 TO 4
380 FOR J=1 TO 4
390 IF T$(T,I)=C$(J)AND P(I)=0 AND P(J)=0 AND P1(J)=0 THEN 400 ELSE 410
400 DISPLAY AT(L)SIZE(1),CHR$(0):L=L+1:P1(J)=1:S$=S$&CHR$(0):GOTO 420
410 NEXT J
420 NEXT I
430 H$(T)=S$:S$=""
440 FOR I=1 TO 4:P(I)=0:P1(I)=0:NEXT I
450 IF T+1>9 THEN 650
460 DISPLAY AT(20)BEEP," "
470 K$=KEY$:IF K$=""THEN 470
480 IF ASC(K$)=32 AND T=CUR THEN T=T+1:CUR=T:PRINT:GOTO 240
490 IF ASC(K$)=232 AND T>1 THEN T=T-1:PRINT: ELSE 530
500 PRINT T;" ";:FOR I=1 TO 4:PRINT T$(T,I);" ";:NEXT I
510 DISPLAY AT(15)SIZE(4),"____"
520 IF H$(T)=""THEN 470 ELSE DISPLAY AT(15)BEEP SIZE(LEN(H$(T))),H$(T):GOTO 470
530 IF ASC(K$)=233 AND T<CUR THEN T=T+1:PRINT:GOTO 500 ELSE 470
540 DISPLAY AT(20)BEEP,"Good job!":PAUSE
550 DISPLAY BEEP,"Play again? (y/n)"
560 K$=KEY$:IF K$=""THEN 560
570 IF K$="n"THEN STOP
580 FOR T=1 TO 8
590 H$(T)=""
600 FOR I=1 TO 4
610 T$(T,I)=""
620 NEXT I
630 NEXT T
640 GOTO 150
650 DISPLAY AT(20)BEEP,"You lose...":PAUSE:PRINT
660 PRINT "* ";:FOR I=1 TO 4:PRINT C$(I);" ";:NEXT I
670 PRINT "* Correct Code":PAUSE:GOTO 550
680 PRINT "This is a game of":PAUSE
690 PRINT "logical deduction. The":PAUSE
700 PRINT "computer will pick a code of":PAUSE
710 PRINT "4 letters out of 6 (abcdef)":PAUSE
720 PRINT "and you have 8 attempts at":PAUSE
730 PRINT "guessing that code...":PAUSE
740 PRINT "After each attempt, the ":PAUSE
750 PRINT "computer will give you hints:":PAUSE
760 PRINT "for each CORRECT letter in ":PAUSE
770 PRINT "in the CORRECT position, a ":PAUSE
780 PRINT CHR$(1);" will be displayed. For each":PAUSE
790 PRINT "CORRECT letter in the WRONG":PAUSE
800 PRINT "position, a ";CHR$(0);" will be":PAUSE
810 PRINT "displayed. Use these hints":PAUSE
820 PRINT "to deduce the correct code...":PAUSE
830 PRINT "Press the spacebar after":PAUSE
840 PRINT "each attempt to go on to the":PAUSE
850 PRINT "next one. You can also view":PAUSE
860 PRINT "previous attempts by using the":PAUSE
870 PRINT "arrow keys.":PAUSE
880 PRINT "Enjoy!":PAUSE
890 RETURN