mirror of https://github.com/zeldaret/tp.git
d_a_npc_zrz mostly done (#2168)
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
This commit is contained in:
parent
61c48f6e72
commit
57a1d21be8
|
|
@ -338,7 +338,7 @@ d_a_npc_zelRo | 37.784656% | 6836 | 18092
|
|||
d_a_npc_zelda | 37.603569% | 7080 | 18828
|
||||
d_a_npc_zra | 27.520869% | 29804 | 108296
|
||||
d_a_npc_zrc | 32.120762% | 10384 | 32328
|
||||
d_a_npc_zrz | 31.977232% | 13708 | 42868
|
||||
d_a_npc_zrz | 36.950639% | 15840 | 42868
|
||||
d_a_obj_Lv5Key | 37.172105% | 2324 | 6252
|
||||
d_a_obj_Turara | 38.494412% | 4684 | 12168
|
||||
d_a_obj_TvCdlst | 43.547170% | 2308 | 5300
|
||||
|
|
@ -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 | 38.860853% | 4469124 | 11500324
|
||||
Total | 38.879392% | 4471256 | 11500324
|
||||
|
|
|
|||
|
|
@ -1,61 +0,0 @@
|
|||
lbl_80153578:
|
||||
/* 80153578 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8015357C 7C 08 02 A6 */ mflr r0
|
||||
/* 80153580 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80153584 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80153588 48 20 EC 4D */ bl _savegpr_27
|
||||
/* 8015358C 7C 7B 1B 78 */ mr r27, r3
|
||||
/* 80153590 7C 9C 23 78 */ mr r28, r4
|
||||
/* 80153594 7C BD 2B 78 */ mr r29, r5
|
||||
/* 80153598 7C DE 33 78 */ mr r30, r6
|
||||
/* 8015359C 80 64 00 44 */ lwz r3, 0x44(r4)
|
||||
/* 801535A0 38 63 00 1C */ addi r3, r3, 0x1c
|
||||
/* 801535A4 4B F3 02 8D */ bl Move__10dCcD_GSttsFv
|
||||
/* 801535A8 80 1B 09 54 */ lwz r0, 0x954(r27)
|
||||
/* 801535AC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 801535B0 40 82 00 78 */ bne lbl_80153628
|
||||
/* 801535B4 7F 83 E3 78 */ mr r3, r28
|
||||
/* 801535B8 4B F3 0E A9 */ bl ChkTgHit__12dCcD_GObjInfFv
|
||||
/* 801535BC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 801535C0 41 82 00 68 */ beq lbl_80153628
|
||||
/* 801535C4 38 7C 00 9C */ addi r3, r28, 0x9c
|
||||
/* 801535C8 4B F3 00 C1 */ bl GetAc__22dCcD_GAtTgCoCommonBaseFv
|
||||
/* 801535CC 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 801535D0 41 82 00 58 */ beq lbl_80153628
|
||||
/* 801535D4 7F 63 DB 78 */ mr r3, r27
|
||||
/* 801535D8 7F E4 FB 78 */ mr r4, r31
|
||||
/* 801535DC 4B EC 71 35 */ bl fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c
|
||||
/* 801535E0 A8 1B 08 F2 */ lha r0, 0x8f2(r27)
|
||||
/* 801535E4 7C 00 18 50 */ subf r0, r0, r3
|
||||
/* 801535E8 B0 1B 09 90 */ sth r0, 0x990(r27)
|
||||
/* 801535EC A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 801535F0 2C 00 01 00 */ cmpwi r0, 0x100
|
||||
/* 801535F4 40 82 00 28 */ bne lbl_8015361C
|
||||
/* 801535F8 2C 1D 00 00 */ cmpwi r29, 0
|
||||
/* 801535FC 41 82 00 18 */ beq lbl_80153614
|
||||
/* 80153600 A0 1F 06 BE */ lhz r0, 0x6be(r31)
|
||||
/* 80153604 60 00 00 04 */ ori r0, r0, 4
|
||||
/* 80153608 B0 1F 06 BE */ sth r0, 0x6be(r31)
|
||||
/* 8015360C 38 60 00 01 */ li r3, 1
|
||||
/* 80153610 48 00 00 30 */ b lbl_80153640
|
||||
lbl_80153614:
|
||||
/* 80153614 38 60 00 00 */ li r3, 0
|
||||
/* 80153618 48 00 00 28 */ b lbl_80153640
|
||||
lbl_8015361C:
|
||||
/* 8015361C 30 1E FF FF */ addic r0, r30, -1
|
||||
/* 80153620 7C 60 F1 10 */ subfe r3, r0, r30
|
||||
/* 80153624 48 00 00 1C */ b lbl_80153640
|
||||
lbl_80153628:
|
||||
/* 80153628 7F 83 E3 78 */ mr r3, r28
|
||||
/* 8015362C 81 9C 00 3C */ lwz r12, 0x3c(r28)
|
||||
/* 80153630 81 8C 00 24 */ lwz r12, 0x24(r12)
|
||||
/* 80153634 7D 89 03 A6 */ mtctr r12
|
||||
/* 80153638 4E 80 04 21 */ bctrl
|
||||
/* 8015363C 38 60 00 00 */ li r3, 0
|
||||
lbl_80153640:
|
||||
/* 80153640 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80153644 48 20 EB DD */ bl _restgpr_27
|
||||
/* 80153648 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8015364C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80153650 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80153654 4E 80 00 20 */ blr
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
lbl_80152614:
|
||||
/* 80152614 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80152618 4D 82 00 20 */ beqlr
|
||||
/* 8015261C A8 05 00 0E */ lha r0, 0xe(r5)
|
||||
/* 80152620 2C 00 00 FD */ cmpwi r0, 0xfd
|
||||
/* 80152624 4C 82 00 20 */ bnelr
|
||||
/* 80152628 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 8015262C 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80152630 80 04 5D AC */ lwz r0, 0x5dac(r4)
|
||||
/* 80152634 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 80152638 40 82 00 10 */ bne lbl_80152648
|
||||
/* 8015263C 88 05 05 68 */ lbz r0, 0x568(r5)
|
||||
/* 80152640 90 03 09 30 */ stw r0, 0x930(r3)
|
||||
/* 80152644 4E 80 00 20 */ blr
|
||||
lbl_80152648:
|
||||
/* 80152648 38 00 00 01 */ li r0, 1
|
||||
/* 8015264C 90 03 09 30 */ stw r0, 0x930(r3)
|
||||
/* 80152650 4E 80 00 20 */ blr
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
lbl_80B949F4:
|
||||
/* 80B949F4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B949F8 7C 08 02 A6 */ mflr r0
|
||||
/* 80B949FC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B94A00 38 80 FF FF */ li r4, -1
|
||||
/* 80B94A04 81 83 0B 44 */ lwz r12, 0xb44(r3)
|
||||
/* 80B94A08 81 8C 00 08 */ lwz r12, 8(r12)
|
||||
/* 80B94A0C 7D 89 03 A6 */ mtctr r12
|
||||
/* 80B94A10 4E 80 04 21 */ bctrl
|
||||
/* 80B94A14 38 60 00 01 */ li r3, 1
|
||||
/* 80B94A18 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B94A1C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B94A20 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B94A24 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B94A28:
|
||||
/* 80B94A28 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B94A2C 7C 08 02 A6 */ mflr r0
|
||||
/* 80B94A30 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B94A34 4B 5B D5 E1 */ bl execute__8daNpcF_cFv
|
||||
/* 80B94A38 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B94A3C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B94A40 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B94A44 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_80B96740:
|
||||
/* 80B96740 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B96744 7C 08 02 A6 */ mflr r0
|
||||
/* 80B96748 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9674C 38 63 14 0C */ addi r3, r3, 0x140c
|
||||
/* 80B96750 4B 7C B8 F9 */ bl __ptmf_cmpr
|
||||
/* 80B96754 7C 60 00 34 */ cntlzw r0, r3
|
||||
/* 80B96758 54 03 D9 7E */ srwi r3, r0, 5
|
||||
/* 80B9675C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B96760 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B96764 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B96768 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B950F4:
|
||||
/* 80B950F4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B950F8 7C 08 02 A6 */ mflr r0
|
||||
/* 80B950FC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B95100 4B FF F4 3D */ bl CreateHeap__11daNpc_zrZ_cFv
|
||||
/* 80B95104 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B95108 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9510C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B95110 4E 80 00 20 */ blr
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
lbl_80B95114:
|
||||
/* 80B95114 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B95118 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9511C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B95120 7C 60 1B 78 */ mr r0, r3
|
||||
/* 80B95124 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80B95128 40 82 00 24 */ bne lbl_80B9514C
|
||||
/* 80B9512C 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */
|
||||
/* 80B95130 38 63 4A C8 */ addi r3, r3, j3dSys@l /* 0x80434AC8@l */
|
||||
/* 80B95134 80 A3 00 38 */ lwz r5, 0x38(r3)
|
||||
/* 80B95138 80 65 00 14 */ lwz r3, 0x14(r5)
|
||||
/* 80B9513C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80B95140 41 82 00 0C */ beq lbl_80B9514C
|
||||
/* 80B95144 7C 04 03 78 */ mr r4, r0
|
||||
/* 80B95148 4B FF FC D1 */ bl ctrlJoint__11daNpc_zrZ_cFP8J3DJointP8J3DModel
|
||||
lbl_80B9514C:
|
||||
/* 80B9514C 38 60 00 01 */ li r3, 1
|
||||
/* 80B95150 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B95154 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B95158 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B9515C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B9A504:
|
||||
/* 80B9A504 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B9A508 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9A50C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9A510 4B FF 9D 2D */ bl create__11daNpc_zrZ_cFv
|
||||
/* 80B9A514 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B9A518 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9A51C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B9A520 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B9A524:
|
||||
/* 80B9A524 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B9A528 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9A52C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9A530 4B FF A4 C5 */ bl Delete__11daNpc_zrZ_cFv
|
||||
/* 80B9A534 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B9A538 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9A53C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B9A540 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B9A564:
|
||||
/* 80B9A564 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B9A568 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9A56C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9A570 4B FF A4 D9 */ bl Draw__11daNpc_zrZ_cFv
|
||||
/* 80B9A574 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B9A578 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9A57C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B9A580 4E 80 00 20 */ blr
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
lbl_80B9A544:
|
||||
/* 80B9A544 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B9A548 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9A54C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9A550 4B FF A4 D9 */ bl Execute__11daNpc_zrZ_cFv
|
||||
/* 80B9A554 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B9A558 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9A55C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B9A560 4E 80 00 20 */ blr
|
||||
|
|
@ -1,76 +0,0 @@
|
|||
lbl_80B968E0:
|
||||
/* 80B968E0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80B968E4 7C 08 02 A6 */ mflr r0
|
||||
/* 80B968E8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80B968EC 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 80B968F0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B968F4 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80B968F8 41 82 00 5C */ beq lbl_80B96954
|
||||
/* 80B968FC 38 9F 12 C4 */ addi r4, r31, 0x12c4
|
||||
/* 80B96900 38 A0 00 01 */ li r5, 1
|
||||
/* 80B96904 38 C0 00 00 */ li r6, 0
|
||||
/* 80B96908 4B 5B CC 71 */ bl hitChk2__8daNpcF_cFP8dCcD_Cylii
|
||||
/* 80B9690C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B96910 41 82 00 44 */ beq lbl_80B96954
|
||||
/* 80B96914 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B96918 80 1F 09 30 */ lwz r0, 0x930(r31)
|
||||
/* 80B9691C 2C 00 00 08 */ cmpwi r0, 8
|
||||
/* 80B96920 40 82 00 0C */ bne lbl_80B9692C
|
||||
/* 80B96924 38 80 00 14 */ li r4, 0x14
|
||||
/* 80B96928 48 00 00 10 */ b lbl_80B96938
|
||||
lbl_80B9692C:
|
||||
/* 80B9692C 3C 80 80 BA */ lis r4, m__17daNpc_zrZ_Param_c@ha /* 0x80B9AFEC@ha */
|
||||
/* 80B96930 38 84 AF EC */ addi r4, r4, m__17daNpc_zrZ_Param_c@l /* 0x80B9AFEC@l */
|
||||
/* 80B96934 A8 84 00 62 */ lha r4, 0x62(r4)
|
||||
lbl_80B96938:
|
||||
/* 80B96938 38 A0 00 01 */ li r5, 1
|
||||
/* 80B9693C 38 C0 00 00 */ li r6, 0
|
||||
/* 80B96940 4B 5B CD 19 */ bl setDamage__8daNpcF_cFiii
|
||||
/* 80B96944 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B96948 38 80 00 01 */ li r4, 1
|
||||
/* 80B9694C 48 00 05 31 */ bl setLookMode__11daNpc_zrZ_cFi
|
||||
/* 80B96950 48 00 00 28 */ b lbl_80B96978
|
||||
lbl_80B96954:
|
||||
/* 80B96954 88 1F 09 F0 */ lbz r0, 0x9f0(r31)
|
||||
/* 80B96958 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80B9695C 41 82 00 1C */ beq lbl_80B96978
|
||||
/* 80B96960 80 1F 09 54 */ lwz r0, 0x954(r31)
|
||||
/* 80B96964 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80B96968 40 82 00 10 */ bne lbl_80B96978
|
||||
/* 80B9696C 38 00 00 00 */ li r0, 0
|
||||
/* 80B96970 B0 1F 14 4A */ sth r0, 0x144a(r31)
|
||||
/* 80B96974 98 1F 09 F0 */ stb r0, 0x9f0(r31)
|
||||
lbl_80B96978:
|
||||
/* 80B96978 38 00 00 00 */ li r0, 0
|
||||
/* 80B9697C B0 1F 09 E6 */ sth r0, 0x9e6(r31)
|
||||
/* 80B96980 38 7F 14 00 */ addi r3, r31, 0x1400
|
||||
/* 80B96984 4B 7C B6 95 */ bl __ptmf_test
|
||||
/* 80B96988 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B9698C 41 82 00 54 */ beq lbl_80B969E0
|
||||
/* 80B96990 38 7F 14 0C */ addi r3, r31, 0x140c
|
||||
/* 80B96994 38 9F 14 00 */ addi r4, r31, 0x1400
|
||||
/* 80B96998 4B 7C B6 B1 */ bl __ptmf_cmpr
|
||||
/* 80B9699C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B969A0 40 82 00 1C */ bne lbl_80B969BC
|
||||
/* 80B969A4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B969A8 38 80 00 00 */ li r4, 0
|
||||
/* 80B969AC 39 9F 14 0C */ addi r12, r31, 0x140c
|
||||
/* 80B969B0 4B 7C B6 D5 */ bl __ptmf_scall
|
||||
/* 80B969B4 60 00 00 00 */ nop
|
||||
/* 80B969B8 48 00 00 28 */ b lbl_80B969E0
|
||||
lbl_80B969BC:
|
||||
/* 80B969BC 80 7F 14 00 */ lwz r3, 0x1400(r31)
|
||||
/* 80B969C0 80 1F 14 04 */ lwz r0, 0x1404(r31)
|
||||
/* 80B969C4 90 61 00 08 */ stw r3, 8(r1)
|
||||
/* 80B969C8 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 80B969CC 80 1F 14 08 */ lwz r0, 0x1408(r31)
|
||||
/* 80B969D0 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80B969D4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B969D8 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 80B969DC 4B FF FD 91 */ bl setAction__11daNpc_zrZ_cFM11daNpc_zrZ_cFPCvPvPv_i
|
||||
lbl_80B969E0:
|
||||
/* 80B969E0 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 80B969E4 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80B969E8 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B969EC 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80B969F0 4E 80 00 20 */ blr
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
lbl_80B9617C:
|
||||
/* 80B9617C 80 03 00 B0 */ lwz r0, 0xb0(r3)
|
||||
/* 80B96180 54 00 06 3E */ clrlwi r0, r0, 0x18
|
||||
/* 80B96184 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 80B96188 41 82 00 1C */ beq lbl_80B961A4
|
||||
/* 80B9618C 40 80 00 20 */ bge lbl_80B961AC
|
||||
/* 80B96190 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80B96194 40 80 00 08 */ bge lbl_80B9619C
|
||||
/* 80B96198 48 00 00 14 */ b lbl_80B961AC
|
||||
lbl_80B9619C:
|
||||
/* 80B9619C 38 60 00 01 */ li r3, 1
|
||||
/* 80B961A0 4E 80 00 20 */ blr
|
||||
lbl_80B961A4:
|
||||
/* 80B961A4 38 60 00 00 */ li r3, 0
|
||||
/* 80B961A8 4E 80 00 20 */ blr
|
||||
lbl_80B961AC:
|
||||
/* 80B961AC 38 60 00 01 */ li r3, 1
|
||||
/* 80B961B0 4E 80 00 20 */ blr
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
lbl_80B961B4:
|
||||
/* 80B961B4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B961B8 7C 08 02 A6 */ mflr r0
|
||||
/* 80B961BC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B961C0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80B961C4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B961C8 88 03 14 4E */ lbz r0, 0x144e(r3)
|
||||
/* 80B961CC 28 00 00 02 */ cmplwi r0, 2
|
||||
/* 80B961D0 41 82 00 0C */ beq lbl_80B961DC
|
||||
/* 80B961D4 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 80B961D8 40 82 00 24 */ bne lbl_80B961FC
|
||||
lbl_80B961DC:
|
||||
/* 80B961DC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80B961E0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80B961E4 88 9F 14 54 */ lbz r4, 0x1454(r31)
|
||||
/* 80B961E8 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
|
||||
/* 80B961EC 7C 05 07 74 */ extsb r5, r0
|
||||
/* 80B961F0 4B 49 F1 71 */ bl isSwitch__10dSv_info_cCFii
|
||||
/* 80B961F4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B961F8 40 82 00 50 */ bne lbl_80B96248
|
||||
lbl_80B961FC:
|
||||
/* 80B961FC 88 1F 14 4E */ lbz r0, 0x144e(r31)
|
||||
/* 80B96200 28 00 00 03 */ cmplwi r0, 3
|
||||
/* 80B96204 40 82 00 4C */ bne lbl_80B96250
|
||||
/* 80B96208 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80B9620C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80B96210 88 9F 14 54 */ lbz r4, 0x1454(r31)
|
||||
/* 80B96214 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
|
||||
/* 80B96218 7C 05 07 74 */ extsb r5, r0
|
||||
/* 80B9621C 4B 49 F1 45 */ bl isSwitch__10dSv_info_cCFii
|
||||
/* 80B96220 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B96224 41 82 00 24 */ beq lbl_80B96248
|
||||
/* 80B96228 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80B9622C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80B96230 88 9F 14 55 */ lbz r4, 0x1455(r31)
|
||||
/* 80B96234 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
|
||||
/* 80B96238 7C 05 07 74 */ extsb r5, r0
|
||||
/* 80B9623C 4B 49 F1 25 */ bl isSwitch__10dSv_info_cCFii
|
||||
/* 80B96240 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B96244 41 82 00 0C */ beq lbl_80B96250
|
||||
lbl_80B96248:
|
||||
/* 80B96248 38 60 00 01 */ li r3, 1
|
||||
/* 80B9624C 48 00 00 08 */ b lbl_80B96254
|
||||
lbl_80B96250:
|
||||
/* 80B96250 38 60 00 00 */ li r3, 0
|
||||
lbl_80B96254:
|
||||
/* 80B96254 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80B96258 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B9625C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B96260 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B96264 4E 80 00 20 */ blr
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
lbl_80B951AC:
|
||||
/* 80B951AC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B951B0 7C 08 02 A6 */ mflr r0
|
||||
/* 80B951B4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B951B8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80B951BC 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B951C0 4B 48 3B 21 */ bl fopAc_IsActor__FPv
|
||||
/* 80B951C4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B951C8 41 82 00 18 */ beq lbl_80B951E0
|
||||
/* 80B951CC A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 80B951D0 2C 00 01 78 */ cmpwi r0, 0x178
|
||||
/* 80B951D4 40 82 00 0C */ bne lbl_80B951E0
|
||||
/* 80B951D8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B951DC 48 00 00 08 */ b lbl_80B951E4
|
||||
lbl_80B951E0:
|
||||
/* 80B951E0 38 60 00 00 */ li r3, 0
|
||||
lbl_80B951E4:
|
||||
/* 80B951E4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80B951E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B951EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B951F0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B951F4 4E 80 00 20 */ blr
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
lbl_80B951F8:
|
||||
/* 80B951F8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B951FC 7C 08 02 A6 */ mflr r0
|
||||
/* 80B95200 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B95204 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80B95208 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B9520C 4B 48 3A D5 */ bl fopAc_IsActor__FPv
|
||||
/* 80B95210 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B95214 41 82 00 18 */ beq lbl_80B9522C
|
||||
/* 80B95218 A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 80B9521C 2C 00 00 88 */ cmpwi r0, 0x88
|
||||
/* 80B95220 40 82 00 0C */ bne lbl_80B9522C
|
||||
/* 80B95224 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B95228 48 00 00 08 */ b lbl_80B95230
|
||||
lbl_80B9522C:
|
||||
/* 80B9522C 38 60 00 00 */ li r3, 0
|
||||
lbl_80B95230:
|
||||
/* 80B95230 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80B95234 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B95238 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9523C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B95240 4E 80 00 20 */ blr
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
lbl_80B95160:
|
||||
/* 80B95160 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B95164 7C 08 02 A6 */ mflr r0
|
||||
/* 80B95168 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B9516C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80B95170 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B95174 4B 48 3B 6D */ bl fopAc_IsActor__FPv
|
||||
/* 80B95178 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B9517C 41 82 00 18 */ beq lbl_80B95194
|
||||
/* 80B95180 A8 1F 00 08 */ lha r0, 8(r31)
|
||||
/* 80B95184 2C 00 00 87 */ cmpwi r0, 0x87
|
||||
/* 80B95188 40 82 00 0C */ bne lbl_80B95194
|
||||
/* 80B9518C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B95190 48 00 00 08 */ b lbl_80B95198
|
||||
lbl_80B95194:
|
||||
/* 80B95194 38 60 00 00 */ li r3, 0
|
||||
lbl_80B95198:
|
||||
/* 80B95198 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80B9519C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B951A0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B951A4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B951A8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
lbl_80B9676C:
|
||||
/* 80B9676C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80B96770 7C 08 02 A6 */ mflr r0
|
||||
/* 80B96774 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B96778 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80B9677C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 80B96780 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80B96784 7C 9F 23 78 */ mr r31, r4
|
||||
/* 80B96788 38 00 00 03 */ li r0, 3
|
||||
/* 80B9678C B0 03 14 4A */ sth r0, 0x144a(r3)
|
||||
/* 80B96790 38 7E 14 0C */ addi r3, r30, 0x140c
|
||||
/* 80B96794 4B 7C B8 85 */ bl __ptmf_test
|
||||
/* 80B96798 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B9679C 41 82 00 18 */ beq lbl_80B967B4
|
||||
/* 80B967A0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 80B967A4 38 80 00 00 */ li r4, 0
|
||||
/* 80B967A8 39 9E 14 0C */ addi r12, r30, 0x140c
|
||||
/* 80B967AC 4B 7C B8 D9 */ bl __ptmf_scall
|
||||
/* 80B967B0 60 00 00 00 */ nop
|
||||
lbl_80B967B4:
|
||||
/* 80B967B4 38 00 00 00 */ li r0, 0
|
||||
/* 80B967B8 B0 1E 14 4A */ sth r0, 0x144a(r30)
|
||||
/* 80B967BC 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 80B967C0 80 1F 00 04 */ lwz r0, 4(r31)
|
||||
/* 80B967C4 90 7E 14 0C */ stw r3, 0x140c(r30)
|
||||
/* 80B967C8 90 1E 14 10 */ stw r0, 0x1410(r30)
|
||||
/* 80B967CC 80 1F 00 08 */ lwz r0, 8(r31)
|
||||
/* 80B967D0 90 1E 14 14 */ stw r0, 0x1414(r30)
|
||||
/* 80B967D4 38 7E 14 0C */ addi r3, r30, 0x140c
|
||||
/* 80B967D8 4B 7C B8 41 */ bl __ptmf_test
|
||||
/* 80B967DC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B967E0 41 82 00 18 */ beq lbl_80B967F8
|
||||
/* 80B967E4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 80B967E8 38 80 00 00 */ li r4, 0
|
||||
/* 80B967EC 39 9E 14 0C */ addi r12, r30, 0x140c
|
||||
/* 80B967F0 4B 7C B8 95 */ bl __ptmf_scall
|
||||
/* 80B967F4 60 00 00 00 */ nop
|
||||
lbl_80B967F8:
|
||||
/* 80B967F8 38 60 00 01 */ li r3, 1
|
||||
/* 80B967FC 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80B96800 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 80B96804 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80B96808 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B9680C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80B96810 4E 80 00 20 */ blr
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
lbl_80B95F10:
|
||||
/* 80B95F10 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80B95F14 4D 80 00 20 */ bltlr
|
||||
/* 80B95F18 2C 04 00 02 */ cmpwi r4, 2
|
||||
/* 80B95F1C 4C 80 00 20 */ bgelr
|
||||
/* 80B95F20 B0 83 09 DE */ sth r4, 0x9de(r3)
|
||||
/* 80B95F24 D0 23 09 74 */ stfs f1, 0x974(r3)
|
||||
/* 80B95F28 38 00 FF FF */ li r0, -1
|
||||
/* 80B95F2C B0 03 09 D8 */ sth r0, 0x9d8(r3)
|
||||
/* 80B95F30 38 00 00 00 */ li r0, 0
|
||||
/* 80B95F34 B0 03 09 D6 */ sth r0, 0x9d6(r3)
|
||||
/* 80B95F38 4E 80 00 20 */ blr
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
lbl_80B96E7C:
|
||||
/* 80B96E7C 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80B96E80 4D 80 00 20 */ bltlr
|
||||
/* 80B96E84 2C 04 00 05 */ cmpwi r4, 5
|
||||
/* 80B96E88 4C 80 00 20 */ bgelr
|
||||
/* 80B96E8C A8 03 14 48 */ lha r0, 0x1448(r3)
|
||||
/* 80B96E90 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 80B96E94 4D 82 00 20 */ beqlr
|
||||
/* 80B96E98 B0 83 14 48 */ sth r4, 0x1448(r3)
|
||||
/* 80B96E9C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
lbl_80B9612C:
|
||||
/* 80B9612C 7C 86 07 34 */ extsh r6, r4
|
||||
/* 80B96130 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 80B96134 40 82 00 10 */ bne lbl_80B96144
|
||||
/* 80B96138 A8 03 09 E0 */ lha r0, 0x9e0(r3)
|
||||
/* 80B9613C 7C 00 30 00 */ cmpw r0, r6
|
||||
/* 80B96140 4D 82 00 20 */ beqlr
|
||||
lbl_80B96144:
|
||||
/* 80B96144 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80B96148 4D 80 00 20 */ bltlr
|
||||
/* 80B9614C 2C 04 00 03 */ cmpwi r4, 3
|
||||
/* 80B96150 4C 80 00 20 */ bgelr
|
||||
/* 80B96154 B0 C3 09 E0 */ sth r6, 0x9e0(r3)
|
||||
/* 80B96158 D0 23 09 7C */ stfs f1, 0x97c(r3)
|
||||
/* 80B9615C 38 00 FF FF */ li r0, -1
|
||||
/* 80B96160 B0 03 09 DC */ sth r0, 0x9dc(r3)
|
||||
/* 80B96164 38 00 00 00 */ li r0, 0
|
||||
/* 80B96168 B0 03 09 DA */ sth r0, 0x9da(r3)
|
||||
/* 80B9616C 4E 80 00 20 */ blr
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
lbl_80B95BB8:
|
||||
/* 80B95BB8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80B95BBC 7C 08 02 A6 */ mflr r0
|
||||
/* 80B95BC0 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80B95BC4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 80B95BC8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 80B95BCC 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80B95BD0 80 63 05 68 */ lwz r3, 0x568(r3)
|
||||
/* 80B95BD4 83 E3 00 04 */ lwz r31, 4(r3)
|
||||
/* 80B95BD8 C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
|
||||
/* 80B95BDC D0 01 00 08 */ stfs f0, 8(r1)
|
||||
/* 80B95BE0 C0 3E 04 D4 */ lfs f1, 0x4d4(r30)
|
||||
/* 80B95BE4 D0 21 00 0C */ stfs f1, 0xc(r1)
|
||||
/* 80B95BE8 C0 1E 04 D8 */ lfs f0, 0x4d8(r30)
|
||||
/* 80B95BEC D0 01 00 10 */ stfs f0, 0x10(r1)
|
||||
/* 80B95BF0 C0 1E 14 64 */ lfs f0, 0x1464(r30)
|
||||
/* 80B95BF4 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 80B95BF8 D0 01 00 0C */ stfs f0, 0xc(r1)
|
||||
/* 80B95BFC 38 61 00 08 */ addi r3, r1, 8
|
||||
/* 80B95C00 4B 47 71 65 */ bl transS__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 80B95C04 38 7E 08 F0 */ addi r3, r30, 0x8f0
|
||||
/* 80B95C08 4B 47 73 3D */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
|
||||
/* 80B95C0C 38 7E 04 EC */ addi r3, r30, 0x4ec
|
||||
/* 80B95C10 4B 47 72 61 */ bl scaleM__14mDoMtx_stack_cFRC4cXyz
|
||||
/* 80B95C14 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 80B95C18 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 80B95C1C 38 9F 00 24 */ addi r4, r31, 0x24
|
||||
/* 80B95C20 4B 7B 08 91 */ bl PSMTXCopy
|
||||
/* 80B95C24 93 DF 00 14 */ stw r30, 0x14(r31)
|
||||
/* 80B95C28 80 1E 09 9C */ lwz r0, 0x99c(r30)
|
||||
/* 80B95C2C 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 80B95C30 41 82 00 1C */ beq lbl_80B95C4C
|
||||
/* 80B95C34 C0 1E 05 7C */ lfs f0, 0x57c(r30)
|
||||
/* 80B95C38 80 7E 05 80 */ lwz r3, 0x580(r30)
|
||||
/* 80B95C3C D0 03 00 08 */ stfs f0, 8(r3)
|
||||
/* 80B95C40 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 80B95C44 4B 47 B5 A9 */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
/* 80B95C48 48 00 00 0C */ b lbl_80B95C54
|
||||
lbl_80B95C4C:
|
||||
/* 80B95C4C 80 7E 05 68 */ lwz r3, 0x568(r30)
|
||||
/* 80B95C50 4B 47 B5 9D */ bl modelCalc__16mDoExt_McaMorfSOFv
|
||||
lbl_80B95C54:
|
||||
/* 80B95C54 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 80B95C58 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 80B95C5C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80B95C60 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B95C64 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80B95C68 4E 80 00 20 */ blr
|
||||
|
|
@ -1,105 +0,0 @@
|
|||
lbl_80B95244:
|
||||
/* 80B95244 94 21 FF D0 */ stwu r1, -0x30(r1)
|
||||
/* 80B95248 7C 08 02 A6 */ mflr r0
|
||||
/* 80B9524C 90 01 00 34 */ stw r0, 0x34(r1)
|
||||
/* 80B95250 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 80B95254 4B 7C CF 85 */ bl _savegpr_28
|
||||
/* 80B95258 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80B9525C 80 83 14 00 */ lwz r4, 0x1400(r3)
|
||||
/* 80B95260 80 03 14 04 */ lwz r0, 0x1404(r3)
|
||||
/* 80B95264 90 81 00 0C */ stw r4, 0xc(r1)
|
||||
/* 80B95268 90 01 00 10 */ stw r0, 0x10(r1)
|
||||
/* 80B9526C 80 03 14 08 */ lwz r0, 0x1408(r3)
|
||||
/* 80B95270 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80B95274 3B A0 00 0A */ li r29, 0xa
|
||||
/* 80B95278 48 00 15 9D */ bl selectAction__11daNpc_zrZ_cFv
|
||||
/* 80B9527C 88 1F 09 F4 */ lbz r0, 0x9f4(r31)
|
||||
/* 80B95280 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80B95284 40 82 00 20 */ bne lbl_80B952A4
|
||||
/* 80B95288 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80B9528C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80B95290 80 63 5D B4 */ lwz r3, 0x5db4(r3)
|
||||
/* 80B95294 80 03 05 74 */ lwz r0, 0x574(r3)
|
||||
/* 80B95298 54 00 01 8D */ rlwinm. r0, r0, 0, 6, 6
|
||||
/* 80B9529C 41 82 00 08 */ beq lbl_80B952A4
|
||||
/* 80B952A0 3B A0 00 00 */ li r29, 0
|
||||
lbl_80B952A4:
|
||||
/* 80B952A4 38 7F 14 00 */ addi r3, r31, 0x1400
|
||||
/* 80B952A8 38 81 00 0C */ addi r4, r1, 0xc
|
||||
/* 80B952AC 4B 7C CD 9D */ bl __ptmf_cmpr
|
||||
/* 80B952B0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B952B4 41 82 00 2C */ beq lbl_80B952E0
|
||||
/* 80B952B8 3B 80 00 02 */ li r28, 2
|
||||
/* 80B952BC 3B C0 00 10 */ li r30, 0x10
|
||||
/* 80B952C0 48 00 00 18 */ b lbl_80B952D8
|
||||
lbl_80B952C4:
|
||||
/* 80B952C4 38 7E 0C 80 */ addi r3, r30, 0xc80
|
||||
/* 80B952C8 7C 7F 1A 14 */ add r3, r31, r3
|
||||
/* 80B952CC 4B 5B B3 E5 */ bl initialize__18daNpcF_ActorMngr_cFv
|
||||
/* 80B952D0 3B 9C 00 01 */ addi r28, r28, 1
|
||||
/* 80B952D4 3B DE 00 08 */ addi r30, r30, 8
|
||||
lbl_80B952D8:
|
||||
/* 80B952D8 2C 1C 00 02 */ cmpwi r28, 2
|
||||
/* 80B952DC 41 80 FF E8 */ blt lbl_80B952C4
|
||||
lbl_80B952E0:
|
||||
/* 80B952E0 38 00 00 00 */ li r0, 0
|
||||
/* 80B952E4 90 1F 14 34 */ stw r0, 0x1434(r31)
|
||||
/* 80B952E8 90 1F 14 38 */ stw r0, 0x1438(r31)
|
||||
/* 80B952EC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B952F0 38 80 00 05 */ li r4, 5
|
||||
/* 80B952F4 38 A0 00 06 */ li r5, 6
|
||||
/* 80B952F8 4B 5B EF 81 */ bl getDistTableIdx__8daNpcF_cFii
|
||||
/* 80B952FC 98 7F 05 44 */ stb r3, 0x544(r31)
|
||||
/* 80B95300 88 1F 05 44 */ lbz r0, 0x544(r31)
|
||||
/* 80B95304 98 1F 05 45 */ stb r0, 0x545(r31)
|
||||
/* 80B95308 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80B9530C 38 80 00 03 */ li r4, 3
|
||||
/* 80B95310 38 A0 00 06 */ li r5, 6
|
||||
/* 80B95314 4B 5B EF 65 */ bl getDistTableIdx__8daNpcF_cFii
|
||||
/* 80B95318 98 7F 05 47 */ stb r3, 0x547(r31)
|
||||
/* 80B9531C 93 BF 05 5C */ stw r29, 0x55c(r31)
|
||||
/* 80B95320 3C 60 80 BA */ lis r3, m__17daNpc_zrZ_Param_c@ha /* 0x80B9AFEC@ha */
|
||||
/* 80B95324 38 83 AF EC */ addi r4, r3, m__17daNpc_zrZ_Param_c@l /* 0x80B9AFEC@l */
|
||||
/* 80B95328 C0 04 00 08 */ lfs f0, 8(r4)
|
||||
/* 80B9532C D0 1F 04 EC */ stfs f0, 0x4ec(r31)
|
||||
/* 80B95330 D0 1F 04 F0 */ stfs f0, 0x4f0(r31)
|
||||
/* 80B95334 D0 1F 04 F4 */ stfs f0, 0x4f4(r31)
|
||||
/* 80B95338 38 7F 07 E4 */ addi r3, r31, 0x7e4
|
||||
/* 80B9533C C0 24 00 1C */ lfs f1, 0x1c(r4)
|
||||
/* 80B95340 4B 4E 0C 01 */ bl SetWallR__12dBgS_AcchCirFf
|
||||
/* 80B95344 3C 60 80 BA */ lis r3, m__17daNpc_zrZ_Param_c@ha /* 0x80B9AFEC@ha */
|
||||
/* 80B95348 38 63 AF EC */ addi r3, r3, m__17daNpc_zrZ_Param_c@l /* 0x80B9AFEC@l */
|
||||
/* 80B9534C C0 03 00 18 */ lfs f0, 0x18(r3)
|
||||
/* 80B95350 D0 1F 08 14 */ stfs f0, 0x814(r31)
|
||||
/* 80B95354 C0 03 00 04 */ lfs f0, 4(r3)
|
||||
/* 80B95358 D0 1F 05 30 */ stfs f0, 0x530(r31)
|
||||
/* 80B9535C A8 1F 04 6A */ lha r0, 0x46a(r31)
|
||||
/* 80B95360 1C 60 00 64 */ mulli r3, r0, 0x64
|
||||
/* 80B95364 38 00 00 FF */ li r0, 0xff
|
||||
/* 80B95368 7C 03 03 D6 */ divw r0, r3, r0
|
||||
/* 80B9536C 28 00 00 01 */ cmplwi r0, 1
|
||||
/* 80B95370 40 80 00 0C */ bge lbl_80B9537C
|
||||
/* 80B95374 38 A0 00 01 */ li r5, 1
|
||||
/* 80B95378 48 00 00 14 */ b lbl_80B9538C
|
||||
lbl_80B9537C:
|
||||
/* 80B9537C 28 00 00 64 */ cmplwi r0, 0x64
|
||||
/* 80B95380 38 A0 00 64 */ li r5, 0x64
|
||||
/* 80B95384 41 81 00 08 */ bgt lbl_80B9538C
|
||||
/* 80B95388 7C 05 03 78 */ mr r5, r0
|
||||
lbl_80B9538C:
|
||||
/* 80B9538C 3C 60 00 06 */ lis r3, 0x0006 /* 0x00060098@ha */
|
||||
/* 80B95390 38 03 00 98 */ addi r0, r3, 0x0098 /* 0x00060098@l */
|
||||
/* 80B95394 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 80B95398 38 7F 0B 48 */ addi r3, r31, 0xb48
|
||||
/* 80B9539C 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 80B953A0 38 C0 FF FF */ li r6, -1
|
||||
/* 80B953A4 81 9F 0B 48 */ lwz r12, 0xb48(r31)
|
||||
/* 80B953A8 81 8C 00 18 */ lwz r12, 0x18(r12)
|
||||
/* 80B953AC 7D 89 03 A6 */ mtctr r12
|
||||
/* 80B953B0 4E 80 04 21 */ bctrl
|
||||
/* 80B953B4 39 61 00 30 */ addi r11, r1, 0x30
|
||||
/* 80B953B8 4B 7C CE 6D */ bl _restgpr_28
|
||||
/* 80B953BC 80 01 00 34 */ lwz r0, 0x34(r1)
|
||||
/* 80B953C0 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B953C4 38 21 00 30 */ addi r1, r1, 0x30
|
||||
/* 80B953C8 4E 80 00 20 */ blr
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
lbl_80B96DF0:
|
||||
/* 80B96DF0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80B96DF4 7C 08 02 A6 */ mflr r0
|
||||
/* 80B96DF8 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 80B96DFC 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80B96E00 4B 7C B3 D9 */ bl _savegpr_28
|
||||
/* 80B96E04 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 80B96E08 7C 9D 23 78 */ mr r29, r4
|
||||
/* 80B96E0C 7C BE 2B 78 */ mr r30, r5
|
||||
/* 80B96E10 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 80B96E14 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 80B96E18 38 7F 4F F8 */ addi r3, r31, 0x4ff8
|
||||
/* 80B96E1C 4B 4B 15 CD */ bl getRunEventName__16dEvent_manager_cFv
|
||||
/* 80B96E20 57 A0 10 3A */ slwi r0, r29, 2
|
||||
/* 80B96E24 3C 80 80 BA */ lis r4, l_evtNames@ha /* 0x80B9B39C@ha */
|
||||
/* 80B96E28 38 84 B3 9C */ addi r4, r4, l_evtNames@l /* 0x80B9B39C@l */
|
||||
/* 80B96E2C 7C 84 00 2E */ lwzx r4, r4, r0
|
||||
/* 80B96E30 4B 7D 1B 65 */ bl strcmp
|
||||
/* 80B96E34 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80B96E38 40 82 00 28 */ bne lbl_80B96E60
|
||||
/* 80B96E3C 38 7F 4E C8 */ addi r3, r31, 0x4ec8
|
||||
/* 80B96E40 7F 84 E3 78 */ mr r4, r28
|
||||
/* 80B96E44 57 C0 10 3A */ slwi r0, r30, 2
|
||||
/* 80B96E48 3C A0 80 BA */ lis r5, l_evtNames@ha /* 0x80B9B39C@ha */
|
||||
/* 80B96E4C 38 A5 B3 9C */ addi r5, r5, l_evtNames@l /* 0x80B9B39C@l */
|
||||
/* 80B96E50 7C A5 00 2E */ lwzx r5, r5, r0
|
||||
/* 80B96E54 4B 4A BB 05 */ bl setSkipZev__14dEvt_control_cFPvPc
|
||||
/* 80B96E58 38 60 00 01 */ li r3, 1
|
||||
/* 80B96E5C 48 00 00 08 */ b lbl_80B96E64
|
||||
lbl_80B96E60:
|
||||
/* 80B96E60 38 60 00 00 */ li r3, 0
|
||||
lbl_80B96E64:
|
||||
/* 80B96E64 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 80B96E68 4B 7C B3 BD */ bl _restgpr_28
|
||||
/* 80B96E6C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80B96E70 7C 08 03 A6 */ mtlr r0
|
||||
/* 80B96E74 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80B96E78 4E 80 00 20 */ blr
|
||||
|
|
@ -635,14 +635,14 @@ protected:
|
|||
/* 0x902 */ csXyz mHeadAngle;
|
||||
/* 0x908 */ csXyz field_0x908[3];
|
||||
/* 0x91A */ csXyz mLookatAngle[3];
|
||||
/* 0x92C */ int mCutIndex;
|
||||
/* 0x930 */ u32 field_0x930;
|
||||
/* 0x92C */ int mStaffID;
|
||||
/* 0x930 */ int mCutType;
|
||||
/* 0x934 */ int mAttnIdx;
|
||||
/* 0x938 */ int mAttnChangeTimer;
|
||||
/* 0x93C */ int mAttnActorTimer[5];
|
||||
/* 0x950 */ int mMsgTimer;
|
||||
/* 0x954 */ int field_0x954;
|
||||
/* 0x958 */ int field_0x958;
|
||||
/* 0x954 */ int mDamageTimer;
|
||||
/* 0x958 */ int mTotalDamageTimer;
|
||||
/* 0x95C */ int field_0x95c;
|
||||
/* 0x960 */ int mEventTimer;
|
||||
/* 0x964 */ int mBtpTimer;
|
||||
|
|
@ -687,7 +687,7 @@ protected:
|
|||
/* 0x9ED */ bool mOrderNewEvt;
|
||||
/* 0x9EE */ bool field_0x9ee;
|
||||
/* 0x9EF */ u8 field_0x9ef;
|
||||
/* 0x9F0 */ u8 field_0x9f0;
|
||||
/* 0x9F0 */ bool mIsDamaged;
|
||||
/* 0x9F1 */ u8 field_0x9f1;
|
||||
/* 0x9F2 */ bool mHide;
|
||||
/* 0x9f3 */ u8 field_0x9f3;
|
||||
|
|
@ -740,7 +740,7 @@ public:
|
|||
};
|
||||
|
||||
/* 80152014 */ BOOL execute();
|
||||
/* 801522AC */ BOOL draw(BOOL, BOOL, f32, _GXColorS10*, BOOL);
|
||||
/* 801522AC */ int draw(BOOL, BOOL, f32, _GXColorS10*, BOOL);
|
||||
/* 80152614 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*,
|
||||
dCcD_GObjInf*);
|
||||
/* 80152654 */ static void* srchAttnActor1(void*, void*);
|
||||
|
|
@ -769,7 +769,7 @@ public:
|
|||
/* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***);
|
||||
/* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***);
|
||||
/* 8015337C */ void setLookatMtx(int, int*, f32);
|
||||
/* 80153578 */ void hitChk2(dCcD_Cyl*, int, int);
|
||||
/* 80153578 */ BOOL hitChk2(dCcD_Cyl*, BOOL, BOOL);
|
||||
/* 80153658 */ void setDamage(int, int, int);
|
||||
/* 80153718 */ int ctrlMsgAnm(int&, int&, fopAc_ac_c*, BOOL);
|
||||
/* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16);
|
||||
|
|
@ -825,6 +825,7 @@ public:
|
|||
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 setCutType(int i_cutType) { mCutType = i_cutType; }
|
||||
void onInterrupt(u8 param_0) { field_0x9ef = param_0; }
|
||||
|
||||
static u8 const mCcDObjInfo[48];
|
||||
|
|
@ -922,6 +923,7 @@ public:
|
|||
|
||||
int getIdx() { return mIdx; };
|
||||
void setIdx(int i_idx) { mIdx = i_idx; }
|
||||
int getArg0() { return mpRoomPath->m_points[mIdx].mArg0; }
|
||||
u8 getArg0(int i_idx) { return mpRoomPath->m_points[i_idx].mArg0; }
|
||||
Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; }
|
||||
BOOL chkClose() { return dPath_ChkClose(mpRoomPath); }
|
||||
|
|
|
|||
|
|
@ -117,10 +117,10 @@ public:
|
|||
/* 8095A8EC */ bool talk(void*);
|
||||
/* 8095AD28 */ bool demo(void*);
|
||||
/* 8095B164 */ bool leave(void*);
|
||||
/* 8095B48C */ BOOL EvCut_Introduction(int i_cutIndex);
|
||||
/* 8095B58C */ BOOL EvCut_Meeting(int i_cutIndex);
|
||||
/* 8095B83C */ BOOL EvCut_WiretapSponsor(int i_cutIndex);
|
||||
/* 8095BA80 */ BOOL EvCut_WiretapEntrant(int i_cutIndex);
|
||||
/* 8095B48C */ BOOL EvCut_Introduction(int i_staffID);
|
||||
/* 8095B58C */ BOOL EvCut_Meeting(int i_staffID);
|
||||
/* 8095B83C */ BOOL EvCut_WiretapSponsor(int i_staffID);
|
||||
/* 8095BA80 */ BOOL EvCut_WiretapEntrant(int i_staffID);
|
||||
/* 8095BCF0 */ void setParam();
|
||||
/* 8095BF6C */ BOOL main();
|
||||
#ifdef NONMATCHING
|
||||
|
|
@ -182,11 +182,11 @@ public:
|
|||
/* 0x54 */ f32 mAttnRadius;
|
||||
/* 0x58 */ f32 mAttnUpperY;
|
||||
/* 0x5C */ f32 mAttnLowerY;
|
||||
/* 0x60 */ u16 field_0x60;
|
||||
/* 0x62 */ u16 field_0x62;
|
||||
/* 0x64 */ u16 mTestExpression;
|
||||
/* 0x66 */ u16 mTestMotion;
|
||||
/* 0x68 */ u16 mTestLookMode;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 mDamageTimer;
|
||||
/* 0x64 */ s16 mTestExpression;
|
||||
/* 0x66 */ s16 mTestMotion;
|
||||
/* 0x68 */ s16 mTestLookMode;
|
||||
/* 0x6A */ bool mTest;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ public:
|
|||
/* 0x58 */ f32 mAttnUpperY;
|
||||
/* 0x5C */ f32 mAttnLowerY;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 field_0x62;
|
||||
/* 0x62 */ s16 mDamageTimer;
|
||||
/* 0x64 */ s16 mTestExpression;
|
||||
/* 0x66 */ s16 mTestMotion;
|
||||
/* 0x68 */ s16 mTestLookMode;
|
||||
|
|
|
|||
|
|
@ -433,7 +433,7 @@ public:
|
|||
/* 0x58 */ f32 mAttnUpperY;
|
||||
/* 0x5C */ f32 mAttnLowerY;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 field_0x62;
|
||||
/* 0x62 */ s16 mDamageTimer;
|
||||
/* 0x64 */ s16 mTestExpression;
|
||||
/* 0x66 */ s16 mTestMotion;
|
||||
/* 0x68 */ s16 mTestLookMode;
|
||||
|
|
|
|||
|
|
@ -3,50 +3,58 @@
|
|||
|
||||
#include "d/a/d_a_npc.h"
|
||||
|
||||
class daGraveStone_c;
|
||||
class daObjZraRock_c;
|
||||
|
||||
/**
|
||||
* @ingroup actors-npcs
|
||||
* @class daNpc_zrZ_c
|
||||
* @brief Rutela
|
||||
*
|
||||
* @details
|
||||
* @details The ghost of the Zora queen.
|
||||
*
|
||||
*/
|
||||
class daNpc_zrZ_c : public fopAc_ac_c {
|
||||
class daNpc_zrZ_c : public daNpcF_c {
|
||||
public:
|
||||
typedef BOOL (daNpc_zrZ_c::*ActionFn)(void*);
|
||||
typedef BOOL (daNpc_zrZ_c::*EventFn)(int);
|
||||
|
||||
/* 80B93DCC */ daNpc_zrZ_c();
|
||||
/* 80B94014 */ ~daNpc_zrZ_c();
|
||||
/* 80B9423C */ void create();
|
||||
/* 80B9453C */ void CreateHeap();
|
||||
/* 80B949F4 */ void Delete();
|
||||
/* 80B94A28 */ void Execute();
|
||||
/* 80B94A48 */ void Draw();
|
||||
/* 80B94B34 */ void draw(int, int, f32, _GXColorS10*, int);
|
||||
/* 80B94E18 */ void ctrlJoint(J3DJoint*, J3DModel*);
|
||||
/* 80B950F4 */ void createHeapCallBack(fopAc_ac_c*);
|
||||
/* 80B95114 */ void ctrlJointCallBack(J3DJoint*, int);
|
||||
/* 80B9423C */ cPhs__Step create();
|
||||
/* 80B9453C */ int CreateHeap();
|
||||
/* 80B949F4 */ int Delete();
|
||||
/* 80B94A28 */ int Execute();
|
||||
/* 80B94A48 */ int Draw();
|
||||
/* 80B94B34 */ int draw(BOOL, BOOL, f32, _GXColorS10*, BOOL);
|
||||
/* 80B94E18 */ int ctrlJoint(J3DJoint*, J3DModel*);
|
||||
/* 80B950F4 */ static int createHeapCallBack(fopAc_ac_c*);
|
||||
/* 80B95114 */ static int ctrlJointCallBack(J3DJoint*, int);
|
||||
/* 80B95244 */ void setParam();
|
||||
/* 80B953CC */ void main();
|
||||
/* 80B95598 */ void ctrlBtk();
|
||||
/* 80B953CC */ BOOL main();
|
||||
/* 80B95598 */ BOOL ctrlBtk();
|
||||
/* 80B956B4 */ void setAttnPos();
|
||||
/* 80B95BB8 */ void setMtx();
|
||||
/* 80B95C6C */ void setExpressionAnm(int, bool);
|
||||
/* 80B95DD0 */ void setExpressionBtp(int);
|
||||
/* 80B95C6C */ bool setExpressionAnm(int, bool);
|
||||
/* 80B95DD0 */ bool setExpressionBtp(int);
|
||||
/* 80B95F10 */ void setExpression(int, f32);
|
||||
/* 80B95F3C */ void setMotionAnm(int, f32);
|
||||
/* 80B9612C */ void setMotion(int, f32, int);
|
||||
/* 80B96170 */ bool drawDbgInfo();
|
||||
/* 80B96170 */ BOOL drawDbgInfo();
|
||||
/* 80B96178 */ void drawOtherMdls();
|
||||
/* 80B9617C */ void getTypeFromParam();
|
||||
/* 80B961B4 */ void isDelete();
|
||||
/* 80B9617C */ u8 getTypeFromParam();
|
||||
/* inline */ u8 getPathNoFromParam() { return (fopAcM_GetParam(this) >> 8) & 0xff; }
|
||||
/* inline */ u8 getDemoMode() { return (fopAcM_GetParam(this) >> 0x10) & 0xf; }
|
||||
/* 80B961B4 */ BOOL isDelete();
|
||||
/* 80B96268 */ void reset();
|
||||
/* 80B9652C */ void playExpression();
|
||||
/* 80B96618 */ void playMotion();
|
||||
/* 80B96740 */ void chkAction(int (daNpc_zrZ_c::*)(void*));
|
||||
/* 80B9676C */ void setAction(int (daNpc_zrZ_c::*)(void*));
|
||||
/* 80B96814 */ void selectAction();
|
||||
/* 80B968E0 */ void doNormalAction(int);
|
||||
/* 80B969F4 */ void doEvent();
|
||||
/* 80B96DF0 */ void setSkipZev(int, int);
|
||||
/* 80B96740 */ BOOL chkAction(ActionFn);
|
||||
/* 80B9676C */ BOOL setAction(ActionFn);
|
||||
/* 80B96814 */ BOOL selectAction();
|
||||
/* 80B968E0 */ void doNormalAction(BOOL);
|
||||
/* 80B969F4 */ BOOL doEvent();
|
||||
/* 80B96DF0 */ BOOL setSkipZev(int, int);
|
||||
/* 80B96E7C */ void setLookMode(int);
|
||||
/* 80B96EA0 */ void lookat();
|
||||
/* 80B97128 */ void setExpressionTalkAfter();
|
||||
|
|
@ -54,37 +62,162 @@ public:
|
|||
/* 80B971BC */ void setLightPos();
|
||||
/* 80B9723C */ void lightPowerCalc(int);
|
||||
/* 80B972EC */ void lightColorProc();
|
||||
/* 80B974BC */ void ECut_helpPrince(int);
|
||||
/* 80B97B78 */ void ECut_comeHere(int);
|
||||
/* 80B97D7C */ void ECut_restoreLink(int);
|
||||
/* 80B97EB4 */ void ECut_clothesGet(int);
|
||||
/* 80B98540 */ void ECut_getAfter(int);
|
||||
/* 80B9877C */ void ECut_sealRelease(int);
|
||||
/* 80B98ACC */ void ECut_srSkip(int);
|
||||
/* 80B974BC */ BOOL ECut_helpPrince(int);
|
||||
/* 80B97B78 */ BOOL ECut_comeHere(int);
|
||||
/* 80B97D7C */ BOOL ECut_restoreLink(int);
|
||||
/* 80B97EB4 */ BOOL ECut_clothesGet(int);
|
||||
/* 80B98540 */ BOOL ECut_getAfter(int);
|
||||
/* 80B9877C */ BOOL ECut_sealRelease(int);
|
||||
/* 80B98ACC */ BOOL ECut_srSkip(int);
|
||||
/* 80B98C34 */ void pullbackPlayer(f32);
|
||||
/* 80B98D04 */ void wait(void*);
|
||||
/* 80B98F84 */ void comeHere(void*);
|
||||
/* 80B998BC */ void comeHere2(void*);
|
||||
/* 80B9A0EC */ void talk(void*);
|
||||
/* 80B9A29C */ void test(void*);
|
||||
/* 80B98D04 */ BOOL wait(void*);
|
||||
/* 80B98F84 */ BOOL comeHere(void*);
|
||||
/* 80B998BC */ BOOL comeHere2(void*);
|
||||
/* 80B9A0EC */ BOOL talk(void*);
|
||||
/* 80B9A29C */ BOOL test(void*);
|
||||
/* 80B9A380 */ void himoCalc();
|
||||
/* 80B9AF7C */ void adjustShapeAngle();
|
||||
|
||||
static void* mEvtCutNameList[8];
|
||||
static u8 mEvtCutList[96];
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x14c8 - 0x568];
|
||||
/* 0x0B48 */ Z2Creature mCreatureSound;
|
||||
/* 0x0BD8 */ daNpcF_MatAnm_c* mpMatAnm;
|
||||
/* 0x0BDC */ mDoExt_invisibleModel mInvisibleModel;
|
||||
/* 0x0BE4 */ daNpcF_Lookat_c mLookat;
|
||||
/* 0x0C80 */ daNpcF_ActorMngr_c mActorMngr[2];
|
||||
/* 0x0C90 */ daNpcF_Path_c mPath;
|
||||
/* 0x12C0 */ u8 field_0x12c0[4];
|
||||
/* 0x12C4 */ dCcD_Cyl mCcCyl;
|
||||
/* 0x1400 */ ActionFn mpNextActionFn;
|
||||
/* 0x140C */ ActionFn mpActionFn;
|
||||
/* 0x1418 */ request_of_phase_process_class mPhase[2];
|
||||
/* 0x1428 */ u8 field_0x1428[8];
|
||||
/* 0x1430 */ u32 mItemID;
|
||||
/* 0x1434 */ int field_0x1434;
|
||||
/* 0x1438 */ int field_0x1438;
|
||||
/* 0x143C */ int field_0x143c;
|
||||
/* 0x1440 */ int field_0x1440;
|
||||
/* 0x1444 */ int mFlowID;
|
||||
/* 0x1448 */ s16 mLookMode;
|
||||
/* 0x144A */ u16 mMode;
|
||||
/* 0x144C */ u8 mType;
|
||||
/* 0x144D */ bool mIsLeading;
|
||||
/* 0x144E */ u8 mDemoMode;
|
||||
/* 0x144F */ bool mIsMoving;
|
||||
/* 0x1450 */ f32 mSpeed;
|
||||
/* 0x1454 */ u8 mSwitch1;
|
||||
/* 0x1455 */ u8 mSwitch2;
|
||||
/* 0x1456 */ u8 mSwitch3;
|
||||
/* 0x1458 */ csXyz mMoveAngle;
|
||||
/* 0x1460 */ int mModulationParam;
|
||||
/* 0x1464 */ f32 mModulationOffset;
|
||||
/* 0x1468 */ LIGHT_INFLUENCE mLight;
|
||||
/* 0x1488 */ f32 mAllcolRatio;
|
||||
/* 0x148C */ int mLightEffectFrame;
|
||||
/* 0x1490 */ bool mUseLightEffect;
|
||||
/* 0x1491 */ bool mClothesObtained;
|
||||
/* 0x1494 */ daGraveStone_c* mpGravestoneActor;
|
||||
/* 0x1498 */ fopAc_ac_c* mpClothActor;
|
||||
/* 0x149C */ daObjZraRock_c* mpRockActor;
|
||||
/* 0x14A0 */ cXyz mLimbCalcPos;
|
||||
/* 0x14AC */ cXyz mLimbCalcRelPos;
|
||||
/* 0x14B8 */ csXyz mLimbAngle;
|
||||
/* 0x14C0 */ BOOL mMusicSet;
|
||||
/* 0x14C4 */ bool mSealReleased;
|
||||
|
||||
static char* mEvtCutNameList[8];
|
||||
#ifdef NONMATCHING
|
||||
static EventFn mEvtCutList[8];
|
||||
#else
|
||||
static u8 mEvtCutList[96];
|
||||
#endif
|
||||
|
||||
enum Animation {
|
||||
/* 0x0 */ ANM_NONE,
|
||||
/* 0x1 */ ANM_F_TALK_A,
|
||||
/* 0x2 */ ANM_WAIT_GT_A,
|
||||
/* 0x3 */ ANM_LEAD,
|
||||
/* 0x4 */ ANM_COMEON,
|
||||
};
|
||||
|
||||
enum Expression {
|
||||
/* 0x0 */ EXPR_TALK_A,
|
||||
/* 0x1 */ EXPR_NONE,
|
||||
};
|
||||
|
||||
enum Motion {
|
||||
/* 0x0 */ MOT_WAIT_GT_A,
|
||||
/* 0x1 */ MOT_COMEON,
|
||||
/* 0x2 */ MOT_LEAD,
|
||||
};
|
||||
|
||||
enum DemoMode {
|
||||
/* 0x1 */ DEMO_WAIT = 1,
|
||||
/* 0x2 */ DEMO_COME_HERE,
|
||||
/* 0x3 */ DEMO_COME_HERE_2,
|
||||
};
|
||||
|
||||
enum Event {
|
||||
/* 0x0 */ EVT_NONE,
|
||||
/* 0x1 */ EVT_HELP_PRINCE,
|
||||
/* 0x2 */ EVT_COME_HERE,
|
||||
/* 0x3 */ EVT_RESTORE_LINK,
|
||||
/* 0x4 */ EVT_CLOTHES_GET,
|
||||
/* 0x5 */ EVT_GET_AFTER,
|
||||
/* 0x6 */ EVT_SEAL_RELEASE,
|
||||
/* 0x7 */ EVT_SR_SKIP,
|
||||
};
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpc_zrZ_c) == 0x14c8);
|
||||
|
||||
class daNpc_zrZ_Param_c {
|
||||
public:
|
||||
/* 80B9AF80 */ ~daNpc_zrZ_Param_c();
|
||||
struct param {
|
||||
/* 0x00 */ f32 mAttnOffsetY;
|
||||
/* 0x04 */ f32 mGravity;
|
||||
/* 0x08 */ f32 mScale;
|
||||
/* 0x0C */ f32 mShadowDepth;
|
||||
/* 0x10 */ f32 mCcWeight;
|
||||
/* 0x14 */ f32 mCylH;
|
||||
/* 0x18 */ f32 mWallH;
|
||||
/* 0x1C */ f32 mWallR;
|
||||
/* 0x20 */ f32 mBodyUpAngle;
|
||||
/* 0x24 */ f32 mBodyDownAngle;
|
||||
/* 0x28 */ f32 mBodyLeftAngle;
|
||||
/* 0x2C */ f32 mBodyRightAngle;
|
||||
/* 0x30 */ f32 mHeadUpAngle;
|
||||
/* 0x34 */ f32 mHeadDownAngle;
|
||||
/* 0x38 */ f32 mHeadLeftAngle;
|
||||
/* 0x3C */ f32 mHeadRightAngle;
|
||||
/* 0x40 */ f32 mNeckAngleScl;
|
||||
/* 0x44 */ f32 mMorfFrames;
|
||||
/* 0x48 */ s16 mSpeakDistIdx;
|
||||
/* 0x4A */ s16 mSpeakAngleIdx;
|
||||
/* 0x4C */ s16 mTalkDistIdx;
|
||||
/* 0x4E */ s16 mTalkAngleIdx;
|
||||
/* 0x50 */ f32 mAttnFovY;
|
||||
/* 0x54 */ f32 mAttnRadius;
|
||||
/* 0x58 */ f32 mAttnUpperY;
|
||||
/* 0x5C */ f32 mAttnLowerY;
|
||||
/* 0x60 */ s16 field_0x60;
|
||||
/* 0x62 */ s16 mDamageTimer;
|
||||
/* 0x64 */ s16 mTestExpression;
|
||||
/* 0x66 */ s16 mTestMotion;
|
||||
/* 0x68 */ s16 mTestLookMode;
|
||||
/* 0x6A */ bool mTest;
|
||||
/* 0x6C */ f32 field_0x6c;
|
||||
/* 0x70 */ f32 mFollowDst;
|
||||
/* 0x74 */ f32 mRestoreDst;
|
||||
/* 0x78 */ f32 mMaxSpeed;
|
||||
/* 0x7C */ f32 mClothesGetDst;
|
||||
/* 0x80 */ f32 field_0x80;
|
||||
};
|
||||
|
||||
static u8 const m[132];
|
||||
/* 80B9AF80 */ virtual ~daNpc_zrZ_Param_c() {}
|
||||
|
||||
static param const m;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpc_zrZ_Param_c::param) == 0x84);
|
||||
|
||||
#endif /* D_A_NPC_ZRZ_H */
|
||||
|
|
|
|||
|
|
@ -40,6 +40,8 @@ public:
|
|||
/* 80C1311C */ int Delete();
|
||||
|
||||
private:
|
||||
friend class daNpc_zrZ_c;
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ dBgS_ObjAcch mAcch;
|
||||
|
|
|
|||
|
|
@ -29,6 +29,8 @@ public:
|
|||
void setDemoStart() { mDemoStart = 1; }
|
||||
|
||||
private:
|
||||
friend class daNpc_zrZ_c;
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhaseReq;
|
||||
/* 0x5A8 */ J3DModel* mpModelXlu;
|
||||
/* 0x5AC */ J3DModel* mpModelOpa;
|
||||
|
|
|
|||
|
|
@ -858,7 +858,7 @@ SECTION_RODATA daNpcAsh_Param_c::param const daNpcAsh_Param_c::m = {
|
|||
300.0f, // mAttnUpperY
|
||||
-300.0f, // mAttnLowerY
|
||||
60,
|
||||
8,
|
||||
8, // mDamageTimer
|
||||
0, // mTestExpression
|
||||
0, // mTestMotion
|
||||
0, // mTestLookMode
|
||||
|
|
@ -2066,15 +2066,16 @@ bool daNpcAsh_c::demo(void* param_0) {
|
|||
|
||||
case 2:
|
||||
if (dComIfGp_event_runCheck() && !eventInfo.checkCommandTalk()) {
|
||||
s32 cutIndex = dComIfGp_getEventManager().getMyStaffId(l_myName, NULL, 0);
|
||||
if (cutIndex != -1) {
|
||||
mCutIndex = cutIndex;
|
||||
s32 eventIdx = dComIfGp_getEventManager().getMyActIdx(cutIndex, l_evtNames, 6, 0, 0);
|
||||
s32 staff_id = dComIfGp_getEventManager().getMyStaffId(l_myName, NULL, 0);
|
||||
if (staff_id != -1) {
|
||||
mStaffID = staff_id;
|
||||
s32 eventIdx = dComIfGp_getEventManager().getMyActIdx(staff_id, l_evtNames,
|
||||
ARRAY_SIZE(l_evtNames), 0, 0);
|
||||
if (eventIdx >= 1 && eventIdx < 6) {
|
||||
mOrderEvtNo = eventIdx;
|
||||
}
|
||||
if ((this->*(mEvtSeqList[mOrderEvtNo]))(cutIndex)) {
|
||||
dComIfGp_getEventManager().cutEnd(cutIndex);
|
||||
if ((this->*(mEvtSeqList[mOrderEvtNo]))(staff_id)) {
|
||||
dComIfGp_getEventManager().cutEnd(staff_id);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2211,13 +2212,13 @@ SECTION_DEAD static char const* const stringBase_8095D98B = "prm";
|
|||
/* 8095B48C-8095B58C 00328C 0100+00 1/0 0/0 0/0 .text EvCut_Introduction__10daNpcAsh_cFi
|
||||
*/
|
||||
|
||||
BOOL daNpcAsh_c::EvCut_Introduction(int i_cutIndex) {
|
||||
int* prm = dComIfGp_evmng_getMyIntegerP(i_cutIndex, ((char*)&d_a_npc_ash__stringBase0) + 0x7B);
|
||||
BOOL daNpcAsh_c::EvCut_Introduction(int i_staffID) {
|
||||
int* prm = dComIfGp_evmng_getMyIntegerP(i_staffID, ((char*)&d_a_npc_ash__stringBase0) + 0x7B);
|
||||
if (prm == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (dComIfGp_getEventManager().getIsAddvance(i_cutIndex)) {
|
||||
if (dComIfGp_getEventManager().getIsAddvance(i_staffID)) {
|
||||
switch (*prm) {
|
||||
case 0:
|
||||
case 2:
|
||||
|
|
@ -2243,7 +2244,7 @@ COMPILER_STRIP_GATE(0x8095D8C0, &lit_5254);
|
|||
/* 8095B58C-8095B83C 00338C 02B0+00 1/0 0/0 0/0 .text EvCut_Meeting__10daNpcAsh_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// literals
|
||||
BOOL daNpcAsh_c::EvCut_Meeting(int i_cutIndex) {
|
||||
BOOL daNpcAsh_c::EvCut_Meeting(int i_staffID) {
|
||||
dEvent_manager_c& evtMgr = dComIfGp_getEventManager();
|
||||
fopAc_ac_c* actors[4] = {
|
||||
mActorMngr[2].getActorP(),
|
||||
|
|
@ -2252,8 +2253,8 @@ BOOL daNpcAsh_c::EvCut_Meeting(int i_cutIndex) {
|
|||
mActorMngr[3].getActorP(),
|
||||
};
|
||||
|
||||
int* cutName = (int*)evtMgr.getMyNowCutName(i_cutIndex);
|
||||
if (evtMgr.getIsAddvance(i_cutIndex)) {
|
||||
int* cutName = (int*)evtMgr.getMyNowCutName(i_staffID);
|
||||
if (evtMgr.getIsAddvance(i_staffID)) {
|
||||
switch (*cutName) {
|
||||
case '0001':
|
||||
case '0002':
|
||||
|
|
@ -2318,7 +2319,7 @@ COMPILER_STRIP_GATE(0x8095D8D0, &lit_5295);
|
|||
/* 8095B83C-8095BA80 00363C 0244+00 1/0 0/0 0/0 .text EvCut_WiretapSponsor__10daNpcAsh_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// literals
|
||||
BOOL daNpcAsh_c::EvCut_WiretapSponsor(int i_cutIndex) {
|
||||
BOOL daNpcAsh_c::EvCut_WiretapSponsor(int i_staffID) {
|
||||
dEvent_manager_c& evtMgr = dComIfGp_getEventManager();
|
||||
fopAc_ac_c* actors[4] = {
|
||||
mActorMngr[2].getActorP(),
|
||||
|
|
@ -2327,8 +2328,8 @@ BOOL daNpcAsh_c::EvCut_WiretapSponsor(int i_cutIndex) {
|
|||
mActorMngr[3].getActorP(),
|
||||
};
|
||||
|
||||
int* cutName = (int*)evtMgr.getMyNowCutName(i_cutIndex);
|
||||
if (evtMgr.getIsAddvance(i_cutIndex)) {
|
||||
int* cutName = (int*)evtMgr.getMyNowCutName(i_staffID);
|
||||
if (evtMgr.getIsAddvance(i_staffID)) {
|
||||
switch (*cutName) {
|
||||
case '0001':
|
||||
dComIfGp_setMesgCameraInfoActor(actors[0], actors[1], actors[2], actors[3],
|
||||
|
|
@ -2378,13 +2379,13 @@ asm BOOL daNpcAsh_c::EvCut_WiretapSponsor(int param_0) {
|
|||
|
||||
/* 8095BA80-8095BC38 003880 01B8+00 2/0 0/0 0/0 .text EvCut_WiretapEntrant__10daNpcAsh_cFi */
|
||||
#ifdef NONMATCHING
|
||||
BOOL daNpcAsh_c::EvCut_WiretapEntrant(int i_cutIndex) {
|
||||
int* prm = dComIfGp_evmng_getMyIntegerP(i_cutIndex, "prm");
|
||||
BOOL daNpcAsh_c::EvCut_WiretapEntrant(int i_staffID) {
|
||||
int* prm = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (dComIfGp_getEventManager().getIsAddvance(i_cutIndex)) {
|
||||
if (dComIfGp_getEventManager().getIsAddvance(i_staffID)) {
|
||||
switch (*prm) {
|
||||
case 0:
|
||||
setExpression(EXPR_NONE, -1.0f);
|
||||
|
|
|
|||
|
|
@ -794,7 +794,7 @@ daNpcThe_Param_c::param const daNpcThe_Param_c::m = {
|
|||
300.0f, // mAttnUpperY
|
||||
-300.0f, // mAttnLowerY
|
||||
60,
|
||||
8,
|
||||
8, // mDamageTimer
|
||||
0, // mTestExpression
|
||||
0, // mTestMotion
|
||||
0, // mTestLookMode
|
||||
|
|
@ -2192,16 +2192,16 @@ asm BOOL daNpcThe_c::test(void* param_0) {
|
|||
|
||||
/* 80AF923C-80AF9244 001C5C 0008+00 2/0 0/0 0/0 .text EvCut_TwResistance__10daNpcThe_cFi
|
||||
*/
|
||||
BOOL daNpcThe_c::EvCut_TwResistance(int i_cutIdx) {
|
||||
BOOL daNpcThe_c::EvCut_TwResistance(int i_staffID) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80AF9244-80AF9338 001C64 00F4+00 1/0 0/0 0/0 .text EvCut_Introduction__10daNpcThe_cFi
|
||||
*/
|
||||
BOOL daNpcThe_c::EvCut_Introduction(int i_cutIdx) {
|
||||
BOOL daNpcThe_c::EvCut_Introduction(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
int* cut_name = (int*)event_manager.getMyNowCutName(i_cutIdx);
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
int* cut_name = (int*)event_manager.getMyNowCutName(i_staffID);
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (*cut_name) {
|
||||
case '0001':
|
||||
case '0002':
|
||||
|
|
@ -2737,8 +2737,9 @@ BOOL daNpcThe_c::doEvent() {
|
|||
} else {
|
||||
int staff_id = event_manager.getMyStaffId(l_myName, this, -1);
|
||||
if (staff_id != -1) {
|
||||
mCutIndex = staff_id;
|
||||
int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList, 4, 0, 0);
|
||||
mStaffID = staff_id;
|
||||
int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList,
|
||||
ARRAY_SIZE(mEvtCutNameList), 0, 0);
|
||||
if (act_idx > 0 && act_idx < 4) {
|
||||
if ((this->*mEvtCutList[act_idx])(staff_id)) {
|
||||
event_manager.cutEnd(staff_id);
|
||||
|
|
@ -2771,9 +2772,9 @@ BOOL daNpcThe_c::doEvent() {
|
|||
}
|
||||
} else {
|
||||
mMsgTimer = 0;
|
||||
if (mCutIndex != -1) {
|
||||
if (mStaffID != -1) {
|
||||
mMode = 1;
|
||||
mCutIndex = -1;
|
||||
mStaffID = -1;
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
|
|
|
|||
|
|
@ -457,7 +457,7 @@ daNpc_zrA_Param_c::param const daNpc_zrA_Param_c::m = {
|
|||
300.0f, // mAttnUpperY
|
||||
-300.0f, // mAttnLowerY
|
||||
60,
|
||||
8,
|
||||
8, // mDamageTimer
|
||||
0, // mTestExpression
|
||||
0, // mTestMotion
|
||||
0, // mTestLookMode
|
||||
|
|
@ -3159,8 +3159,8 @@ void daNpc_zrA_c::setAttnPos() {
|
|||
mEyeAngle.x = mEyeAngle.y = 0;
|
||||
}
|
||||
|
||||
f32 height = 0.0f;
|
||||
f32 radius = 0.0f;
|
||||
f32 extra_height = 0.0f;
|
||||
f32 extra_radius = 0.0f;
|
||||
vec2.set(0.0f, 0.0f, 0.0f);
|
||||
if ((mType == TYPE_WAIT || mType == TYPE_SPA) && mActionType != ACT_TYPE_0) {
|
||||
if (mType == TYPE_SPA || (mType == TYPE_WAIT
|
||||
|
|
@ -3171,7 +3171,7 @@ void daNpc_zrA_c::setAttnPos() {
|
|||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(29));
|
||||
mDoMtx_stack_c::multVecZero(¢er);
|
||||
center.y = current.pos.y;
|
||||
radius = 70.0f;
|
||||
extra_radius = 70.0f;
|
||||
} else {
|
||||
center = current.pos;
|
||||
}
|
||||
|
|
@ -3181,10 +3181,10 @@ void daNpc_zrA_c::setAttnPos() {
|
|||
attention_info.position.set(vec5.x, vec5.y + 40.0f, vec5.z);
|
||||
} else {
|
||||
if (mType == TYPE_TOBIKOMI) {
|
||||
height = 700.0f;
|
||||
radius = 800.0f;
|
||||
extra_height = 700.0f;
|
||||
extra_radius = 800.0f;
|
||||
} else if (mType == TYPE_SWIM && mPath.getPathInfo() != NULL) {
|
||||
height = -150.0f;
|
||||
extra_height = -150.0f;
|
||||
}
|
||||
|
||||
center = current.pos;
|
||||
|
|
@ -3192,7 +3192,7 @@ void daNpc_zrA_c::setAttnPos() {
|
|||
}
|
||||
|
||||
if (!mHide) {
|
||||
if (field_0x954 == 0) {
|
||||
if (mDamageTimer == 0) {
|
||||
if (mType == TYPE_TOBIKOMI) {
|
||||
mCcCyl.SetTgType(0x2020);
|
||||
mCcCyl.SetTgSPrm(0x3f);
|
||||
|
|
@ -3222,8 +3222,8 @@ void daNpc_zrA_c::setAttnPos() {
|
|||
}
|
||||
|
||||
mCcCyl.SetC(center);
|
||||
mCcCyl.SetH(daNpc_zrA_Param_c::m.mCylH + height);
|
||||
mCcCyl.SetR(daNpc_zrA_Param_c::m.mWallR + radius);
|
||||
mCcCyl.SetH(daNpc_zrA_Param_c::m.mCylH + extra_height);
|
||||
mCcCyl.SetR(daNpc_zrA_Param_c::m.mWallR + extra_radius);
|
||||
dComIfG_Ccsp()->Set(&mCcCyl);
|
||||
}
|
||||
|
||||
|
|
@ -3279,7 +3279,7 @@ asm void daNpc_zrA_c::setMtx() {
|
|||
// matches with literals
|
||||
bool daNpc_zrA_c::setExpressionAnm(int i_idx, bool i_modify) {
|
||||
J3DAnmTransform* bck_anm = NULL;
|
||||
int attr = 0;
|
||||
int attr = J3DFrameCtrl::LOOP_ONCE_e;
|
||||
mAnmFlags &= ~ANM_EXPRESSION_FLAGS;
|
||||
|
||||
if (l_bckGetParamList[i_idx].fileIdx >= 0) {
|
||||
|
|
@ -3306,41 +3306,41 @@ bool daNpc_zrA_c::setExpressionAnm(int i_idx, bool i_modify) {
|
|||
break;
|
||||
case ANM_FH_TALK_NOMAL:
|
||||
res = setExpressionBtp(0);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_FH_SADSIT_A:
|
||||
res = setExpressionBtp(1);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_FH_SADSIT_B:
|
||||
res = setExpressionBtp(2);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_FH_SADSIT_C:
|
||||
res = setExpressionBtp(3);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_FH_SADSIT_D:
|
||||
res = setExpressionBtp(4);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_FH_SADSIT_E:
|
||||
res = setExpressionBtp(5);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_F_LOOKING_SP:
|
||||
res = setExpressionBtp(0);
|
||||
break;
|
||||
case ANM_FH_LOOKING_SP:
|
||||
res = setExpressionBtp(0);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_F_LOOKUP:
|
||||
res = setExpressionBtp(0);
|
||||
break;
|
||||
case ANM_FH_LOOKUP:
|
||||
res = setExpressionBtp(0);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_F_TALK_SWIM_SP:
|
||||
res = setExpressionBtp(0);
|
||||
|
|
@ -3353,14 +3353,14 @@ bool daNpc_zrA_c::setExpressionAnm(int i_idx, bool i_modify) {
|
|||
break;
|
||||
case ANM_FH_SPA_WAIT_A:
|
||||
res = setExpressionBtp(0);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case ANM_F_SPA_TALK_B:
|
||||
res = setExpressionBtp(6);
|
||||
break;
|
||||
case ANM_FH_SPA_WAIT_B:
|
||||
res = setExpressionBtp(7);
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
default:
|
||||
bck_anm = NULL;
|
||||
|
|
@ -3400,7 +3400,7 @@ asm bool daNpc_zrA_c::setExpressionAnm(int param_0, bool param_1) {
|
|||
// matches with literals
|
||||
bool daNpc_zrA_c::setExpressionBtp(int i_idx) {
|
||||
J3DAnmTexPattern* btp_anm = NULL;
|
||||
int attr = 0;
|
||||
int attr = J3DFrameCtrl::LOOP_ONCE_e;
|
||||
mAnmFlags &= ~(ANM_PLAY_BTP | ANM_PAUSE_BTP | ANM_FLAG_800);
|
||||
|
||||
if (l_btpGetParamList[i_idx].fileIdx >= 0) {
|
||||
|
|
@ -3416,7 +3416,7 @@ bool daNpc_zrA_c::setExpressionBtp(int i_idx) {
|
|||
case 4:
|
||||
case 5:
|
||||
case 7:
|
||||
attr = 2;
|
||||
attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
break;
|
||||
case 6:
|
||||
break;
|
||||
|
|
@ -3467,7 +3467,7 @@ void daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) {
|
|||
J3DAnmTransformKey* bck_anm = NULL;
|
||||
J3DAnmTextureSRTKey* btk_anm = NULL;
|
||||
int btk_idx = 0;
|
||||
int attr = 2;
|
||||
int attr = J3DFrameCtrl::LOOP_REPEAT_e;
|
||||
mBaseMotionAnm = i_idx;
|
||||
|
||||
if (mAcch.ChkWaterIn()) {
|
||||
|
|
@ -3505,7 +3505,7 @@ void daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) {
|
|||
case ANM_FLOAT_SP:
|
||||
case ANM_FLOAT_B_SP:
|
||||
case ANM_STEP_SP:
|
||||
attr = 0;
|
||||
attr = J3DFrameCtrl::LOOP_ONCE_e;
|
||||
break;
|
||||
case ANM_FALLSWIM:
|
||||
case ANM_SADSIT_A:
|
||||
|
|
@ -5663,11 +5663,11 @@ SECTION_DEAD static char const* const stringBase_80B8CE7F = "NO_RESPONSE";
|
|||
|
||||
/* 80B7DF40-80B7E668 005B20 0728+00 1/1 0/0 0/0 .text doEvent__11daNpc_zrA_cFv */
|
||||
#ifdef NONMATCHING
|
||||
// issues with loading g_dComIfG_gameInfo.play.mEvent
|
||||
// regalloc
|
||||
BOOL daNpc_zrA_c::doEvent() {
|
||||
BOOL ret = false;
|
||||
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
if (dComIfGp_event_runCheck() != false) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
if (eventInfo.checkCommandTalk() || eventInfo.i_checkCommandDemoAccrpt()) {
|
||||
mOrderNewEvt = false;
|
||||
|
|
@ -5682,7 +5682,7 @@ BOOL daNpc_zrA_c::doEvent() {
|
|||
} else if (mType == TYPE_WATERFALL) {
|
||||
if (chkAction(&talkSwim)) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else if (!dComIfGp_event_chkTalkXY() || dComIfGp_evmng_ChkPresentEnd()) {
|
||||
} else if (dComIfGp_event_chkTalkXY() == false || dComIfGp_evmng_ChkPresentEnd()) {
|
||||
setAction(&talkSwim);
|
||||
}
|
||||
} else if (mType == TYPE_SEARCH) {
|
||||
|
|
@ -5734,8 +5734,9 @@ BOOL daNpc_zrA_c::doEvent() {
|
|||
|
||||
int staff_id = event_manager.getMyStaffId(mStaffName, this, 0);
|
||||
if (staff_id != -1) {
|
||||
mCutIndex = staff_id;
|
||||
int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList, 11, 0, 0);
|
||||
mStaffID = staff_id;
|
||||
int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList,
|
||||
ARRAY_SIZE(mEvtCutNameList), 0, 0);
|
||||
if ((this->*mEvtCutList[act_idx])(staff_id)) {
|
||||
event_manager.cutEnd(staff_id);
|
||||
}
|
||||
|
|
@ -5804,9 +5805,9 @@ BOOL daNpc_zrA_c::doEvent() {
|
|||
}
|
||||
|
||||
if (!ret) {
|
||||
if (mCutIndex != -1) {
|
||||
if (mStaffID != -1) {
|
||||
mpActionFn = NULL;
|
||||
mCutIndex = -1;
|
||||
mStaffID = -1;
|
||||
}
|
||||
mMsgTimer = 0;
|
||||
}
|
||||
|
|
@ -6561,7 +6562,7 @@ BOOL daNpc_zrA_c::wait(void* param_0) {
|
|||
waitCalc();
|
||||
}
|
||||
|
||||
if (field_0x954 == 0 && !mTwilight) {
|
||||
if (mDamageTimer == 0 && !mTwilight) {
|
||||
BOOL player_attn = mActorMngr[0].getActorP() != NULL;
|
||||
if (chkFindPlayer2(player_attn, shape_angle.y)) {
|
||||
if (!player_attn) {
|
||||
|
|
@ -6763,7 +6764,7 @@ BOOL daNpc_zrA_c::waitLake(void* param_0) {
|
|||
// fallthrough
|
||||
|
||||
case 2:
|
||||
if (field_0x954 == 0 && !mTwilight) {
|
||||
if (mDamageTimer == 0 && !mTwilight) {
|
||||
if (mActorMngr[0].getActorP() != NULL) {
|
||||
if (!chkFindPlayer()) {
|
||||
mTurnMode = 0;
|
||||
|
|
@ -6817,7 +6818,7 @@ BOOL daNpc_zrA_c::talk(void* param_0) {
|
|||
|
||||
switch (mMode) {
|
||||
case 0:
|
||||
if (field_0x954 != 0) {
|
||||
if (mDamageTimer != 0) {
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -6908,7 +6909,7 @@ SECTION_DEAD static char const* const stringBase_80B8CE8B = "prm";
|
|||
/* 80B806FC-80B80860 0082DC 0164+00 1/0 0/0 0/0 .text ECut_talkMulti__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_talkMulti(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_talkMulti(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
|
|
@ -6917,12 +6918,12 @@ BOOL daNpc_zrA_c::ECut_talkMulti(int i_cutIdx) {
|
|||
actors[0] = this;
|
||||
actors[1] = mActorMngr[2].getActorP();
|
||||
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
mActorMngr[2].remove();
|
||||
|
|
@ -7299,7 +7300,7 @@ asm BOOL daNpc_zrA_c::railSwim() {
|
|||
BOOL daNpc_zrA_c::waitSwim() {
|
||||
calcModulation();
|
||||
|
||||
if (field_0x954 == 0) {
|
||||
if (mDamageTimer == 0) {
|
||||
BOOL player_attn = mActorMngr[0].getActorP() != NULL;
|
||||
if (chkFindPlayer2(player_attn, shape_angle.y)) {
|
||||
if (!player_attn) {
|
||||
|
|
@ -7764,16 +7765,16 @@ asm void daNpc_zrA_c::calcWaitSwim(BOOL param_0) {
|
|||
/* 80B826F0-80B82C54 00A2D0 0564+00 1/0 0/0 0/0 .text ECut_talkSwim__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_talkSwim(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_talkSwim(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
mAcch.ClrGrndNone();
|
||||
|
|
@ -7930,7 +7931,7 @@ BOOL daNpc_zrA_c::waitWaterfall(void* param_0) {
|
|||
mSwimMode = SWIM_WAIT;
|
||||
}
|
||||
|
||||
if (field_0x954 == 0 && !mTwilight) {
|
||||
if (mDamageTimer == 0 && !mTwilight) {
|
||||
BOOL player_attn = mActorMngr[0].getActorP() != NULL;
|
||||
if (chkFindPlayer2(player_attn, shape_angle.y)) {
|
||||
if (!player_attn) {
|
||||
|
|
@ -8160,7 +8161,7 @@ BOOL daNpc_zrA_c::talkSwim(void* param_0) {
|
|||
|
||||
switch (mMode) {
|
||||
case 0:
|
||||
if (field_0x954 != 0) {
|
||||
if (mDamageTimer != 0) {
|
||||
break;
|
||||
}
|
||||
setExpression(EXPR_NONE, -1.0f);
|
||||
|
|
@ -8236,16 +8237,16 @@ asm BOOL daNpc_zrA_c::talkSwim(void* param_0) {
|
|||
/* 80B837E8-80B83D08 00B3C8 0520+00 1/0 0/0 0/0 .text ECut_carryWaterfall__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals and generics
|
||||
BOOL daNpc_zrA_c::ECut_carryWaterfall(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_carryWaterfall(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
dComIfGp_getEvent().setSkipProc(this, dEv_defaultSkipProc, 0);
|
||||
|
|
@ -8382,16 +8383,16 @@ asm BOOL daNpc_zrA_c::ECut_carryWaterfall(int param_0) {
|
|||
/* 80B83D08-80B83FA4 00B8E8 029C+00 1/0 0/0 0/0 .text ECut_carryWaterfallSkip__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals and generics
|
||||
BOOL daNpc_zrA_c::ECut_carryWaterfallSkip(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_carryWaterfallSkip(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
Z2GetAudioMgr()->subBgmStop();
|
||||
|
|
@ -9603,19 +9604,19 @@ COMPILER_STRIP_GATE(0x80B8CCB4, &lit_9935);
|
|||
/* 80B86FAC-80B872F0 00EB8C 0344+00 3/0 0/0 0/0 .text ECut_beforeBlastzrR__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_beforeBlastzrR(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_beforeBlastzrR(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
cXyz player_pos = daPy_getPlayerActorClass()->current.pos;
|
||||
cXyz canoe_pos(41744.92f, -6498.715f, -18601.64f);
|
||||
daCanoe_c* canoe;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
daNpcF_offTmpBit(0xb);
|
||||
|
|
@ -9756,19 +9757,19 @@ COMPILER_STRIP_GATE(0x80B8CCD0, &lit_9991);
|
|||
*/
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_afterBlastzrR(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_afterBlastzrR(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
cXyz player_pos = daPy_getPlayerActorClass()->current.pos;
|
||||
cXyz canoe_pos(40944.92f, -6498.715f, -18601.64f);
|
||||
daCanoe_c* canoe;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0: {
|
||||
cXyz target_pos(32651.5f, -5900.219f, -22464.53f);
|
||||
|
|
@ -9901,7 +9902,7 @@ COMPILER_STRIP_GATE(0x80B8CCF8, &lit_10585);
|
|||
*/
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals and generics
|
||||
BOOL daNpc_zrA_c::ECut_thanksBlast(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_thanksBlast(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
|
|
@ -9909,12 +9910,12 @@ BOOL daNpc_zrA_c::ECut_thanksBlast(int i_cutIdx) {
|
|||
f32 water_height = mAcch.m_wtr.GetHeight();
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
cXyz player_pos = player->current.pos;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
daNpcF_offTmpBit(0xb);
|
||||
|
|
@ -10247,7 +10248,7 @@ asm BOOL daNpc_zrA_c::ECut_thanksBlast(int param_0) {
|
|||
/* 80B88B04-80B8A064 0106E4 1560+00 1/0 0/0 0/0 .text ECut_resultAnnounce__11daNpc_zrA_cFi */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals and generics
|
||||
BOOL daNpc_zrA_c::ECut_resultAnnounce(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_resultAnnounce(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
|
|
@ -10255,12 +10256,12 @@ BOOL daNpc_zrA_c::ECut_resultAnnounce(int i_cutIdx) {
|
|||
f32 water_height = mAcch.m_wtr.GetHeight();
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
cXyz player_pos = player->current.pos;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
daNpcF_offTmpBit(0xb);
|
||||
|
|
@ -11191,18 +11192,18 @@ COMPILER_STRIP_GATE(0x80B8CD2C, &lit_11937);
|
|||
*/
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_searchPrince1(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_searchPrince1(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
fopAc_ac_c* talk_actors[2] = {this, mActorMngr[2].getActorP()};
|
||||
f32 water_y;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
dComIfGs_onSwitch(mSwitch1, fopAcM_GetRoomNo(this));
|
||||
|
|
@ -11347,17 +11348,17 @@ asm BOOL daNpc_zrA_c::ECut_searchPrince1(int param_0) {
|
|||
*/
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
BOOL daNpc_zrA_c::ECut_searchPrince2(int i_cutIdx) {
|
||||
BOOL daNpc_zrA_c::ECut_searchPrince2(int i_staffID) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
BOOL ret = false;
|
||||
int prm = -1;
|
||||
f32 water_y;
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_cutIdx, "prm");
|
||||
int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffID, "prm");
|
||||
if (prm_p != NULL) {
|
||||
prm = *prm_p;
|
||||
}
|
||||
|
||||
if (event_manager.getIsAddvance(i_cutIdx)) {
|
||||
if (event_manager.getIsAddvance(i_staffID)) {
|
||||
switch (prm) {
|
||||
case 0:
|
||||
setLookMode(LOOK_ACTOR);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -4635,7 +4635,7 @@ BOOL daNpcF_c::execute() {
|
|||
setHitodamaPrtcl();
|
||||
}
|
||||
mOldAngle = mCurAngle;
|
||||
field_0x930 = 0;
|
||||
mCutType = 0;
|
||||
mOrderSpeakEvt = false;
|
||||
mOrderNewEvt = false;
|
||||
field_0x9eb = false;
|
||||
|
|
@ -4648,8 +4648,8 @@ BOOL daNpcF_c::execute() {
|
|||
mAttnActor[i].remove();
|
||||
}
|
||||
}
|
||||
if (field_0x954 != 0) {
|
||||
cLib_calcTimer(&field_0x954);
|
||||
if (mDamageTimer != 0) {
|
||||
cLib_calcTimer(&mDamageTimer);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
@ -4667,30 +4667,31 @@ asm BOOL daNpcF_c::execute() {
|
|||
/* 801522AC-80152614 14CBEC 0368+00 0/0 0/0 33/33 .text draw__8daNpcF_cFiifP11_GXColorS10i */
|
||||
#ifdef NONMATCHING
|
||||
// literals
|
||||
BOOL daNpcF_c::draw(BOOL param_0, BOOL param_1, f32 i_shadowDepth, _GXColorS10* param_3,
|
||||
BOOL param_4) {
|
||||
f32 fVar1, frame;
|
||||
int daNpcF_c::draw(BOOL i_isTest, BOOL param_1, f32 i_shadowDepth, _GXColorS10* i_fogColor,
|
||||
BOOL i_hideDamage) {
|
||||
f32 damage_ratio, frame;
|
||||
J3DModel* model = mpMorf->getModel();
|
||||
J3DModelData* modelData = model->getModelData();
|
||||
field_0x9f3 = 1;
|
||||
|
||||
if (!checkHide()) {
|
||||
if (!param_4 && field_0x954 != 0 && field_0x958 != 0) {
|
||||
fVar1 = (f32)field_0x954 / (f32)field_0x958;
|
||||
if (!i_hideDamage && mDamageTimer != 0 && mTotalDamageTimer != 0) {
|
||||
damage_ratio = (f32)mDamageTimer / (f32)mTotalDamageTimer;
|
||||
} else {
|
||||
fVar1 = 0.0f;
|
||||
damage_ratio = 0.0f;
|
||||
}
|
||||
if (cM3d_IsZero_inverted(fVar1)) {
|
||||
tevStr.mFogColor.r = (s16)(fVar1 * 20.0f);
|
||||
|
||||
if (cM3d_IsZero_inverted(damage_ratio)) {
|
||||
tevStr.mFogColor.r = (s16)(damage_ratio * 20.0f);
|
||||
tevStr.mFogColor.g = 0;
|
||||
} else if (param_0) {
|
||||
} else if (i_isTest) {
|
||||
tevStr.mFogColor.g = 20;
|
||||
tevStr.mFogColor.r = 0;
|
||||
} else if (param_3 != NULL) {
|
||||
tevStr.mFogColor.r = param_3->r;
|
||||
tevStr.mFogColor.g = param_3->g;
|
||||
tevStr.mFogColor.b = param_3->b;
|
||||
tevStr.mFogColor.a = param_3->a;
|
||||
} else if (i_fogColor != NULL) {
|
||||
tevStr.mFogColor.r = i_fogColor->r;
|
||||
tevStr.mFogColor.g = i_fogColor->g;
|
||||
tevStr.mFogColor.b = i_fogColor->b;
|
||||
tevStr.mFogColor.a = i_fogColor->a;
|
||||
} else {
|
||||
tevStr.mFogColor.g = 0;
|
||||
tevStr.mFogColor.r = 0;
|
||||
|
|
@ -4745,7 +4746,7 @@ BOOL daNpcF_c::draw(BOOL param_0, BOOL param_1, f32 i_shadowDepth, _GXColorS10*
|
|||
drawOtherMdls();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
|
|
@ -4761,15 +4762,17 @@ asm BOOL daNpcF_c::draw(BOOL param_0, BOOL param_1, f32 param_2, _GXColorS10* pa
|
|||
|
||||
/* 80152614-80152654 14CF54 0040+00 0/0 0/0 13/13 .text
|
||||
* tgHitCallBack__8daNpcF_cFP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daNpcF_c::tgHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fopAc_ac_c* param_2,
|
||||
dCcD_GObjInf* param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_npc/tgHitCallBack__8daNpcF_cFP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf.s"
|
||||
void daNpcF_c::tgHitCallBack(fopAc_ac_c* i_this, dCcD_GObjInf* param_1, fopAc_ac_c* i_actor,
|
||||
dCcD_GObjInf* param_3) {
|
||||
if (i_actor != NULL && fopAcM_GetProfName(i_actor) == PROC_ALINK) {
|
||||
if (daPy_getPlayerActorClass() == i_actor) {
|
||||
u8 cut_type = static_cast<daPy_py_c*>(i_actor)->getCutType();
|
||||
static_cast<daNpcF_c*>(i_this)->setCutType(cut_type);
|
||||
} else {
|
||||
static_cast<daNpcF_c*>(i_this)->setCutType(daPy_py_c::CUT_TYPE_NM_VERTICAL);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804257E8-80425978 052508 0190+00 4/4 0/0 0/0 .bss mFindActorPList__8daNpcF_c */
|
||||
|
|
@ -4872,7 +4875,7 @@ void daNpcF_c::initialize() {
|
|||
field_0x908[i].setall(0);
|
||||
mLookatAngle[i].setall(0);
|
||||
}
|
||||
mCutIndex = -1;
|
||||
mStaffID = -1;
|
||||
field_0x930 = 0;
|
||||
mAttnIdx = 0;
|
||||
mAttnChangeTimer = 0;
|
||||
|
|
@ -4880,8 +4883,8 @@ void daNpcF_c::initialize() {
|
|||
mAttnActorTimer[i] = 0;
|
||||
}
|
||||
mMsgTimer = 0;
|
||||
field_0x954 = 0;
|
||||
field_0x958 = 0;
|
||||
mDamageTimer = 0;
|
||||
mTotalDamageTimer = 0;
|
||||
field_0x95c = 0;
|
||||
mEventTimer = 0;
|
||||
mBtpTimer = 0;
|
||||
|
|
@ -4921,7 +4924,7 @@ void daNpcF_c::initialize() {
|
|||
mOrderNewEvt = false;
|
||||
field_0x9ee = false;
|
||||
field_0x9ef = 0;
|
||||
field_0x9f0 = 0;
|
||||
mIsDamaged = false;
|
||||
field_0x9f1 = 0;
|
||||
mHide = false;
|
||||
field_0x9f3 = 0;
|
||||
|
|
@ -5317,14 +5320,31 @@ asm void daNpcF_c::setLookatMtx(int param_0, int* param_1, f32 param_2) {
|
|||
|
||||
/* 80153578-80153658 14DEB8 00E0+00 0/0 0/0 13/13 .text hitChk2__8daNpcF_cFP8dCcD_Cylii
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daNpcF_c::hitChk2(dCcD_Cyl* param_0, int param_1, int param_2) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_npc/hitChk2__8daNpcF_cFP8dCcD_Cylii.s"
|
||||
BOOL daNpcF_c::hitChk2(dCcD_Cyl* i_ccCyl, BOOL param_1, BOOL param_2) {
|
||||
static_cast<dCcD_Stts*>(i_ccCyl->GetStts())->Move();
|
||||
if (mDamageTimer == 0 && i_ccCyl->ChkTgHit()) {
|
||||
fopAc_ac_c* hit_actor = i_ccCyl->GetTgHitAc();
|
||||
if (hit_actor != NULL) {
|
||||
field_0x990 = fopAcM_searchActorAngleY(this, hit_actor) - mCurAngle.y;
|
||||
if (fopAcM_GetName(hit_actor) == PROC_NPC_TK) {
|
||||
if (param_1) {
|
||||
static_cast<daNPC_TK_c*>(hit_actor)->setBump();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if (param_2) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
i_ccCyl->ClrTgHit();
|
||||
return false;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804534A4-804534A8 001AA4 0004+00 1/1 0/0 0/0 .sdata2 @11061 */
|
||||
|
|
@ -5334,6 +5354,25 @@ SECTION_SDATA2 static f32 lit_11061 = 8192.0f;
|
|||
SECTION_SDATA2 static f32 lit_11062 = 12743.0f;
|
||||
|
||||
/* 80153658-80153718 14DF98 00C0+00 0/0 0/0 12/12 .text setDamage__8daNpcF_cFiii */
|
||||
#ifdef NONMATCHING
|
||||
// matches with literals
|
||||
void daNpcF_c::setDamage(int i_timer, int i_expression, int i_motion) {
|
||||
if (i_expression >= 0) {
|
||||
setExpression(i_expression, 0.0f);
|
||||
}
|
||||
if (i_motion >= 0) {
|
||||
setMotion(i_motion, 0.0f, true);
|
||||
}
|
||||
field_0x984[0] = 8192.0f;
|
||||
field_0x984[2] = 12743.0f;
|
||||
field_0x992 = 0x4000;
|
||||
mTotalDamageTimer = i_timer;
|
||||
mDamageTimer = mTotalDamageTimer;
|
||||
speed.setall(0.0f);
|
||||
speedF = 0.0f;
|
||||
mIsDamaged = true;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
|
@ -5342,6 +5381,7 @@ asm void daNpcF_c::setDamage(int param_0, int param_1, int param_2) {
|
|||
#include "asm/d/a/d_a_npc/setDamage__8daNpcF_cFiii.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 80153718-8015387C 14E058 0164+00 0/0 0/0 81/81 .text ctrlMsgAnm__8daNpcF_cFRiRiP10fopAc_ac_ci
|
||||
*/
|
||||
|
|
@ -5350,7 +5390,7 @@ asm void daNpcF_c::setDamage(int param_0, int param_1, int param_2) {
|
|||
int daNpcF_c::ctrlMsgAnm(int& o_expression, int& o_motion, fopAc_ac_c* param_2, BOOL param_3) {
|
||||
o_expression = -1;
|
||||
o_motion = -1;
|
||||
if (param_3 || eventInfo.checkCommandTalk() || mCutIndex != -1) {
|
||||
if (param_3 || eventInfo.checkCommandTalk() || mStaffID != -1) {
|
||||
fopAc_ac_c* talkPartner = dComIfGp_event_getTalkPartner();
|
||||
if (talkPartner == param_2) {
|
||||
fopAc_ac_c* actor = dMsgObject_c::getActor();
|
||||
|
|
|
|||
Loading…
Reference in New Issue