diff --git a/Progress.md b/Progress.md index eda9e4d6115..90c32b490a3 100644 --- a/Progress.md +++ b/Progress.md @@ -21,8 +21,8 @@ Total | 32.620219% | 1311552 | 4020672 Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- main.dol | 32.620219% | 1311552 | 4020672 -RELs | 33.231064% | 3821680 | 11500324 -Total | 33.072826% | 5133232 | 15520996 +RELs | 33.244942% | 3823276 | 11500324 +Total | 33.083109% | 5134828 | 15520996 ## RELs @@ -180,7 +180,7 @@ d_a_e_yr | 27.591936% | 9964 | 36112 d_a_e_zh | 27.029865% | 9268 | 34288 d_a_e_zm | 28.267015% | 5200 | 18396 d_a_e_zs | 31.358336% | 3980 | 12692 -d_a_econt | 59.836066% | 876 | 1464 +d_a_econt | 100.000000% | 1464 | 1464 d_a_ep | 30.950696% | 5248 | 16956 d_a_formation_mng | 27.806286% | 3468 | 12472 d_a_fr | 34.866377% | 4488 | 12872 @@ -198,7 +198,7 @@ d_a_kytag03 | 23.399898% | 1828 | 7812 d_a_kytag04 | 36.357481% | 2148 | 5908 d_a_kytag05 | 100.000000% | 816 | 816 d_a_kytag06 | 31.287129% | 4424 | 14140 -d_a_kytag07 | 60.062893% | 764 | 1272 +d_a_kytag07 | 100.000000% | 1272 | 1272 d_a_kytag08 | 31.379026% | 1520 | 4844 d_a_kytag09 | 49.936948% | 1584 | 3172 d_a_kytag10 | 31.720430% | 944 | 2976 @@ -559,7 +559,7 @@ d_a_obj_nougu | 42.325581% | 2548 | 6020 d_a_obj_octhashi | 35.325420% | 3452 | 9772 d_a_obj_oiltubo | 40.168244% | 3056 | 7608 d_a_obj_onsen | 49.239281% | 1424 | 2892 -d_a_obj_onsenFire | 61.419753% | 796 | 1296 +d_a_obj_onsenFire | 100.000000% | 1296 | 1296 d_a_obj_onsenTaru | 38.567616% | 3468 | 8992 d_a_obj_ornament_cloth | 38.734568% | 2008 | 5184 d_a_obj_pdoor | 37.254902% | 1900 | 5100 @@ -785,4 +785,4 @@ d_a_vrbox2 | 34.977578% | 2184 | 6244 d_a_warp_bug | 54.940711% | 1112 | 2024 d_a_ykgr | 44.400631% | 2252 | 5072 f_pc_profile_lst | 100.000000% | 28156 | 28156 -Total | 33.231064% | 3821680 | 11500324 +Total | 33.244942% | 3823276 | 11500324 diff --git a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Create__FP10fopAc_ac_c.s deleted file mode 100644 index e94e5a9894d..00000000000 --- a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_805196E4: -/* 805196E4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805196E8 7C 08 02 A6 */ mflr r0 -/* 805196EC 90 01 00 14 */ stw r0, 0x14(r1) -/* 805196F0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 805196F4 93 C1 00 08 */ stw r30, 8(r1) -/* 805196F8 7C 7E 1B 78 */ mr r30, r3 -/* 805196FC 3C 80 80 52 */ lis r4, lit_3870@ha /* 0x8051977C@ha */ -/* 80519700 3B E4 97 7C */ addi r31, r4, lit_3870@l /* 0x8051977C@l */ -/* 80519704 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80519708 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 8051970C 40 82 00 1C */ bne lbl_80519728 -/* 80519710 28 1E 00 00 */ cmplwi r30, 0 -/* 80519714 41 82 00 08 */ beq lbl_8051971C -/* 80519718 4B AF F4 4D */ bl __ct__10fopAc_ac_cFv -lbl_8051971C: -/* 8051971C 80 1E 04 A0 */ lwz r0, 0x4a0(r30) -/* 80519720 60 00 00 08 */ ori r0, r0, 8 -/* 80519724 90 1E 04 A0 */ stw r0, 0x4a0(r30) -lbl_80519728: -/* 80519728 38 60 00 08 */ li r3, 8 -/* 8051972C 3C 80 00 99 */ lis r4, 0x0099 /* 0x00989298@ha */ -/* 80519730 38 84 92 98 */ addi r4, r4, 0x9298 /* 0x00989298@l */ -/* 80519734 38 A0 00 02 */ li r5, 2 -/* 80519738 38 C0 00 00 */ li r6, 0 -/* 8051973C C0 3F 00 00 */ lfs f1, 0(r31) -/* 80519740 C0 5F 00 04 */ lfs f2, 4(r31) -/* 80519744 C0 7F 00 08 */ lfs f3, 8(r31) -/* 80519748 C0 9F 00 0C */ lfs f4, 0xc(r31) -/* 8051974C 4B D4 78 41 */ bl dTimer_createTimer__FlUlUcUcffff -/* 80519750 38 00 00 14 */ li r0, 0x14 -/* 80519754 B0 1E 05 B8 */ sth r0, 0x5b8(r30) -/* 80519758 38 60 00 04 */ li r3, 4 -/* 8051975C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80519760 83 C1 00 08 */ lwz r30, 8(r1) -/* 80519764 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80519768 7C 08 03 A6 */ mtlr r0 -/* 8051976C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80519770 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Delete__FP11econt_class.s b/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Delete__FP11econt_class.s deleted file mode 100644 index 969b4051f98..00000000000 --- a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Delete__FP11econt_class.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_805196BC: -/* 805196BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805196C0 7C 08 02 A6 */ mflr r0 -/* 805196C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 805196C8 38 60 00 08 */ li r3, 8 -/* 805196CC 4B B1 60 D1 */ bl dComIfG_TimerDeleteRequest__Fi -/* 805196D0 38 60 00 01 */ li r3, 1 -/* 805196D4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805196D8 7C 08 03 A6 */ mtlr r0 -/* 805196DC 38 21 00 10 */ addi r1, r1, 0x10 -/* 805196E0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Execute__FP11econt_class.s b/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Execute__FP11econt_class.s deleted file mode 100644 index 00fb17c8b65..00000000000 --- a/asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Execute__FP11econt_class.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_80519664: -/* 80519664 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80519668 7C 08 02 A6 */ mflr r0 -/* 8051966C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80519670 38 80 00 00 */ li r4, 0 -/* 80519674 38 00 00 03 */ li r0, 3 -/* 80519678 7C 09 03 A6 */ mtctr r0 -lbl_8051967C: -/* 8051967C 38 C4 05 B8 */ addi r6, r4, 0x5b8 -/* 80519680 7C A3 32 AE */ lhax r5, r3, r6 -/* 80519684 2C 05 00 00 */ cmpwi r5, 0 -/* 80519688 41 82 00 0C */ beq lbl_80519694 -/* 8051968C 38 05 FF FF */ addi r0, r5, -1 -/* 80519690 7C 03 33 2E */ sthx r0, r3, r6 -lbl_80519694: -/* 80519694 38 84 00 02 */ addi r4, r4, 2 -/* 80519698 42 00 FF E4 */ bdnz lbl_8051967C -/* 8051969C 4B FF FE DD */ bl rider_game__FP11econt_class -/* 805196A0 38 60 00 01 */ li r3, 1 -/* 805196A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805196A8 7C 08 03 A6 */ mtlr r0 -/* 805196AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 805196B0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_econt/d_a_econt/rider_game__FP11econt_class.s b/asm/rel/d/a/d_a_econt/d_a_econt/rider_game__FP11econt_class.s deleted file mode 100644 index 3c2368ed432..00000000000 --- a/asm/rel/d/a/d_a_econt/d_a_econt/rider_game__FP11econt_class.s +++ /dev/null @@ -1,63 +0,0 @@ -lbl_80519578: -/* 80519578 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8051957C 7C 08 02 A6 */ mflr r0 -/* 80519580 90 01 00 14 */ stw r0, 0x14(r1) -/* 80519584 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80519588 7C 7F 1B 78 */ mr r31, r3 -/* 8051958C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80519590 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80519594 38 80 00 2E */ li r4, 0x2e -/* 80519598 88 1F 04 E2 */ lbz r0, 0x4e2(r31) -/* 8051959C 7C 05 07 74 */ extsb r5, r0 -/* 805195A0 4B B1 BD C1 */ bl isSwitch__10dSv_info_cCFii -/* 805195A4 2C 03 00 00 */ cmpwi r3, 0 -/* 805195A8 41 82 00 A8 */ beq lbl_80519650 -/* 805195AC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805195B0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805195B4 88 03 4F AD */ lbz r0, 0x4fad(r3) -/* 805195B8 28 00 00 00 */ cmplwi r0, 0 -/* 805195BC 40 82 00 94 */ bne lbl_80519650 -/* 805195C0 38 00 00 00 */ li r0, 0 -/* 805195C4 3C 60 80 52 */ lis r3, data_805197E0@ha /* 0x805197E0@ha */ -/* 805195C8 98 03 97 E0 */ stb r0, data_805197E0@l(r3) /* 0x805197E0@l */ -/* 805195CC 3C 60 80 52 */ lis r3, s_rd_sub__FPvPv@ha /* 0x80519520@ha */ -/* 805195D0 38 63 95 20 */ addi r3, r3, s_rd_sub__FPvPv@l /* 0x80519520@l */ -/* 805195D4 7F E4 FB 78 */ mr r4, r31 -/* 805195D8 4B B0 7D 61 */ bl fpcEx_Search__FPFPvPv_PvPv -/* 805195DC A8 1F 05 B4 */ lha r0, 0x5b4(r31) -/* 805195E0 2C 00 00 00 */ cmpwi r0, 0 -/* 805195E4 40 82 00 3C */ bne lbl_80519620 -/* 805195E8 A8 1F 05 B8 */ lha r0, 0x5b8(r31) -/* 805195EC 2C 00 00 00 */ cmpwi r0, 0 -/* 805195F0 40 82 00 4C */ bne lbl_8051963C -/* 805195F4 38 00 00 01 */ li r0, 1 -/* 805195F8 B0 1F 05 B4 */ sth r0, 0x5b4(r31) -/* 805195FC 3C 60 80 52 */ lis r3, data_805197E0@ha /* 0x805197E0@ha */ -/* 80519600 88 03 97 E0 */ lbz r0, data_805197E0@l(r3) /* 0x805197E0@l */ -/* 80519604 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 80519608 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8051960C 98 03 00 BB */ stb r0, 0xbb(r3) -/* 80519610 38 60 00 08 */ li r3, 8 -/* 80519614 38 80 00 00 */ li r4, 0 -/* 80519618 4B B1 5F 15 */ bl dComIfG_TimerStart__Fis -/* 8051961C 48 00 00 20 */ b lbl_8051963C -lbl_80519620: -/* 80519620 3C 60 80 52 */ lis r3, data_805197E0@ha /* 0x805197E0@ha */ -/* 80519624 88 03 97 E0 */ lbz r0, data_805197E0@l(r3) /* 0x805197E0@l */ -/* 80519628 28 00 00 00 */ cmplwi r0, 0 -/* 8051962C 40 82 00 10 */ bne lbl_8051963C -/* 80519630 7F E3 FB 78 */ mr r3, r31 -/* 80519634 4B B0 06 49 */ bl fopAcM_delete__FP10fopAc_ac_c -/* 80519638 48 00 00 18 */ b lbl_80519650 -lbl_8051963C: -/* 8051963C 3C 60 80 52 */ lis r3, data_805197E0@ha /* 0x805197E0@ha */ -/* 80519640 88 03 97 E0 */ lbz r0, data_805197E0@l(r3) /* 0x805197E0@l */ -/* 80519644 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 80519648 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8051964C 98 03 00 BC */ stb r0, 0xbc(r3) -lbl_80519650: -/* 80519650 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80519654 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80519658 7C 08 03 A6 */ mtlr r0 -/* 8051965C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80519660 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_econt/d_a_econt/s_rd_sub__FPvPv.s b/asm/rel/d/a/d_a_econt/d_a_econt/s_rd_sub__FPvPv.s deleted file mode 100644 index d3d692fdae2..00000000000 --- a/asm/rel/d/a/d_a_econt/d_a_econt/s_rd_sub__FPvPv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80519520: -/* 80519520 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80519524 7C 08 02 A6 */ mflr r0 -/* 80519528 90 01 00 14 */ stw r0, 0x14(r1) -/* 8051952C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80519530 7C 7F 1B 78 */ mr r31, r3 -/* 80519534 4B AF F7 AD */ bl fopAc_IsActor__FPv -/* 80519538 2C 03 00 00 */ cmpwi r3, 0 -/* 8051953C 41 82 00 24 */ beq lbl_80519560 -/* 80519540 A8 1F 00 08 */ lha r0, 8(r31) -/* 80519544 2C 00 01 D4 */ cmpwi r0, 0x1d4 -/* 80519548 40 82 00 18 */ bne lbl_80519560 -/* 8051954C 3C 60 80 52 */ lis r3, data_805197E0@ha /* 0x805197E0@ha */ -/* 80519550 38 83 97 E0 */ addi r4, r3, data_805197E0@l /* 0x805197E0@l */ -/* 80519554 88 64 00 00 */ lbz r3, 0(r4) -/* 80519558 38 03 00 01 */ addi r0, r3, 1 -/* 8051955C 98 04 00 00 */ stb r0, 0(r4) -lbl_80519560: -/* 80519560 38 60 00 00 */ li r3, 0 -/* 80519564 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80519568 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8051956C 7C 08 03 A6 */ mtlr r0 -/* 80519570 38 21 00 10 */ addi r1, r1, 0x10 -/* 80519574 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Create__FP10fopAc_ac_c.s deleted file mode 100644 index bc7799477fc..00000000000 --- a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,54 +0,0 @@ -lbl_8085A3B0: -/* 8085A3B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8085A3B4 7C 08 02 A6 */ mflr r0 -/* 8085A3B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8085A3BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8085A3C0 93 C1 00 08 */ stw r30, 8(r1) -/* 8085A3C4 7C 7E 1B 78 */ mr r30, r3 -/* 8085A3C8 3C 80 80 86 */ lis r4, lit_3754@ha /* 0x8085A484@ha */ -/* 8085A3CC 3B E4 A4 84 */ addi r31, r4, lit_3754@l /* 0x8085A484@l */ -/* 8085A3D0 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 8085A3D4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 8085A3D8 40 82 00 1C */ bne lbl_8085A3F4 -/* 8085A3DC 28 1E 00 00 */ cmplwi r30, 0 -/* 8085A3E0 41 82 00 08 */ beq lbl_8085A3E8 -/* 8085A3E4 4B 7B E7 81 */ bl __ct__10fopAc_ac_cFv -lbl_8085A3E8: -/* 8085A3E8 80 1E 04 A0 */ lwz r0, 0x4a0(r30) -/* 8085A3EC 60 00 00 08 */ ori r0, r0, 8 -/* 8085A3F0 90 1E 04 A0 */ stw r0, 0x4a0(r30) -lbl_8085A3F4: -/* 8085A3F4 C0 1E 04 D0 */ lfs f0, 0x4d0(r30) -/* 8085A3F8 D0 1E 05 68 */ stfs f0, 0x568(r30) -/* 8085A3FC C0 1E 04 D4 */ lfs f0, 0x4d4(r30) -/* 8085A400 D0 1E 05 6C */ stfs f0, 0x56c(r30) -/* 8085A404 C0 1E 04 D8 */ lfs f0, 0x4d8(r30) -/* 8085A408 D0 1E 05 70 */ stfs f0, 0x570(r30) -/* 8085A40C 80 1E 00 B0 */ lwz r0, 0xb0(r30) -/* 8085A410 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8085A414 B0 1E 05 74 */ sth r0, 0x574(r30) -/* 8085A418 80 1E 00 B0 */ lwz r0, 0xb0(r30) -/* 8085A41C 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f -/* 8085A420 B0 1E 05 76 */ sth r0, 0x576(r30) -/* 8085A424 80 1E 00 B0 */ lwz r0, 0xb0(r30) -/* 8085A428 54 00 86 3E */ rlwinm r0, r0, 0x10, 0x18, 0x1f -/* 8085A42C B0 1E 05 78 */ sth r0, 0x578(r30) -/* 8085A430 C0 1F 00 20 */ lfs f0, 0x20(r31) -/* 8085A434 D0 1E 05 7C */ stfs f0, 0x57c(r30) -/* 8085A438 C0 1F 00 18 */ lfs f0, 0x18(r31) -/* 8085A43C D0 1E 05 80 */ stfs f0, 0x580(r30) -/* 8085A440 C0 3F 00 04 */ lfs f1, 4(r31) -/* 8085A444 C0 1E 04 EC */ lfs f0, 0x4ec(r30) -/* 8085A448 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8085A44C D0 1E 05 88 */ stfs f0, 0x588(r30) -/* 8085A450 38 00 00 00 */ li r0, 0 -/* 8085A454 98 1E 05 8C */ stb r0, 0x58c(r30) -/* 8085A458 38 7E 05 68 */ addi r3, r30, 0x568 -/* 8085A45C 4B 94 D4 41 */ bl dKy_plight_priority_set__FP15LIGHT_INFLUENCE -/* 8085A460 38 60 00 04 */ li r3, 4 -/* 8085A464 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8085A468 83 C1 00 08 */ lwz r30, 8(r1) -/* 8085A46C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8085A470 7C 08 03 A6 */ mtlr r0 -/* 8085A474 38 21 00 10 */ addi r1, r1, 0x10 -/* 8085A478 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Delete__FP13kytag07_class.s b/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Delete__FP13kytag07_class.s deleted file mode 100644 index 999a7a074d0..00000000000 --- a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Delete__FP13kytag07_class.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8085A388: -/* 8085A388 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8085A38C 7C 08 02 A6 */ mflr r0 -/* 8085A390 90 01 00 14 */ stw r0, 0x14(r1) -/* 8085A394 38 63 05 68 */ addi r3, r3, 0x568 -/* 8085A398 4B 94 D5 95 */ bl dKy_plight_cut__FP15LIGHT_INFLUENCE -/* 8085A39C 38 60 00 01 */ li r3, 1 -/* 8085A3A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8085A3A4 7C 08 03 A6 */ mtlr r0 -/* 8085A3A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8085A3AC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Execute__FP13kytag07_class.s b/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Execute__FP13kytag07_class.s deleted file mode 100644 index de0e90e1f73..00000000000 --- a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Execute__FP13kytag07_class.s +++ /dev/null @@ -1,49 +0,0 @@ -lbl_8085A280: -/* 8085A280 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8085A284 7C 08 02 A6 */ mflr r0 -/* 8085A288 90 01 00 14 */ stw r0, 0x14(r1) -/* 8085A28C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8085A290 93 C1 00 08 */ stw r30, 8(r1) -/* 8085A294 7C 7E 1B 78 */ mr r30, r3 -/* 8085A298 3C 60 80 86 */ lis r3, lit_3754@ha /* 0x8085A484@ha */ -/* 8085A29C 3B E3 A4 84 */ addi r31, r3, lit_3754@l /* 0x8085A484@l */ -/* 8085A2A0 88 1E 05 8C */ lbz r0, 0x58c(r30) -/* 8085A2A4 28 00 00 63 */ cmplwi r0, 0x63 -/* 8085A2A8 41 82 00 20 */ beq lbl_8085A2C8 -/* 8085A2AC 38 7E 05 7C */ addi r3, r30, 0x57c -/* 8085A2B0 C0 3E 05 88 */ lfs f1, 0x588(r30) -/* 8085A2B4 C0 5F 00 00 */ lfs f2, 0(r31) -/* 8085A2B8 C0 7F 00 04 */ lfs f3, 4(r31) -/* 8085A2BC C0 9F 00 08 */ lfs f4, 8(r31) -/* 8085A2C0 4B A1 56 BD */ bl cLib_addCalc__FPfffff -/* 8085A2C4 48 00 00 54 */ b lbl_8085A318 -lbl_8085A2C8: -/* 8085A2C8 88 1E 04 BA */ lbz r0, 0x4ba(r30) -/* 8085A2CC 7C 04 07 74 */ extsb r4, r0 -/* 8085A2D0 3C 60 80 45 */ lis r3, mStayNo__20dStage_roomControl_c+0x0@ha /* 0x80450D64@ha */ -/* 8085A2D4 88 03 0D 64 */ lbz r0, mStayNo__20dStage_roomControl_c+0x0@l(r3) /* 0x80450D64@l */ -/* 8085A2D8 7C 00 07 74 */ extsb r0, r0 -/* 8085A2DC 7C 04 00 00 */ cmpw r4, r0 -/* 8085A2E0 41 82 00 1C */ beq lbl_8085A2FC -/* 8085A2E4 38 7E 05 7C */ addi r3, r30, 0x57c -/* 8085A2E8 C0 3F 00 0C */ lfs f1, 0xc(r31) -/* 8085A2EC C0 5F 00 10 */ lfs f2, 0x10(r31) -/* 8085A2F0 C0 7F 00 14 */ lfs f3, 0x14(r31) -/* 8085A2F4 C0 9F 00 18 */ lfs f4, 0x18(r31) -/* 8085A2F8 4B A1 56 85 */ bl cLib_addCalc__FPfffff -lbl_8085A2FC: -/* 8085A2FC C0 3E 05 7C */ lfs f1, 0x57c(r30) -/* 8085A300 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 8085A304 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8085A308 4C 40 13 82 */ cror 2, 0, 2 -/* 8085A30C 40 82 00 0C */ bne lbl_8085A318 -/* 8085A310 7F C3 F3 78 */ mr r3, r30 -/* 8085A314 4B 7B F9 69 */ bl fopAcM_delete__FP10fopAc_ac_c -lbl_8085A318: -/* 8085A318 38 60 00 01 */ li r3, 1 -/* 8085A31C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8085A320 83 C1 00 08 */ lwz r30, 8(r1) -/* 8085A324 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8085A328 7C 08 03 A6 */ mtlr r0 -/* 8085A32C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8085A330 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_IsDelete__FP13kytag07_class.s b/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_IsDelete__FP13kytag07_class.s deleted file mode 100644 index 616b5494be8..00000000000 --- a/asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_IsDelete__FP13kytag07_class.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_8085A334: -/* 8085A334 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8085A338 7C 08 02 A6 */ mflr r0 -/* 8085A33C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8085A340 38 00 00 63 */ li r0, 0x63 -/* 8085A344 98 03 05 8C */ stb r0, 0x58c(r3) -/* 8085A348 C0 23 05 7C */ lfs f1, 0x57c(r3) -/* 8085A34C 3C 60 80 86 */ lis r3, lit_3761@ha /* 0x8085A4A0@ha */ -/* 8085A350 C0 03 A4 A0 */ lfs f0, lit_3761@l(r3) /* 0x8085A4A0@l */ -/* 8085A354 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8085A358 4C 40 13 82 */ cror 2, 0, 2 -/* 8085A35C 40 82 00 0C */ bne lbl_8085A368 -/* 8085A360 38 60 00 01 */ li r3, 1 -/* 8085A364 48 00 00 14 */ b lbl_8085A378 -lbl_8085A368: -/* 8085A368 4B 7C 42 41 */ bl fopOvlpM_IsDoingReq__Fv -/* 8085A36C 20 03 00 01 */ subfic r0, r3, 1 -/* 8085A370 7C 00 00 34 */ cntlzw r0, r0 -/* 8085A374 54 03 D9 7E */ srwi r3, r0, 5 -lbl_8085A378: -/* 8085A378 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8085A37C 7C 08 03 A6 */ mtlr r0 -/* 8085A380 38 21 00 10 */ addi r1, r1, 0x10 -/* 8085A384 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/create__16daObjOnsenFire_cFv.s b/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/create__16daObjOnsenFire_cFv.s deleted file mode 100644 index eb095322c53..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/create__16daObjOnsenFire_cFv.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_80CA8278: -/* 80CA8278 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CA827C 7C 08 02 A6 */ mflr r0 -/* 80CA8280 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CA8284 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80CA8288 7C 7F 1B 78 */ mr r31, r3 -/* 80CA828C 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80CA8290 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80CA8294 40 82 00 1C */ bne lbl_80CA82B0 -/* 80CA8298 28 1F 00 00 */ cmplwi r31, 0 -/* 80CA829C 41 82 00 08 */ beq lbl_80CA82A4 -/* 80CA82A0 4B 37 08 C5 */ bl __ct__10fopAc_ac_cFv -lbl_80CA82A4: -/* 80CA82A4 80 1F 04 A0 */ lwz r0, 0x4a0(r31) -/* 80CA82A8 60 00 00 08 */ ori r0, r0, 8 -/* 80CA82AC 90 1F 04 A0 */ stw r0, 0x4a0(r31) -lbl_80CA82B0: -/* 80CA82B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80CA82B4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80CA82B8 38 63 07 F0 */ addi r3, r3, 0x7f0 -/* 80CA82BC 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 80CA82C0 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 80CA82C4 A0 84 02 F2 */ lhz r4, 0x2f2(r4) -/* 80CA82C8 4B 38 C6 F5 */ bl isEventBit__11dSv_event_cCFUs -/* 80CA82CC 2C 03 00 00 */ cmpwi r3, 0 -/* 80CA82D0 40 82 00 0C */ bne lbl_80CA82DC -/* 80CA82D4 38 60 00 05 */ li r3, 5 -/* 80CA82D8 48 00 00 08 */ b lbl_80CA82E0 -lbl_80CA82DC: -/* 80CA82DC 38 60 00 04 */ li r3, 4 -lbl_80CA82E0: -/* 80CA82E0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80CA82E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CA82E8 7C 08 03 A6 */ mtlr r0 -/* 80CA82EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CA82F0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Create__FP10fopAc_ac_c.s deleted file mode 100644 index 785e413545f..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80CA83FC: -/* 80CA83FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CA8400 7C 08 02 A6 */ mflr r0 -/* 80CA8404 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CA8408 4B FF FE 71 */ bl create__16daObjOnsenFire_cFv -/* 80CA840C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CA8410 7C 08 03 A6 */ mtlr r0 -/* 80CA8414 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CA8418 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Delete__FP16daObjOnsenFire_c.s b/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Delete__FP16daObjOnsenFire_c.s deleted file mode 100644 index 29efb14dba1..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Delete__FP16daObjOnsenFire_c.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_80CA843C: -/* 80CA843C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CA8440 7C 08 02 A6 */ mflr r0 -/* 80CA8444 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CA8448 28 03 00 00 */ cmplwi r3, 0 -/* 80CA844C 41 82 00 0C */ beq lbl_80CA8458 -/* 80CA8450 38 80 00 00 */ li r4, 0 -/* 80CA8454 4B 37 08 39 */ bl __dt__10fopAc_ac_cFv -lbl_80CA8458: -/* 80CA8458 38 60 00 01 */ li r3, 1 -/* 80CA845C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CA8460 7C 08 03 A6 */ mtlr r0 -/* 80CA8464 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CA8468 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Execute__FP16daObjOnsenFire_c.s b/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Execute__FP16daObjOnsenFire_c.s deleted file mode 100644 index 5aa4bd65c62..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Execute__FP16daObjOnsenFire_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80CA841C: -/* 80CA841C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CA8420 7C 08 02 A6 */ mflr r0 -/* 80CA8424 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CA8428 4B FF FE CD */ bl execute__16daObjOnsenFire_cFv -/* 80CA842C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CA8430 7C 08 03 A6 */ mtlr r0 -/* 80CA8434 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CA8438 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/execute__16daObjOnsenFire_cFv.s b/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/execute__16daObjOnsenFire_cFv.s deleted file mode 100644 index 2db6d3ca0d3..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/execute__16daObjOnsenFire_cFv.s +++ /dev/null @@ -1,67 +0,0 @@ -lbl_80CA82F4: -/* 80CA82F4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80CA82F8 7C 08 02 A6 */ mflr r0 -/* 80CA82FC 90 01 00 24 */ stw r0, 0x24(r1) -/* 80CA8300 39 61 00 20 */ addi r11, r1, 0x20 -/* 80CA8304 4B 6B 9E D9 */ bl _savegpr_29 -/* 80CA8308 7C 7D 1B 78 */ mr r29, r3 -/* 80CA830C 3C 60 80 CB */ lis r3, lit_3659@ha /* 0x80CA8474@ha */ -/* 80CA8310 3B C3 84 74 */ addi r30, r3, lit_3659@l /* 0x80CA8474@l */ -/* 80CA8314 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80CA8318 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80CA831C 80 7F 5D 3C */ lwz r3, 0x5d3c(r31) -/* 80CA8320 38 80 01 00 */ li r4, 0x100 -/* 80CA8324 38 BD 04 D0 */ addi r5, r29, 0x4d0 -/* 80CA8328 38 C0 00 00 */ li r6, 0 -/* 80CA832C 38 E0 00 FF */ li r7, 0xff -/* 80CA8330 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */ -/* 80CA8334 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */ -/* 80CA8338 7D 09 43 78 */ mr r9, r8 -/* 80CA833C 39 40 00 00 */ li r10, 0 -/* 80CA8340 C0 3E 00 00 */ lfs f1, 0(r30) -/* 80CA8344 4B 3A 4E 75 */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif -/* 80CA8348 80 7F 5D 3C */ lwz r3, 0x5d3c(r31) -/* 80CA834C 38 80 01 01 */ li r4, 0x101 -/* 80CA8350 38 BD 04 D0 */ addi r5, r29, 0x4d0 -/* 80CA8354 38 C0 00 00 */ li r6, 0 -/* 80CA8358 38 E0 00 FF */ li r7, 0xff -/* 80CA835C 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */ -/* 80CA8360 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */ -/* 80CA8364 7D 09 43 78 */ mr r9, r8 -/* 80CA8368 39 40 00 00 */ li r10, 0 -/* 80CA836C C0 3E 00 00 */ lfs f1, 0(r30) -/* 80CA8370 4B 3A 4E 49 */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif -/* 80CA8374 80 7F 5D 3C */ lwz r3, 0x5d3c(r31) -/* 80CA8378 38 80 01 03 */ li r4, 0x103 -/* 80CA837C 38 BD 04 D0 */ addi r5, r29, 0x4d0 -/* 80CA8380 38 C0 00 00 */ li r6, 0 -/* 80CA8384 38 E0 00 FF */ li r7, 0xff -/* 80CA8388 3D 00 80 45 */ lis r8, g_whiteColor@ha /* 0x80450608@ha */ -/* 80CA838C 39 08 06 08 */ addi r8, r8, g_whiteColor@l /* 0x80450608@l */ -/* 80CA8390 7D 09 43 78 */ mr r9, r8 -/* 80CA8394 39 40 00 00 */ li r10, 0 -/* 80CA8398 C0 3E 00 00 */ lfs f1, 0(r30) -/* 80CA839C 4B 3A 4E 1D */ bl setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif -/* 80CA83A0 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008026C@ha */ -/* 80CA83A4 38 03 02 6C */ addi r0, r3, 0x026C /* 0x0008026C@l */ -/* 80CA83A8 90 01 00 08 */ stw r0, 8(r1) -/* 80CA83AC 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 80CA83B0 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 80CA83B4 80 63 00 00 */ lwz r3, 0(r3) -/* 80CA83B8 38 81 00 08 */ addi r4, r1, 8 -/* 80CA83BC 38 BD 04 D0 */ addi r5, r29, 0x4d0 -/* 80CA83C0 38 C0 00 00 */ li r6, 0 -/* 80CA83C4 38 E0 00 00 */ li r7, 0 -/* 80CA83C8 C0 3E 00 04 */ lfs f1, 4(r30) -/* 80CA83CC FC 40 08 90 */ fmr f2, f1 -/* 80CA83D0 C0 7E 00 08 */ lfs f3, 8(r30) -/* 80CA83D4 FC 80 18 90 */ fmr f4, f3 -/* 80CA83D8 39 00 00 00 */ li r8, 0 -/* 80CA83DC 4B 60 41 31 */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc -/* 80CA83E0 38 60 00 01 */ li r3, 1 -/* 80CA83E4 39 61 00 20 */ addi r11, r1, 0x20 -/* 80CA83E8 4B 6B 9E 41 */ bl _restgpr_29 -/* 80CA83EC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80CA83F0 7C 08 03 A6 */ mtlr r0 -/* 80CA83F4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80CA83F8 4E 80 00 20 */ blr diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index e92b228be15..cc18f4a3983 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -19,6 +19,7 @@ #include "f_op/f_op_scene_mng.h" class dTimer_c; + class __d_timer_info_c { public: __d_timer_info_c() { @@ -701,6 +702,8 @@ int dComIfG_resDelete(request_of_phase_process_class* i_phase, char const* resNa int dComIfG_changeOpeningScene(scene_class* scene, s16 procName); int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* arc_name); int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* resName, JKRHeap* heap); +int dComIfG_TimerDeleteRequest(int i_mode); +int dComIfG_TimerStart(int i_mode, s16 i_time); inline void dComIfG_setBrightness(u8 brightness) { g_dComIfG_gameInfo.mFadeBrightness = brightness; @@ -2733,6 +2736,13 @@ inline JPABaseEmitter* dComIfGp_particle_setColor(u16 param_0, const cXyz* param NULL, NULL, NULL, -1, NULL); } +inline void dComIfGp_particle_setSimple(u16 param_0,cXyz* param_1, + u8 param_2, _GXColor& param_3, + _GXColor& param_4, int param_5, + float param_6) { + g_dComIfG_gameInfo.play.getParticle()->setSimple(param_0,param_1,0,param_2,param_3,param_4,param_5,param_6); +} + inline void dComIfGp_particle_levelEmitterOnEventMove(u32 param_0) { g_dComIfG_gameInfo.play.getParticle()->forceOnEventMove(param_0); } diff --git a/include/d/d_timer.h b/include/d/d_timer.h index 6f7899da0db..63d6f14f7c8 100644 --- a/include/d/d_timer.h +++ b/include/d/d_timer.h @@ -11,6 +11,8 @@ #include "dolphin/types.h" s32 dTimer_createStockTimer(); +s32 dTimer_createTimer(s32 param_0, u32 param_1, u8 param_2, u8 param_3, f32 param_4, f32 param_5, + f32 param_6, f32 param_7); class dDlst_TimerScrnDraw_c : public dDlst_base_c { public: diff --git a/include/d/kankyo/d_kankyo.h b/include/d/kankyo/d_kankyo.h index 28afbb87f71..051412b54e8 100644 --- a/include/d/kankyo/d_kankyo.h +++ b/include/d/kankyo/d_kankyo.h @@ -557,6 +557,7 @@ void dKy_setLight_nowroom_actor(dKy_tevstr_c*); void dKy_setLight_again(); void dKy_GxFog_tevstr_set(dKy_tevstr_c*); void dKy_plight_set(LIGHT_INFLUENCE* param_0); +void dKy_plight_priority_set(LIGHT_INFLUENCE* param_0); void dKy_tevstr_init(dKy_tevstr_c* param_0, s8 param_1, u8 param_2); SND_INFLUENCE* dKy_Sound_get(); void dKy_plight_cut(LIGHT_INFLUENCE* param_0); diff --git a/include/rel/d/a/d_a_econt/d_a_econt.h b/include/rel/d/a/d_a_econt/d_a_econt.h index bbc936e0bd2..b68edb7a3c3 100644 --- a/include/rel/d/a/d_a_econt/d_a_econt.h +++ b/include/rel/d/a/d_a_econt/d_a_econt.h @@ -1,6 +1,15 @@ #ifndef D_A_ECONT_H #define D_A_ECONT_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" +#include "d/com/d_com_inf_game.h" + +class econt_class : public fopEn_enemy_c { +public: + /* 0x5AC */ u8 field_0x5ac[8]; + /* 0x5B4 */ s16 field_0x5b4; + /* 0x5B6 */ u8 field_0x5b6; + /* 0x5B8 */ s16 field_0x5b8[3]; +}; #endif /* D_A_ECONT_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h b/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h index 4fc2986d0ac..62545b30c43 100644 --- a/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h +++ b/include/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h @@ -1,6 +1,13 @@ #ifndef D_A_KYTAG07_H #define D_A_KYTAG07_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +class kytag07_class : public fopAc_ac_c { +public: + /* 0x568 */ LIGHT_INFLUENCE mLightInfluence; + /* 0x588 */ f32 field_0x588; + /* 0x58C */ u8 field_0x58c; +}; #endif /* D_A_KYTAG07_H */ diff --git a/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h b/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h index 1ef63831001..8bc4ffd432c 100644 --- a/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h +++ b/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h @@ -1,6 +1,13 @@ #ifndef D_A_OBJ_ONSENFIRE_H #define D_A_OBJ_ONSENFIRE_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" +#include "d/com/d_com_inf_game.h" + +class daObjOnsenFire_c : public fopAc_ac_c { +public: + /* 80CA8278 */ int create(); + /* 80CA82F4 */ int execute(); +}; #endif /* D_A_OBJ_ONSENFIRE_H */ diff --git a/rel/d/a/d_a_do/d_a_do.cpp b/rel/d/a/d_a_do/d_a_do.cpp index e5f2e3f4879..66c51d302e6 100644 --- a/rel/d/a/d_a_do/d_a_do.cpp +++ b/rel/d/a/d_a_do/d_a_do.cpp @@ -1467,7 +1467,7 @@ static void do_walk_run(do_class* i_this) { if (i_this->field_0x5e8 >= FLOAT_LABEL(lit_3665)) { i_this->mAction = ACT_RUN; i_this->mStayStatus = 0; - i_this->mSound.startSound(JAISoundID(Z2SE_DOG_BARK), 0, -1); + i_this->mSound.startSound(Z2SE_DOG_BARK, 0, -1); } } default: { @@ -1790,7 +1790,7 @@ static void do_wait_1(do_class* i_this) { distance = 127.0; } - i_this->mSound.startLevelSound(JAISoundID(Z2SE_DOG_V_CALL_HELP), distance, -1); + i_this->mSound.startLevelSound(Z2SE_DOG_V_CALL_HELP, distance, -1); } } #else @@ -2677,7 +2677,7 @@ static void action(do_class* i_this) { if (i_this->field_0x6ae != 0) { i_this->field_0x6ae--; if (i_this->field_0x6ae == 0) { - i_this->mSound.startSound(JAISoundID(Z2SE_M007_DOG_COME_RUNNING), 0, -1); + i_this->mSound.startSound(Z2SE_M007_DOG_COME_RUNNING, 0, -1); } } @@ -2828,7 +2828,7 @@ static void action(do_class* i_this) { (GXColor*)0, (cXyz*)0)); } - i_this->mSound.startSound(JAISoundID(Z2SE_CM_BODYFALL_WATER_S), 0, -1); + i_this->mSound.startSound(Z2SE_CM_BODYFALL_WATER_S, 0, -1); } } } diff --git a/rel/d/a/d_a_econt/d_a_econt.cpp b/rel/d/a/d_a_econt/d_a_econt.cpp index 1632879edbc..32d2edca23b 100644 --- a/rel/d/a/d_a_econt/d_a_econt.cpp +++ b/rel/d/a/d_a_econt/d_a_econt.cpp @@ -1,167 +1,114 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_econt -// +/** + * d_a_econt.cpp + * Encounter + */ #include "rel/d/a/d_a_econt/d_a_econt.h" -#include "dol2asm.h" -#include "dolphin/types.h" +#include "d/d_procname.h" +#include "d/d_timer.h" +#include "f_pc/f_pc_executor.h" -// -// Types: -// - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct econt_class {}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -// -// Forward References: -// - -extern "C" static bool daEcont_Draw__FP11econt_class(); -extern "C" static void s_rd_sub__FPvPv(); -extern "C" static void rider_game__FP11econt_class(); -extern "C" static void daEcont_Execute__FP11econt_class(); -extern "C" static bool daEcont_IsDelete__FP11econt_class(); -extern "C" static void daEcont_Delete__FP11econt_class(); -extern "C" static void daEcont_Create__FP10fopAc_ac_c(); -extern "C" extern void* g_profile_ECONT[12]; - -// -// External References: -// - -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAc_IsActor__FPv(); -extern "C" void fopAcM_delete__FP10fopAc_ac_c(); -extern "C" void fpcEx_Search__FPFPvPv_PvPv(); -extern "C" void dComIfG_TimerStart__Fis(); -extern "C" void dComIfG_TimerDeleteRequest__Fi(); -extern "C" void isSwitch__10dSv_info_cCFii(); -extern "C" void dTimer_createTimer__FlUlUcUcffff(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_meter2_info[248]; extern "C" extern u8 data_805197E0[4]; -// -// Declarations: -// - /* 80519518-80519520 000078 0008+00 1/0 0/0 0/0 .text daEcont_Draw__FP11econt_class */ -static bool daEcont_Draw(econt_class* param_0) { - return true; +static int daEcont_Draw(econt_class* i_this) { + return 1; } /* 80519520-80519578 000080 0058+00 1/1 0/0 0/0 .text s_rd_sub__FPvPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void s_rd_sub(void* param_0, void* param_1) { - nofralloc -#include "asm/rel/d/a/d_a_econt/d_a_econt/s_rd_sub__FPvPv.s" +static void* s_rd_sub(void* i_this, void* param_1) { + if (fopAcM_IsActor(i_this) && fopAcM_GetName(i_this) == PROC_E_RD) { + data_805197E0[0]++; + } + return 0; } -#pragma pop /* 80519578-80519664 0000D8 00EC+00 1/1 0/0 0/0 .text rider_game__FP11econt_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void rider_game(econt_class* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_econt/d_a_econt/rider_game__FP11econt_class.s" +static void rider_game(econt_class* i_this) { + if (dComIfGs_isSwitch(0x2e,fopAcM_GetRoomNo(i_this)) && i_dComIfGp_event_runCheck() == 0) { + data_805197E0[0] = 0; + i_fpcM_Search(s_rd_sub,i_this); + + if (i_this->field_0x5b4 == 0) { + if (i_this->field_0x5b8[0] == 0) { + i_this->field_0x5b4 = 1; + dMeter2Info_setMaxCount(data_805197E0[0]); + dComIfG_TimerStart(8,0); + } + } else if (data_805197E0[0] == 0) { + fopAcM_delete(i_this); + return; + } + + dMeter2Info_setNowCount(data_805197E0[0]); + } } -#pragma pop /* 80519664-805196B4 0001C4 0050+00 1/0 0/0 0/0 .text daEcont_Execute__FP11econt_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daEcont_Execute(econt_class* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Execute__FP11econt_class.s" +static int daEcont_Execute(econt_class* i_this) { + for (int i = 0; i < 3; i++) { + if (i_this->field_0x5b8[i] != 0) { + i_this->field_0x5b8[i] -= 1; + } + } + rider_game(i_this); + return 1; } -#pragma pop /* 805196B4-805196BC 000214 0008+00 1/0 0/0 0/0 .text daEcont_IsDelete__FP11econt_class */ -static bool daEcont_IsDelete(econt_class* param_0) { - return true; +static int daEcont_IsDelete(econt_class* i_this) { + return 1; } /* 805196BC-805196E4 00021C 0028+00 1/0 0/0 0/0 .text daEcont_Delete__FP11econt_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daEcont_Delete(econt_class* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Delete__FP11econt_class.s" +static int daEcont_Delete(econt_class* i_this) { + dComIfG_TimerDeleteRequest(8); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 8051977C-80519780 000000 0004+00 1/1 0/0 0/0 .rodata @3870 */ -SECTION_RODATA static f32 const lit_3870 = 210.0f; -COMPILER_STRIP_GATE(0x8051977C, &lit_3870); - -/* 80519780-80519784 000004 0004+00 0/1 0/0 0/0 .rodata @3871 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3871 = 410.0f; -COMPILER_STRIP_GATE(0x80519780, &lit_3871); -#pragma pop - -/* 80519784-80519788 000008 0004+00 0/1 0/0 0/0 .rodata @3872 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3872 = 32.0f; -COMPILER_STRIP_GATE(0x80519784, &lit_3872); -#pragma pop - -/* 80519788-8051978C 00000C 0004+00 0/1 0/0 0/0 .rodata @3873 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3873 = 419.0f; -COMPILER_STRIP_GATE(0x80519788, &lit_3873); -#pragma pop /* 805196E4-80519774 000244 0090+00 1/0 0/0 0/0 .text daEcont_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daEcont_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_econt/d_a_econt/daEcont_Create__FP10fopAc_ac_c.s" +static int daEcont_Create(fopAc_ac_c* i_this) { + econt_class* encounter = (econt_class*)i_this; + if (!fopAcM_CheckCondition(encounter, 8)) { + new (encounter) econt_class(); + fopAcM_OnCondition(encounter, 8); + } + dTimer_createTimer(8,0x989298,2,0,210.0f,410.0f,32.0f,419.0f); + encounter->field_0x5b8[0] = 0x14; + return cPhs_COMPLEATE_e; + } -#pragma pop /* ############################################################################################## */ /* 8051978C-805197AC -00001 0020+00 1/0 0/0 0/0 .data l_daEcont_Method */ -SECTION_DATA static void* l_daEcont_Method[8] = { - (void*)daEcont_Create__FP10fopAc_ac_c, - (void*)daEcont_Delete__FP11econt_class, - (void*)daEcont_Execute__FP11econt_class, - (void*)daEcont_IsDelete__FP11econt_class, - (void*)daEcont_Draw__FP11econt_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daEcont_Method = { + (process_method_func)daEcont_Create, + (process_method_func)daEcont_Delete, + (process_method_func)daEcont_Execute, + (process_method_func)daEcont_IsDelete, + (process_method_func)daEcont_Draw }; /* 805197AC-805197DC -00001 0030+00 0/0 0/0 1/0 .data g_profile_ECONT */ -SECTION_DATA extern void* g_profile_ECONT[12] = { - (void*)0xFFFFFFFD, (void*)0x0008FFFD, - (void*)0x02E30000, (void*)&g_fpcLf_Method, - (void*)0x000005C0, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x009B0000, (void*)&l_daEcont_Method, - (void*)0x00044000, (void*)NULL, +extern actor_process_profile_definition g_profile_ECONT = { + -3, // mLayerID + 8, // mListID + -3, // mListPrio + PROC_ECONT, // mProcName + 0, // padding + &g_fpcLf_Method.mBase, // mSubMtd + sizeof(econt_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // mSubMtd + 0x009B, // mPriority + 0, // padding + 0, // padding + &l_daEcont_Method, // mSubMtd + 0x00044000, // mStatus + 0, // mActorType + 0, // mCullType + 0, // padding + 0 // padding }; diff --git a/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp b/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp index 32d5cc2945a..d6d1308af8d 100644 --- a/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp +++ b/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp @@ -1,183 +1,106 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_kytag07 -// +/** + * d_a_kytag07.cpp + * Environment Tag 7 + */ #include "rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h" -#include "dol2asm.h" -#include "dolphin/types.h" - -// -// Types: -// - -struct kytag07_class {}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct LIGHT_INFLUENCE {}; - -// -// Forward References: -// - -extern "C" static bool daKytag07_Draw__FP13kytag07_class(); -extern "C" static void daKytag07_Execute__FP13kytag07_class(); -extern "C" static void daKytag07_IsDelete__FP13kytag07_class(); -extern "C" static void daKytag07_Delete__FP13kytag07_class(); -extern "C" static void daKytag07_Create__FP10fopAc_ac_c(); -extern "C" extern void* g_profile_KYTAG07[12]; - -// -// External References: -// - -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAcM_delete__FP10fopAc_ac_c(); -extern "C" void fopOvlpM_IsDoingReq__Fv(); -extern "C" void dKy_plight_priority_set__FP15LIGHT_INFLUENCE(); -extern "C" void dKy_plight_cut__FP15LIGHT_INFLUENCE(); -extern "C" void cLib_addCalc__FPfffff(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; - -// -// Declarations: -// +#include "d/d_stage.h" +#include "d/d_procname.h" +#include "f_op/f_op_overlap_mng.h" /* 8085A278-8085A280 000078 0008+00 1/0 0/0 0/0 .text daKytag07_Draw__FP13kytag07_class */ -static bool daKytag07_Draw(kytag07_class* param_0) { - return true; +static int daKytag07_Draw(kytag07_class* param_0) { + return 1; } -/* ############################################################################################## */ -/* 8085A484-8085A488 000000 0004+00 2/2 0/0 0/0 .rodata @3754 */ -SECTION_RODATA static f32 const lit_3754 = 1.0f / 10.0f; -COMPILER_STRIP_GATE(0x8085A484, &lit_3754); - -/* 8085A488-8085A48C 000004 0004+00 0/2 0/0 0/0 .rodata @3755 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3755 = 1000.0f; -COMPILER_STRIP_GATE(0x8085A488, &lit_3755); -#pragma pop - -/* 8085A48C-8085A490 000008 0004+00 0/1 0/0 0/0 .rodata @3756 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_3756 = 0x3A83126F; -COMPILER_STRIP_GATE(0x8085A48C, &lit_3756); -#pragma pop - -/* 8085A490-8085A494 00000C 0004+00 0/1 0/0 0/0 .rodata @3757 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_3757[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x8085A490, &lit_3757); -#pragma pop - -/* 8085A494-8085A498 000010 0004+00 0/1 0/0 0/0 .rodata @3758 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3758 = 0.25f; -COMPILER_STRIP_GATE(0x8085A494, &lit_3758); -#pragma pop - -/* 8085A498-8085A49C 000014 0004+00 0/1 0/0 0/0 .rodata @3759 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3759 = 10000.0f; -COMPILER_STRIP_GATE(0x8085A498, &lit_3759); -#pragma pop - -/* 8085A49C-8085A4A0 000018 0004+00 0/2 0/0 0/0 .rodata @3760 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3760 = 1.0f; -COMPILER_STRIP_GATE(0x8085A49C, &lit_3760); -#pragma pop - -/* 8085A4A0-8085A4A4 00001C 0004+00 1/2 0/0 0/0 .rodata @3761 */ -SECTION_RODATA static f32 const lit_3761 = 1.0f / 100.0f; -COMPILER_STRIP_GATE(0x8085A4A0, &lit_3761); - /* 8085A280-8085A334 000080 00B4+00 1/0 0/0 0/0 .text daKytag07_Execute__FP13kytag07_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daKytag07_Execute(kytag07_class* param_0) { - nofralloc -#include "asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Execute__FP13kytag07_class.s" +static int daKytag07_Execute(kytag07_class* i_this) { + if (i_this->field_0x58c != 99) { + cLib_addCalc(&i_this->mLightInfluence.mPow,i_this->field_0x588,0.1f,1000.0f,0.001f); + } else { + if (i_this->orig.roomNo != dStage_roomControl_c::getStayNo()) { + cLib_addCalc(&i_this->mLightInfluence.mPow,0.0f,0.25f,10000.0f,1.0f); + } + + if (i_this->mLightInfluence.mPow <= 0.01f) { + fopAcM_delete(i_this); + } + } + + return 1; } -#pragma pop /* 8085A334-8085A388 000134 0054+00 1/0 0/0 0/0 .text daKytag07_IsDelete__FP13kytag07_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daKytag07_IsDelete(kytag07_class* param_0) { - nofralloc -#include "asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_IsDelete__FP13kytag07_class.s" +static int daKytag07_IsDelete(kytag07_class* i_this) { + i_this->field_0x58c = 99; + + if (i_this->mLightInfluence.mPow <= 0.01f) { + return 1; + } else { + return fopOvlpM_IsDoingReq() == 1 ? 1 : 0; + } } -#pragma pop /* 8085A388-8085A3B0 000188 0028+00 1/0 0/0 0/0 .text daKytag07_Delete__FP13kytag07_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daKytag07_Delete(kytag07_class* param_0) { - nofralloc -#include "asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Delete__FP13kytag07_class.s" +static int daKytag07_Delete(kytag07_class* i_this) { + dKy_plight_cut(&i_this->mLightInfluence); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 8085A4A4-8085A4A8 000020 0004+00 0/1 0/0 0/0 .rodata @3807 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_3807 = 0x2EDBE6FF; -COMPILER_STRIP_GATE(0x8085A4A4, &lit_3807); -#pragma pop /* 8085A3B0-8085A47C 0001B0 00CC+00 1/0 0/0 0/0 .text daKytag07_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daKytag07_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/kytag/d_a_kytag07/d_a_kytag07/daKytag07_Create__FP10fopAc_ac_c.s" +static int daKytag07_Create(fopAc_ac_c* i_this) { + kytag07_class* kytag07 = (kytag07_class*)i_this; + + if (!fopAcM_CheckCondition(kytag07, 8)) { + new (kytag07) kytag07_class(); + fopAcM_OnCondition(kytag07, 8); + } + + kytag07->mLightInfluence.mPosition = kytag07->current.pos; + kytag07->mLightInfluence.mColor.r = fopAcM_GetParam(i_this) & 0xFF; + kytag07->mLightInfluence.mColor.g = fopAcM_GetParam(i_this) >> 8 & 0xFF; + kytag07->mLightInfluence.mColor.b = fopAcM_GetParam(i_this) >> 16 & 0xFF; + kytag07->mLightInfluence.mPow = 1e-10; + kytag07->mLightInfluence.mFluctuation = 1.0f; + kytag07->field_0x588 = 1000.0f * kytag07->mScale.x; + kytag07->field_0x58c = 0; + + + dKy_plight_priority_set(&kytag07->mLightInfluence); + return cPhs_COMPLEATE_e; } -#pragma pop /* ############################################################################################## */ /* 8085A4A8-8085A4C8 -00001 0020+00 1/0 0/0 0/0 .data l_daKytag07_Method */ -SECTION_DATA static void* l_daKytag07_Method[8] = { - (void*)daKytag07_Create__FP10fopAc_ac_c, - (void*)daKytag07_Delete__FP13kytag07_class, - (void*)daKytag07_Execute__FP13kytag07_class, - (void*)daKytag07_IsDelete__FP13kytag07_class, - (void*)daKytag07_Draw__FP13kytag07_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daKytag07_Method = { + (process_method_func)daKytag07_Create, + (process_method_func)daKytag07_Delete, + (process_method_func)daKytag07_Execute, + (process_method_func)daKytag07_IsDelete, + (process_method_func)daKytag07_Draw }; /* 8085A4C8-8085A4F8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_KYTAG07 */ -SECTION_DATA extern void* g_profile_KYTAG07[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02B10000, (void*)&g_fpcLf_Method, - (void*)0x00000590, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x00650000, (void*)&l_daKytag07_Method, - (void*)0x00044000, (void*)NULL, +extern actor_process_profile_definition g_profile_KYTAG07 = { + -3, // mLayerID + 7, // mListID + -3, // mListPrio + PROC_KYTAG07, // mProcName + 0, // padding + &g_fpcLf_Method.mBase, // mSubMtd + sizeof(kytag07_class), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // mSubMtd + 0x0065, // mPriority + 0, // padding + 0, // padding + &l_daKytag07_Method, // mSubMtd + 0x00044000, // mStatus + 0, // mActorType + 0, // mCullType + 0, // padding + 0 // padding }; diff --git a/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp b/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp index 8cf59378b32..47da56e8c18 100644 --- a/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp +++ b/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp @@ -1,185 +1,77 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_onsenFire -// +/** + * d_a_obj_onsenFire.cpp + * Object - Hotspring Fire + */ #include "rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h" -#include "dol2asm.h" -#include "dolphin/types.h" - -// -// Types: -// - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daObjOnsenFire_c { - /* 80CA8278 */ void create(); - /* 80CA82F4 */ void execute(); -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct cXyz {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004D1B8 */ void setSimple(u16, cXyz const*, dKy_tevstr_c const*, u8, _GXColor const&, - _GXColor const&, int, f32); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -// -// Forward References: -// - -extern "C" void create__16daObjOnsenFire_cFv(); -extern "C" void execute__16daObjOnsenFire_cFv(); -extern "C" static void daObjOnsenFire_Create__FP10fopAc_ac_c(); -extern "C" static void daObjOnsenFire_Execute__FP16daObjOnsenFire_c(); -extern "C" static void daObjOnsenFire_Delete__FP16daObjOnsenFire_c(); -extern "C" extern void* g_profile_OBJ_ONSEN_FIRE[12]; - -// -// External References: -// - -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void __dt__10fopAc_ac_cFv(); -extern "C" void isEventBit__11dSv_event_cCFUs(); -extern "C" void setSimple__13dPa_control_cFUsPC4cXyzPC12dKy_tevstr_cUcRC8_GXColorRC8_GXColorif(); -extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u32 g_whiteColor; -extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; - -// -// Declarations: -// +#include "d/d_procname.h" /* 80CA8278-80CA82F4 000078 007C+00 1/1 0/0 0/0 .text create__16daObjOnsenFire_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daObjOnsenFire_c::create() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/create__16daObjOnsenFire_cFv.s" +int daObjOnsenFire_c::create() { + if (!fopAcM_CheckCondition(this, 8)) { + new (this) daObjOnsenFire_c(); + fopAcM_OnCondition(this, 8); + } + if (i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[377]) == 0) { + return cPhs_ERROR_e; + } + return cPhs_COMPLEATE_e; } -#pragma pop - -/* ############################################################################################## */ -/* 80CA8474-80CA8478 000000 0004+00 1/1 0/0 0/0 .rodata @3659 */ -SECTION_RODATA static u8 const lit_3659[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80CA8474, &lit_3659); - -/* 80CA8478-80CA847C 000004 0004+00 0/1 0/0 0/0 .rodata @3660 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3660 = 1.0f; -COMPILER_STRIP_GATE(0x80CA8478, &lit_3660); -#pragma pop - -/* 80CA847C-80CA8480 000008 0004+00 0/1 0/0 0/0 .rodata @3661 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3661 = -1.0f; -COMPILER_STRIP_GATE(0x80CA847C, &lit_3661); -#pragma pop /* 80CA82F4-80CA83FC 0000F4 0108+00 1/1 0/0 0/0 .text execute__16daObjOnsenFire_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daObjOnsenFire_c::execute() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/execute__16daObjOnsenFire_cFv.s" +int daObjOnsenFire_c::execute() { + dComIfGp_particle_setSimple(0x100,¤t.pos,0xff,g_whiteColor,g_whiteColor,0,0.0f); + dComIfGp_particle_setSimple(0x101,¤t.pos,0xff,g_whiteColor,g_whiteColor,0,0.0f); + dComIfGp_particle_setSimple(0x103,¤t.pos,0xff,g_whiteColor,g_whiteColor,0,0.0f); + Z2AudioMgr::getInterface()->mSeMgr.seStartLevel(Z2SE_OBJ_ONSEN_WARM_FIRE,¤t.pos,0,0,1.0f,1.0f,-1.0f,-1.0f,0); + return 1; } -#pragma pop /* 80CA83FC-80CA841C 0001FC 0020+00 1/0 0/0 0/0 .text daObjOnsenFire_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daObjOnsenFire_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Create__FP10fopAc_ac_c.s" +static int daObjOnsenFire_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); } -#pragma pop /* 80CA841C-80CA843C 00021C 0020+00 1/0 0/0 0/0 .text daObjOnsenFire_Execute__FP16daObjOnsenFire_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daObjOnsenFire_Execute(daObjOnsenFire_c* param_0) { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Execute__FP16daObjOnsenFire_c.s" +static int daObjOnsenFire_Execute(daObjOnsenFire_c* i_this) { + return i_this->execute(); } -#pragma pop /* 80CA843C-80CA846C 00023C 0030+00 1/0 0/0 0/0 .text daObjOnsenFire_Delete__FP16daObjOnsenFire_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daObjOnsenFire_Delete(daObjOnsenFire_c* param_0) { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire/daObjOnsenFire_Delete__FP16daObjOnsenFire_c.s" +static int daObjOnsenFire_Delete(daObjOnsenFire_c* i_this) { + i_this->~daObjOnsenFire_c(); + return 1; } -#pragma pop /* ############################################################################################## */ /* 80CA8480-80CA84A0 -00001 0020+00 1/0 0/0 0/0 .data l_daObjOnsenFire_Method */ -SECTION_DATA static void* l_daObjOnsenFire_Method[8] = { - (void*)daObjOnsenFire_Create__FP10fopAc_ac_c, - (void*)daObjOnsenFire_Delete__FP16daObjOnsenFire_c, - (void*)daObjOnsenFire_Execute__FP16daObjOnsenFire_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daObjOnsenFire_Method = { + (process_method_func)daObjOnsenFire_Create, + (process_method_func)daObjOnsenFire_Delete, + (process_method_func)daObjOnsenFire_Execute }; /* 80CA84A0-80CA84D0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_OBJ_ONSEN_FIRE */ -SECTION_DATA extern void* g_profile_OBJ_ONSEN_FIRE[12] = { - (void*)0xFFFFFFFD, (void*)0x0003FFFD, - (void*)0x008C0000, (void*)&g_fpcLf_Method, - (void*)0x00000568, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02640000, (void*)&l_daObjOnsenFire_Method, - (void*)0x00044000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_OBJ_ONSEN_FIRE = { + -3, // mLayerID + 3, // mListID + -3, // mListPrio + PROC_OBJ_ONSEN_FIRE, // mProcName + 0, // padding + &g_fpcLf_Method.mBase, // mSubMtd + sizeof(daObjOnsenFire_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // mSubMtd + 0x0264, // mPriority + 0, // padding + 0, // padding + &l_daObjOnsenFire_Method, // mSubMtd + 0x00044000, // mStatus + 0, // mActorType + 0x0E, // mCullType + 0, // padding + 0, // padding };