/////////////////////////////////////////////////////////////////////
| 1915 | |
| 1916 | ////////////////////////////////////////////////////////////////////////// |
| 1917 | bool CLevelInfo::OpenLevelPak() |
| 1918 | { |
| 1919 | LOADING_TIME_PROFILE_SECTION; |
| 1920 | ////////////////////////////////////////////////////////////////////////// |
| 1921 | //LiveCreate level reloading functionality |
| 1922 | #ifndef NO_LIVECREATE |
| 1923 | // Overwrite level.pak |
| 1924 | { |
| 1925 | const string newLevelPak = m_levelPath + string("/_level.pak"); |
| 1926 | const string curLevelPak = m_levelPath + string("/level.pak"); |
| 1927 | |
| 1928 | if (SubsituteFile(newLevelPak, curLevelPak)) |
| 1929 | { |
| 1930 | if (!gEnv->pCryPak->RemoveFile(newLevelPak.c_str())) |
| 1931 | { |
| 1932 | gEnv->pLog->LogWarning("Cleanup failed: _level.pak not removed"); |
| 1933 | } |
| 1934 | } |
| 1935 | } |
| 1936 | |
| 1937 | // Overwrite terraintextures.pak |
| 1938 | { |
| 1939 | const string newLevelPak = m_levelPath + string("/_terraintexture.pak"); |
| 1940 | const string curLevelPak = m_levelPath + string("/terraintexture.pak"); |
| 1941 | |
| 1942 | if (SubsituteFile(newLevelPak, curLevelPak)) |
| 1943 | { |
| 1944 | if (!gEnv->pCryPak->RemoveFile(newLevelPak.c_str())) |
| 1945 | { |
| 1946 | gEnv->pLog->LogWarning("Cleanup failed: terraintexture.pak not removed"); |
| 1947 | } |
| 1948 | } |
| 1949 | } |
| 1950 | |
| 1951 | #endif |
| 1952 | ////////////////////////////////////////////////////////////////////////// |
| 1953 | |
| 1954 | string levelpak = m_levelPath + string("/level.pak"); |
| 1955 | CryFixedStringT<ICryPak::g_nMaxPath> fullLevelPakPath; |
| 1956 | bool bOk = gEnv->pCryPak->OpenPack(levelpak, (unsigned)0, NULL, &fullLevelPakPath); |
| 1957 | m_levelPakFullPath.assign(fullLevelPakPath.c_str()); |
| 1958 | if (bOk) |
| 1959 | { |
| 1960 | string levelmmpak = m_levelPath + string("/levelmm.pak"); |
| 1961 | if (gEnv->pCryPak->IsFileExist(levelmmpak)) |
| 1962 | { |
| 1963 | gEnv->pCryPak->OpenPack(levelmmpak, (unsigned)0, NULL, &fullLevelPakPath); |
| 1964 | m_levelMMPakFullPath.assign(fullLevelPakPath.c_str()); |
| 1965 | } |
| 1966 | } |
| 1967 | |
| 1968 | gEnv->pCryPak->SetPacksAccessibleForLevel(GetName()); |
| 1969 | |
| 1970 | return bOk; |
| 1971 | } |
| 1972 | |
| 1973 | ////////////////////////////////////////////////////////////////////////// |
| 1974 | void CLevelInfo::CloseLevelPak() |
no test coverage detected