d_a_obj_lv4HsTarget OK and mDoHIO_entry_c fix

This commit is contained in:
TakaRikka 2023-07-01 01:47:07 -07:00
parent 67ddd2b2f9
commit e548c092fe
22 changed files with 148 additions and 619 deletions

View File

@ -1,28 +0,0 @@
lbl_80C5F718:
/* 80C5F718 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F71C 7C 08 02 A6 */ mflr r0
/* 80C5F720 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F724 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F728 7C 7F 1B 78 */ mr r31, r3
/* 80C5F72C 3C 60 80 C6 */ lis r3, d_a_obj_lv4HsTarget__stringBase0@ha /* 0x80C5FA3C@ha */
/* 80C5F730 38 63 FA 3C */ addi r3, r3, d_a_obj_lv4HsTarget__stringBase0@l /* 0x80C5FA3C@l */
/* 80C5F734 38 80 00 04 */ li r4, 4
/* 80C5F738 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80C5F73C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80C5F740 3C A5 00 02 */ addis r5, r5, 2
/* 80C5F744 38 C0 00 80 */ li r6, 0x80
/* 80C5F748 38 A5 C2 F8 */ addi r5, r5, -15624
/* 80C5F74C 4B 3D CB A1 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80C5F750 3C 80 00 08 */ lis r4, 8
/* 80C5F754 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */
/* 80C5F758 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */
/* 80C5F75C 4B 3B 54 F9 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
/* 80C5F760 90 7F 05 A8 */ stw r3, 0x5a8(r31)
/* 80C5F764 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
/* 80C5F768 30 03 FF FF */ addic r0, r3, -1
/* 80C5F76C 7C 60 19 10 */ subfe r3, r0, r3
/* 80C5F770 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F774 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F778 7C 08 03 A6 */ mtlr r0
/* 80C5F77C 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F780 4E 80 00 20 */ blr

View File

@ -1,13 +0,0 @@
lbl_80C5F8D4:
/* 80C5F8D4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F8D8 7C 08 02 A6 */ mflr r0
/* 80C5F8DC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F8E0 3C 80 80 C6 */ lis r4, d_a_obj_lv4HsTarget__stringBase0@ha /* 0x80C5FA3C@ha */
/* 80C5F8E4 38 84 FA 3C */ addi r4, r4, d_a_obj_lv4HsTarget__stringBase0@l /* 0x80C5FA3C@l */
/* 80C5F8E8 38 63 05 A0 */ addi r3, r3, 0x5a0
/* 80C5F8EC 4B 3C D7 1D */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 80C5F8F0 38 60 00 01 */ li r3, 1
/* 80C5F8F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F8F8 7C 08 03 A6 */ mtlr r0
/* 80C5F8FC 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F900 4E 80 00 20 */ blr

View File

@ -1,26 +0,0 @@
lbl_80C5F870:
/* 80C5F870 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F874 7C 08 02 A6 */ mflr r0
/* 80C5F878 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F87C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F880 7C 7F 1B 78 */ mr r31, r3
/* 80C5F884 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80C5F888 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80C5F88C 38 80 00 40 */ li r4, 0x40
/* 80C5F890 38 BF 04 D0 */ addi r5, r31, 0x4d0
/* 80C5F894 38 DF 01 0C */ addi r6, r31, 0x10c
/* 80C5F898 4B 54 3F 2D */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c
/* 80C5F89C 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80C5F8A0 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80C5F8A4 80 9F 05 A8 */ lwz r4, 0x5a8(r31)
/* 80C5F8A8 80 84 00 04 */ lwz r4, 4(r4)
/* 80C5F8AC 38 BF 01 0C */ addi r5, r31, 0x10c
/* 80C5F8B0 4B 54 54 F1 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c
/* 80C5F8B4 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
/* 80C5F8B8 4B 3A E4 0D */ bl mDoExt_modelUpdateDL__FP8J3DModel
/* 80C5F8BC 38 60 00 01 */ li r3, 1
/* 80C5F8C0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F8C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F8C8 7C 08 03 A6 */ mtlr r0
/* 80C5F8CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F8D0 4E 80 00 20 */ blr

View File

@ -1,6 +0,0 @@
lbl_80C5F85C:
/* 80C5F85C 80 63 05 A8 */ lwz r3, 0x5a8(r3)
/* 80C5F860 38 03 00 24 */ addi r0, r3, 0x24
/* 80C5F864 90 04 00 00 */ stw r0, 0(r4)
/* 80C5F868 38 60 00 01 */ li r3, 1
/* 80C5F86C 4E 80 00 20 */ blr

View File

