home *** CD-ROM | disk | FTP | other *** search
/ The CIA World Factbook 1992 / k3bimage.iso / sel / 04 / 0061 / wscrmb42.bas (.txt) < prev   
Encoding:
GW-BASIC  |  1991-12-02  |  3.6 KB  |  83 lines

  1. 2  REM ------------------------WORD SCRAMBLE------------------------
  2. 3  REM ----------------------FOR TWO STUDENTS-----------------------
  3. 4  REM -----------FROM COMPUTE!'S PC&PCjr MAGAZINE------------------
  4. 5  REM -----------BY MIKE SALMAN AND JEFF HAMDANI-------------------
  5. 6  REM -------------------------------------------------------------
  6. 7  REM -------------------ADAPTED 10/22/84--------------------------
  7. 8  REM -----------GARY WEST, ALLENDALE SC 29810---------------------
  8. 9  RANDOMIZE TIMER
  9. 10  KEY OFF:WIDTH 80:SCREEN 0,1
  10. 15  DEF SEG=0:POKE 1047,PEEK(1047) OR 64
  11. 20  COLOR 15,1,1:CLS
  12. 30  LOCATE 12,12:PRINT "WORD SCRAMBLE":COLOR 15
  13. 35  FOR X=1 TO 750:NEXT X
  14. 40  COLOR 7:CLS
  15. 50  LOCATE 2,1:PRINT "EACH PLAYER TAKES A TURN ENTERING A":PRINT "COMMON WORD (WITH A MAXIMUM OF TEN LETTERS)."
  16. 60  LOCATE 6,1:PRINT "THE COMPUTER WILL THEN SCRAMBLE THE":PRINT "WORD AND WILL PRINT IT.  YOU HAVE ONE":PRINT "MINUTE TO FIND IT."
  17. 70  LOCATE 11,1:PRINT "IF FOUND WITHIN THE GIVEN TIME, YOU":PRINT "WILL BE GIVEN 50 POINTS."
  18. 80  LOCATE 15,1:PRINT "FOR EVERY WRONG LETTER YOU GUESS,":PRINT "YOU WILL LOSE 10 POINTS.":LOCATE 23,7:COLOR 15:PRINT "Press the <SPACE BAR> when ready."
  19. 85  FOR X=1 TO 15:EMPTY$=INKEY$:NEXT X
  20. 90  Z$=INKEY$:IF Z$="" THEN 90
  21. 100  IF ASC(Z$)<>32 THEN 90
  22. 110  CLS:PRINT "EACH PLAYER SHOULD TYPE HIS OR HER NAME":PRINT "AND SHOULD PRESS <ENTER> AFTER EACH:"
  23. 111  COLOR 7:LOCATE 9,1:PRINT "NAME OF PLAYER #1:";:COLOR 15:INPUT " ",P$(0)
  24. 112  COLOR 7:LOCATE 12,1:PRINT "NAME OF PLAYER #2:";:COLOR 15:INPUT " ",P$(1)
  25. 113  FOR X=1 TO 250:NEXT X:CLS
  26. 120  LOCATE 12,2:COLOR 15:PRINT P$(C);:COLOR 7:PRINT ", TYPE A WORD TO BE SCRAMBLED":PRINT "AND PRESS THE <ENTER> KEY.":PRINT:COLOR 14:PRINT "(BE SURE THE OTHER PERSON ISN'T WATCHING.)":PRINT:COLOR 15
  27. 121  LOCATE  16,2:INPUT " ",W$:IF W$="" THEN 121
  28. 130  IF LEN(W$)>10 THEN LOCATE 20,7:COLOR 15:PRINT "TOO LONG; YOUR WORD MUST HAVE FEWER THAN 10 LETTERS.":FOR I=1 TO 1000:NEXT I:LOCATE 20,7:PRINT STRING$(55,32):LOCATE 16,2:PRINT STRING$(20,32):COLOR 7:GOTO 121
  29. 140  GOSUB 150:GOSUB 290:T(C)=T(C)+S(C):GOSUB 420:FOR I=1 TO 10:B$(I)="":NEXT I:GOTO 120
  30. 150  FOR I=1 TO LEN(W$)
  31. 160  A$(I)=MID$(W$,I,1)
  32. 170  NEXT I
  33. 180  C$="":FOR I=1 TO LEN(W$)
  34. 190  R=INT(LEN(W$)*RND(1))+1
  35. 200  IF B$(R)<>"" THEN 190
  36. 210  B$(R)=A$(I)
  37. 220  NEXT I
  38. 230  FOR I=1 TO LEN(W$):C$=C$+B$(I):NEXT I
  39. 240  IF C$=W$ AND LEN(W$)<>1 THEN FOR I=1 TO LEN(W$):B$(I)="":NEXT I:GOTO 180
  40. 250  CLS:LOCATE 9,7:PRINT "THE WORD HAS BEEN SCRAMBLED.":LOCATE 19,7:PRINT "Press the <SPACE BAR> when ready."
  41. 260  Z$=INKEY$:IF Z$="" THEN 260
  42. 270  IF ASC(Z$)<>32 THEN 260
  43. 275  IF C=0 THEN LOCATE 13,12:PRINT P$(1) ELSE LOCATE 13,12:PRINT P$(0)
  44. 280  CLS:IF C=0 THEN LOCATE 20,12:PRINT P$(1);", PRESS THE LETTER THAT COMES NEXT." ELSE LOCATE 20,12:PRINT P$(0);", PRESS THE LETTER THAT COMES NEXT."
  45. 281  LOCATE 6,12:PRINT CHR$(201);:FOR FF=1 TO 22:PRINT CHR$(205);:NEXT FF:PRINT CHR$(187):FOR FF=7 TO 9:LOCATE FF,12:PRINT CHR$(186):LOCATE FF,35:PRINT CHR$(186):NEXT FF:LOCATE 10,12:PRINT CHR$(200);:FOR FF=1 TO 22:PRINT CHR$(205);:NEXT FF
  46. 282  LOCATE 10,35:PRINT CHR$(188):LC=INT((40-LEN(W$))/2)-1:FOR I=1 TO LEN(W$):LOCATE 8,LC+I:PRINT B$(I);:NEXT I
  47. 283  RETURN
  48. 290  X=95:S(C)=50
  49. 300  TIME$="00:00:00"
  50. 310  FOR I=1 TO LEN(W$)
  51. 315  COLOR 14
  52. 320  LOCATE 13,LC+I:PRINT CHR$(223)
  53. 330  Z$=INKEY$
  54. 335  COLOR 15
  55. 340  LOCATE 1,15:PRINT TIME$
  56. 350  IF TIME$="00:01:00" THEN GOSUB 480:I=LEN(W$):GOTO 410
  57. 360  IF Z$="" THEN 330
  58. 365  LOCATE 22,1:PRINT STRING$(60,32)
  59. 370  IF Z$=A$(I) THEN LOCATE 12,LC+I:PRINT A$(I):GOSUB 540:GOTO 400
  60. 380  IF S(C)<10 THEN GOSUB 510:I=LEN(W$):GOTO 410
  61. 390  IF Z$<>A$(I) THEN S(C)=S(C)-10:GOSUB 550:GOTO 320
  62. 400  X=X+1
  63. 410  NEXT I:LOCATE 20,12:PRINT STRING$(50,32):FOR TIM=1 TO 750:NEXT TIM:RETURN
  64. 420  CLS:IF C<>1 THEN C=1:RETURN
  65. 430  LOCATE 3,16:PRINT "SCORES":LOCATE 4,16:PRINT "******"
  66. 440  S1=INT((20-LEN(P$(0)))/2)-1:LOCATE 6,S1:PRINT P$(0)
  67. 450  S2=INT((20-LEN(P$(1)))/2)+19:LOCATE 6,S2:PRINT P$(1)
  68. 460  LOCATE 8,S1:PRINT T(1):LOCATE 8,S2:PRINT T(0)
  69. 461  PRINT:PRINT:PRINT:COLOR 14:PRINT "WHAT DO YOU WANT TO DO NOW:":PRINT:PRINT TAB(5);"1) MORE SCRAMBLED WORDS":PRINT TAB(5);"2) STOP":PRINT:PRINT "PRESS THE NUMBER FOR YOUR CHOICE.":COLOR 15
  70. 462  GO$=INKEY$:IF GO$<>"1" AND GO$<>"2" THEN 462
  71. 463  IF GO$="1" THEN FOR X=1 TO LEN(W$):B$(X)="":NEXT X:CLS:IF C=0 THEN C=1 ELSE C=0:GOTO 120
  72. 464  IF GO$="2" THEN END
  73. 470  C=0:RETURN
  74. 480  CLS:LOCATE 9,11:PRINT "YOUR TIME IS UP."
  75. 490  LOCATE 12,11:PRINT "THE WORD WAS ";:COLOR 31:PRINT W$;:COLOR 15:PRINT".":S(C)=0
  76. 500  FOR J=1 TO 5000:NEXT J:RETURN
  77. 510  CLS:LOCATE 9,8:PRINT "YOU USED UP YOUR TRIES."
  78. 520  LOCATE 12,8:PRINT "THE WORD WAS ";:COLOR 31:PRINT W$;:COLOR 15:PRINT "."
  79. 530  FOR J=1 TO 2000:NEXT J:RETURN
  80. 540  RETURN
  81. 550  LOCATE 22,1:COLOR 15:PRINT "THAT IS NOT RIGHT.  TRY AGAIN. (YOU'VE LOST 10 POINTS.)":COLOR 14:RETURN
  82. 560  RETURN
  83.