mirror of https://github.com/PrimeDecomp/prime.git
Link CAABoxFilter
This commit is contained in:
parent
8281bd5424
commit
2883468211
|
@ -241,7 +241,7 @@ LIBS = [
|
||||||
"MetroidPrime/Player/CPlayerOrbit",
|
"MetroidPrime/Player/CPlayerOrbit",
|
||||||
"MetroidPrime/CGameCollision",
|
"MetroidPrime/CGameCollision",
|
||||||
["MetroidPrime/CBallFilter", True],
|
["MetroidPrime/CBallFilter", True],
|
||||||
["MetroidPrime/CAABoxFilter", False],
|
["MetroidPrime/CAABoxFilter", True],
|
||||||
"MetroidPrime/CGroundMovement",
|
"MetroidPrime/CGroundMovement",
|
||||||
"MetroidPrime/Enemies/CNewIntroBoss",
|
"MetroidPrime/Enemies/CNewIntroBoss",
|
||||||
"MetroidPrime/Weapons/CPhazonBeam",
|
"MetroidPrime/Weapons/CPhazonBeam",
|
||||||
|
|
|
@ -21,10 +21,10 @@ public:
|
||||||
x0_list.push_back(info.GetSwapped());
|
x0_list.push_back(info.GetSwapped());
|
||||||
}
|
}
|
||||||
|
|
||||||
iterator end() { return x0_list.end(); }
|
iterator End() { return x0_list.end(); }
|
||||||
const_iterator end() const { return x0_list.end(); }
|
const_iterator End() const { return x0_list.end(); }
|
||||||
iterator begin() { return x0_list.begin(); }
|
iterator Begin() { return x0_list.begin(); }
|
||||||
const_iterator begin() const { return x0_list.begin(); }
|
const_iterator Begin() const { return x0_list.begin(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _CCOLLISIONINFOLIST
|
#endif // _CCOLLISIONINFOLIST
|
||||||
|
|
|
@ -13,8 +13,10 @@ class reserved_vector {
|
||||||
uchar x4_data[N * sizeof(T)];
|
uchar x4_data[N * sizeof(T)];
|
||||||
|
|
||||||
public:
|
public:
|
||||||
typedef pointer_iterator< T, reserved_vector< T, N >, void > iterator;
|
// typedef pointer_iterator< T, reserved_vector< T, N >, void > iterator;
|
||||||
typedef const_pointer_iterator< T, reserved_vector< T, N >, void > const_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 iterator begin() { return iterator(data()); }
|
||||||
inline const_iterator begin() const { return const_iterator(data()); }
|
inline const_iterator begin() const { return const_iterator(data()); }
|
||||||
|
|
|
@ -208,7 +208,7 @@ METROIDPRIME :=\
|
||||||
$(BUILD_DIR)/asm/MetroidPrime/Player/CPlayerOrbit.o\
|
$(BUILD_DIR)/asm/MetroidPrime/Player/CPlayerOrbit.o\
|
||||||
$(BUILD_DIR)/asm/MetroidPrime/CGameCollision.o\
|
$(BUILD_DIR)/asm/MetroidPrime/CGameCollision.o\
|
||||||
$(BUILD_DIR)/src/MetroidPrime/CBallFilter.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/CGroundMovement.o\
|
||||||
$(BUILD_DIR)/asm/MetroidPrime/Enemies/CNewIntroBoss.o\
|
$(BUILD_DIR)/asm/MetroidPrime/Enemies/CNewIntroBoss.o\
|
||||||
$(BUILD_DIR)/asm/MetroidPrime/Weapons/CPhazonBeam.o\
|
$(BUILD_DIR)/asm/MetroidPrime/Weapons/CPhazonBeam.o\
|
||||||
|
|
|
@ -6,14 +6,14 @@
|
||||||
void CAABoxFilter::FilterBoxFloorCollisions(const CCollisionInfoList& in, CCollisionInfoList& out) {
|
void CAABoxFilter::FilterBoxFloorCollisions(const CCollisionInfoList& in, CCollisionInfoList& out) {
|
||||||
float minZ = 10000.f;
|
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) {
|
if (it->GetMaterialLeft().HasMaterial(kMT_Wall) && it->GetPoint().GetZ() < minZ) {
|
||||||
minZ = it->GetPoint().GetZ();
|
minZ = it->GetPoint().GetZ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CCollisionInfoList temp;
|
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->GetMaterialLeft().HasMaterial(kMT_Floor)) {
|
||||||
if (it->GetPoint().GetZ() < minZ) {
|
if (it->GetPoint().GetZ() < minZ) {
|
||||||
temp.Add(*it, false);
|
temp.Add(*it, false);
|
||||||
|
|
Loading…
Reference in New Issue