@ -1,8 +0,0 @@
lbl_80C5F62C:
/* 80C5F62C 3C 80 80 C6 */ lis r4, __vt__14mDoHIO_entry_c@ha /* 0x80C5FACC@ha */
/* 80C5F630 38 04 FA CC */ addi r0, r4, __vt__14mDoHIO_entry_c@l /* 0x80C5FACC@l */
/* 80C5F634 90 03 00 00 */ stw r0, 0(r3)
/* 80C5F638 3C 80 80 C6 */ lis r4, __vt__19daLv4HsTarget_HIO_c@ha /* 0x80C5FAC0@ha */
/* 80C5F63C 38 04 FA C0 */ addi r0, r4, __vt__19daLv4HsTarget_HIO_c@l /* 0x80C5FAC0@l */
/* 80C5F640 90 03 00 00 */ stw r0, 0(r3)
/* 80C5F644 4E 80 00 20 */ blr

View File

@ -1,20 +0,0 @@
lbl_80C5F648:
/* 80C5F648 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F64C 7C 08 02 A6 */ mflr r0
/* 80C5F650 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F654 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F658 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C5F65C 41 82 00 1C */ beq lbl_80C5F678
/* 80C5F660 3C A0 80 C6 */ lis r5, __vt__14mDoHIO_entry_c@ha /* 0x80C5FACC@ha */
/* 80C5F664 38 05 FA CC */ addi r0, r5, __vt__14mDoHIO_entry_c@l /* 0x80C5FACC@l */
/* 80C5F668 90 1F 00 00 */ stw r0, 0(r31)
/* 80C5F66C 7C 80 07 35 */ extsh. r0, r4
/* 80C5F670 40 81 00 08 */ ble lbl_80C5F678
/* 80C5F674 4B 66 F6 C9 */ bl __dl__FPv
lbl_80C5F678:
/* 80C5F678 7F E3 FB 78 */ mr r3, r31
/* 80C5F67C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F680 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F684 7C 08 03 A6 */ mtlr r0
/* 80C5F688 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F68C 4E 80 00 20 */ blr

View File

@ -1,26 +0,0 @@
lbl_80C5F990:
/* 80C5F990 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F994 7C 08 02 A6 */ mflr r0
/* 80C5F998 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F99C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F9A0 7C 7F 1B 79 */ or. r31, r3, r3
/* 80C5F9A4 41 82 00 30 */ beq lbl_80C5F9D4
/* 80C5F9A8 3C 60 80 C6 */ lis r3, __vt__19daLv4HsTarget_HIO_c@ha /* 0x80C5FAC0@ha */
/* 80C5F9AC 38 03 FA C0 */ addi r0, r3, __vt__19daLv4HsTarget_HIO_c@l /* 0x80C5FAC0@l */
/* 80C5F9B0 90 1F 00 00 */ stw r0, 0(r31)
/* 80C5F9B4 41 82 00 10 */ beq lbl_80C5F9C4
/* 80C5F9B8 3C 60 80 C6 */ lis r3, __vt__14mDoHIO_entry_c@ha /* 0x80C5FACC@ha */
/* 80C5F9BC 38 03 FA CC */ addi r0, r3, __vt__14mDoHIO_entry_c@l /* 0x80C5FACC@l */
/* 80C5F9C0 90 1F 00 00 */ stw r0, 0(r31)
lbl_80C5F9C4:
/* 80C5F9C4 7C 80 07 35 */ extsh. r0, r4
/* 80C5F9C8 40 81 00 0C */ ble lbl_80C5F9D4
/* 80C5F9CC 7F E3 FB 78 */ mr r3, r31
/* 80C5F9D0 4B 66 F3 6D */ bl __dl__FPv
lbl_80C5F9D4:
/* 80C5F9D4 7F E3 FB 78 */ mr r3, r31
/* 80C5F9D8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F9DC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F9E0 7C 08 03 A6 */ mtlr r0
/* 80C5F9E4 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F9E8 4E 80 00 20 */ blr

View File

@ -1,16 +0,0 @@
lbl_80C5F9EC:
/* 80C5F9EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F9F0 7C 08 02 A6 */ mflr r0
/* 80C5F9F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F9F8 3C 60 80 C6 */ lis r3, l_HIO@ha /* 0x80C5FAEC@ha */
/* 80C5F9FC 38 63 FA EC */ addi r3, r3, l_HIO@l /* 0x80C5FAEC@l */
/* 80C5FA00 4B FF FC 2D */ bl __ct__19daLv4HsTarget_HIO_cFv
/* 80C5FA04 3C 80 80 C6 */ lis r4, __dt__19daLv4HsTarget_HIO_cFv@ha /* 0x80C5F990@ha */
/* 80C5FA08 38 84 F9 90 */ addi r4, r4, __dt__19daLv4HsTarget_HIO_cFv@l /* 0x80C5F990@l */
/* 80C5FA0C 3C A0 80 C6 */ lis r5, lit_3618@ha /* 0x80C5FAE0@ha */
/* 80C5FA10 38 A5 FA E0 */ addi r5, r5, lit_3618@l /* 0x80C5FAE0@l */
/* 80C5FA14 4B FF FB A5 */ bl __register_global_object
/* 80C5FA18 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5FA1C 7C 08 03 A6 */ mtlr r0
/* 80C5FA20 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5FA24 4E 80 00 20 */ blr

