mirror of https://github.com/zeldaret/tp.git
work on d_a_npc_the and d_a_npc (#2120)
This commit is contained in:
parent
54d864e390
commit
73ead19443
16
Progress.md
16
Progress.md
|
|
@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
|
|||
.init | 97.972973% | 9280 | 9472
|
||||
.extab | 100.000000% | 96 | 96
|
||||
.extabindex | 100.000000% | 96 | 96
|
||||
.text | 48.104069% | 1730084 | 3596544
|
||||
.text | 48.136322% | 1731244 | 3596544
|
||||
.ctors | 100.000000% | 448 | 448
|
||||
.dtors | 100.000000% | 32 | 32
|
||||
.rodata | 100.000000% | 193856 | 193856
|
||||
.data | 100.000000% | 197632 | 197632
|
||||
.sdata | 100.000000% | 1408 | 1408
|
||||
.sdata2 | 100.000000% | 20832 | 20832
|
||||
Total | 53.573631% | 2154020 | 4020672
|
||||
Total | 53.602482% | 2155180 | 4020672
|
||||
|
||||
## Total
|
||||
|
||||
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
||||
---|---|---|---
|
||||
main.dol | 53.573631% | 2154020 | 4020672
|
||||
RELs | 37.140484% | 4271276 | 11500324
|
||||
Total | 41.397446% | 6425296 | 15520996
|
||||
main.dol | 53.602482% | 2155180 | 4020672
|
||||
RELs | 37.186674% | 4276588 | 11500324
|
||||
Total | 41.439145% | 6431768 | 15520996
|
||||
|
||||
## RELs
|
||||
|
||||
|
|
@ -313,7 +313,7 @@ d_a_npc_soldierA | 34.996894% | 6760 | 19316
|
|||
d_a_npc_soldierB | 35.587267% | 6484 | 18220
|
||||
d_a_npc_sq | 39.651108% | 3364 | 8484
|
||||
d_a_npc_taro | 38.152632% | 28996 | 76000
|
||||
d_a_npc_the | 34.936999% | 9760 | 27936
|
||||
d_a_npc_the | 42.167812% | 11780 | 27936
|
||||
d_a_npc_theB | 34.129794% | 9256 | 27120
|
||||
d_a_npc_tk | 22.166176% | 12656 | 57096
|
||||
d_a_npc_tkc | 32.075472% | 7820 | 24380
|
||||
|
|
@ -668,7 +668,7 @@ d_a_obj_wdStick | 32.908234% | 4748 | 14428
|
|||
d_a_obj_web0 | 75.286533% | 4204 | 5584
|
||||
d_a_obj_web1 | 100.000000% | 5772 | 5772
|
||||
d_a_obj_well_cover | 100.000000% | 3492 | 3492
|
||||
d_a_obj_wflag | 41.214286% | 2308 | 5600
|
||||
d_a_obj_wflag | 100.000000% | 5600 | 5600
|
||||
d_a_obj_wind_stone | 100.000000% | 4944 | 4944
|
||||
d_a_obj_window | 100.000000% | 4820 | 4820
|
||||
d_a_obj_wood_pendulum | 44.455748% | 1748 | 3932
|
||||
|
|
@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244
|
|||
d_a_warp_bug | 100.000000% | 2024 | 2024
|
||||
d_a_ykgr | 44.400631% | 2252 | 5072
|
||||
f_pc_profile_lst | 100.000000% | 28156 | 28156
|
||||
Total | 37.140484% | 4271276 | 11500324
|
||||
Total | 37.186674% | 4276588 | 11500324
|
||||
|
|
|
|||
|
|
@ -1,41 +0,0 @@
|
|||
lbl_80153954:
|
||||
/* 80153954 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80153958 7C 08 02 A6 */ mflr r0
|
||||
/* 8015395C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80153960 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80153964 48 20 E8 71 */ bl _savegpr_27
|
||||
/* 80153968 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 8015396C 7C BC 2B 78 */ mr r28, r5
|
||||
/* 80153970 7C DD 33 78 */ mr r29, r6
|
||||
/* 80153974 7C FE 3B 78 */ mr r30, r7
|
||||
/* 80153978 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 8015397C 41 82 00 1C */ beq lbl_80153998
|
||||
/* 80153980 90 9B 01 00 */ stw r4, 0x100(r27)
|
||||
/* 80153984 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80153988 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 8015398C 38 63 4F F8 */ addi r3, r3, 0x4ff8
|
||||
/* 80153990 80 9B 01 00 */ lwz r4, 0x100(r27)
|
||||
/* 80153994 4B EF 2E 6D */ bl setObjectArchive__16dEvent_manager_cFPc
|
||||
lbl_80153998:
|
||||
/* 80153998 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 8015399C 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 801539A0 38 7F 4F F8 */ addi r3, r31, 0x4ff8
|
||||
/* 801539A4 7F 64 DB 78 */ mr r4, r27
|
||||
/* 801539A8 7F 85 E3 78 */ mr r5, r28
|
||||
/* 801539AC 38 C0 00 FF */ li r6, 0xff
|
||||
/* 801539B0 4B EF 3D A9 */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc
|
||||
/* 801539B4 B0 7B 09 D4 */ sth r3, 0x9d4(r27)
|
||||
/* 801539B8 38 7F 4E C8 */ addi r3, r31, 0x4ec8
|
||||
/* 801539BC 7F 64 DB 78 */ mr r4, r27
|
||||
/* 801539C0 4B EE EB 59 */ bl reset__14dEvt_control_cFPv
|
||||
/* 801539C4 7F 63 DB 78 */ mr r3, r27
|
||||
/* 801539C8 A8 9B 09 D4 */ lha r4, 0x9d4(r27)
|
||||
/* 801539CC 7F A5 EB 78 */ mr r5, r29
|
||||
/* 801539D0 7F C6 F3 78 */ mr r6, r30
|
||||
/* 801539D4 4B EC 7C 11 */ bl fopAcM_orderChangeEventId__FP10fopAc_ac_csUsUs
|
||||
/* 801539D8 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 801539DC 48 20 E8 45 */ bl _restgpr_27
|
||||
/* 801539E0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 801539E4 7C 08 03 A6 */ mtlr r0
|
||||
/* 801539E8 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 801539EC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
lbl_8015387C:
|
||||
/* 8015387C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80153880 7C 08 02 A6 */ mflr r0
|
||||
/* 80153884 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80153888 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 8015388C 48 20 E9 45 */ bl _savegpr_26
|
||||
/* 80153890 7C 7A 1B 78 */ mr r26, r3
|
||||
/* 80153894 7C 9B 23 78 */ mr r27, r4
|
||||
/* 80153898 7C DC 33 78 */ mr r28, r6
|
||||
/* 8015389C 7C FD 3B 78 */ mr r29, r7
|
||||
/* 801538A0 7D 1E 43 78 */ mr r30, r8
|
||||
/* 801538A4 7D 3F 4B 78 */ mr r31, r9
|
||||
/* 801538A8 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 801538AC 41 82 00 40 */ beq lbl_801538EC
|
||||
/* 801538B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 801538B4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 801538B8 38 63 4F F8 */ addi r3, r3, 0x4ff8
|
||||
/* 801538BC 7F 44 D3 78 */ mr r4, r26
|
||||
/* 801538C0 38 C0 00 FF */ li r6, 0xff
|
||||
/* 801538C4 4B EF 3E 95 */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc
|
||||
/* 801538C8 B0 7A 09 D4 */ sth r3, 0x9d4(r26)
|
||||
/* 801538CC 7F 43 D3 78 */ mr r3, r26
|
||||
/* 801538D0 A8 9A 09 D4 */ lha r4, 0x9d4(r26)
|
||||
/* 801538D4 7F C5 F3 78 */ mr r5, r30
|
||||
/* 801538D8 7F 86 E3 78 */ mr r6, r28
|
||||
/* 801538DC 7F A7 EB 78 */ mr r7, r29
|
||||
/* 801538E0 7F E8 FB 78 */ mr r8, r31
|
||||
/* 801538E4 4B EC 7D 99 */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs
|
||||
/* 801538E8 48 00 00 54 */ b lbl_8015393C
|
||||
lbl_801538EC:
|
||||
/* 801538EC 88 1A 09 F4 */ lbz r0, 0x9f4(r26)
|
||||
/* 801538F0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 801538F4 41 82 00 10 */ beq lbl_80153904
|
||||
/* 801538F8 48 00 BB 2D */ bl checkNowWolfEyeUp__9daPy_py_cFv
|
||||
/* 801538FC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80153900 41 82 00 3C */ beq lbl_8015393C
|
||||
lbl_80153904:
|
||||
/* 80153904 80 7A 05 5C */ lwz r3, 0x55c(r26)
|
||||
/* 80153908 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
|
||||
/* 8015390C 40 82 00 0C */ bne lbl_80153918
|
||||
/* 80153910 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
|
||||
/* 80153914 41 82 00 28 */ beq lbl_8015393C
|
||||
lbl_80153918:
|
||||
/* 80153918 A0 1A 00 FA */ lhz r0, 0xfa(r26)
|
||||
/* 8015391C 60 00 00 01 */ ori r0, r0, 1
|
||||
/* 80153920 B0 1A 00 FA */ sth r0, 0xfa(r26)
|
||||
/* 80153924 2C 1B 00 00 */ cmpwi r27, 0
|
||||
/* 80153928 41 82 00 14 */ beq lbl_8015393C
|
||||
/* 8015392C 7F 43 D3 78 */ mr r3, r26
|
||||
/* 80153930 38 80 00 00 */ li r4, 0
|
||||
/* 80153934 38 A0 00 00 */ li r5, 0
|
||||
/* 80153938 4B EC 78 65 */ bl fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs
|
||||
lbl_8015393C:
|
||||
/* 8015393C 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80153940 48 20 E8 DD */ bl _restgpr_26
|
||||
/* 80153944 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80153948 7C 08 03 A6 */ mtlr r0
|
||||
/* 8015394C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80153950 4E 80 00 20 */ blr
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
lbl_80152D84:
|
||||
/* 80152D84 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80152D88 7C 08 02 A6 */ mflr r0
|
||||
/* 80152D8C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80152D90 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80152D94 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 80152D98 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80152D9C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80152DA0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80152DA4 3B E3 0F 38 */ addi r31, r3, 0xf38
|
||||
/* 80152DA8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80152DAC 38 9E 0A 58 */ addi r4, r30, 0xa58
|
||||
/* 80152DB0 4B F2 1E 39 */ bl GetPolyColor__4dBgSFRC13cBgS_PolyInfo
|
||||
/* 80152DB4 98 7E 04 8D */ stb r3, 0x48d(r30)
|
||||
/* 80152DB8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80152DBC 38 9E 0A 58 */ addi r4, r30, 0xa58
|
||||
/* 80152DC0 4B F2 23 41 */ bl GetRoomId__4dBgSFRC13cBgS_PolyInfo
|
||||
/* 80152DC4 98 7E 04 8C */ stb r3, 0x48c(r30)
|
||||
/* 80152DC8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80152DCC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 80152DD0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80152DD4 7C 08 03 A6 */ mtlr r0
|
||||
/* 80152DD8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80152DDC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
lbl_801527FC:
|
||||
/* 801527FC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80152800 7C 08 02 A6 */ mflr r0
|
||||
/* 80152804 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80152808 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8015280C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 80152810 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80152814 80 63 05 68 */ lwz r3, 0x568(r3)
|
||||
/* 80152818 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 8015281C 38 7E 04 D0 */ addi r3, r30, 0x4d0
|
||||
/* 80152820 4B EB A5 45 */ bl transS__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 80152824 38 7E 08 F0 */ addi r3, r30, 0x8f0
|
||||
/* 80152828 4B EB A7 1D */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
|
||||
/* 8015282C 38 7E 04 EC */ addi r3, r30, 0x4ec
|
||||
/* 80152830 4B EB A6 41 */ bl scaleM__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 80152834 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80152838 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 8015283C 38 9F 00 24 */ addi r4, r31, 0x24
|
||||
/* 80152840 48 1F 3C 71 */ bl PSMTXCopy
|
||||
/* 80152844 93 DF 00 14 */ stw r30, 0x14(r31)
|
||||
/* 80152848 C0 1E 09 78 */ lfs f0, 0x978(r30)
|
||||
/* 8015284C FC 00 02 10 */ fabs f0, f0
|
||||
/* 80152850 FC 20 00 18 */ frsp f1, f0
|
||||
/* 80152854 C0 0D 8C 00 */ lfs f0, G_CM3D_F_ABS_MIN(r13)
|
||||
/* 80152858 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8015285C 7C 00 00 26 */ mfcr r0
|
||||
/* 80152860 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f
|
||||
/* 80152864 40 82 00 14 */ bne lbl_80152878
|
||||
/* 80152868 38 00 00 01 */ li r0, 1
|
||||
/* 8015286C 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 80152870 98 03 00 55 */ stb r0, 0x55(r3)
|
||||
/* 80152874 48 00 00 10 */ b lbl_80152884
|
||||
lbl_80152878:
|
||||
/* 80152878 38 00 00 00 */ li r0, 0
|
||||
/* 8015287C 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 80152880 98 03 00 55 */ stb r0, 0x55(r3)
|
||||
lbl_80152884:
|
||||
/* 80152884 80 1E 09 9C */ lwz r0, 0x99c(r30)
|
||||
/* 80152888 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 8015288C 41 82 00 1C */ beq lbl_801528A8
|
||||
/* 80152890 C0 1E 05 7C */ lfs f0, 0x57c(r30)
|
||||
/* 80152894 80 7E 05 80 */ lwz r3, 0x580(r30)
|
||||
/* 80152898 D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 8015289C 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 801528A0 4B EB E9 4D */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
/* 801528A4 48 00 00 0C */ b lbl_801528B0
|
||||
lbl_801528A8:
|
||||
/* 801528A8 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 801528AC 4B EB E9 41 */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
lbl_801528B0:
|
||||
/* 801528B0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 801528B4 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 801528B8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 801528BC 7C 08 03 A6 */ mtlr r0
|
||||
/* 801528C0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 801528C4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
lbl_8015276C:
|
||||
/* 8015276C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80152770 7C 08 02 A6 */ mflr r0
|
||||
/* 80152774 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80152778 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8015277C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 80152780 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80152784 80 63 05 68 */ lwz r3, 0x568(r3)
|
||||
/* 80152788 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 8015278C 38 7E 04 D0 */ addi r3, r30, 0x4d0
|
||||
/* 80152790 4B EB A5 D5 */ bl transS__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 80152794 38 7E 08 F0 */ addi r3, r30, 0x8f0
|
||||
/* 80152798 4B EB A7 AD */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
|
||||
/* 8015279C 38 7E 04 EC */ addi r3, r30, 0x4ec
|
||||
/* 801527A0 4B EB A6 D1 */ bl scaleM__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 801527A4 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 801527A8 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 801527AC 38 9F 00 24 */ addi r4, r31, 0x24
|
||||
/* 801527B0 48 1F 3D 01 */ bl PSMTXCopy
|
||||
/* 801527B4 93 DF 00 14 */ stw r30, 0x14(r31)
|
||||
/* 801527B8 80 1E 09 9C */ lwz r0, 0x99c(r30)
|
||||
/* 801527BC 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 801527C0 41 82 00 1C */ beq lbl_801527DC
|
||||
/* 801527C4 C0 1E 05 7C */ lfs f0, 0x57c(r30)
|
||||
/* 801527C8 80 7E 05 80 */ lwz r3, 0x580(r30)
|
||||
/* 801527CC D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 801527D0 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 801527D4 4B EB EA 19 */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
/* 801527D8 48 00 00 0C */ b lbl_801527E4
|
||||
lbl_801527DC:
|
||||
/* 801527DC 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 801527E0 4B EB EA 0D */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
lbl_801527E4:
|
||||
/* 801527E4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 801527E8 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 801527EC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 801527F0 7C 08 03 A6 */ mtlr r0
|
||||
/* 801527F4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 801527F8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
lbl_80152DE0:
|
||||
/* 80152DE0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80152DE4 7C 08 02 A6 */ mflr r0
|
||||
/* 80152DE8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80152DEC 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80152DF0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80152DF4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80152DF8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80152DFC 38 63 0F 38 */ addi r3, r3, 0xf38
|
||||
/* 80152E00 38 9F 0A 58 */ addi r4, r31, 0xa58
|
||||
/* 80152E04 4B F2 22 FD */ bl GetRoomId__4dBgSFRC13cBgS_PolyInfo
|
||||
/* 80152E08 98 7F 04 E2 */ stb r3, 0x4e2(r31)
|
||||
/* 80152E0C 98 7F 07 CA */ stb r3, 0x7ca(r31)
|
||||
/* 80152E10 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80152E14 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80152E18 7C 08 03 A6 */ mtlr r0
|
||||
/* 80152E1C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80152E20 4E 80 00 20 */ blr
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
lbl_801526E8:
|
||||
/* 801526E8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 801526EC 7C 08 02 A6 */ mflr r0
|
||||
/* 801526F0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 801526F4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 801526F8 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 801526FC 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80152700 7C 9F 23 78 */ mr r31, r4
|
||||
/* 80152704 80 0D 8A 70 */ lwz r0, mFindCount__8daNpcF_c(r13)
|
||||
/* 80152708 2C 00 00 64 */ cmpwi r0, 0x64
|
||||
/* 8015270C 40 80 00 44 */ bge lbl_80152750
|
||||
/* 80152710 4B EC 65 D1 */ bl fopAc_IsActor__FPv
|
||||
/* 80152714 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80152718 41 82 00 38 */ beq lbl_80152750
|
||||
/* 8015271C 7C 1E F8 40 */ cmplw r30, r31
|
||||
/* 80152720 41 82 00 30 */ beq lbl_80152750
|
||||
/* 80152724 A8 6D 8A 74 */ lha r3, mSrchActorName__8daNpcF_c(r13)
|
||||
/* 80152728 A8 1E 00 08 */ lha r0, 8(r30)
|
||||
/* 8015272C 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 80152730 40 82 00 20 */ bne lbl_80152750
|
||||
/* 80152734 80 8D 8A 70 */ lwz r4, mFindCount__8daNpcF_c(r13)
|
||||
/* 80152738 54 80 10 3A */ slwi r0, r4, 2
|
||||
/* 8015273C 3C 60 80 42 */ lis r3, mFindActorPList__8daNpcF_c@ha /* 0x804257E8@ha */
|
||||
/* 80152740 38 63 57 E8 */ addi r3, r3, mFindActorPList__8daNpcF_c@l /* 0x804257E8@l */
|
||||
/* 80152744 7F C3 01 2E */ stwx r30, r3, r0
|
||||
/* 80152748 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 8015274C 90 0D 8A 70 */ stw r0, mFindCount__8daNpcF_c(r13)
|
||||
lbl_80152750:
|
||||
/* 80152750 38 60 00 00 */ li r3, 0
|
||||
/* 80152754 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80152758 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 8015275C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80152760 7C 08 03 A6 */ mtlr r0
|
||||
/* 80152764 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80152768 4E 80 00 20 */ blr
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
lbl_80152654:
|
||||
/* 80152654 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80152658 7C 08 02 A6 */ mflr r0
|
||||
/* 8015265C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80152660 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80152664 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80152668 80 0D 8A 70 */ lwz r0, mFindCount__8daNpcF_c(r13)
|
||||
/* 8015266C 2C 00 00 64 */ cmpwi r0, 0x64
|
||||
/* 80152670 40 80 00 60 */ bge lbl_801526D0
|
||||
/* 80152674 4B EC 66 6D */ bl fopAc_IsActor__FPv
|
||||
/* 80152678 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8015267C 41 82 00 54 */ beq lbl_801526D0
|
||||
/* 80152680 A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 80152684 2C 00 01 08 */ cmpwi r0, 0x108
|
||||
/* 80152688 41 82 00 2C */ beq lbl_801526B4
|
||||
/* 8015268C 2C 00 01 06 */ cmpwi r0, 0x106
|
||||
/* 80152690 41 82 00 24 */ beq lbl_801526B4
|
||||
/* 80152694 2C 00 01 0D */ cmpwi r0, 0x10d
|
||||
/* 80152698 41 82 00 1C */ beq lbl_801526B4
|
||||
/* 8015269C 2C 00 01 0C */ cmpwi r0, 0x10c
|
||||
/* 801526A0 41 82 00 14 */ beq lbl_801526B4
|
||||
/* 801526A4 2C 00 01 0A */ cmpwi r0, 0x10a
|
||||
/* 801526A8 41 82 00 0C */ beq lbl_801526B4
|
||||
/* 801526AC 2C 00 03 00 */ cmpwi r0, 0x300
|
||||
/* 801526B0 40 82 00 20 */ bne lbl_801526D0
|
||||
lbl_801526B4:
|
||||
/* 801526B4 80 8D 8A 70 */ lwz r4, mFindCount__8daNpcF_c(r13)
|
||||
/* 801526B8 54 80 10 3A */ slwi r0, r4, 2
|
||||
/* 801526BC 3C 60 80 42 */ lis r3, mFindActorPList__8daNpcF_c@ha /* 0x804257E8@ha */
|
||||
/* 801526C0 38 63 57 E8 */ addi r3, r3, mFindActorPList__8daNpcF_c@l /* 0x804257E8@l */
|
||||
/* 801526C4 7F E3 01 2E */ stwx r31, r3, r0
|
||||
/* 801526C8 38 04 00 01 */ addi r0, r4, 1
|
||||
/* 801526CC 90 0D 8A 70 */ stw r0, mFindCount__8daNpcF_c(r13)
|
||||
lbl_801526D0:
|
||||
/* 801526D0 38 60 00 00 */ li r3, 0
|
||||
/* 801526D4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 801526D8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 801526DC 7C 08 03 A6 */ mtlr r0
|
||||
/* 801526E0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 801526E4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
lbl_80AF9244:
|
||||
/* 80AF9244 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80AF9248 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF924C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80AF9250 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80AF9254 4B 86 8F 85 */ bl _savegpr_28
|
||||
/* 80AF9258 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 80AF925C 7C 9D 23 78 */ mr r29, r4
|
||||
/* 80AF9260 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80AF9264 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80AF9268 3B C3 4F F8 */ addi r30, r3, 0x4ff8
|
||||
/* 80AF926C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 80AF9270 4B 54 EC ED */ bl getMyNowCutName__16dEvent_manager_cFi
|
||||
/* 80AF9274 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80AF9278 7F C3 F3 78 */ mr r3, r30
|
||||
/* 80AF927C 7F A4 EB 78 */ mr r4, r29
|
||||
/* 80AF9280 4B 54 EA CD */ bl getIsAddvance__16dEvent_manager_cFi
|
||||
/* 80AF9284 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80AF9288 41 82 00 4C */ beq lbl_80AF92D4
|
||||
/* 80AF928C 80 9F 00 00 */ lwz r4, 0(r31)
|
||||
/* 80AF9290 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303036@ha */
|
||||
/* 80AF9294 38 03 30 36 */ addi r0, r3, 0x3036 /* 0x30303036@l */
|
||||
/* 80AF9298 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80AF929C 40 80 00 38 */ bge lbl_80AF92D4
|
||||
/* 80AF92A0 38 03 30 31 */ addi r0, r3, 0x3031
|
||||
/* 80AF92A4 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80AF92A8 40 80 00 08 */ bge lbl_80AF92B0
|
||||
/* 80AF92AC 48 00 00 28 */ b lbl_80AF92D4
|
||||
lbl_80AF92B0:
|
||||
/* 80AF92B0 7F 83 E3 78 */ mr r3, r28
|
||||
/* 80AF92B4 80 9C 0E 14 */ lwz r4, 0xe14(r28)
|
||||
/* 80AF92B8 38 A0 00 00 */ li r5, 0
|
||||
/* 80AF92BC 4B 65 AA 61 */ bl initTalk__8daNpcF_cFiPP10fopAc_ac_c
|
||||
/* 80AF92C0 A8 1C 0E 18 */ lha r0, 0xe18(r28)
|
||||
/* 80AF92C4 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 80AF92C8 41 82 00 0C */ beq lbl_80AF92D4
|
||||
/* 80AF92CC 38 00 00 02 */ li r0, 2
|
||||
/* 80AF92D0 B0 1C 0E 18 */ sth r0, 0xe18(r28)
|
||||
lbl_80AF92D4:
|
||||
/* 80AF92D4 80 9F 00 00 */ lwz r4, 0(r31)
|
||||
/* 80AF92D8 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303036@ha */
|
||||
/* 80AF92DC 38 03 30 36 */ addi r0, r3, 0x3036 /* 0x30303036@l */
|
||||
/* 80AF92E0 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80AF92E4 40 80 00 38 */ bge lbl_80AF931C
|
||||
/* 80AF92E8 38 03 30 31 */ addi r0, r3, 0x3031
|
||||
/* 80AF92EC 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80AF92F0 40 80 00 08 */ bge lbl_80AF92F8
|
||||
/* 80AF92F4 48 00 00 28 */ b lbl_80AF931C
|
||||
lbl_80AF92F8:
|
||||
/* 80AF92F8 7F 83 E3 78 */ mr r3, r28
|
||||
/* 80AF92FC 38 80 00 00 */ li r4, 0
|
||||
/* 80AF9300 38 A0 00 01 */ li r5, 1
|
||||
/* 80AF9304 38 C0 00 00 */ li r6, 0
|
||||
/* 80AF9308 4B 65 AA 7D */ bl talkProc__8daNpcF_cFPiiPP10fopAc_ac_c
|
||||
/* 80AF930C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80AF9310 41 82 00 0C */ beq lbl_80AF931C
|
||||
/* 80AF9314 38 60 00 01 */ li r3, 1
|
||||
/* 80AF9318 48 00 00 08 */ b lbl_80AF9320
|
||||
lbl_80AF931C:
|
||||
/* 80AF931C 38 60 00 00 */ li r3, 0
|
||||
lbl_80AF9320:
|
||||
/* 80AF9320 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80AF9324 4B 86 8F 01 */ bl _restgpr_28
|
||||
/* 80AF9328 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80AF932C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF9330 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80AF9334 4E 80 00 20 */ blr
|
||||
|
|
@ -1,282 +0,0 @@
|
|||
lbl_80AF9358:
|
||||
/* 80AF9358 94 21 FF C0 */ stwu r1, -0x40(r1)
|
||||
/* 80AF935C 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF9360 90 01 00 44 */ stw r0, 0x44(r1)
|
||||
/* 80AF9364 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 80AF9368 4B 86 8E 65 */ bl _savegpr_25
|
||||
/* 80AF936C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80AF9370 80 03 04 A0 */ lwz r0, 0x4a0(r3)
|
||||
/* 80AF9374 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
|
||||
/* 80AF9378 40 82 00 1C */ bne lbl_80AF9394
|
||||
/* 80AF937C 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 80AF9380 41 82 00 08 */ beq lbl_80AF9388
|
||||
/* 80AF9384 4B FF E3 49 */ bl __ct__10daNpcThe_cFv
|
||||
lbl_80AF9388:
|
||||
/* 80AF9388 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
|
||||
/* 80AF938C 60 00 00 08 */ ori r0, r0, 8
|
||||
/* 80AF9390 90 1F 04 A0 */ stw r0, 0x4a0(r31)
|
||||
lbl_80AF9394:
|
||||
/* 80AF9394 80 1F 00 B0 */ lwz r0, 0xb0(r31)
|
||||
/* 80AF9398 54 00 06 3E */ clrlwi r0, r0, 0x18
|
||||
/* 80AF939C 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 80AF93A0 41 82 00 28 */ beq lbl_80AF93C8
|
||||
/* 80AF93A4 40 80 00 10 */ bge lbl_80AF93B4
|
||||
/* 80AF93A8 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80AF93AC 40 80 00 14 */ bge lbl_80AF93C0
|
||||
/* 80AF93B0 48 00 00 28 */ b lbl_80AF93D8
|
||||
lbl_80AF93B4:
|
||||
/* 80AF93B4 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 80AF93B8 40 80 00 20 */ bge lbl_80AF93D8
|
||||
/* 80AF93BC 48 00 00 14 */ b lbl_80AF93D0
|
||||
lbl_80AF93C0:
|
||||
/* 80AF93C0 38 00 00 00 */ li r0, 0
|
||||
/* 80AF93C4 48 00 00 18 */ b lbl_80AF93DC
|
||||
lbl_80AF93C8:
|
||||
/* 80AF93C8 38 00 00 01 */ li r0, 1
|
||||
/* 80AF93CC 48 00 00 10 */ b lbl_80AF93DC
|
||||
lbl_80AF93D0:
|
||||
/* 80AF93D0 38 00 00 02 */ li r0, 2
|
||||
/* 80AF93D4 48 00 00 08 */ b lbl_80AF93DC
|
||||
lbl_80AF93D8:
|
||||
/* 80AF93D8 38 00 00 00 */ li r0, 0
|
||||
lbl_80AF93DC:
|
||||
/* 80AF93DC 98 1F 0E 1E */ stb r0, 0xe1e(r31)
|
||||
/* 80AF93E0 A8 7F 04 B4 */ lha r3, 0x4b4(r31)
|
||||
/* 80AF93E4 3C 03 00 00 */ addis r0, r3, 0
|
||||
/* 80AF93E8 28 00 FF FF */ cmplwi r0, 0xffff
|
||||
/* 80AF93EC 41 82 00 0C */ beq lbl_80AF93F8
|
||||
/* 80AF93F0 90 7F 0E 14 */ stw r3, 0xe14(r31)
|
||||
/* 80AF93F4 48 00 00 0C */ b lbl_80AF9400
|
||||
lbl_80AF93F8:
|
||||
/* 80AF93F8 38 00 FF FF */ li r0, -1
|
||||
/* 80AF93FC 90 1F 0E 14 */ stw r0, 0xe14(r31)
|
||||
lbl_80AF9400:
|
||||
/* 80AF9400 88 1F 0E 1E */ lbz r0, 0xe1e(r31)
|
||||
/* 80AF9404 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 80AF9408 40 82 00 50 */ bne lbl_80AF9458
|
||||
/* 80AF940C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80AF9410 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80AF9414 3B 63 07 F0 */ addi r27, r3, 0x7f0
|
||||
/* 80AF9418 7F 63 DB 78 */ mr r3, r27
|
||||
/* 80AF941C 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
|
||||
/* 80AF9420 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
|
||||
/* 80AF9424 A0 84 00 88 */ lhz r4, 0x88(r4)
|
||||
/* 80AF9428 4B 53 B5 95 */ bl isEventBit__11dSv_event_cCFUs
|
||||
/* 80AF942C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80AF9430 41 82 00 20 */ beq lbl_80AF9450
|
||||
/* 80AF9434 7F 63 DB 78 */ mr r3, r27
|
||||
/* 80AF9438 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
|
||||
/* 80AF943C 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
|
||||
/* 80AF9440 A0 84 00 9C */ lhz r4, 0x9c(r4)
|
||||
/* 80AF9444 4B 53 B5 79 */ bl isEventBit__11dSv_event_cCFUs
|
||||
/* 80AF9448 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80AF944C 41 82 00 0C */ beq lbl_80AF9458
|
||||
lbl_80AF9450:
|
||||
/* 80AF9450 38 60 00 05 */ li r3, 5
|
||||
/* 80AF9454 48 00 02 DC */ b lbl_80AF9730
|
||||
lbl_80AF9458:
|
||||
/* 80AF9458 3B 40 00 00 */ li r26, 0
|
||||
/* 80AF945C 3B 20 00 00 */ li r25, 0
|
||||
/* 80AF9460 3B C0 00 00 */ li r30, 0
|
||||
/* 80AF9464 3B A0 00 00 */ li r29, 0
|
||||
/* 80AF9468 3C 60 80 B0 */ lis r3, l_resNames@ha /* 0x80AFC380@ha */
|
||||
/* 80AF946C 3B 63 C3 80 */ addi r27, r3, l_resNames@l /* 0x80AFC380@l */
|
||||
/* 80AF9470 3C 60 80 B0 */ lis r3, l_loadRes_list@ha /* 0x80AFC374@ha */
|
||||
/* 80AF9474 3B 83 C3 74 */ addi r28, r3, l_loadRes_list@l /* 0x80AFC374@l */
|
||||
/* 80AF9478 48 00 00 48 */ b lbl_80AF94C0
|
||||
lbl_80AF947C:
|
||||
/* 80AF947C 38 7D 0D E8 */ addi r3, r29, 0xde8
|
||||
/* 80AF9480 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 80AF9484 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 80AF9488 7C 9B 00 2E */ lwzx r4, r27, r0
|
||||
/* 80AF948C 4B 53 3A 31 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
|
||||
/* 80AF9490 2C 03 00 05 */ cmpwi r3, 5
|
||||
/* 80AF9494 41 82 00 0C */ beq lbl_80AF94A0
|
||||
/* 80AF9498 2C 03 00 03 */ cmpwi r3, 3
|
||||
/* 80AF949C 40 82 00 0C */ bne lbl_80AF94A8
|
||||
lbl_80AF94A0:
|
||||
/* 80AF94A0 38 60 00 05 */ li r3, 5
|
||||
/* 80AF94A4 48 00 02 8C */ b lbl_80AF9730
|
||||
lbl_80AF94A8:
|
||||
/* 80AF94A8 2C 03 00 04 */ cmpwi r3, 4
|
||||
/* 80AF94AC 40 82 00 08 */ bne lbl_80AF94B4
|
||||
/* 80AF94B0 3B 5A 00 01 */ addi r26, r26, 1
|
||||
lbl_80AF94B4:
|
||||
/* 80AF94B4 3B 39 00 01 */ addi r25, r25, 1
|
||||
/* 80AF94B8 3B DE 00 04 */ addi r30, r30, 4
|
||||
/* 80AF94BC 3B BD 00 08 */ addi r29, r29, 8
|
||||
lbl_80AF94C0:
|
||||
/* 80AF94C0 88 9F 0E 1E */ lbz r4, 0xe1e(r31)
|
||||
/* 80AF94C4 54 80 15 BA */ rlwinm r0, r4, 2, 0x16, 0x1d
|
||||
/* 80AF94C8 7C 7C 00 2E */ lwzx r3, r28, r0
|
||||
/* 80AF94CC 7C 03 F0 2E */ lwzx r0, r3, r30
|
||||
/* 80AF94D0 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80AF94D4 40 80 FF A8 */ bge lbl_80AF947C
|
||||
/* 80AF94D8 7C 1A C8 00 */ cmpw r26, r25
|
||||
/* 80AF94DC 40 82 02 50 */ bne lbl_80AF972C
|
||||
/* 80AF94E0 38 A0 00 00 */ li r5, 0
|
||||
/* 80AF94E4 2C 04 00 01 */ cmpwi r4, 1
|
||||
/* 80AF94E8 41 82 00 28 */ beq lbl_80AF9510
|
||||
/* 80AF94EC 40 80 00 10 */ bge lbl_80AF94FC
|
||||
/* 80AF94F0 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80AF94F4 40 80 00 14 */ bge lbl_80AF9508
|
||||
/* 80AF94F8 48 00 00 24 */ b lbl_80AF951C
|
||||
lbl_80AF94FC:
|
||||
/* 80AF94FC 2C 04 00 03 */ cmpwi r4, 3
|
||||
/* 80AF9500 40 80 00 1C */ bge lbl_80AF951C
|
||||
/* 80AF9504 48 00 00 14 */ b lbl_80AF9518
|
||||
lbl_80AF9508:
|
||||
/* 80AF9508 38 A0 4D 70 */ li r5, 0x4d70
|
||||
/* 80AF950C 48 00 00 10 */ b lbl_80AF951C
|
||||
lbl_80AF9510:
|
||||
/* 80AF9510 38 A0 4C C0 */ li r5, 0x4cc0
|
||||
/* 80AF9514 48 00 00 08 */ b lbl_80AF951C
|
||||
lbl_80AF9518:
|
||||
/* 80AF9518 38 A0 4D 80 */ li r5, 0x4d80
|
||||
lbl_80AF951C:
|
||||
/* 80AF951C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9520 3C 80 80 AF */ lis r4, createHeapCallBack__10daNpcThe_cFP10fopAc_ac_c@ha /* 0x80AF7CB0@ha */
|
||||
/* 80AF9524 38 84 7C B0 */ addi r4, r4, createHeapCallBack__10daNpcThe_cFP10fopAc_ac_c@l /* 0x80AF7CB0@l */
|
||||
/* 80AF9528 4B 52 0F 89 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
|
||||
/* 80AF952C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 80AF9530 40 82 00 0C */ bne lbl_80AF953C
|
||||
/* 80AF9534 38 60 00 05 */ li r3, 5
|
||||
/* 80AF9538 48 00 01 F8 */ b lbl_80AF9730
|
||||
lbl_80AF953C:
|
||||
/* 80AF953C 88 1F 0E 1E */ lbz r0, 0xe1e(r31)
|
||||
/* 80AF9540 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80AF9544 41 82 00 14 */ beq lbl_80AF9558
|
||||
/* 80AF9548 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 80AF954C 41 82 00 0C */ beq lbl_80AF9558
|
||||
/* 80AF9550 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 80AF9554 40 82 00 0C */ bne lbl_80AF9560
|
||||
lbl_80AF9558:
|
||||
/* 80AF9558 38 00 00 00 */ li r0, 0
|
||||
/* 80AF955C 48 00 00 08 */ b lbl_80AF9564
|
||||
lbl_80AF9560:
|
||||
/* 80AF9560 38 00 00 01 */ li r0, 1
|
||||
lbl_80AF9564:
|
||||
/* 80AF9564 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
||||
/* 80AF9568 41 82 00 0C */ beq lbl_80AF9574
|
||||
/* 80AF956C 38 60 00 05 */ li r3, 5
|
||||
/* 80AF9570 48 00 01 C0 */ b lbl_80AF9730
|
||||
lbl_80AF9574:
|
||||
/* 80AF9574 80 7F 05 68 */ lwz r3, 0x568(r31)
|
||||
/* 80AF9578 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 80AF957C 38 03 00 24 */ addi r0, r3, 0x24
|
||||
/* 80AF9580 90 1F 05 04 */ stw r0, 0x504(r31)
|
||||
/* 80AF9584 80 7F 05 68 */ lwz r3, 0x568(r31)
|
||||
/* 80AF9588 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 80AF958C 80 83 00 04 */ lwz r4, 4(r3)
|
||||
/* 80AF9590 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9594 4B 52 0F E5 */ bl fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData
|
||||
/* 80AF9598 38 7F 0B 48 */ addi r3, r31, 0xb48
|
||||
/* 80AF959C 38 9F 04 D0 */ addi r4, r31, 0x4d0
|
||||
/* 80AF95A0 38 BF 05 38 */ addi r5, r31, 0x538
|
||||
/* 80AF95A4 38 C0 00 03 */ li r6, 3
|
||||
/* 80AF95A8 38 E0 00 01 */ li r7, 1
|
||||
/* 80AF95AC 4B 7C 6F 85 */ bl init__10Z2CreatureFP3VecP3VecUcUc
|
||||
/* 80AF95B0 38 7F 07 E4 */ addi r3, r31, 0x7e4
|
||||
/* 80AF95B4 3C 80 80 B0 */ lis r4, m__16daNpcThe_Param_c@ha /* 0x80AFBE0C@ha */
|
||||
/* 80AF95B8 3B A4 BE 0C */ addi r29, r4, m__16daNpcThe_Param_c@l /* 0x80AFBE0C@l */
|
||||
/* 80AF95BC C0 3D 00 1C */ lfs f1, 0x1c(r29)
|
||||
/* 80AF95C0 C0 5D 00 18 */ lfs f2, 0x18(r29)
|
||||
/* 80AF95C4 4B 57 C9 95 */ bl SetWall__12dBgS_AcchCirFff
|
||||
/* 80AF95C8 38 1F 04 E4 */ addi r0, r31, 0x4e4
|
||||
/* 80AF95CC 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 80AF95D0 38 7F 05 D0 */ addi r3, r31, 0x5d0
|
||||
/* 80AF95D4 38 9F 04 D0 */ addi r4, r31, 0x4d0
|
||||
/* 80AF95D8 38 BF 04 BC */ addi r5, r31, 0x4bc
|
||||
/* 80AF95DC 7F E6 FB 78 */ mr r6, r31
|
||||
/* 80AF95E0 38 E0 00 01 */ li r7, 1
|
||||
/* 80AF95E4 39 1F 07 E4 */ addi r8, r31, 0x7e4
|
||||
/* 80AF95E8 39 3F 04 F8 */ addi r9, r31, 0x4f8
|
||||
/* 80AF95EC 39 5F 04 DC */ addi r10, r31, 0x4dc
|
||||
/* 80AF95F0 4B 57 CC 59 */ bl Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz
|
||||
/* 80AF95F4 80 1F 05 FC */ lwz r0, 0x5fc(r31)
|
||||
/* 80AF95F8 60 00 00 08 */ ori r0, r0, 8
|
||||
/* 80AF95FC 90 1F 05 FC */ stw r0, 0x5fc(r31)
|
||||
/* 80AF9600 80 1F 05 FC */ lwz r0, 0x5fc(r31)
|
||||
/* 80AF9604 60 00 04 00 */ ori r0, r0, 0x400
|
||||
/* 80AF9608 90 1F 05 FC */ stw r0, 0x5fc(r31)
|
||||
/* 80AF960C 38 7F 05 D0 */ addi r3, r31, 0x5d0
|
||||
/* 80AF9610 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80AF9614 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80AF9618 38 84 0F 38 */ addi r4, r4, 0xf38
|
||||
/* 80AF961C 4B 57 D4 91 */ bl CrrPos__9dBgS_AcchFR4dBgS
|
||||
/* 80AF9620 38 7F 07 A8 */ addi r3, r31, 0x7a8
|
||||
/* 80AF9624 3C 80 80 B0 */ lis r4, m__16daNpcThe_Param_c@ha /* 0x80AFBE0C@ha */
|
||||
/* 80AF9628 38 84 BE 0C */ addi r4, r4, m__16daNpcThe_Param_c@l /* 0x80AFBE0C@l */
|
||||
/* 80AF962C C0 04 00 10 */ lfs f0, 0x10(r4)
|
||||
/* 80AF9630 FC 00 00 1E */ fctiwz f0, f0
|
||||
/* 80AF9634 D8 01 00 10 */ stfd f0, 0x10(r1)
|
||||
/* 80AF9638 80 81 00 14 */ lwz r4, 0x14(r1)
|
||||
/* 80AF963C 38 A0 00 00 */ li r5, 0
|
||||
/* 80AF9640 7F E6 FB 78 */ mr r6, r31
|
||||
/* 80AF9644 4B 58 A2 1D */ bl Init__9dCcD_SttsFiiP10fopAc_ac_c
|
||||
/* 80AF9648 38 7F 0C 94 */ addi r3, r31, 0xc94
|
||||
/* 80AF964C 3C 80 80 3B */ lis r4, mCcDCyl__8daNpcF_c@ha /* 0x803B37E0@ha */
|
||||
/* 80AF9650 38 84 37 E0 */ addi r4, r4, mCcDCyl__8daNpcF_c@l /* 0x803B37E0@l */
|
||||
/* 80AF9654 4B 58 B2 61 */ bl Set__8dCcD_CylFRC11dCcD_SrcCyl
|
||||
/* 80AF9658 38 1F 07 A8 */ addi r0, r31, 0x7a8
|
||||
/* 80AF965C 90 1F 0C D8 */ stw r0, 0xcd8(r31)
|
||||
/* 80AF9660 38 00 00 00 */ li r0, 0
|
||||
/* 80AF9664 90 1F 0C BC */ stw r0, 0xcbc(r31)
|
||||
/* 80AF9668 90 1F 0C AC */ stw r0, 0xcac(r31)
|
||||
/* 80AF966C 38 7F 0D B8 */ addi r3, r31, 0xdb8
|
||||
/* 80AF9670 3C 80 80 B0 */ lis r4, m__16daNpcThe_Param_c@ha /* 0x80AFBE0C@ha */
|
||||
/* 80AF9674 38 84 BE 0C */ addi r4, r4, m__16daNpcThe_Param_c@l /* 0x80AFBE0C@l */
|
||||
/* 80AF9678 C0 24 00 14 */ lfs f1, 0x14(r4)
|
||||
/* 80AF967C 4B 77 5B 7D */ bl SetH__8cM3dGCylFf
|
||||
/* 80AF9680 38 7F 0D B8 */ addi r3, r31, 0xdb8
|
||||
/* 80AF9684 C0 3D 00 1C */ lfs f1, 0x1c(r29)
|
||||
/* 80AF9688 4B 77 5B 79 */ bl SetR__8cM3dGCylFf
|
||||
/* 80AF968C 80 1F 06 AC */ lwz r0, 0x6ac(r31)
|
||||
/* 80AF9690 90 1F 0A 44 */ stw r0, 0xa44(r31)
|
||||
/* 80AF9694 80 1F 06 B0 */ lwz r0, 0x6b0(r31)
|
||||
/* 80AF9698 90 1F 0A 48 */ stw r0, 0xa48(r31)
|
||||
/* 80AF969C 80 1F 06 B4 */ lwz r0, 0x6b4(r31)
|
||||
/* 80AF96A0 90 1F 0A 4C */ stw r0, 0xa4c(r31)
|
||||
/* 80AF96A4 88 1F 06 B8 */ lbz r0, 0x6b8(r31)
|
||||
/* 80AF96A8 98 1F 0A 50 */ stb r0, 0xa50(r31)
|
||||
/* 80AF96AC A0 1F 06 C0 */ lhz r0, 0x6c0(r31)
|
||||
/* 80AF96B0 B0 1F 0A 58 */ sth r0, 0xa58(r31)
|
||||
/* 80AF96B4 A0 1F 06 C2 */ lhz r0, 0x6c2(r31)
|
||||
/* 80AF96B8 B0 1F 0A 5A */ sth r0, 0xa5a(r31)
|
||||
/* 80AF96BC 80 1F 06 C4 */ lwz r0, 0x6c4(r31)
|
||||
/* 80AF96C0 90 1F 0A 5C */ stw r0, 0xa5c(r31)
|
||||
/* 80AF96C4 80 1F 06 C8 */ lwz r0, 0x6c8(r31)
|
||||
/* 80AF96C8 90 1F 0A 60 */ stw r0, 0xa60(r31)
|
||||
/* 80AF96CC C0 1F 06 D0 */ lfs f0, 0x6d0(r31)
|
||||
/* 80AF96D0 D0 1F 0A 68 */ stfs f0, 0xa68(r31)
|
||||
/* 80AF96D4 C0 1F 06 D4 */ lfs f0, 0x6d4(r31)
|
||||
/* 80AF96D8 D0 1F 0A 6C */ stfs f0, 0xa6c(r31)
|
||||
/* 80AF96DC C0 1F 06 D8 */ lfs f0, 0x6d8(r31)
|
||||
/* 80AF96E0 D0 1F 0A 70 */ stfs f0, 0xa70(r31)
|
||||
/* 80AF96E4 80 1F 06 DC */ lwz r0, 0x6dc(r31)
|
||||
/* 80AF96E8 90 1F 0A 74 */ stw r0, 0xa74(r31)
|
||||
/* 80AF96EC C0 1F 06 E0 */ lfs f0, 0x6e0(r31)
|
||||
/* 80AF96F0 D0 1F 0A 78 */ stfs f0, 0xa78(r31)
|
||||
/* 80AF96F4 80 1F 06 E4 */ lwz r0, 0x6e4(r31)
|
||||
/* 80AF96F8 90 1F 0A 7C */ stw r0, 0xa7c(r31)
|
||||
/* 80AF96FC C0 1F 06 68 */ lfs f0, 0x668(r31)
|
||||
/* 80AF9700 D0 1F 09 80 */ stfs f0, 0x980(r31)
|
||||
/* 80AF9704 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9708 4B 65 96 7D */ bl setEnvTevColor__8daNpcF_cFv
|
||||
/* 80AF970C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9710 4B 65 96 D1 */ bl setRoomNo__8daNpcF_cFv
|
||||
/* 80AF9714 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9718 48 00 00 31 */ bl reset__10daNpcThe_cFv
|
||||
/* 80AF971C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80AF9720 4B 65 88 F5 */ bl execute__8daNpcF_cFv
|
||||
/* 80AF9724 38 60 00 04 */ li r3, 4
|
||||
/* 80AF9728 48 00 00 08 */ b lbl_80AF9730
|
||||
lbl_80AF972C:
|
||||
/* 80AF972C 38 60 00 00 */ li r3, 0
|
||||
lbl_80AF9730:
|
||||
/* 80AF9730 39 61 00 40 */ addi r11, r1, 0x40
|
||||
/* 80AF9734 4B 86 8A E5 */ bl _restgpr_25
|
||||
/* 80AF9738 80 01 00 44 */ lwz r0, 0x44(r1)
|
||||
/* 80AF973C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF9740 38 21 00 40 */ addi r1, r1, 0x40
|
||||
/* 80AF9744 4E 80 00 20 */ blr
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
lbl_80AF8114:
|
||||
/* 80AF8114 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80AF8118 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF811C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80AF8120 7C 60 1B 78 */ mr r0, r3
|
||||
/* 80AF8124 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80AF8128 40 82 00 24 */ bne lbl_80AF814C
|
||||
/* 80AF812C 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */
|
||||
/* 80AF8130 38 63 4A C8 */ addi r3, r3, j3dSys@l /* 0x80434AC8@l */
|
||||
/* 80AF8134 80 A3 00 38 */ lwz r5, 0x38(r3)
|
||||
/* 80AF8138 80 65 00 14 */ lwz r3, 0x14(r5)
|
||||
/* 80AF813C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80AF8140 41 82 00 0C */ beq lbl_80AF814C
|
||||
/* 80AF8144 7C 04 03 78 */ mr r4, r0
|
||||
/* 80AF8148 4B FF F9 99 */ bl ctrlJoint__10daNpcThe_cFP8J3DJointP8J3DModel
|
||||
lbl_80AF814C:
|
||||
/* 80AF814C 38 60 00 01 */ li r3, 1
|
||||
/* 80AF8150 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80AF8154 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF8158 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80AF815C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,123 +0,0 @@
|
|||
lbl_80AF7AE0:
|
||||
/* 80AF7AE0 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 80AF7AE4 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF7AE8 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 80AF7AEC 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 80AF7AF0 4B 86 A6 E9 */ bl _savegpr_28
|
||||
/* 80AF7AF4 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 80AF7AF8 7C BE 2B 78 */ mr r30, r5
|
||||
/* 80AF7AFC A0 A4 00 14 */ lhz r5, 0x14(r4)
|
||||
/* 80AF7B00 7C BF 2B 78 */ mr r31, r5
|
||||
/* 80AF7B04 3C 60 80 B0 */ lis r3, lit_4159@ha /* 0x80AFBE78@ha */
|
||||
/* 80AF7B08 38 83 BE 78 */ addi r4, r3, lit_4159@l /* 0x80AFBE78@l */
|
||||
/* 80AF7B0C 80 64 00 00 */ lwz r3, 0(r4)
|
||||
/* 80AF7B10 80 04 00 04 */ lwz r0, 4(r4)
|
||||
/* 80AF7B14 90 61 00 08 */ stw r3, 8(r1)
|
||||
/* 80AF7B18 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 80AF7B1C 80 04 00 08 */ lwz r0, 8(r4)
|
||||
/* 80AF7B20 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80AF7B24 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80AF7B28 40 82 00 B0 */ bne lbl_80AF7BD8
|
||||
/* 80AF7B2C 80 7D 05 68 */ lwz r3, 0x568(r29)
|
||||
/* 80AF7B30 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 80AF7B34 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 80AF7B38 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 80AF7B3C 38 63 00 30 */ addi r3, r3, 0x30
|
||||
/* 80AF7B40 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7B44 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7B48 4B 84 E9 69 */ bl PSMTXCopy
|
||||
/* 80AF7B4C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7B50 3B 83 D4 70 */ addi r28, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7B54 C0 1C 00 0C */ lfs f0, 0xc(r28)
|
||||
/* 80AF7B58 D0 1D 08 54 */ stfs f0, 0x854(r29)
|
||||
/* 80AF7B5C C0 1C 00 1C */ lfs f0, 0x1c(r28)
|
||||
/* 80AF7B60 D0 1D 08 58 */ stfs f0, 0x858(r29)
|
||||
/* 80AF7B64 C0 1C 00 2C */ lfs f0, 0x2c(r28)
|
||||
/* 80AF7B68 D0 1D 08 5C */ stfs f0, 0x85c(r29)
|
||||
/* 80AF7B6C 80 7D 05 68 */ lwz r3, 0x568(r29)
|
||||
/* 80AF7B70 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 80AF7B74 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 80AF7B78 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 80AF7B7C 38 63 00 90 */ addi r3, r3, 0x90
|
||||
/* 80AF7B80 7F 84 E3 78 */ mr r4, r28
|
||||
/* 80AF7B84 4B 84 E9 2D */ bl PSMTXCopy
|
||||
/* 80AF7B88 C0 1C 00 0C */ lfs f0, 0xc(r28)
|
||||
/* 80AF7B8C D0 1D 08 60 */ stfs f0, 0x860(r29)
|
||||
/* 80AF7B90 C0 1C 00 1C */ lfs f0, 0x1c(r28)
|
||||
/* 80AF7B94 D0 1D 08 64 */ stfs f0, 0x864(r29)
|
||||
/* 80AF7B98 C0 1C 00 2C */ lfs f0, 0x2c(r28)
|
||||
/* 80AF7B9C D0 1D 08 68 */ stfs f0, 0x868(r29)
|
||||
/* 80AF7BA0 80 7D 05 68 */ lwz r3, 0x568(r29)
|
||||
/* 80AF7BA4 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 80AF7BA8 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 80AF7BAC 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 80AF7BB0 38 63 00 C0 */ addi r3, r3, 0xc0
|
||||
/* 80AF7BB4 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7BB8 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7BBC 4B 84 E8 F5 */ bl PSMTXCopy
|
||||
/* 80AF7BC0 C0 1C 00 0C */ lfs f0, 0xc(r28)
|
||||
/* 80AF7BC4 D0 1D 08 6C */ stfs f0, 0x86c(r29)
|
||||
/* 80AF7BC8 C0 1C 00 1C */ lfs f0, 0x1c(r28)
|
||||
/* 80AF7BCC D0 1D 08 70 */ stfs f0, 0x870(r29)
|
||||
/* 80AF7BD0 C0 1C 00 2C */ lfs f0, 0x2c(r28)
|
||||
/* 80AF7BD4 D0 1D 08 74 */ stfs f0, 0x874(r29)
|
||||
lbl_80AF7BD8:
|
||||
/* 80AF7BD8 80 7E 00 84 */ lwz r3, 0x84(r30)
|
||||
/* 80AF7BDC 80 03 00 0C */ lwz r0, 0xc(r3)
|
||||
/* 80AF7BE0 1F 9F 00 30 */ mulli r28, r31, 0x30
|
||||
/* 80AF7BE4 7C 60 E2 14 */ add r3, r0, r28
|
||||
/* 80AF7BE8 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7BEC 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7BF0 4B 84 E8 C1 */ bl PSMTXCopy
|
||||
/* 80AF7BF4 2C 1F 00 02 */ cmpwi r31, 2
|
||||
/* 80AF7BF8 41 82 00 38 */ beq lbl_80AF7C30
|
||||
/* 80AF7BFC 40 80 00 10 */ bge lbl_80AF7C0C
|
||||
/* 80AF7C00 2C 1F 00 01 */ cmpwi r31, 1
|
||||
/* 80AF7C04 40 80 00 10 */ bge lbl_80AF7C14
|
||||
/* 80AF7C08 48 00 00 28 */ b lbl_80AF7C30
|
||||
lbl_80AF7C0C:
|
||||
/* 80AF7C0C 2C 1F 00 05 */ cmpwi r31, 5
|
||||
/* 80AF7C10 40 80 00 20 */ bge lbl_80AF7C30
|
||||
lbl_80AF7C14:
|
||||
/* 80AF7C14 7F A3 EB 78 */ mr r3, r29
|
||||
/* 80AF7C18 7F E4 FB 78 */ mr r4, r31
|
||||
/* 80AF7C1C 38 A1 00 08 */ addi r5, r1, 8
|
||||
/* 80AF7C20 3C C0 80 B0 */ lis r6, m__16daNpcThe_Param_c@ha /* 0x80AFBE0C@ha */
|
||||
/* 80AF7C24 38 C6 BE 0C */ addi r6, r6, m__16daNpcThe_Param_c@l /* 0x80AFBE0C@l */
|
||||
/* 80AF7C28 C0 26 00 40 */ lfs f1, 0x40(r6)
|
||||
/* 80AF7C2C 4B 65 B7 51 */ bl setLookatMtx__8daNpcF_cFiPif
|
||||
lbl_80AF7C30:
|
||||
/* 80AF7C30 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7C34 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7C38 80 9E 00 84 */ lwz r4, 0x84(r30)
|
||||
/* 80AF7C3C 80 04 00 0C */ lwz r0, 0xc(r4)
|
||||
/* 80AF7C40 7C 80 E2 14 */ add r4, r0, r28
|
||||
/* 80AF7C44 4B 84 E8 6D */ bl PSMTXCopy
|
||||
/* 80AF7C48 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80AF7C4C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80AF7C50 3C 80 80 43 */ lis r4, mCurrentMtx__6J3DSys@ha /* 0x80434BE4@ha */
|
||||
/* 80AF7C54 38 84 4B E4 */ addi r4, r4, mCurrentMtx__6J3DSys@l /* 0x80434BE4@l */
|
||||
/* 80AF7C58 4B 84 E8 59 */ bl PSMTXCopy
|
||||
/* 80AF7C5C 2C 1F 00 04 */ cmpwi r31, 4
|
||||
/* 80AF7C60 41 82 00 0C */ beq lbl_80AF7C6C
|
||||
/* 80AF7C64 2C 1F 00 0B */ cmpwi r31, 0xb
|
||||
/* 80AF7C68 40 82 00 2C */ bne lbl_80AF7C94
|
||||
lbl_80AF7C6C:
|
||||
/* 80AF7C6C 80 1D 09 9C */ lwz r0, 0x99c(r29)
|
||||
/* 80AF7C70 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 80AF7C74 41 82 00 20 */ beq lbl_80AF7C94
|
||||
/* 80AF7C78 83 9D 05 80 */ lwz r28, 0x580(r29)
|
||||
/* 80AF7C7C 80 7D 05 68 */ lwz r3, 0x568(r29)
|
||||
/* 80AF7C80 80 83 00 08 */ lwz r4, 8(r3)
|
||||
/* 80AF7C84 38 7D 05 6C */ addi r3, r29, 0x56c
|
||||
/* 80AF7C88 4B 51 5D 09 */ bl changeBckOnly__13mDoExt_bckAnmFP15J3DAnmTransform
|
||||
/* 80AF7C8C 80 7D 05 68 */ lwz r3, 0x568(r29)
|
||||
/* 80AF7C90 93 83 00 08 */ stw r28, 8(r3)
|
||||
lbl_80AF7C94:
|
||||
/* 80AF7C94 38 60 00 01 */ li r3, 1
|
||||
/* 80AF7C98 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 80AF7C9C 4B 86 A5 89 */ bl _restgpr_28
|
||||
/* 80AF7CA0 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 80AF7CA4 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF7CA8 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 80AF7CAC 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80AF9338:
|
||||
/* 80AF9338 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80AF933C 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF9340 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80AF9344 48 00 00 15 */ bl create__10daNpcThe_cFv
|
||||
/* 80AF9348 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80AF934C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF9350 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80AF9354 4E 80 00 20 */ blr
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
lbl_80AF98D0:
|
||||
/* 80AF98D0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80AF98D4 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF98D8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80AF98DC 38 80 FF FF */ li r4, -1
|
||||
/* 80AF98E0 81 83 0B 44 */ lwz r12, 0xb44(r3)
|
||||
/* 80AF98E4 81 8C 00 08 */ lwz r12, 8(r12)
|
||||
/* 80AF98E8 7D 89 03 A6 */ mtctr r12
|
||||
/* 80AF98EC 4E 80 04 21 */ bctrl
|
||||
/* 80AF98F0 38 60 00 01 */ li r3, 1
|
||||
/* 80AF98F4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80AF98F8 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF98FC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80AF9900 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80AF9904:
|
||||
/* 80AF9904 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80AF9908 7C 08 02 A6 */ mflr r0
|
||||
/* 80AF990C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80AF9910 4B 65 87 05 */ bl execute__8daNpcF_cFv
|
||||
/* 80AF9914 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80AF9918 7C 08 03 A6 */ mtlr r0
|
||||
/* 80AF991C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80AF9920 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_80AF8B50:
|
||||
/* 80AF8B50 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80AF8B54 4D 80 00 20 */ bltlr
|
||||
/* 80AF8B58 2C 04 00 0E */ cmpwi r4, 0xe
|
||||
/* 80AF8B5C 4C 80 00 20 */ bgelr
|
||||
/* 80AF8B60 B0 83 09 DE */ sth r4, 0x9de(r3)
|
||||
/* 80AF8B64 D0 23 09 74 */ stfs f1, 0x974(r3)
|
||||
/* 80AF8B68 38 00 FF FF */ li r0, -1
|
||||
/* 80AF8B6C B0 03 09 D8 */ sth r0, 0x9d8(r3)
|
||||
/* 80AF8B70 38 00 00 00 */ li r0, 0
|
||||
/* 80AF8B74 B0 03 09 D6 */ sth r0, 0x9d6(r3)
|
||||
/* 80AF8B78 4E 80 00 20 */ blr
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
lbl_80AF8B0C:
|
||||
/* 80AF8B0C 7C 86 07 34 */ extsh r6, r4
|
||||
/* 80AF8B10 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80AF8B14 40 82 00 10 */ bne lbl_80AF8B24
|
||||
/* 80AF8B18 A8 03 09 E0 */ lha r0, 0x9e0(r3)
|
||||
/* 80AF8B1C 7C 00 30 00 */ cmpw r0, r6
|
||||
/* 80AF8B20 4D 82 00 20 */ beqlr
|
||||
lbl_80AF8B24:
|
||||
/* 80AF8B24 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80AF8B28 4D 80 00 20 */ bltlr
|
||||
/* 80AF8B2C 2C 04 00 0B */ cmpwi r4, 0xb
|
||||
/* 80AF8B30 4C 80 00 20 */ bgelr
|
||||
/* 80AF8B34 B0 C3 09 E0 */ sth r6, 0x9e0(r3)
|
||||
/* 80AF8B38 D0 23 09 7C */ stfs f1, 0x97c(r3)
|
||||
/* 80AF8B3C 38 00 FF FF */ li r0, -1
|
||||
/* 80AF8B40 B0 03 09 DC */ sth r0, 0x9dc(r3)
|
||||
/* 80AF8B44 38 00 00 00 */ li r0, 0
|
||||
/* 80AF8B48 B0 03 09 DA */ sth r0, 0x9da(r3)
|
||||
/* 80AF8B4C 4E 80 00 20 */ blr
|
||||
|
|
@ -9,7 +9,7 @@ typedef struct _GXColorS10 GXColorS10;
|
|||
class J3DMatColorAnm {
|
||||
public:
|
||||
/* 8003B2B8 */ ~J3DMatColorAnm() {};
|
||||
/* 8003B2F4 */ J3DMatColorAnm() {};
|
||||
/* 8003B2F4 */ J3DMatColorAnm() : field_0x0(0), mAnmFlag(1), mAnmColor(NULL) {};
|
||||
J3DMatColorAnm(u16 param_1, J3DAnmColor* param_2) {
|
||||
field_0x0 = param_1;
|
||||
mAnmFlag = 1;
|
||||
|
|
@ -35,7 +35,7 @@ private:
|
|||
class J3DTexNoAnm {
|
||||
public:
|
||||
/* 8003B1F8 */ ~J3DTexNoAnm() {};
|
||||
/* 8003B240 */ J3DTexNoAnm() {};
|
||||
/* 8003B240 */ J3DTexNoAnm() : field_0x4(0), mAnmFlag(1), mAnmTexPattern(NULL) {};
|
||||
J3DTexNoAnm(u16 param_1, J3DAnmTexPattern* param_2) {
|
||||
field_0x4 = param_1;
|
||||
mAnmFlag = 1;
|
||||
|
|
@ -62,7 +62,7 @@ private:
|
|||
class J3DTexMtxAnm {
|
||||
public:
|
||||
/* 8003B264 */ ~J3DTexMtxAnm() {};
|
||||
/* 8003B2A0 */ J3DTexMtxAnm() {};
|
||||
/* 8003B2A0 */ J3DTexMtxAnm() : field_0x0(0), mAnmFlag(1), mAnmTransform(NULL) {};
|
||||
J3DTexMtxAnm(u16 param_1, J3DAnmTextureSRTKey* param_2) {
|
||||
field_0x0 = param_1;
|
||||
mAnmFlag = 1;
|
||||
|
|
@ -90,7 +90,7 @@ private:
|
|||
class J3DTevKColorAnm {
|
||||
public:
|
||||
/* 8003B150 */ ~J3DTevKColorAnm() {}
|
||||
/* 8003B18C */ J3DTevKColorAnm() {}
|
||||
/* 8003B18C */ J3DTevKColorAnm() : field_0x0(0), mAnmFlag(1), mAnmTevReg(NULL) {}
|
||||
J3DTevKColorAnm(u16 param_1, J3DAnmTevRegKey* param_2) {
|
||||
field_0x0 = param_1;
|
||||
mAnmFlag = 1;
|
||||
|
|
@ -116,7 +116,7 @@ private:
|
|||
class J3DTevColorAnm {
|
||||
public:
|
||||
/* 8003B1A4 */ ~J3DTevColorAnm() {}
|
||||
/* 8003B1E0 */ J3DTevColorAnm() {}
|
||||
/* 8003B1E0 */ J3DTevColorAnm() : field_0x0(0), mAnmFlag(1), mAnmTevReg(NULL) {}
|
||||
J3DTevColorAnm(u16 param_1, J3DAnmTevRegKey* param_2) {
|
||||
field_0x0 = param_1;
|
||||
mAnmFlag = 1;
|
||||
|
|
|
|||
|
|
@ -12,38 +12,39 @@ struct TAngleConstant_<f32> {
|
|||
static inline f32 RADIAN_DEG360() { return 6.2831855f; }
|
||||
};
|
||||
|
||||
template<int N, typename T>
|
||||
struct TSinCosTable {
|
||||
std::pair<f32, f32> table[0x2000];
|
||||
std::pair<T, T> table[1 << N];
|
||||
|
||||
f32 sinShort(s16 v) const { return table[(u16)v >> 3U].first; }
|
||||
f32 cosShort(s16 v) const { return table[(u16)v >> 3U].second; }
|
||||
T sinShort(s16 v) const { return table[(u16)v >> (16U - N)].first; }
|
||||
T cosShort(s16 v) const { return table[(u16)v >> (16U - N)].second; }
|
||||
|
||||
inline f32 sinLap(f32 v) {
|
||||
if (v < 0.0f) {
|
||||
return -table[(u16)(-8192.0f * v) & 0x1fff].first;
|
||||
inline T sinLap(T v) {
|
||||
if (v < (T)0.0) {
|
||||
return -table[(u16)(-(T)(1 << N) * v) & ((1 << N) - 1)].first;
|
||||
}
|
||||
return table[(u16)(8192.0f * v) & 0x1fff].first;
|
||||
return table[(u16)((T)(1 << N) * v) & ((1 << N) - 1)].first;
|
||||
}
|
||||
|
||||
inline f32 sinDegree(f32 degree) {
|
||||
if (degree < 0.0f) {
|
||||
return -table[(u16)(-22.755556106567383f * degree) & 0x1fffU].first;
|
||||
inline T sinDegree(T degree) {
|
||||
if (degree < (T)0.0) {
|
||||
return -table[(u16)(((T)(1 << N) / 360.0) * degree) & ((1 << N) - 1)].first;
|
||||
}
|
||||
return table[(u16)(22.755556106567383f * degree) & 0x1fffU].first;
|
||||
return table[(u16)(((T)(1 << N) / 360.0) * degree) & ((1 << N) - 1)].first;
|
||||
}
|
||||
|
||||
inline f32 cosDegree(f32 degree) {
|
||||
if (degree < 0.0f) {
|
||||
inline T cosDegree(T degree) {
|
||||
if (degree < (T)0.0) {
|
||||
degree = -degree;
|
||||
}
|
||||
return table[(u16)(22.755556106567383f * degree) & 0x1fffU].second;
|
||||
return table[(u16)(((T)(1 << N) / 360.0) * degree) & ((1 << N) - 1)].second;
|
||||
}
|
||||
|
||||
inline f32 sinRadian(f32 radian) {
|
||||
if (radian < 0.0f) {
|
||||
return -table[(u16)(-8192.0f / TAngleConstant_<f32>::RADIAN_DEG360() * radian) & 0x1fffU].first;
|
||||
inline T sinRadian(T radian) {
|
||||
if (radian < (T)0.0) {
|
||||
return -table[(u16)(-(T)(1 << N) / TAngleConstant_<T>::RADIAN_DEG360() * radian) & ((1 << N) - 1)].first;
|
||||
}
|
||||
return table[(u16)(8192.0f / TAngleConstant_<f32>::RADIAN_DEG360() * radian) & 0x1fffU].first;
|
||||
return table[(u16)((T)(1 << N) / TAngleConstant_<T>::RADIAN_DEG360() * radian) & ((1 << N) - 1)].first;
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -58,7 +59,7 @@ struct TAsinAcosTable {
|
|||
};
|
||||
|
||||
namespace JMath {
|
||||
extern TSinCosTable sincosTable_;
|
||||
extern TSinCosTable<13, f32> sincosTable_;
|
||||
extern TAtanTable atanTable_;
|
||||
extern TAsinAcosTable asinAcosTable_;
|
||||
}; // namespace JMath
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ struct cXyz : Vec {
|
|||
f32 getYDiff(const Vec* other) const { return y - other->y; }
|
||||
f32 getZDiff(const Vec* other) const { return z - other->z; }
|
||||
|
||||
void setAll(f32 f) { set(f, f, f); }
|
||||
void setall(f32 f) { set(f, f, f); }
|
||||
|
||||
void setMin(const cXyz& other) {
|
||||
if (x > other.x) {
|
||||
|
|
|
|||
|
|
@ -10,22 +10,15 @@
|
|||
#include "d/particle/d_particle_copoly.h"
|
||||
#include "global.h"
|
||||
|
||||
struct bckGetParam {
|
||||
/* 0x00 */ int bckIdx;
|
||||
/* 0x04 */ int bckAttr;
|
||||
/* 0x08 */ int arcIdx;
|
||||
struct daNpc_GetParam1 { // name unknown
|
||||
/* 0x0 */ int fileIdx;
|
||||
/* 0x4 */ int arcIdx;
|
||||
};
|
||||
|
||||
struct btpGetParam {
|
||||
/* 0x00 */ int btpIdx;
|
||||
/* 0x04 */ int btpAttr;
|
||||
/* 0x08 */ int arcIdx;
|
||||
};
|
||||
|
||||
struct btkGetParam {
|
||||
/* 0x00 */ int btkIdx;
|
||||
/* 0x04 */ int btkAttr;
|
||||
/* 0x08 */ int arcIdx;
|
||||
struct daNpc_GetParam2 { // name unknown
|
||||
/* 0x0 */ int fileIdx;
|
||||
/* 0x4 */ int attr;
|
||||
/* 0x8 */ int arcIdx;
|
||||
};
|
||||
|
||||
struct dPnt {};
|
||||
|
|
@ -216,7 +209,7 @@ public:
|
|||
/* 0x56C */ daNpcT_motionAnmData_c* field_0x56c;
|
||||
/* 0x570 */ daNpcT_evtData_c* field_0x570;
|
||||
/* 0x574 */ char** field_0x574;
|
||||
/* 0x578 */ mDoExt_McaMorfSO* mMcaMorfAnm[2];
|
||||
/* 0x578 */ mDoExt_McaMorfSO* mpMorf[2];
|
||||
/* 0x580 */ Z2Creature field_0x580;
|
||||
/* 0x610 */ mDoExt_bckAnm mBckAnm;
|
||||
/* 0x62C */ mDoExt_btpAnm mBtpAnm;
|
||||
|
|
@ -449,16 +442,16 @@ public:
|
|||
|
||||
class daNpcF_c : public fopAc_ac_c {
|
||||
protected:
|
||||
/* 0x568 */ mDoExt_McaMorfSO* mMcaMorf;
|
||||
/* 0x568 */ mDoExt_McaMorfSO* mpMorf;
|
||||
/* 0x56C */ mDoExt_bckAnm mBckAnm;
|
||||
/* 0x588 */ mDoExt_btpAnm mBtpAnm;
|
||||
/* 0x5A0 */ mDoExt_btkAnm mBtkAnm;
|
||||
/* 0x5B8 */ mDoExt_brkAnm mBrkAnm;
|
||||
/* 0x5D0 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x7A8 */ dCcD_Stts mStts;
|
||||
/* 0x7A8 */ dCcD_Stts mCcStts;
|
||||
/* 0x7E4 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x824 */ daNpcF_ActorMngr_c field_0x824;
|
||||
/* 0x82C */ daNpcF_ActorMngr_c field_0x82c[5];
|
||||
/* 0x82C */ daNpcF_ActorMngr_c mAttnActor[5];
|
||||
/* 0x854 */ cXyz mLookatPos[3];
|
||||
/* 0x878 */ cXyz mLookPos;
|
||||
/* 0x884 */ cXyz field_0x884;
|
||||
|
|
@ -472,17 +465,17 @@ protected:
|
|||
/* 0x8E4 */ cXyz mHeadPos;
|
||||
/* 0x8F0 */ csXyz field_0x8f0;
|
||||
/* 0x8F6 */ csXyz field_0x8f6;
|
||||
/* 0x8FC */ csXyz field_0x8fc;
|
||||
/* 0x902 */ csXyz field_0x902;
|
||||
/* 0x8FC */ csXyz mEyeAngle;
|
||||
/* 0x902 */ csXyz mHeadAngle;
|
||||
/* 0x908 */ csXyz field_0x908[3];
|
||||
/* 0x91A */ csXyz field_0x91a[3];
|
||||
/* 0x92C */ int mCutIndex;
|
||||
/* 0x930 */ u32 field_0x930;
|
||||
/* 0x934 */ int field_0x934; // index in 0x93c to not decrement timer (if 0x938 is nonzero)
|
||||
/* 0x938 */ int field_0x938; // controls whether to use field 0x934
|
||||
/* 0x93C */ int field_0x93c[5]; // timers for removing actors from 0x82c
|
||||
/* 0x934 */ int mAttnIdx;
|
||||
/* 0x938 */ int mAttnChangeTimer;
|
||||
/* 0x93C */ int mAttnActorTimer[5];
|
||||
/* 0x950 */ int field_0x950;
|
||||
/* 0x954 */ int field_0x954; // a timer
|
||||
/* 0x954 */ int field_0x954;
|
||||
/* 0x958 */ int field_0x958;
|
||||
/* 0x95C */ int field_0x95c;
|
||||
/* 0x960 */ int field_0x960;
|
||||
|
|
@ -502,15 +495,15 @@ protected:
|
|||
/* 0x998 */ u16 field_0x998;
|
||||
/* 0x99C */ u32 mAnmFlags;
|
||||
/* 0x9A0 */ u32 field_0x9a0;
|
||||
/* 0x9A4 */ profile_method_class* field_0x9a4;
|
||||
/* 0x9A8 */ int field_0x9a8[2];
|
||||
/* 0x9A4 */ u32 field_0x9a4;
|
||||
/* 0x9A8 */ u32 mHitodamaParticleKey[2];
|
||||
/* 0x9B0 */ u32 field_0x9b0;
|
||||
/* 0x9B4 */ int mFlowNodeNo;
|
||||
/* 0x9B8 */ cXyz field_0x9b8;
|
||||
/* 0x9C4 */ cXyz field_0x9c4;
|
||||
/* 0x9D0 */ s16 field_0x9d0;
|
||||
/* 0x9D2 */ s16 field_0x9d2;
|
||||
/* 0x9D4 */ s16 field_0x9d4;
|
||||
/* 0x9D4 */ s16 mEventIdx;
|
||||
/* 0x9D6 */ s16 mExpressionPhase;
|
||||
/* 0x9D8 */ s16 mExpressionPrevPhase;
|
||||
/* 0x9DA */ s16 mMotionPhase;
|
||||
|
|
@ -523,16 +516,16 @@ protected:
|
|||
/* 0x9E8 */ s8 field_0x9e8;
|
||||
/* 0x9E9 */ u8 field_0x9e9;
|
||||
/* 0x9EA */ u8 field_0x9ea;
|
||||
/* 0x9EB */ u8 field_0x9eb;
|
||||
/* 0x9EB */ bool field_0x9eb;
|
||||
/* 0x9EC */ u8 field_0x9ec;
|
||||
/* 0x9ED */ u8 field_0x9ed;
|
||||
/* 0x9EE */ u8 field_0x9ee;
|
||||
/* 0x9ED */ bool field_0x9ed;
|
||||
/* 0x9EE */ bool field_0x9ee;
|
||||
/* 0x9EF */ u8 field_0x9ef;
|
||||
/* 0x9F0 */ u8 field_0x9f0;
|
||||
/* 0x9F1 */ u8 field_0x9f1;
|
||||
/* 0x9F2 */ bool mHide;
|
||||
/* 0x9f3 */ u8 field_0x9f3;
|
||||
/* 0x9F4 */ bool field_0x9f4; // controls whether setHitodamaPrtcl is called
|
||||
/* 0x9F4 */ bool mTwilight;
|
||||
/* 0x9F5 */ u8 field_0x9f5;
|
||||
/* 0x9F6 */ u8 field_0x9f6;
|
||||
/* 0x9F8 */ dMsgFlow_c mFlow;
|
||||
|
|
@ -572,8 +565,8 @@ public:
|
|||
/* 80152014 */ BOOL execute();
|
||||
/* 801522AC */ BOOL draw(int, int, f32, _GXColorS10*, int);
|
||||
/* 80152614 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
/* 80152654 */ void srchAttnActor1(void*, void*);
|
||||
/* 801526E8 */ void* srchActor(void*, void*);
|
||||
/* 80152654 */ static void* srchAttnActor1(void*, void*);
|
||||
/* 801526E8 */ static void* srchActor(void*, void*);
|
||||
|
||||
/* 801528C8 */ void initialize();
|
||||
/* 80152B2C */ J3DAnmTransformKey* getTrnsfrmKeyAnmP(char*, int);
|
||||
|
|
@ -607,19 +600,19 @@ public:
|
|||
/* 80153A78 */ BOOL chkActorInArea(fopAc_ac_c*, cXyz, cXyz, s16);
|
||||
/* 80153BDC */ BOOL chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int);
|
||||
/* 80153D1C */ int initTalk(int, fopAc_ac_c**);
|
||||
/* 80153D84 */ BOOL talkProc(int*, int, fopAc_ac_c**);
|
||||
/* 80153D84 */ BOOL talkProc(int*, BOOL, fopAc_ac_c**);
|
||||
/* 80153EF4 */ BOOL turn(s16, f32, int);
|
||||
/* 801540A4 */ void step(s16, int, int, int);
|
||||
/* 801540A4 */ BOOL step(s16, int, int, int);
|
||||
/* 80154250 */ void setAngle(s16);
|
||||
/* 80154278 */ u8 getDistTableIdx(int, int);
|
||||
/* 801542A0 */ fopAc_ac_c* getEvtAreaTagP(int, int);
|
||||
/* 8015436C */ fopAc_ac_c* getAttnActorP(int, void* (*)(void*, void*), f32, f32, f32, f32, s16,
|
||||
/* 8015436C */ fopAc_ac_c* getAttnActorP(int, fpcLyIt_JudgeFunc, f32, f32, f32, f32, s16,
|
||||
int, int);
|
||||
/* 80154730 */ BOOL chkActorInSight2(fopAc_ac_c*, f32, s16);
|
||||
/* 80154834 */ BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16);
|
||||
/* 801548F4 */ BOOL chkPointInArea(cXyz, cXyz, cXyz, s16);
|
||||
/* 8015496C */ cXyz getAttentionPos(fopAc_ac_c*);
|
||||
/* 801549E0 */ void chkFindPlayer2(int, s16);
|
||||
/* 801549E0 */ BOOL chkFindPlayer2(int, s16);
|
||||
/* 80154BD8 */ void setHitodamaPrtcl();
|
||||
|
||||
/* 80155BF4 */ virtual ~daNpcF_c();
|
||||
|
|
@ -651,7 +644,7 @@ public:
|
|||
BOOL chkPlayerInTalkArea(fopAc_ac_c* i_actor) {
|
||||
return chkActorInTalkArea(daPy_getPlayerActorClass(), i_actor);
|
||||
}
|
||||
BOOL checkHide() { return mHide || (field_0x9f4 && !dComIfGs_wolfeye_effect_check()); }
|
||||
BOOL checkHide() { return mHide || (mTwilight && !dComIfGs_wolfeye_effect_check()); }
|
||||
void setIntDemander(fopAc_ac_c* i_actor) { field_0x824.entry(i_actor); }
|
||||
void setIntFlowNodeNo(int i_flowNodeNo) { mFlowNodeNo = i_flowNodeNo; }
|
||||
void onInterrupt(u8 param_0) { field_0x9ef = param_0; }
|
||||
|
|
@ -744,7 +737,7 @@ private:
|
|||
/* 0x568 */ void* vtable;
|
||||
/* 0x56C */ dBgS_Acch field_0x56c;
|
||||
/* 0x744 */ u8 field_0x744[16];
|
||||
/* 0x754 */ mDoExt_McaMorfSO* mMcaMorfAnm[2];
|
||||
/* 0x754 */ mDoExt_McaMorfSO* mpMorf[2];
|
||||
/* 0x758 */ Z2Creature mCreature;
|
||||
/* 0x7EC */ mDoExt_bckAnm mBckAnm;
|
||||
/* 0x808 */ mDoExt_btpAnm mBtpAnm;
|
||||
|
|
@ -855,6 +848,7 @@ public:
|
|||
void setNowOffsetX(float i_nowOffsetX) { mNowOffsetX = i_nowOffsetX; }
|
||||
void setNowOffsetY(float i_nowOffsetY) { mNowOffsetY = i_nowOffsetY; }
|
||||
void onEyeMoveFlag() { mEyeMoveFlag = 1; }
|
||||
void offEyeMoveFlag() { mEyeMoveFlag = 0; }
|
||||
};
|
||||
|
||||
class daNpcF_SPCurve_c {
|
||||
|
|
@ -934,6 +928,7 @@ public:
|
|||
/* 80151B68 */ void calcMoveDisAngle(int, cXyz*, csXyz*, cXyz, int, int);
|
||||
/* 80151F54 */ void setRotAngle();
|
||||
/* 80151FE0 */ void clrRotAngle();
|
||||
daNpcF_Lookat_c() { initialize(); }
|
||||
virtual ~daNpcF_Lookat_c() {}
|
||||
cXyz* getAttnPos() { return mAttnPos; }
|
||||
void setAttnPos(cXyz* i_attnPos) { mAttnPos = i_attnPos; }
|
||||
|
|
|
|||
|
|
@ -162,6 +162,7 @@ public:
|
|||
int getSelectNum() { return query005(NULL, NULL, 0); }
|
||||
s16 getChoiceNo() { return mChoiceNo; }
|
||||
void setMsg(u32 msg) { mMsg = msg; }
|
||||
bool checkEndFlow() { return field_0x26 == 1; }
|
||||
|
||||
static queryFunc mQueryList[53];
|
||||
static eventFunc mEventList[43];
|
||||
|
|
|
|||
|
|
@ -112,11 +112,9 @@ public:
|
|||
/* 80237F10 */ void setTalkActorLocal(fopAc_ac_c*);
|
||||
/* 8023800C */ static void readMessageGroup(mDoDvdThd_mountXArchive_c**);
|
||||
/* 8023803C */ static void changeFlowGroup(s32);
|
||||
/* 8023806C */ void demoMessageGroup();
|
||||
/* 8023806C */ static void demoMessageGroup();
|
||||
/* 80238098 */ static void endFlowGroup();
|
||||
/* 802380C4 */ static void changeGroup(s16);
|
||||
/* 8023806C */ static void demoMessageGroup();
|
||||
/* 80238098 */ void endFlowGroup();
|
||||
/* 802380F4 */ static bool getString(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*,
|
||||
char*, char*, char*, s16*);
|
||||
/* 80238174 */ static u8* getMsgDtPtr();
|
||||
|
|
@ -129,8 +127,8 @@ public:
|
|||
/* 8023822C */ static u16 getStatus();
|
||||
/* 80238258 */ static dMsgScrnBase_c* getScrnDrawPtr();
|
||||
/* 8023826C */ static void setTalkActor(fopAc_ac_c*);
|
||||
/* 8023829C */ void onMsgSendControl();
|
||||
/* 802382C8 */ void offMsgSendControl();
|
||||
/* 8023829C */ static void onMsgSendControl();
|
||||
/* 802382C8 */ static void offMsgSendControl();
|
||||
/* 802382F4 */ static int isMsgSendControl();
|
||||
/* 80238320 */ static void onMsgSend();
|
||||
/* 8023834C */ void offMsgSend();
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ public:
|
|||
/* 0x04 */ f32 mGravity;
|
||||
/* 0x08 */ f32 m08;
|
||||
/* 0x0C */ f32 mShadow;
|
||||
/* 0x10 */ f32 mSttsWeight;
|
||||
/* 0x10 */ f32 mCcSttsWeight;
|
||||
/* 0x14 */ f32 m14;
|
||||
/* 0x18 */ f32 m18;
|
||||
/* 0x1C */ f32 m1C;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,186 @@
|
|||
#ifndef D_A_NPC_THE_H
|
||||
#define D_A_NPC_THE_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/a/d_a_npc.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
// #define NONMATCHING
|
||||
|
||||
class daNpcThe_c : public daNpcF_c {
|
||||
public:
|
||||
typedef BOOL (daNpcThe_c::*ActionFn)(void*);
|
||||
typedef BOOL (daNpcThe_c::*EventFn)(int);
|
||||
|
||||
/* 80AF76CC */ daNpcThe_c();
|
||||
/* 80AF78E0 */ ~daNpcThe_c();
|
||||
/* inline */ inline BOOL CreateHeap();
|
||||
/* 80AF7AE0 */ BOOL ctrlJoint(J3DJoint*, J3DModel*);
|
||||
/* 80AF7CB0 */ static BOOL createHeapCallBack(fopAc_ac_c*);
|
||||
/* 80AF8114 */ static BOOL ctrlJointCallBack(J3DJoint*, int);
|
||||
/* 80AF8160 */ bool setExpressionAnm(int, bool);
|
||||
/* 80AF841C */ bool setExpressionBtp(int);
|
||||
/* 80AF8564 */ void setMotionAnm(int, f32);
|
||||
/* 80AF8744 */ BOOL wait(void*);
|
||||
/* 80AF8B0C */ void setMotion(int, f32, int);
|
||||
/* 80AF8B50 */ void setExpression(int, f32);
|
||||
/* 80AF8B7C */ BOOL waitTW(void*);
|
||||
/* 80AF8CC4 */ BOOL talk(void*);
|
||||
/* 80AF912C */ BOOL test(void*);
|
||||
/* 80AF923C */ BOOL EvCut_TwResistance(int);
|
||||
/* 80AF9244 */ BOOL EvCut_Introduction(int);
|
||||
/* 80AF9358 */ cPhs__Step create();
|
||||
/* 80AF9748 */ void reset();
|
||||
/* inline */ inline int Draw();
|
||||
/* 80AF99F4 */ void setParam();
|
||||
/* 80AF9CF0 */ BOOL main();
|
||||
/* 80AF9F94 */ void playMotion();
|
||||
/* 80AFA338 */ void playExpression();
|
||||
/* inline */ inline void setExpressionTalkAfter();
|
||||
/* 80AFA6CC */ BOOL doEvent();
|
||||
/* 80AFADEC */ BOOL ctrlBtk();
|
||||
/* 80AFAEC8 */ void setAttnPos();
|
||||
/* 80AFB1C4 */ void lookat();
|
||||
/* 80AFB488 */ BOOL drawDbgInfo();
|
||||
/* 80AFBD9C */ void adjustShapeAngle();
|
||||
|
||||
u8 getTypeFromParam() {
|
||||
switch (fopAcM_GetParam(this) & 0xff) {
|
||||
case 0:
|
||||
return 0;
|
||||
case 1:
|
||||
return 1;
|
||||
case 2:
|
||||
return 2;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
bool isDelete() {
|
||||
if (mType == 0 || mType == 1 || mType == 2) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
void setLookMode(int i_lookMode) {
|
||||
if (i_lookMode >= 0 && i_lookMode < 6 && i_lookMode != mLookMode) {
|
||||
mLookMode = i_lookMode;
|
||||
}
|
||||
}
|
||||
|
||||
bool isSneaking() {
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "R_SP116") && dComIfGp_getStartStageRoomNo() == 5
|
||||
&& dComIfG_play_c::getLayerNo(0) == 2) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool chkAction(ActionFn action) {
|
||||
return mpActionFn == action;
|
||||
}
|
||||
|
||||
BOOL setAction(ActionFn action) {
|
||||
if (mpActionFn != NULL) {
|
||||
mState = 3;
|
||||
(this->*mpActionFn)(NULL);
|
||||
}
|
||||
if (action != NULL) {
|
||||
mpActionFn = action;
|
||||
mState = 0;
|
||||
(this->*mpActionFn)(NULL);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void doNormalAction() {
|
||||
mOrderEvtNo = 0;
|
||||
if (mpNextActionFn != NULL) {
|
||||
if (mpNextActionFn == mpActionFn) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else {
|
||||
ActionFn action = mpNextActionFn;
|
||||
setAction(action);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 0xB48 */ Z2Creature mSound;
|
||||
/* 0xBD8 */ daNpcF_MatAnm_c* mpMatAnm;
|
||||
/* 0xBDC */ daNpcF_Lookat_c mLookat;
|
||||
/* 0xC78 */ daNpcF_ActorMngr_c mActorMngr[3];
|
||||
/* 0xC90 */ u8 field_0xc90[4];
|
||||
/* 0xC94 */ dCcD_Cyl mColCyl;
|
||||
/* 0xDD0 */ ActionFn mpNextActionFn;
|
||||
/* 0xDDC */ ActionFn mpActionFn;
|
||||
/* 0xDE8 */ request_of_phase_process_class mPhase[2];
|
||||
/* 0xDF8 */ u8 field_0xdf8[8];
|
||||
/* 0xE00 */ u32 mItemID;
|
||||
/* 0xE04 */ u32 field_0xe04;
|
||||
/* 0xE08 */ u32 field_0xe08;
|
||||
/* 0xE0C */ u32 field_0xe0c;
|
||||
/* 0xE10 */ u32 field_0xe10;
|
||||
/* 0xE14 */ int mFlowID;
|
||||
/* 0xE18 */ s16 mLookMode;
|
||||
/* 0xE1A */ u16 mState;
|
||||
/* 0xE1C */ bool field_0xe1c;
|
||||
/* 0xE1D */ bool field_0xe1d;
|
||||
/* 0xE1E */ u8 mType;
|
||||
|
||||
static char* mEvtCutNameList[4];
|
||||
#ifdef NONMATCHING
|
||||
static EventFn mEvtCutList[4];
|
||||
#else
|
||||
static u8 mEvtCutList[48];
|
||||
#endif
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpcThe_c) == 0xE20);
|
||||
|
||||
class daNpcThe_Param_c {
|
||||
public:
|
||||
struct param {
|
||||
/* 0x00 */ f32 field_0x00;
|
||||
/* 0x04 */ f32 mGravity;
|
||||
/* 0x08 */ f32 mScale;
|
||||
/* 0x0C */ f32 field_0x0c;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 mCylH;
|
||||
/* 0x18 */ f32 mWallH;
|
||||
/* 0x1C */ f32 mWallR;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
/* 0x24 */ f32 field_0x24;
|
||||
/* 0x28 */ f32 field_0x28;
|
||||
/* 0x2C */ f32 field_0x2c;
|
||||
/* 0x30 */ f32 field_0x30;
|
||||
/* 0x34 */ f32 field_0x34;
|
||||
/* 0x38 */ f32 field_0x38;
|
||||
/* 0x3C */ f32 field_0x3c;
|
||||
/* 0x40 */ f32 mLookatScl;
|
||||
/* 0x44 */ f32 field_0x44;
|
||||
/* 0x48 */ s16 field_0x48;
|
||||
/* 0x4A */ s16 field_0x4a;
|
||||
/* 0x4C */ s16 field_0x4c;
|
||||
/* 0x4E */ s16 field_0x4e;
|
||||
/* 0x50 */ f32 field_0x50;
|
||||
/* 0x54 */ f32 field_0x54;
|
||||
/* 0x58 */ f32 field_0x58;
|
||||
/* 0x5C */ f32 field_0x5c;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 field_0x62;
|
||||
/* 0x64 */ s16 mTestExpression;
|
||||
/* 0x66 */ s16 mTestMotion;
|
||||
/* 0x68 */ s16 mTestLookMode;
|
||||
/* 0x6A */ bool mTest;
|
||||
};
|
||||
|
||||
/* 80AFBDA0 */ virtual ~daNpcThe_Param_c();
|
||||
|
||||
static daNpcThe_Param_c::param const m;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpcThe_Param_c::param) == 0x6C);
|
||||
|
||||
#endif /* D_A_NPC_THE_H */
|
||||
|
|
|
|||
|
|
@ -18,7 +18,16 @@ public:
|
|||
}
|
||||
/* 8048CD68 */ virtual ~daTag_EvtArea_c() {}
|
||||
|
||||
inline s32 getType();
|
||||
inline s32 getType() {
|
||||
u8 type = (u8)shape_angle.z;
|
||||
return type == 0xff ? 0 : type;
|
||||
}
|
||||
|
||||
inline s32 getNo() {
|
||||
u16 no = (shape_angle.z & 0xff00) >> 8;
|
||||
return no == 0xff ? 0 : no;
|
||||
}
|
||||
|
||||
inline u32 getOnEvtBit();
|
||||
inline u32 getOffEvtBit();
|
||||
inline u8 getBitSW();
|
||||
|
|
|
|||
|
|
@ -31,12 +31,13 @@ inline f64 getConst() {
|
|||
return 6.2831854820251465;
|
||||
}
|
||||
|
||||
template<int N, typename T>
|
||||
struct TSinCosTable {
|
||||
std::pair<f32, f32> table[0x2000];
|
||||
std::pair<T, T> table[1 << N];
|
||||
TSinCosTable() {
|
||||
for (int i = 0; i < 0x2000; i++) {
|
||||
table[i].a1 = sin((i * getConst()) / 8192.0);
|
||||
table[i].b1 = cos((i * getConst()) / 8192.0);
|
||||
for (int i = 0; i < 1 << N; i++) {
|
||||
table[i].a1 = sin((i * getConst()) / (1 << N));
|
||||
table[i].b1 = cos((i * getConst()) / (1 << N));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -78,7 +79,7 @@ namespace JMath {
|
|||
|
||||
/* ############################################################################################## */
|
||||
/* 80439A20-80449A20 066740 10000+00 1/1 265/265 705/705 .bss sincosTable___5JMath */
|
||||
TSinCosTable sincosTable_;
|
||||
TSinCosTable<13, f32> sincosTable_;
|
||||
|
||||
/* 80449A20-8044AA40 076740 1020+00 1/1 0/0 0/0 .bss atanTable___5JMath */
|
||||
TAtanTable atanTable_;
|
||||
|
|
|
|||
|
|
@ -356,7 +356,7 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
|
|||
#pragma pop
|
||||
|
||||
/* 8095D9B0-8095DA88 000020 00D8+00 1/2 0/0 0/0 .data l_bckGetParamList */
|
||||
static bckGetParam l_bckGetParamList[18] = {
|
||||
static daNpc_GetParam2 l_bckGetParamList[18] = {
|
||||
{-1, 2, 0}, // <none>
|
||||
{7, 0, 0}, // ash_f_talk_a
|
||||
{12, 0, 1}, // ash_f_talk_b
|
||||
|
|
@ -378,14 +378,14 @@ static bckGetParam l_bckGetParamList[18] = {
|
|||
};
|
||||
|
||||
/* 8095DA88-8095DA94 0000F8 000C+00 1/1 0/0 0/0 .data l_btpGetParamList */
|
||||
static btpGetParam l_btpGetParamList[1] = {
|
||||
static daNpc_GetParam2 l_btpGetParamList[1] = {
|
||||
{17, 2, 0}, // ash
|
||||
};
|
||||
|
||||
/* 8095DA94-8095DAA0 000104 000C+00 0/1 0/0 0/0 .data l_btkGetParamList */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static btkGetParam l_btkGetParamList[1] = {
|
||||
static daNpc_GetParam2 l_btkGetParamList[1] = {
|
||||
{14, 2, 0}, // ash
|
||||
};
|
||||
#pragma pop
|
||||
|
|
@ -838,7 +838,7 @@ SECTION_RODATA daNpcAsh_Param_c::param const daNpcAsh_Param_c::m = {
|
|||
-3.0f, // mGravity
|
||||
1.0f,
|
||||
400.0f, // mShadow
|
||||
255.0f, // mSttsWeight
|
||||
255.0f, // mCcSttsWeight
|
||||
200.0f,
|
||||
35.0f,
|
||||
30.0f,
|
||||
|
|
@ -919,7 +919,7 @@ cPhs__Step daNpcAsh_c::Create() {
|
|||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
fopAcM_SetMtx(this, mMcaMorf->getModel()->getBaseTRMtx());
|
||||
fopAcM_SetMtx(this, mpMorf->getModel()->getBaseTRMtx());
|
||||
fopAcM_setCullSizeBox(this, -100.0f, -50.0f, -100.0f, 100.0f, 220.0f, 100.0f);
|
||||
mZ2.init(¤t.pos, &eyePos, 3, 1);
|
||||
mAcchCir.SetWall(daNpcAsh_Param_c::m.m1C, daNpcAsh_Param_c::m.m18);
|
||||
|
|
@ -927,14 +927,14 @@ cPhs__Step daNpcAsh_c::Create() {
|
|||
mAcch.SetRoofNone();
|
||||
mAcch.SetWaterNone();
|
||||
mAcch.CrrPos(dComIfG_Bgsp());
|
||||
mStts.Init((int)daNpcAsh_Param_c::m.mSttsWeight, 0, this);
|
||||
mCcStts.Init((int)daNpcAsh_Param_c::m.mCcSttsWeight, 0, this);
|
||||
mCcCyl[0].Set(daNpcF_c::mCcDCyl);
|
||||
mCcCyl[0].SetStts(&mStts);
|
||||
mCcCyl[0].SetStts(&mCcStts);
|
||||
mCcCyl[0].SetTgType(0);
|
||||
mCcCyl[0].SetTgSPrm(0);
|
||||
if (field_0xf60 == 0) {
|
||||
mCcCyl[1].Set(daNpcF_c::mCcDCyl);
|
||||
mCcCyl[1].SetStts(&mStts);
|
||||
mCcCyl[1].SetStts(&mCcStts);
|
||||
mCcCyl[1].SetTgType(0);
|
||||
mCcCyl[1].SetTgSPrm(0);
|
||||
mCcCyl[1].SetCoSPrm(0x19);
|
||||
|
|
@ -943,7 +943,7 @@ cPhs__Step daNpcAsh_c::Create() {
|
|||
field_0x980 = mAcch.GetGroundH();
|
||||
setEnvTevColor();
|
||||
setRoomNo();
|
||||
mMcaMorf->modelCalc();
|
||||
mpMorf->modelCalc();
|
||||
reset();
|
||||
Execute();
|
||||
}
|
||||
|
|
@ -964,16 +964,16 @@ COMPILER_STRIP_GATE(0x8095D6C0, &lit_4301);
|
|||
#ifdef NONMATCHING
|
||||
BOOL daNpcAsh_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcNames[0], 11);
|
||||
mMcaMorf = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mZ2, 0x80000, 0x11020284);
|
||||
if (mMcaMorf != NULL && mMcaMorf->mpModel == NULL) {
|
||||
mMcaMorf->stopZelAnime();
|
||||
mMcaMorf = NULL;
|
||||
mpMorf = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mZ2, 0x80000, 0x11020284);
|
||||
if (mpMorf != NULL && mpMorf->mpModel == NULL) {
|
||||
mpMorf->stopZelAnime();
|
||||
mpMorf = NULL;
|
||||
}
|
||||
if (mMcaMorf == NULL) {
|
||||
if (mpMorf == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
J3DModel* model = mMcaMorf->getModel();
|
||||
J3DModel* model = mpMorf->getModel();
|
||||
for (u16 jointNo = 0; jointNo < modelData->getJointNum(); jointNo++) {
|
||||
modelData->getJointNodePointer(jointNo)->setCallBack(ctrlJointCallBack);
|
||||
}
|
||||
|
|
@ -1150,15 +1150,15 @@ int daNpcAsh_c::Execute() {
|
|||
|
||||
/* 8095911C-80959238 000F1C 011C+00 1/1 0/0 0/0 .text Draw__10daNpcAsh_cFv */
|
||||
int daNpcAsh_c::Draw() {
|
||||
mMcaMorf->getModel()->getModelData()->getMaterialNodePointer(2)->setMaterialAnm(mpMatAnm);
|
||||
mpMorf->getModel()->getModelData()->getMaterialNodePointer(2)->setMaterialAnm(mpMatAnm);
|
||||
draw(0, 0, daNpcAsh_Param_c::m.mShadow, NULL, 0);
|
||||
if (field_0xf60 == 1) {
|
||||
g_env_light.setLightTevColorType_MAJI(mModelBow, &tevStr);
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(16));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(16));
|
||||
mModelBow->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(mModelBow);
|
||||
g_env_light.setLightTevColorType_MAJI(mModelQuiver, &tevStr);
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(2));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(2));
|
||||
mModelQuiver->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(mModelQuiver);
|
||||
}
|
||||
|
|
@ -1173,11 +1173,11 @@ bool daNpcAsh_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
|||
int jointNo = i_joint->getJntNo();
|
||||
int lookatJoints[3] = {1, 3, 4};
|
||||
if (jointNo == 0) {
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(1));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(1));
|
||||
mDoMtx_stack_c::multVecZero(&mLookatPos[0]);
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(3));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(3));
|
||||
mDoMtx_stack_c::multVecZero(&mLookatPos[1]);
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(4));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(4));
|
||||
mDoMtx_stack_c::multVecZero(&mLookatPos[2]);
|
||||
}
|
||||
mDoMtx_stack_c::copy(i_model->getAnmMtx(jointNo));
|
||||
|
|
@ -1192,14 +1192,14 @@ bool daNpcAsh_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
|||
cMtx_copy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
|
||||
if ((jointNo == 4 || jointNo == 12) && (mAnmFlags & 0x100) != 0) {
|
||||
J3DAnmTransform* bckAnm = mBckAnm.getBckAnm();
|
||||
mBckAnm.changeBckOnly(mMcaMorf->getAnm());
|
||||
mMcaMorf->changeAnm(bckAnm);
|
||||
mBckAnm.changeBckOnly(mpMorf->getAnm());
|
||||
mpMorf->changeAnm(bckAnm);
|
||||
}
|
||||
if (cM3d_IsZero_inverted(mExpressionMorf)) {
|
||||
if (jointNo == 12) {
|
||||
mMcaMorf->onMorfNone();
|
||||
mpMorf->onMorfNone();
|
||||
} else if (jointNo == 4) {
|
||||
mMcaMorf->offMorfNone();
|
||||
mpMorf->offMorfNone();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
|
@ -1236,12 +1236,12 @@ bool daNpcAsh_c::setExpressionAnm(int i_idx, bool i_modify) {
|
|||
return false;
|
||||
}
|
||||
mAnmFlags &= ~ANM_EXPRESSION_FLAGS;
|
||||
if (l_bckGetParamList[i_idx].bckIdx >= 0) {
|
||||
bckAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].bckIdx);
|
||||
if (l_bckGetParamList[i_idx].fileIdx >= 0) {
|
||||
bckAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].fileIdx);
|
||||
} else {
|
||||
bckAnm = NULL;
|
||||
}
|
||||
s32 attr = l_bckGetParamList[i_idx].bckAttr;
|
||||
s32 attr = l_bckGetParamList[i_idx].attr;
|
||||
bool res = false;
|
||||
switch (i_idx) {
|
||||
case 0:
|
||||
|
|
@ -1300,13 +1300,13 @@ asm bool daNpcAsh_c::setExpressionAnm(int param_0, bool param_1) {
|
|||
#ifdef NONMATCHING
|
||||
// literals
|
||||
bool daNpcAsh_c::setExpressionBtp(int i_idx) {
|
||||
J3DAnmTexPattern* btpAnm = getTexPtrnAnmP(l_arcNames[l_btpGetParamList[i_idx].arcIdx], l_btpGetParamList[i_idx].btpIdx);
|
||||
s32 attr = l_btpGetParamList[i_idx].btpAttr;
|
||||
J3DAnmTexPattern* btpAnm = getTexPtrnAnmP(l_arcNames[l_btpGetParamList[i_idx].arcIdx], l_btpGetParamList[i_idx].fileIdx);
|
||||
s32 attr = l_btpGetParamList[i_idx].attr;
|
||||
mAnmFlags &= ~(ANM_PAUSE_BTP | ANM_PLAY_BTP | ANM_FLAG_800);
|
||||
if (btpAnm == NULL) {
|
||||
return true;
|
||||
}
|
||||
if (setBtpAnm(btpAnm, mMcaMorf->getModel()->getModelData(), 1.0f, attr)) {
|
||||
if (setBtpAnm(btpAnm, mpMorf->getModel()->getModelData(), 1.0f, attr)) {
|
||||
mAnmFlags |= ANM_PAUSE_BTP | ANM_PLAY_BTP;
|
||||
if (i_idx == 0) {
|
||||
mAnmFlags |= ANM_FLAG_800;
|
||||
|
|
@ -1337,10 +1337,10 @@ void daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) {
|
|||
if (i_idx < 8 || i_idx >= 18) {
|
||||
return;
|
||||
}
|
||||
morfAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].bckIdx);
|
||||
btkAnm = getTexSRTKeyAnmP(l_arcNames[l_btkGetParamList[0].arcIdx], l_btkGetParamList[0].btkIdx);
|
||||
morfAttr = l_bckGetParamList[i_idx].bckAttr;
|
||||
btkAttr = l_btkGetParamList[0].btkAttr;
|
||||
morfAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].fileIdx);
|
||||
btkAnm = getTexSRTKeyAnmP(l_arcNames[l_btkGetParamList[0].arcIdx], l_btkGetParamList[0].fileIdx);
|
||||
morfAttr = l_bckGetParamList[i_idx].attr;
|
||||
btkAttr = l_btkGetParamList[0].attr;
|
||||
mAnmFlags &= ~ANM_MOTION_FLAGS;
|
||||
if (morfAnm != NULL) {
|
||||
if (setMcaMorfAnm(morfAnm, 1.0f, i_morf, morfAttr, 0, -1)) {
|
||||
|
|
@ -1349,7 +1349,7 @@ void daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) {
|
|||
}
|
||||
}
|
||||
if (btkAnm != NULL) {
|
||||
if (setBtkAnm(btkAnm, mMcaMorf->getModel()->getModelData(), 1.0f, btkAttr)) {
|
||||
if (setBtkAnm(btkAnm, mpMorf->getModel()->getModelData(), 1.0f, btkAttr)) {
|
||||
mAnmFlags |= ANM_PAUSE_BTK | ANM_PLAY_BTK;
|
||||
}
|
||||
}
|
||||
|
|
@ -1390,7 +1390,7 @@ void daNpcAsh_c::reset() {
|
|||
field_0x8f0 = current.angle;
|
||||
field_0x8f6 = field_0x8f0;
|
||||
speedF = 0.0f;
|
||||
speed.setAll(0.0f);
|
||||
speed.setall(0.0f);
|
||||
mItemPartnerId = -1;
|
||||
mOrderEvtNo = 0;
|
||||
mExpressionMorfOverride = 0;
|
||||
|
|
@ -1916,7 +1916,7 @@ asm bool daNpcAsh_c::wait_type0(void* param_0) {
|
|||
/* 8095A67C-8095A6C0 00247C 0044+00 1/0 0/0 0/0 .text setMotion__10daNpcAsh_cFifi */
|
||||
void daNpcAsh_c::setMotion(int i_motion, f32 i_morf, BOOL i_restart) {
|
||||
s16 motion = (s16)i_motion;
|
||||
if ((i_restart || mMotion != motion)) {
|
||||
if (i_restart || mMotion != motion) {
|
||||
if (i_motion >= 0 && i_motion < 10) {
|
||||
mMotion = motion;
|
||||
mMotionMorfOverride = i_morf;
|
||||
|
|
@ -2088,10 +2088,10 @@ bool daNpcAsh_c::demo(void* param_0) {
|
|||
dComIfGp_getEventManager().cutEnd(cutIndex);
|
||||
}
|
||||
}
|
||||
if (eventInfo.checkCommandDemoAccrpt() && field_0x9d4 != -1 && dComIfGp_getEventManager().endCheck(field_0x9d4)) {
|
||||
if (eventInfo.checkCommandDemoAccrpt() && mEventIdx != -1 && dComIfGp_getEventManager().endCheck(mEventIdx)) {
|
||||
dComIfGp_event_reset();
|
||||
mOrderEvtNo = 0;
|
||||
field_0x9d4 = -1;
|
||||
mEventIdx = -1;
|
||||
if (field_0xf60 == 0) {
|
||||
setAction(&wait_type0);
|
||||
} else {
|
||||
|
|
@ -2100,7 +2100,7 @@ bool daNpcAsh_c::demo(void* param_0) {
|
|||
}
|
||||
} else {
|
||||
mOrderEvtNo = 0;
|
||||
field_0x9d4 = -1;
|
||||
mEventIdx = -1;
|
||||
if (field_0xf60 == 0) {
|
||||
setAction(&wait_type0);
|
||||
} else {
|
||||
|
|
@ -2522,8 +2522,8 @@ COMPILER_STRIP_GATE(0x8095D8E4, &lit_5493);
|
|||
#ifdef NONMATCHING
|
||||
BOOL daNpcAsh_c::ctrlBtk() {
|
||||
if (mpMatAnm != NULL) {
|
||||
mpMatAnm->setNowOffsetX(cM_ssin(field_0x8fc.y) * 0.2f * -1.0f);
|
||||
mpMatAnm->setNowOffsetY(cM_ssin(field_0x8fc.x) * 0.4f);
|
||||
mpMatAnm->setNowOffsetX(cM_ssin(mEyeAngle.y) * 0.2f * -1.0f);
|
||||
mpMatAnm->setNowOffsetY(cM_ssin(mEyeAngle.x) * 0.4f);
|
||||
mpMatAnm->onEyeMoveFlag();
|
||||
}
|
||||
return mpMatAnm != NULL;
|
||||
|
|
@ -2591,37 +2591,44 @@ void daNpcAsh_c::setAttnPos() {
|
|||
field_0x91a[i].setall(0);
|
||||
}
|
||||
}
|
||||
|
||||
setMtx2();
|
||||
lookat();
|
||||
|
||||
cXyz vec(10.0f, 10.0f, 0.0f);
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(4));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(4));
|
||||
mDoMtx_stack_c::multVecZero(&mHeadPos);
|
||||
mDoMtx_stack_c::multVec(&vec, &eyePos);
|
||||
vec.x = 0.0f;
|
||||
mDoMtx_stack_c::multVec(&vec, &vec);
|
||||
field_0x902.x = cLib_targetAngleX(&mHeadPos, &vec);
|
||||
field_0x902.y = cLib_targetAngleY(&mHeadPos, &vec);
|
||||
mHeadAngle.x = cLib_targetAngleX(&mHeadPos, &vec);
|
||||
mHeadAngle.y = cLib_targetAngleY(&mHeadPos, &vec);
|
||||
cXyz* attnPos = mLookat.getAttnPos();
|
||||
|
||||
if (attnPos != NULL) {
|
||||
cXyz local_48 = *attnPos - eyePos;
|
||||
field_0x8fc.y = -(field_0x91a[2].y + field_0x8f0.y);
|
||||
field_0x8fc.y += cM_atan2s(local_48.x, local_48.z);
|
||||
field_0x8fc.x = -cM_atan2s(local_48.y, local_48.absXZ());
|
||||
field_0x8fc.x += field_0x902.x;
|
||||
mEyeAngle.y = -(field_0x91a[2].y + field_0x8f0.y);
|
||||
mEyeAngle.y += cM_atan2s(local_48.x, local_48.z);
|
||||
mEyeAngle.x = -cM_atan2s(local_48.y, local_48.absXZ());
|
||||
mEyeAngle.x += mHeadAngle.x;
|
||||
} else {
|
||||
field_0x8fc.y = 0;
|
||||
field_0x8fc.x = 0;
|
||||
mEyeAngle.y = 0;
|
||||
mEyeAngle.x = 0;
|
||||
}
|
||||
attention_info.position.set(mHeadPos.x, mHeadPos.y + 35.0f, mHeadPos.z);
|
||||
|
||||
attention_info.position.set(mHeadPos.x, mHeadPos.y + daNpcAsh_Param_c::m.m00, mHeadPos.z);
|
||||
|
||||
cXyz center;
|
||||
mDoMtx_stack_c::copy(mMcaMorf->getModel()->getAnmMtx(2));
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(2));
|
||||
mDoMtx_stack_c::multVecZero(¢er);
|
||||
center.y = current.pos.y;
|
||||
mCcCyl[0].SetC(center);
|
||||
mCcCyl[0].SetH(daNpcAsh_Param_c::m.m14);
|
||||
mCcCyl[0].SetR(daNpcAsh_Param_c::m.m1C);
|
||||
dComIfG_Ccsp()->Set(&mCcCyl[0]);
|
||||
if (field_0xf60 == 0 && (!daNpcF_chkEvtBit(0x169) || !daNpcF_chkEvtBit(0x10a) || !daNpcF_chkEvtBit(0x10b) || daNpcF_chkEvtBit(0x10c))) {
|
||||
|
||||
if (field_0xf60 == 0 && (!daNpcF_chkEvtBit(0x169) || !daNpcF_chkEvtBit(0x10a)
|
||||
|| !daNpcF_chkEvtBit(0x10b) || daNpcF_chkEvtBit(0x10c))) {
|
||||
center.set(3070.0f, -1150.0f, 2446.0f);
|
||||
mCcCyl[1].SetC(center);
|
||||
mCcCyl[1].SetH(170.0f);
|
||||
|
|
@ -2674,7 +2681,7 @@ COMPILER_STRIP_GATE(0x8095D90C, &lit_5652);
|
|||
// literals
|
||||
void daNpcAsh_c::lookat() {
|
||||
fopAc_ac_c* actor = NULL;
|
||||
J3DModel* model = mMcaMorf->getModel();
|
||||
J3DModel* model = mpMorf->getModel();
|
||||
BOOL iv7 = false;
|
||||
f32 fv13 = daNpcAsh_Param_c::m.m24;
|
||||
f32 fv12 = daNpcAsh_Param_c::m.m20;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -1549,9 +1549,9 @@ void daObjStone_c::set_carry_eff() {
|
|||
cXyz pos;
|
||||
|
||||
if (mStoneType == 1) {
|
||||
pos.setAll(FLOAT_LABEL(lit_3845));
|
||||
pos.setall(FLOAT_LABEL(lit_3845));
|
||||
} else {
|
||||
pos.setAll(FLOAT_LABEL(lit_4634));
|
||||
pos.setall(FLOAT_LABEL(lit_4634));
|
||||
}
|
||||
|
||||
if (field_0x0950 == 3) {
|
||||
|
|
|
|||
|
|
@ -974,7 +974,7 @@ void daObjVolcBall_c::setFallEffect(int i_ballNo) {
|
|||
cXyz sp28;
|
||||
|
||||
if (i_ballNo == 8) {
|
||||
sp28.setAll(field_0x291c);
|
||||
sp28.setall(field_0x291c);
|
||||
} else {
|
||||
sp28 = ball->field_0x1c;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -235,7 +235,7 @@ static int nodeCallBack(J3DJoint* i_jnt, int i_param) {
|
|||
|
||||
if (jnt_no == 2) {
|
||||
cXyz scale;
|
||||
scale.setAll(i_this->getJointScale(jnt_no));
|
||||
scale.setall(i_this->getJointScale(jnt_no));
|
||||
mDoMtx_stack_c::scaleM(scale);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,11 +7,6 @@
|
|||
#include "d/a/d_a_npc.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
s32 daTag_EvtArea_c::getType() {
|
||||
u8 type = (u8)shape_angle.z;
|
||||
return type == 0xff ? 0 : type;
|
||||
}
|
||||
|
||||
u32 daTag_EvtArea_c::getOnEvtBit() {
|
||||
u32 ret = fopAcM_GetParam(this) & 0xfff;
|
||||
return ret == 0xfff ? -1 : ret;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -578,7 +578,7 @@ void daItem_c::CreateInit() {
|
|||
procInitNormal();
|
||||
show();
|
||||
|
||||
field_0x930.setAll(1.0f);
|
||||
field_0x930.setall(1.0f);
|
||||
|
||||
switch (daItem_prm::getType(this)) {
|
||||
case 5:
|
||||
|
|
|
|||
|
|
@ -701,7 +701,7 @@ void dEvDtStaff_c::specialProcCreate() {
|
|||
|
||||
cXyz* scaleP = dComIfGp_evmng_getMyXyzP(staffId, "SCALE");
|
||||
if (scaleP == NULL) {
|
||||
scale.setAll(1.0f);
|
||||
scale.setall(1.0f);
|
||||
} else {
|
||||
scale = *scaleP;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue