DEADSOFTWARE

sfs, wadreader: much better searching for files inside archives with extra dirs in...
[d2df-sdl.git] / src / game / g_gui.pas
index 0100e36ffcf22ff242052d5f17f5442e3fdddc88..cd9d3b93244a371f0c89cc751575f78bb0106474 100644 (file)
@@ -1,9 +1,10 @@
+{$MODE DELPHI}
 unit g_gui;
 
 interface
 
 uses
-  e_graphics, e_input, g_playermodel, g_basic, MAPSTRUCT, WADEDITOR;
+  e_graphics, e_input, g_playermodel, g_basic, MAPSTRUCT, wadreader;
 
 const
   MAINMENU_HEADER_COLOR: TRGB = (R:255; G:255; B:255);
@@ -2463,26 +2464,27 @@ end;
 
 procedure TGUIMapPreview.SetMap(Res: string);
 var
-  WAD: TWADEditor_1;
+  WAD: TWADFile;
   MapReader: TMapReader_1;
   panels: TPanelsRec1Array;
   header: TMapHeaderRec_1;
   a: Integer;
-  FileName, SectionName, ResName: string;
+  FileName: string;
   Data: Pointer;
   Len: Integer;
   rX, rY: Single;
 begin
-  g_ProcessResourceStr(Res, FileName, SectionName, ResName);
+  FileName := g_ExtractWadName(Res);
 
-  WAD := TWADEditor_1.Create();
+  WAD := TWADFile.Create();
   if not WAD.ReadFile(FileName) then
   begin
     WAD.Free();
     Exit;
   end;
 
-  if not WAD.GetResource('', ResName, Data, Len) then
+  //k8: ignores path again
+  if not WAD.GetMapResource(g_ExtractFileName(Res), Data, Len) then
   begin
     WAD.Free();
     Exit;