diff --git a/src/game/g_gui.pas b/src/game/g_gui.pas
index 2f9bc08380d79cf1ba7447ce1800a727463e3ec4..7acbf0b101213d9203f4c9562aa20bf4c868523c 100644 (file)
--- a/src/game/g_gui.pas
+++ b/src/game/g_gui.pas
var
SR: TSearchRec;
i: Integer;
var
SR: TSearchRec;
i: Integer;
+ sm, sc: string;
begin
Clear();
path := IncludeTrailingPathDelimiter(path);
path := ExpandFileName(path);
begin
Clear();
path := IncludeTrailingPathDelimiter(path);
path := ExpandFileName(path);
-// Êàòàëîãè:
+ // Êàòàëîãè:
if FDirs then
begin
if FindFirst(path+'*', faDirectory, SR) = 0 then
if FDirs then
begin
if FindFirst(path+'*', faDirectory, SR) = 0 then
FindClose(SR);
end;
FindClose(SR);
end;
-// Ôàéëû:
- if FindFirst(path+FFileMask, faAnyFile, SR) = 0 then
- repeat
- AddItem(SR.Name);
- until FindNext(SR) <> 0;
- FindClose(SR);
-
- //FIXME: HACK!
- if FFileMask = '*.wad' then
+ // Ôàéëû:
+ sm := FFileMask;
+ while sm <> '' do
begin
begin
- if FindFirst(path+'*.pk3', faAnyFile, SR) = 0 then
- repeat
- AddItem(SR.Name);
- until FindNext(SR) <> 0;
+ i := Pos('|', sm);
+ if i = 0 then i := length(sm)+1;
+ sc := Copy(sm, 1, i-1);
+ Delete(sm, 1, i);
+ if FindFirst(path+sc, faAnyFile, SR) = 0 then repeat AddItem(SR.Name); until FindNext(SR) <> 0;
FindClose(SR);
end;
FindClose(SR);
end;