-
Notifications
You must be signed in to change notification settings - Fork 1
/
PRINT.PAS
132 lines (123 loc) · 3.3 KB
/
PRINT.PAS
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
Program PrintLists (Input, Output);
Label
990;
%Include 'Milio'
%Include 'Milobj'
%Include 'Milmon'
Var
I, J: Integer;
Mon : MonsterPoint;
Obj : ObjectPoint;
S, T: String;
X1, X2: Packed Array [1 .. 11] of Char;
Begin
%Include 'Milio1'
%Include 'Milobj1'
%Include 'Milmon1'
Time (X1);
Date (X2);
T := X1 + ' ' + X2 + ' |';
I := 1;
Term [1] := Chr (0);
Term [2] := Chr (0);
Reset (MList);
New (Mon);
WriteLn (
'---------------------------------------------------------------------------');
S := '| Milieu Random Monster Lists';
WriteLn (S, '': 75 - Length (S) - Length (T), T);
WriteLn (
'---------------------------------------------------------------------------');
While Not Eof (MList) Do
Begin
Find (MList, I);
If Not Eof (MList)
Then
Begin
WriteLn;
WriteLn ('MList record #', I: 3, ' ****************************');
WriteLn;
Mon ^ := MList ^;
MonDisplay (Mon);
I := I + 1
End (*If*)
End (*While*);
WriteLn ('Total of ', I - 1: 0, ' records.');
Page;
WriteLn ('Random monster list:');
For I := 1 to LEncounter Do
Begin
WriteLn ('Monster index list ', I: 0, ':');
For J := 1 to 6 Do
Begin
Loc := EncIndex [I, J];
Write (' ', Loc: 3, ': ');
If Loc > 0
Then
Begin
Find (MList, EncIndex [I, J]);
Mon ^ := MList ^;
Write ('A');
If Cap (Mon ^.Name [1]) in ['A', 'E', 'I', 'O', 'U']
Then
Write ('n');
Write (' ', PS (Mon ^.Name))
End (*If*)
Else
Write ('No encounter.');
WriteLn
End (*For*);
WriteLn
End (*For*);
Dispose (Mon);
Page;
WriteLn (
'---------------------------------------------------------------------------');
S := '| Milieu Random Object List ';
WriteLn (S, '': 75 - Length (S) - Length (T), T);
WriteLn (
'---------------------------------------------------------------------------');
Reset (OList);
I := 1;
New (Obj);
While Not Eof (OList) Do
Begin
Find (OList, I);
If Not Eof (OList)
Then
Begin
WriteLn;
WriteLn ('OList record #', I: 3, ' ****************************');
WriteLn;
Obj ^ := OList ^;
ObjDisplay (Obj);
I := I + 1
End (*If*)
End (*While*);
WriteLn;
WriteLn ('Total of ', I - 1: 0, ' records.');
Page;
WriteLn ('Random treasure list:');
For I := 1 to ObjListLen Do
Begin
WriteLn ('Treasure type ', I: 0, ':');
For J := 1 to 6 Do
Begin
Loc := ObjIndex [I, J];
Write (' ', Loc: 3, ': ');
If Loc > 0
Then
Begin
Find (OList, ObjIndex [I, J]);
PrintObj (OList ^, False, True)
End (*If*)
Else
Write ('Nothing.');
WriteLn
End (*For*)
End (*For*);
%Include 'Milio2'
%Include 'Milobj2'
%Include 'Milmon2'
990:
End.