refactor(component): physics components load in the client's phases

The physics row's collision group in LoadDataFromTemplate and the level's
CollisionGroupID in LoadConfigData; each physics type then reads its own level
keys and makes its physics after that, in the same order as before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-10-01 08:34:28 -05:00
parent a4f1b974c8
commit 43b99b730f
10 changed files with 42 additions and 5 deletions

View File

@@ -20,6 +20,11 @@ SimplePhysicsComponent::SimplePhysicsComponent(Entity* parent, const int32_t com
m_Position = m_Parent->GetDefaultPosition();
m_Rotation = m_Parent->GetDefaultRotation();
}
// After the physics config: climbable type, motion type and the blocker
void SimplePhysicsComponent::LoadConfigData() {
PhysicsComponent::LoadConfigData();
const auto& climbable_type = m_Parent->GetVar<std::u16string>(u"climbable");
if (climbable_type == u"wall") {