2021-03-28 22:49:05 +02:00
|
|
|
#ifndef D_A_D_A_ITEMBASE_H
|
|
|
|
|
#define D_A_D_A_ITEMBASE_H
|
|
|
|
|
|
2024-10-10 07:29:58 -07:00
|
|
|
#include "d/d_bg_s_acch.h"
|
|
|
|
|
#include "d/d_cc_d.h"
|
2024-12-18 10:02:52 -08:00
|
|
|
#include "d/d_a_itembase_static.h"
|
2024-03-07 19:23:18 -08:00
|
|
|
#include "f_op/f_op_actor_mng.h"
|
2025-12-26 22:17:51 +01:00
|
|
|
#include "m_Do/m_Do_ext.h"
|
2021-03-28 22:49:05 +02:00
|
|
|
|
2022-02-19 05:22:47 -08:00
|
|
|
struct daItemBase_data {
|
2022-06-29 13:19:09 -07:00
|
|
|
/* 0x00 */ f32 mGravity;
|
2024-05-07 21:21:07 -07:00
|
|
|
/* 0x04 */ f32 mGroundReflect;
|
|
|
|
|
/* 0x08 */ f32 mLaunchSpeed;
|
|
|
|
|
/* 0x0C */ f32 mScalingTime;
|
|
|
|
|
/* 0x10 */ f32 mSpeedH;
|
|
|
|
|
/* 0x14 */ s16 mFlashCycleTime;
|
|
|
|
|
/* 0x16 */ s16 mWaitTime;
|
|
|
|
|
/* 0x18 */ s16 mDisappearTime;
|
|
|
|
|
/* 0x1A */ s16 mRotateXSpeed;
|
|
|
|
|
/* 0x1C */ s16 mRotateYSpeed;
|
|
|
|
|
/* 0x20 */ f32 mHeartFallSpeed;
|
|
|
|
|
/* 0x24 */ f32 mHeartAmplitude;
|
|
|
|
|
/* 0x28 */ s16 mHeartFallCycleTime;
|
|
|
|
|
/* 0x2A */ s16 mHeartTilt;
|
|
|
|
|
/* 0x2C */ f32 mGetDemoLaunchSpeed;
|
|
|
|
|
/* 0x30 */ f32 mGetDemoGravity;
|
|
|
|
|
/* 0x34 */ s16 mSimpleExistTime;
|
|
|
|
|
/* 0x36 */ s16 mNoGetTime;
|
2022-02-19 05:22:47 -08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
class daItemBase_c : public fopAc_ac_c {
|
2021-05-02 10:13:14 -07:00
|
|
|
public:
|
|
|
|
|
u8 getItemNo();
|
|
|
|
|
void hide();
|
|
|
|
|
void show();
|
|
|
|
|
void changeDraw();
|
2025-07-14 05:38:49 +03:00
|
|
|
bool chkDraw();
|
2021-05-02 10:13:14 -07:00
|
|
|
void dead();
|
2025-07-01 01:24:21 +03:00
|
|
|
bool chkDead();
|
2022-02-19 05:22:47 -08:00
|
|
|
int CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16);
|
|
|
|
|
int DeleteBase(char const*);
|
2021-05-02 10:13:14 -07:00
|
|
|
void setListEnd();
|
|
|
|
|
void animPlay(f32, f32, f32, f32, f32, f32);
|
2022-06-29 13:19:09 -07:00
|
|
|
const daItemBase_data& getData();
|
2021-05-02 10:13:14 -07:00
|
|
|
|
2022-02-19 05:22:47 -08:00
|
|
|
virtual int DrawBase();
|
|
|
|
|
virtual void setListStart();
|
|
|
|
|
virtual void settingBeforeDraw();
|
|
|
|
|
virtual void setTevStr();
|
|
|
|
|
virtual void setShadow();
|
|
|
|
|
virtual void animEntry();
|
|
|
|
|
virtual void RotateYBase();
|
|
|
|
|
virtual int clothCreate();
|
|
|
|
|
virtual int __CreateHeap();
|
|
|
|
|
virtual BOOL chkFlag(int);
|
|
|
|
|
virtual s8 getTevFrm();
|
|
|
|
|
virtual s8 getBtpFrm();
|
|
|
|
|
virtual u8 getShadowSize();
|
|
|
|
|
virtual u8 getCollisionH();
|
|
|
|
|
virtual u8 getCollisionR();
|
|
|
|
|
|
|
|
|
|
static daItemBase_data const m_data;
|
2021-05-02 10:13:14 -07:00
|
|
|
|
2022-02-19 05:22:47 -08:00
|
|
|
/* 0x56C */ request_of_phase_process_class mPhase;
|
|
|
|
|
/* 0x574 */ J3DModel* mpModel;
|
2022-06-29 13:19:09 -07:00
|
|
|
/* 0x578 */ mDoExt_btkAnm* mpBtkAnm;
|
|
|
|
|
/* 0x57C */ mDoExt_bpkAnm* mpBpkAnm;
|
|
|
|
|
/* 0x580 */ mDoExt_brkAnm* mpBrkAnm;
|
|
|
|
|
/* 0x584 */ mDoExt_bckAnm* mpBckAnm;
|
|
|
|
|
/* 0x588 */ mDoExt_btpAnm* mpBtpAnm;
|
|
|
|
|
/* 0x58C */ dBgS_ObjAcch mAcch;
|
|
|
|
|
/* 0x764 */ dBgS_AcchCir mAcchCir;
|
2024-05-07 21:21:07 -07:00
|
|
|
/* 0x7A4 */ dCcD_Stts mCcStts;
|
|
|
|
|
/* 0x7E0 */ dCcD_Cyl mCcCyl;
|
2024-03-07 19:23:18 -08:00
|
|
|
/* 0x91C */ u32 mShadowKey;
|
2024-05-07 21:21:07 -07:00
|
|
|
/* 0x920 */ u32 mItemBitNo;
|
|
|
|
|
/* 0x924 */ int m_timer;
|
|
|
|
|
/* 0x928 */ s16 m_get_timer;
|
2021-08-23 13:47:18 -07:00
|
|
|
/* 0x92A */ u8 m_itemNo;
|
|
|
|
|
/* 0x92B */ u8 field_0x92b;
|
2021-05-02 10:13:14 -07:00
|
|
|
};
|
|
|
|
|
|
2021-03-28 22:49:05 +02:00
|
|
|
#endif /* D_A_D_A_ITEMBASE_H */
|