for ( Archives::iterator i = archives.begin(); i != archives.end(); ++i ) {
const char* name = i->c_str();
const char* ext = strrchr( name, '.' );
- if ( !string_compare_nocase_upper( ext, "dpk" ) ) {
+ if ( !string_compare_nocase_upper( ext, ".dpk" ) ) {
CopiedString name_final = CopiedString( StringRange( name, ext ) );
fullpath = string_new_concat( path, name );
AddDpkPak( name_final.c_str(), fullpath, true );
{
const char* name = i->c_str();
const char* ext = strrchr( name, '.' );
- if ( !string_compare_nocase_upper( ext, "pk3" )
- || !string_compare_nocase_upper( ext, "pk4" ) ) {
+ if ( !string_compare_nocase_upper( ext, ".pk3" )
+ || !string_compare_nocase_upper( ext, ".pk4" ) ) {
fullpath = string_new_concat( path, i->c_str() );
InitPakFile( archiveModules, fullpath );
string_release( fullpath, string_length( fullpath ) );
{
const char* name = i->c_str();
const char* ext = strrchr( name, '.' );
- if ( !string_compare_nocase_upper( ext, "pk3" )
- || !string_compare_nocase_upper( ext, "pk4" ) ) {
+ if ( !string_compare_nocase_upper( ext, ".pk3" )
+ || !string_compare_nocase_upper( ext, ".pk4" ) ) {
fullpath = string_new_concat( path, i->c_str() );
InitPakFile( archiveModules, fullpath );
string_release( fullpath, string_length( fullpath ) );
InitDirectory( path, FileSystemQ3API_getArchiveModules() );
}
void initialise(){
+ load();
+ globalOutputStream() << "filesystem initialised\n";
+ g_observers.realise();
+}
+
+void load(){
ArchiveModules& archiveModules = FileSystemQ3API_getArchiveModules();
bool is_dpk_vfs = GetArchiveTable( archiveModules, "dpk" );
g_pakfile_paths.clear();
g_loaded_dpk_paks.clear();
}
+}
- globalOutputStream() << "filesystem initialised\n";
- g_observers.realise();
+void clear() {
+ // like shutdown() but does not unrealise (keep map etc.)
+ Shutdown();
}
+
+void refresh(){
+ // like initialise() but does not realise (keep map etc.)
+ load();
+ globalOutputStream() << "filesystem refreshed\n";
+}
+
void shutdown(){
g_observers.unrealise();
globalOutputStream() << "filesystem shutdown\n";