////////////////////////////////////////////////////////////////////////// // // // // ////////////////////////////////////////////////////////////////////////// BOOL CFiles::AddPackFile(CFileNodeSystemFile* pcFileNodeSystemFile) { CPackFileOffset* pcPackFiles; char* szFullName; CChars szPackFileOffset; CChars* pszFullDirectory; int iLength; BOOL bResult; int iRank; pszFullDirectory = mcFileSystem.GetFullDirectoryName(); iLength = mszPackFilesExtension.Length()+1; pcPackFiles = mcPackFilesArray.Add(); new(pcPackFiles) CPackFileOffset(); szFullName = pcFileNodeSystemFile->GetFullName(); szPackFileOffset.Init(szFullName); szPackFileOffset.RemoveFromStart(pszFullDirectory->Length()+1); szPackFileOffset.RemoveFromEnd(iLength); szPackFileOffset.Replace('\\', '/'); iRank = szPackFileOffset.Count('/'); bResult = pcPackFiles->Init(szPackFileOffset.Text(), szFullName, iRank); szPackFileOffset.Kill(); return bResult; }