mirror of https://github.com/zeldaret/tp.git
67 lines
2.5 KiB
C++
67 lines
2.5 KiB
C++
#ifndef F_F_OP_MSG_MNG_H_
|
|
#define F_F_OP_MSG_MNG_H_
|
|
|
|
#include "SSystem/SComponent/c_xyz.h"
|
|
#include "f_op/f_op_msg.h"
|
|
#include "f_pc/f_pc_leaf.h"
|
|
|
|
class JKRExpHeap;
|
|
class JKRHeap;
|
|
class fopAc_ac_c;
|
|
class msg_class;
|
|
|
|
struct msg_process_profile_definition {
|
|
/* 0x00 */ leaf_process_profile_definition base;
|
|
/* 0x24 */ leafdraw_method_class* sub_method; // Subclass methods
|
|
};
|
|
|
|
struct fopMsg_prm_class {
|
|
/* 0x00 */ fopAc_ac_c* talk_actor;
|
|
/* 0x04 */ cXyz pos;
|
|
/* 0x10 */ u32 msg_idx;
|
|
/* 0x14 */ u32 field_0x14;
|
|
/* 0x18 */ fpc_ProcID field_0x18;
|
|
}; // Size: 0x1C
|
|
|
|
struct fopMsg_prm_timer : public fopMsg_prm_class {
|
|
/* 0x1C */ int timer_mode;
|
|
/* 0x20 */ u32 limit_ms;
|
|
/* 0x24 */ u8 type;
|
|
/* 0x25 */ u8 field_0x25;
|
|
/* 0x28 */ f32 field_0x28;
|
|
/* 0x2C */ f32 field_0x2c;
|
|
/* 0x30 */ f32 field_0x30;
|
|
/* 0x34 */ f32 field_0x34;
|
|
}; // Size: 0x38
|
|
|
|
typedef int (*fopMsgCreateFunc)(void*);
|
|
|
|
JKRExpHeap* fopMsgM_createExpHeap(u32 i_heapSize, JKRHeap* i_heap);
|
|
fpc_ProcID fopMsgM_Create(s16 i_procName, fopMsgCreateFunc i_createFunc, void* i_append);
|
|
fpc_ProcID fopMsgM_create(s16 i_procName, fopAc_ac_c* i_talkActor, cXyz* i_pos, u32* i_msgIdx,
|
|
u32* param_4, fopMsgCreateFunc createFunc);
|
|
void fopMsgM_Delete(void* i_this);
|
|
fopMsg_prm_class* fopMsgM_GetAppend(void* i_msg);
|
|
void fopMsgM_setMessageID(fpc_ProcID msg_id);
|
|
void fopMsgM_destroyExpHeap(JKRExpHeap* i_heap);
|
|
f32 fopMsgM_valueIncrease(int param_0, int param_1, u8 i_type);
|
|
s32 fopMsgM_setStageLayer(void* i_process);
|
|
fpc_ProcID fopMsgM_messageSet(u32 i_msgIdx, fopAc_ac_c* i_talkActor, u32 param_2);
|
|
fpc_ProcID fopMsgM_messageSet(u32 i_msgIdx, u32 param_1);
|
|
fpc_ProcID fopMsgM_messageSetDemo(u32 i_msgidx);
|
|
msg_class* fopMsgM_SearchByID(fpc_ProcID i_id);
|
|
char* fopMsgM_messageGet(char* i_stringBuf, u32 i_msgId);
|
|
fpc_ProcID fop_Timer_create(s16 i_procName, u8 i_mode, u32 i_limitMs, u8 i_type, u8 param_4,
|
|
f32 param_5, f32 param_6, f32 param_7, f32 param_8,
|
|
fopMsgCreateFunc i_createFunc);
|
|
|
|
inline fpc_ProcID fopMsgM_Timer_create(s16 i_procName, u8 i_mode, u32 i_limitMs, u8 i_type,
|
|
u8 param_4, f32 param_5, f32 param_6, f32 param_7,
|
|
f32 param_8, fopMsgCreateFunc i_createFunc) {
|
|
return fop_Timer_create(i_procName, i_mode, i_limitMs, i_type, param_4, param_5, param_6,
|
|
param_7, param_8, i_createFunc);
|
|
}
|
|
u8 fopMsgM_itemNumIdx(u8 i_no);
|
|
|
|
#endif
|