X-Git-Url: http://git.xonotic.org/?p=xonotic%2Fnetradiant.git;a=blobdiff_plain;f=radiant%2Fmap.cpp;h=18d25c096c17784ffbef248310e271eadb90f858;hp=ed69f6326a208366916acb9295a8fe076b6b041a;hb=ff58d04be4e8fed403a791736db05c76fa3adb65;hpb=5186bc0aee4b0b577af6241a4abd34e0041cf77a diff --git a/radiant/map.cpp b/radiant/map.cpp index ed69f632..18d25c09 100644 --- a/radiant/map.cpp +++ b/radiant/map.cpp @@ -978,6 +978,10 @@ void Map_LoadFile( const char *filename ){ Map_StartPosition(); g_currentMap = &g_map; + + // restart VFS to apply new pak filtering based on mapname + // needed for daemon DPK VFS + VFS_Restart(); } class Excluder @@ -1186,6 +1190,9 @@ void Map_RenameAbsolute( const char* absolute ){ Map_UpdateTitle( g_map ); g_map.m_resource->attach( g_map ); + // refresh VFS to apply new pak filtering based on mapname + // needed for daemon DPK VFS + VFS_Refresh(); } void Map_Rename( const char* filename ){ @@ -1233,6 +1240,10 @@ void Map_New(){ FocusViews( g_vector3_identity, 0 ); g_currentMap = &g_map; + + // restart VFS to apply new pak filtering based on mapname + // needed for daemon DPK VFS + VFS_Restart(); } extern void ConstructRegionBrushes( scene::Node * brushes[6], const Vector3 ®ion_mins, const Vector3 ®ion_maxs ); @@ -1583,7 +1594,13 @@ tryDecompile: */ bool Map_SaveFile( const char* filename ){ ScopeDisableScreenUpdates disableScreenUpdates( "Processing...", "Saving Map" ); - return MapResource_saveFile( MapFormat_forFile( filename ), GlobalSceneGraph().root(), Map_Traverse, filename ); + bool success = MapResource_saveFile( MapFormat_forFile( filename ), GlobalSceneGraph().root(), Map_Traverse, filename ); + if ( success ) { + // refresh VFS to apply new pak filtering based on mapname + // needed for daemon DPK VFS + VFS_Refresh(); + } + return success; } //