Files
tp/include/d/actor/d_a_obj_TvCdlst.h
T
34b21412c4 d_a_obj_TvCdlst matching (#2292)
* d_a_obj_TvCdlst matching

* d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order) (#2291)

* d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order)
* Three rels equivalent
* Basic documentation for the three rels
* Define explicit constructor for dMdl_obj_c (needed for proper array creation in d_a_obj_klift00)
* Modify d_a_obj_bky_rock to account for new explicit constructor of dMdl_obj_c
* Specify weak func and/or vtable orders for rels in config.py

* Cleanup includes and dol2asm artifacts

* * Fix debug build
* Restore incorrectly removed l_bmdidx

* Fix US retail equivalency

* d_a_obj_Turara equivalent (#2289)

* Initial d_a_obj_Turara work

* More d_a_obj_Turara work

* d_a_obj_Turara equivalent except for weak func order of dEvLib_callback_c dtor

* Updates to d_a_obj_Turara after feedback from Taka

* b_dre equivalent (#2290)

* Update d_a_obj_Turara to remove unnecessary comment based on hatal\'s request

---------

Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>

* Fix spurious differences when using `ninja diff` (#2294)

* Fix spurious differences when using ninja diff

* Fix some clangd errors/warnings

* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent (#2293)

* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent
* Add simpleCalcMaterial implicit inline to J3DModelData (seen in debug)
* Basic documentation for both actors
* WIP debug build implementations (note TODOs)
* Update configure.py and note weak ordering issues for lv3Water2

* Actually add modified J3DModelData.h & explicitly note fake padding

* Add fopAcM_Register... macros (for debug build) (#2295)

* Update d_a_obj_Tvcdlst to use LIGHT_INFLUENCE after Taka gave feedback

---------

Co-authored-by: Huitzi <73550465+marwernerh@users.noreply.github.com>
Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2025-02-03 10:30:40 +02:00

68 lines
1.8 KiB
C++

#ifndef D_A_OBJ_TVCDLST_H
#define D_A_OBJ_TVCDLST_H
#include "f_op/f_op_actor_mng.h"
#include "include/d/d_com_inf_game.h"
/**
* @ingroup actors-objects
* @class daTvCdlst_c
* @brief Ordon Torch Stand
*
* @details
*
*/
class daTvCdlst_c : public fopAc_ac_c {
public:
/* 80B9ED40 */ void setBaseMtx();
/* 80B9EDC8 */ int CreateHeap();
/* 80B9EE34 */ int create();
/* 80B9F144 */ static int createHeapCallBack(fopAc_ac_c*);
/* 80B9F164 */ void lightInit();
/* 80B9F1F0 */ void setLight();
/* 80B9F220 */ void cutLight();
/* 80B9F250 */ void pointLightProc();
/* 80B9F300 */ int Execute();
/* 80B9F634 */ int Draw();
/* 80B9F6D8 */ int Delete();
static dCcD_SrcGObjInf const mCcDObjInfo;
static dCcD_SrcCyl mCcDCyl;
u8 getLightType() { return fopAcM_GetParamBit(this,8,8); }
u8 getOnSw() { return fopAcM_GetParamBit(this,0,8); }
u8 getOffSw() { return fopAcM_GetParamBit(this,0x10,8); }
private:
/* 0x568 */ request_of_phase_process_class mPhaseReq;
/* 0x570 */ J3DModel* mpModel;
/* 0x574 */ dCcD_Stts mStts;
/* 0x5b0 */ dCcD_Cyl mCyl;
/* 0x6ec */ cXyz field_0x6ec;
/* 0x6f8 */ u8 field_0x6f8;
/* 0x6f9 */ u8 mIsOn;
/* 0x6fa */ u8 mIsOff;
/* 0x6fb */ u8 mOnSw;
/* 0x6fc */ u8 mOffSw;
/* 0x6fd */ u8 mDoIgnite;
/* 0x700 */ cXyz field_0x700;
/* 0x70c */ u8 mLightType;
/* 0x710 */ f32 field_0x710;
/* 0x714 */ LIGHT_INFLUENCE mLight;
/* 0x734 */ Z2SoundObjSimple mSound;
};
STATIC_ASSERT(sizeof(daTvCdlst_c) == 0x754);
class daTvCdlst_HIO_c : public mDoHIO_entry_c {
public:
/* 80B9ECCC */ daTvCdlst_HIO_c();
/* 80B9F7B0 */ virtual ~daTvCdlst_HIO_c() {}
/* 0x4 */ u8 field_0x4;
/* 0x5 */ u8 field_0x5;
};
#endif /* D_A_OBJ_TVCDLST_H */