X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Ftools%2Fmapgen.dpr;h=40ac72ce915865d1cc712111c3b0021f1367c09e;hb=6c6b87eea9373ec4f1cb859223d3708d8e2a59c6;hp=1a4850593b81dcf21d215761a613be7e971bc713;hpb=95e5dc9815ded04c52a0e5fadb77580f1d6ed7c0;p=d2df-sdl.git diff --git a/src/tools/mapgen.dpr b/src/tools/mapgen.dpr index 1a48505..40ac72c 100644 --- a/src/tools/mapgen.dpr +++ b/src/tools/mapgen.dpr @@ -5,6 +5,7 @@ uses SysUtils, Classes, + mempool in '../shared/mempool.pas', xstreams in '../shared/xstreams.pas', xparser in '../shared/xparser.pas', xdynrec in '../shared/xdynrec.pas', @@ -17,7 +18,7 @@ uses // ////////////////////////////////////////////////////////////////////////// // type - THashStrFld = specialize THashBase; + THashStrFld = specialize THashBase; // ////////////////////////////////////////////////////////////////////////// // @@ -38,7 +39,7 @@ begin AssignFile(fo, fname); {$I+}Rewrite(fo);{$I-} - fldknown := THashStrFld.Create(hsihash, hsiequ); + fldknown := THashStrFld.Create(); write(fo, '// trigger cache'#10); for tidx := 0 to dfmapdef.trigTypeCount-1 do @@ -243,7 +244,7 @@ var fldknown: THashStrFld = nil; // key: palias; value: prev field knownfld: TDynField; begin - fldknown := THashStrFld.Create(hsihash, hsiequ); + fldknown := THashStrFld.Create(); //writeln(getFilenamePath(ParamStr(0)), '|'); e_InitWritelnDriver(); @@ -265,14 +266,21 @@ begin writeln('FATAL: mapdef not found!'); end; + writeln('parsing "mapdef.txt"...'); pr := TFileTextParser.Create(st, false); // don't own try dfmapdef := TDynMapDef.Create(pr); - except on e: Exception do - begin - writeln('ERROR at (', pr.tokLine, ',', pr.tokCol, '): ', e.message); - Halt(1); - end; + except + on e: TDynParseException do + begin + writeln('ERROR at (', e.tokLine, ',', e.tokCol, '): ', e.message); + Halt(1); + end; + on e: Exception do + begin + writeln('ERROR: ', e.message); + Halt(1); + end; end; pr.Free();