View File

@ -1,60 +0,0 @@
lbl_80C5F784:
/* 80C5F784 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F788 7C 08 02 A6 */ mflr r0
/* 80C5F78C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F790 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F794 93 C1 00 08 */ stw r30, 8(r1)
/* 80C5F798 7C 7F 1B 78 */ mr r31, r3
/* 80C5F79C 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80C5F7A0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80C5F7A4 40 82 00 28 */ bne lbl_80C5F7CC
/* 80C5F7A8 28 1F 00 00 */ cmplwi r31, 0
/* 80C5F7AC 41 82 00 14 */ beq lbl_80C5F7C0
/* 80C5F7B0 4B 41 8E 75 */ bl __ct__16dBgS_MoveBgActorFv
/* 80C5F7B4 3C 60 80 C6 */ lis r3, __vt__15daLv4HsTarget_c@ha /* 0x80C5FA98@ha */
/* 80C5F7B8 38 03 FA 98 */ addi r0, r3, __vt__15daLv4HsTarget_c@l /* 0x80C5FA98@l */
/* 80C5F7BC 90 1F 05 9C */ stw r0, 0x59c(r31)
lbl_80C5F7C0:
/* 80C5F7C0 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 80C5F7C4 60 00 00 08 */ ori r0, r0, 8
/* 80C5F7C8 90 1F 04 A0 */ stw r0, 0x4a0(r31)
lbl_80C5F7CC:
/* 80C5F7CC 38 7F 05 A0 */ addi r3, r31, 0x5a0
/* 80C5F7D0 3C 80 80 C6 */ lis r4, d_a_obj_lv4HsTarget__stringBase0@ha /* 0x80C5FA3C@ha */
/* 80C5F7D4 38 84 FA 3C */ addi r4, r4, d_a_obj_lv4HsTarget__stringBase0@l /* 0x80C5FA3C@l */
/* 80C5F7D8 4B 3C D6 E5 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
/* 80C5F7DC 7C 7E 1B 78 */ mr r30, r3
/* 80C5F7E0 2C 1E 00 04 */ cmpwi r30, 4
/* 80C5F7E4 40 82 00 5C */ bne lbl_80C5F840
/* 80C5F7E8 7F E3 FB 78 */ mr r3, r31
/* 80C5F7EC 3C 80 80 C6 */ lis r4, d_a_obj_lv4HsTarget__stringBase0@ha /* 0x80C5FA3C@ha */
/* 80C5F7F0 38 84 FA 3C */ addi r4, r4, d_a_obj_lv4HsTarget__stringBase0@l /* 0x80C5FA3C@l */
/* 80C5F7F4 38 A0 00 07 */ li r5, 7
/* 80C5F7F8 3C C0 80 07 */ lis r6, dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz@ha /* 0x80075AD8@ha */
/* 80C5F7FC 38 C6 5A D8 */ addi r6, r6, dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz@l /* 0x80075AD8@l */
/* 80C5F800 38 E0 12 00 */ li r7, 0x1200
/* 80C5F804 39 00 00 00 */ li r8, 0
/* 80C5F808 4B 41 8F B5 */ bl MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f
/* 80C5F80C 2C 03 00 05 */ cmpwi r3, 5
/* 80C5F810 40 82 00 0C */ bne lbl_80C5F81C
/* 80C5F814 38 60 00 05 */ li r3, 5
/* 80C5F818 48 00 00 2C */ b lbl_80C5F844
lbl_80C5F81C:
/* 80C5F81C 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
/* 80C5F820 38 03 00 24 */ addi r0, r3, 0x24
/* 80C5F824 90 1F 05 04 */ stw r0, 0x504(r31)
/* 80C5F828 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
/* 80C5F82C 80 83 00 04 */ lwz r4, 4(r3)
/* 80C5F830 7F E3 FB 78 */ mr r3, r31
/* 80C5F834 4B 3B AD 45 */ bl fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData
/* 80C5F838 7F E3 FB 78 */ mr r3, r31
/* 80C5F83C 4B FF FE 55 */ bl setBaseMtx__15daLv4HsTarget_cFv
lbl_80C5F840:
/* 80C5F840 7F C3 F3 78 */ mr r3, r30
lbl_80C5F844:
/* 80C5F844 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F848 83 C1 00 08 */ lwz r30, 8(r1)
/* 80C5F84C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F850 7C 08 03 A6 */ mtlr r0
/* 80C5F854 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F858 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C5F970:
/* 80C5F970 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F974 7C 08 02 A6 */ mflr r0
/* 80C5F978 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F97C 4B FF FE 09 */ bl create__15daLv4HsTarget_cFv
/* 80C5F980 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F984 7C 08 03 A6 */ mtlr r0
/* 80C5F988 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F98C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C5F950:
/* 80C5F950 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F954 7C 08 02 A6 */ mflr r0
/* 80C5F958 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F95C 4B 41 8F 81 */ bl MoveBGDelete__16dBgS_MoveBgActorFv
/* 80C5F960 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F964 7C 08 03 A6 */ mtlr r0
/* 80C5F968 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F96C 4E 80 00 20 */ blr

