1 {$INCLUDE ../shared/a_modes.inc}
6 xstreams in '../shared/xstreams.pas',
7 xparser in '../shared/xparser.pas',
8 xdynrec in '../shared/xdynrec.pas',
9 utils in '../shared/utils.pas',
10 conbuf in '../shared/conbuf.pas',
11 e_log in '../engine/e_log.pas';
14 // ////////////////////////////////////////////////////////////////////////// //
24 //writeln(getFilenamePath(ParamStr(0)), '|');
26 e_InitWritelnDriver();
27 conbufDumpToStdOut := true;
28 conbufConPrefix := false;
30 writeln('parsing "mapdef.txt"...');
32 st := openDiskFileRO('mapdef.txt');
33 writeln('found: local mapdef');
38 writeln(filenameConcat(getFilenamePath(ParamStr(0)), '../mapdef/mapdef.txt'), '|');
39 st := openDiskFileRO(filenameConcat(getFilenamePath(ParamStr(0)), '../mapdef/mapdef.txt'));
40 writeln('found: system mapdef');
42 writeln('FATAL: mapdef not found!');
45 pr := TFileTextParser.Create(st, false); // don't own
47 dfmapdef := TDynMapDef.Create(pr);
48 except on e: Exception do
50 writeln('ERROR at (', pr.line, ',', pr.col, '): ', e.message);
56 writeln('writing "mapdef.inc"...');
57 AssignFile(fo, 'mapdef.inc');
59 write(fo, '// *** WARNING! ***'#10);
60 write(fo, '// regenerate this part directly from "mapdef.txt" with ''mapgen'', NEVER manually change anything here!'#10#10#10);
61 write(fo, dfmapdef.pasdef);
63 //st := openDiskFileRO('mapdef.txt');
65 write(fo, #10#10'const defaultMapDef: AnsiString = ''''+'#10' ');
69 if (st.Read(ch, 1) <> 1) then break;
70 s := formatstrf('#%d', [Byte(ch)]);
71 if (wdt+Length(s) > 78) then begin wdt := 2; write(fo, '+'#10' '); end;