home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / games / witchhr.zip / WITCH-HR.BAS
BASIC Source File  |  1985-11-24  |  4KB  |  96 lines

  1. 10 GOSUB 530:GOTO 280
  2. 20 H=0:K=0:FOR A=7 TO 35:GOSUB 60:NEXT
  3. 30 GOSUB 170:IF H<1 THEN 250
  4. 40 H=0:K=0:A=T:GOSUB 60:IF H<1 THEN 250
  5. 50 GOTO 30
  6. 60 IF B(A)=0 OR B(A)=-S OR B(A)=2 THEN RETURN
  7. 70 FOR B=0 TO D(A-7):C=A+M(B):IF B(C)=S OR B(C)=2 THEN 160
  8. 80 IF B(C) THEN 120
  9. 90 SC=RND(1)*.9:IF H<SC THEN H=SC:F=A:T=C
  10. 100 IF CK=1 AND T1=C THEN L=1:B=7
  11. 110 GOTO 160
  12. 120 IF B(C+M(B)) THEN 160
  13. 130 SC=1+RND(1)*.9:IF H<SC THEN H=SC:F=A:T=C+M(B):K=C
  14. 140 IF CK=0 THEN 160
  15. 150 IF T1=C+M(B) THEN L=1:K1=C:B=7
  16. 160 NEXT:RETURN
  17. 170 B(T)=B(F):B(F)=0:A=F:GOSUB 760
  18. 180 IF K THEN B(K)=0:A=K:GOSUB 760
  19. 190 A=T:GOTO 760
  20. 200 GOSUB 520:IF S=1 THEN PRINT"The witches win!":GOTO 220
  21. 210 PRINT"The ghosts win!"
  22. 220 LOCATE 23,10:PRINT"Hit a key to play again"
  23. 230 K$=INKEY$:IF K$="" THEN 230
  24. 240 RUN
  25. 250 S=-S:H=0:A=7
  26. 260 IF A=36 THEN 200
  27. 270 GOSUB 60:IF H=0 THEN A=A+1:GOTO 260
  28. 280 D=0:GOSUB 520:IF S=1 THEN PRINT"Ghost's turn":GOTO 300
  29. 290 PRINT"Witch's turn"
  30. 300 PRINT TAB(16)"From:";
  31. 310 E=E+1:K$=INKEY$:IF K$="" THEN 310
  32. 320 IF ASC(K$)=13 THEN GOSUB 520:RANDOMIZE E:GOTO 20
  33. 330 IF ASC(K$)<97 OR ASC(K$)>121 THEN 310
  34. 340 PRINT K$:A=N(ASC(K$)-97):Z=A
  35. 350 LOCATE 23,18:PRINT"To:";
  36. 360 K$=INKEY$:IF K$="" THEN 360
  37. 370 IF ASC(K$)<97 OR ASC(K$)>121 THEN 360
  38. 380 PRINT K$:T1=N(ASC(K$)-97)
  39. 390 CK=1:L=0:K1=0:GOSUB 60:CK=0
  40. 400 H=0:A=7
  41. 410 IF A=36 THEN 440
  42. 420 GOSUB 60:IF H>=1 THEN 440
  43. 430 A=A+1:IF A<36 THEN 420
  44. 440 IF D THEN 470
  45. 450 IF L THEN 480
  46. 460 SOUND 99,5:GOTO 280
  47. 470 IF L=0 OR K1=0 THEN SOUND 99,5:GOTO 510
  48. 480 IF K1=0 AND H>=1 THEN 460
  49. 490 F=Z:T=T1:K=K1:GOSUB 170:IF K1=0 THEN 250
  50. 500 A=T:Z=A:H=0:GOSUB 60:IF H<1 THEN 250
  51. 510 GOSUB 520:D=1:GOTO 350
  52. 520 LOCATE 20,1:FOR B=1 TO 3:PRINT:PRINT"                              ";:NEXT:LOCATE 21,14:RETURN
  53. 530 KEY OFF:SCREEN 1:COLOR 0,1:CLS:DEFINT C,W
  54. 540 DIM C1(98),W1(98),SQ(98),B(42),D(28),X(35),Y(35),L(35),XL(35),YL(35),N(28)
  55. 550 LINE (50,80)-(81,103),1,B
  56. 560 LOCATE 12,12: PRINT "The Witching Hour
  57. 570 LINE (230,80)-(261,103),1,B
  58. 580 GET (50,80)-(81,103),SQ
  59. 590 FOR A=0 TO 52:READ C1(A):NEXT
  60. 600 PUT (56,82),C1
  61. 610 GET (50,80)-(81,103),C1
  62. 620 FOR A=0 TO 69:READ W1(A):NEXT
  63. 630 PUT (232,82),W1
  64. 640 GET (230,80)-(261,103),W1
  65. 650 S=-1:FOR A=0 TO 7:READ M(A):NEXT
  66. 660 FOR A=0 TO 28:READ D(A):NEXT
  67. 670 B=48:C=32:D=59:E=12
  68. 680 FOR A=0 TO 4:FOR F=0 TO 4:H=6*A+F+7:X(H)=B*F+D-15:Y(H)=C*A+E-11
  69. 690 L(H)=G+97:N(G)=H:G=G+1:XL(H)=6*F+10:YL(H)=4*A+1:NEXT:NEXT
  70. 700 CLS:FOR A=0 TO 4:LINE (D,C*A+E)-(B*4+D,C*A+E),2:NEXT
  71. 710 FOR A=0 TO 4:LINE (B*A+D,E)-(B*A+D,C*4+E),2:NEXT
  72. 720 A=0:F=0:GOSUB 740:A=B+B:GOSUB 740:F=C+C:GOSUB 740:A=0:GOSUB 740
  73. 730 FOR A=0 TO 42:READ B(A):GOSUB 760:NEXT:RETURN
  74. 740 LINE (D+A,E+F)-(2*B+D+A,2*C+E+F),2
  75. 750 LINE (D+A,2*C+E+F)-(2*B+D+A,E+F),2:RETURN
  76. 760 IF B(A)=2 THEN RETURN
  77. 770 IF B(A)<0 THEN PUT (X(A),Y(A)),W1,PSET
  78. 780 IF B(A)=0 THEN PUT (X(A),Y(A)),SQ,PSET
  79. 790 IF B(A)>0 THEN PUT (X(A),Y(A)),C1,PSET
  80. 800 LOCATE YL(A),XL(A):PRINT CHR$(L(A)):RETURN
  81. 810 DATA 36,20,-256,192,0,-961,0,16128,255,0,-1,192,-3328,-16177,0,-1,192
  82. 820 DATA 16128,255,0,-1009,-16381,1020,16368,-16,-1,-3841,-1,-769,-16336,-193
  83. 830 DATA 192,16128,-3841,0,-241,252,768,-769,0,16128,252,0,-4033,0,16128,192,0
  84. 840 DATA -4081,0,0,255,0
  85. 850 DATA 52,20,48,0,3,15360,240,768,0,-241,252,-16381,768,-1,960,192,-256
  86. 860 DATA -769,-4081,0,-241,16383,255,3840,4095,12543,0,-1009,-1,192,768,-61
  87. 870 DATA 207,0,3840,-16129,0,0,-12289,192,0,-253,-16369,0,768,-15361,240
  88. 880 DATA -32768,-253,15600,0,168,-193,-16369,-22016,-81,-21761,-24406,16296
  89. 890 DATA -1,0,-32768,-241,252,0,3840,-3841,0,0,-16372
  90. 900 DATA -6,1,6,-1,-5,7,5,-7
  91. 910 DATA 7,3,7,3,7,0,3,7,3,7,3,0
  92. 920 DATA 7,3,7,3,7,0,3,7,3,7,3,0,7,3,7,3,7
  93. 930 DATA 2,2,2,2,2,2,2,-1,-1,-1,-1,-1,2
  94. 940 DATA -1,-1,-1,-1,-1,2,-1,-1,0,1,1,2
  95. 950 DATA 1,1,1,1,1,2,1,1,1,1,1,2,2,2,2,2,2,2
  96.