2020-01-15 12:07:48 +00:00
|
|
|
#include "Runtime/Collision/CCollisionInfo.hpp"
|
|
|
|
|
|
|
|
#include <utility>
|
2016-06-26 01:11:09 +00:00
|
|
|
|
2021-04-10 08:42:06 +00:00
|
|
|
namespace metaforce {
|
2016-06-26 01:11:09 +00:00
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
CCollisionInfo CCollisionInfo::GetSwapped() const {
|
|
|
|
CCollisionInfo ret;
|
|
|
|
ret.x0_point = x0_point;
|
|
|
|
ret.xc_extentX = xc_extentX;
|
|
|
|
ret.x30_valid = x30_valid;
|
|
|
|
ret.x31_hasExtents = x31_hasExtents;
|
|
|
|
ret.x38_materialLeft = x40_materialRight;
|
|
|
|
ret.x40_materialRight = x38_materialLeft;
|
|
|
|
ret.x48_normalLeft = x54_normalRight;
|
|
|
|
ret.x54_normalRight = x48_normalLeft;
|
|
|
|
return ret;
|
2017-06-18 01:58:13 +00:00
|
|
|
}
|
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
void CCollisionInfo::Swap() {
|
|
|
|
x48_normalLeft = -x48_normalLeft;
|
|
|
|
x54_normalRight = -x54_normalRight;
|
|
|
|
std::swap(x38_materialLeft, x40_materialRight);
|
2017-06-18 01:58:13 +00:00
|
|
|
}
|
|
|
|
|
2018-12-08 05:30:43 +00:00
|
|
|
zeus::CVector3f CCollisionInfo::GetExtreme() const { return x0_point + xc_extentX + x18_extentY + x24_extentZ; }
|
2017-01-04 04:08:30 +00:00
|
|
|
|
2021-04-10 08:42:06 +00:00
|
|
|
} // namespace metaforce
|