home *** CD-ROM | disk | FTP | other *** search
- REM----------------------------------------------------
- REM H A N G M A N
- REM----------------------------------------------------
-
- REM JUNE 16, 1977
-
- NUMBER.OF.WORDS=50
- 30 DIM P$(12,12), L$(20), D$(20), N$(26), U(NUMBER.OF.WORDS)
- PRINT:PRINT:PRINT
- PRINT TAB(10);"HELLO FRIENDS . . ."
- PRINT:PRINT
- PRINT TAB(10);"LET'S PLAY HANGMAN"
- PRINT TAB(10);"WHAT'S YOUR NAME ";
- INPUT NAME$
- RANDOMIZE
- PRINT
- PRINT TAB(10);"THANX, ";NAME$
- PRINT:PRINT
- FIRST.TIME.FLAG=1
- 40 C = 1
- 50 FOR I = 1 TO 20
- D$(I) = "-"
- NEXT I
- FOR I = 1 TO 26
- N$(I) = ""
- NEXT I
- M = 0
- 70 FOR I = 1 TO 12
- FOR J = 1 TO 12
- P$(I,J) = " "
- NEXT J
- NEXT I
- 80 FOR I = 1 TO 12
- P$(I,1) = "X"
- NEXT I
- 90 FOR I = 1 TO 7
- P$(1,I) = "X"
- NEXT I
- P$(2,7) = "X"
- 95 REM
- IF C<NUMBER.OF.WORDS THEN \
- GOTO 100 :\
- ELSE \
- PRINT TAB(10);"YOU DID ALL THE WORDS!!" :\
- STOP
- 100 Q = INT(NUMBER.OF.WORDS*RND+1)
- 110 REM
- IF U(Q)=1 THEN \
- GOTO 100 :\
- ELSE \
- U(Q)=1 :\
- C=C+1 :\
- RESTORE :\
- T1=0
- FOR I = 1 TO Q
- READ A$
- NEXT I
- 160 L = LEN(A$)
- FOR I = 1 TO L
- L$(I) = MID$(A$,I,1)
- NEXT I
- IF FIRST.TIME.FLAG=1 THEN \
- PRINT TAB(10);"OK. I'VE GOT A WORD." :\
- FIRST.TIME.FLAG=0 :\
- GOTO 200
- 170 PRINT "HERE ARE THE LETTERS YOU USED:"
- FOR I = 1 TO 26
- PRINT N$(I);
- IF N$(I+1) = "" THEN 200
- PRINT ",";
- NEXT I
- 200 PRINT
- PRINT
- FOR I = 1 TO L
- PRINT D$(I);
- NEXT I
- PRINT
- PRINT
- 210 INPUT "WHAT LETTER DO YOU GUESS ";G$
- G$=LEFT$(G$,1)
- R = 0
- 220 FOR I = 1 TO 26
- IF N$(I) = "" THEN 250
- IF G$ = N$(I) THEN 240
- NEXT I
- PRINT "PROGRAM ERROR. RUN AGAIN"
- STOP
- 240 PRINT "YOU GUESSED THAT LETTER BEFORE"
- GO TO 170
- 250 N$(I) = G$
- T1 = T1 + 1
- 260 FOR I = 1 TO L
- IF L$(I) = G$ THEN 280
- 270 NEXT I
- IF R = 0 THEN GOTO 290 ELSE GOTO 300
- 280 D$(I) = G$
- R = R + 1
- GO TO 270
- 290 M = M + 1
- GO TO 400
- 300 FOR I = 1 TO L
- IF D$(I) = "-" THEN 320
- 310 NEXT I
- GO TO 390
- 320 PRINT
- PRINT TAB(10);"GOOD. YOU GOT A LETTER."
- PRINT TAB(10);"NOW YOU GET TO TRY FOR THE WORD!"
- FOR I = 1 TO L
- PRINT D$(I);
- NEXT I
- PRINT
- PRINT
- 330 REM
- PRINT TAB(10);"WHAT IS YOUR GUESS FOR THE WORD ";
- INPUT B$
- IF B$="NONE" THEN \
- GOTO 170
- 340 IF B$ = A$ THEN 360
- 350 PRINT "WRONG. TRY ANOTHER LETTER."
- PRINT
- GOTO 170
- 360 PRINT "RIGHT!! IT TOOK YOU ";T1;"GUESSES!"
- 370 INPUT "WANT ANOTHER WORD ";W$
- IF LEFT$(W$,1)="Y" THEN GOTO 50
- 380 PRINT
- PRINT "IT'S BEEN FUN! BYE FOR NOW."
- STOP
- 390 PRINT "YOU FOUND THE WORD!"
- GO TO 370
- 400 PRINT
- PRINT
- PRINT "SORRY, THAT LETTER ISN'T IN THE WORD."
- 410 ON M GOTO 415,420,425,430,435,440,445,450,455,460
- 415 PRINT "FIRST, WE DRAW A HEAD"
- GO TO 470
- 420 PRINT "NOW WE DRAW A BODY"
- GO TO 470
- 425 PRINT "NEXT WE DRAW AN ARM"
- GO TO 470
- 430 PRINT "THIS TIME IT'S THE OTHER ARM"
- GO TO 470
- 435 PRINT "NOW, LET'S DRAW THE RIGHT LEG"
- GO TO 470
- 440 PRINT "THIS TIME WE DRAW THE LEFT LEG"
- GO TO 470
- 445 PRINT "NOW WE PUT UP A HAND"
- GO TO 470
- 450 PRINT "NEXT THE OTHER HAND"
- GO TO 470
- 455 PRINT "NOW WE DRAW ONE FOOT"
- GO TO 470
- 460 PRINT "HERE'S THE OTHER FOOT -- YOU'RE HUNG!!"
- 470 ON M GO TO 480,490,500,510,520,530,540,550,560,570
- 480 P$(3,6) = "-"
- P$(3,7) = "-"
- P$(3,8) = "-"
- P$(4,5) = "("
- P$(4,6) = "."
- P$(4,8) = "."
- P$(4,9) = ")"
- P$(5,6) = "-"
- P$(5,7) = "-"
- P$(5,8) = "-"
- GO TO 580
- 490 FOR I = 6 TO 9
- P$(I,7) = "X"
- NEXT I
- GO TO 580
- 500 FOR I = 4 TO 7
- P$(I,I-1) = "\"
- NEXT I
- GO TO 580
- 510 P$(4,11) = "/"
- P$(5,10) = "/"
- P$(6,9) = "/"
- P$(7,8) = "/"
- GO TO 580
- 520 P$(10,6) = "/"
- P$(11,5) = "/"
- GO TO 580
- 530 P$(10,8) = "\"
- P$(11,9) = "\"
- GO TO 580
- 540 P$(3,11) = "\"
- GO TO 580
- 550 P$(3,3) = "/"
- GO TO 580
- 560 P$(12,10) = "\"
- P$(12,11) = "-"
- GO TO 580
- 570 P$(12,3) = "-"
- P$(12,4) = "/"
- 580 FOR I = 1 TO 12
- FOR J = 1 TO 12
- PRINT P$(I,J);
- NEXT J
- PRINT
- NEXT I
- PRINT
- PRINT
- IF M = 10 THEN GOTO 600 ELSE GOTO 170
- 600 PRINT "SORRY, YOU LOSE. THE WORD WAS ";A$
- 610 PRINT "YOU MISSED THAT ONE. DO YOU ";
- GO TO 370
- REM
- DATA "GUM","SIN","FOR","CRY","LUG","BYE","FLY"
- DATA "UGLY","EACH","FROM","WORK","TALK","WITH","SELF"
- DATA "PIZZA","THING","FEIGN","FIEND","ELBOW","FAULT","DIRTY"
- DATA "BUDGET","SPIRIT","QUAINT","MAIDEN","ESCORT","PICKAX"
- DATA "EXAMPLE","TENSION","QUININE","KIDNEY","REPLICA","SLEEPER"
- DATA "TRIANGLE","KANGAROO","MAHOGANY","SERGEANT","SEQUENCE"
- DATA "MOUSTACHE","DANGEROUS","SCIENTIST","DIFFERENT","QUIESCENT"
- DATA "MAGISTRATE","ERRONEOUSLY","LOUDSPEAKER","PHYTOTOXIC"
- DATA "MATRIMONIAL","PARASYMPATHOMIMETIC","THIGMOTROPISM"
- END
-