Source:Display Characters
Jump to navigation
Jump to search
This page is a verbatim reproduction of original source material and should not be edited except for maintenance. | |
Description |
The source code of the Eamon utility program Display Characters. |
---|---|
Source | |
Date |
Early 1980s |
Author | |
License |
The use of this item is permitted on the grounds that it's free or in the public domain. |
10 REM TO LIST PROGRAM TYPE
20 REM 'GOTO 1000'
30 REM
40 REM
50 REM EAMON IS A CREATION
60 REM OF DONALD BROWN
70 REM
80 REM DISPLAY CHARACTERS
90 REM BY MARK MAINS
100 REM
110 ONERR GOTO 500
120 TEXT : HOME
130 VTAB 11: HTAB 11: PRINT "DISPLAY CHARACTERS": VTAB 12: HTAB 13: PRINT "BY MARK MAINS"
140 DK$ = CHR$ (4):REC = 1
150 REM ONERR GOTO 160
160 PRINT DK$;"OPEN CHARACTERS,L150"
170 PRINT DK$;"READ CHARACTERS,R";REC
180 INPUT NAME$: IF NAME$ = "" THEN 490
190 INPUT HD,AG,CH
200 FOR X = 1 TO 4: INPUT SA%(X): NEXT X
210 FOR X = 1 TO 5: INPUT WA%(X): NEXT X
220 INPUT AE
230 INPUT SEX$
240 INPUT GOLD,BANK
250 INPUT AC
260 FOR X = 1 TO 4: INPUT WNAME$(X),WTYPE%(X),WOODS%(X),WDICE%(X),WSIDES%(X): NEXT X
270 PRINT DK$;"CLOSE"
271 EA = - 5 * (AC / 2 < > INT (AC / 2)): IF AC > 1 THEN EA = EA - 10: IF AC > 3 THEN EA = EA - 10: IF AC > 5 THEN EA = EA - 40
272 EA = EA + AE: IF EA > 0 THEN EA = 0
280 IF NAME$ = "" THEN 490
290 HOME : PRINT CHR$ (12);
300 PRINT "CHARACTER NAME: ";NAME$
310 PRINT " "
320 PRINT "SEX ";SEX$; SPC( 3);"GOLD ";GOLD; SPC( 3);" IN BANK ";BANK
325 PRINT " "
330 PRINT "HARDINESS ";HD;" AGILITY ";AG;" CHARISMA ";CH
335 PRINT " "
340 PRINT TAB( 13);"SPELL ABILITY"
350 PRINT "BLAST ";SA%(1);" HEAL ";SA%(2);" SPEED ";SA%(3);" POWER ";SA%(4)
360 PRINT " ": PRINT TAB( 13);"WEAPON ABILITY"
370 PRINT "AXE ";WA%(1); SPC( 9);"BOW ";WA%(2); SPC( 9);"CLUB ";WA%(3)
380 PRINT SPC( 4);"SPEAR ";WA%(4); SPC( 10);"SWORD ";WA%(5)
400 PRINT " "
410 PRINT "ARMOUR: ";: ON INT (AC / 2) + 1 GOTO 411,412,413,414
411 PRINT "SKIN";: GOTO 415
412 PRINT "LEATHER";: GOTO 415
413 PRINT "CHAIN";: GOTO 415
414 PRINT "PLATE";: GOTO 415
415 PRINT LEFT$ (" AND SHIELD",1 + 10 * (AC / 2 < > INT (AC / 2)));" AE=";AE;"%"
420 PRINT " "
425 PRINT "WEAPON INFORMATION:"
430 PRINT "NAME COMPLEXITY DAM ODDS"
440 PRINT " "
450 FOR I = 1 TO 4
452 IF WNAME$(I) = "NONE" THEN 470
460 PRINT WNAME$(I); SPC( 17 - LEN (WNAME$(I)));WODDS%(I);"%"; SPC( 6 - (WODDS%(I) < 0) - ( ABS (WOODS%(I)) > 9) - ( ABS (WODDS%(I)) > 99));WDICE%(I);"D";WSIDES%(I);
462 PRINT SPC( 3 - (WSIDES%(I) > 9));WODDS%(I) + 2 * AG + EA + WA%(WTYPE%(I));"%"
470 NEXT I
480 VTAB 24: INVERSE : PRINT "PRESS ANY KEY TO CONTINUE ";: NORMAL : GET A$: PRINT : HOME
490 REC = REC + 1: GOTO 160
500 HOME : PRINT DK$;"PR#0"
510 VTAB 12: HTAB 13: PRINT "END OF PROGRAM"
520 VTAB 22: END
1000 HOME : LIST 30,100
1010 GOSUB 2000
1020 LIST 100,170: GOSUB 2000
1030 LIST 170,280: GOSUB 2000
1040 LIST 290,380: GOSUB 2000
1050 LIST 390,520: END
2000 PRINT : INPUT "<RETURN> TO CONTINUE";MP$: HOME : RETURN