Combined Track Tab (D&D)

Developer(s): Tony Willing
Date: 198x
Type: Program
Platform(s): TS 1000

Content

Appears On

Assembled by Tim Ward from many sources. Contains programs 10211 – 10251.

Related Products

Related Articles

Related Content

Image Gallery

Combined Track Tab (D&D)

Source Code

   1 REM %C%O%M%B%I%N%E%D%(%T%R%A%C%K%-%T%A%B%)6/84                TRACK                    ****D £ D TRACK****               J LANE/T WILLING              MODIFIED FOR %T%I%M%E%X/             SINCLAIR BY ANTHONY             WILLING   (4/1984)              WRITE FOR INSTRUCTS             TO POB 199, VASHON,             WA., 98070  S.A.S.E.    
 100 LET R=0
 110 LET TY=1
 120 GOTO 210
 140 REM ** CONTROL **
 141 LET FL=0
 150 PRINT AT 19,1;"\##\##\##\##BEGINNING OF ROUND ";TY;"\##\##\##\##"
 160 PRINT AT 20,1;"%1=STATUS %2=DAMAGE %3=HEAL %4=REG. %5=BIND %6=DROP %7= RAND  %8=ATTACK"
 170 INPUT J
 180 IF J=0 THEN STOP 
 190 IF J>8 THEN GOTO 170
 200 GOTO (360 AND J=1)+(590 AND J=2)+(1140 AND J=3)+(880 AND J=4)+(1320 AND J=5)+(1240 AND J=6)+(1380 AND J=7)+(2000 AND J=8)
 210 REM ** BEGIN **
 215 PRINT AT 0,0;"HOW MANY CREATURES TO TRACK?"
 217 INPUT Q
 220 DIM A(Q)
 221 DIM B(Q)
 222 DIM C(Q)
 223 DIM D(Q)
 224 DIM E(Q)
 230 CLS 
 240 PRINT AT 20,1;"MONSTER NUMBER?"
 250 INPUT F
 260 IF F=0 THEN GOTO 290
 270 LET A(F)=1
 280 GOTO 230
 290 FOR F=1 TO Q
 300 IF A(F)=0 THEN GOTO 340
 310 PRINT AT 20,1;"HIT POINTS FOR ";F
 320 INPUT H
 330 LET A(F)=H
 335 LET B(F)=H
 340 NEXT F
 341 PRINT AT 20,1;"MONSTER SERIES? (Y=1/N=2)      "
 342 INPUT MS
 343 IF MS=1 THEN GOSUB 2950
 344 IF MS=2 THEN GOTO 350
 345 IF MS>2 OR MS<1 THEN GOTO 341
 350 GOTO 130
 360 REM ** DISPLAY STATUS **
 370 CLS 
 380 LET G=1
 390 LET H=0
 400 FOR F=1 TO Q
 410 IF A(F)=0 THEN GOTO 490
 420 IF G>21 THEN GOSUB 510
 430 PRINT AT G-1,H;F
 440 PRINT AT G,H;A(F)
 450 LET H=H+4
 460 IF H<28 THEN GOTO 490
 470 LET H=1
 480 LET G=G+3
 490 NEXT F
 500 GOTO 580
 510 PRINT AT 21,1;"CONTINUE PRINTOUT?"
 520 INPUT A$
 530 IF A$="N" THEN GOTO 580
 540 LET G=3
 550 LET H=1
 560 CLS 
 570 RETURN 
 580 GOTO 140
 590 GOSUB 1530
 591 REM ** DAMAGE **
 600 LET TY=TY+1
 605 PRINT AT 18,0;"% %1%0%0%0%=%A%T%T%A%C%K% %T%A%B%L%E%S% % %2%0%0%0%=%D%I%C%E% % "
 610 PRINT AT 21,1;"CHARACTER THAT TOOK DAMAGE? "
 620 INPUT F
 630 IF F=0 THEN GOTO 680
 631 LET FL=1
 632 IF F=1000 THEN GOTO 2000
 633 IF F=2000 THEN GOTO 1380
 640 PRINT AT 21,1;"AMOUNT OF DAMAGE?             "
 650 INPUT J
 660 LET A(F)=A(F)-J
 670 GOTO 610
 680 REM ** REGENERATE/ROUND **
 690 FOR F=1 TO Q
 700 IF A(F)>=0 THEN LET E(F)=0
 710 IF A(F)>=0 THEN GOTO 770
 720 IF E(F)=10 THEN GOTO 770
 730 IF E(F)=0 THEN GOTO 760
 740 LET A(F)=A(F)-1
 750 GOTO 770
 760 LET E(F)=1
 770 IF (C(F)=0 OR A(F)=B(F)) THEN GOTO 830
 780 IF (C(F)<10) AND (A(F)<B(F)) THEN GOTO 850
 790 IF D(F)=0 THEN LET D(F)=TY+3
 800 IF D(F)>TY THEN GOTO 830
 810 LET A(F)=A(F)+3
 820 IF A(F)>B(F) THEN LET A(F)=B(F)
 830 NEXT F
 840 GOTO 360
 850 LET A(F)=A(F)+C(F)
 860 IF A(F)>B(F) THEN LET A(F)=B(F)
 870 GOTO 830
 880 REM ** REGENERATE **
 890 LET R=1
 900 FOR F=1 TO Q
 902 LET B(F)=A(F)
 904 NEXT F
 910 REM ** TROLLS **
 920 GOSUB 1530
 930 PRINT AT 20,1;"FIRST TROLL NUMBER?"
 940 INPUT K
 950 IF K=0 THEN GOTO 1040
 960 PRINT AT 20,1;"LAST TROLL NUMBER? "
 970 INPUT L
 980 IF K>L THEN GOTO 1030
 990 IF A(K)<1 THEN GOTO 1010
