diff options
| author | Pheenoh <pheenoh@gmail.com> | 2021-02-21 17:50:16 -0500 |
|---|---|---|
| committer | Pheenoh <pheenoh@gmail.com> | 2021-02-21 17:50:16 -0500 |
| commit | eeecf4cf69788130496ffc21ec0d0b5fa6578f03 (patch) | |
| tree | 64e3fa5bcb9c2f379a47984c53a6821aa592eb73 /src | |
| parent | f256d97ddf87a785a593f1892e6a8d72ecb311ed (diff) | |
fopScnM_ChangeReq OK
Diffstat (limited to 'src')
| -rw-r--r-- | src/d/d_com/d_com_inf_game.cpp | 3 | ||||
| -rw-r--r-- | src/d/d_stage.cpp | 2 | ||||
| -rw-r--r-- | src/f/f_op/f_op_scene_mng.cpp | 35 |
3 files changed, 19 insertions, 21 deletions
diff --git a/src/d/d_com/d_com_inf_game.cpp b/src/d/d_com/d_com_inf_game.cpp index 02e76da05d..eda882934f 100644 --- a/src/d/d_com/d_com_inf_game.cpp +++ b/src/d/d_com/d_com_inf_game.cpp @@ -10,6 +10,7 @@ #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" #include "m_Do/m_Do_ext/m_Do_ext.h" #include "msl_c/string.h" +#include "f/f_op/f_op_scene_mng.h" extern "C" { bool dComIfGp_checkMapShow(void); @@ -280,6 +281,8 @@ void setBottleNum__24dSv_player_item_record_cFUcUc(u8, u8); void setCollect__20dSv_player_collect_cFiUc(int, u8); void setWarpItemData__14dComIfG_play_cFPCc4cXyzsScUcUc(void); void ct__13dComIfG_inf_cFv(void); +void fopScnM_ReRequest__FsUl(void); +void fopScnM_ChangeReq__FP11scene_classssUs(void); } extern u8 lbl_80430188; diff --git a/src/d/d_stage.cpp b/src/d/d_stage.cpp index 65b51f5f14..79e6f9ba1e 100644 --- a/src/d/d_stage.cpp +++ b/src/d/d_stage.cpp @@ -5,6 +5,7 @@ #include "f/f_op/f_op_actor_mng.h" #include "f/f_op/f_op_camera_mng.h" #include "f/f_op/f_op_scene_iter.h" +#include "f/f_op/f_op_scene_mng.h" #include "f/f_pc/f_pc_stdcreate_req.h" #include "global.h" #include "m_Do/m_Do_Reset/m_Do_Reset.h" @@ -73,6 +74,7 @@ void set__19dStage_startStage_cFPCcScsSc(const char*, s8, s16, s8); void stage_tgsc_data_class_NS_dtor(void); void stage_tgsc_data_class(void); void* memalignB__3cMlFiUl(int pAlign, u32 pSize); +void fopScnM_CreateReq__FssUsUl(void); } extern char lbl_80378A50[0x3F8]; // d_stage string literals diff --git a/src/f/f_op/f_op_scene_mng.cpp b/src/f/f_op/f_op_scene_mng.cpp index 31508686d9..0663462f44 100644 --- a/src/f/f_op/f_op_scene_mng.cpp +++ b/src/f/f_op/f_op_scene_mng.cpp @@ -2,27 +2,17 @@ #include "f/f_op/f_op_scene_mng.h" #include "f/f_op/f_op_scene_iter.h" +#include "f/f_op/f_op_scene_req.h" #include "f/f_pc/f_pc_searcher.h" #include "global.h" -// additional symbols needed for f_op_scene_mng.cpp -// autogenerated by split.py v0.4 at 2021-02-13 20:33:37.409404 extern "C" { -void fopScnM_ChangeReq(void); -void fopScnM_CreateReq(void); -void fopScnM_DeleteReq(void); -void fopScnM_Init(void); -void fopScnM_ReRequest(void); -void fopScnM_SearchByID(void); -void fopScnRq_Handler(void); -void fopScnRq_ReRequest(void); -void fopScnRq_Request(void); -void fopScnIt_Judge__FPFPvPv_PvPv(void); +void fopScnRq_Request__FiP11scene_classsPvsUs(void); } // additional symbols needed for f_op_scene_mng.cpp // autogenerated by split.py v0.4 at 2021-02-13 20:33:37.409412 -extern u8 lbl_804505B8; +extern int l_scnRqID; // matches but is proabably wrong void* fopScnM_SearchByID(unsigned int id) { @@ -31,31 +21,35 @@ void* fopScnM_SearchByID(unsigned int id) { return fopScnIt_Judge(fpcSch_JudgeByID, (void*)local_8); } -extern "C" { // fopScnM_ChangeReq__FP11scene_classssUs // fopScnM_ChangeReq(scene_class*, s16, s16, u16) -asm void fopScnM_ChangeReq(void) { - nofralloc -#include "f/f_op_scene_mng/asm/func_8001ECE0.s" +int fopScnM_ChangeReq(scene_class* pScene, s16 param_2, s16 param_3, u16 param_4) { + u32 sceneRequestID = fopScnRq_Request(2, pScene, param_2, 0, param_3, param_4); + + if (sceneRequestID == -1) { + return 0; + } + l_scnRqID = sceneRequestID; + return 1; } // fopScnM_DeleteReq__FP11scene_class // fopScnM_DeleteReq(scene_class*) -asm void fopScnM_DeleteReq(void) { +asm void fopScnM_DeleteReq(scene_class*) { nofralloc #include "f/f_op_scene_mng/asm/func_8001ED3C.s" } // fopScnM_CreateReq__FssUsUl // fopScnM_CreateReq(s16, s16, u16, u32) -asm void fopScnM_CreateReq(void) { +asm void fopScnM_CreateReq(s16, s16, u16, u32) { nofralloc #include "f/f_op_scene_mng/asm/func_8001ED84.s" } // fopScnM_ReRequest__FsUl // fopScnM_ReRequest(s16, u32) -asm void fopScnM_ReRequest(void) { +asm void fopScnM_ReRequest(s16, u32) { nofralloc #include "f/f_op_scene_mng/asm/func_8001EDCC.s" } @@ -73,4 +67,3 @@ asm void fopScnM_Init(void) { nofralloc #include "f/f_op_scene_mng/asm/func_8001EE30.s" } -}; |
