Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifdef OBCO_USE_DYNAMIC_MOUNT_CODE
- //TDT - Information: This is the new dynamic GCF mounting code. Basically each map can be set to be either HL2, Ep1, Ep2 or (if you're feeling daring for your mod) Portal content enabled. If you enable Ep2, you lose some functionality that HL2 has, and vice-versa.
- // as you can see. Mounting depends on a specific naming scheme for custom maps. These are ss_hl2_<map name>, ss_ep1_<mapname> and finally ss_ep2_<mapname>
- //REMEMBER ! ! ! ! To change ss_ to whatever prefix your mod uses or you WILL crash ! ! !
- //ALSO !!!!!!!!!!! Remember to change the mod folder search paths from obcoop to the name of your Mod folder. Otherwise you will have LOADS of problems on dynamically mounted maps!
- if ( !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ss_bg", 5 ))
- {
- //TDT - Information: Background maps use the static search paths for mounts. This is restrictive as to what's allowable in such maps but it's essential this not be changed due to main menu bugs.
- }
- else if ( !Q_strnicmp( gpGlobals->mapname.ToCStr(), "d1_", 3 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "d2_", 3 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "d3_", 3 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "dm_", 3 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "de_", 3 ) // Hack to make CSS defusal maps work.
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "cs_", 3 ) // Hack to make CSS hostage-rescue maps work.
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "testchmb", 8 ) //Allow portal maps to load as HL2.
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "escape", 6 ) //Allow portal maps to load as HL2.
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ss_hl2_", 7 ) ) //Mounts required for HalfLife 2/Deathmatch content.
- {
- Msg("HALFLIFE 2 CONTENT IS BEING MOUNTED! \n");
- filesystem->RemoveAllSearchPaths(); // We have to remove all search paths or the game gets confused about model vertex counts etc.
- //TDT - Information: Dedicated servers require different search paths to work.
- if (sv_dedicated.GetBool())
- {
- filesystem->AddSearchPath("../orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("../orangebox", "PLATFORM");
- filesystem->AddSearchPath("refusaltosubmit", "MOD");
- filesystem->AddSearchPath("refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("refusaltosubmit", "GAME");
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("episodic", "GAME");
- filesystem->AddSearchPath("ep2", "GAME");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(1);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(0);
- }
- else
- {
- filesystem->AddSearchPath("orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("orangebox", "PLATFORM");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "MOD");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "GAME");
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("episodic", "GAME");
- filesystem->AddSearchPath("ep2", "GAME");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(1);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(0);
- }
- }
- else if ( !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ep1_", 4 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ss_ep1_", 7 ) ) //Mounts required for Episode 1 content.
- {
- Msg("EPISODE 1 CONTENT IS BEING MOUNTED! \n");
- filesystem->RemoveAllSearchPaths(); // We have to remove all search paths or the game gets confused about model vertex counts etc.
- //TDT - Information: Dedicated servers require different search paths to work.
- if (sv_dedicated.GetBool())
- {
- filesystem->AddSearchPath("../orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("../orangebox", "PLATFORM");
- filesystem->AddSearchPath("refusaltosubmit", "MOD");
- filesystem->AddSearchPath("refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("refusaltosubmit", "GAME");
- filesystem->AddSearchPath("episodic", "GAMEBIN");
- filesystem->AddSearchPath("episodic", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-380); //Half-Life 2-Episode 1
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("ep2", "GAME");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(1);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(0);
- }
- else
- {
- filesystem->AddSearchPath("orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("orangebox", "PLATFORM");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "MOD");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "GAME");
- filesystem->AddSearchPath("episodic", "GAMEBIN");
- filesystem->AddSearchPath("episodic", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-380); //Half-Life 2-Episode 1
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("ep2", "GAME");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(1);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(0);
- }
- }
- else if ( !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ep2_", 4 )
- || !Q_strnicmp( gpGlobals->mapname.ToCStr(), "ss_ep2_", 7 )) //Mounts required for Episode 2 content.
- {
- Msg("EPISODE 2 CONTENT IS BEING MOUNTED! \n");
- filesystem->RemoveAllSearchPaths(); // We have to remove all search paths or the game gets confused about model vertex counts etc.
- //TDT - Information: Dedicated servers require different search paths to work.
- if (sv_dedicated.GetBool())
- {
- filesystem->AddSearchPath("../orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("../orangebox", "PLATFORM");
- filesystem->AddSearchPath("refusaltosubmit", "MOD");
- filesystem->AddSearchPath("refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("refusaltosubmit", "GAME");
- filesystem->AddSearchPath("ep2", "GAMEBIN");
- filesystem->AddSearchPath("ep2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-420); //Half-Life 2-Episode 2
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("episodic", "GAME");
- filesystem->MountSteamContent(-380); //Half-Life 2-Episode 1
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(1);
- sv_failsafe_mount.SetValue(0);
- }
- else
- {
- filesystem->AddSearchPath("orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("orangebox", "PLATFORM");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "MOD");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "GAME");
- filesystem->AddSearchPath("ep2", "GAMEBIN");
- filesystem->AddSearchPath("ep2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-420); //Half-Life 2-Episode 2
- filesystem->AddSearchPath("hl2", "GAMEBIN");
- filesystem->AddSearchPath("hl2", "GAME", PATH_ADD_TO_TAIL); //Add to the Tail
- filesystem->MountSteamContent(-220); //Half-Life 2
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "LOGDIR");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- filesystem->AddSearchPath("episodic", "GAME");
- filesystem->MountSteamContent(-380); //Half-Life 2-Episode 1
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- #ifdef OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- filesystem->AddSearchPath("portal", "GAME");
- filesystem->MountSteamContent(-400); //Portal*/
- Msg("PORTAL CONTENT IS BEING MOUNTED! \n");
- #endif //OBCO_ENABLE_PORTAL_CONTENT_MOUNTING
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(1);
- sv_failsafe_mount.SetValue(0);
- }
- }
- else
- {
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- filesystem->RemoveAllSearchPaths(); // We have to remove all search paths or the game gets confused about model vertex counts etc.
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- if (sv_dedicated.GetBool())
- {
- filesystem->AddSearchPath("../orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("../orangebox", "PLATFORM");
- filesystem->AddSearchPath("refusaltosubmit", "MOD");
- filesystem->AddSearchPath("refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("refusaltosubmit", "GAME");
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- filesystem->AddSearchPath("refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("refusaltosubmit", "LOGDIR");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(1);
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- }
- else
- {
- filesystem->AddSearchPath("orangebox", "EXECUTABLE_PATH");
- filesystem->AddSearchPath("orangebox", "PLATFORM");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "MOD");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit/bin", "GAMEBIN");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "GAME");
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- filesystem->AddSearchPath("hl2mp", "GAME");
- filesystem->MountSteamContent(-320); //Half-Life 2:Deathmatch
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "DEFAULT_WRITE_PATH");
- filesystem->AddSearchPath("../../../steamapps/SourceMods/refusaltosubmit", "LOGDIR");
- filesystem->MountSteamContent(-240); // Counterstrike: Source. Always mounts last - we don't want CSS stuff
- filesystem->AddSearchPath("cstrike", "GAME"); // overriding the HL2/EP1/EP2 assets, but we still want access.
- sv_hl2_mount.SetValue(0);
- sv_ep1_mount.SetValue(0);
- sv_ep2_mount.SetValue(0);
- sv_failsafe_mount.SetValue(1);
- Msg("WARNING ! FAIL-SAFE CONTENT IS BEING MOUNTED! MAP NAME NOT VALID FOR DYNAMIC GCF MOUNTING! FIX THIS OR CHANGE TO A DIFFERENT LEVEL ! \n");
- }
- }
- #endif //OBCO_USE_DYNAMIC_MOUNT_CODE
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement