diff options
| author | TakaRikka <38417346+TakaRikka@users.noreply.github.com> | 2021-01-11 08:32:56 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-11 11:32:56 -0500 |
| commit | 7b97550cee460008a12da5355a3ea9f43fca33e0 (patch) | |
| tree | 7763f6b3338e55ed4650ede903fc95eb8826a767 /include | |
| parent | 8cf6641bd470669d31d3b6a57f960f25e032a900 (diff) | |
d_com_inf_game / d_save improvements (#82)
* some dcominfg funcs
* add dcom inlines to d_save
* format
* format
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002E4CC.s | 64 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002EDE0.s | 35 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002F2AC.s | 4 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002F2CC.s | 4 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002F2DC.s | 5 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/asm/func_8002F310.s | 1 | ||||
| -rw-r--r-- | include/d/d_com/d_com_inf_game/d_com_inf_game.h | 67 | ||||
| -rw-r--r-- | include/d/d_save/d_save/asm/func_80033494.s | 35 | ||||
| -rw-r--r-- | include/d/d_save/d_save/asm/func_80033514.s | 36 | ||||
| -rw-r--r-- | include/d/d_save/d_save/d_save.h | 12 | ||||
| -rw-r--r-- | include/functions.h | 12 |
11 files changed, 71 insertions, 204 deletions
diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002E4CC.s b/include/d/d_com/d_com_inf_game/asm/func_8002E4CC.s deleted file mode 100644 index 2d4e26840d..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002E4CC.s +++ /dev/null @@ -1,64 +0,0 @@ -/* 8002E4CC 0002B40C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8002E4D0 0002B410 7C 08 02 A6 */ mflr r0 -/* 8002E4D4 0002B414 90 01 00 24 */ stw r0, 0x24(r1) -/* 8002E4D8 0002B418 39 61 00 20 */ addi r11, r1, 0x20 -/* 8002E4DC 0002B41C 48 33 3C F9 */ bl _savegpr_27 -/* 8002E4E0 0002B420 7C 7E 1B 78 */ mr r30, r3 -/* 8002E4E4 0002B424 3B E0 00 00 */ li r31, 0 -/* 8002E4E8 0002B428 3B 60 00 00 */ li r27, 0 -/* 8002E4EC 0002B42C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002E4F0 0002B430 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002E4F4 0002B434 3B 83 00 9C */ addi r28, r3, 0x9c -/* 8002E4F8 0002B438 57 DD 06 3E */ clrlwi r29, r30, 0x18 -lbl_8002E4FC: -/* 8002E4FC 0002B43C 7F 83 E3 78 */ mr r3, r28 -/* 8002E500 0002B440 7F 64 DB 78 */ mr r4, r27 -/* 8002E504 0002B444 38 A0 00 01 */ li r5, 1 -/* 8002E508 0002B448 48 00 4B 29 */ bl getItem__17dSv_player_item_cCFib -/* 8002E50C 0002B44C 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8002E510 0002B450 7C 1D 00 40 */ cmplw r29, r0 -/* 8002E514 0002B454 40 82 00 10 */ bne lbl_8002E524 -/* 8002E518 0002B458 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 8002E51C 0002B45C 38 03 00 01 */ addi r0, r3, 1 -/* 8002E520 0002B460 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_8002E524: -/* 8002E524 0002B464 3B 7B 00 01 */ addi r27, r27, 1 -/* 8002E528 0002B468 2C 1B 00 3C */ cmpwi r27, 0x3c -/* 8002E52C 0002B46C 41 80 FF D0 */ blt lbl_8002E4FC -/* 8002E530 0002B470 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002E534 0002B474 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002E538 0002B478 88 63 00 13 */ lbz r3, 0x13(r3) -/* 8002E53C 0002B47C 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 8002E540 0002B480 7C 00 18 40 */ cmplw r0, r3 -/* 8002E544 0002B484 40 82 00 10 */ bne lbl_8002E554 -/* 8002E548 0002B488 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 8002E54C 0002B48C 38 03 00 01 */ addi r0, r3, 1 -/* 8002E550 0002B490 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_8002E554: -/* 8002E554 0002B494 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002E558 0002B498 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002E55C 0002B49C 88 63 00 14 */ lbz r3, 0x14(r3) -/* 8002E560 0002B4A0 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 8002E564 0002B4A4 7C 00 18 40 */ cmplw r0, r3 -/* 8002E568 0002B4A8 40 82 00 10 */ bne lbl_8002E578 -/* 8002E56C 0002B4AC 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 8002E570 0002B4B0 38 03 00 01 */ addi r0, r3, 1 -/* 8002E574 0002B4B4 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_8002E578: -/* 8002E578 0002B4B8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002E57C 0002B4BC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002E580 0002B4C0 88 63 00 15 */ lbz r3, 0x15(r3) -/* 8002E584 0002B4C4 57 C0 06 3E */ clrlwi r0, r30, 0x18 -/* 8002E588 0002B4C8 7C 00 18 40 */ cmplw r0, r3 -/* 8002E58C 0002B4CC 40 82 00 10 */ bne lbl_8002E59C -/* 8002E590 0002B4D0 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 8002E594 0002B4D4 38 03 00 01 */ addi r0, r3, 1 -/* 8002E598 0002B4D8 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_8002E59C: -/* 8002E59C 0002B4DC 7F E3 FB 78 */ mr r3, r31 -/* 8002E5A0 0002B4E0 39 61 00 20 */ addi r11, r1, 0x20 -/* 8002E5A4 0002B4E4 48 33 3C 7D */ bl _restgpr_27 -/* 8002E5A8 0002B4E8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8002E5AC 0002B4EC 7C 08 03 A6 */ mtlr r0 -/* 8002E5B0 0002B4F0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8002E5B4 0002B4F4 4E 80 00 20 */ blr diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002EDE0.s b/include/d/d_com/d_com_inf_game/asm/func_8002EDE0.s deleted file mode 100644 index 7ca00604c1..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002EDE0.s +++ /dev/null @@ -1,35 +0,0 @@ -/* 8002EDE0 0002BD20 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8002EDE4 0002BD24 7C 08 02 A6 */ mflr r0 -/* 8002EDE8 0002BD28 90 01 00 14 */ stw r0, 0x14(r1) -/* 8002EDEC 0002BD2C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8002EDF0 0002BD30 93 C1 00 08 */ stw r30, 8(r1) -/* 8002EDF4 0002BD34 3B C0 00 00 */ li r30, 0 -/* 8002EDF8 0002BD38 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002EDFC 0002BD3C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002EE00 0002BD40 3B E3 01 14 */ addi r31, r3, 0x114 -lbl_8002EE04: -/* 8002EE04 0002BD44 7F E3 FB 78 */ mr r3, r31 -/* 8002EE08 0002BD48 57 C4 06 3E */ clrlwi r4, r30, 0x18 -/* 8002EE0C 0002BD4C 48 00 55 91 */ bl isLightDropGetFlag__16dSv_light_drop_cCFUc -/* 8002EE10 0002BD50 2C 03 00 00 */ cmpwi r3, 0 -/* 8002EE14 0002BD54 41 82 00 24 */ beq lbl_8002EE38 -/* 8002EE18 0002BD58 7F E3 FB 78 */ mr r3, r31 -/* 8002EE1C 0002BD5C 57 C4 06 3E */ clrlwi r4, r30, 0x18 -/* 8002EE20 0002BD60 48 00 55 21 */ bl getLightDropNum__16dSv_light_drop_cCFUc -/* 8002EE24 0002BD64 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8002EE28 0002BD68 28 00 00 10 */ cmplwi r0, 0x10 -/* 8002EE2C 0002BD6C 40 80 00 0C */ bge lbl_8002EE38 -/* 8002EE30 0002BD70 38 60 00 01 */ li r3, 1 -/* 8002EE34 0002BD74 48 00 00 14 */ b lbl_8002EE48 -lbl_8002EE38: -/* 8002EE38 0002BD78 3B DE 00 01 */ addi r30, r30, 1 -/* 8002EE3C 0002BD7C 2C 1E 00 03 */ cmpwi r30, 3 -/* 8002EE40 0002BD80 41 80 FF C4 */ blt lbl_8002EE04 -/* 8002EE44 0002BD84 38 60 00 00 */ li r3, 0 -lbl_8002EE48: -/* 8002EE48 0002BD88 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8002EE4C 0002BD8C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8002EE50 0002BD90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8002EE54 0002BD94 7C 08 03 A6 */ mtlr r0 -/* 8002EE58 0002BD98 38 21 00 10 */ addi r1, r1, 0x10 -/* 8002EE5C 0002BD9C 4E 80 00 20 */ blr diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002F2AC.s b/include/d/d_com/d_com_inf_game/asm/func_8002F2AC.s deleted file mode 100644 index dd6295659d..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002F2AC.s +++ /dev/null @@ -1,4 +0,0 @@ -/* 8002F2AC 0002C1EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002F2B0 0002C1F0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002F2B4 0002C1F4 38 63 00 8E */ addi r3, r3, 0x8e -/* 8002F2B8 0002C1F8 4E 80 00 20 */ blr diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002F2CC.s b/include/d/d_com/d_com_inf_game/asm/func_8002F2CC.s deleted file mode 100644 index 0ec43d1595..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002F2CC.s +++ /dev/null @@ -1,4 +0,0 @@ -/* 8002F2CC 0002C20C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002F2D0 0002C210 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002F2D4 0002C214 A8 63 00 8C */ lha r3, 0x8c(r3) -/* 8002F2D8 0002C218 4E 80 00 20 */ blr diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002F2DC.s b/include/d/d_com/d_com_inf_game/asm/func_8002F2DC.s deleted file mode 100644 index b0cc5af5ad..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002F2DC.s +++ /dev/null @@ -1,5 +0,0 @@ -/* 8002F2DC 0002C21C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 8002F2E0 0002C220 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 8002F2E4 0002C224 88 03 00 97 */ lbz r0, 0x97(r3) -/* 8002F2E8 0002C228 7C 03 07 74 */ extsb r3, r0 -/* 8002F2EC 0002C22C 4E 80 00 20 */ blr diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002F310.s b/include/d/d_com/d_com_inf_game/asm/func_8002F310.s deleted file mode 100644 index 2954c7c7ce..0000000000 --- a/include/d/d_com/d_com_inf_game/asm/func_8002F310.s +++ /dev/null @@ -1 +0,0 @@ -/* 8002F310 0002C250 4E 80 00 20 */ blr
\ No newline at end of file diff --git a/include/d/d_com/d_com_inf_game/d_com_inf_game.h b/include/d/d_com/d_com_inf_game/d_com_inf_game.h index c24c05b758..0cf015ec79 100644 --- a/include/d/d_com/d_com_inf_game/d_com_inf_game.h +++ b/include/d/d_com/d_com_inf_game/d_com_inf_game.h @@ -107,8 +107,12 @@ public: dStage_roomControl_c& getRoomControl() { return mRoomControl; } item_func& getGiveItem() { return give_item; } u8& getUnkHeart() { return unk_heart; } - void setUnkWarashibe1(u8 num) { unkWarashibe1 = num; } - void setUnkWarashibe2(u8 num) { unkWarashibe2 = num; } + void setItem(u8 slot, u8 i_no) { + mItemSlot = slot; + mItemID = i_no; + } + void setUnkWarashibe1(u8 num) { mItemSlot = num; } + void setUnkWarashibe2(u8 num) { mItemID = num; } void setZStatus(u8 status, u8 unk) { mZStatus = status; unkZStatus = unk; @@ -171,7 +175,9 @@ private: /* 0x04DA8 */ u8 field_0x4da8[0x5C]; /* 0x04E04 */ u32 field_0x4e04; /* 0x04E08 */ u8 field_0x4e08[0x4]; - /* 0x04E0C */ u8 field_0x4e0c[0x4]; + /* 0x04E0C */ u8 field_0x4e0c; + /* 0x04E0D */ u8 field_0x4e0d; + /* 0x04E0E */ u8 field_0x4e0e[0x2]; /* 0x04E10 */ dDlst_window_c mDrawlistWindow; /* 0x04ED4 */ dComIfG_camera_info_class mCameraInfo; /* 0x04E60 */ u8 field_0x4e60[0x28]; @@ -191,8 +197,8 @@ private: /* 0x04F13 */ u8 field_0x4f13[0x3]; /* 0x04F16 */ u8 unkZStatus; /* 0x04F17 */ u8 field_0x4f17[0x2E]; - /* 0x04F45 */ u8 unkWarashibe1; - /* 0x04F46 */ u8 unkWarashibe2; + /* 0x04F45 */ u8 mItemSlot; + /* 0x04F46 */ u8 mItemID; /* 0x04F47 */ u8 field_0x4f47[0x13]; /* 0x04F5A */ u8 mNowVibration; /* 0x04F5B */ u8 field_0x4f5b[0x23]; @@ -217,6 +223,9 @@ public: // temp for setWarashibeItem void setPlayUnkWarashibe1(u8 num) { play.setUnkWarashibe1(num); } void setPlayUnkWarashibe2(u8 num) { play.setUnkWarashibe2(num); } + void setWorldDark(u8 state) { mWorldDark = state; } + u8 setWorldDark() { return mWorldDark; } + dSv_player_c& getPlayer() { return info.getPlayer(); } dSv_save_c& getSaveFile() { return info.getSaveFile(); } u32 getNowVibration() { return play.getNowVibration(); } @@ -243,18 +252,18 @@ private: /* 0x1D4F8 */ dRes_info_c resource_info2; /* 0x1D51C */ u8 unk20[0x8DC]; /* 0x1DDF8 */ u8 unk21; - /* 0x1DDF9 */ u8 unk22; - /* 0x1DDFA */ u8 unk23; - /* 0x1DDFB */ u8 unk24; - /* 0x1DDFC */ u8 unk25; + /* 0x1DDF9 */ u8 mWorldDark; + /* 0x1DDFA */ u8 mUnk; + /* 0x1DDFB */ u8 mPolyDamage; + /* 0x1DDFC */ u8 mGrassHide; /* 0x1DDFD */ u8 unk26[0x3]; // probably padding /* 0x1DE00 */ u8 unk27; /* 0x1DE01 */ u8 unk28[0x3]; // probably padding /* 0x1DE04 */ u8 unk29; /* 0x1DE05 */ u8 unk30[0x3]; // probably padding /* 0x1DE08 */ u8 unk31; - /* 0x1DE09 */ u8 unk32; - /* 0x1DE0A */ u8 unk33; + /* 0x1DE09 */ u8 mTargetWarpPt; + /* 0x1DE0A */ u8 mSelectWarpPt; /* 0x1DE0B */ u8 unk34[0x5]; // probably padding }; #pragma pack(pop) @@ -434,5 +443,41 @@ inline void dComIfGs_offEventBit(u16 event) { inline int dComIfGs_isEventBit(u16 event) { return g_dComIfG_gameInfo.getSaveFile().getEventFlags().isEventBit(event); } +inline const char* dComIfGs_getLastWarpMarkStageName(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerLastMarkInfo().getName(); +} +inline cXyz dComIfGs_getLastWarpMarkPlayerPos(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerLastMarkInfo().getPos(); +} +inline s16 dComIfGs_getLastWarpMarkPlayerAngleY(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerLastMarkInfo().getAngleY(); +} +inline s8 dComIfGs_getLastWarpMarkRoomNo(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerLastMarkInfo().getRoomNo(); +} +inline char dComIfGs_getLastWarpAcceptStage(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerLastMarkInfo().getWarpAcceptStage(); +} +inline u8 dComIfGs_getSelectEquipClothes(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerStatusA().getSelectEquip(CLOTHING_BITFIELD); +} +inline u8 dComIfGs_getSelectEquipSword(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerStatusA().getSelectEquip(SWORD_BITFIELD); +} +inline u8 dComIfGs_getSelectEquipShield(void) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerStatusA().getSelectEquip(SHIELD_BITFIELD); +} +inline u8 dComIfGs_getLightDropNum(u8 area_id) { + return g_dComIfG_gameInfo.getSaveFile().getLightDrop().getLightDropNum(area_id); +} +inline u8 dComIfGs_getSelectItemIndex(int idx) { + return g_dComIfG_gameInfo.getPlayer().getPlayerStatusA().getSelectItemIndex(idx); +} +inline void dComIfGp_setItem(u8 slot, u8 i_no) { + g_dComIfG_gameInfo.getPlay().setItem(slot, i_no); +} +inline u32 dComIfGp_getNowVibration(void) { + return g_dComIfG_gameInfo.getPlay().getNowVibration(); +} #endif
\ No newline at end of file diff --git a/include/d/d_save/d_save/asm/func_80033494.s b/include/d/d_save/d_save/asm/func_80033494.s deleted file mode 100644 index 0e0b32d5c0..0000000000 --- a/include/d/d_save/d_save/asm/func_80033494.s +++ /dev/null @@ -1,35 +0,0 @@ -/* 80033494 000303D4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80033498 000303D8 7C 08 02 A6 */ mflr r0 -/* 8003349C 000303DC 90 01 00 24 */ stw r0, 0x24(r1) -/* 800334A0 000303E0 39 61 00 20 */ addi r11, r1, 0x20 -/* 800334A4 000303E4 48 32 ED 39 */ bl _savegpr_29 -/* 800334A8 000303E8 3B A0 00 00 */ li r29, 0 -/* 800334AC 000303EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 800334B0 000303F0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 800334B4 000303F4 3B E3 00 9C */ addi r31, r3, 0x9c -lbl_800334B8: -/* 800334B8 000303F8 7F E3 FB 78 */ mr r3, r31 -/* 800334BC 000303FC 38 1D 00 0B */ addi r0, r29, 0xb -/* 800334C0 00030400 54 1E 06 3E */ clrlwi r30, r0, 0x18 -/* 800334C4 00030404 7F C4 F3 78 */ mr r4, r30 -/* 800334C8 00030408 38 A0 00 01 */ li r5, 1 -/* 800334CC 0003040C 4B FF FB 65 */ bl getItem__17dSv_player_item_cCFib -/* 800334D0 00030410 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 800334D4 00030414 28 00 00 FF */ cmplwi r0, 0xff -/* 800334D8 00030418 40 82 00 18 */ bne lbl_800334F0 -/* 800334DC 0003041C 7F E3 FB 78 */ mr r3, r31 -/* 800334E0 00030420 7F C4 F3 78 */ mr r4, r30 -/* 800334E4 00030424 38 A0 00 60 */ li r5, 0x60 -/* 800334E8 00030428 4B FF FA D1 */ bl setItem__17dSv_player_item_cFiUc -/* 800334EC 0003042C 48 00 00 10 */ b lbl_800334FC -lbl_800334F0: -/* 800334F0 00030430 3B BD 00 01 */ addi r29, r29, 1 -/* 800334F4 00030434 2C 1D 00 04 */ cmpwi r29, 4 -/* 800334F8 00030438 41 80 FF C0 */ blt lbl_800334B8 -lbl_800334FC: -/* 800334FC 0003043C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80033500 00030440 48 32 ED 29 */ bl _restgpr_29 -/* 80033504 00030444 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80033508 00030448 7C 08 03 A6 */ mtlr r0 -/* 8003350C 0003044C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80033510 00030450 4E 80 00 20 */ blr
\ No newline at end of file diff --git a/include/d/d_save/d_save/asm/func_80033514.s b/include/d/d_save/d_save/asm/func_80033514.s deleted file mode 100644 index e153d264e8..0000000000 --- a/include/d/d_save/d_save/asm/func_80033514.s +++ /dev/null @@ -1,36 +0,0 @@ -/* 80033514 00030454 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80033518 00030458 7C 08 02 A6 */ mflr r0 -/* 8003351C 0003045C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80033520 00030460 39 61 00 20 */ addi r11, r1, 0x20 -/* 80033524 00030464 48 32 EC B5 */ bl _savegpr_28 -/* 80033528 00030468 7C 9C 23 78 */ mr r28, r4 -/* 8003352C 0003046C 3B A0 00 00 */ li r29, 0 -/* 80033530 00030470 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 80033534 00030474 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 80033538 00030478 3B E3 00 9C */ addi r31, r3, 0x9c -lbl_8003353C: -/* 8003353C 0003047C 7F E3 FB 78 */ mr r3, r31 -/* 80033540 00030480 38 1D 00 0B */ addi r0, r29, 0xb -/* 80033544 00030484 54 1E 06 3E */ clrlwi r30, r0, 0x18 -/* 80033548 00030488 7F C4 F3 78 */ mr r4, r30 -/* 8003354C 0003048C 38 A0 00 01 */ li r5, 1 -/* 80033550 00030490 4B FF FA E1 */ bl getItem__17dSv_player_item_cCFib -/* 80033554 00030494 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 80033558 00030498 28 00 00 FF */ cmplwi r0, 0xff -/* 8003355C 0003049C 40 82 00 18 */ bne lbl_80033574 -/* 80033560 000304A0 7F E3 FB 78 */ mr r3, r31 -/* 80033564 000304A4 7F C4 F3 78 */ mr r4, r30 -/* 80033568 000304A8 7F 85 E3 78 */ mr r5, r28 -/* 8003356C 000304AC 4B FF FA 4D */ bl setItem__17dSv_player_item_cFiUc -/* 80033570 000304B0 48 00 00 10 */ b lbl_80033580 -lbl_80033574: -/* 80033574 000304B4 3B BD 00 01 */ addi r29, r29, 1 -/* 80033578 000304B8 2C 1D 00 04 */ cmpwi r29, 4 -/* 8003357C 000304BC 41 80 FF C0 */ blt lbl_8003353C -lbl_80033580: -/* 80033580 000304C0 39 61 00 20 */ addi r11, r1, 0x20 -/* 80033584 000304C4 48 32 EC A1 */ bl _restgpr_28 -/* 80033588 000304C8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8003358C 000304CC 7C 08 03 A6 */ mtlr r0 -/* 80033590 000304D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80033594 000304D4 4E 80 00 20 */ blr
\ No newline at end of file diff --git a/include/d/d_save/d_save/d_save.h b/include/d/d_save/d_save/d_save.h index 0e1093059d..adbe7868d3 100644 --- a/include/d/d_save/d_save/d_save.h +++ b/include/d/d_save/d_save/d_save.h @@ -330,7 +330,7 @@ public: u16& getLife() { return mCurrentHealth; } u16& getRupee() { return mCurrentRupees; } u16& getOil() { return mCurrentLanternOil; } - u8& getSelectEquip(int item) { return mEquipment[item]; } + u8 getSelectEquip(int item) const { return mEquipment[item]; } void setWalletLV(u8 lv) { mCurrentWallet = lv; } void setOil(u16 oil) { mCurrentLanternOil = oil; } void setMaxOil(u16 max) { mMaxLanternOil = max; } @@ -434,13 +434,19 @@ public: void init(void); void setWarpItemData(const char*, const cXyz&, s16, s8, u8, u8); + const char* getName(void) { return mOoccooStage; } + cXyz getPos(void) { return mOoccooPosition; } + s16 getAngleY(void) { return mOoccooXRotation; } + s8 getRoomNo(void) { return mOoccooRoomId; } + char getWarpAcceptStage(void) { return mWarpAcceptStage; } + private: cXyz mOoccooPosition; s16 mOoccooXRotation; char mOoccooStage[8]; u8 mOoccooSpawnId; - u8 mOoccooRoomId; - char unk24; + s8 mOoccooRoomId; + char mWarpAcceptStage; u8 unk25[3]; }; diff --git a/include/functions.h b/include/functions.h index b0ae7cb65a..54b2092cf6 100644 --- a/include/functions.h +++ b/include/functions.h @@ -2221,7 +2221,7 @@ void fopAcM_orderDoorEvent(void); void daAlink_c_NS_procIronBallSubjectInit(void); void daAlink_c_NS_procLadderUpStartInit(void); void func_8012F1F0(void); -void dComIfGs_getWarpPlayerAngleY(void); +s16 dComIfGs_getWarpPlayerAngleY(void); void func_80141594(void); void func_8010D38C(void); void daAlink_c_NS_checkCoachGuardGame(void); @@ -3091,7 +3091,7 @@ void func_800F9ABC(void); void cM3dGPla_NS_ctor(void); void daAlink_c_NS_setSingleAnimeWolf(void); void mDoExt_MtxCalcOldFrame_NS_initOldFrameMorf(void); -void dComIfGs_getWarpStageName(void); +const char* dComIfGs_getWarpStageName(void); void daAlink_c_NS_procCanoeBoomerangSubjectInit(void); void daAlink_c_NS_procWolfDamageInit(void); void daAlink_c_NS_setRoofHangHandOnSE(void); @@ -3660,7 +3660,7 @@ void fopAcM_createChild(void); void func_800F3894(void); void daAlink_c_NS_initGrabNextMode(void); void func_800F3580(void); -void dComIfGs_getWarpRoomNo(void); +int dComIfGs_getWarpRoomNo(void); void func_801416D4(void); void func_8014166C(void); void func_800F2AD8(void); @@ -6536,14 +6536,14 @@ void dComIfGp_checkEmptySubHeap2D(void); void dComIfGp_createSubExpHeap2D(void); void dComIfGp_destroySubExpHeap2D(void); void dComIfGp_getNowLevel(void); -void dComIfGp_isLightDropMapVisible(void); +BOOL dComIfGp_isLightDropMapVisible(void); void dComIfGp_ret_wp_set(void); void dComIfGp_searchUseSubHeap2D(void); void dComIfGp_setNextStage_X1_(void); -void dComIfGp_world_dark_set(void); +void dComIfGp_world_dark_set(u8); void dComIfGs_BossLife_public_Set(void); void dComIfGs_checkGetInsectNum(void); -void dComIfGs_checkGetItem(void); +u8 dComIfGs_checkGetItem(u8); void dComIfGs_gameStart(void); void dComIfGs_getWarpMarkFlag(void); void dComIfGs_isDungeonItemWarp(void); |
