home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / gam / ftball.200 < prev    next >
Text File  |  2006-10-19  |  9KB  |  237 lines

  1. 1 'FTBALL.BA 11/87 FRED BROWN Club 100 Library 415-939-1246 bbs
  2. 2 CLS:CLEAR 1000:DEFINTA-Z:DEFSNGT:DIMF(38,14),T(10,10)
  3. 3 VP$=CHR$(27)+"p":VQ$=CHR$(27)+"q":SP$=SPACE$(10)
  4. 4 TM$(1)="RED ":TM$(2)="BLUE":L$(1)=">":L$(2)="<":F$="I--I"
  5. 5 QR=1:DN=1:TM=15:BA=20:SR=0:SB=0:TR=3:TB=3:TA=1
  6. 6 PRINT@170,"YOU ARE THE RED TEAM"
  7. 7 FORY=6TO14
  8. 8 IFY>6ANDY<14THENRESTORE221
  9. 9 FORX=2TO38:READF(X,Y)
  10. 10 POKE61191,X:POKE61190,Y:PRINTCHR$(F(X,Y))
  11. 11 NEXT:NEXT
  12. 12 FORI=1TO9:READOP$(I):NEXT
  13. 13 FORI=1TO8:READDP$(I):NEXT
  14. 14 FORI=1TO10:READPN$(I),P(I):NEXT
  15. 15 FORI=1TO7:FORJ=1TO6:READT(I,J):NEXT:NEXT
  16. 16 PRINT@0,"QUARTER:":PRINT@40,"BALL ON:"
  17. 17 PRINT@40,"BALL ON:":PRINT@30,"+SCORE+"
  18. 18 PRINT@13,"TIME:":PRINT@70,"RED:"
  19. 19 PRINT@80,"DOWN:":PRINT@110,"BLUE:":PRINT@93,"RED TO:"
  20. 20 PRINT@120,"TO GO:":PRINT@133,"BLUE TO:"
  21. 21 FORI=1TO4:PRINT@I*40+242,MID$(TM$(1),I,1):PRINT@I*40+276,MID$(TM$(2),I,1):NEXT
  22. 22 PO=2:DR=2:BY=10:BA=65
  23. 23 M$="OPENING KICKOFF!":GOSUB149:GOSUB151:GOSUB165
  24. 24 REM MAIN PROGRAM
  25. 25 BX=BA/100*31+5:BB=0:O=1:D=1
  26. 26 POKE61191,BX:POKE61190,BY:PRINTL$(PO):GOSUB151
  27. 27 M$=TM$(PO)+" HAS POSSESION":GOSUB149:PRINT@570,SPACE$(30);
  28. 28 TY=0:IFDN=4THENIFABS(FD-BA)<5THENIFRND(1)>.8THENTY=1:GOTO33
  29. 29 IFDN=4THENIFPO=2THEN57
  30. 30 IFTTTHENTT=0:GOTO33
  31. 31 IFPO=1THEN33
  32. 32 IFTM<2THENIFTB>0THENIF(QR=2ORQR=4)THENO=9:TT=1:GOTO64
  33. 33 ONPOGOTO34,41
  34. 34 PRINT@570,"SELECT OFFENSE ";CHR$(152);CHR$(153);
  35. 35 I$=INKEY$:IFI$=""THEN35
  36. 36 IFASC(I$)=30THENO=O-1:IFO<1THENO=9
  37. 37 IFASC(I$)=31THENO=O+1:IFO=10THENO=1
  38. 38 IFASC(I$)=13THENM$=OP$(O):GOSUB149:GOTO48
  39. 39 PRINT@570,VP$;" "+OP$(O);VQ$;SP$
  40. 40 GOTO35
  41. 41 PRINT@570,"SELECT DEFENSE ";CHR$(152);CHR$(153);
  42. 42 I$=INKEY$:IFI$=""THEN42
  43. 43 IFASC(I$)=30THEND=D-1:IFD<1THEND=7
  44. 44 IFASC(I$)=31THEND=D+1:IFD=8THEND=1
  45. 45 IFASC(I$)=13THENM$=DP$(D):GOSUB149:GOTO48
  46. 46 PRINT@570,VP$;" "+DP$(D);VQ$;SP$
  47. 47 GOTO42
  48. 48 IFO=7ORO=8THEN68
  49. 49 ONPOGOTO50,57
  50. 50 D=RND(1)*6+2
  51. 51 IFDR=1THENIFBA>80THEND=RND(1)*4+1
  52. 52 IFDR=2THENIFBA<20THEND=RND(1)*4+1
  53. 53 FORI=1TOD
  54. 54 PRINT@570,VP$;" "+DP$(I);VQ$;SP$
  55. 55 FORDU=1TO300:NEXT
  56. 56 NEXT:GOTO68
  57. 57 IFTYTHENO=RND(1)*5+1:GOTO64
  58. 58 O=RND(1)*5+2
  59. 59 IFDR=1THENIFBA>70THENO=RND(1)*5+1
  60. 60 IFDR=2THENIFBA<30THENO=RND(1)*5+1
  61. 61 IFDN=4THENO=7
  62. 62 IFDN=4THENIFDR=1THENIFBA<50THENO=8
  63. 63 IFDN=4THENIFDR=2THENIFBA>50THENO=8
  64. 64 FORI=1TOO
  65. 65 PRINT@570,VP$;" "+OP$(I);VQ$;SP$
  66. 66 FORDU=1TO300:NEXT
  67. 67 NEXT
  68. 68 PRINT@560,T(D,O)
  69. 69 IFO=9THENGOSUB199:GOTO24
  70. 70 IFRND(1)>.95THENFL=1
  71. 71 ONOGOSUB73,77,83,89,93,100,107,119
  72. 72 GOTO132
  73. 73 TS=.5
  74. 74 IFRND(1)>.99THENGOSUB127:RETURN
  75. 75 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  76. 76 BB=RND(1)*6:GOSUB125:RETURN
  77. 77 TS=.8:IFPO=2THENDC=20ELSEDC=15
  78. 78 IFRND(1)>.95THENGOSUB127:RETURN
  79. 79 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  80. 80 IFDR=1THENIFBY=12THENDC=25
  81. 81 IFDR=2THENIFBY=8THENDC=25
  82. 82 BB=RND(1)*DC-5:GOSUB125:RETURN
  83. 83 TS=.8:IFPO=2THENDC=20ELSEDC=15
  84. 84 IFRND(1)>.95THENGOSUB127:RETURN
  85. 85 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  86. 86 IFDR=1THENIFBY=8THENDC=25
  87. 87 IFDR=2THENIFBY=12THENDC=25
  88. 88 BB=RND(1)*DC-5:GOSUB125:RETURN
  89. 89 TS=.8
  90. 90 IFRND(1)>.97THENGOSUB127:RETURN
  91. 91 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  92. 92 BB=RND(1)*15-2:GOSUB125:RETURN
  93. 93 TS=.6:IFPO=2THENT1=.95ELSET1=.90
  94. 94 IFRND(1)>T1THENGOSUB130:RETURN
  95. 95 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  96. 96 BB=RND(1)*25
  97. 97 IFDR=1ANDBA+BB>110THEN126
  98. 98 IFDR=2ANDBA-BB<-10THEN126
  99. 99 M$=STR$(BB)+" YARD PASS":GOSUB149:RETURN
  100. 100 TS=.8:IFPO=2THENT2=.90ELSET2=.85
  101. 101 IFRND(1)>T2THENGOSUB130:RETURN
  102. 102 IFRND(1)>T(D,O)THENGOSUB124:RETURN
  103. 103 BB=RND(1)*80+20
  104. 104 IFDR=1THENIFBA+BB>110THEN126
  105. 105 IFDR=2THENIFBA-BB<-10THEN126
  106. 106 M$=STR$(BB)+" YARD PASS":GOSUB149:RETURN
  107. 107 TS=.5
  108. 108 IFDR=1THENDI=100-BAELSEDI=BA
  109. 109 DK=RND(1)*30+20
  110. 110 M$=STR$(DK)+" YARD KICK":GOSUB149:GOSUB145
  111. 111 IFDK>DITHEN114
  112. 112 M$="KICK IS NO GOOD":GOSUB149
  113. 113 GOSUB146:GOSUB160:DN=0:RETURN
  114. 114 M$="KICK IS GOOD!":GOSUB149
  115. 115 IFPO=1THENSR=SR+3ELSESB=SB+3
  116. 116 GOSUB151
  117. 117 IFDR=1THENBA=35ELSEBA=65
  118. 118 GOSUB165:RETURN
  119. 119 TS=.5
  120. 120 IFRND(1)>.1THEN123
  121. 121 M$="BLOCKED PUNT":GOSUB149
  122. 122 GOSUB146:GOSUB160:RETURN
  123. 123 GOSUB145:GOSUB165:DN=0:RETURN
  124. 124 M$="NO GAIN ON PLAY":GOSUB149:RETURN
  125. 125 M$="RUSH FOR "+STR$(BB)+" YARDS":GOSUB149:RETURN
  126. 126 M$="OUT OF BOUNDS":GOSUB149:BB=0:TS=TS/2:CY=0:GOTO132
  127. 127 FL=0:M$="FUMBLE!":GOSUB149
  128. 128 IFRND(1)>.5THEN129ELSEGOSUB146:GOSUB160
  129. 129 M$=TM$(PO)+" RECOVERS!":GOSUB149:CY=0:RETURN
  130. 130 FL=0:M$="INTERCEPTED!":GOSUB149:GOSUB146
  131. 131 BB=RND(1)*20:M$="RETURNED "+STR$(BB)+" YARDS":GOSUB149:RETURN
  132. 132 REM CYCLE
  133. 133 GOSUB145
  134. 134 IFFLTHENGOSUB174
  135. 135 IFCYTHENBY=RND(1)*3+4:BY=BY*2
  136. 136 IFDR=1THENBA=BA+BB
  137. 137 IFDR=2THENBA=BA-BB
  138. 138 IFBA<1ORBA>99THEN181
  139. 139 IFDR=1THENIFBA<FDTHENDN=DN+1:ELSEGOSUB160
  140. 140 IFDR=2THENIFBA>FDTHENDN=DN+1:ELSEGOSUB160
  141. 141 IFDN=5THENGOSUB180
  142. 142 TM=TM-RND(1)/2-TS*TA:IFTM<0THENGOSUB203
  143. 143 GOSUB151:CY=1:TA=1:GOTO24
  144. 144 REM SUBROUTINES
  145. 145 POKE61191,BX:POKE61190,BY:PRINTCHR$(F(BX,BY)):RETURN
  146. 146 IFPO=1THENPO=2ELSEPO=1
  147. 147 IFDR=1THENDR=2ELSEDR=1
  148. 148 RETURN
  149. 149 PRINT@170,SPACE$(30):PRINT@170,M$
  150. 150 FORDU=1TO1000:NEXT:RETURN
  151. 151 IFBA>50THENBR=100-BAELSEBR=BA
  152. 152 IFBR<0THENBR=0
  153. 153 T1=INT(TM):T2=TM-INT(TM):SN=T2*60
  154. 154 IFT1<=0THENT1=0
  155. 155 PRINT@49,VP$;BR:PRINT@9,QR
  156. 156 PRINT@19,USING"##:##";T1;SN
  157. 157 PRINT@87,USING"##";DN:PRINT@75,USING"##";SR
  158. 158 PRINT@115,USING"##";SB:PRINT@101,TR:PRINT@141,TB
  159. 159 PRINT@127,USING"##";ABS(BA-FD):PRINTVQ$:RETURN
  160. 160 M$="1st DOWN - MOVING FLAGS":GOSUB149:DN=1:FL=0
  161. 161 FORI=2TO38:POKE61191,I:POKE61190,14:PRINTCHR$(F(I,14)):NEXT
  162. 162 IFDR=1THENBF=BA:FD=BA+10
  163. 163 IFDR=2THENBF=BA-10:FD=BA-10
  164. 164 FX=BF/100*31+5:POKE61191,FX:POKE61190,14:PRINTF$:RETURN
  165. 165 POKE63277,PEEK(61983):FL=0:CY=0:BY=10
  166. 166 PRINT@170,"  >>>>>>><<<<<<<    "
  167. 167 PRINT@570,"<ENTER> FOR KICK";:INPUTDU$:PRINT@570,SPACE$(25)
  168. 168 DK=RND(1)*40+30:M$=STR$(DK)+" YARD KICK":GOSUB149
  169. 169 IFDR=1THENDI=100-BAELSEDI=BA
  170. 170 IFDR=1THENIFDK>DITHENBA=80ELSEBA=DK+BA
  171. 171 IFDR=2THENIFDK>DITHENBA=20ELSEBA=BA-DK
  172. 172 IFBA>50THENBR=100-BAELSEBR=BA
  173. 173 M$="BALL ON "+STR$(BR)+" YARD LINE":GOSUB149:GOSUB146:GOSUB160:RETURN
  174. 174 M$="FLAG ON THE FIELD":GOSUB149
  175. 175 P=RND(1)*10+1:PD=P(P):M$=PN$(P)+":"+STR$(PD):GOSUB149
  176. 176 IFDR=2THENIFBA+PD>99THENPD=PD/2:GOSUB179:GOTO176
  177. 177 IFDR=1THENIFBA-PD<1THENPD=PD/2:GOSUB179:GOTO177
  178. 178 BB=-PD:FL=0:RETURN
  179. 179 M$="HALF DISTANCE TO GOAL":GOSUB149:RETURN
  180. 180 FL=0:M$="BALL LOST ON DOWNS":GOSUB149:GOSUB146:GOSUB160:RETURN
  181. 181 S1=0:S2=0
  182. 182 IFDR=1THENIFBA>99THEN186
  183. 183 IFDR=1THENIFBA<1THEN194
  184. 184 IFDR=2THENIFBA>99THEN194
  185. 185 IFDR=2THENIFBA<1THEN186
  186. 186 M$="TOUCHDOWN!":GOSUB149
  187. 187 IFPO=1THENSR=SR+6ELSESB=SB+6
  188. 188 GOSUB151:CV=0:M$="CONVERSION ATTEMPT":GOSUB149
  189. 189 M$="ATTEMPT IS NO GOOD"
  190. 190 IFRND(1)>.4THEN193
  191. 191 M$="ATTEMPT IS GOOD"
  192. 192 IFPO=1THENSR=SR+1ELSESB=SB+1
  193. 193 GOSUB149:GOSUB151:GOTO197
  194. 194 M$="SAFETY!":GOSUB149
  195. 195 IFPO=1THENSB=SB+2ELSESR=SR+2
  196. 196 GOSUB146:GOSUB151
  197. 197 IFDR=1THENBA=35ELSEBA=65
  198. 198 GOSUB165:GOTO24
  199. 199 IFPO=1THENIFTR=0THENM$="NO TIME-OUTSLEFT":GOSUB149:RETURN
  200. 200 IFPO=2THENIFTB=0THENM$="NO TIME-OUTSLEFT":GOSUB149:RETURN
  201. 201 IFPO=1THENTR=TR-1ELSETB=TB-1
  202. 202 TA=0:RETURN
  203. 203 M$="END OF QUARTER #"+STR$(QR):GOSUB149:QR=QR+1:TM=15:GOSUB151
  204. 204 IFQR=3THEN207
  205. 205 IFQR=5THEN213
  206. 206 RETURN
  207. 207 M$="START OF SECOND HALF":GOSUB149:M$="CHANGING SIDES":GOSUB149
  208. 208 FORI=1TO4
  209. 209 PRINT@I*40+242,MID$(TM$(2),I,1)
  210. 210 PRINT@I*40+276,MID$(TM$(1),I,1)
  211. 211 NEXT
  212. 212 L$(1)="<":L$(2)=">":DR=2:PO=1:TR=3:TB=3:GOSUB165:RETURN
  213. 213 M$="THAT'S THE END OF THE GAME!":GOSUB149
  214. 214 IFSR=SBTHENM$="TIE BALL GAME":GOSUB149:GOTO217
  215. 215 IFSR>SBTHENWN=1ELSEWN=2
  216. 216 M$=TM$(WN)+" IS THE WINNER":GOSUB149
  217. 217 PRINT@570," AGAIN Y/N? ";:DU$=INPUT$(1)
  218. 218 IFDU$="Y"THEN2ELSEMENU
  219. 219 DATA 235,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231
  220. 220 DATA 231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,231,236
  221. 221 DATA 233,32,32,233,32,32,245,32,32,245,32,32,245,32,32,245,32,32,245,32,32,245,32,32
  222. 222 DATA 245,32,32,245,32,32,245,32,32,234,32,32,234
  223. 223 DATA 237,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232
  224. 224 DATA 232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,232,238
  225. 225 DATA SHORT YARDAGE,RUN LEFT,RUN RIGHT,RUN CENTER,SHORT PASS,LONG PASS,FIELD GOAL,PUNT,TIME-OUT
  226. 226 DATA GOAL LINE,SLANT LEFT,SLANT RIGHT,TRAP,BLITZ,NICKEL,ZONE,TIME-OUT
  227. 227 DATA MOTION,5,CONDUCT,15,HOLDING,10,PERSONAL FOUL,10,TRIPPING,15
  228. 228 DATA CLIPPING,15,PROCEDURE,5,DELAY,5,TOO MANYON FIELD,5,INTERFERENCE,15
  229. 229 DATA .3,.5,.5,.4,.8,.8
  230. 230 DATA .7,.7,.3,.5,.8,.7
  231. 231 DATA .7,.3,.7,.5,.8,.7
  232. 232 DATA .5,.6,.6,.3,.7,.8
  233. 233 DATA .9,.8,.8,.6,.5,.3
  234. 234 DATA .9,.7,.7,.6,.4,.5
  235. 235 DATA .9,.8,.8,.7,.3,.4
  236.  
  237.