\n1000 LET C(K)=10
\n1010 LET K=K+1
\n1020 GOTO 980
\n1030 GOTO 930
\n1040 REM ** OTHER REGENERATE **
\n1050 GOSUB 1530
\n1060 PRINT AT 20,1;"OTHER REGENERATING CREATURE?"
\n1070 INPUT F
\n1080 IF F=0 THEN GOTO 1130
\n1090 PRINT AT 20,1;"REGENERATION PER ROUND?     "
\n1100 INPUT M
\n1110 LET C(F)=M
\n1120 GOTO 1060
\n1130 GOTO 360
\n1140 REM ** HEAL **
\n1150 GOSUB 1530
\n1160 PRINT AT 20,1;"CHARACTER THAT WAS HEALED?"
\n1170 INPUT F
\n1180 IF F=0 THEN GOTO 1230
\n1190 PRINT AT 20,1;"AMOUNT OF CURE?           "
\n1200 INPUT N
\n1210 IF N=1000 THEN LET A(F)=B(F)
\n1212 IF N<>1000 THEN LET A(F)=A(F)+N
\n1220 GOTO 1160
\n1230 GOTO 360
\n1240 REM ** DROP CHARACTERS **
\n1250 GOSUB 1530
\n1260 PRINT AT 20,1;"ADD/DROP?     (1/2)            "
\n1261 INPUT AD
\n1262 IF AD<0 OR AD>2 THEN GOTO 1260
\n1263 IF AD=1 THEN GOTO 2800
\n1264 IF AD=0 THEN GOTO 360
\n1269 PRINT AT 20,1;"CHARACTER TO DROP FROM STATUS?"
\n1270 INPUT F
\n1280 IF F=0 THEN GOTO 1310
\n1290 LET A(F)=0
\n1295 LET B(F)=0
\n1300 GOTO 1260
\n1310 GOTO 360
\n1320 REM ** BIND **
\n1325 GOSUB 1530
\n1330 PRINT AT 20,1;"CHARACTER NUMBER BOUND?"
\n1332 INPUT F
\n1340 IF F=0 THEN GOTO 1370
\n1350 LET E(F)=10
\n1360 GOTO 1330
\n1370 GOTO 360
\n1380 REM ** RANDOM ROLLS **
\n1390 CLS 
\n1400 PRINT "WHAT SIDED DICE?"
\n1410 INPUT F
\n1420 IF F=0 THEN GOTO 1510
\n1430 PRINT "NUMBER OF TIMES?"
\n1440 INPUT G
\n1445 CLS 
\n1450 FOR H=1 TO G
\n1470 LET K=INT (F*RND)+1
\n1480 PRINT K
\n1490 NEXT H
\n1492 PRINT "(PRESS %E%N%T%E%R TO GO ON)"
\n1495 PAUSE 4E4
\n1500 GOTO 1390
\n1510 CLS 
\n1515 IF FL=1 THEN GOTO 610
\n1520 GOTO 360
\n1530 PRINT AT 20,1;"                               "
\n1540 PRINT AT 21,1;"                               "
\n1570 RETURN 
\n2000 REM % % % % % % % % % %A%-%T%A%B% % % % % % % % % 
\n2010 REM %B%Y% %A%N%T%H%O%N%Y% %W%I%L%L%I%N%G% %6%/%8%4
\n2030 REM 
\n2040 FAST 
\n2050 CLS 
\n2060 PRINT "%A%T%T%A%C%K% %T%A%B%L%E","    ""X"" TO END"
\n2070 PRINT "INPUT ""%CLERIC"",""%THIEF"",","""%FIGHTER"",""%MAGIC-USER"""
\n2080 GOSUB VAL "2750"
\n2090 PRINT 
\n2100 PRINT AT VAL "4",NOT PI;"  INPUT CLASS"
\n2110 INPUT C$
\n2115 IF C$(1)="X" THEN GOTO 360
\n2120 PRINT " INPUT LEVEL"
\n2130 INPUT L
\n2140 PRINT " INPUT OPPONENT A.C."
\n2145 INPUT O
\n2150 IF C$(1)="F" THEN LET S=VAL "11"-L
\n2152 IF C$(1)="F" AND L>=17 THEN LET S=VAL "-6"
\n2155 IF C$(1)="C" AND L>=1 AND L<=3 THEN LET S=VAL "10"
\n2160 IF C$(1)="C" AND L>=4 AND L<=6 THEN LET S=VAL "8"
\n2165 IF C$(1)="C" AND L>=7 AND L<=9 OR C$(1)="T" AND L>=9 AND L<=12 OR C$(1)="M" AND L>=11 AND L<=15 THEN LET S=VAL "6"
\n2170 IF C$(1)="C" AND L>=10 AND L<=12 OR C$(1)="T" AND L>=13 AND L<=16 THEN LET S=VAL "4"
\n2175 IF C$(1)="C" AND L>=13 AND L<=15 OR C$(1)="T" AND L>=17 AND L<=20 THEN LET S=VAL "2"
\n2180 IF C$(1)="C" AND L>=16 AND L<=18 OR C$(1)="T" AND L>=21 THEN LET S=NOT PI
\n2185 IF C$(1)="C" AND L>=19 THEN LET S=COS PI
\n2190 IF C$(1)="T" AND L>=1 AND L<=4 OR C$(1)="M" AND L>=1 AND L<=5 THEN LET S=VAL "11"
\n2195 IF C$(1)="T" AND L>=5 AND L<=8 OR C$(1)="M" AND L>=6 AND L<=10 THEN LET S=LEN STR$ PI
\n2200 IF C$(1)="M" AND L>=16 AND L<=20 THEN LET S=INT PI
\n2205 IF C$(1)="M" AND L>=21 THEN LET S=SGN PI
\n2210 LET Z=SGN PI
\n2215 FOR H=9 TO O STEP -1
\n2220 IF S=20 THEN LET Z=Z+SGN PI
\n2225 IF S=20 AND Z<=6 THEN LET S=19
\n2230 LET S=S+1
\n2235 NEXT H
\n2240 PRINT 
\n2245 PRINT 
\n2250 PRINT "NEED TO HIT: ";S
\n2255 PAUSE 4E4
\n2260 CLS 
\n2262 IF FL=1 THEN GOTO 610
\n2265 GOTO 2000
\n2750 PRINT AT 16,0;"MONSTERS ACT AS FIGHTERS","%<%1%-%1 0  %1%-%1 1   %1 2     %1%+%1 3","%2%-%3%+ 5  %4%-%5%+ 6  %6%-%7%+ 8  %8%-%9%+ 9","%1%0%-%1%1%+ 11   %1%2%-%1%3%+ 12 %1%4%-%1%5%+ 13","%1%6%+ 14"
\n2755 RETURN 
\n2799 REM ** ADDED MONSTERS **
\n2800 CLS 
\n2801 PRINT AT 20,1;"FIRST MONSTER NUMBER ADDED?"
\n2802 INPUT MX
\n2805 PRINT AT 20,1;"ADD MONSTER NUMBER?            "
\n2810 INPUT ADD
\n2820 IF ADD=0 THEN GOTO 2850
\n2830 LET A(ADD)=1
\n2840 GOTO 2810
\n2850 FOR V=MX TO Q
\n2860 IF A(V)=0 THEN GOTO 2897
\n2870 PRINT AT 20,1;"HIT POINTS FOR ";V;"   "
\n2880 INPUT AHP
\n2890 LET A(V)=AHP
\n2895 LET B(V)=AHP
\n2897 NEXT V
\n2900 GOTO 1260
\n2950 REM ** MONSTER SERIES **
\n2955 CLS 
\n2960 PRINT AT 20,1;"FIRST NUMBER OF SERIES?"
\n2965 INPUT FN
\n2970 PRINT AT 20,1;"LAST NUMBER OF SERIES?  "
\n2975 INPUT LN
\n2980 IF FN=0 OR LN=0 THEN GOTO 230
\n2985 IF FN>LN THEN GOTO 2950
\n2990 PRINT AT 20,1;"HIT POINTS FOR THESE MONSTERS?  "
\n2995 INPUT MP
\n3000 FOR R=FN TO LN
\n3005 LET A(R)=MP
\n3010 LET B(R)=MP
\n3015 NEXT R
\n3017 CLS 
\n3020 RETURN 
\n9000 STOP 
\n9010 SAVE "1021%1"
\n9020 RUN 
Scroll to Top