View File

@ -1,12 +0,0 @@
lbl_80C5F904:
/* 80C5F904 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F908 7C 08 02 A6 */ mflr r0
/* 80C5F90C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F910 81 83 05 9C */ lwz r12, 0x59c(r3)
/* 80C5F914 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80C5F918 7D 89 03 A6 */ mtctr r12
/* 80C5F91C 4E 80 04 21 */ bctrl
/* 80C5F920 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F924 7C 08 03 A6 */ mtlr r0
/* 80C5F928 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F92C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80C5F930:
/* 80C5F930 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F934 7C 08 02 A6 */ mflr r0
/* 80C5F938 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F93C 4B 41 90 15 */ bl MoveBGExecute__16dBgS_MoveBgActorFv
/* 80C5F940 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F944 7C 08 03 A6 */ mtlr r0
/* 80C5F948 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F94C 4E 80 00 20 */ blr

View File

@ -1,35 +0,0 @@
lbl_80C5F690:
/* 80C5F690 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80C5F694 7C 08 02 A6 */ mflr r0
/* 80C5F698 90 01 00 14 */ stw r0, 0x14(r1)
/* 80C5F69C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80C5F6A0 7C 7F 1B 78 */ mr r31, r3
/* 80C5F6A4 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C5F6A8 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C5F6AC C0 3F 04 D0 */ lfs f1, 0x4d0(r31)
/* 80C5F6B0 C0 5F 04 D4 */ lfs f2, 0x4d4(r31)
/* 80C5F6B4 C0 7F 04 D8 */ lfs f3, 0x4d8(r31)
/* 80C5F6B8 4B 6E 72 31 */ bl PSMTXTrans
/* 80C5F6BC 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C5F6C0 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C5F6C4 A8 9F 04 E4 */ lha r4, 0x4e4(r31)
/* 80C5F6C8 A8 BF 04 E6 */ lha r5, 0x4e6(r31)
/* 80C5F6CC A8 DF 04 E8 */ lha r6, 0x4e8(r31)
/* 80C5F6D0 4B 3A CB D1 */ bl mDoMtx_ZXYrotM__FPA4_fsss
/* 80C5F6D4 80 7F 05 A8 */ lwz r3, 0x5a8(r31)
/* 80C5F6D8 C0 1F 04 EC */ lfs f0, 0x4ec(r31)
/* 80C5F6DC D0 03 00 18 */ stfs f0, 0x18(r3)
/* 80C5F6E0 C0 1F 04 F0 */ lfs f0, 0x4f0(r31)
/* 80C5F6E4 D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 80C5F6E8 C0 1F 04 F4 */ lfs f0, 0x4f4(r31)
/* 80C5F6EC D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80C5F6F0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80C5F6F4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80C5F6F8 80 9F 05 A8 */ lwz r4, 0x5a8(r31)
/* 80C5F6FC 38 84 00 24 */ addi r4, r4, 0x24
/* 80C5F700 4B 6E 6D B1 */ bl PSMTXCopy
/* 80C5F704 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80C5F708 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80C5F70C 7C 08 03 A6 */ mtlr r0
/* 80C5F710 38 21 00 10 */ addi r1, r1, 0x10
/* 80C5F714 4E 80 00 20 */ blr

View File

@ -6,7 +6,6 @@
class mDoHIO_entry_c {
public:
virtual ~mDoHIO_entry_c() {}
u8 unk_0x4;
};
#endif /* M_DO_M_DO_HOSTIO_H */

View File

@ -1,6 +1,28 @@
#ifndef D_A_OBJ_LV4HSTARGET_H
#define D_A_OBJ_LV4HSTARGET_H
#include "dolphin/types.h"
#include "d/bg/d_bg_s_movebg_actor.h"
#include "f_op/f_op_actor_mng.h"
#include "m_Do/m_Do_hostIO.h"
class daLv4HsTarget_c : public dBgS_MoveBgActor {
public:
/* 80C5F690 */ void setBaseMtx();
/* 80C5F784 */ int create();
/* 80C5F718 */ virtual int CreateHeap();
/* 80C5F85C */ virtual int Execute(Mtx**);
/* 80C5F870 */ virtual int Draw();
/* 80C5F8D4 */ virtual int Delete();
/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* mpModel;
};
class daLv4HsTarget_HIO_c : public mDoHIO_entry_c {
public:
/* 80C5F62C */ daLv4HsTarget_HIO_c();
/* 80C5F990 */ virtual ~daLv4HsTarget_HIO_c() {}
};
#endif /* D_A_OBJ_LV4HSTARGET_H */

View File

@ -27,6 +27,8 @@ class daTagCstaSw_HIO_c : public mDoHIO_entry_c {
public:
/* 805A202C */ daTagCstaSw_HIO_c();
/* 805A2480 */ virtual ~daTagCstaSw_HIO_c();
u8 unk_0x4;
};
#endif /* D_A_TAG_CSTASW_H */

View File

@ -13,13 +13,13 @@ public:
/* 8048EF6C */ int Draw();
/* 8048EF74 */ void initialize();
/* 0x568 */ dMsgFlow_c field_0x568;
/* 0x5B4 */ cBgS_GndChk field_0x5b4;
/* 0x568 */ dMsgFlow_c mMsgFlow;
/* 0x5B4 */ cBgS_GndChk mGndChk;
/* 0x5F0 */ u32 field_0x5f0;
/* 0x5F4 */ f32 field_0x5f4;
/* 0x5F4 */ f32 mGroundCross;
/* 0x5F8 */ s32 field_0x5f8;
/* 0x5FC */ u32 field_0x5fc;
/* 0x600 */ s32 field_0x600;
/* 0x600 */ int mFlowIndex;
/* 0x604 */ u8 field_0x604;
/* 8048ECAC */ virtual ~daTag_Lantern_c();

View File

@ -27,6 +27,7 @@ public:
/* 80D5B2EC */ daLv6CstaSw_HIO_c();
/* 80D5B740 */ virtual ~daLv6CstaSw_HIO_c();
u8 unk_0x4;
};
#endif /* D_A_TAG_LV6CSTASW_H */

View File

@ -22,6 +22,8 @@ class daTagPoFire_HIO_c : public mDoHIO_entry_c {
public:
/* 80D5DACC */ daTagPoFire_HIO_c();
/* 80D5DCB0 */ virtual ~daTagPoFire_HIO_c();
u8 unk_0x4;
};
#endif /* D_A_TAG_POFIRE_H */

View File

@ -1,349 +1,126 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_obj_lv4HsTarget
//
/**
* d_a_obj_lv4HsTarget.cpp
* Arbiter's Grounds Clawshot Target
*/
#include "rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct mDoMtx_stack_c {
static u8 now[48];
};
struct mDoHIO_entry_c {
/* 80C5F648 */ ~mDoHIO_entry_c();
};
struct fopAc_ac_c {};
struct daLv4HsTarget_c {
/* 80C5F690 */ void setBaseMtx();
/* 80C5F718 */ void CreateHeap();
/* 80C5F784 */ void create();
/* 80C5F85C */ void Execute(f32 (**)[3][4]);
/* 80C5F870 */ void Draw();
/* 80C5F8D4 */ void Delete();
};
struct daLv4HsTarget_HIO_c {
/* 80C5F62C */ daLv4HsTarget_HIO_c();
/* 80C5F990 */ ~daLv4HsTarget_HIO_c();
};
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 dBgW {};
struct cBgS_PolyInfo {};
struct csXyz {};
struct dBgS_MoveBgActor {
/* 80078624 */ dBgS_MoveBgActor();
/* 80078690 */ bool Create();
/* 800786B0 */ bool IsDelete();
/* 800786B8 */ bool ToFore();
/* 800786C0 */ bool ToBack();
/* 800787BC */ void MoveBGCreate(char const*, int,
void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*,
csXyz*, csXyz*),
u32, f32 (*)[3][4]);
/* 800788DC */ void MoveBGDelete();
/* 80078950 */ void MoveBGExecute();
};
struct J3DModel {};
//
// Forward References:
//
extern "C" void __ct__19daLv4HsTarget_HIO_cFv();
extern "C" void __dt__14mDoHIO_entry_cFv();
extern "C" void setBaseMtx__15daLv4HsTarget_cFv();
extern "C" void CreateHeap__15daLv4HsTarget_cFv();
extern "C" void create__15daLv4HsTarget_cFv();
extern "C" void Execute__15daLv4HsTarget_cFPPA3_A4_f();
extern "C" void Draw__15daLv4HsTarget_cFv();
extern "C" void Delete__15daLv4HsTarget_cFv();
extern "C" static void daLv4HsTarget_Draw__FP15daLv4HsTarget_c();
extern "C" static void daLv4HsTarget_Execute__FP15daLv4HsTarget_c();
extern "C" static void daLv4HsTarget_Delete__FP15daLv4HsTarget_c();
extern "C" static void daLv4HsTarget_Create__FP10fopAc_ac_c();
extern "C" void __dt__19daLv4HsTarget_HIO_cFv();
extern "C" void __sinit_d_a_obj_lv4HsTarget_cpp();
extern "C" extern char const* const d_a_obj_lv4HsTarget__stringBase0;
//
// 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 fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
extern "C" void __ct__16dBgS_MoveBgActorFv();
extern "C" bool Create__16dBgS_MoveBgActorFv();
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
extern "C" void
MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
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" 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];
extern "C" void __register_global_object();
//
// Declarations:
//
/* ############################################################################################## */
/* 80C5FA48-80C5FA68 -00001 0020+00 1/0 0/0 0/0 .data l_daLv4HsTarget_Method */
SECTION_DATA static void* l_daLv4HsTarget_Method[8] = {
(void*)daLv4HsTarget_Create__FP10fopAc_ac_c,
(void*)daLv4HsTarget_Delete__FP15daLv4HsTarget_c,
(void*)daLv4HsTarget_Execute__FP15daLv4HsTarget_c,
(void*)NULL,
(void*)daLv4HsTarget_Draw__FP15daLv4HsTarget_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 80C5FA68-80C5FA98 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv4HsTarget */
SECTION_DATA extern void* g_profile_Obj_Lv4HsTarget[12] = {
(void*)0xFFFFFFFD, (void*)0x0003FFFD,
(void*)0x009F0000, (void*)&g_fpcLf_Method,
(void*)0x000005AC, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x02800000, (void*)&l_daLv4HsTarget_Method,
(void*)0x00040100, (void*)0x000E0000,
};
/* 80C5FA98-80C5FAC0 000050 0028+00 1/1 0/0 0/0 .data __vt__15daLv4HsTarget_c */
SECTION_DATA extern void* __vt__15daLv4HsTarget_c[10] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)CreateHeap__15daLv4HsTarget_cFv,
(void*)Create__16dBgS_MoveBgActorFv,
(void*)Execute__15daLv4HsTarget_cFPPA3_A4_f,
(void*)Draw__15daLv4HsTarget_cFv,
(void*)Delete__15daLv4HsTarget_cFv,
(void*)IsDelete__16dBgS_MoveBgActorFv,
(void*)ToFore__16dBgS_MoveBgActorFv,
(void*)ToBack__16dBgS_MoveBgActorFv,
};
/* 80C5FAC0-80C5FACC 000078 000C+00 2/2 0/0 0/0 .data __vt__19daLv4HsTarget_HIO_c */
SECTION_DATA extern void* __vt__19daLv4HsTarget_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__19daLv4HsTarget_HIO_cFv,
};
/* 80C5FACC-80C5FAD8 000084 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14mDoHIO_entry_cFv,
};
#include "JSystem/JKernel/JKRHeap.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
/* 80C5F62C-80C5F648 0000EC 001C+00 1/1 0/0 0/0 .text __ct__19daLv4HsTarget_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daLv4HsTarget_HIO_c::daLv4HsTarget_HIO_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/__ct__19daLv4HsTarget_HIO_cFv.s"
}
#pragma pop
/* 80C5F648-80C5F690 000108 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm mDoHIO_entry_c::~mDoHIO_entry_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/__dt__14mDoHIO_entry_cFv.s"
}
#pragma pop
daLv4HsTarget_HIO_c::daLv4HsTarget_HIO_c() {}
/* 80C5F690-80C5F718 000150 0088+00 1/1 0/0 0/0 .text setBaseMtx__15daLv4HsTarget_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::setBaseMtx() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/setBaseMtx__15daLv4HsTarget_cFv.s"
}
#pragma pop
void daLv4HsTarget_c::setBaseMtx() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
/* ############################################################################################## */
/* 80C5FA3C-80C5FA3C 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80C5FA3C = "L4HsMato";
/* @stringBase0 padding */
SECTION_DEAD static char const* const pad_80C5FA45 = "\0\0";
#pragma pop
mpModel->setBaseScale(mScale);
mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get());
}
/* 80C5F718-80C5F784 0001D8 006C+00 1/0 0/0 0/0 .text CreateHeap__15daLv4HsTarget_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::CreateHeap() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/CreateHeap__15daLv4HsTarget_cFv.s"
int daLv4HsTarget_c::CreateHeap() {
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("L4HsMato", 4);
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
if (mpModel == NULL) {
return 0;
}
return 1;
}
#pragma pop
/* 80C5F784-80C5F85C 000244 00D8+00 1/1 0/0 0/0 .text create__15daLv4HsTarget_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::create() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/create__15daLv4HsTarget_cFv.s"
int daLv4HsTarget_c::create() {
if (!fopAcM_CheckCondition(this, 8)) {
new (this) daLv4HsTarget_c();
fopAcM_OnCondition(this, 8);
}
int phase = dComIfG_resLoad(&mPhase, "L4HsMato");
if (phase == cPhs_COMPLEATE_e) {
if (MoveBGCreate("L4HsMato", 7, dBgS_MoveBGProc_TypicalRotY, 0x1200, NULL) == cPhs_ERROR_e)
{
return cPhs_ERROR_e;
}
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
fopAcM_setCullSizeBox2(this, mpModel->getModelData());
setBaseMtx();
}
return phase;
}
#pragma pop
/* 80C5F85C-80C5F870 00031C 0014+00 1/0 0/0 0/0 .text Execute__15daLv4HsTarget_cFPPA3_A4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::Execute(f32 (**param_0)[3][4]) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/Execute__15daLv4HsTarget_cFPPA3_A4_f.s"
int daLv4HsTarget_c::Execute(Mtx** param_0) {
*param_0 = &mpModel->getBaseTRMtx();
return 1;
}
#pragma pop
/* 80C5F870-80C5F8D4 000330 0064+00 1/0 0/0 0/0 .text Draw__15daLv4HsTarget_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::Draw() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/Draw__15daLv4HsTarget_cFv.s"
int daLv4HsTarget_c::Draw() {
g_env_light.settingTevStruct(0x40, &current.pos, &mTevStr);
g_env_light.setLightTevColorType_MAJI(mpModel, &mTevStr);
mDoExt_modelUpdateDL(mpModel);
return 1;
}
#pragma pop
/* 80C5F8D4-80C5F904 000394 0030+00 1/0 0/0 0/0 .text Delete__15daLv4HsTarget_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daLv4HsTarget_c::Delete() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/Delete__15daLv4HsTarget_cFv.s"
int daLv4HsTarget_c::Delete() {
dComIfG_resDelete(&mPhase, "L4HsMato");
return 1;
}
#pragma pop
/* 80C5F904-80C5F930 0003C4 002C+00 1/0 0/0 0/0 .text daLv4HsTarget_Draw__FP15daLv4HsTarget_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv4HsTarget_Draw(daLv4HsTarget_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/daLv4HsTarget_Draw__FP15daLv4HsTarget_c.s"
static int daLv4HsTarget_Draw(daLv4HsTarget_c* i_this) {
return i_this->MoveBGDraw();
}
#pragma pop
/* 80C5F930-80C5F950 0003F0 0020+00 1/0 0/0 0/0 .text daLv4HsTarget_Execute__FP15daLv4HsTarget_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv4HsTarget_Execute(daLv4HsTarget_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/daLv4HsTarget_Execute__FP15daLv4HsTarget_c.s"
static int daLv4HsTarget_Execute(daLv4HsTarget_c* i_this) {
return i_this->MoveBGExecute();
}
#pragma pop
/* 80C5F950-80C5F970 000410 0020+00 1/0 0/0 0/0 .text daLv4HsTarget_Delete__FP15daLv4HsTarget_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv4HsTarget_Delete(daLv4HsTarget_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/daLv4HsTarget_Delete__FP15daLv4HsTarget_c.s"
static int daLv4HsTarget_Delete(daLv4HsTarget_c* i_this) {
return i_this->MoveBGDelete();
}
#pragma pop
/* 80C5F970-80C5F990 000430 0020+00 1/0 0/0 0/0 .text daLv4HsTarget_Create__FP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daLv4HsTarget_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/daLv4HsTarget_Create__FP10fopAc_ac_c.s"
static int daLv4HsTarget_Create(fopAc_ac_c* i_this) {
return static_cast<daLv4HsTarget_c*>(i_this)->create();
}
#pragma pop
/* 80C5F990-80C5F9EC 000450 005C+00 2/1 0/0 0/0 .text __dt__19daLv4HsTarget_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daLv4HsTarget_HIO_c::~daLv4HsTarget_HIO_c() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/__dt__19daLv4HsTarget_HIO_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80C5FAE0-80C5FAEC 000008 000C+00 1/1 0/0 0/0 .bss @3618 */
static u8 lit_3618[12];
/* 80C5FAEC-80C5FAF0 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */
static u8 l_HIO[4];
static daLv4HsTarget_HIO_c l_HIO;
/* 80C5F9EC-80C5FA28 0004AC 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_lv4HsTarget_cpp */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __sinit_d_a_obj_lv4HsTarget_cpp() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget/__sinit_d_a_obj_lv4HsTarget_cpp.s"
}
#pragma pop
/* ############################################################################################## */
/* 80C5FA48-80C5FA68 -00001 0020+00 1/0 0/0 0/0 .data l_daLv4HsTarget_Method */
static actor_method_class l_daLv4HsTarget_Method = {
(process_method_func)daLv4HsTarget_Create, (process_method_func)daLv4HsTarget_Delete,
(process_method_func)daLv4HsTarget_Execute, (process_method_func)NULL,
(process_method_func)daLv4HsTarget_Draw,
};
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80C5F9EC, __sinit_d_a_obj_lv4HsTarget_cpp);
#pragma pop
/* 80C5FA3C-80C5FA3C 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
/* 80C5FA68-80C5FA98 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv4HsTarget */
extern actor_process_profile_definition g_profile_Obj_Lv4HsTarget = {
-3,
3,
-3,
PROC_Obj_Lv4HsTarget,
&g_fpcLf_Method.mBase,
sizeof(daLv4HsTarget_c),
0,
0,
&g_fopAc_Method.base,
640,
&l_daLv4HsTarget_Method,
0x40100,
0,
14,
};

View File

@ -16,6 +16,7 @@ int daTag_Lantern_c::create() {
new (this) daTag_Lantern_c();
fopAcM_OnCondition(this, 8);
}
initialize();
return cPhs_COMPLEATE_e;
}
@ -28,35 +29,36 @@ int daTag_Lantern_c::Delete() {
/* 8048EDDC-8048EF6C 00021C 0190+00 2/2 0/0 0/0 .text Execute__15daTag_Lantern_cFv */
int daTag_Lantern_c::Execute() {
s32 sVar;
dComIfG_play_c& play = g_dComIfG_gameInfo.getPlay(); // fake match
dComIfG_play_c& play = g_dComIfG_gameInfo.getPlay(); // fake match
if (i_dComIfGp_event_runCheck()) {
if (mEvtInfo.mCommand == 1) {
if (mEvtInfo.checkCommandTalk()) {
if (!field_0x604) {
field_0x568.init(this, field_0x600, NULL, NULL);
field_0x604 += 1;
} else if (field_0x604 == 1 && field_0x568.doFlow(this, NULL, NULL)) {
mMsgFlow.init(this, mFlowIndex, 0, NULL);
field_0x604++;
} else if (field_0x604 == 1 && mMsgFlow.doFlow(this, NULL, 0)) {
play.getEvent().reset();
field_0x604 = 0;
field_0x5f8 = 0;
}
}
} else {
if (field_0x5f8) {
mEvtInfo.mCondition |= 1;
fopAcM_orderSpeakEvent(this, 0, 0);
}
} else if (field_0x5f8) {
mEvtInfo.i_onCondition(1);
fopAcM_orderSpeakEvent(this, 0, 0);
}
field_0x5b4.SetPos(&current.pos);
field_0x5f4 = dComIfG_Bgsp().GroundCross(&field_0x5b4);
if (field_0x5f4 != -1000000000.0f) {
sVar = dComIfG_Bgsp().GetRoomId(field_0x5b4);
mTevStr.mEnvrIdxOverride = dComIfG_Bgsp().GetPolyColor(field_0x5b4);
mGndChk.SetPos(&current.pos);
mGroundCross = dComIfG_Bgsp().GroundCross(&mGndChk);
s32 room_no;
if (mGroundCross != -1000000000.0f) {
room_no = dComIfG_Bgsp().GetRoomId(mGndChk);
mTevStr.mEnvrIdxOverride = dComIfG_Bgsp().GetPolyColor(mGndChk);
} else {
sVar = dComIfGp_roomControl_getStayNo();
room_no = dComIfGp_roomControl_getStayNo();
}
mTevStr.mRoomNo = sVar;
mTevStr.mRoomNo = room_no;
fopAcM_SetRoomNo(this, mTevStr.mRoomNo);
mAttentionInfo.mFlags = 0;
mAttentionInfo.mPosition = current.pos;
@ -72,16 +74,20 @@ int daTag_Lantern_c::Draw() {
/* 8048EF74-8048F024 0003B4 00B0+00 1/1 0/0 0/0 .text initialize__15daTag_Lantern_cFv */
void daTag_Lantern_c::initialize() {
fopAcM_setCullSizeBox(this, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
if (orig.angle.z != 0xffff) {
field_0x600 = orig.angle.z;
if (orig.angle.z != 0xFFFF) {
mFlowIndex = orig.angle.z;
} else {
field_0x600 = -1;
mFlowIndex = -1;
}
orig.angle.z = 0;
field_0x5fc = fopAcM_GetParam(this) & 0xfff;
field_0x5fc = fopAcM_GetParam(this) & 0xFFF;
mScale.x *= 100.0f;
mScale.y *= 100.0f;
mScale.z *= 100.0f;
Execute();
}
@ -110,9 +116,6 @@ static int daTag_Lantern_IsDelete(void* i_this) {
return 1;
}
/* 8048F1C8-8048F1D4 000008 000C+00 1/1 0/0 0/0 .bss @3622 */
static u8 lit_3622[12];
/* 8048F1D4-8048F1D8 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */
static daTag_Lantern_Param_c l_HIO;
@ -134,7 +137,7 @@ extern actor_process_profile_definition g_profile_TAG_LANTERN = {
0, // mSizeOther
0, // mParameters
&g_fopAc_Method.base, // mSubMtd
0x011E, // mPriority
286, // mPriority
&daTag_Lantern_MethodTable, // mSubMtd
0x00040000, // mStatus
0, // mActorType