metaforce/DataSpec/DNAMP2/PAK.cpp

21 lines
707 B
C++

#include "PAK.hpp"
#include "AGSC.hpp"
namespace DataSpec::DNAMP2 {
std::string PAK::bestEntryName(const nod::Node& pakNode, const Entry& entry, std::string& catalogueName) const {
std::unordered_map<UniqueID32, Entry>::const_iterator search;
if (entry.type == FOURCC('AGSC') && (search = m_entries.find(entry.id)) != m_entries.cend()) {
/* Use internal AGSC name for entry */
auto rs = search->second.beginReadStream(pakNode);
AGSC::Header header;
header.read(rs);
catalogueName = header.groupName;
return fmt::format(FMT_STRING("{}_{}"), header.groupName, entry.id);
}
return DNAMP1::PAK::bestEntryName(pakNode, entry, catalogueName);
}
} // namespace DataSpec::DNAMP2