home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.whtech.com
/
ftp.whtech.com.tar
/
ftp.whtech.com
/
club100
/
gam
/
toxic.ba
< prev
next >
Wrap
Text File
|
2006-10-19
|
3KB
|
83 lines
0 'TOXIC.BA Unknown
1 'CLUB 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE
2 CLS:' Initialize Game
3 PRINT@0,"Initializing...":'
4 DEFINT A-Z:CLS:PRINT"Enter H for Hard, E for Easy: ";
5 C$=INKEY$:IF C$="" THEN 5
6 IF C$="h" OR C$="H" THEN EA=0
7 IF C$="e" OR C$="E" THEN EA=-1
8 DIM D$(319)
9 V=VAL(RIGHT$(TIME$,2)):FOR I=0 TO V:R=RND(1):NEXT I:H$=CHR$(147):M$=CHR$(144):S=0:MM=4
10 A$=" ":B$=" ":TT=0
11 '
12 ' Print Starting Layout
13 '
14 CLS:FOR I=34 TO 314 STEP 40:PRINT@I,CHR$(239);:NEXT I:PRINT@35,S;:PRINT@155,MM;:Y=4:X=33:H=193:PRINT@H,H$;:X1=X:Y1=Y
15 J=3:I=0:M=120:PRINT@120,M$;:J1=J:I1=I:'
16 ' Print Targets
17 '
18 FOR K=0 TO 319:D$(K)=" ":NEXT K:FOR K=1 TO 10
19 U=INT(RND(1)*32+1):V=INT(RND(1)*8):PD=U+40*V:IF D$(PD)<>" " THEN 19
20 D$(PD)=CHR$(134):PRINT@PD,D$(PD);:NEXT K:B$=INKEY$:B$=INKEY$:B$=INKEY$:B$=INKEY$:'
21 ' Move Hero
22 '
23 B$=INKEY$:IF B$="" THEN B$=A$
24 IF B$="J" THEN X=X+1:IF X>33 THEN X=0
25 IF B$="G" THEN X=X-1:IF X<0 THEN X=33
26 IF B$="H" THEN Y=Y+1:IF Y>7 THEN Y=0
27 IF B$="Y" THEN Y=Y-1:IF Y<0 THEN Y=7
28 H=X+40*Y:H1=X1+40*Y1:PRINT@H1," ";:PRINT@H,H$;:X1=X:Y1=Y:A$=B$:IF D$(H)=" " THEN 31
29 SOUND 16000,2:S=S+10:D$(H)=" ":PRINT@35,S;:TT=TT+1:IF TT=10 THEN 10 ELSE 38
30 '
31 ' Move Chaser
32 '
33 ' If "hard" then move chaser, else move every other time
34 '
35 IF NOT(EA) THEN 38
36 F=NOT(F):IF F=-1 THEN 23
37 '
38 IF X=I THEN 40
39 IF X>I THEN I=I+1 ELSE I=I-1
40 IF Y=J THEN 42
41 IF Y>J THEN J=J+1 ELSE J=J-1
42 M=I+40*J:M1=I1+40*J1:PRINT@M,M$;:PRINT@M1,D$(M1);:J1=J:I1=I:IF M<>H THEN 23
43 SOUND 8000,4:MM=MM-1:IF MM=0 THEN 47
44 PRINT@35,S;:PRINT@155,MM;:GOTO 10:'
45 ' End of Game
46 '
47 PRINT@95,"Game Over";:PRINT@155,MM:PRINT@175,"Score: ";S;:R$=INKEY$:R$=INKEY$
48 R$=INKEY$:IF R$="" THEN 48
49 GOTO 9
50 PRINT@200,"Hit (Y or N)?";STRING$(27," ")
51 I$=INKEY$:IF I$="" THEN 51
52 IF I$="Y" THEN 55
53 IF SP=2 THEN K=2:SP=3:GOTO55
54 GOTO 60
55 GOSUB73:PRINT@PR(K),H$(K,D(K)):IF BUST=0 THEN 50
56 T(K)=-1:IF SP=2 THEN K=2:SP=3:GOTO55
57 GOTO 66:'
58 ' Play Dealer's Hand
59 '
60 PRINT@43,H$(0,2):IF T(0)>17 THEN 66
61 K=0:GOSUB73:PRINT@PR(0),H$(0,D(0)):IF T(0)<17 THEN 61
62 IF BUST=1 THEN T(0)=0
63 '
64 ' Compare Player's and Dealer's Hands
65 '
66 FORK=1 TO 2:IF T(K)=0 THEN 70
67 IF T(K)>T(0) THEN R$="Player wins":S=S+B:GOTO 69
68 IF T(K)=T(0) THEN R$="Tie" ELSE R$="Player loses":S=S-B
69 PRINT@(PR(K)+5),R$
70 NEXT K:PRINT@200,STRING$(40," "):PRINT@43,H$(0,2):PRINT@240," Bankroll:";S:GOTO 11:'
71 ' Subroutine to Deal a Card, Compute Value and Total Hand
72 '
73 D(K)=D(K)+1:BUST=0:J=J+1:K$=C$(J):Z$=LEFT$(K$,1):IF Z$="A" THEN V=11:GOTO 75
74 IF Z$="T" OR Z$="J" OR Z$="Q" OR Z$="K" THEN V=10 ELSE V=VAL(Z$)
75 H$(K,D(K))=K$:H(K,D(K))=V:T(K)=T(K)+V:IF T(K)<=21 THEN 81
76 '
77 ' Check for "Soft" Hands
78 '
79 FOR I=1 TO D(K):IF H(K,I)=11 THEN H(K,I)=1:T(K)=T(K)-10:GOTO 81
80 NEXT I:BUST=1
81 PR(K)=PR(K)+3:RETURN