Files
tww/include/d/actor/d_a_salvage.h
T
Maide b24d8574cd d_a_salvage (#841)
* d_a_salvage

* PR
2025-08-08 21:34:37 -04:00

122 lines
4.0 KiB
C++

#ifndef D_A_SALVAGE_H
#define D_A_SALVAGE_H
#include "f_op/f_op_actor.h"
#include "d/actor/d_a_oship.h"
#include "d/d_salvage.h"
class mDoExt_brkAnm;
class daSalvage_c : public fopAc_ac_c {
typedef bool (daSalvage_c::*ModeProcFunc)();
public:
static int getSalvageId() { return mSalvageId; }
void setSalvageId(int salvageId) { mSalvageId = salvageId; }
static BOOL isValidSalvageId() {
if (mSalvageId != -1) {
return TRUE;
}
return FALSE;
}
void getSalvageKind() {}
BOOL checkRegist(int arg1) { return mTagData_p->checkRegist(arg1); }
BOOL checkUsed(int arg1) { return mTagData_p->checkUsed(arg1); }
void clrFlag(int arg1, u8 arg2) { mTagData_p->clrFlag(arg1, arg2); }
void debug_print() {}
void debug_print_reg() {}
u8* getAlphaP(int arg1) { return mTagData_p->getAlphaPtr(arg1); }
f32 getDistance_sub(int arg1) { return mTagData_p->getDistance(arg1); }
s32 getDrawMode(int arg1) { return mTagData_p->getDrawMode(arg1); }
f32 getH(int arg1) { return mTagData_p->getH(arg1); }
u8 getItemNo(int arg1) { return mTagData_p->getItemNo(arg1); }
u8 getKind(int arg1) { return mTagData_p->getKind(arg1); }
cXyz getPos(int arg1) { return mTagData_p->getPos(arg1); }
cXyz* getPosP(int arg1) { return mTagData_p->getPosP(arg1); }
f32 getR(int arg1) { return mTagData_p->getR(arg1); }
s8 getRoomNo(int arg1) { return mTagData_p->getRoomNo(arg1); }
s8 getSRoomNo() { return mNowRoomNo; }
u8 getSaveNo(int arg1) { return mTagData_p->getSaveNo(arg1); }
cXyz getScale(int arg1) { return mTagData_p->getScale(arg1); }
s32 getSwitchNo(int arg1) { return mTagData_p->getSwitchNo(arg1); }
u8 getType(int arg1) { return mTagData_p->getType(arg1); }
void init_one(int arg1) { mTagData_p->init_one(arg1); }
void setDrawMode(int arg1, int arg2) { mTagData_p->setDrawMode(arg1, arg2); }
void setFlag(int arg1, u8 arg2) { mTagData_p->setFlag(arg1, arg2); }
void setNowAlpha(int arg1, u8 alpha) { mTagData_p->setNowAlpha(arg1, alpha); }
void setPos(int arg1, cXyz arg2) { mTagData_p->setPos(arg1,arg2); }
void setSRoomNo(s8 roomNo) { mNowRoomNo = roomNo; }
f32 GetR(int arg1) { return getR(arg1); }
BOOL CreateHeap();
bool CreateInit();
cPhs_State _create();
bool _delete();
bool _execute();
void checkOrder();
void eventOrder();
bool proc_wait_init();
bool proc_wait();
bool proc_salvage_init();
bool proc_salvage();
void calcAlpha();
BOOL checkArea(cXyz, int);
void createEnemy();
bool onSalvageForOship(daOship_c*);
bool end_salvage();
int checkDistance();
int checkXZDistance();
BOOL getDistance(int, f32*);
void send_agb();
void debug_print2();
bool _draw();
void set_mtx(J3DModel*, int);
BOOL isEffectKind(int);
void debugDraw();
static void init_room(s8);
static void init() {
mNowRoomNo = -1;
mTagData_p = NULL;
mSalvageId = -1;
}
static char* m_arcname;
static const f32 m_outersea_near;
static const f32 m_inside_near;
static const f32 m_cmap_near;
static const u8 m_disappear_frame;
static const u16 m_savelabel[];
static dSalvage_control_c* mTagData_p;
static s8 mNowRoomNo;
static int mSalvageId;
public:
/* 0x290 */ request_of_phase_process_class mPhase;
/* 0x298 */ J3DModelData* mModelData;
/* 0x29C */ J3DModel* mModels[16];
/* 0x2DC */ mDoExt_brkAnm* mpBrk;
/* 0x2E0 */ mDoExt_btkAnm* mpBtk;
/* 0x2E4 */ JPABaseEmitter* mEmitter;
/* 0x2E8 */ s8 m2E8;
/* 0x2E9 */ u8 m2E9;
/* 0x2EA */ bool m2EA;
/* 0x2EC */ u32 m2EC;
/* 0x2F0 */ s16 mSalvageGetItemEventIdx;
/* 0x2F2 */ s16 mSalvageHazureEventIdx;
/* 0x2F4 */ s16 mSlvgGetItemLeftEventIdx;
/* 0x2F6 */ s16 mEventIdx;
/* 0x2F8 */ s8 mStayNo;
/* 0x2FC */ s32 m2FC;
/* 0x300 */ u8 mRndDepthIdx;
/* 0x301 */ bool m301;
/* 0x302 */ u8 m302;
/* 0x304 */ fpc_ProcID m304;
/* 0x308 */ ModeProcFunc mProc;
}; // size = 0x314
#endif /* D_A_SALVAGE_H */