fix(model): correct logic in CM2Model::AttachToParent

This commit is contained in:
fallenoak 2025-11-03 19:17:38 -06:00
parent 3a3b7d5259
commit 642c763612
No known key found for this signature in database
GPG Key ID: 7628F8E61AEA070D

View File

@ -693,15 +693,20 @@ void CM2Model::AttachToParent(CM2Model* parent, uint32_t id, const C3Vector* pos
this->SetAnimating(0);
auto& attachmentIndicesById = this->m_shared->m_data->attachmentIndicesById;
// Look up parent attachment index by given ID
uint16_t attachIndex = 0xFFFF;
if (parent->m_loaded && id < attachmentIndicesById.count) {
attachIndex = attachmentIndicesById[id];
}
if (attachIndex == 0xFFFF && !a5) {
return;
if (parent->m_loaded) {
auto& parentAttachmentIndicesById = parent->m_shared->m_data->attachmentIndicesById;
if (id < parentAttachmentIndicesById.Count()) {
attachIndex = parentAttachmentIndicesById[id];
}
if (attachIndex == 0xFFFF && !a5) {
return;
}
}
this->m_attachIndex = attachIndex;