Files
ss/include/d/lyt/d_structd.h
T
Elijah Thomas b5aa43ff37 Misc Collision (#51)
* Initial Commit - Starting to translate from TP

* Collision Updates

* Actor Collision -> dBgW (DZB Collision)

* bg .text splits complete

* fix errors

* file organization

* missed files

* progress

* weee

* most of cM3dG

* Revert mAng change

* Progress

* Progress -> Need to update from main

* Fixup Merge

* d_bg_s symbols....

* TList Changes

* oops

* d_bg_s large progress

* d_bg_s_acch majority done

* d_bg_s_chk OK

* d_bg_s_gnd_chk OK

* d_bg_s_grp_pass_chk OK

* d_bg_lin_chk OK

* d_bg_s_poly_pass_chk OK

* d_bg_s_roof_chk and d_bg_s_sph_chk OK

* d_bg_s_spl_grp_chk OK

* d_bg_s_wtr_chk OK

* d_bg_w started

* d_bg_w_base OK

* name d_bg_w_kcol symbols

* d_bg_w_sv split/started

* most of d_bg_w_time

* stopping d_bg_w_kcol for now

* d_bg_w_sv OK

* work on d_bg_w_time

* revert TList to take offset arg

* fixup some compiler warnings

* set c_bg_w OK

* Update rel_sieve.py

* Remove TList Macros

* Bomb Header started
2024-10-16 09:00:47 -04:00

60 lines
1.4 KiB
C++

#ifndef D_LYT_STRUCTD_H
#define D_LYT_STRUCTD_H
#include <egg/core/eggHeap.h>
#include <nw4r/ut/ut_LinkList.h>
#include <toBeSorted/tlist.h>
namespace d2d {
struct dLytStructD_Base {
dLytStructD_Base() : field_0x0C(0), field_0x10(0), field_0x14(0), field_0x015(0), field_0x016(0) {}
virtual ~dLytStructD_Base();
TListNode<dLytStructD_Base> mLink;
u32 field_0x0C;
u32 field_0x10;
u16 field_0x14;
u8 field_0x015;
u8 field_0x016;
};
struct dLytStructD : dLytStructD_Base {
dLytStructD() : field_0x18(0), field_0x1C(0), field_0x20(0), field_0x22(0), field_0x23(0), field_0x24(0) {}
virtual ~dLytStructD();
void init(nw4r::lyt::Pane *, u16, u8, u8);
void fn_80065E70(nw4r::lyt::Pane *, s32, s32, s32);
void fn_80065F70();
u32 field_0x18;
u32 field_0x1C;
u16 field_0x20;
u8 field_0x22;
u8 field_0x23;
u32 field_0x24;
};
class dLytStructDList {
public:
dLytStructDList();
static dLytStructDList *create(EGG::Heap *heap);
static dLytStructDList *sInstance;
void appendToList1(dLytStructD *other);
void removeFromList1(dLytStructD *other);
void appendToList2(dLytStructD *other);
void removeFromList2(dLytStructD *other);
private:
TList<dLytStructD, offsetof(dLytStructD, mLink)> mList2;
TList<dLytStructD, offsetof(dLytStructD, mLink)> mList1;
bool field_0x18;
};
} // namespace d2d
#endif