tp/include/d/actor/d_a_obj_life_container.h

97 lines
2.4 KiB
C++

#ifndef D_A_OBJ_LIFE_CONTAINER_H
#define D_A_OBJ_LIFE_CONTAINER_H
#include "d/actor/d_a_itembase.h"
#include "d/d_particle.h"
/**
* @ingroup actors-objects
* @class daObjLife_c
* @brief Heart Piece
*
* @details
*
*/
class daObjLife_c : public daItemBase_c {
public:
enum Status_e {
STATUS_WAIT_e,
STATUS_ORDER_GET_DEMO_e,
STATUS_GET_DEMO_e,
STATUS_SW_ON_WAIT_e,
STATUS_BOOMERANG_CARRY_e,
STATUS_WAIT_2_e,
};
void initBaseMtx();
void setBaseMtx();
int Create();
void setEffect();
void endEffect00();
void endEffect02();
int create();
void bg_check();
int actionWaitInit();
int actionWait();
int initActionOrderGetDemo();
int actionOrderGetDemo();
int actionGetDemo();
int actionSwOnWait();
int actionInitBoomerangCarry();
int actionBoomerangCarry();
int actionInitWait2();
int actionWait2();
void calcScale();
int execute();
int draw();
int _delete();
virtual int __CreateHeap();
virtual void setListStart();
bool chkStatus(u8 i_status) { return mStatus == i_status; }
void setStatus(u8 i_status) { mStatus = i_status; }
u8 getSaveBitNo() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getItemNo() { return fopAcM_GetParamBit(this, 0, 8); }
int getSwNo() { return 0xFF; }
void startCtrl() {
actionInitWait2();
}
void setPos(cXyz new_pos) {
current.pos = new_pos;
}
private:
/* 0x92C */ fpc_ProcID mItemId;
/* 0x930 */ int mCounter;
/* 0x934 */ u8 mStatus;
/* 0x935 */ u8 field_0x935;
/* 0x936 */ u8 mGndLandCount;
/* 0x937 */ u8 mIsPrmsInit;
/* 0x938 */ s16 field_0x938;
/* 0x93A */ s16 field_0x93a;
/* 0x93C */ cXyz mPrevSpeed;
/* 0x948 */ u16 mLv5Counter;
/* 0x94C */ f32 field_0x94c;
/* 0x950 */ f32 field_0x950;
/* 0x954 */ f32 field_0x954;
/* 0x958 */ u8 field_0x958[0x95E - 0x958];
/* 0x95E */ s16 field_0x95e;
/* 0x960 */ u8 field_0x960[0x962 - 0x960];
/* 0x962 */ s16 mRotateSpeed;
/* 0x964 */ u8 field_0x964[0x974 - 0x964];
/* 0x974 */ dPa_followEcallBack mEffect0;
/* 0x988 */ dPa_followEcallBack mEffect1;
/* 0x99C */ dPa_followEcallBack mEffect2;
/* 0x9B0 */ Z2SoundObjSimple mSound;
/* 0x9D0 */ u8 mIsHookCarry;
};
STATIC_ASSERT(sizeof(daObjLife_c) == 0x9d4);
#endif /* D_A_OBJ_LIFE_CONTAINER_H */