Link CAABoxFilter

This commit is contained in:
Luke Street 2022-10-19 00:11:57 -04:00
parent 8281bd5424
commit 2883468211
5 changed files with 12 additions and 10 deletions

View File

@ -241,7 +241,7 @@ LIBS = [
"MetroidPrime/Player/CPlayerOrbit",
"MetroidPrime/CGameCollision",
["MetroidPrime/CBallFilter", True],
["MetroidPrime/CAABoxFilter", False],
["MetroidPrime/CAABoxFilter", True],
"MetroidPrime/CGroundMovement",
"MetroidPrime/Enemies/CNewIntroBoss",
"MetroidPrime/Weapons/CPhazonBeam",

View File

@ -21,10 +21,10 @@ public:
x0_list.push_back(info.GetSwapped());
}
iterator end() { return x0_list.end(); }
const_iterator end() const { return x0_list.end(); }
iterator begin() { return x0_list.begin(); }
const_iterator begin() const { return x0_list.begin(); }
iterator End() { return x0_list.end(); }
const_iterator End() const { return x0_list.end(); }
iterator Begin() { return x0_list.begin(); }
const_iterator Begin() const { return x0_list.begin(); }
};
#endif // _CCOLLISIONINFOLIST

View File

@ -13,8 +13,10 @@ class reserved_vector {
uchar x4_data[N * sizeof(T)];
public:
typedef pointer_iterator< T, reserved_vector< T, N >, void > iterator;
typedef const_pointer_iterator< T, reserved_vector< T, N >, void > const_iterator;
// typedef pointer_iterator< T, reserved_vector< T, N >, void > iterator;
// typedef const_pointer_iterator< T, reserved_vector< T, N >, void > const_iterator;
typedef T* iterator;
typedef const T* const_iterator;
inline iterator begin() { return iterator(data()); }
inline const_iterator begin() const { return const_iterator(data()); }

View File

@ -208,7 +208,7 @@ METROIDPRIME :=\
$(BUILD_DIR)/asm/MetroidPrime/Player/CPlayerOrbit.o\
$(BUILD_DIR)/asm/MetroidPrime/CGameCollision.o\
$(BUILD_DIR)/src/MetroidPrime/CBallFilter.o\
$(BUILD_DIR)/asm/MetroidPrime/CAABoxFilter.o\
$(BUILD_DIR)/src/MetroidPrime/CAABoxFilter.o\
$(BUILD_DIR)/asm/MetroidPrime/CGroundMovement.o\
$(BUILD_DIR)/asm/MetroidPrime/Enemies/CNewIntroBoss.o\
$(BUILD_DIR)/asm/MetroidPrime/Weapons/CPhazonBeam.o\

View File

@ -6,14 +6,14 @@
void CAABoxFilter::FilterBoxFloorCollisions(const CCollisionInfoList& in, CCollisionInfoList& out) {
float minZ = 10000.f;
for (CCollisionInfoList::const_iterator it = in.begin(); it != in.end(); ++it) {
for (CCollisionInfoList::const_iterator it = in.Begin(); it != in.End(); ++it) {
if (it->GetMaterialLeft().HasMaterial(kMT_Wall) && it->GetPoint().GetZ() < minZ) {
minZ = it->GetPoint().GetZ();
}
}
CCollisionInfoList temp;
for (CCollisionInfoList::const_iterator it = in.begin(); it != in.end(); ++it) {
for (CCollisionInfoList::const_iterator it = in.Begin(); it != in.End(); ++it) {
if (it->GetMaterialLeft().HasMaterial(kMT_Floor)) {
if (it->GetPoint().GetZ() < minZ) {
temp.Add(*it, false);