home *** CD-ROM | disk | FTP | other *** search
/ RBBS in a Box Volume 1 #3.1 / RBBSIABOX31.cdr / brea / boggy.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-09-25  |  3.9 KB  |  102 lines

  1. 10  WIDTH 80:SCREEN 0,0,0:COLOR 3,0:CLS:KEY OFF
  2. 110  FOR A=1 TO 9:ON KEY(A) GOSUB 950:KEY(A) ON:NEXT
  3. 120  ON KEY(10) GOSUB 960
  4. 130  LOCATE 1,1:PRINT STRING$(80,219)
  5. 140  FOR A=2 TO 22:LOCATE A,1:PRINT CHR$(219):LOCATE A,80:PRINT CHR$(219):NEXT
  6. 150  LOCATE 23,1:PRINT STRING$(80,219);
  7. 160  LOCATE 4,30:COLOR 15,0:PRINT "B O G G Y   M A R S H"
  8. 170  LOCATE 8,23:PRINT "Would You Like Instructions? <Y/N>":COLOR 3,0
  9. 180  A$=INKEY$:IF A$="" THEN 180
  10. 190  IF A$="N" OR A$="n" THEN 290
  11. 200  IF A$<>"Y" AND A$<>"y" THEN 180
  12. 210  LOCATE 8,15:PRINT "Welcome to  Boggy  Marsh.  In this simple adventure you"
  13. 220  LOCATE 9,15:PRINT "will be trying to locate the  monsters of  Boggy  Marsh."
  14. 230  LOCATE 10,15:PRINT"For this task you will be given  10  guesses. To locate"
  15. 240  LOCATE 11,15:PRINT"the monster simply key in the  row and column of square"
  16. 250  LOCATE 12,15:PRINT"you beleive him to be in. After each guess, I will tell
  17. 260  LOCATE 13,15:PRINT"you in which  direction you need to go to find each one.
  18. 270  COLOR 15,0:LOCATE 25,27,O:PRINT" Strike Any Key To Continue ";:COLOR 3,0
  19. 280  A$=INKEY$:IF A$="" THEN 280
  20. 290  CLS:DIM R(3):DIM C(3):NUMFOUND=0:HIT=0
  21. 300  XX=1:YY=1:GOSUB 1020
  22. 310  RANDOMIZE(VAL(RIGHT$(TIME$,2)))
  23. 320  FOR I=1 TO 3
  24. 330      R(I)=FIX(RND(I)*10)
  25. 340      J=I+3
  26. 350      C(I)=FIX(RND(J)*10)
  27. 360  NEXT
  28. 370  IF (R(1)=R(2) AND C(1)=C(2)) OR (R(2)=R(3) AND C(2)=C(3)) OR (R(3)=R(1) AND C(3)=C(1)) THEN 310
  29. 380  'PRINT R(1) C(1) R(2) C(2) R(3) C(3)
  30. 390  FOR I=3 TO 21 STEP 2:FOR J=33 TO 80 STEP 5
  31. 400          LOCATE I,J,O:PRINT CHR$(219) CHR$(219) CHR$(219)
  32. 410  NEXT:NEXT
  33. 420  LOCATE 1,33:PRINT" 0    1    2    3    4    5    6    7    8    9"
  34. 430  COLOR 15,0:LOCATE 1,28:PRINT "Col"CHR$(26):LOCATE 2,24:PRINT "Row":LOCATE 3,25:PRINT CHR$(25):COLOR 3,0
  35. 440  J=-1:FOR I=3 TO 21 STEP 2:J=J+1:LOCATE I,28,0:PRINT J:NEXT
  36. 450  COLOR 15,0:LOCATE 6,2,0:PRINT"Your Guess Please":PRINT" -----------------":PRINT" Row      Col    ":COLOR 3,0
  37. 460  FOR GUESS = 1 TO 10
  38. 470  LOCATE 3,2,0:PRINT"Guesses Used" GUESS-1
  39. 480  LOCATE 8,6,0:PRINT" ":LOCATE 8,15,O:PRINT" "
  40. 490  LOCATE 8,6,1
  41. 500  DEF SEG:POKE 106,0:IF INKEY$<>"" THEN 500
  42. 510  A$=INKEY$:IF A$="" OR A$<"0" OR A$>"9" THEN 510
  43. 520  ROW=VAL(A$)
  44. 530  LOCATE 8,5,0:PRINT ROW
  45. 540  LOCATE 8,15,1
  46. 550  POKE 106,0:IF INKEY$<>"" THEN 550
  47. 560  A$=INKEY$:IF A$="" OR A$<"0" OR A$>"9" THEN 560
  48. 570  COL=VAL(A$)
  49. 580  LOCATE 8,14,0:PRINT COL
  50. 590  PR=10
  51. 600  LOCATE 11,1,O:PRINT SPACE$(24):PRINT SPACE$(24):PRINT SPACE$(24)
  52. 610  FOR I=1 TO 3
  53. 620      LOCATE PR+1,1,0
  54. 630      IF R(I)=99 THEN PRINT"You've Killed Number" I:PR=PR+1:GOTO 750
  55. 640      IF ROW=R(I) AND COL=C(I) THEN PRINT"You Just Killed Number" I:GOSUB 920:        LOCATE ERSROW,ERSCOL,0:COLOR 20,0:PRINT CHR$(26)CHR$(2)CHR$(27):                COLOR 3,0:NUMFOUND=NUMFOUND+1:R(I)=99:PR=PR+1:HIT=1:GOTO 750
  56. 650      PRINT"GO ";
  57. 660      IF ROW=R(I) AND COL<C(I) THEN PRINT"East For No" I:GOTO 740
  58. 670      IF ROW=R(I) AND COL>C(I) THEN PRINT"West For No" I:GOTO 740
  59. 680      IF COL=C(I) AND ROW<R(I) THEN PRINT"South For No" I:GOTO 740
  60. 690      IF COL=C(I) AND ROW>R(I) THEN PRINT"North For No" I:GOTO 740
  61. 700      IF ROW<R(I) AND COL<C(I) THEN PRINT"Southeast For No" I:GOTO 740
  62. 710      IF ROW<R(I) AND COL>C(I) THEN PRINT"Southwest For No" I:GOTO 740
  63. 720      IF ROW>R(I) AND COL<C(I) THEN PRINT"Northeast For No" I:GOTO 740
  64. 730      IF ROW>R(I) AND COL>C(I) THEN PRINT"Northwest For No" I:GOTO 740
  65. 740  PR=PR+1
  66. 750  NEXT I
  67. 760  IF HIT=0 THEN GOSUB 920 ELSE HIT=0
  68. 770  IF NUMFOUND=3 THEN GOSUB 1050:CLS:LOCATE 5,27,0:PRINT"Congratulations, You Win":PRINT;TAB(30);"In Only" GUESS "Guesses":GOTO 860
  69. 780  NEXT GUESS
  70. 790  REM******* TAPS
  71. 800  PLAY "T140"+"MN"+"MB"
  72. 810  PLAY "O3L8C.L16C"+"L2F.L8C.L16F"
  73. 820  PLAY "L2A.L8C.L16F"+"L4A"+"L8C."+"L16F"+"L4A"+"L8C."+"L16F"+"L2A."
  74. 830  PLAY "O3"+"L8F.L16A"+"ML"+"O4L2C"+"MN"+"O3L4AL4FL2C."
  75. 840  PLAY "O3L8C.L16C"+"ML"+"L1F"+"MN"+"L4F"
  76. 850  CLS:LOCATE 5,33,0:PRINT"Sorry, You Lost"
  77. 860  LOCATE 9,24,0:PRINT"Would You Like To Play Again? <Y/N>"
  78. 870  IF INKEY$<>"" THEN 870
  79. 880  ANS$=INKEY$:IF ANS$="" THEN 880
  80. 890  IF ANS$="Y" OR ANS$="y" THEN ERASE R,C:GOTO 290
  81. 900  IF ANS$<>"N" AND ANS$<>"n" THEN 880
  82. 910  CLS:RUN"MENU"
  83. 920  ERSROW=ROW*2+3
  84. 930  ERSCOL=COL*5+33
  85. 940  LOCATE ERSROW,ERSCOL,0:PRINT CHR$(255) CHR$(255) CHR$(255)
  86. 950  RETURN
  87. 960  XX=CSRLIN:YY=POS(0)
  88. 970  KEY(10) OFF:LOCATE 25,1:PRINT SPC(79);:COLOR 15,0:LOCATE 25,25
  89. 980  PRINT "Do You Wish To Leave This Game? <Y/N>";:COLOR 3,0
  90. 990  A$=INKEY$:IF A$="" THEN 990
  91. 1000  IF A$="Y" OR A$="y" THEN 910
  92. 1010  IF A$<>"N" AND A$<>"n" THEN 990
  93. 1020  LOCATE 25,1:PRINT SPC(79);:COLOR 0,7:LOCATE 25,27
  94. 1030  PRINT " Strike <F10> To Leave This Game ";:COLOR 3,0:LOCATE XX,YY
  95. 1040  KEY(10) ON:RETURN
  96. 1050  REM***********  HAIL BRITANIA
  97. 1060  PLAY "T100"+"MN"+"MB"
  98. 1070  PLAY "ML"+"O2"+"L4E"+"MN"+"L8E"+"MN"+"L8E"+"L8F"+"L8F"+"P8"
  99. 1080  PLAY "L8EL8F.L16EL8DL8C"+"O1L4BL4G"+"O2L4GL8FL8DL16EL16DL16EL16F"
  100. 1090  PLAY "L8EL8CL8FL32FL32EL32DL32C"+"O1L8B."+"O2L16CL4C"
  101. 1100  RETURN
  102.