home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / cpmug / cpmug054.ark / CHOMP.BAS < prev    next >
Encoding:
BASIC Source File  |  1984-04-29  |  2.7 KB  |  104 lines

  1. 5   REM *** CONVERTED TO RSTS/E BY DAVID AHL, DIGITAL
  2. 100 REM ***THE GAME OF CHOMP***
  3. 105 REM ***SUBMITTED BY PEOPLES COMPUTER CENTER***
  4. 107 DIM A(10,10)
  5. 110 PRINT
  6. 120 PRINT "THIS IS THE GAME OF CHOMP (SCIENTIFIC AMERICAN, JAN 1973)"
  7. 130 PRINT "WANT THE RULES (1=YES, 0=NO!)";
  8. 140 INPUT R
  9. 150 IF R=0 THEN 340
  10. 160 F=1
  11. 170 R=5
  12. 180 C=7
  13. 190 PRINT "CHOMP IS FOR 1 OR MORE PLAYERS (HUMANS ONLY)."
  14. 200 PRINT
  15. 210 PRINT "HERE'S HOW A BOARD LOOKS (THIS ONE IS 5 BY 7):"
  16. 220 GOSUB 540
  17. 230 PRINT
  18. 240 PRINT "THE BOARD IS A BIG COOKIE - R ROWS HIGH AND C COLUMNS"
  19. 250 PRINT "WIDE. YOU INPUT R AND C AT THE START. IN THE UPPER LEFT"
  20. 260 PRINT "CORNER OF THE COOKIE IS A POISON SQUARE (P). THE ONE WHO"
  21. 270 PRINT "CHOMPS THE POISON SQUARE LOSES. TO TAKE A CHOMP, TYPE THE"
  22. 280 PRINT "ROW AND COLUMN OF ONE OF THE SQUARES ON THE COOKIE."
  23. 290 PRINT "ALL OF THE SQUARES BELOW AND TO THE RIGHT OF THAT SQUARE"
  24. 300 PRINT "(INCLUDING THAT SQUARE, TOO) DISAPPEAR -- CHOMP!!"
  25. 310 PRINT "NO FAIR CHOMPING SQUARES THAT HAVE ALREADY BEEN CHOMPED,"
  26. 320 PRINT "OR THAT ARE OUTSIDE THE ORIGINAL DIMENSIONS OF THE COOKIE."
  27. 330 PRINT
  28. 340 PRINT "HERE WE GO..."
  29. 350 FOR I=1 TO 10:FOR I1=1 TO 10:A(I,I1)=0:NEXT:NEXT
  30. 360 F=0
  31. 370 FOR I=1 TO 10
  32. 372 FOR J=1 TO 10
  33. 375 A(I,J)=0
  34. 377 NEXT J
  35. 379 NEXT I
  36. 380 PRINT
  37. 390 PRINT "HOW MANY PLAYERS";
  38. 400 INPUT P
  39. 410 I1=0
  40. 420 PRINT "HOW MANY ROWS";
  41. 430 INPUT R
  42. 440 IF R <= 9 THEN 470
  43. 450 PRINT "TOO MANY ROWS (9 IS MAXIMUM). NOW, ";
  44. 460 GOTO 420
  45. 470 PRINT "HOW MANY COLUMNS";
  46. 480 INPUT C
  47. 490 IF C <= 9 THEN 530
  48. 500 PRINT "TOO MANY COLUMNS (9 IS MAXIMUM). NOW, ";
  49. 510 GOTO 470
  50. 530 PRINT
  51. 540 FOR I=1 TO R
  52. 550 FOR J=1 TO C
  53. 560 A(I,J)=1
  54. 570 NEXT J
  55. 580 NEXT I
  56. 590 A(1,1)=-1
  57. 600 REM PRINT THE BOARD
  58. 610 PRINT
  59. 620 PRINT TAB(7);"1 2 3 4 5 6 7 8 9"
  60. 630 FOR I=1 TO R
  61. 640 PRINT I;TAB(7);
  62. 650 FOR J=1 TO C
  63. 660 IF A(I,J)=-1 THEN 700
  64. 670 IF A(I,J)=0 THEN 720
  65. 680 PRINT "* ";
  66. 690 GOTO 710
  67. 700 PRINT "P ";
  68. 710 NEXT J
  69. 720 PRINT
  70. 730 NEXT I
  71. 740 PRINT
  72. 750 IF F=0 THEN 770
  73. 760 RETURN
  74. 770 REM GET CHOMPS FOR EACH PLAYER IN TURN
  75. 780 LET I1=I1+1
  76. 790 LET P1=I1-INT(I1/P)*P
  77. 800 IF P1 <> 0 THEN 820
  78. 810 P1=P
  79. 820 PRINT "PLAYER ";P1
  80. 830 PRINT "COORDINATES OF CHOMP (ROW,COLUMN)";
  81. 840 INPUT R1,C1
  82. 850 IF R1<1 THEN 920
  83. 860 IF R1>R THEN 920
  84. 870 IF C1<1 THEN 920
  85. 880 IF C1>C THEN 920
  86. 890 IF A(R1,C1)=0 THEN 920
  87. 900 IF A(R1,C1)=-1 THEN 1010
  88. 910 GOTO 940
  89. 920 PRINT "NO FAIR. YOU'RE TRYING TO CHOMP ON EMPTY SPACE!"
  90. 930 GOTO 820
  91. 940 FOR I=R1 TO R
  92. 950 FOR J=C1 TO C
  93. 960 A(I,J)=0
  94. 970 NEXT J
  95. 980 NEXT I
  96. 990 GOTO 610
  97. 1000 REM  END OF GAME DETECTED IN LINE 900
  98. 1010 PRINT "YOU LOSE, PLAYER ";P1
  99. 1020 PRINT
  100. 1030 PRINT "AGAIN (1=YES; 0=NO!)";
  101. 1040 INPUT R
  102. 1050 IF R=1 THEN 340
  103. 1060 END
  104.