2022-10-09 05:13:17 +00:00
|
|
|
#ifndef _CSORTEDLISTS
|
|
|
|
#define _CSORTEDLISTS
|
2022-08-13 02:48:34 +00:00
|
|
|
|
|
|
|
#include "types.h"
|
|
|
|
|
|
|
|
#include "MetroidPrime/CObjectList.hpp"
|
|
|
|
|
|
|
|
#include "Kyoto/Math/CAABox.hpp"
|
|
|
|
|
|
|
|
class CActor;
|
|
|
|
|
|
|
|
namespace SL {
|
|
|
|
struct SNode {
|
|
|
|
CActor* x0_actor;
|
|
|
|
CAABox x4_box;
|
2022-10-09 05:37:23 +00:00
|
|
|
short x1c_selfIdxs[6];
|
|
|
|
short x28_next;
|
2022-08-13 02:48:34 +00:00
|
|
|
bool x2a_populated;
|
|
|
|
};
|
|
|
|
CHECK_SIZEOF(SNode, 0x2c);
|
|
|
|
|
|
|
|
struct SSortedList {
|
2022-10-09 05:37:23 +00:00
|
|
|
short x0_ids[kMaxObjects];
|
2022-09-05 04:01:13 +00:00
|
|
|
uint x800_size;
|
2022-08-13 02:48:34 +00:00
|
|
|
};
|
|
|
|
CHECK_SIZEOF(SSortedList, 0x804);
|
|
|
|
|
|
|
|
class CSortedListManager {
|
2022-11-15 01:08:30 +00:00
|
|
|
public:
|
|
|
|
CSortedListManager();
|
|
|
|
|
|
|
|
private:
|
2022-08-13 02:48:34 +00:00
|
|
|
SNode x0_nodes[kMaxObjects];
|
|
|
|
SSortedList xb000_sortedLists[6];
|
|
|
|
};
|
|
|
|
CHECK_SIZEOF(CSortedListManager, 0xe018);
|
|
|
|
} // namespace SL
|
|
|
|
|
2022-10-09 05:13:17 +00:00
|
|
|
#endif // _CSORTEDLISTS
|