/* f_op_overlap_mng.cpp autogenerated by split.py v0.4 at 2021-02-13 20:35:13.072583 */ #include "f/f_op/f_op_overlap_mng.h" #include "SComponent/c_request.h" #include "f/f_op/f_op_overlap_req.h" #include "f/f_op/f_op_scene_pause.h" #include "f/f_pc/f_pc_executor.h" #include "global.h" // additional symbols needed for f_op_overlap_mng.cpp // autogenerated by split.py v0.4 at 2021-02-13 20:35:13.072614 extern "C" { // void cReq_Done__FP18request_base_class(void); void cReq_Is_Done__FP18request_base_class(void); void fopOvlpM_Done(void); void fopOvlpM_Init(void); void fopOvlpM_Request(void); void fopOvlpM_ToldAboutID(void); void fopScnPause_Disable(void); void fopOvlpReq_OverlapClr__FP21overlap_request_class(void); } // additional symbols needed for f_op_overlap_mng.cpp // autogenerated by split.py v0.4 at 2021-02-13 20:35:13.072619 extern request_base_class* l_fopOvlpM_overlap; extern overlap_request_class l_fopOvlpM_Request; int fopOvlpM_SceneIsStop(void) { if (l_fopOvlpM_overlap) { return fopScnPause_Enable( (scene_class*)fpcEx_SearchByID(l_fopOvlpM_overlap->field_0x20[0x32])); } else { return 0; } } int fopOvlpM_SceneIsStart(void) { if (l_fopOvlpM_overlap) { return fopScnPause_Disable( (scene_class*)fpcEx_SearchByID(l_fopOvlpM_overlap->field_0x20[0x32])); } else { return 0; } } // 1 instruction off #ifdef NONMATCHING int fopOvlpM_IsOutReq(overlap_task_class* pTaskClass) { return pTaskClass->field_0xc4 == 2; } #else asm int fopOvlpM_IsOutReq(overlap_task_class* pTaskClass) { nofralloc #include "f/f_op_overlap_mng/asm/func_8001E504.s" } #endif void fopOvlpM_Done(overlap_task_class* pTaskClass) { cReq_Done((request_base_class*)&pTaskClass->field_0xc4); } void fopOvlpM_ToldAboutID(unsigned int param_1) { l_fopOvlpM_overlap ? l_fopOvlpM_overlap->field_0x20[0x32] = param_1 : 0; } int fopOvlpM_IsPeek(void) { return l_fopOvlpM_overlap ? l_fopOvlpM_overlap->field_0x8 : 0; } int fopOvlpM_IsDone(void) { return l_fopOvlpM_overlap ? cReq_Is_Done(l_fopOvlpM_overlap) : 0; } int fopOvlpM_IsDoingReq(void) { if (l_fopOvlpM_overlap && l_fopOvlpM_overlap->field_0x4 == 1) { return 1; } return 0; } int fopOvlpM_ClearOfReq(void) { return l_fopOvlpM_overlap ? fopOvlpReq_OverlapClr((overlap_request_class*)l_fopOvlpM_overlap) : 0; } request_base_class* fopOvlpM_Request(s16 param_1, u16 param_2) { if (!l_fopOvlpM_overlap) { request_base_class* tmp = fopOvlpReq_Request(&l_fopOvlpM_Request, param_1, param_2); l_fopOvlpM_overlap = tmp; return tmp; } return 0; } void fopOvlpM_Management(void) { if (l_fopOvlpM_overlap) { int tmp = fopOvlpReq_Handler((overlap_request_class*)l_fopOvlpM_overlap); if (6 <= tmp || 3 > tmp) { return; } l_fopOvlpM_overlap = 0; } } int fopOvlpM_Cancel(void) { if (!l_fopOvlpM_overlap) { return 1; } if (fopOvlpReq_Cancel((overlap_request_class*)l_fopOvlpM_overlap) == 1) { l_fopOvlpM_overlap = 0; return 1; } return 0; } void fopOvlpM_Init(void) { return; }