Add dumping of t6 physpreset, tracer and zbarrier in their respective infostring files

This commit is contained in:
Jan
2020-10-24 13:46:37 +02:00
parent 71c291ade2
commit 6cca00b8d8
10 changed files with 547 additions and 12 deletions

View File

@ -113,8 +113,7 @@ void InfoStringFromStructConverter::FillFromBaseField(const cspField_t& field)
case CSPFT_TRACER:
{
const auto* tracer = *reinterpret_cast<TracerDef**>(reinterpret_cast<uintptr_t>(m_structure) + field.iOffset
);
const auto* tracer = *reinterpret_cast<TracerDef**>(reinterpret_cast<uintptr_t>(m_structure) + field.iOffset);
if (tracer)
m_info_string.SetValueForKey(std::string(field.szName), std::string(tracer->name));
@ -124,9 +123,12 @@ void InfoStringFromStructConverter::FillFromBaseField(const cspField_t& field)
}
case CSPFT_SOUND_ALIAS_ID:
assert(false);
FillFromUint(std::string(field.szName), field.iOffset);
break;
{
// TODO: Search sound files for files matching the hash
const auto* hash = reinterpret_cast<unsigned*>(reinterpret_cast<uintptr_t>(m_structure) + field.iOffset);
m_info_string.SetValueForKey(std::string(field.szName), "@" + std::to_string(*hash));
break;
}
case CSPFT_NUM_BASE_FIELD_TYPES:
default: