Skip to content

Commit 423d444

Browse files
committed
- general fix for export file paths
1 parent 5451b18 commit 423d444

3 files changed

Lines changed: 12 additions & 9 deletions

File tree

DriverLevelTool/exporter/export_models.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ void SaveModelPagesMTL()
351351
for (int i = 0; i < g_levTextures.GetTPageCount(); i++)
352352
{
353353
fprintf(pMtlFile, "newmtl page_%d\r\n", i);
354-
fprintf(pMtlFile, "map_Kd ../../%s/PAGE_%d.tga\r\n", (char*)justLevFilename, i);
354+
fprintf(pMtlFile, "map_Kd ../%s/PAGE_%d.tga\r\n", (char*)justLevFilename, i);
355355
}
356356

357357
fclose(pMtlFile);

DriverLevelTool/exporter/export_regions.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,9 @@ void ExportRegions()
242242
IVirtualStream* levelStream;
243243

244244
CMemoryStream memStream;
245+
246+
String justLevFilename = File::basename(g_levname, File::extension(g_levname));
247+
String levFileNameWithoutExt = File::dirname(g_levname) + "/" + justLevFilename;
245248

246249
if(g_export_worldUnityScript)
247250
{
@@ -250,7 +253,7 @@ void ExportRegions()
250253
}
251254
else
252255
{
253-
levelFile = fopen(String::fromPrintf("%s_LEVELMODEL.obj", (char*)g_levname), "wb");
256+
levelFile = fopen(String::fromPrintf("%s_LEVELMODEL.obj", (char*)levFileNameWithoutExt), "wb");
254257
}
255258

256259
CFileStream fileStream(levelFile);
@@ -262,14 +265,12 @@ void ExportRegions()
262265
}
263266
else
264267
{
265-
String justLevFilename = File::basename(g_levname, File::extension(g_levname));
266-
267268
// use file stream directly
268269
levelStream = &fileStream;
269270
levelStream->Print("mtllib %s_LEVELMODEL.mtl\r\n", (char*)justLevFilename);
270271

271272
// create material file
272-
FILE* pMtlFile = fopen(String::fromPrintf("%s_LEVELMODEL.mtl", (char*)justLevFilename), "wb");
273+
FILE* pMtlFile = fopen(String::fromPrintf("%s_LEVELMODEL.mtl", (char*)levFileNameWithoutExt), "wb");
273274

274275
if (pMtlFile)
275276
{
@@ -288,7 +289,7 @@ void ExportRegions()
288289

289290
String levNameOnly = File::basename(g_levname, File::extension(g_levname));
290291

291-
// Open file stream
292+
// Open file stream for spooling
292293
FILE* fp = fopen(g_levname, "rb");
293294
if (fp)
294295
{

DriverLevelTool/viewer/viewer.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1073,9 +1073,6 @@ void DisplayExportUI()
10731073

10741074
if(ImGui::Button("Export world"))
10751075
{
1076-
Directory::create(g_levname_moddir);
1077-
SaveModelPagesMTL();
1078-
10791076
// idk why, but some regions are bugged while exporting
10801077
SpoolAllAreaDatas();
10811078

@@ -1085,6 +1082,11 @@ void DisplayExportUI()
10851082
g_extract_dmodels = false;
10861083
g_explode_tpages = false;
10871084

1085+
Directory::create(g_levname_moddir);
1086+
Directory::create(g_levname_texdir);
1087+
1088+
SaveModelPagesMTL();
1089+
10881090
ExportAllModels();
10891091
ExportAllTextures();
10901092
}

0 commit comments

Comments
 (0)