-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest-crunched.bas
87 lines (87 loc) · 3.1 KB
/
test-crunched.bas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
0?"TYPE A RANDOM NUMBER:":INPUTZ:Y=RND(-Z):FORZ=0TO24:?:NEXTZ:Z=0:Y=1:A=Z:T=Z:V=13:C=44:D=Z:E=Z:R=Z:X=2:I=Z:J=Z:DIMA(C):G=100:H=4:K=512:L=32:U=16:N=255:O=99:F=65535:Q=6:S=3841:B=4096:M=39:P=Y:W=Z:FORI=ZTOC:READA(I):NEXTI
1?"WELCOME TO THE BATTLE SYSTEM TEST!":?:?
2?"TWO SOLDIERS APPROACH.":?
3IFA(V*A)=ZTHEN6
4IFA=ZTHEN22
5T=Z:GOTO38
6IFA(Z)=ZTHEN85
7A=A+Y:IFA<>ZTHENT=Z
8IFA(V*A)=ZTHENA=A+Y
9IFA>XTHENA=Z
10D=Z:IFA(V*Y)=ZTHEND=D+Y
11IFA(V*X)=ZTHEND=D+Y
12IFD=XTHEN14
13GOTO3
14?"YOU ARE VICTORIOUS.":?:W=W+Y:A=Z:T=Z:IFW>=10THENGOSUB20
15FORI=YTOX:A(I*V)=A(I*V+Y):NEXTI:GOSUB75:IFR<12.5THEN?"YOU OBTAINED A POTION!"
16IFR<12.5THEN?
17IFR<12.5THENP=P+Y
18IFP>OTHENP=O
19GOTO2
20GOSUB75:IFR>=25THENRETURN
21FORI=VTOM-Y:A(I)=A(I)*1.5:NEXTI:?"THE ENEMIES HAVE POWERED UP!":?:RETURN
22?:?A(Z);"/";A(Y);"HP":?A(X);"/";A(3);"MP":?:?"(A) ATTACK":?"(M) MAGIC":?"(I) ITEMS":?"(Q) QUIT":INPUTA$:IFA$="A"ORA$="a"THEN27
23IFA$="M"ORA$="m"THEN31
24IFA$="I"ORA$="i"THEN35
25IFA$="Q"ORA$="q"THEN86
26GOTO22
27GOSUB76:IFC=ZTHEN22
28IFC>XTHEN27
29IFC<ZTHEN27
30GOTO38
31?:?"(1) LIGHTNING -";A(M);"MP":?"(2) CURE -";A(M+3);"MP":?"WHICH SPELL DO YOU WANT TO CAST?":?"TYPE (0) TO GO BACK.":INPUTC:IFC=YTHEN57
32IFC=XTHEN67
33IFC=ZTHEN22
34GOTO31
35?:?"(1) POTION -";P:?"WHICH ITEM DO YOU WISH TO USE?":?"TYPE (0) TO GO BACK.":INPUTC:IFC=YTHEN70
36IFC=ZTHEN22
37GOTO35
38C=((A(A*V+10)/H)+(A(A*V+5)))+A(A*V+7)-A(T*V+7):GOSUB75:I=A(A*V+11):GOSUB81:IFD>RTHENC=N
39I=A(T*V+11):GOSUB81:IFD>RTHENC=N
40IFR<CTHEN44
41IFT>ZTHEN?"YOUR ATTACK MISSED!"
42IFT=ZTHEN?"SOLDIER";A;"MISSED YOU!"
43?:GOTO6
44D=A(A*V+H):E=A(A*V+12):C=D+((D+E)/L)*((D*E)/L):D=((U*(K-A(T*V+Q)))*C)/(U*K):C=(A(A*V+11)+A(A*V+12)-A(T*V+12))/H:GOSUB82:IFR<=CTHEN46
45GOTO47
46D=INT(D*X)
47D=INT(D*(S+(RND(Y)*N))/B):IFD=ZTHEND=Y
48A(T*V)=A(T*V)-D:IFA(T*V)<=ZTHENA(T*V)=Z
49IFA<>ZTHEN53
50?"YOU HIT SOLDIER";T;"FOR";D;"HP.":?:IFA(T*V)<>ZTHEN52
51?"YOU DEFEATED SOLDIER";T:?
52GOTO6
53IFD>ZTHENGOSUB83
54?"SOLDIER";A;"HIT YOU FOR";D;"HP.":?:IFA(Z)<>ZTHEN56
55?"YOU DIED.":?
56GOTO6
57E=Z:D=Z:IFA(M)>A(X)THEN66
58A(X)=A(X)-A(M):GOSUB76:IFC=ZTHEN31
59IFC>XTHEN57
60IFC<ZTHEN57
61C=A(M+X)+A(A*V+12)-((A(T*V+12))/X)-Y:GOSUB75:IFR<CTHENGOSUB84
62IFR>CTHEN64
63D=(A(M+Y)*(K-A(T*V+9))*C)/(U*K)
64IFD>ZTHEN47
65?"YOUR SPELL MISSED.":?:GOTO6
66?:?"YOU DON'T HAVE ENOUGH MP TO CAST THAT SPELL.":GOTO31
67E=3:IFA(M+3)>A(X)THEN66
68A(X)=A(X)-A(M+3):GOSUB84:D=C+22*A(M+Y+E):D=INT(D*(S+(RND(Y)*N))/B):?:?"YOU HAVE BEEN HEALED FOR";D;"HP.":?:A(Z)=A(Z)+D:IFA(Z)>A(Y)THENA(Z)=A(Y)
69GOTO6
70IFP=ZTHEN?
71IFP=ZTHEN?"YOU HAVE NO POTIONS."
72IFP=ZTHEN22
73A(Z)=A(Z)+G:IFA(Z)>A(Y)THENA(Z)=A(Y)
74P=P-Y:?:?"YOU HAVE BEEN HEALED FOR 100 HP.":?:GOTO6
75R=INT(RND(Y)*G):RETURN
76?:FORI=YTOX:IFA(V*I)>ZTHEN?"(";I;")";" SOLDIER";I
77NEXTI:?"WHICH ENEMY DO YOU WANT TO TARGET?":?"(0) TO GO BACK.":INPUTC:IFC=ZTHENRETURN
78E=Z:IFA(V*C)<=ZTHENE=N
79IFE=NTHEN76
80T=C:?:RETURN
81D=I/H:RETURN
82R=((RND(Y)*F)*O/F)+Y:RETURN
83FORJ=ZTOG:NEXTJ:?CHR$(7):RETURN
84C=Q*(A(8)+A(12)):RETURN
85?:?"GAME OVER":?:FORI=ZTOY:GOSUB83:NEXTI
86?:?"YOU WON";W;"TIMES.":?:END:DATA314,314,54,54,38,96,24,1,21,17,6,14,6,30,30,0,0,6,1,4,1,1,1,50,4,2,30,30,0,0,6,1,4,1,1,1,50,4,2,4,8,100,5,5,255