d_a_tag_Lv7Gate OK (#1985)

* d_a_tag_Lv7Gate OK

* Fix switch cases
This commit is contained in:
hev7 2023-11-15 14:29:30 +00:00 committed by GitHub
parent 18cb3aa72f
commit 37c0344daa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 397 additions and 1509 deletions

View File

@ -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 | 35.014503% | 1259312 | 3596544
.text | 35.091799% | 1262092 | 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 | 41.864842% | 1683248 | 4020672
Total | 41.933985% | 1686028 | 4020672
## Total
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 41.864842% | 1683248 | 4020672
RELs | 34.800967% | 4002224 | 11500324
Total | 36.630845% | 5685472 | 15520996
main.dol | 41.933985% | 1686028 | 4020672
RELs | 34.902251% | 4013872 | 11500324
Total | 36.723803% | 5699900 | 15520996
## RELs
@ -656,7 +656,7 @@ d_a_obj_twGate | 57.395498% | 2856 | 4976
d_a_obj_udoor | 49.156627% | 1632 | 3320
d_a_obj_usaku | 100.000000% | 1968 | 1968
d_a_obj_vground | 100.000000% | 2856 | 2856
d_a_obj_volcball | 50.478183% | 6756 | 13384
d_a_obj_volcball | 52.450687% | 7020 | 13384
d_a_obj_volcbom | 32.897713% | 5236 | 15916
d_a_obj_warp_kbrg | 34.066524% | 5080 | 14912
d_a_obj_warp_obrg | 34.784076% | 4124 | 11856
@ -705,7 +705,7 @@ d_a_swc00 | 43.087121% | 1820 | 4224
d_a_swhit0 | 35.577421% | 2748 | 7724
d_a_tag_CstaSw | 100.000000% | 2560 | 2560
d_a_tag_Lv6Gate | 39.281576% | 2712 | 6904
d_a_tag_Lv7Gate | 34.752224% | 2188 | 6296
d_a_tag_Lv7Gate | 100.000000% | 6296 | 6296
d_a_tag_Lv8Gate | 43.347193% | 1668 | 3848
d_a_tag_TWgate | 55.682049% | 10956 | 19676
d_a_tag_ajnot | 100.000000% | 1232 | 1232
@ -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 | 34.800967% | 4002224 | 11500324
Total | 34.902251% | 4013872 | 11500324

View File

@ -1,20 +0,0 @@
lbl_80D50BFC:
/* 80D50BFC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D50C00 7C 08 02 A6 */ mflr r0
/* 80D50C04 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D50C08 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D50C0C 7C 7F 1B 79 */ or. r31, r3, r3
/* 80D50C10 41 82 00 1C */ beq lbl_80D50C2C
/* 80D50C14 3C A0 80 D5 */ lis r5, __vt__12J3DFrameCtrl@ha /* 0x80D51BA4@ha */
/* 80D50C18 38 05 1B A4 */ addi r0, r5, __vt__12J3DFrameCtrl@l /* 0x80D51BA4@l */
/* 80D50C1C 90 1F 00 00 */ stw r0, 0(r31)
/* 80D50C20 7C 80 07 35 */ extsh. r0, r4
/* 80D50C24 40 81 00 08 */ ble lbl_80D50C2C
/* 80D50C28 4B 57 E1 15 */ bl __dl__FPv
lbl_80D50C2C:
/* 80D50C2C 7F E3 FB 78 */ mr r3, r31
/* 80D50C30 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D50C34 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D50C38 7C 08 03 A6 */ mtlr r0
/* 80D50C3C 38 21 00 10 */ addi r1, r1, 0x10
/* 80D50C40 4E 80 00 20 */ blr

View File

@ -1,254 +0,0 @@
lbl_80D51628:
/* 80D51628 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80D5162C 7C 08 02 A6 */ mflr r0
/* 80D51630 90 01 00 54 */ stw r0, 0x54(r1)
/* 80D51634 DB E1 00 40 */ stfd f31, 0x40(r1)
/* 80D51638 F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0 /* qr0 */
/* 80D5163C 39 61 00 40 */ addi r11, r1, 0x40
/* 80D51640 4B 61 0B 9D */ bl _savegpr_29
/* 80D51644 7C 7E 1B 78 */ mr r30, r3
/* 80D51648 3C 60 80 D5 */ lis r3, lit_3698@ha /* 0x80D51AD4@ha */
/* 80D5164C 3B E3 1A D4 */ addi r31, r3, lit_3698@l /* 0x80D51AD4@l */
/* 80D51650 C3 FE 05 2C */ lfs f31, 0x52c(r30)
/* 80D51654 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80D51658 80 9E 05 A0 */ lwz r4, 0x5a0(r30)
/* 80D5165C 4B 30 01 55 */ bl dPath_GetPnt__FPC5dPathi
/* 80D51660 7C 64 1B 78 */ mr r4, r3
/* 80D51664 C0 1E 05 A4 */ lfs f0, 0x5a4(r30)
/* 80D51668 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80D5166C D0 1E 05 A4 */ stfs f0, 0x5a4(r30)
/* 80D51670 38 7E 05 88 */ addi r3, r30, 0x588
/* 80D51674 38 84 00 04 */ addi r4, r4, 4
/* 80D51678 4B 5F 5D 25 */ bl PSVECSquareDistance
/* 80D5167C C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D51680 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D51684 40 81 00 58 */ ble lbl_80D516DC
/* 80D51688 FC 00 08 34 */ frsqrte f0, f1
/* 80D5168C C8 9F 00 10 */ lfd f4, 0x10(r31)
/* 80D51690 FC 44 00 32 */ fmul f2, f4, f0
/* 80D51694 C8 7F 00 18 */ lfd f3, 0x18(r31)
/* 80D51698 FC 00 00 32 */ fmul f0, f0, f0
/* 80D5169C FC 01 00 32 */ fmul f0, f1, f0
/* 80D516A0 FC 03 00 28 */ fsub f0, f3, f0
/* 80D516A4 FC 02 00 32 */ fmul f0, f2, f0
/* 80D516A8 FC 44 00 32 */ fmul f2, f4, f0
/* 80D516AC FC 00 00 32 */ fmul f0, f0, f0
/* 80D516B0 FC 01 00 32 */ fmul f0, f1, f0
/* 80D516B4 FC 03 00 28 */ fsub f0, f3, f0
/* 80D516B8 FC 02 00 32 */ fmul f0, f2, f0
/* 80D516BC FC 44 00 32 */ fmul f2, f4, f0
/* 80D516C0 FC 00 00 32 */ fmul f0, f0, f0
/* 80D516C4 FC 01 00 32 */ fmul f0, f1, f0
/* 80D516C8 FC 03 00 28 */ fsub f0, f3, f0
/* 80D516CC FC 02 00 32 */ fmul f0, f2, f0
/* 80D516D0 FC 21 00 32 */ fmul f1, f1, f0
/* 80D516D4 FC 20 08 18 */ frsp f1, f1
/* 80D516D8 48 00 00 88 */ b lbl_80D51760
lbl_80D516DC:
/* 80D516DC C8 1F 00 20 */ lfd f0, 0x20(r31)
/* 80D516E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D516E4 40 80 00 10 */ bge lbl_80D516F4
/* 80D516E8 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D516EC C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80D516F0 48 00 00 70 */ b lbl_80D51760
lbl_80D516F4:
/* 80D516F4 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80D516F8 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80D516FC 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80D51700 3C 00 7F 80 */ lis r0, 0x7f80
/* 80D51704 7C 03 00 00 */ cmpw r3, r0
/* 80D51708 41 82 00 14 */ beq lbl_80D5171C
/* 80D5170C 40 80 00 40 */ bge lbl_80D5174C
/* 80D51710 2C 03 00 00 */ cmpwi r3, 0
/* 80D51714 41 82 00 20 */ beq lbl_80D51734
/* 80D51718 48 00 00 34 */ b lbl_80D5174C
lbl_80D5171C:
/* 80D5171C 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D51720 41 82 00 0C */ beq lbl_80D5172C
/* 80D51724 38 00 00 01 */ li r0, 1
/* 80D51728 48 00 00 28 */ b lbl_80D51750
lbl_80D5172C:
/* 80D5172C 38 00 00 02 */ li r0, 2
/* 80D51730 48 00 00 20 */ b lbl_80D51750
lbl_80D51734:
/* 80D51734 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D51738 41 82 00 0C */ beq lbl_80D51744
/* 80D5173C 38 00 00 05 */ li r0, 5
/* 80D51740 48 00 00 10 */ b lbl_80D51750
lbl_80D51744:
/* 80D51744 38 00 00 03 */ li r0, 3
/* 80D51748 48 00 00 08 */ b lbl_80D51750
lbl_80D5174C:
/* 80D5174C 38 00 00 04 */ li r0, 4
lbl_80D51750:
/* 80D51750 2C 00 00 01 */ cmpwi r0, 1
/* 80D51754 40 82 00 0C */ bne lbl_80D51760
/* 80D51758 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D5175C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80D51760:
/* 80D51760 FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 80D51764 41 80 00 14 */ blt lbl_80D51778
/* 80D51768 C0 3E 05 A4 */ lfs f1, 0x5a4(r30)
/* 80D5176C C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D51770 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D51774 40 80 00 0C */ bge lbl_80D51780
lbl_80D51778:
/* 80D51778 38 00 00 01 */ li r0, 1
/* 80D5177C 48 00 00 08 */ b lbl_80D51784
lbl_80D51780:
/* 80D51780 38 00 00 00 */ li r0, 0
lbl_80D51784:
/* 80D51784 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 80D51788 41 82 01 A4 */ beq lbl_80D5192C
/* 80D5178C 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80D51790 80 9E 05 A0 */ lwz r4, 0x5a0(r30)
/* 80D51794 4B 30 00 1D */ bl dPath_GetPnt__FPC5dPathi
/* 80D51798 80 7E 05 A0 */ lwz r3, 0x5a0(r30)
/* 80D5179C 38 03 00 01 */ addi r0, r3, 1
/* 80D517A0 90 1E 05 A0 */ stw r0, 0x5a0(r30)
/* 80D517A4 80 9E 05 A0 */ lwz r4, 0x5a0(r30)
/* 80D517A8 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80D517AC A0 A3 00 00 */ lhz r5, 0(r3)
/* 80D517B0 7C 04 28 00 */ cmpw r4, r5
/* 80D517B4 41 80 00 1C */ blt lbl_80D517D0
/* 80D517B8 38 05 FF FF */ addi r0, r5, -1
/* 80D517BC 90 1E 05 A0 */ stw r0, 0x5a0(r30)
/* 80D517C0 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D517C4 D0 1E 05 A4 */ stfs f0, 0x5a4(r30)
/* 80D517C8 38 00 00 01 */ li r0, 1
/* 80D517CC 48 00 01 48 */ b lbl_80D51914
lbl_80D517D0:
/* 80D517D0 4B 2F FF E1 */ bl dPath_GetPnt__FPC5dPathi
/* 80D517D4 7C 7D 1B 78 */ mr r29, r3
/* 80D517D8 C0 5E 05 90 */ lfs f2, 0x590(r30)
/* 80D517DC C0 1E 05 88 */ lfs f0, 0x588(r30)
/* 80D517E0 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80D517E4 C0 3F 00 08 */ lfs f1, 8(r31)
/* 80D517E8 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 80D517EC D0 41 00 18 */ stfs f2, 0x18(r1)
/* 80D517F0 C0 43 00 0C */ lfs f2, 0xc(r3)
/* 80D517F4 C0 03 00 04 */ lfs f0, 4(r3)
/* 80D517F8 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80D517FC D0 21 00 20 */ stfs f1, 0x20(r1)
/* 80D51800 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80D51804 38 61 00 10 */ addi r3, r1, 0x10
/* 80D51808 38 81 00 1C */ addi r4, r1, 0x1c
/* 80D5180C 4B 5F 5B 91 */ bl PSVECSquareDistance
/* 80D51810 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D51814 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D51818 40 81 00 58 */ ble lbl_80D51870
/* 80D5181C FC 00 08 34 */ frsqrte f0, f1
/* 80D51820 C8 9F 00 10 */ lfd f4, 0x10(r31)
/* 80D51824 FC 44 00 32 */ fmul f2, f4, f0
/* 80D51828 C8 7F 00 18 */ lfd f3, 0x18(r31)
/* 80D5182C FC 00 00 32 */ fmul f0, f0, f0
/* 80D51830 FC 01 00 32 */ fmul f0, f1, f0
/* 80D51834 FC 03 00 28 */ fsub f0, f3, f0
/* 80D51838 FC 02 00 32 */ fmul f0, f2, f0
/* 80D5183C FC 44 00 32 */ fmul f2, f4, f0
/* 80D51840 FC 00 00 32 */ fmul f0, f0, f0
/* 80D51844 FC 01 00 32 */ fmul f0, f1, f0
/* 80D51848 FC 03 00 28 */ fsub f0, f3, f0
/* 80D5184C FC 02 00 32 */ fmul f0, f2, f0
/* 80D51850 FC 44 00 32 */ fmul f2, f4, f0
/* 80D51854 FC 00 00 32 */ fmul f0, f0, f0
/* 80D51858 FC 01 00 32 */ fmul f0, f1, f0
/* 80D5185C FC 03 00 28 */ fsub f0, f3, f0
/* 80D51860 FC 02 00 32 */ fmul f0, f2, f0
/* 80D51864 FC 21 00 32 */ fmul f1, f1, f0
/* 80D51868 FC 20 08 18 */ frsp f1, f1
/* 80D5186C 48 00 00 88 */ b lbl_80D518F4
lbl_80D51870:
/* 80D51870 C8 1F 00 20 */ lfd f0, 0x20(r31)
/* 80D51874 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D51878 40 80 00 10 */ bge lbl_80D51888
/* 80D5187C 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D51880 C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80D51884 48 00 00 70 */ b lbl_80D518F4
lbl_80D51888:
/* 80D51888 D0 21 00 08 */ stfs f1, 8(r1)
/* 80D5188C 80 81 00 08 */ lwz r4, 8(r1)
/* 80D51890 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80D51894 3C 00 7F 80 */ lis r0, 0x7f80
/* 80D51898 7C 03 00 00 */ cmpw r3, r0
/* 80D5189C 41 82 00 14 */ beq lbl_80D518B0
/* 80D518A0 40 80 00 40 */ bge lbl_80D518E0
/* 80D518A4 2C 03 00 00 */ cmpwi r3, 0
/* 80D518A8 41 82 00 20 */ beq lbl_80D518C8
/* 80D518AC 48 00 00 34 */ b lbl_80D518E0
lbl_80D518B0:
/* 80D518B0 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D518B4 41 82 00 0C */ beq lbl_80D518C0
/* 80D518B8 38 00 00 01 */ li r0, 1
/* 80D518BC 48 00 00 28 */ b lbl_80D518E4
lbl_80D518C0:
/* 80D518C0 38 00 00 02 */ li r0, 2
/* 80D518C4 48 00 00 20 */ b lbl_80D518E4
lbl_80D518C8:
/* 80D518C8 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D518CC 41 82 00 0C */ beq lbl_80D518D8
/* 80D518D0 38 00 00 05 */ li r0, 5
/* 80D518D4 48 00 00 10 */ b lbl_80D518E4
lbl_80D518D8:
/* 80D518D8 38 00 00 03 */ li r0, 3
/* 80D518DC 48 00 00 08 */ b lbl_80D518E4
lbl_80D518E0:
/* 80D518E0 38 00 00 04 */ li r0, 4
lbl_80D518E4:
/* 80D518E4 2C 00 00 01 */ cmpwi r0, 1
/* 80D518E8 40 82 00 0C */ bne lbl_80D518F4
/* 80D518EC 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D518F0 C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80D518F4:
/* 80D518F4 D0 3E 05 A4 */ stfs f1, 0x5a4(r30)
/* 80D518F8 C0 1D 00 04 */ lfs f0, 4(r29)
/* 80D518FC D0 1E 05 7C */ stfs f0, 0x57c(r30)
/* 80D51900 C0 1D 00 08 */ lfs f0, 8(r29)
/* 80D51904 D0 1E 05 80 */ stfs f0, 0x580(r30)
/* 80D51908 C0 1D 00 0C */ lfs f0, 0xc(r29)
/* 80D5190C D0 1E 05 84 */ stfs f0, 0x584(r30)
/* 80D51910 38 00 00 00 */ li r0, 0
lbl_80D51914:
/* 80D51914 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 80D51918 41 82 00 14 */ beq lbl_80D5192C
/* 80D5191C 38 00 00 00 */ li r0, 0
/* 80D51920 98 1E 05 B1 */ stb r0, 0x5b1(r30)
/* 80D51924 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D51928 D0 1E 05 2C */ stfs f0, 0x52c(r30)
lbl_80D5192C:
/* 80D5192C 38 7E 05 88 */ addi r3, r30, 0x588
/* 80D51930 38 9E 05 7C */ addi r4, r30, 0x57c
/* 80D51934 4B 51 F3 41 */ bl cLib_targetAngleX__FPC4cXyzPC4cXyz
/* 80D51938 7C 03 00 D0 */ neg r0, r3
/* 80D5193C 7C 1D 07 34 */ extsh r29, r0
/* 80D51940 38 7E 05 88 */ addi r3, r30, 0x588
/* 80D51944 38 9E 05 7C */ addi r4, r30, 0x57c
/* 80D51948 4B 51 F2 BD */ bl cLib_targetAngleY__FPC3VecPC3Vec
/* 80D5194C 7C 7F 1B 78 */ mr r31, r3
/* 80D51950 38 7E 05 94 */ addi r3, r30, 0x594
/* 80D51954 7F A4 EB 78 */ mr r4, r29
/* 80D51958 38 A0 00 0F */ li r5, 0xf
/* 80D5195C 38 C0 04 00 */ li r6, 0x400
/* 80D51960 4B 51 EC A9 */ bl cLib_addCalcAngleS2__FPssss
/* 80D51964 38 7E 05 96 */ addi r3, r30, 0x596
/* 80D51968 7F E4 FB 78 */ mr r4, r31
/* 80D5196C 38 A0 00 23 */ li r5, 0x23
/* 80D51970 38 C0 01 00 */ li r6, 0x100
/* 80D51974 4B 51 EC 95 */ bl cLib_addCalcAngleS2__FPssss
/* 80D51978 38 7E 05 98 */ addi r3, r30, 0x598
/* 80D5197C 7F E4 07 34 */ extsh r4, r31
/* 80D51980 A8 1E 05 96 */ lha r0, 0x596(r30)
/* 80D51984 7C 04 00 50 */ subf r0, r4, r0
/* 80D51988 54 00 10 3A */ slwi r0, r0, 2
/* 80D5198C 7C 04 07 34 */ extsh r4, r0
/* 80D51990 38 A0 00 23 */ li r5, 0x23
/* 80D51994 38 C0 01 00 */ li r6, 0x100
/* 80D51998 4B 51 EC 71 */ bl cLib_addCalcAngleS2__FPssss
/* 80D5199C E3 E1 00 48 */ psq_l f31, 72(r1), 0, 0 /* qr0 */
/* 80D519A0 CB E1 00 40 */ lfd f31, 0x40(r1)
/* 80D519A4 39 61 00 40 */ addi r11, r1, 0x40
/* 80D519A8 4B 61 08 81 */ bl _restgpr_29
/* 80D519AC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80D519B0 7C 08 03 A6 */ mtlr r0
/* 80D519B4 38 21 00 50 */ addi r1, r1, 0x50
/* 80D519B8 4E 80 00 20 */ blr

View File

@ -1,88 +0,0 @@
lbl_80D50AB8:
/* 80D50AB8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80D50ABC 7C 08 02 A6 */ mflr r0
/* 80D50AC0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80D50AC4 39 61 00 20 */ addi r11, r1, 0x20
/* 80D50AC8 4B 61 17 15 */ bl _savegpr_29
/* 80D50ACC 7C 7F 1B 78 */ mr r31, r3
/* 80D50AD0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D50AD4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D50AD8 38 63 07 F0 */ addi r3, r3, 0x7f0
/* 80D50ADC 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
/* 80D50AE0 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
/* 80D50AE4 A0 84 03 FC */ lhz r4, 0x3fc(r4)
/* 80D50AE8 4B 2E 3E D5 */ bl isEventBit__11dSv_event_cCFUs
/* 80D50AEC 2C 03 00 00 */ cmpwi r3, 0
/* 80D50AF0 41 82 00 0C */ beq lbl_80D50AFC
/* 80D50AF4 38 60 00 01 */ li r3, 1
/* 80D50AF8 48 00 00 EC */ b lbl_80D50BE4
lbl_80D50AFC:
/* 80D50AFC 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D50B00 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D50B04 80 63 00 00 */ lwz r3, 0(r3)
/* 80D50B08 38 80 00 0B */ li r4, 0xb
/* 80D50B0C 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D50B10 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D50B14 3F A5 00 02 */ addis r29, r5, 2
/* 80D50B18 3B BD C2 F8 */ addi r29, r29, -15624
/* 80D50B1C 7F A5 EB 78 */ mr r5, r29
/* 80D50B20 38 C0 00 80 */ li r6, 0x80
/* 80D50B24 4B 2E B7 C9 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D50B28 38 80 00 00 */ li r4, 0
/* 80D50B2C 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */
/* 80D50B30 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */
/* 80D50B34 4B 2C 41 21 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
/* 80D50B38 90 7F 05 68 */ stw r3, 0x568(r31)
/* 80D50B3C 80 1F 05 68 */ lwz r0, 0x568(r31)
/* 80D50B40 28 00 00 00 */ cmplwi r0, 0
/* 80D50B44 40 82 00 0C */ bne lbl_80D50B50
/* 80D50B48 38 60 00 00 */ li r3, 0
/* 80D50B4C 48 00 00 98 */ b lbl_80D50BE4
lbl_80D50B50:
/* 80D50B50 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D50B54 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D50B58 80 63 00 00 */ lwz r3, 0(r3)
/* 80D50B5C 38 80 00 07 */ li r4, 7
/* 80D50B60 7F A5 EB 78 */ mr r5, r29
/* 80D50B64 38 C0 00 80 */ li r6, 0x80
/* 80D50B68 4B 2E B7 85 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D50B6C 7C 7D 1B 78 */ mr r29, r3
/* 80D50B70 38 60 00 1C */ li r3, 0x1c
/* 80D50B74 4B 57 E0 D9 */ bl __nw__FUl
/* 80D50B78 7C 7E 1B 79 */ or. r30, r3, r3
/* 80D50B7C 41 82 00 20 */ beq lbl_80D50B9C
/* 80D50B80 3C 80 80 D5 */ lis r4, __vt__12J3DFrameCtrl@ha /* 0x80D51BA4@ha */
/* 80D50B84 38 04 1B A4 */ addi r0, r4, __vt__12J3DFrameCtrl@l /* 0x80D51BA4@l */
/* 80D50B88 90 1E 00 00 */ stw r0, 0(r30)
/* 80D50B8C 38 80 00 00 */ li r4, 0
/* 80D50B90 4B 5D 78 6D */ bl init__12J3DFrameCtrlFs
/* 80D50B94 38 00 00 00 */ li r0, 0
/* 80D50B98 90 1E 00 18 */ stw r0, 0x18(r30)
lbl_80D50B9C:
/* 80D50B9C 93 DF 05 6C */ stw r30, 0x56c(r31)
/* 80D50BA0 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D50BA4 28 03 00 00 */ cmplwi r3, 0
/* 80D50BA8 41 82 00 30 */ beq lbl_80D50BD8
/* 80D50BAC 7F A4 EB 78 */ mr r4, r29
/* 80D50BB0 38 A0 00 01 */ li r5, 1
/* 80D50BB4 38 C0 00 02 */ li r6, 2
/* 80D50BB8 3C E0 80 D5 */ lis r7, lit_3698@ha /* 0x80D51AD4@ha */
/* 80D50BBC C0 27 1A D4 */ lfs f1, lit_3698@l(r7) /* 0x80D51AD4@l */
/* 80D50BC0 38 E0 00 00 */ li r7, 0
/* 80D50BC4 39 00 FF FF */ li r8, -1
/* 80D50BC8 39 20 00 00 */ li r9, 0
/* 80D50BCC 4B 2B CC 11 */ bl init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb
/* 80D50BD0 2C 03 00 00 */ cmpwi r3, 0
/* 80D50BD4 40 82 00 0C */ bne lbl_80D50BE0
lbl_80D50BD8:
/* 80D50BD8 38 60 00 00 */ li r3, 0
/* 80D50BDC 48 00 00 08 */ b lbl_80D50BE4
lbl_80D50BE0:
/* 80D50BE0 38 60 00 01 */ li r3, 1
lbl_80D50BE4:
/* 80D50BE4 39 61 00 20 */ addi r11, r1, 0x20
/* 80D50BE8 4B 61 16 41 */ bl _restgpr_29
/* 80D50BEC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80D50BF0 7C 08 03 A6 */ mtlr r0
/* 80D50BF4 38 21 00 20 */ addi r1, r1, 0x20
/* 80D50BF8 4E 80 00 20 */ blr

View File

@ -1,58 +0,0 @@
lbl_80D50C64:
/* 80D50C64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D50C68 7C 08 02 A6 */ mflr r0
/* 80D50C6C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D50C70 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D50C74 93 C1 00 08 */ stw r30, 8(r1)
/* 80D50C78 7C 7E 1B 78 */ mr r30, r3
/* 80D50C7C 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80D50C80 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80D50C84 40 82 00 1C */ bne lbl_80D50CA0
/* 80D50C88 28 1E 00 00 */ cmplwi r30, 0
/* 80D50C8C 41 82 00 08 */ beq lbl_80D50C94
/* 80D50C90 4B 2C 7E D5 */ bl __ct__10fopAc_ac_cFv
lbl_80D50C94:
/* 80D50C94 80 1E 04 A0 */ lwz r0, 0x4a0(r30)
/* 80D50C98 60 00 00 08 */ ori r0, r0, 8
/* 80D50C9C 90 1E 04 A0 */ stw r0, 0x4a0(r30)
lbl_80D50CA0:
/* 80D50CA0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D50CA4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D50CA8 80 63 5D AC */ lwz r3, 0x5dac(r3)
/* 80D50CAC C0 23 04 D4 */ lfs f1, 0x4d4(r3)
/* 80D50CB0 3C 60 80 D5 */ lis r3, lit_3829@ha /* 0x80D51AD8@ha */
/* 80D50CB4 C0 03 1A D8 */ lfs f0, lit_3829@l(r3) /* 0x80D51AD8@l */
/* 80D50CB8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D50CBC 40 80 00 0C */ bge lbl_80D50CC8
/* 80D50CC0 38 60 00 05 */ li r3, 5
/* 80D50CC4 48 00 00 54 */ b lbl_80D50D18
lbl_80D50CC8:
/* 80D50CC8 38 7E 05 74 */ addi r3, r30, 0x574
/* 80D50CCC 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D51B50@ha */
/* 80D50CD0 38 84 1B 50 */ addi r4, r4, l_arcName@l /* 0x80D51B50@l */
/* 80D50CD4 80 84 00 00 */ lwz r4, 0(r4)
/* 80D50CD8 4B 2D C1 E5 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc
/* 80D50CDC 7C 7F 1B 78 */ mr r31, r3
/* 80D50CE0 2C 1F 00 04 */ cmpwi r31, 4
/* 80D50CE4 40 82 00 30 */ bne lbl_80D50D14
/* 80D50CE8 7F C3 F3 78 */ mr r3, r30
/* 80D50CEC 3C 80 80 D5 */ lis r4, createSolidHeap__FP10fopAc_ac_c@ha /* 0x80D50AB8@ha */
/* 80D50CF0 38 84 0A B8 */ addi r4, r4, createSolidHeap__FP10fopAc_ac_c@l /* 0x80D50AB8@l */
/* 80D50CF4 38 A0 53 40 */ li r5, 0x5340
/* 80D50CF8 4B 2C 97 B9 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
/* 80D50CFC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80D50D00 40 82 00 0C */ bne lbl_80D50D0C
/* 80D50D04 38 60 00 05 */ li r3, 5
/* 80D50D08 48 00 00 10 */ b lbl_80D50D18
lbl_80D50D0C:
/* 80D50D0C 7F C3 F3 78 */ mr r3, r30
/* 80D50D10 48 00 00 21 */ bl create_init__14daTagLv7Gate_cFv
lbl_80D50D14:
/* 80D50D14 7F E3 FB 78 */ mr r3, r31
lbl_80D50D18:
/* 80D50D18 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D50D1C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D50D20 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D50D24 7C 08 03 A6 */ mtlr r0
/* 80D50D28 38 21 00 10 */ addi r1, r1, 0x10
/* 80D50D2C 4E 80 00 20 */ blr

View File

@ -1,302 +0,0 @@
lbl_80D50D30:
/* 80D50D30 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80D50D34 7C 08 02 A6 */ mflr r0
/* 80D50D38 90 01 00 64 */ stw r0, 0x64(r1)
/* 80D50D3C 39 61 00 60 */ addi r11, r1, 0x60
/* 80D50D40 4B 61 14 9D */ bl _savegpr_29
/* 80D50D44 7C 7E 1B 78 */ mr r30, r3
/* 80D50D48 3C 60 80 D5 */ lis r3, lit_3698@ha /* 0x80D51AD4@ha */
/* 80D50D4C 3B E3 1A D4 */ addi r31, r3, lit_3698@l /* 0x80D51AD4@l */
/* 80D50D50 38 60 00 00 */ li r3, 0
/* 80D50D54 90 7E 05 5C */ stw r3, 0x55c(r30)
/* 80D50D58 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D50D5C D0 1E 05 A8 */ stfs f0, 0x5a8(r30)
/* 80D50D60 B0 7E 05 AC */ sth r3, 0x5ac(r30)
/* 80D50D64 38 00 FF FF */ li r0, -1
/* 80D50D68 B0 1E 05 AE */ sth r0, 0x5ae(r30)
/* 80D50D6C 98 7E 05 B0 */ stb r3, 0x5b0(r30)
/* 80D50D70 98 7E 05 B1 */ stb r3, 0x5b1(r30)
/* 80D50D74 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D50D78 54 03 86 3E */ rlwinm r3, r0, 0x10, 0x18, 0x1f
/* 80D50D7C 88 1E 04 E2 */ lbz r0, 0x4e2(r30)
/* 80D50D80 7C 04 07 74 */ extsb r4, r0
/* 80D50D84 4B 30 0A 69 */ bl dPath_GetRoomPath__Fii
/* 80D50D88 90 7E 05 70 */ stw r3, 0x570(r30)
/* 80D50D8C 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80D50D90 28 03 00 00 */ cmplwi r3, 0
/* 80D50D94 41 82 01 A4 */ beq lbl_80D50F38
/* 80D50D98 38 80 00 00 */ li r4, 0
/* 80D50D9C 4B 30 0A 15 */ bl dPath_GetPnt__FPC5dPathi
/* 80D50DA0 C0 03 00 04 */ lfs f0, 4(r3)
/* 80D50DA4 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80D50DA8 C0 03 00 08 */ lfs f0, 8(r3)
/* 80D50DAC D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80D50DB0 C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80D50DB4 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 80D50DB8 80 7E 05 70 */ lwz r3, 0x570(r30)
/* 80D50DBC 38 80 00 01 */ li r4, 1
/* 80D50DC0 4B 30 09 F1 */ bl dPath_GetPnt__FPC5dPathi
/* 80D50DC4 C0 03 00 04 */ lfs f0, 4(r3)
/* 80D50DC8 D0 01 00 2C */ stfs f0, 0x2c(r1)
/* 80D50DCC C0 03 00 08 */ lfs f0, 8(r3)
/* 80D50DD0 D0 01 00 30 */ stfs f0, 0x30(r1)
/* 80D50DD4 C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80D50DD8 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 80D50DDC C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80D50DE0 D0 1E 05 88 */ stfs f0, 0x588(r30)
/* 80D50DE4 C0 01 00 24 */ lfs f0, 0x24(r1)
/* 80D50DE8 D0 1E 05 8C */ stfs f0, 0x58c(r30)
/* 80D50DEC C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80D50DF0 D0 1E 05 90 */ stfs f0, 0x590(r30)
/* 80D50DF4 38 61 00 20 */ addi r3, r1, 0x20
/* 80D50DF8 38 81 00 2C */ addi r4, r1, 0x2c
/* 80D50DFC 4B 51 FE 09 */ bl cLib_targetAngleY__FPC3VecPC3Vec
/* 80D50E00 7C 7D 1B 78 */ mr r29, r3
/* 80D50E04 38 61 00 20 */ addi r3, r1, 0x20
/* 80D50E08 38 81 00 2C */ addi r4, r1, 0x2c
/* 80D50E0C 4B 51 FE 69 */ bl cLib_targetAngleX__FPC4cXyzPC4cXyz
/* 80D50E10 7C 03 00 D0 */ neg r0, r3
/* 80D50E14 B0 1E 05 94 */ sth r0, 0x594(r30)
/* 80D50E18 B3 BE 05 96 */ sth r29, 0x596(r30)
/* 80D50E1C 38 00 00 00 */ li r0, 0
/* 80D50E20 B0 1E 05 98 */ sth r0, 0x598(r30)
/* 80D50E24 38 7E 05 88 */ addi r3, r30, 0x588
/* 80D50E28 38 81 00 2C */ addi r4, r1, 0x2c
/* 80D50E2C 4B 5F 65 71 */ bl PSVECSquareDistance
/* 80D50E30 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D50E34 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D50E38 40 81 00 58 */ ble lbl_80D50E90
/* 80D50E3C FC 00 08 34 */ frsqrte f0, f1
/* 80D50E40 C8 9F 00 10 */ lfd f4, 0x10(r31)
/* 80D50E44 FC 44 00 32 */ fmul f2, f4, f0
/* 80D50E48 C8 7F 00 18 */ lfd f3, 0x18(r31)
/* 80D50E4C FC 00 00 32 */ fmul f0, f0, f0
/* 80D50E50 FC 01 00 32 */ fmul f0, f1, f0
/* 80D50E54 FC 03 00 28 */ fsub f0, f3, f0
/* 80D50E58 FC 02 00 32 */ fmul f0, f2, f0
/* 80D50E5C FC 44 00 32 */ fmul f2, f4, f0
/* 80D50E60 FC 00 00 32 */ fmul f0, f0, f0
/* 80D50E64 FC 01 00 32 */ fmul f0, f1, f0
/* 80D50E68 FC 03 00 28 */ fsub f0, f3, f0
/* 80D50E6C FC 02 00 32 */ fmul f0, f2, f0
/* 80D50E70 FC 44 00 32 */ fmul f2, f4, f0
/* 80D50E74 FC 00 00 32 */ fmul f0, f0, f0
/* 80D50E78 FC 01 00 32 */ fmul f0, f1, f0
/* 80D50E7C FC 03 00 28 */ fsub f0, f3, f0
/* 80D50E80 FC 02 00 32 */ fmul f0, f2, f0
/* 80D50E84 FC 21 00 32 */ fmul f1, f1, f0
/* 80D50E88 FC 20 08 18 */ frsp f1, f1
/* 80D50E8C 48 00 00 88 */ b lbl_80D50F14
lbl_80D50E90:
/* 80D50E90 C8 1F 00 20 */ lfd f0, 0x20(r31)
/* 80D50E94 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D50E98 40 80 00 10 */ bge lbl_80D50EA8
/* 80D50E9C 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D50EA0 C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80D50EA4 48 00 00 70 */ b lbl_80D50F14
lbl_80D50EA8:
/* 80D50EA8 D0 21 00 08 */ stfs f1, 8(r1)
/* 80D50EAC 80 81 00 08 */ lwz r4, 8(r1)
/* 80D50EB0 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80D50EB4 3C 00 7F 80 */ lis r0, 0x7f80
/* 80D50EB8 7C 03 00 00 */ cmpw r3, r0
/* 80D50EBC 41 82 00 14 */ beq lbl_80D50ED0
/* 80D50EC0 40 80 00 40 */ bge lbl_80D50F00
/* 80D50EC4 2C 03 00 00 */ cmpwi r3, 0
/* 80D50EC8 41 82 00 20 */ beq lbl_80D50EE8
/* 80D50ECC 48 00 00 34 */ b lbl_80D50F00
lbl_80D50ED0:
/* 80D50ED0 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D50ED4 41 82 00 0C */ beq lbl_80D50EE0
/* 80D50ED8 38 00 00 01 */ li r0, 1
/* 80D50EDC 48 00 00 28 */ b lbl_80D50F04
lbl_80D50EE0:
/* 80D50EE0 38 00 00 02 */ li r0, 2
/* 80D50EE4 48 00 00 20 */ b lbl_80D50F04
lbl_80D50EE8:
/* 80D50EE8 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D50EEC 41 82 00 0C */ beq lbl_80D50EF8
/* 80D50EF0 38 00 00 05 */ li r0, 5
/* 80D50EF4 48 00 00 10 */ b lbl_80D50F04
lbl_80D50EF8:
/* 80D50EF8 38 00 00 03 */ li r0, 3
/* 80D50EFC 48 00 00 08 */ b lbl_80D50F04
lbl_80D50F00:
/* 80D50F00 38 00 00 04 */ li r0, 4
lbl_80D50F04:
/* 80D50F04 2C 00 00 01 */ cmpwi r0, 1
/* 80D50F08 40 82 00 0C */ bne lbl_80D50F14
/* 80D50F0C 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D50F10 C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80D50F14:
/* 80D50F14 D0 3E 05 A4 */ stfs f1, 0x5a4(r30)
/* 80D50F18 38 00 00 01 */ li r0, 1
/* 80D50F1C 90 1E 05 A0 */ stw r0, 0x5a0(r30)
/* 80D50F20 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 80D50F24 D0 1E 05 7C */ stfs f0, 0x57c(r30)
/* 80D50F28 C0 01 00 30 */ lfs f0, 0x30(r1)
/* 80D50F2C D0 1E 05 80 */ stfs f0, 0x580(r30)
/* 80D50F30 C0 01 00 34 */ lfs f0, 0x34(r1)
/* 80D50F34 D0 1E 05 84 */ stfs f0, 0x584(r30)
lbl_80D50F38:
/* 80D50F38 C0 1E 05 88 */ lfs f0, 0x588(r30)
/* 80D50F3C D0 1E 05 50 */ stfs f0, 0x550(r30)
/* 80D50F40 C0 1E 05 8C */ lfs f0, 0x58c(r30)
/* 80D50F44 D0 1E 05 54 */ stfs f0, 0x554(r30)
/* 80D50F48 C0 1E 05 90 */ lfs f0, 0x590(r30)
/* 80D50F4C D0 1E 05 58 */ stfs f0, 0x558(r30)
/* 80D50F50 80 7E 05 68 */ lwz r3, 0x568(r30)
/* 80D50F54 28 03 00 00 */ cmplwi r3, 0
/* 80D50F58 41 82 00 7C */ beq lbl_80D50FD4
/* 80D50F5C 38 03 00 24 */ addi r0, r3, 0x24
/* 80D50F60 90 1E 05 04 */ stw r0, 0x504(r30)
/* 80D50F64 80 1E 05 68 */ lwz r0, 0x568(r30)
/* 80D50F68 28 00 00 00 */ cmplwi r0, 0
/* 80D50F6C 41 82 00 68 */ beq lbl_80D50FD4
/* 80D50F70 C0 3E 05 2C */ lfs f1, 0x52c(r30)
/* 80D50F74 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80D50F78 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80D50F7C D0 01 00 18 */ stfs f0, 0x18(r1)
/* 80D50F80 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 80D50F84 38 7E 05 88 */ addi r3, r30, 0x588
/* 80D50F88 4B 2B BD DD */ bl transS__14mDoMtx_stack_cFRC4cXyz
/* 80D50F8C 38 7E 05 94 */ addi r3, r30, 0x594
/* 80D50F90 4B 2B BF B5 */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
/* 80D50F94 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80D50F98 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80D50F9C 38 81 00 14 */ addi r4, r1, 0x14
/* 80D50FA0 38 BE 05 88 */ addi r5, r30, 0x588
/* 80D50FA4 4B 5F 5D C9 */ bl PSMTXMultVec
/* 80D50FA8 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80D50FAC 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80D50FB0 80 9E 05 68 */ lwz r4, 0x568(r30)
/* 80D50FB4 38 84 00 24 */ addi r4, r4, 0x24
/* 80D50FB8 4B 5F 54 F9 */ bl PSMTXCopy
/* 80D50FBC C0 1E 05 88 */ lfs f0, 0x588(r30)
/* 80D50FC0 D0 1E 05 50 */ stfs f0, 0x550(r30)
/* 80D50FC4 C0 1E 05 8C */ lfs f0, 0x58c(r30)
/* 80D50FC8 D0 1E 05 54 */ stfs f0, 0x554(r30)
/* 80D50FCC C0 1E 05 90 */ lfs f0, 0x590(r30)
/* 80D50FD0 D0 1E 05 58 */ stfs f0, 0x558(r30)
lbl_80D50FD4:
/* 80D50FD4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D50FD8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D50FDC 3B A3 07 F0 */ addi r29, r3, 0x7f0
/* 80D50FE0 7F A3 EB 78 */ mr r3, r29
/* 80D50FE4 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
/* 80D50FE8 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
/* 80D50FEC A0 84 02 18 */ lhz r4, 0x218(r4)
/* 80D50FF0 4B 2E 39 CD */ bl isEventBit__11dSv_event_cCFUs
/* 80D50FF4 2C 03 00 00 */ cmpwi r3, 0
/* 80D50FF8 41 82 00 18 */ beq lbl_80D51010
/* 80D50FFC 3C 60 80 D5 */ lis r3, d_a_tag_Lv7Gate__stringBase0@ha /* 0x80D51B14@ha */
/* 80D51000 38 63 1B 14 */ addi r3, r3, d_a_tag_Lv7Gate__stringBase0@l /* 0x80D51B14@l */
/* 80D51004 38 03 00 08 */ addi r0, r3, 8
/* 80D51008 90 1E 05 9C */ stw r0, 0x59c(r30)
/* 80D5100C 48 00 01 28 */ b lbl_80D51134
lbl_80D51010:
/* 80D51010 7F A3 EB 78 */ mr r3, r29
/* 80D51014 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
/* 80D51018 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
/* 80D5101C A0 84 03 FC */ lhz r4, 0x3fc(r4)
/* 80D51020 4B 2E 39 9D */ bl isEventBit__11dSv_event_cCFUs
/* 80D51024 2C 03 00 00 */ cmpwi r3, 0
/* 80D51028 41 82 00 48 */ beq lbl_80D51070
/* 80D5102C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D51030 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D51034 38 63 09 58 */ addi r3, r3, 0x958
/* 80D51038 38 80 00 06 */ li r4, 6
/* 80D5103C 4B 2E 38 F9 */ bl isDungeonItem__12dSv_memBit_cCFi
/* 80D51040 2C 03 00 00 */ cmpwi r3, 0
/* 80D51044 41 82 00 18 */ beq lbl_80D5105C
/* 80D51048 3C 60 80 D5 */ lis r3, d_a_tag_Lv7Gate__stringBase0@ha /* 0x80D51B14@ha */
/* 80D5104C 38 63 1B 14 */ addi r3, r3, d_a_tag_Lv7Gate__stringBase0@l /* 0x80D51B14@l */
/* 80D51050 38 03 00 19 */ addi r0, r3, 0x19
/* 80D51054 90 1E 05 9C */ stw r0, 0x59c(r30)
/* 80D51058 48 00 00 DC */ b lbl_80D51134
lbl_80D5105C:
/* 80D5105C 3C 60 80 D5 */ lis r3, d_a_tag_Lv7Gate__stringBase0@ha /* 0x80D51B14@ha */
/* 80D51060 38 63 1B 14 */ addi r3, r3, d_a_tag_Lv7Gate__stringBase0@l /* 0x80D51B14@l */
/* 80D51064 38 03 00 08 */ addi r0, r3, 8
/* 80D51068 90 1E 05 9C */ stw r0, 0x59c(r30)
/* 80D5106C 48 00 00 C8 */ b lbl_80D51134
lbl_80D51070:
/* 80D51070 3C 60 80 D5 */ lis r3, d_a_tag_Lv7Gate__stringBase0@ha /* 0x80D51B14@ha */
/* 80D51074 38 63 1B 14 */ addi r3, r3, d_a_tag_Lv7Gate__stringBase0@l /* 0x80D51B14@l */
/* 80D51078 38 03 00 29 */ addi r0, r3, 0x29
/* 80D5107C 90 1E 05 9C */ stw r0, 0x59c(r30)
/* 80D51080 C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
/* 80D51084 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80D51088 C0 3E 04 D4 */ lfs f1, 0x4d4(r30)
/* 80D5108C D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 80D51090 C0 1E 04 D8 */ lfs f0, 0x4d8(r30)
/* 80D51094 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 80D51098 C0 1F 00 28 */ lfs f0, 0x28(r31)
/* 80D5109C EC 01 00 28 */ fsubs f0, f1, f0
/* 80D510A0 D0 01 00 3C */ stfs f0, 0x3c(r1)
/* 80D510A4 38 61 00 0C */ addi r3, r1, 0xc
/* 80D510A8 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 80D510AC 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 80D510B0 7C 04 07 34 */ extsh r4, r0
/* 80D510B4 38 A0 C0 00 */ li r5, -16384
/* 80D510B8 38 C0 00 00 */ li r6, 0
/* 80D510BC 4B 51 63 39 */ bl __ct__5csXyzFsss
/* 80D510C0 38 60 02 75 */ li r3, 0x275
/* 80D510C4 38 80 00 07 */ li r4, 7
/* 80D510C8 38 A1 00 38 */ addi r5, r1, 0x38
/* 80D510CC 88 1E 04 E2 */ lbz r0, 0x4e2(r30)
/* 80D510D0 7C 06 07 74 */ extsb r6, r0
/* 80D510D4 38 E1 00 0C */ addi r7, r1, 0xc
/* 80D510D8 39 00 00 00 */ li r8, 0
/* 80D510DC 39 20 FF FF */ li r9, -1
/* 80D510E0 4B 2C 8C B9 */ bl fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc
/* 80D510E4 C0 1F 00 2C */ lfs f0, 0x2c(r31)
/* 80D510E8 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80D510EC C0 1F 00 30 */ lfs f0, 0x30(r31)
/* 80D510F0 D0 01 00 3C */ stfs f0, 0x3c(r1)
/* 80D510F4 C0 1F 00 34 */ lfs f0, 0x34(r31)
/* 80D510F8 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 80D510FC 38 60 00 00 */ li r3, 0
/* 80D51100 B0 61 00 0C */ sth r3, 0xc(r1)
/* 80D51104 38 00 C0 00 */ li r0, -16384
/* 80D51108 B0 01 00 0E */ sth r0, 0xe(r1)
/* 80D5110C B0 61 00 10 */ sth r3, 0x10(r1)
/* 80D51110 38 60 02 74 */ li r3, 0x274
/* 80D51114 38 80 00 00 */ li r4, 0
/* 80D51118 38 A1 00 38 */ addi r5, r1, 0x38
/* 80D5111C 88 1E 04 E2 */ lbz r0, 0x4e2(r30)
/* 80D51120 7C 06 07 74 */ extsb r6, r0
/* 80D51124 38 E1 00 0C */ addi r7, r1, 0xc
/* 80D51128 39 00 00 00 */ li r8, 0
/* 80D5112C 39 20 FF FF */ li r9, -1
/* 80D51130 4B 2C 8C 69 */ bl fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc
lbl_80D51134:
/* 80D51134 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D51138 80 03 1B 50 */ lwz r0, l_arcName@l(r3) /* 0x80D51B50@l */
/* 80D5113C 90 1E 01 00 */ stw r0, 0x100(r30)
/* 80D51140 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D51144 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D51148 3B A3 4F F8 */ addi r29, r3, 0x4ff8
/* 80D5114C 7F A3 EB 78 */ mr r3, r29
/* 80D51150 80 9E 01 00 */ lwz r4, 0x100(r30)
/* 80D51154 4B 2F 56 AD */ bl setObjectArchive__16dEvent_manager_cFPc
/* 80D51158 7F A3 EB 78 */ mr r3, r29
/* 80D5115C 7F C4 F3 78 */ mr r4, r30
/* 80D51160 80 BE 05 9C */ lwz r5, 0x59c(r30)
/* 80D51164 38 C0 00 FF */ li r6, 0xff
/* 80D51168 4B 2F 65 F1 */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc
/* 80D5116C B0 7E 05 AE */ sth r3, 0x5ae(r30)
/* 80D51170 7F C3 F3 78 */ mr r3, r30
/* 80D51174 A8 9E 05 AE */ lha r4, 0x5ae(r30)
/* 80D51178 38 A0 00 FF */ li r5, 0xff
/* 80D5117C 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */
/* 80D51180 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */
/* 80D51184 38 E0 00 02 */ li r7, 2
/* 80D51188 39 00 00 01 */ li r8, 1
/* 80D5118C 4B 2C A4 F1 */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs
/* 80D51190 39 61 00 60 */ addi r11, r1, 0x60
/* 80D51194 4B 61 10 95 */ bl _restgpr_29
/* 80D51198 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80D5119C 7C 08 03 A6 */ mtlr r0
/* 80D511A0 38 21 00 60 */ addi r1, r1, 0x60
/* 80D511A4 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D50C44:
/* 80D50C44 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D50C48 7C 08 02 A6 */ mflr r0
/* 80D50C4C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D50C50 48 00 00 15 */ bl create__14daTagLv7Gate_cFv
/* 80D50C54 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D50C58 7C 08 03 A6 */ mtlr r0
/* 80D50C5C 38 21 00 10 */ addi r1, r1, 0x10
/* 80D50C60 4E 80 00 20 */ blr

View File

@ -1,29 +0,0 @@
lbl_80D51A60:
/* 80D51A60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D51A64 7C 08 02 A6 */ mflr r0
/* 80D51A68 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D51A6C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D51A70 7C 7F 1B 79 */ or. r31, r3, r3
/* 80D51A74 41 82 00 40 */ beq lbl_80D51AB4
/* 80D51A78 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D51A7C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D51A80 38 63 07 F0 */ addi r3, r3, 0x7f0
/* 80D51A84 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
/* 80D51A88 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
/* 80D51A8C A0 84 03 FC */ lhz r4, 0x3fc(r4)
/* 80D51A90 4B 2E 2E FD */ bl onEventBit__11dSv_event_cFUs
/* 80D51A94 38 7F 05 74 */ addi r3, r31, 0x574
/* 80D51A98 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D51B50@ha */
/* 80D51A9C 38 84 1B 50 */ addi r4, r4, l_arcName@l /* 0x80D51B50@l */
/* 80D51AA0 80 84 00 00 */ lwz r4, 0(r4)
/* 80D51AA4 4B 2D B5 65 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc
/* 80D51AA8 7F E3 FB 78 */ mr r3, r31
/* 80D51AAC 38 80 00 00 */ li r4, 0
/* 80D51AB0 4B 2C 71 DD */ bl __dt__10fopAc_ac_cFv
lbl_80D51AB4:
/* 80D51AB4 38 60 00 01 */ li r3, 1
/* 80D51AB8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D51ABC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D51AC0 7C 08 03 A6 */ mtlr r0
/* 80D51AC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80D51AC8 4E 80 00 20 */ blr

View File

@ -1,41 +0,0 @@
lbl_80D519BC:
/* 80D519BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D519C0 7C 08 02 A6 */ mflr r0
/* 80D519C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D519C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D519CC 7C 7F 1B 78 */ mr r31, r3
/* 80D519D0 88 03 05 B1 */ lbz r0, 0x5b1(r3)
/* 80D519D4 28 00 00 00 */ cmplwi r0, 0
/* 80D519D8 41 82 00 68 */ beq lbl_80D51A40
/* 80D519DC 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80D519E0 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80D519E4 38 80 00 00 */ li r4, 0
/* 80D519E8 38 BF 05 88 */ addi r5, r31, 0x588
/* 80D519EC 38 DF 01 0C */ addi r6, r31, 0x10c
/* 80D519F0 4B 45 1D D5 */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c
/* 80D519F4 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
/* 80D519F8 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
/* 80D519FC 80 9F 05 68 */ lwz r4, 0x568(r31)
/* 80D51A00 80 84 00 04 */ lwz r4, 4(r4)
/* 80D51A04 38 BF 01 0C */ addi r5, r31, 0x10c
/* 80D51A08 4B 45 33 99 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c
/* 80D51A0C 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 80D51A10 80 83 00 04 */ lwz r4, 4(r3)
/* 80D51A14 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D51A18 C0 23 00 10 */ lfs f1, 0x10(r3)
/* 80D51A1C 4B 2B BF B1 */ bl entry__13mDoExt_bckAnmFP12J3DModelDataf
/* 80D51A20 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 80D51A24 4B 2B C2 A1 */ bl mDoExt_modelUpdateDL__FP8J3DModel
/* 80D51A28 80 7F 05 68 */ lwz r3, 0x568(r31)
/* 80D51A2C 80 63 00 04 */ lwz r3, 4(r3)
/* 80D51A30 80 63 00 28 */ lwz r3, 0x28(r3)
/* 80D51A34 80 63 00 00 */ lwz r3, 0(r3)
/* 80D51A38 38 00 00 00 */ li r0, 0
/* 80D51A3C 90 03 00 54 */ stw r0, 0x54(r3)
lbl_80D51A40:
/* 80D51A40 38 60 00 01 */ li r3, 1
/* 80D51A44 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D51A48 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D51A4C 7C 08 03 A6 */ mtlr r0
/* 80D51A50 38 21 00 10 */ addi r1, r1, 0x10
/* 80D51A54 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D511A8:
/* 80D511A8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D511AC 7C 08 02 A6 */ mflr r0
/* 80D511B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D511B4 48 00 00 15 */ bl execute__14daTagLv7Gate_cFv
/* 80D511B8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D511BC 7C 08 03 A6 */ mtlr r0
/* 80D511C0 38 21 00 10 */ addi r1, r1, 0x10
/* 80D511C4 4E 80 00 20 */ blr

View File

@ -1,297 +0,0 @@
lbl_80D511C8:
/* 80D511C8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80D511CC 7C 08 02 A6 */ mflr r0
/* 80D511D0 90 01 00 44 */ stw r0, 0x44(r1)
/* 80D511D4 39 61 00 40 */ addi r11, r1, 0x40
/* 80D511D8 4B 61 0F ED */ bl _savegpr_23
/* 80D511DC 7C 7F 1B 78 */ mr r31, r3
/* 80D511E0 3C 60 80 D5 */ lis r3, lit_3698@ha /* 0x80D51AD4@ha */
/* 80D511E4 3B A3 1A D4 */ addi r29, r3, lit_3698@l /* 0x80D51AD4@l */
/* 80D511E8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D511EC 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D511F0 88 1E 4F AD */ lbz r0, 0x4fad(r30)
/* 80D511F4 28 00 00 00 */ cmplwi r0, 0
/* 80D511F8 41 82 01 8C */ beq lbl_80D51384
/* 80D511FC A0 1F 00 F8 */ lhz r0, 0xf8(r31)
/* 80D51200 28 00 00 01 */ cmplwi r0, 1
/* 80D51204 41 82 01 80 */ beq lbl_80D51384
/* 80D51208 3B 5E 4F F8 */ addi r26, r30, 0x4ff8
/* 80D5120C 7F 43 D3 78 */ mr r3, r26
/* 80D51210 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D51B50@ha */
/* 80D51214 38 84 1B 50 */ addi r4, r4, l_arcName@l /* 0x80D51B50@l */
/* 80D51218 80 84 00 00 */ lwz r4, 0(r4)
/* 80D5121C 38 A0 00 00 */ li r5, 0
/* 80D51220 38 C0 00 00 */ li r6, 0
/* 80D51224 4B 2F 68 F9 */ bl getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci
/* 80D51228 7C 77 1B 78 */ mr r23, r3
/* 80D5122C 2C 17 FF FF */ cmpwi r23, -1
/* 80D51230 41 82 01 C8 */ beq lbl_80D513F8
/* 80D51234 7F 43 D3 78 */ mr r3, r26
/* 80D51238 7E F9 BB 78 */ mr r25, r23
/* 80D5123C 7E E4 BB 78 */ mr r4, r23
/* 80D51240 4B 2F 6D 1D */ bl getMyNowCutName__16dEvent_manager_cFi
/* 80D51244 7C 78 1B 78 */ mr r24, r3
/* 80D51248 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5124C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D51250 80 63 5D AC */ lwz r3, 0x5dac(r3)
/* 80D51254 80 03 05 8C */ lwz r0, 0x58c(r3)
/* 80D51258 64 00 80 00 */ oris r0, r0, 0x8000
/* 80D5125C 90 03 05 8C */ stw r0, 0x58c(r3)
/* 80D51260 7F 43 D3 78 */ mr r3, r26
/* 80D51264 7E E4 BB 78 */ mr r4, r23
/* 80D51268 4B 2F 6A E5 */ bl getIsAddvance__16dEvent_manager_cFi
/* 80D5126C 2C 03 00 00 */ cmpwi r3, 0
/* 80D51270 41 82 00 34 */ beq lbl_80D512A4
/* 80D51274 80 98 00 00 */ lwz r4, 0(r24)
/* 80D51278 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303032@ha */
/* 80D5127C 38 03 30 32 */ addi r0, r3, 0x3032 /* 0x30303032@l */
/* 80D51280 7C 04 00 00 */ cmpw r4, r0
/* 80D51284 41 82 00 10 */ beq lbl_80D51294
/* 80D51288 40 80 00 1C */ bge lbl_80D512A4
/* 80D5128C 48 00 00 18 */ b lbl_80D512A4
/* 80D51290 48 00 00 14 */ b lbl_80D512A4
lbl_80D51294:
/* 80D51294 38 00 00 01 */ li r0, 1
/* 80D51298 98 1F 05 B1 */ stb r0, 0x5b1(r31)
/* 80D5129C C0 1D 00 38 */ lfs f0, 0x38(r29)
/* 80D512A0 D0 1F 05 2C */ stfs f0, 0x52c(r31)
lbl_80D512A4:
/* 80D512A4 80 98 00 00 */ lwz r4, 0(r24)
/* 80D512A8 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303032@ha */
/* 80D512AC 38 03 30 32 */ addi r0, r3, 0x3032 /* 0x30303032@l */
/* 80D512B0 7C 04 00 00 */ cmpw r4, r0
/* 80D512B4 41 82 00 2C */ beq lbl_80D512E0
/* 80D512B8 40 80 00 80 */ bge lbl_80D51338
/* 80D512BC 38 03 30 31 */ addi r0, r3, 0x3031
/* 80D512C0 7C 04 00 00 */ cmpw r4, r0
/* 80D512C4 40 80 00 0C */ bge lbl_80D512D0
/* 80D512C8 48 00 00 70 */ b lbl_80D51338
/* 80D512CC 48 00 00 6C */ b lbl_80D51338
lbl_80D512D0:
/* 80D512D0 7F 43 D3 78 */ mr r3, r26
/* 80D512D4 7F 24 CB 78 */ mr r4, r25
/* 80D512D8 4B 2F 6E A5 */ bl cutEnd__16dEvent_manager_cFi
/* 80D512DC 48 00 00 5C */ b lbl_80D51338
lbl_80D512E0:
/* 80D512E0 3C 60 00 07 */ lis r3, 0x0007 /* 0x000705B7@ha */
/* 80D512E4 38 03 05 B7 */ addi r0, r3, 0x05B7 /* 0x000705B7@l */
/* 80D512E8 90 01 00 08 */ stw r0, 8(r1)
/* 80D512EC 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D512F0 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D512F4 80 63 00 00 */ lwz r3, 0(r3)
/* 80D512F8 38 81 00 08 */ addi r4, r1, 8
/* 80D512FC 38 BF 05 88 */ addi r5, r31, 0x588
/* 80D51300 38 C0 00 00 */ li r6, 0
/* 80D51304 38 E0 00 00 */ li r7, 0
/* 80D51308 C0 3D 00 00 */ lfs f1, 0(r29)
/* 80D5130C FC 40 08 90 */ fmr f2, f1
/* 80D51310 C0 7D 00 3C */ lfs f3, 0x3c(r29)
/* 80D51314 FC 80 18 90 */ fmr f4, f3
/* 80D51318 39 00 00 00 */ li r8, 0
/* 80D5131C 4B 55 B1 F1 */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80D51320 88 1F 05 B1 */ lbz r0, 0x5b1(r31)
/* 80D51324 28 00 00 00 */ cmplwi r0, 0
/* 80D51328 40 82 00 10 */ bne lbl_80D51338
/* 80D5132C 7F 43 D3 78 */ mr r3, r26
/* 80D51330 7F 24 CB 78 */ mr r4, r25
/* 80D51334 4B 2F 6E 49 */ bl cutEnd__16dEvent_manager_cFi
lbl_80D51338:
/* 80D51338 A0 1F 00 F8 */ lhz r0, 0xf8(r31)
/* 80D5133C 28 00 00 02 */ cmplwi r0, 2
/* 80D51340 40 82 00 38 */ bne lbl_80D51378
/* 80D51344 A8 9F 05 AE */ lha r4, 0x5ae(r31)
/* 80D51348 2C 04 FF FF */ cmpwi r4, -1
/* 80D5134C 41 82 00 2C */ beq lbl_80D51378
/* 80D51350 7F 43 D3 78 */ mr r3, r26
/* 80D51354 4B 2F 67 25 */ bl endCheck__16dEvent_manager_cFs
/* 80D51358 2C 03 00 00 */ cmpwi r3, 0
/* 80D5135C 41 82 00 1C */ beq lbl_80D51378
/* 80D51360 38 7E 4E C8 */ addi r3, r30, 0x4ec8
/* 80D51364 4B 2F 11 05 */ bl reset__14dEvt_control_cFv
/* 80D51368 38 00 FF FF */ li r0, -1
/* 80D5136C B0 1F 05 AE */ sth r0, 0x5ae(r31)
/* 80D51370 7F E3 FB 78 */ mr r3, r31
/* 80D51374 4B 2C 89 09 */ bl fopAcM_delete__FP10fopAc_ac_c
lbl_80D51378:
/* 80D51378 38 00 00 01 */ li r0, 1
/* 80D5137C 98 1F 05 B0 */ stb r0, 0x5b0(r31)
/* 80D51380 48 00 00 78 */ b lbl_80D513F8
lbl_80D51384:
/* 80D51384 88 1F 05 B0 */ lbz r0, 0x5b0(r31)
/* 80D51388 28 00 00 00 */ cmplwi r0, 0
/* 80D5138C 40 82 00 64 */ bne lbl_80D513F0
/* 80D51390 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D51394 80 03 1B 50 */ lwz r0, l_arcName@l(r3) /* 0x80D51B50@l */
/* 80D51398 90 1F 01 00 */ stw r0, 0x100(r31)
/* 80D5139C 3A FE 4F F8 */ addi r23, r30, 0x4ff8
/* 80D513A0 7E E3 BB 78 */ mr r3, r23
/* 80D513A4 80 9F 01 00 */ lwz r4, 0x100(r31)
/* 80D513A8 4B 2F 54 59 */ bl setObjectArchive__16dEvent_manager_cFPc
/* 80D513AC 7E E3 BB 78 */ mr r3, r23
/* 80D513B0 7F E4 FB 78 */ mr r4, r31
/* 80D513B4 80 BF 05 9C */ lwz r5, 0x59c(r31)
/* 80D513B8 38 C0 00 FF */ li r6, 0xff
/* 80D513BC 4B 2F 63 9D */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc
/* 80D513C0 B0 7F 05 AE */ sth r3, 0x5ae(r31)
/* 80D513C4 7F E3 FB 78 */ mr r3, r31
/* 80D513C8 A8 9F 05 AE */ lha r4, 0x5ae(r31)
/* 80D513CC 38 A0 00 FF */ li r5, 0xff
/* 80D513D0 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */
/* 80D513D4 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */
/* 80D513D8 38 E0 00 00 */ li r7, 0
/* 80D513DC 39 00 00 01 */ li r8, 1
/* 80D513E0 4B 2C A2 9D */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs
/* 80D513E4 38 00 00 01 */ li r0, 1
/* 80D513E8 98 1F 05 B0 */ stb r0, 0x5b0(r31)
/* 80D513EC 48 00 00 0C */ b lbl_80D513F8
lbl_80D513F0:
/* 80D513F0 7F E3 FB 78 */ mr r3, r31
/* 80D513F4 4B 2C 88 89 */ bl fopAcM_delete__FP10fopAc_ac_c
lbl_80D513F8:
/* 80D513F8 88 1F 05 B1 */ lbz r0, 0x5b1(r31)
/* 80D513FC 28 00 00 00 */ cmplwi r0, 0
/* 80D51400 41 82 02 0C */ beq lbl_80D5160C
/* 80D51404 7F E3 FB 78 */ mr r3, r31
/* 80D51408 48 00 02 21 */ bl calcFly__14daTagLv7Gate_cFv
/* 80D5140C 3B 40 00 00 */ li r26, 0
/* 80D51410 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D51414 83 23 00 14 */ lwz r25, 0x14(r3)
/* 80D51418 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D5141C 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D51420 80 63 00 00 */ lwz r3, 0(r3)
/* 80D51424 38 80 00 05 */ li r4, 5
/* 80D51428 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5142C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D51430 3F 05 00 02 */ addis r24, r5, 2
/* 80D51434 3B 18 C2 F8 */ addi r24, r24, -15624
/* 80D51438 7F 05 C3 78 */ mr r5, r24
/* 80D5143C 38 C0 00 80 */ li r6, 0x80
/* 80D51440 4B 2E AE AD */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D51444 7C 7B 1B 78 */ mr r27, r3
/* 80D51448 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D5144C 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D51450 80 63 00 00 */ lwz r3, 0(r3)
/* 80D51454 38 80 00 06 */ li r4, 6
/* 80D51458 7F 05 C3 78 */ mr r5, r24
/* 80D5145C 38 C0 00 80 */ li r6, 0x80
/* 80D51460 4B 2E AE 8D */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D51464 7C 7C 1B 78 */ mr r28, r3
/* 80D51468 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D5146C 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D51470 80 63 00 00 */ lwz r3, 0(r3)
/* 80D51474 38 80 00 07 */ li r4, 7
/* 80D51478 7F 05 C3 78 */ mr r5, r24
/* 80D5147C 38 C0 00 80 */ li r6, 0x80
/* 80D51480 4B 2E AE 6D */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D51484 7C 7E 1B 78 */ mr r30, r3
/* 80D51488 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D51B50@ha */
/* 80D5148C 38 63 1B 50 */ addi r3, r3, l_arcName@l /* 0x80D51B50@l */
/* 80D51490 80 63 00 00 */ lwz r3, 0(r3)
/* 80D51494 38 80 00 08 */ li r4, 8
/* 80D51498 7F 05 C3 78 */ mr r5, r24
/* 80D5149C 38 C0 00 80 */ li r6, 0x80
/* 80D514A0 4B 2E AE 4D */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci
/* 80D514A4 7C 77 1B 78 */ mr r23, r3
/* 80D514A8 3B 00 00 02 */ li r24, 2
/* 80D514AC 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D514B0 C0 03 00 10 */ lfs f0, 0x10(r3)
/* 80D514B4 D0 1F 05 A8 */ stfs f0, 0x5a8(r31)
/* 80D514B8 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D514BC 4B 2B BF 6D */ bl play__14mDoExt_baseAnmFv
/* 80D514C0 7C 19 F0 40 */ cmplw r25, r30
/* 80D514C4 40 82 00 30 */ bne lbl_80D514F4
/* 80D514C8 A0 7F 05 AC */ lhz r3, 0x5ac(r31)
/* 80D514CC 28 03 00 96 */ cmplwi r3, 0x96
/* 80D514D0 40 80 00 A0 */ bge lbl_80D51570
/* 80D514D4 38 03 00 01 */ addi r0, r3, 1
/* 80D514D8 B0 1F 05 AC */ sth r0, 0x5ac(r31)
/* 80D514DC A0 1F 05 AC */ lhz r0, 0x5ac(r31)
/* 80D514E0 28 00 00 96 */ cmplwi r0, 0x96
/* 80D514E4 41 80 00 8C */ blt lbl_80D51570
/* 80D514E8 7E FA BB 78 */ mr r26, r23
/* 80D514EC 3B 00 00 00 */ li r24, 0
/* 80D514F0 48 00 00 80 */ b lbl_80D51570
lbl_80D514F4:
/* 80D514F4 7C 19 D8 40 */ cmplw r25, r27
/* 80D514F8 40 82 00 24 */ bne lbl_80D5151C
/* 80D514FC 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D51500 C0 23 00 10 */ lfs f1, 0x10(r3)
/* 80D51504 C0 1F 05 A8 */ lfs f0, 0x5a8(r31)
/* 80D51508 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80D5150C 40 81 00 64 */ ble lbl_80D51570
/* 80D51510 7F 9A E3 78 */ mr r26, r28
/* 80D51514 3B 00 00 00 */ li r24, 0
/* 80D51518 48 00 00 58 */ b lbl_80D51570
lbl_80D5151C:
/* 80D5151C 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D51520 38 80 00 01 */ li r4, 1
/* 80D51524 88 03 00 05 */ lbz r0, 5(r3)
/* 80D51528 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80D5152C 40 82 00 18 */ bne lbl_80D51544
/* 80D51530 C0 3D 00 08 */ lfs f1, 8(r29)
/* 80D51534 C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80D51538 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 80D5153C 41 82 00 08 */ beq lbl_80D51544
/* 80D51540 38 80 00 00 */ li r4, 0
lbl_80D51544:
/* 80D51544 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 80D51548 41 82 00 28 */ beq lbl_80D51570
/* 80D5154C 7C 19 E0 40 */ cmplw r25, r28
/* 80D51550 40 82 00 10 */ bne lbl_80D51560
/* 80D51554 7F DA F3 78 */ mr r26, r30
/* 80D51558 3B 00 00 02 */ li r24, 2
/* 80D5155C 48 00 00 14 */ b lbl_80D51570
lbl_80D51560:
/* 80D51560 7C 19 B8 40 */ cmplw r25, r23
/* 80D51564 40 82 00 0C */ bne lbl_80D51570
/* 80D51568 7F 7A DB 78 */ mr r26, r27
/* 80D5156C 3B 00 00 02 */ li r24, 2
lbl_80D51570:
/* 80D51570 28 1A 00 00 */ cmplwi r26, 0
/* 80D51574 41 82 00 28 */ beq lbl_80D5159C
/* 80D51578 80 7F 05 6C */ lwz r3, 0x56c(r31)
/* 80D5157C 7F 44 D3 78 */ mr r4, r26
/* 80D51580 38 A0 00 01 */ li r5, 1
/* 80D51584 7F 06 C3 78 */ mr r6, r24
/* 80D51588 C0 3D 00 00 */ lfs f1, 0(r29)
/* 80D5158C 38 E0 00 00 */ li r7, 0
/* 80D51590 39 00 FF FF */ li r8, -1
/* 80D51594 39 20 00 01 */ li r9, 1
/* 80D51598 4B 2B C2 45 */ bl init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb
lbl_80D5159C:
/* 80D5159C 80 1F 05 68 */ lwz r0, 0x568(r31)
/* 80D515A0 28 00 00 00 */ cmplwi r0, 0
/* 80D515A4 41 82 00 68 */ beq lbl_80D5160C
/* 80D515A8 C0 3F 05 2C */ lfs f1, 0x52c(r31)
/* 80D515AC C0 1D 00 08 */ lfs f0, 8(r29)
/* 80D515B0 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80D515B4 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80D515B8 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 80D515BC 38 7F 05 88 */ addi r3, r31, 0x588
/* 80D515C0 4B 2B B7 A5 */ bl transS__14mDoMtx_stack_cFRC4cXyz
/* 80D515C4 38 7F 05 94 */ addi r3, r31, 0x594
/* 80D515C8 4B 2B B9 7D */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz
/* 80D515CC 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80D515D0 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80D515D4 38 81 00 0C */ addi r4, r1, 0xc
/* 80D515D8 38 BF 05 88 */ addi r5, r31, 0x588
/* 80D515DC 4B 5F 57 91 */ bl PSMTXMultVec
/* 80D515E0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
/* 80D515E4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
/* 80D515E8 80 9F 05 68 */ lwz r4, 0x568(r31)
/* 80D515EC 38 84 00 24 */ addi r4, r4, 0x24
/* 80D515F0 4B 5F 4E C1 */ bl PSMTXCopy
/* 80D515F4 C0 1F 05 88 */ lfs f0, 0x588(r31)
/* 80D515F8 D0 1F 05 50 */ stfs f0, 0x550(r31)
/* 80D515FC C0 1F 05 8C */ lfs f0, 0x58c(r31)
/* 80D51600 D0 1F 05 54 */ stfs f0, 0x554(r31)
/* 80D51604 C0 1F 05 90 */ lfs f0, 0x590(r31)
/* 80D51608 D0 1F 05 58 */ stfs f0, 0x558(r31)
lbl_80D5160C:
/* 80D5160C 38 60 00 01 */ li r3, 1
/* 80D51610 39 61 00 40 */ addi r11, r1, 0x40
/* 80D51614 4B 61 0B FD */ bl _restgpr_23
/* 80D51618 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80D5161C 7C 08 03 A6 */ mtlr r0
/* 80D51620 38 21 00 40 */ addi r1, r1, 0x40
/* 80D51624 4E 80 00 20 */ blr

View File

@ -726,6 +726,7 @@ public:
void onForceAutoJump() { i_onEndResetFlg0(ERFLG0_FORCE_AUTO_JUMP); }
void onNotAutoJump() { i_onEndResetFlg0(ERFLG0_NOT_AUTO_JUMP); }
void onNotHang() { i_onEndResetFlg0(ERFLG0_NOT_HANG); }
void onShieldBackBone() { i_onEndResetFlg1(ERFLG1_GANON_FINISH); }
void onFogFade() { i_onNoResetFlg2(FLG2_UNK_4000); }
void offGoronSideMove() {

View File

@ -1,6 +1,45 @@
#ifndef D_A_TAG_LV7GATE_H
#define D_A_TAG_LV7GATE_H
#include "dolphin/types.h"
#include "d/com/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
class daTagLv7Gate_c : public fopAc_ac_c {
public:
inline ~daTagLv7Gate_c();
/* 80D50C64 */ int create();
/* 80D50D30 */ void create_init();
/* 80D511C8 */ int execute();
/* 80D51628 */ void calcFly();
inline int createHeap();
inline void setPath(u8 i_path_ID);
inline void initBaseMtx();
inline void setBaseMtx();
inline void flyAnime();
inline bool checkPoint(f32 i_speed);
inline bool setNextPoint();
inline int draw();
u8 getPathID() { return (fopAcM_GetParam(this) >> 0x10); }
u16 getFlowNodeNo() { return fopAcM_GetParam(this); }
/* 0X568 */ J3DModel* mpModel;
/* 0X56C */ mDoExt_bckAnm* mpBck;
/* 0X570 */ dPath* mRoomPath;
/* 0X574 */ request_of_phase_process_class mPhase;
/* 0X57C */ cXyz mPos2;
/* 0X588 */ cXyz mPos1;
/* 0X594 */ csXyz field_0x594;
/* 0X59C */ char* mEvName;
/* 0X5A0 */ int field_0x5a0;
/* 0X5A4 */ f32 mDistance;
/* 0X5A8 */ f32 mLastFrame;
/* 0X5AC */ u16 field_0x5ac;
/* 0X5AE */ s16 mEvtId;
/* 0X5B0 */ bool field_0x5b0;
/* 0X5B1 */ bool field_0x5b1;
}; // Size: 0x5B4
#endif /* D_A_TAG_LV7GATE_H */

View File

@ -1,445 +1,400 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_tag_Lv7Gate
// d_a_tag_Lv7Gate.cpp
// City in the Sky Gate
//
#include "rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h"
#include "dol2asm.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct csXyz {
/* 802673F4 */ csXyz(s16, s16, s16);
};
struct cXyz {};
struct mDoMtx_stack_c {
/* 8000CD64 */ void transS(cXyz const&);
/* 8000CF44 */ void ZXYrotM(csXyz const&);
static u8 now[48];
};
struct J3DModelData {};
struct J3DAnmTransform {};
struct mDoExt_bckAnm {
/* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool);
/* 8000D9CC */ void entry(J3DModelData*, f32);
};
struct mDoExt_baseAnm {
/* 8000D428 */ void play();
};
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
/* 80018C8C */ ~fopAc_ac_c();
};
struct daTagLv7Gate_c {
/* 80D50C64 */ void create();
/* 80D50D30 */ void create_init();
/* 80D511C8 */ void execute();
/* 80D51628 */ void calcFly();
};
struct dSv_memBit_c {
/* 80034934 */ void isDungeonItem(int) const;
};
struct dSv_event_flag_c {
static u8 saveBitLabels[1644 + 4 /* padding */];
};
struct dSv_event_c {
/* 8003498C */ void onEventBit(u16);
/* 800349BC */ void isEventBit(u16) const;
};
struct dKy_tevstr_c {};
struct dScnKy_env_light_c {
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
};
struct dRes_info_c {};
struct dRes_control_c {
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
};
struct dPath {};
struct dEvt_control_c {
/* 80042468 */ void reset();
};
struct dEvent_manager_c {
/* 80046800 */ void setObjectArchive(char*);
/* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8);
/* 80047A78 */ void endCheck(s16);
/* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int);
/* 80047D4C */ void getIsAddvance(int);
/* 80047F5C */ void getMyNowCutName(int);
/* 8004817C */ void cutEnd(int);
};
struct JAISoundID {};
struct Vec {};
struct Z2SeMgr {
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
struct J3DModel {};
struct J3DFrameCtrl {
/* 803283FC */ void init(s16);
/* 80D50BFC */ ~J3DFrameCtrl();
};
//
// Forward References:
//
extern "C" static void createSolidHeap__FP10fopAc_ac_c();
extern "C" void __dt__12J3DFrameCtrlFv();
extern "C" static void daTagLv7Gate_Create__FP10fopAc_ac_c();
extern "C" void create__14daTagLv7Gate_cFv();
extern "C" void create_init__14daTagLv7Gate_cFv();
extern "C" static void daTagLv7Gate_Execute__FP14daTagLv7Gate_c();
extern "C" void execute__14daTagLv7Gate_cFv();
extern "C" void calcFly__14daTagLv7Gate_cFv();
extern "C" static void daTagLv7Gate_Draw__FP14daTagLv7Gate_c();
extern "C" static bool daTagLv7Gate_IsDelete__FP14daTagLv7Gate_c();
extern "C" static void daTagLv7Gate_Delete__FP14daTagLv7Gate_c();
extern "C" extern char const* const d_a_tag_Lv7Gate__stringBase0;
//
// External References:
//
extern "C" void transS__14mDoMtx_stack_cFRC4cXyz();
extern "C" void ZXYrotM__14mDoMtx_stack_cFRC5csXyz();
extern "C" void play__14mDoExt_baseAnmFv();
extern "C" void init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb();
extern "C" void entry__13mDoExt_bckAnmFP12J3DModelDataf();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
extern "C" void fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc();
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void isDungeonItem__12dSv_memBit_cCFi();
extern "C" void onEventBit__11dSv_event_cFUs();
extern "C" void isEventBit__11dSv_event_cCFUs();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void reset__14dEvt_control_cFv();
extern "C" void setObjectArchive__16dEvent_manager_cFPc();
extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc();
extern "C" void endCheck__16dEvent_manager_cFs();
extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci();
extern "C" void getIsAddvance__16dEvent_manager_cFi();
extern "C" void getMyNowCutName__16dEvent_manager_cFi();
extern "C" void cutEnd__16dEvent_manager_cFi();
extern "C" void dPath_GetPnt__FPC5dPathi();
extern "C" void dPath_GetRoomPath__Fii();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void __ct__5csXyzFsss();
extern "C" void cLib_addCalcAngleS2__FPssss();
extern "C" void cLib_targetAngleY__FPC3VecPC3Vec();
extern "C" void cLib_targetAngleX__FPC4cXyzPC4cXyz();
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void* __nw__FUl();
extern "C" void __dl__FPv();
extern "C" void init__12J3DFrameCtrlFs();
extern "C" void PSMTXCopy();
extern "C" void PSMTXMultVec();
extern "C" void PSVECSquareDistance();
extern "C" void _savegpr_23();
extern "C" void _savegpr_29();
extern "C" void _restgpr_23();
extern "C" void _restgpr_29();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_env_light[4880];
extern "C" extern u32 __float_nan;
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
//
// Declarations:
//
/* ############################################################################################## */
/* 80D51AD4-80D51AD8 000000 0004+00 4/4 0/0 0/0 .rodata @3698 */
SECTION_RODATA static f32 const lit_3698 = 1.0f;
COMPILER_STRIP_GATE(0x80D51AD4, &lit_3698);
/* 80D51B14-80D51B14 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80D51B14 = "Lv7Gate";
#pragma pop
#include "JSystem/JKernel/JKRHeap.h"
#include "d/a/d_a_player.h"
#include "d/d_path.h"
#include "d/d_procname.h"
/* 80D51B50-80D51B54 -00001 0004+00 5/5 0/0 0/0 .data l_arcName */
SECTION_DATA static void* l_arcName = (void*)&d_a_tag_Lv7Gate__stringBase0;
static char* l_arcName = "Lv7Gate";
/* 80D51B54-80D51B74 -00001 0020+00 1/0 0/0 0/0 .data l_daTagLv7Gate_Method */
SECTION_DATA static void* l_daTagLv7Gate_Method[8] = {
(void*)daTagLv7Gate_Create__FP10fopAc_ac_c,
(void*)daTagLv7Gate_Delete__FP14daTagLv7Gate_c,
(void*)daTagLv7Gate_Execute__FP14daTagLv7Gate_c,
(void*)daTagLv7Gate_IsDelete__FP14daTagLv7Gate_c,
(void*)daTagLv7Gate_Draw__FP14daTagLv7Gate_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
inline int daTagLv7Gate_c::createHeap() {
// Watched City in the Sky start cutscene
if (i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[510])) {
return 1;
}
/* 80D51B74-80D51BA4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv7Gate */
SECTION_DATA extern void* g_profile_Tag_Lv7Gate[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x02CA0000, (void*)&g_fpcLf_Method,
(void*)0x000005B4, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x01070000, (void*)&l_daTagLv7Gate_Method,
(void*)0x00040000, (void*)0x000E0000,
};
J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 11);
mpModel = mDoExt_J3DModel__create(model_data, 0, 0x11000084);
/* 80D51BA4-80D51BB0 000054 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */
SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__12J3DFrameCtrlFv,
};
if (mpModel == NULL) {
return 0;
}
J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 7);
mpBck = new mDoExt_bckAnm();
if (mpBck == NULL || !mpBck->init(bck, TRUE, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f, 0, -1, false)) {
return 0;
}
return 1;
}
/* 80D50AB8-80D50BFC 000078 0144+00 1/1 0/0 0/0 .text createSolidHeap__FP10fopAc_ac_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void createSolidHeap(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/createSolidHeap__FP10fopAc_ac_c.s"
static int createSolidHeap(fopAc_ac_c* i_this) {
return static_cast<daTagLv7Gate_c*>(i_this)->createHeap();
}
#pragma pop
/* 80D50BFC-80D50C44 0001BC 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J3DFrameCtrl::~J3DFrameCtrl() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/__dt__12J3DFrameCtrlFv.s"
}
#pragma pop
/* 80D50C44-80D50C64 000204 0020+00 1/0 0/0 0/0 .text daTagLv7Gate_Create__FP10fopAc_ac_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagLv7Gate_Create(fopAc_ac_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/daTagLv7Gate_Create__FP10fopAc_ac_c.s"
static int daTagLv7Gate_Create(fopAc_ac_c* i_this) {
return static_cast<daTagLv7Gate_c*>(i_this)->create();
}
#pragma pop
/* ############################################################################################## */
/* 80D51AD8-80D51ADC 000004 0004+00 1/1 0/0 0/0 .rodata @3829 */
SECTION_RODATA static f32 const lit_3829 = 7500.0f;
COMPILER_STRIP_GATE(0x80D51AD8, &lit_3829);
/* 80D50C64-80D50D30 000224 00CC+00 1/1 0/0 0/0 .text create__14daTagLv7Gate_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagLv7Gate_c::create() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/create__14daTagLv7Gate_cFv.s"
int daTagLv7Gate_c::create() {
int phase;
fopAcM_SetupActor(this, daTagLv7Gate_c);
if (fopAcM_GetPosition_p(daPy_getPlayerActorClass()).y < 7500.0f) {
return cPhs_ERROR_e;
} else {
phase = dComIfG_resLoad(&mPhase, l_arcName);
if (phase == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, createSolidHeap, 0x5340)) {
return cPhs_ERROR_e;
} else {
create_init();
}
}
}
return phase;
}
#pragma pop
/* ############################################################################################## */
/* 80D51ADC-80D51AE4 000008 0004+04 0/2 0/0 0/0 .rodata @3935 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3935[4 + 4 /* padding */] = {
0x00,
0x00,
0x00,
0x00,
/* padding */
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80D51ADC, &lit_3935);
#pragma pop
inline void daTagLv7Gate_c::setPath(u8 i_path_ID) {
mRoomPath = dPath_GetRoomPath(i_path_ID, fopAcM_GetRoomNo(this));
if (mRoomPath != NULL) {
dStage_dPnt_c* pnt = dPath_GetPnt(mRoomPath, 0);
cXyz pos1 = pnt->m_position;
/* 80D51AE4-80D51AEC 000010 0008+00 0/2 0/0 0/0 .rodata @3936 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3936[8] = {
0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D51AE4, &lit_3936);
#pragma pop
pnt = dPath_GetPnt(mRoomPath, 1);
cXyz pos2 = pnt->m_position;
/* 80D51AEC-80D51AF4 000018 0008+00 0/2 0/0 0/0 .rodata @3937 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3937[8] = {
0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D51AEC, &lit_3937);
#pragma pop
mPos1 = pos1;
/* 80D51AF4-80D51AFC 000020 0008+00 0/2 0/0 0/0 .rodata @3938 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3938[8] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D51AF4, &lit_3938);
#pragma pop
// Fake match?
s16 angle_y = cLib_targetAngleY(&pos1, &pos2);
// s16 angle_x = cLib_targetAngleX(&pos1, &pos2);
/* 80D51AFC-80D51B00 000028 0004+00 0/1 0/0 0/0 .rodata @3939 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3939 = 1000.0f;
COMPILER_STRIP_GATE(0x80D51AFC, &lit_3939);
#pragma pop
// field_0x594.set(-angle_x, angle_y, 0);
field_0x594.x = -cLib_targetAngleX(&pos1, &pos2);
// field_0x594.x = -angle_x;
field_0x594.y = angle_y;
field_0x594.z = 0;
/* 80D51B00-80D51B04 00002C 0004+00 0/1 0/0 0/0 .rodata @3940 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3940 = 0x4522B50A;
COMPILER_STRIP_GATE(0x80D51B00, &lit_3940);
#pragma pop
mDistance = sqrtf(PSVECSquareDistance((Vec*)&mPos1, (Vec*)&pos2));
field_0x5a0 = 1;
mPos2 = pos2;
}
}
/* 80D51B04-80D51B08 000030 0004+00 0/1 0/0 0/0 .rodata @3941 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3941 = -200.0f;
COMPILER_STRIP_GATE(0x80D51B04, &lit_3941);
#pragma pop
inline void daTagLv7Gate_c::initBaseMtx() {
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
}
/* 80D51B08-80D51B0C 000034 0004+00 0/1 0/0 0/0 .rodata @3942 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3942 = 0x45AB6F61;
COMPILER_STRIP_GATE(0x80D51B08, &lit_3942);
#pragma pop
inline void daTagLv7Gate_c::setBaseMtx() {
if (mpModel) {
cXyz local_34(0.0f, 0.0f, speedF);
/* 80D51B14-80D51B14 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80D51B1C = "LV7_NORMAL_START";
SECTION_DEAD static char const* const stringBase_80D51B2D = "LV7_CANNON_BACK";
SECTION_DEAD static char const* const stringBase_80D51B3D = "LV7_FIRST_START";
#pragma pop
mDoMtx_stack_c::transS(mPos1);
mDoMtx_stack_c::ZXYrotM((csXyz&)field_0x594);
mDoMtx_stack_c::multVec(&local_34, (Vec*)&mPos1);
MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx);
mAttentionInfo.mPosition = mPos1;
}
}
/* 80D50D30-80D511A8 0002F0 0478+00 1/1 0/0 0/0 .text create_init__14daTagLv7Gate_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagLv7Gate_c::create_init() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/create_init__14daTagLv7Gate_cFv.s"
void daTagLv7Gate_c::create_init() {
mAttentionInfo.mFlags = 0;
mLastFrame = 0;
field_0x5ac = 0;
mEvtId = -1;
field_0x5b0 = false;
field_0x5b1 = false;
setPath(getPathID() & 0xFF);
mAttentionInfo.mPosition = mPos1;
if (mpModel) {
initBaseMtx();
setBaseMtx();
}
// City in the Sky clear
if (i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[268])) {
mEvName = "LV7_NORMAL_START";
} else {
// Watched City in the Sky start cutscene
if (i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[510])) {
if (dComIfGs_isDungeonItemWarp()) {
mEvName = "LV7_CANNON_BACK";
} else {
mEvName = "LV7_NORMAL_START";
}
} else {
mEvName = "LV7_FIRST_START";
cXyz pos = current.pos;
pos.y -= 1000.0f;
csXyz local_54(getFlowNodeNo(), -0x4000, 0);
fopAcM_create(PROC_NPC_TKS, 7, &pos, fopAcM_GetRoomNo(this), &local_54, NULL, -1);
pos.x = 2603.315f;
pos.y = -200.0f;
pos.z = 5485.9224f;
local_54.x = 0.0f;
local_54.y = -0x4000;
local_54.z = 0.0f;
fopAcM_create(PROC_NPC_TKJ, 0, &pos, fopAcM_GetRoomNo(this), &local_54, NULL, -1);
}
}
mEvtInfo.setArchiveName(l_arcName);
i_dComIfGp_getEventManager().setObjectArchive(mEvtInfo.getArchiveName());
mEvtId = i_dComIfGp_getEventManager().getEventIdx(this, mEvName, -1);
fopAcM_orderOtherEventId(this, mEvtId, -1, -1, 2, 1);
}
#pragma pop
/* 80D511A8-80D511C8 000768 0020+00 1/0 0/0 0/0 .text daTagLv7Gate_Execute__FP14daTagLv7Gate_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagLv7Gate_Execute(daTagLv7Gate_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/daTagLv7Gate_Execute__FP14daTagLv7Gate_c.s"
static int daTagLv7Gate_Execute(daTagLv7Gate_c* i_this) {
return i_this->execute();
}
#pragma pop
/* ############################################################################################## */
/* 80D51B0C-80D51B10 000038 0004+00 0/1 0/0 0/0 .rodata @4046 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4046 = 96.0f;
COMPILER_STRIP_GATE(0x80D51B0C, &lit_4046);
#pragma pop
inline void daTagLv7Gate_c::flyAnime() {
J3DAnmTransform* bck = NULL;
J3DAnmTransform* bck_anm = mpBck->getBckAnm();
J3DAnmTransform* bck_anm_1 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 5);
J3DAnmTransform* bck_anm_2 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 6);
J3DAnmTransform* bck_anm_3 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 7);
J3DAnmTransform* bck_anm_4 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 8);
s32 attribute = J3DFrameCtrl::LOOP_REPEAT_e;
mLastFrame = mpBck->getFrame();
mpBck->play();
if (bck_anm == bck_anm_3) {
if (field_0x5ac < 150) {
field_0x5ac += 1;
if (field_0x5ac >= 150) {
bck = bck_anm_4;
attribute = J3DFrameCtrl::LOOP_ONCE_e;
}
}
} else if (bck_anm == bck_anm_1) {
if (mLastFrame > mpBck->getFrame()) {
bck = bck_anm_2;
attribute = J3DFrameCtrl::LOOP_ONCE_e;
}
} else {
// } else if (mpBck->isStop()) {
// Fake match?
mDoExt_bckAnm* tmp = mpBck;
if (tmp->isStop()) {
if (bck_anm == bck_anm_2) {
bck = bck_anm_3;
attribute = J3DFrameCtrl::LOOP_REPEAT_e;
} else if (bck_anm == bck_anm_4) {
bck = bck_anm_1;
attribute = J3DFrameCtrl::LOOP_REPEAT_e;
}
}
}
if (bck != NULL) {
mpBck->init(bck, 1, attribute, 1.0f, 0, -1, true);
}
}
/* 80D511C8-80D51628 000788 0460+00 1/1 0/0 0/0 .text execute__14daTagLv7Gate_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagLv7Gate_c::execute() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/execute__14daTagLv7Gate_cFv.s"
int daTagLv7Gate_c::execute() {
// Fake match?
dComIfG_play_c& play = g_dComIfG_gameInfo.getPlay();
if (i_dComIfGp_event_runCheck() && !mEvtInfo.checkCommandTalk()) {
s32 cut_index = i_dComIfGp_evmng_getMyStaffId(l_arcName, NULL, 0);
if (cut_index != -1) {
// int* cut_name = (int*)i_dComIfGp_getEventManager().getMyNowCutName(cut_index);
int* cut_name = (int*)play.getEvtManager().getMyNowCutName(cut_index);
daPy_getPlayerActorClass()->onShieldBackBone();
if (dComIfGp_evmng_getIsAddvance(cut_index)) {
switch (*cut_name) {
case '0002':
field_0x5b1 = true;
speedF = 96.0f;
break;
case '0001':
break;
case '0003':
break;
}
}
switch (*cut_name) {
case '0001':
dComIfGp_evmng_cutEnd(cut_index);
break;
case '0002':
i_mDoAud_seStartLevel(Z2SE_EN_DR_DEMO_FIRST, &mPos1, 0, 0);
if (!field_0x5b1) {
dComIfGp_evmng_cutEnd(cut_index);
}
break;
case '0003':
break;
}
if (mEvtInfo.checkCommandDemoAccrpt() && mEvtId != -1) {
cut_index = dComIfGp_evmng_endCheck(mEvtId);
if (cut_index != 0) {
i_dComIfGp_event_reset();
mEvtId = -1;
fopAcM_delete(this);
}
}
field_0x5b0 = true;
}
} else {
if (!field_0x5b0) {
mEvtInfo.setArchiveName(l_arcName);
i_dComIfGp_getEventManager().setObjectArchive(mEvtInfo.getArchiveName());
mEvtId = i_dComIfGp_getEventManager().getEventIdx(this, mEvName, -1);
fopAcM_orderOtherEventId(this, mEvtId, -1, -1, 0, 1);
field_0x5b0 = true;
} else {
fopAcM_delete(this);
}
}
if (field_0x5b1) {
calcFly();
flyAnime();
setBaseMtx();
}
return 1;
}
inline bool daTagLv7Gate_c::checkPoint(f32 i_speed) {
dStage_dPnt_c* pnt = dPath_GetPnt(mRoomPath, field_0x5a0);
mDistance -= i_speed;
if (sqrtf(PSVECSquareDistance((Vec*)&mPos1, (Vec*)&pnt->m_position)) < i_speed ||
mDistance < 0.0f) {
return true;
}
return false;
}
inline bool daTagLv7Gate_c::setNextPoint() {
bool bVar1;
dPath_GetPnt(mRoomPath, field_0x5a0);
field_0x5a0 += 1;
if (field_0x5a0 >= mRoomPath->m_num) {
field_0x5a0 = mRoomPath->m_num - 1;
mDistance = 0;
bVar1 = true;
} else {
dStage_dPnt_c* pnt = dPath_GetPnt(mRoomPath, field_0x5a0);
cXyz pos1(mPos1.x, 0.0f, mPos1.z);
cXyz pos2(pnt->m_position.x, 0.0f, pnt->m_position.z);
mDistance = sqrtf(PSVECSquareDistance((Vec*)&pos1, (Vec*)&pos2));
mPos2 = pnt->m_position;
bVar1 = false;
}
if (bVar1) {
field_0x5b1 = false;
speedF = 0;
}
return bVar1;
}
#pragma pop
/* 80D51628-80D519BC 000BE8 0394+00 1/1 0/0 0/0 .text calcFly__14daTagLv7Gate_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTagLv7Gate_c::calcFly() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/calcFly__14daTagLv7Gate_cFv.s"
void daTagLv7Gate_c::calcFly() {
f32 speed = speedF;
if (checkPoint(speed)) {
setNextPoint();
}
s16 angle_x = -cLib_targetAngleX(&mPos1, &mPos2);
s16 angle_y = cLib_targetAngleY(&mPos1, &mPos2);
cLib_addCalcAngleS2(&field_0x594.x, angle_x, 0xF, 0x400);
cLib_addCalcAngleS2(&field_0x594.y, angle_y, 0x23, 0x100);
cLib_addCalcAngleS2(&field_0x594.z, (field_0x594.y - angle_y) * 4, 0x23, 0x100);
}
inline int daTagLv7Gate_c::draw() {
if (field_0x5b1) {
g_env_light.settingTevStruct(0, &mPos1, &mTevStr);
g_env_light.setLightTevColorType_MAJI(mpModel, &mTevStr);
mpBck->entry(mpModel->getModelData());
mDoExt_modelUpdateDL(mpModel);
mpBck->remove(mpModel->getModelData());
}
return 1;
}
#pragma pop
/* 80D519BC-80D51A58 000F7C 009C+00 1/0 0/0 0/0 .text daTagLv7Gate_Draw__FP14daTagLv7Gate_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagLv7Gate_Draw(daTagLv7Gate_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/daTagLv7Gate_Draw__FP14daTagLv7Gate_c.s"
static int daTagLv7Gate_Draw(daTagLv7Gate_c* i_this) {
return i_this->draw();
}
#pragma pop
/* 80D51A58-80D51A60 001018 0008+00 1/0 0/0 0/0 .text daTagLv7Gate_IsDelete__FP14daTagLv7Gate_c */
static bool daTagLv7Gate_IsDelete(daTagLv7Gate_c* param_0) {
return true;
static int daTagLv7Gate_IsDelete(daTagLv7Gate_c* i_this) {
return 1;
}
inline daTagLv7Gate_c::~daTagLv7Gate_c() {
// Watched City in the Sky start cutscene
dComIfGs_onEventBit(dSv_event_flag_c::saveBitLabels[510]);
dComIfG_resDelete(&mPhase, l_arcName);
}
/* 80D51A60-80D51ACC 001020 006C+00 1/0 0/0 0/0 .text daTagLv7Gate_Delete__FP14daTagLv7Gate_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTagLv7Gate_Delete(daTagLv7Gate_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate/daTagLv7Gate_Delete__FP14daTagLv7Gate_c.s"
static int daTagLv7Gate_Delete(daTagLv7Gate_c* i_this) {
i_this->~daTagLv7Gate_c();
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80D51B10-80D51B14 00003C 0004+00 0/0 0/0 0/0 .rodata @4047 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_4047 = -1.0f;
COMPILER_STRIP_GATE(0x80D51B10, &lit_4047);
#pragma pop
/* 80D51B54-80D51B74 -00001 0020+00 1/0 0/0 0/0 .data l_daTagLv7Gate_Method */
static actor_method_class l_daTagLv7Gate_Method = {
(process_method_func)daTagLv7Gate_Create, (process_method_func)daTagLv7Gate_Delete,
(process_method_func)daTagLv7Gate_Execute, (process_method_func)daTagLv7Gate_IsDelete,
(process_method_func)daTagLv7Gate_Draw,
};
/* 80D51B14-80D51B14 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
/* 80D51B74-80D51BA4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv7Gate */
extern actor_process_profile_definition g_profile_Tag_Lv7Gate = {
fpcLy_CURRENT_e, // mLayerID
7, // mListID
fpcPi_CURRENT_e, // mListPrio
PROC_Tag_Lv7Gate, // mProcName
&g_fpcLf_Method.mBase, // mSubMtd
sizeof(daTagLv7Gate_c), // mSize
0, // mSizeOther
0, // mParameters
&g_fopAc_Method.base, // mSubMtd
263, // mPriority
&l_daTagLv7Gate_Method, // mSubMtd
0x40000, // mStatus
0, // mActorType
fopAc_CULLBOX_CUSTOM_e, // mCullType
};