mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-09 23:07:43 +00:00
Finish CMetroidPrimeEssence imps
This commit is contained in:
@@ -682,6 +682,23 @@ bool CGameCollision::DetectDynamicCollisionMoving(const CCollisionPrimitive& pri
|
||||
return ret;
|
||||
}
|
||||
|
||||
bool CGameCollision::DetectCollision(const CStateManager& mgr, const CCollisionPrimitive& prim, const zeus::CTransform& xf,
|
||||
const CMaterialFilter& filter, const rstl::reserved_vector<TUniqueId, 1024>& nearList,
|
||||
TUniqueId& idOut, CCollisionInfoList& infoOut) {
|
||||
bool ret = false;
|
||||
CMaterialList exclude = filter.ExcludeList();
|
||||
if (!exclude.HasMaterial(EMaterialTypes::Occluder) && DetectStaticCollision(mgr, prim, xf, filter, infoOut)) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
TUniqueId tmpId = kInvalidUniqueId;
|
||||
if (DetectDynamicCollision(prim, xf, nearList, tmpId, infoOut, mgr)) {
|
||||
ret = true;
|
||||
idOut = tmpId;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void CGameCollision::MakeCollisionCallbacks(CStateManager& mgr, CPhysicsActor& actor, TUniqueId id,
|
||||
const CCollisionInfoList& list) {
|
||||
actor.CollidedWith(id, list, mgr);
|
||||
|
||||
Reference in New Issue
Block a user