d_a_obj_bombf OK (#313)

This commit is contained in:
Trueffel
2023-04-04 07:05:17 +02:00
committed by GitHub
parent c3d660bb2e
commit 9cb56a7070
24 changed files with 142 additions and 650 deletions
+4 -4
View File
@@ -21,8 +21,8 @@ Total | 34.306504% | 1379352 | 4020672
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 34.306504% | 1379352 | 4020672
RELs | 33.406154% | 3841816 | 11500324
Total | 33.639388% | 5221168 | 15520996
RELs | 33.416206% | 3842972 | 11500324
Total | 33.646836% | 5222324 | 15520996
## RELs
@@ -360,7 +360,7 @@ d_a_obj_bkdoor | 45.847554% | 1612 | 3516
d_a_obj_bky_rock | 35.592460% | 3172 | 8912
d_a_obj_bmWindow | 38.757933% | 3420 | 8824
d_a_obj_bmshutter | 41.338854% | 2396 | 5796
d_a_obj_bombf | 46.875000% | 1020 | 2176
d_a_obj_bombf | 100.000000% | 2176 | 2176
d_a_obj_bosswarp | 39.728243% | 4912 | 12364
d_a_obj_boumato | 40.192484% | 3508 | 8728
d_a_obj_brakeeff | 45.417515% | 1784 | 3928
@@ -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.406154% | 3841816 | 11500324
Total | 33.416206% | 3842972 | 11500324
@@ -1,28 +0,0 @@
lbl_80BBABBC:
/* 80BBABBC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBABC0 7C 08 02 A6 */ mflr r0
/* 80BBABC4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBABC8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80BBABCC 93 C1 00 08 */ stw r30, 8(r1)
/* 80BBABD0 7C 7E 1B 79 */ or. r30, r3, r3
/* 80BBABD4 7C 9F 23 78 */ mr r31, r4
/* 80BBABD8 41 82 00 30 */ beq lbl_80BBAC08
/* 80BBABDC 38 7E 05 68 */ addi r3, r30, 0x568
/* 80BBABE0 3C 80 80 BC */ lis r4, l_arcName@ha /* 0x80BBAE84@ha */
/* 80BBABE4 38 84 AE 84 */ addi r4, r4, l_arcName@l /* 0x80BBAE84@l */
/* 80BBABE8 4B 47 24 21 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 80BBABEC 7F C3 F3 78 */ mr r3, r30
/* 80BBABF0 38 80 00 00 */ li r4, 0
/* 80BBABF4 4B 45 E0 99 */ bl __dt__10fopAc_ac_cFv
/* 80BBABF8 7F E0 07 35 */ extsh. r0, r31
/* 80BBABFC 40 81 00 0C */ ble lbl_80BBAC08
/* 80BBAC00 7F C3 F3 78 */ mr r3, r30
/* 80BBAC04 4B 71 41 39 */ bl __dl__FPv
lbl_80BBAC08:
/* 80BBAC08 7F C3 F3 78 */ mr r3, r30
/* 80BBAC0C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80BBAC10 83 C1 00 08 */ lwz r30, 8(r1)
/* 80BBAC14 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAC18 7C 08 03 A6 */ mtlr r0
/* 80BBAC1C 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAC20 4E 80 00 20 */ blr
@@ -1,28 +0,0 @@
lbl_80BBA9F8:
/* 80BBA9F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBA9FC 7C 08 02 A6 */ mflr r0
/* 80BBAA00 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAA04 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80BBAA08 7C 7F 1B 78 */ mr r31, r3
/* 80BBAA0C 3C 60 80 BC */ lis r3, l_arcName@ha /* 0x80BBAE84@ha */
/* 80BBAA10 38 63 AE 84 */ addi r3, r3, l_arcName@l /* 0x80BBAE84@l */
/* 80BBAA14 38 80 00 04 */ li r4, 4
/* 80BBAA18 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80BBAA1C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80BBAA20 3C A5 00 02 */ addis r5, r5, 2
/* 80BBAA24 38 C0 00 80 */ li r6, 0x80
/* 80BBAA28 38 A5 C2 F8 */ addi r5, r5, -15624
/* 80BBAA2C 4B 48 18 C1 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80BBAA30 3C 80 00 08 */ lis r4, 8
/* 80BBAA34 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */
/* 80BBAA38 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */
/* 80BBAA3C 4B 45 A2 19 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
/* 80BBAA40 90 7F 05 70 */ stw r3, 0x570(r31)
/* 80BBAA44 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80BBAA48 30 03 FF FF */ addic r0, r3, -1
/* 80BBAA4C 7C 60 19 10 */ subfe r3, r0, r3
/* 80BBAA50 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80BBAA54 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAA58 7C 08 03 A6 */ mtlr r0
/* 80BBAA5C 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAA60 4E 80 00 20 */ blr
@@ -1,76 +0,0 @@
lbl_80BBAA84:
/* 80BBAA84 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80BBAA88 7C 08 02 A6 */ mflr r0
/* 80BBAA8C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80BBAA90 39 61 00 20 */ addi r11, r1, 0x20
/* 80BBAA94 4B 7A 77 49 */ bl _savegpr_29
/* 80BBAA98 7C 7D 1B 78 */ mr r29, r3
/* 80BBAA9C 3C 80 80 BC */ lis r4, l_arcName@ha /* 0x80BBAE84@ha */
/* 80BBAAA0 3B E4 AE 84 */ addi r31, r4, l_arcName@l /* 0x80BBAE84@l */
/* 80BBAAA4 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80BBAAA8 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80BBAAAC 40 82 00 1C */ bne lbl_80BBAAC8
/* 80BBAAB0 28 1D 00 00 */ cmplwi r29, 0
/* 80BBAAB4 41 82 00 08 */ beq lbl_80BBAABC
/* 80BBAAB8 4B 45 E0 AD */ bl __ct__10fopAc_ac_cFv
lbl_80BBAABC:
/* 80BBAABC 80 1D 04 A0 */ lwz r0, 0x4a0(r29)
/* 80BBAAC0 60 00 00 08 */ ori r0, r0, 8
/* 80BBAAC4 90 1D 04 A0 */ stw r0, 0x4a0(r29)
lbl_80BBAAC8:
/* 80BBAAC8 38 7D 05 68 */ addi r3, r29, 0x568
/* 80BBAACC 38 9F 00 00 */ addi r4, r31, 0
/* 80BBAAD0 4B 47 23 ED */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
/* 80BBAAD4 7C 7E 1B 78 */ mr r30, r3
/* 80BBAAD8 2C 1E 00 04 */ cmpwi r30, 4
/* 80BBAADC 40 82 00 A4 */ bne lbl_80BBAB80
/* 80BBAAE0 7F A3 EB 78 */ mr r3, r29
/* 80BBAAE4 3C 80 80 BC */ lis r4, daObjBombf_createHeap__FP10fopAc_ac_c@ha /* 0x80BBAA64@ha */
/* 80BBAAE8 38 84 AA 64 */ addi r4, r4, daObjBombf_createHeap__FP10fopAc_ac_c@l /* 0x80BBAA64@l */
/* 80BBAAEC 38 A0 08 20 */ li r5, 0x820
/* 80BBAAF0 4B 45 F9 C1 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
/* 80BBAAF4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80BBAAF8 40 82 00 0C */ bne lbl_80BBAB04
/* 80BBAAFC 38 60 00 05 */ li r3, 5
/* 80BBAB00 48 00 00 84 */ b lbl_80BBAB84
lbl_80BBAB04:
/* 80BBAB04 80 7D 05 70 */ lwz r3, 0x570(r29)
/* 80BBAB08 38 03 00 24 */ addi r0, r3, 0x24
/* 80BBAB0C 90 1D 05 04 */ stw r0, 0x504(r29)
/* 80BBAB10 88 1D 04 E2 */ lbz r0, 0x4e2(r29)
/* 80BBAB14 98 1D 04 8C */ stb r0, 0x48c(r29)
/* 80BBAB18 C0 1D 04 D0 */ lfs f0, 0x4d0(r29)
/* 80BBAB1C D0 1D 05 50 */ stfs f0, 0x550(r29)
/* 80BBAB20 C0 1D 04 D4 */ lfs f0, 0x4d4(r29)
/* 80BBAB24 D0 1D 05 54 */ stfs f0, 0x554(r29)
/* 80BBAB28 C0 1D 04 D8 */ lfs f0, 0x4d8(r29)
/* 80BBAB2C D0 1D 05 58 */ stfs f0, 0x558(r29)
/* 80BBAB30 C0 1D 05 50 */ lfs f0, 0x550(r29)
/* 80BBAB34 D0 1D 05 38 */ stfs f0, 0x538(r29)
/* 80BBAB38 C0 1D 05 54 */ lfs f0, 0x554(r29)
/* 80BBAB3C D0 1D 05 3C */ stfs f0, 0x53c(r29)
/* 80BBAB40 C0 1D 05 58 */ lfs f0, 0x558(r29)
/* 80BBAB44 D0 1D 05 40 */ stfs f0, 0x540(r29)
/* 80BBAB48 38 00 FF FF */ li r0, -1
/* 80BBAB4C 90 1D 05 74 */ stw r0, 0x574(r29)
/* 80BBAB50 7F A3 EB 78 */ mr r3, r29
/* 80BBAB54 48 00 00 F9 */ bl setMatrix__12daObjBombf_cFv
/* 80BBAB58 7F A3 EB 78 */ mr r3, r29
/* 80BBAB5C C0 3F 00 08 */ lfs f1, 8(r31)
/* 80BBAB60 C0 5F 00 0C */ lfs f2, 0xc(r31)
/* 80BBAB64 FC 60 08 90 */ fmr f3, f1
/* 80BBAB68 4B 45 F9 C1 */ bl fopAcM_SetMin__FP10fopAc_ac_cfff
/* 80BBAB6C 7F A3 EB 78 */ mr r3, r29
/* 80BBAB70 C0 3F 00 10 */ lfs f1, 0x10(r31)
/* 80BBAB74 C0 5F 00 14 */ lfs f2, 0x14(r31)
/* 80BBAB78 FC 60 08 90 */ fmr f3, f1
/* 80BBAB7C 4B 45 F9 BD */ bl fopAcM_SetMax__FP10fopAc_ac_cfff
lbl_80BBAB80:
/* 80BBAB80 7F C3 F3 78 */ mr r3, r30
lbl_80BBAB84:
/* 80BBAB84 39 61 00 20 */ addi r11, r1, 0x20
/* 80BBAB88 4B 7A 76 A1 */ bl _restgpr_29
/* 80BBAB8C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80BBAB90 7C 08 03 A6 */ mtlr r0
/* 80BBAB94 38 21 00 20 */ addi r1, r1, 0x20
/* 80BBAB98 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80BBAB9C:
/* 80BBAB9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBABA0 7C 08 02 A6 */ mflr r0
/* 80BBABA4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBABA8 4B FF FE DD */ bl create__12daObjBombf_cFv
/* 80BBABAC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBABB0 7C 08 03 A6 */ mtlr r0
/* 80BBABB4 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBABB8 4E 80 00 20 */ blr
@@ -1,11 +0,0 @@
lbl_80BBAC24:
/* 80BBAC24 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBAC28 7C 08 02 A6 */ mflr r0
/* 80BBAC2C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAC30 38 80 FF FF */ li r4, -1
/* 80BBAC34 4B FF FF 89 */ bl __dt__12daObjBombf_cFv
/* 80BBAC38 38 60 00 01 */ li r3, 1
/* 80BBAC3C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAC40 7C 08 03 A6 */ mtlr r0
/* 80BBAC44 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAC48 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80BBAE5C:
/* 80BBAE5C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBAE60 7C 08 02 A6 */ mflr r0
/* 80BBAE64 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAE68 4B FF FF 91 */ bl draw__12daObjBombf_cFv
/* 80BBAE6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAE70 7C 08 03 A6 */ mtlr r0
/* 80BBAE74 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAE78 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80BBADD8:
/* 80BBADD8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBADDC 7C 08 02 A6 */ mflr r0
/* 80BBADE0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBADE4 4B FF FE DD */ bl execute__12daObjBombf_cFv
/* 80BBADE8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBADEC 7C 08 03 A6 */ mtlr r0
/* 80BBADF0 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBADF4 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80BBAA64:
/* 80BBAA64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBAA68 7C 08 02 A6 */ mflr r0
/* 80BBAA6C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAA70 4B FF FF 89 */ bl createHeap__12daObjBombf_cFv
/* 80BBAA74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAA78 7C 08 03 A6 */ mtlr r0
/* 80BBAA7C 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAA80 4E 80 00 20 */ blr
@@ -1,26 +0,0 @@
lbl_80BBADF8:
/* 80BBADF8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBADFC 7C 08 02 A6 */ mflr r0
/* 80BBAE00 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAE04 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80BBAE08 7C 7F 1B 78 */ mr r31, r3
/* 80BBAE0C 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80BBAE10 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80BBAE14 38 80 00 00 */ li r4, 0
/* 80BBAE18 38 BF 04 D0 */ addi r5, r31, 0x4d0
/* 80BBAE1C 38 DF 01 0C */ addi r6, r31, 0x10c
/* 80BBAE20 4B 5E 89 A5 */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c
/* 80BBAE24 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80BBAE28 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80BBAE2C 80 9F 05 70 */ lwz r4, 0x570(r31)
/* 80BBAE30 80 84 00 04 */ lwz r4, 4(r4)
/* 80BBAE34 38 BF 01 0C */ addi r5, r31, 0x10c
/* 80BBAE38 4B 5E 9F 69 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c
/* 80BBAE3C 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80BBAE40 4B 45 2E 85 */ bl mDoExt_modelUpdateDL__FP8J3DModel
/* 80BBAE44 38 60 00 01 */ li r3, 1
/* 80BBAE48 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80BBAE4C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBAE50 7C 08 03 A6 */ mtlr r0
/* 80BBAE54 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBAE58 4E 80 00 20 */ blr
@@ -1,77 +0,0 @@
lbl_80BBACC0:
/* 80BBACC0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80BBACC4 7C 08 02 A6 */ mflr r0
/* 80BBACC8 90 01 00 34 */ stw r0, 0x34(r1)
/* 80BBACCC 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80BBACD0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80BBACD4 7C 7F 1B 78 */ mr r31, r3
/* 80BBACD8 4B FF FF 75 */ bl setMatrix__12daObjBombf_cFv
/* 80BBACDC 80 7F 05 74 */ lwz r3, 0x574(r31)
/* 80BBACE0 3C 03 00 01 */ addis r0, r3, 1
/* 80BBACE4 28 00 FF FF */ cmplwi r0, 0xffff
/* 80BBACE8 40 82 00 80 */ bne lbl_80BBAD68
/* 80BBACEC 88 7F 05 78 */ lbz r3, 0x578(r31)
/* 80BBACF0 28 03 00 00 */ cmplwi r3, 0
/* 80BBACF4 41 82 00 10 */ beq lbl_80BBAD04
/* 80BBACF8 38 03 FF FF */ addi r0, r3, -1
/* 80BBACFC 98 1F 05 78 */ stb r0, 0x578(r31)
/* 80BBAD00 48 00 00 BC */ b lbl_80BBADBC
lbl_80BBAD04:
/* 80BBAD04 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80BBAD08 38 63 00 24 */ addi r3, r3, 0x24
/* 80BBAD0C 3C 80 80 BC */ lis r4, bombOffset@ha /* 0x80BBAE9C@ha */
/* 80BBAD10 38 84 AE 9C */ addi r4, r4, bombOffset@l /* 0x80BBAE9C@l */
/* 80BBAD14 38 A1 00 14 */ addi r5, r1, 0x14
/* 80BBAD18 4B 78 C0 55 */ bl PSMTXMultVec
/* 80BBAD1C 38 00 00 00 */ li r0, 0
/* 80BBAD20 90 01 00 08 */ stw r0, 8(r1)
/* 80BBAD24 38 60 02 21 */ li r3, 0x221
/* 80BBAD28 38 80 00 04 */ li r4, 4
/* 80BBAD2C 38 A1 00 14 */ addi r5, r1, 0x14
/* 80BBAD30 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
/* 80BBAD34 7C 06 07 74 */ extsb r6, r0
/* 80BBAD38 38 FF 04 E4 */ addi r7, r31, 0x4e4
/* 80BBAD3C 39 00 00 00 */ li r8, 0
/* 80BBAD40 39 20 FF FF */ li r9, -1
/* 80BBAD44 39 40 00 00 */ li r10, 0
/* 80BBAD48 4B 45 F0 BD */ bl fopAcM_fastCreate__FsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_iPv
/* 80BBAD4C 28 03 00 00 */ cmplwi r3, 0
/* 80BBAD50 41 82 00 0C */ beq lbl_80BBAD5C
/* 80BBAD54 80 03 00 04 */ lwz r0, 4(r3)
/* 80BBAD58 48 00 00 08 */ b lbl_80BBAD60
lbl_80BBAD5C:
/* 80BBAD5C 38 00 FF FF */ li r0, -1
lbl_80BBAD60:
/* 80BBAD60 90 1F 05 74 */ stw r0, 0x574(r31)
/* 80BBAD64 48 00 00 58 */ b lbl_80BBADBC
lbl_80BBAD68:
/* 80BBAD68 90 61 00 10 */ stw r3, 0x10(r1)
/* 80BBAD6C 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */
/* 80BBAD70 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */
/* 80BBAD74 38 81 00 10 */ addi r4, r1, 0x10
/* 80BBAD78 4B 45 EA 81 */ bl fopAcIt_Judge__FPFPvPv_PvPv
/* 80BBAD7C 7C 7E 1B 79 */ or. r30, r3, r3
/* 80BBAD80 40 82 00 18 */ bne lbl_80BBAD98
/* 80BBAD84 38 00 FF FF */ li r0, -1
/* 80BBAD88 90 1F 05 74 */ stw r0, 0x574(r31)
/* 80BBAD8C 38 00 00 96 */ li r0, 0x96
/* 80BBAD90 98 1F 05 78 */ stb r0, 0x578(r31)
/* 80BBAD94 48 00 00 28 */ b lbl_80BBADBC
lbl_80BBAD98:
/* 80BBAD98 4B 47 72 35 */ bl checkFlowerBombWait__7dBomb_cFP10fopAc_ac_c
/* 80BBAD9C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80BBADA0 41 82 00 1C */ beq lbl_80BBADBC
/* 80BBADA4 80 7F 05 70 */ lwz r3, 0x570(r31)
/* 80BBADA8 38 63 00 24 */ addi r3, r3, 0x24
/* 80BBADAC 3C 80 80 BC */ lis r4, bombOffset@ha /* 0x80BBAE9C@ha */
/* 80BBADB0 38 84 AE 9C */ addi r4, r4, bombOffset@l /* 0x80BBAE9C@l */
/* 80BBADB4 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80BBADB8 4B 78 BF B5 */ bl PSMTXMultVec
lbl_80BBADBC:
/* 80BBADBC 38 60 00 01 */ li r3, 1
/* 80BBADC0 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80BBADC4 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80BBADC8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80BBADCC 7C 08 03 A6 */ mtlr r0
/* 80BBADD0 38 21 00 30 */ addi r1, r1, 0x30
/* 80BBADD4 4E 80 00 20 */ blr
@@ -1,30 +0,0 @@
lbl_80BBAC4C:
/* 80BBAC4C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80BBAC50 7C 08 02 A6 */ mflr r0
/* 80BBAC54 90 01 00 14 */ stw r0, 0x14(r1)
/* 80BBAC58 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80BBAC5C 7C 7F 1B 78 */ mr r31, r3
/* 80BBAC60 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80BBAC64 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80BBAC68 C0 3F 04 D0 */ lfs f1, 0x4d0(r31)
/* 80BBAC6C C0 5F 04 D4 */ lfs f2, 0x4d4(r31)
/* 80BBAC70 C0 1F 05 84 */ lfs f0, 0x584(r31)
/* 80BBAC74 EC 42 00 2A */ fadds f2, f2, f0
/* 80BBAC78 C0 7F 04 D8 */ lfs f3, 0x4d8(r31)
/* 80BBAC7C 4B 78 BC 6D */ bl PSMTXTrans
/* 80BBAC80 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80BBAC84 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80BBAC88 A8 9F 04 E4 */ lha r4, 0x4e4(r31)
/* 80BBAC8C A8 BF 04 E6 */ lha r5, 0x4e6(r31)
/* 80BBAC90 A8 DF 04 E8 */ lha r6, 0x4e8(r31)
/* 80BBAC94 4B 45 16 0D */ bl mDoMtx_ZXYrotM__FPA4_fsss
/* 80BBAC98 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80BBAC9C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80BBACA0 80 9F 05 70 */ lwz r4, 0x570(r31)
/* 80BBACA4 38 84 00 24 */ addi r4, r4, 0x24
/* 80BBACA8 4B 78 B8 09 */ bl PSMTXCopy
/* 80BBACAC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80BBACB0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80BBACB4 7C 08 03 A6 */ mtlr r0
/* 80BBACB8 38 21 00 10 */ addi r1, r1, 0x10
/* 80BBACBC 4E 80 00 20 */ blr
@@ -1,14 +0,0 @@
lbl_8059A33C:
/* 8059A33C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A340 7C 08 02 A6 */ mflr r0
/* 8059A344 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A348 3C 80 80 5A */ lis r4, l_arcName@ha /* 0x8059A410@ha */
/* 8059A34C 38 84 A4 10 */ addi r4, r4, l_arcName@l /* 0x8059A410@l */
/* 8059A350 80 84 00 00 */ lwz r4, 0(r4)
/* 8059A354 38 63 05 68 */ addi r3, r3, 0x568
/* 8059A358 4B A9 2C B1 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 8059A35C 38 60 00 01 */ li r3, 1
/* 8059A360 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A364 7C 08 03 A6 */ mtlr r0
/* 8059A368 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A36C 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8059A3B0:
/* 8059A3B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A3B4 7C 08 02 A6 */ mflr r0
/* 8059A3B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A3BC 4B FF FD AD */ bl create__12daObjSMark_cFv
/* 8059A3C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A3C4 7C 08 03 A6 */ mtlr r0
/* 8059A3C8 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A3CC 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8059A390:
/* 8059A390 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A394 7C 08 02 A6 */ mflr r0
/* 8059A398 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A39C 4B FF FF A1 */ bl _delete__12daObjSMark_cFv
/* 8059A3A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A3A4 7C 08 03 A6 */ mtlr r0
/* 8059A3A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A3AC 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8059A370:
/* 8059A370 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A374 7C 08 02 A6 */ mflr r0
/* 8059A378 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A37C 4B FF FF 51 */ bl draw__12daObjSMark_cFv
/* 8059A380 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A384 7C 08 03 A6 */ mtlr r0
/* 8059A388 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A38C 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_8059A018:
/* 8059A018 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A01C 7C 08 02 A6 */ mflr r0
/* 8059A020 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A024 48 00 00 15 */ bl setBaseMtx__12daObjSMark_cFv
/* 8059A028 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A02C 7C 08 03 A6 */ mtlr r0
/* 8059A030 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A034 4E 80 00 20 */ blr
@@ -1,19 +0,0 @@
lbl_8059A038:
/* 8059A038 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8059A03C 7C 08 02 A6 */ mflr r0
/* 8059A040 90 01 00 14 */ stw r0, 0x14(r1)
/* 8059A044 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8059A048 7C 7F 1B 78 */ mr r31, r3
/* 8059A04C 38 7F 04 D0 */ addi r3, r31, 0x4d0
/* 8059A050 4B A7 2D 15 */ bl transS__14mDoMtx_stack_cFRC4cXyz
/* 8059A054 38 7F 04 E4 */ addi r3, r31, 0x4e4
/* 8059A058 4B A7 2E ED */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
/* 8059A05C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 8059A060 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 8059A064 38 9F 07 E4 */ addi r4, r31, 0x7e4
/* 8059A068 4B DA C4 49 */ bl PSMTXCopy
/* 8059A06C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8059A070 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8059A074 7C 08 03 A6 */ mtlr r0
/* 8059A078 38 21 00 10 */ addi r1, r1, 0x10
/* 8059A07C 4E 80 00 20 */ blr
+5 -1
View File
@@ -38,7 +38,7 @@ public:
class dBomb_c : public daNbomb_c {
public:
bool checkStateCarry();
bool checkFlowerBombWait(fopAc_ac_c*);
static bool checkFlowerBombWait(fopAc_ac_c*);
bool checkWaterBomb(fopAc_ac_c*);
bool checkInsectBombMove(fopAc_ac_c*);
@@ -49,6 +49,10 @@ public:
static fopAc_ac_c* createWaterBombPlayer(cXyz* p_pos) {
return (fopAc_ac_c*)fopAcM_fastCreate(0x221, 9, p_pos, -1, NULL, NULL, -1, NULL, NULL);
}
static fopAc_ac_c* createFlowerBomb(cXyz* i_pos, csXyz* i_angle, int param_2) {
return (fopAc_ac_c*)fopAcM_fastCreate(0x221, 4, i_pos, param_2, i_angle, NULL, -1, NULL, NULL);
}
};
#endif /* D_D_BOMB_H */
@@ -1,6 +1,27 @@
#ifndef D_A_OBJ_BOMBF_H
#define D_A_OBJ_BOMBF_H
#include "dolphin/types.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_bomb.h"
#include "f_op/f_op_actor_mng.h"
class daObjBombf_c : public fopAc_ac_c {
public:
/* 80BBA9F8 */ bool createHeap();
/* 80BBAA84 */ int create();
/* 80BBABBC */ ~daObjBombf_c();
/* 80BBAC4C */ void setMatrix();
/* 80BBACC0 */ int execute();
/* 80BBADF8 */ int draw();
/* 0x568 */ request_of_phase_process_class field_0x568;
/* 0x570 */ J3DModel* field_0x570;
/* 0x574 */ u32 field_0x574;
/* 0x578 */ u8 field_0x578;
/* 0x57C */ u32 field_0x57c;
/* 0x580 */ u16 field_0x580;
/* 0x582 */ u8 field_0x582;
/* 0x584 */ f32 field_0x584;
}; // Size: 0x588
#endif /* D_A_OBJ_BOMBF_H */
+110 -262
View File
@@ -1,303 +1,151 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_obj_bombf
//
/*
* d_a_obj_bombf.cpp
* Bomb Flower
*/
#include "rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct mDoMtx_stack_c {
static u8 now[48];
};
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
/* 80018C8C */ ~fopAc_ac_c();
};
struct daObjBombf_c {
/* 80BBA9F8 */ void createHeap();
/* 80BBAA84 */ void create();
/* 80BBABBC */ ~daObjBombf_c();
/* 80BBAC4C */ void setMatrix();
/* 80BBACC0 */ void execute();
/* 80BBADF8 */ void draw();
};
struct dKy_tevstr_c {};
struct J3DModelData {};
struct cXyz {};
struct dScnKy_env_light_c {
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
};
struct dRes_info_c {};
struct dRes_control_c {
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
};
struct dBomb_c {
/* 80031FCC */ void checkFlowerBombWait(fopAc_ac_c*);
};
struct csXyz {};
struct J3DModel {};
//
// Forward References:
//
extern "C" void createHeap__12daObjBombf_cFv();
extern "C" static void daObjBombf_createHeap__FP10fopAc_ac_c();
extern "C" void create__12daObjBombf_cFv();
extern "C" static void daObjBombf_Create__FP10fopAc_ac_c();
extern "C" void __dt__12daObjBombf_cFv();
extern "C" static void daObjBombf_Delete__FP12daObjBombf_c();
extern "C" void setMatrix__12daObjBombf_cFv();
extern "C" void execute__12daObjBombf_cFv();
extern "C" static void daObjBombf_Execute__FP12daObjBombf_c();
extern "C" void draw__12daObjBombf_cFv();
extern "C" static void daObjBombf_Draw__FP12daObjBombf_c();
extern "C" extern void* g_profile_Obj_Bombf[12];
//
// External References:
//
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcIt_Judge__FPFPvPv_PvPv();
extern "C" void fopAcM_fastCreate__FsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_iPv();
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
extern "C" void fopAcM_SetMin__FP10fopAc_ac_cfff();
extern "C" void fopAcM_SetMax__FP10fopAc_ac_cfff();
extern "C" void fpcSch_JudgeByID__FPvPv();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void checkFlowerBombWait__7dBomb_cFP10fopAc_ac_c();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void __dl__FPv();
extern "C" void PSMTXCopy();
extern "C" void PSMTXTrans();
extern "C" void PSMTXMultVec();
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 now__14mDoMtx_stack_c[48];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_env_light[4880];
//
// Declarations:
//
/* ############################################################################################## */
/* 80BBAE84-80BBAE8C 000000 0006+02 3/3 0/0 0/0 .rodata l_arcName */
SECTION_RODATA static u8 const l_arcName[6 + 2 /* padding */] = {
0x42,
0x6F,
0x6D,
0x62,
0x66,
0x00,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80BBAE84, &l_arcName);
static const char l_arcName[] = "Bombf";
/* 80BBA9F8-80BBAA64 000078 006C+00 1/1 0/0 0/0 .text createHeap__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBombf_c::createHeap() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/createHeap__12daObjBombf_cFv.s"
bool daObjBombf_c::createHeap() {
field_0x570 = mDoExt_J3DModel__create((J3DModelData*)dComIfG_getObjectRes(l_arcName, 4),
0x80000, 0x11000084);
return (field_0x570 != NULL);
}
#pragma pop
/* 80BBAA64-80BBAA84 0000E4 0020+00 1/1 0/0 0/0 .text daObjBombf_createHeap__FP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBombf_createHeap(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/daObjBombf_createHeap__FP10fopAc_ac_c.s"
static bool daObjBombf_createHeap(fopAc_ac_c* i_this) {
return static_cast<daObjBombf_c*>(i_this)->createHeap();
}
#pragma pop
/* ############################################################################################## */
/* 80BBAE8C-80BBAE90 000008 0004+00 0/1 0/0 0/0 .rodata @3687 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3687 = -75.0f;
COMPILER_STRIP_GATE(0x80BBAE8C, &lit_3687);
#pragma pop
/* 80BBAE90-80BBAE94 00000C 0004+00 0/1 0/0 0/0 .rodata @3688 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3688[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80BBAE90, &lit_3688);
#pragma pop
/* 80BBAE94-80BBAE98 000010 0004+00 0/1 0/0 0/0 .rodata @3689 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3689 = 75.0f;
COMPILER_STRIP_GATE(0x80BBAE94, &lit_3689);
#pragma pop
/* 80BBAE98-80BBAE9C 000014 0004+00 0/1 0/0 0/0 .rodata @3690 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3690 = 30.0f;
COMPILER_STRIP_GATE(0x80BBAE98, &lit_3690);
#pragma pop
/* 80BBAA84-80BBAB9C 000104 0118+00 1/1 0/0 0/0 .text create__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBombf_c::create() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/create__12daObjBombf_cFv.s"
}
#pragma pop
int daObjBombf_c::create() {
if (!fopAcM_CheckCondition(this, 8)) {
new (this) daObjBombf_c();
fopAcM_OnCondition(this, 8);
}
/* 80BBAB9C-80BBABBC 00021C 0020+00 1/0 0/0 0/0 .text daObjBombf_Create__FP10fopAc_ac_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBombf_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/daObjBombf_Create__FP10fopAc_ac_c.s"
int phase = dComIfG_resLoad(&field_0x568, l_arcName);
if (phase == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)daObjBombf_createHeap, 0x820)) {
return cPhs_ERROR_e;
}
fopAcM_SetMtx(this, field_0x570->getBaseTRMtx());
mTevStr.mRoomNo = fopAcM_GetRoomNo(this);
mAttentionInfo.mPosition = current.pos;
mEyePos = mAttentionInfo.mPosition;
field_0x574 = 0xffffffff;
setMatrix();
fopAcM_SetMin(this, -75.0f, 0.0f, -75.0f);
fopAcM_SetMax(this, 75.0f, 30.0f, 75.0f);
}
return phase;
}
/* 80BBAB9C-80BBABBC 00021C 0020+00 1/0 0/0 0/0 .text daObjBombf_Create__FP10fopAc_ac_c */
static int daObjBombf_Create(fopAc_ac_c* i_this) {
return static_cast<daObjBombf_c*>(i_this)->create();
}
#pragma pop
/* 80BBABBC-80BBAC24 00023C 0068+00 1/1 0/0 0/0 .text __dt__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daObjBombf_c::~daObjBombf_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/__dt__12daObjBombf_cFv.s"
daObjBombf_c::~daObjBombf_c() {
dComIfG_resDelete(&field_0x568, l_arcName);
}
#pragma pop
/* 80BBAC24-80BBAC4C 0002A4 0028+00 1/0 0/0 0/0 .text daObjBombf_Delete__FP12daObjBombf_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBombf_Delete(daObjBombf_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/daObjBombf_Delete__FP12daObjBombf_c.s"
/* 80BBAC24-80BBAC4C 0002A4 0028+00 1/0 0/0 0/0 .text daObjBombf_Delete__FP12daObjBombf_c */
static int daObjBombf_Delete(daObjBombf_c* i_this) {
i_this->~daObjBombf_c();
return 1;
}
#pragma pop
/* 80BBAC4C-80BBACC0 0002CC 0074+00 2/2 0/0 0/0 .text setMatrix__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBombf_c::setMatrix() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/setMatrix__12daObjBombf_cFv.s"
void daObjBombf_c::setMatrix() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y + field_0x584, current.pos.z);
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
PSMTXCopy(mDoMtx_stack_c::now, field_0x570->mBaseTransformMtx);
}
#pragma pop
/* ############################################################################################## */
/* 80BBAE9C-80BBAEA8 000018 000C+00 1/1 0/0 0/0 .rodata bombOffset$3727 */
SECTION_RODATA static u8 const bombOffset[12] = {
0x00, 0x00, 0x00, 0x00, 0x40, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80BBAE9C, &bombOffset);
static const Vec bombOffset = {0.0f, 7.0f, 0.0f};
/* 80BBACC0-80BBADD8 000340 0118+00 1/1 0/0 0/0 .text execute__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBombf_c::execute() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/execute__12daObjBombf_cFv.s"
int daObjBombf_c::execute() {
u32 uVar;
cXyz vStack;
setMatrix();
if (field_0x574 == -1) {
if (field_0x578 != 0) {
field_0x578--;
} else {
mDoMtx_multVec(field_0x570->getBaseTRMtx(), &bombOffset, &vStack);
fopAc_ac_c* bomb_actor =
dBomb_c::createFlowerBomb(&vStack, &shape_angle, fopAcM_GetRoomNo(this));
field_0x574 = fopAcM_GetID(bomb_actor);
}
} else {
fopAc_ac_c* actor = fopAcM_SearchByID(field_0x574);
if (actor == NULL) {
field_0x574 = -1;
field_0x578 = 150;
} else if (dBomb_c::checkFlowerBombWait(actor)) {
mDoMtx_multVec(field_0x570->getBaseTRMtx(), &bombOffset, &actor->current.pos);
}
}
return 1;
}
#pragma pop
/* 80BBADD8-80BBADF8 000458 0020+00 1/0 0/0 0/0 .text daObjBombf_Execute__FP12daObjBombf_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBombf_Execute(daObjBombf_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/daObjBombf_Execute__FP12daObjBombf_c.s"
static int daObjBombf_Execute(daObjBombf_c* i_this) {
return i_this->execute();
}
#pragma pop
/* 80BBADF8-80BBAE5C 000478 0064+00 1/1 0/0 0/0 .text draw__12daObjBombf_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBombf_c::draw() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/draw__12daObjBombf_cFv.s"
int daObjBombf_c::draw() {
g_env_light.settingTevStruct(0, &current.pos, &mTevStr);
g_env_light.setLightTevColorType_MAJI(field_0x570->mModelData, &mTevStr);
mDoExt_modelUpdateDL(field_0x570);
return 1;
}
#pragma pop
/* 80BBAE5C-80BBAE7C 0004DC 0020+00 1/0 0/0 0/0 .text daObjBombf_Draw__FP12daObjBombf_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBombf_Draw(daObjBombf_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf/daObjBombf_Draw__FP12daObjBombf_c.s"
/* 80BBAE5C-80BBAE7C 0004DC 0020+00 1/0 0/0 0/0 .text daObjBombf_Draw__FP12daObjBombf_c */
static int daObjBombf_Draw(daObjBombf_c* i_this) {
return i_this->draw();
}
#pragma pop
/* ############################################################################################## */
/* 80BBAEA8-80BBAEC8 -00001 0020+00 1/0 0/0 0/0 .data l_daObjBombf_Method */
SECTION_DATA static void* l_daObjBombf_Method[8] = {
(void*)daObjBombf_Create__FP10fopAc_ac_c,
(void*)daObjBombf_Delete__FP12daObjBombf_c,
(void*)daObjBombf_Execute__FP12daObjBombf_c,
(void*)NULL,
(void*)daObjBombf_Draw__FP12daObjBombf_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
static actor_method_class l_daObjBombf_Method = {
(process_method_func)daObjBombf_Create, (process_method_func)daObjBombf_Delete,
(process_method_func)daObjBombf_Execute, (process_method_func)NULL,
(process_method_func)daObjBombf_Draw,
};
/* 80BBAEC8-80BBAEF8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Bombf */
SECTION_DATA extern void* g_profile_Obj_Bombf[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x02BF0000, (void*)&g_fpcLf_Method,
(void*)0x00000588, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x00FB0000, (void*)&l_daObjBombf_Method,
(void*)0x00040100, (void*)0x030E0000,
extern actor_process_profile_definition g_profile_Obj_Bombf = {
-3,
7,
-3,
PROC_Obj_Bombf,
0,
&g_fpcLf_Method.mBase,
sizeof(daObjBombf_c),
0,
0,
&g_fopAc_Method.base,
0x00FB,
0,
0,
&l_daObjBombf_Method,
0x00040100,
3,
14,
0,
0,
};
+1 -1
View File
@@ -12,7 +12,7 @@ bool dBomb_c::checkStateCarry() {
}
bool dBomb_c::checkFlowerBombWait(fopAc_ac_c* param_1) {
return (fopAcM_GetName(&mActor) == PROC_NBOMB && fopAcM_GetParam(&mActor) == 4);
return (fopAcM_GetName(param_1) == PROC_NBOMB && fopAcM_GetParam(param_1) == 4);
}
bool dBomb_c::checkWaterBomb(fopAc_ac_c* param_1) {