diff --git a/src/KingSystem/Physics/System/physEntityGroupFilter.cpp b/src/KingSystem/Physics/System/physEntityGroupFilter.cpp index b048bd62..6f883cca 100644 --- a/src/KingSystem/Physics/System/physEntityGroupFilter.cpp +++ b/src/KingSystem/Physics/System/physEntityGroupFilter.cpp @@ -161,7 +161,7 @@ void EntityGroupFilter::doInitSystemGroupHandlerLists_(sead::Heap* heap) { for (int i = 1; i < NumEntityHandlers; ++i) { auto& list = mFreeLists[i < NumEntityHandlersInList0]; - list.pushBack(new (heap) EntitySystemGroupHandler(i, 0)); + list.pushBack(new (heap) EntitySystemGroupHandler(i)); } } diff --git a/src/KingSystem/Physics/System/physEntityGroupFilter.h b/src/KingSystem/Physics/System/physEntityGroupFilter.h index ca31a640..d8d2e279 100644 --- a/src/KingSystem/Physics/System/physEntityGroupFilter.h +++ b/src/KingSystem/Physics/System/physEntityGroupFilter.h @@ -10,7 +10,7 @@ namespace ksys::phys { class EntitySystemGroupHandler : public SystemGroupHandler { public: - using SystemGroupHandler::SystemGroupHandler; + explicit EntitySystemGroupHandler(int i) : SystemGroupHandler(i, ContactLayerType::Entity) {} u32 m5() override; u32 m6() override; diff --git a/src/KingSystem/Physics/System/physGroupFilter.h b/src/KingSystem/Physics/System/physGroupFilter.h index b139c386..696ff52e 100644 --- a/src/KingSystem/Physics/System/physGroupFilter.h +++ b/src/KingSystem/Physics/System/physGroupFilter.h @@ -13,8 +13,8 @@ namespace ksys::phys { class SystemGroupHandler { SEAD_RTTI_BASE(SystemGroupHandler) public: - explicit SystemGroupHandler(int index, int filter_index) - : mIndex(index), mFilterIndex(filter_index) {} + explicit SystemGroupHandler(int index, ContactLayerType layer_type) + : mIndex(index), mLayerType(layer_type) {} virtual ~SystemGroupHandler() = default; virtual u32 m5() = 0; @@ -23,7 +23,7 @@ public: virtual bool m8() = 0; int getIndex() const { return mIndex; } - int getFilterIndex() const { return mFilterIndex; } + ContactLayerType getLayerType() const { return mLayerType; } const char* getActorName() const { return mActorName; } void setActorName(const char* name) { mActorName = name; } @@ -46,7 +46,7 @@ protected: const char* mActorName = nullptr; const char* mActorProfile = nullptr; int mIndex = 0; - int mFilterIndex = 0; + ContactLayerType mLayerType{}; sead::ListNode mFreeListNode; sead::ListNode mUsedListNode; };