mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-05-30 16:35:26 -04:00
work on daAlink horse, hvyboots, cut (#1981)
* work on alink_cut, alink_horse, alink_hvyboots * remove asm
This commit is contained in:
@@ -1,15 +0,0 @@
|
||||
lbl_800EF35C:
|
||||
/* 800EF35C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EF360 7C 08 02 A6 */ mflr r0
|
||||
/* 800EF364 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EF368 38 80 FF FC */ li r4, -4
|
||||
/* 800EF36C 38 A0 00 01 */ li r5, 1
|
||||
/* 800EF370 38 C0 00 00 */ li r6, 0
|
||||
/* 800EF374 38 E0 00 00 */ li r7, 0
|
||||
/* 800EF378 39 00 00 00 */ li r8, 0
|
||||
/* 800EF37C 39 20 00 00 */ li r9, 0
|
||||
/* 800EF380 4B FE A3 5D */ bl procCoLargeDamageInit__9daAlink_cFiissP12dCcD_GObjInfi
|
||||
/* 800EF384 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EF388 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EF38C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EF390 4E 80 00 20 */ blr
|
||||
@@ -1,27 +0,0 @@
|
||||
lbl_800EDE8C:
|
||||
/* 800EDE8C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EDE90 7C 08 02 A6 */ mflr r0
|
||||
/* 800EDE94 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EDE98 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EDE9C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800EDEA0 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800EDEA4 3B E0 00 00 */ li r31, 0
|
||||
/* 800EDEA8 38 80 00 51 */ li r4, 0x51
|
||||
/* 800EDEAC 4B FB E6 AD */ bl checkUnderMove0BckNoArc__9daAlink_cCFQ29daAlink_c11daAlink_ANM
|
||||
/* 800EDEB0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EDEB4 40 82 00 18 */ bne lbl_800EDECC
|
||||
/* 800EDEB8 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EDEBC 38 80 00 52 */ li r4, 0x52
|
||||
/* 800EDEC0 4B FB E6 99 */ bl checkUnderMove0BckNoArc__9daAlink_cCFQ29daAlink_c11daAlink_ANM
|
||||
/* 800EDEC4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EDEC8 41 82 00 08 */ beq lbl_800EDED0
|
||||
lbl_800EDECC:
|
||||
/* 800EDECC 3B E0 00 01 */ li r31, 1
|
||||
lbl_800EDED0:
|
||||
/* 800EDED0 57 E3 06 3E */ clrlwi r3, r31, 0x18
|
||||
/* 800EDED4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EDED8 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800EDEDC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EDEE0 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EDEE4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EDEE8 4E 80 00 20 */ blr
|
||||
@@ -1,81 +0,0 @@
|
||||
lbl_800EDD6C:
|
||||
/* 800EDD6C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EDD70 7C 08 02 A6 */ mflr r0
|
||||
/* 800EDD74 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EDD78 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EDD7C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800EDD80 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800EDD84 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EDD88 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EDD8C 83 E4 5D B8 */ lwz r31, 0x5db8(r4)
|
||||
/* 800EDD90 81 83 06 28 */ lwz r12, 0x628(r3)
|
||||
/* 800EDD94 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EDD98 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EDD9C 4E 80 04 21 */ bctrl
|
||||
/* 800EDDA0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EDDA4 40 82 00 0C */ bne lbl_800EDDB0
|
||||
/* 800EDDA8 38 60 00 00 */ li r3, 0
|
||||
/* 800EDDAC 48 00 00 C8 */ b lbl_800EDE74
|
||||
lbl_800EDDB0:
|
||||
/* 800EDDB0 80 1E 05 90 */ lwz r0, 0x590(r30)
|
||||
/* 800EDDB4 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
|
||||
/* 800EDDB8 41 82 00 28 */ beq lbl_800EDDE0
|
||||
/* 800EDDBC C0 1F 04 D0 */ lfs f0, 0x4d0(r31)
|
||||
/* 800EDDC0 D0 1E 04 D0 */ stfs f0, 0x4d0(r30)
|
||||
/* 800EDDC4 C0 1F 04 D4 */ lfs f0, 0x4d4(r31)
|
||||
/* 800EDDC8 D0 1E 04 D4 */ stfs f0, 0x4d4(r30)
|
||||
/* 800EDDCC C0 1F 04 D8 */ lfs f0, 0x4d8(r31)
|
||||
/* 800EDDD0 D0 1E 04 D8 */ stfs f0, 0x4d8(r30)
|
||||
/* 800EDDD4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EDDD8 4B FD 55 E1 */ bl procWaitInit__9daAlink_cFv
|
||||
/* 800EDDDC 48 00 00 98 */ b lbl_800EDE74
|
||||
lbl_800EDDE0:
|
||||
/* 800EDDE0 88 9F 16 B4 */ lbz r4, 0x16b4(r31)
|
||||
/* 800EDDE4 28 04 00 02 */ cmplwi r4, 2
|
||||
/* 800EDDE8 41 82 00 28 */ beq lbl_800EDE10
|
||||
/* 800EDDEC 38 60 00 00 */ li r3, 0
|
||||
/* 800EDDF0 28 04 00 03 */ cmplwi r4, 3
|
||||
/* 800EDDF4 40 82 00 14 */ bne lbl_800EDE08
|
||||
/* 800EDDF8 A8 1F 17 20 */ lha r0, 0x1720(r31)
|
||||
/* 800EDDFC 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 800EDE00 40 82 00 08 */ bne lbl_800EDE08
|
||||
/* 800EDE04 38 60 00 01 */ li r3, 1
|
||||
lbl_800EDE08:
|
||||
/* 800EDE08 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800EDE0C 41 82 00 28 */ beq lbl_800EDE34
|
||||
lbl_800EDE10:
|
||||
/* 800EDE10 80 1F 17 4C */ lwz r0, 0x174c(r31)
|
||||
/* 800EDE14 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
|
||||
/* 800EDE18 40 82 00 1C */ bne lbl_800EDE34
|
||||
/* 800EDE1C 80 1F 17 44 */ lwz r0, 0x1744(r31)
|
||||
/* 800EDE20 54 00 00 85 */ rlwinm. r0, r0, 0, 2, 2
|
||||
/* 800EDE24 40 82 00 10 */ bne lbl_800EDE34
|
||||
/* 800EDE28 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EDE2C 48 00 2E 41 */ bl procHorseTurnInit__9daAlink_cFv
|
||||
/* 800EDE30 48 00 00 44 */ b lbl_800EDE74
|
||||
lbl_800EDE34:
|
||||
/* 800EDE34 28 04 00 04 */ cmplwi r4, 4
|
||||
/* 800EDE38 40 82 00 10 */ bne lbl_800EDE48
|
||||
/* 800EDE3C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EDE40 48 00 32 21 */ bl procHorseJumpInit__9daAlink_cFv
|
||||
/* 800EDE44 48 00 00 30 */ b lbl_800EDE74
|
||||
lbl_800EDE48:
|
||||
/* 800EDE48 A0 1E 2F E8 */ lhz r0, 0x2fe8(r30)
|
||||
/* 800EDE4C 28 00 00 3C */ cmplwi r0, 0x3c
|
||||
/* 800EDE50 41 82 00 20 */ beq lbl_800EDE70
|
||||
/* 800EDE54 28 00 00 41 */ cmplwi r0, 0x41
|
||||
/* 800EDE58 41 82 00 18 */ beq lbl_800EDE70
|
||||
/* 800EDE5C 28 00 00 42 */ cmplwi r0, 0x42
|
||||
/* 800EDE60 41 82 00 10 */ beq lbl_800EDE70
|
||||
/* 800EDE64 80 1F 17 4C */ lwz r0, 0x174c(r31)
|
||||
/* 800EDE68 60 00 00 10 */ ori r0, r0, 0x10
|
||||
/* 800EDE6C 90 1F 17 4C */ stw r0, 0x174c(r31)
|
||||
lbl_800EDE70:
|
||||
/* 800EDE70 38 60 00 00 */ li r3, 0
|
||||
lbl_800EDE74:
|
||||
/* 800EDE74 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EDE78 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800EDE7C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EDE80 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EDE84 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EDE88 4E 80 00 20 */ blr
|
||||
@@ -1,12 +0,0 @@
|
||||
lbl_800EEE30:
|
||||
/* 800EEE30 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EEE34 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EEE38 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800EEE3C C0 43 05 2C */ lfs f2, 0x52c(r3)
|
||||
/* 800EEE40 C0 22 94 D0 */ lfs f1, lit_18847(r2)
|
||||
/* 800EEE44 C0 03 17 90 */ lfs f0, 0x1790(r3)
|
||||
/* 800EEE48 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 800EEE4C FC 02 00 40 */ fcmpo cr0, f2, f0
|
||||
/* 800EEE50 7C 00 00 26 */ mfcr r0
|
||||
/* 800EEE54 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f
|
||||
/* 800EEE58 4E 80 00 20 */ blr
|
||||
@@ -1,20 +0,0 @@
|
||||
lbl_800EC76C:
|
||||
/* 800EC76C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EC770 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EC774 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800EC778 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EC77C 40 82 00 0C */ bne lbl_800EC788
|
||||
/* 800EC780 38 60 00 00 */ li r3, 0
|
||||
/* 800EC784 4E 80 00 20 */ blr
|
||||
lbl_800EC788:
|
||||
/* 800EC788 80 83 12 58 */ lwz r4, 0x1258(r3)
|
||||
/* 800EC78C 38 60 00 00 */ li r3, 0
|
||||
/* 800EC790 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 800EC794 41 82 00 14 */ beq lbl_800EC7A8
|
||||
/* 800EC798 88 04 06 D8 */ lbz r0, 0x6d8(r4)
|
||||
/* 800EC79C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800EC7A0 41 82 00 08 */ beq lbl_800EC7A8
|
||||
/* 800EC7A4 38 60 00 01 */ li r3, 1
|
||||
lbl_800EC7A8:
|
||||
/* 800EC7A8 54 63 06 3E */ clrlwi r3, r3, 0x18
|
||||
/* 800EC7AC 4E 80 00 20 */ blr
|
||||
@@ -1,96 +0,0 @@
|
||||
lbl_800EF450:
|
||||
/* 800EF450 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EF454 7C 08 02 A6 */ mflr r0
|
||||
/* 800EF458 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EF45C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EF460 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800EF464 4B FF 48 39 */ bl checkGrabAnimeAndThrow__9daAlink_cCFv
|
||||
/* 800EF468 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF46C 41 82 00 10 */ beq lbl_800EF47C
|
||||
/* 800EF470 A0 1F 2F E8 */ lhz r0, 0x2fe8(r31)
|
||||
/* 800EF474 28 00 00 47 */ cmplwi r0, 0x47
|
||||
/* 800EF478 40 82 00 1C */ bne lbl_800EF494
|
||||
lbl_800EF47C:
|
||||
/* 800EF47C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF480 4B FC A8 AD */ bl checkNextActionFromButton__9daAlink_cFv
|
||||
/* 800EF484 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF488 41 82 00 0C */ beq lbl_800EF494
|
||||
/* 800EF48C 38 60 00 01 */ li r3, 1
|
||||
/* 800EF490 48 00 00 F4 */ b lbl_800EF584
|
||||
lbl_800EF494:
|
||||
/* 800EF494 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF498 4B FE F5 51 */ bl checkBowAnime__9daAlink_cCFv
|
||||
/* 800EF49C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF4A0 41 82 00 10 */ beq lbl_800EF4B0
|
||||
/* 800EF4A4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF4A8 4B FF 03 6D */ bl checkNextActionBow__9daAlink_cFv
|
||||
/* 800EF4AC 48 00 00 D8 */ b lbl_800EF584
|
||||
lbl_800EF4B0:
|
||||
/* 800EF4B0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF4B4 4B FF 0F 8D */ bl checkBoomerangAnime__9daAlink_cCFv
|
||||
/* 800EF4B8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF4BC 41 82 00 10 */ beq lbl_800EF4CC
|
||||
/* 800EF4C0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF4C4 4B FF 17 21 */ bl checkNextActionBoomerang__9daAlink_cFv
|
||||
/* 800EF4C8 48 00 00 BC */ b lbl_800EF584
|
||||
lbl_800EF4CC:
|
||||
/* 800EF4CC 38 60 00 00 */ li r3, 0
|
||||
/* 800EF4D0 A0 1F 1F BC */ lhz r0, 0x1fbc(r31)
|
||||
/* 800EF4D4 28 00 01 8D */ cmplwi r0, 0x18d
|
||||
/* 800EF4D8 41 82 00 10 */ beq lbl_800EF4E8
|
||||
/* 800EF4DC 54 00 04 3E */ clrlwi r0, r0, 0x10
|
||||
/* 800EF4E0 28 00 01 8C */ cmplwi r0, 0x18c
|
||||
/* 800EF4E4 40 82 00 08 */ bne lbl_800EF4EC
|
||||
lbl_800EF4E8:
|
||||
/* 800EF4E8 38 60 00 01 */ li r3, 1
|
||||
lbl_800EF4EC:
|
||||
/* 800EF4EC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800EF4F0 41 82 00 10 */ beq lbl_800EF500
|
||||
/* 800EF4F4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF4F8 48 01 A0 D1 */ bl checkNextActionHookshot__9daAlink_cFv
|
||||
/* 800EF4FC 48 00 00 88 */ b lbl_800EF584
|
||||
lbl_800EF500:
|
||||
/* 800EF500 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF504 4B FF 47 99 */ bl checkGrabAnimeAndThrow__9daAlink_cCFv
|
||||
/* 800EF508 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF50C 41 82 00 10 */ beq lbl_800EF51C
|
||||
/* 800EF510 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF514 48 00 2E 21 */ bl procHorseGrabMoveInit__9daAlink_cFv
|
||||
/* 800EF518 48 00 00 6C */ b lbl_800EF584
|
||||
lbl_800EF51C:
|
||||
/* 800EF51C A0 9F 2F E8 */ lhz r4, 0x2fe8(r31)
|
||||
/* 800EF520 28 04 00 4D */ cmplwi r4, 0x4d
|
||||
/* 800EF524 40 82 00 10 */ bne lbl_800EF534
|
||||
/* 800EF528 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF52C 48 00 38 59 */ bl procHorseComebackInit__9daAlink_cFv
|
||||
/* 800EF530 48 00 00 54 */ b lbl_800EF584
|
||||
lbl_800EF534:
|
||||
/* 800EF534 28 04 00 3E */ cmplwi r4, 0x3e
|
||||
/* 800EF538 40 82 00 2C */ bne lbl_800EF564
|
||||
/* 800EF53C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EF540 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EF544 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800EF548 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EF54C 41 82 00 18 */ beq lbl_800EF564
|
||||
/* 800EF550 88 03 16 B4 */ lbz r0, 0x16b4(r3)
|
||||
/* 800EF554 28 00 00 04 */ cmplwi r0, 4
|
||||
/* 800EF558 40 82 00 0C */ bne lbl_800EF564
|
||||
/* 800EF55C 38 60 00 01 */ li r3, 1
|
||||
/* 800EF560 48 00 00 24 */ b lbl_800EF584
|
||||
lbl_800EF564:
|
||||
/* 800EF564 28 04 00 3D */ cmplwi r4, 0x3d
|
||||
/* 800EF568 41 82 00 0C */ beq lbl_800EF574
|
||||
/* 800EF56C 28 04 00 43 */ cmplwi r4, 0x43
|
||||
/* 800EF570 40 82 00 0C */ bne lbl_800EF57C
|
||||
lbl_800EF574:
|
||||
/* 800EF574 38 60 00 00 */ li r3, 0
|
||||
/* 800EF578 48 00 00 0C */ b lbl_800EF584
|
||||
lbl_800EF57C:
|
||||
/* 800EF57C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800EF580 48 00 14 01 */ bl procHorseWaitInit__9daAlink_cFv
|
||||
lbl_800EF584:
|
||||
/* 800EF584 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EF588 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EF58C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EF590 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EF594 4E 80 00 20 */ blr
|
||||
@@ -1,17 +0,0 @@
|
||||
lbl_800EC724:
|
||||
/* 800EC724 A8 03 00 08 */ lha r0, 8(r3)
|
||||
/* 800EC728 2C 00 00 EF */ cmpwi r0, 0xef
|
||||
/* 800EC72C 40 82 00 24 */ bne lbl_800EC750
|
||||
/* 800EC730 80 83 05 E0 */ lwz r4, 0x5e0(r3)
|
||||
/* 800EC734 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 800EC738 41 82 00 0C */ beq lbl_800EC744
|
||||
/* 800EC73C 80 04 00 04 */ lwz r0, 4(r4)
|
||||
/* 800EC740 48 00 00 08 */ b lbl_800EC748
|
||||
lbl_800EC744:
|
||||
/* 800EC744 38 00 00 00 */ li r0, 0
|
||||
lbl_800EC748:
|
||||
/* 800EC748 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800EC74C 4C 82 00 20 */ bnelr
|
||||
lbl_800EC750:
|
||||
/* 800EC750 38 60 00 00 */ li r3, 0
|
||||
/* 800EC754 4E 80 00 20 */ blr
|
||||
@@ -1,50 +0,0 @@
|
||||
lbl_800EF394:
|
||||
/* 800EF394 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EF398 7C 08 02 A6 */ mflr r0
|
||||
/* 800EF39C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EF3A0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EF3A4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800EF3A8 88 03 2F C0 */ lbz r0, 0x2fc0(r3)
|
||||
/* 800EF3AC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800EF3B0 40 82 00 34 */ bne lbl_800EF3E4
|
||||
/* 800EF3B4 A8 9F 04 E6 */ lha r4, 0x4e6(r31)
|
||||
/* 800EF3B8 38 04 C0 00 */ addi r0, r4, -16384
|
||||
/* 800EF3BC B0 1F 04 E6 */ sth r0, 0x4e6(r31)
|
||||
/* 800EF3C0 38 80 00 00 */ li r4, 0
|
||||
/* 800EF3C4 38 A0 40 00 */ li r5, 0x4000
|
||||
/* 800EF3C8 38 C0 00 00 */ li r6, 0
|
||||
/* 800EF3CC 4B FB E7 AD */ bl setOldRootQuaternion__9daAlink_cFsss
|
||||
/* 800EF3D0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 800EF3D4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 800EF3D8 38 80 C0 00 */ li r4, -16384
|
||||
/* 800EF3DC 4B F1 D0 01 */ bl mDoMtx_YrotS__FPA4_fs
|
||||
/* 800EF3E0 48 00 00 30 */ b lbl_800EF410
|
||||
lbl_800EF3E4:
|
||||
/* 800EF3E4 A8 9F 04 E6 */ lha r4, 0x4e6(r31)
|
||||
/* 800EF3E8 38 04 40 00 */ addi r0, r4, 0x4000
|
||||
/* 800EF3EC B0 1F 04 E6 */ sth r0, 0x4e6(r31)
|
||||
/* 800EF3F0 38 80 00 00 */ li r4, 0
|
||||
/* 800EF3F4 38 A0 C0 00 */ li r5, -16384
|
||||
/* 800EF3F8 38 C0 00 00 */ li r6, 0
|
||||
/* 800EF3FC 4B FB E7 7D */ bl setOldRootQuaternion__9daAlink_cFsss
|
||||
/* 800EF400 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */
|
||||
/* 800EF404 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */
|
||||
/* 800EF408 38 80 40 00 */ li r4, 0x4000
|
||||
/* 800EF40C 4B F1 CF D1 */ bl mDoMtx_YrotS__FPA4_fs
|
||||
lbl_800EF410:
|
||||
/* 800EF410 80 7F 20 60 */ lwz r3, 0x2060(r31)
|
||||
/* 800EF414 80 83 00 1C */ lwz r4, 0x1c(r3)
|
||||
/* 800EF418 3C 60 80 42 */ lis r3, l_waitBaseAnime@ha /* 0x80425514@ha */
|
||||
/* 800EF41C C4 03 55 14 */ lfsu f0, l_waitBaseAnime@l(r3) /* 0x80425514@l */
|
||||
/* 800EF420 D0 04 00 14 */ stfs f0, 0x14(r4)
|
||||
/* 800EF424 C0 03 00 08 */ lfs f0, 8(r3)
|
||||
/* 800EF428 D0 04 00 1C */ stfs f0, 0x1c(r4)
|
||||
/* 800EF42C A8 1F 04 E6 */ lha r0, 0x4e6(r31)
|
||||
/* 800EF430 B0 1F 04 DE */ sth r0, 0x4de(r31)
|
||||
/* 800EF434 A8 1F 04 E6 */ lha r0, 0x4e6(r31)
|
||||
/* 800EF438 B0 1F 2F E4 */ sth r0, 0x2fe4(r31)
|
||||
/* 800EF43C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EF440 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EF444 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EF448 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EF44C 4E 80 00 20 */ blr
|
||||
@@ -1,46 +0,0 @@
|
||||
lbl_800ECAAC:
|
||||
/* 800ECAAC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800ECAB0 7C 08 02 A6 */ mflr r0
|
||||
/* 800ECAB4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800ECAB8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800ECABC 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800ECAC0 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800ECAC4 3C 60 80 0F */ lis r3, daAlink_searchBoar__FP10fopAc_ac_cPv@ha /* 0x800EC724@ha */
|
||||
/* 800ECAC8 38 63 C7 24 */ addi r3, r3, daAlink_searchBoar__FP10fopAc_ac_cPv@l /* 0x800EC724@l */
|
||||
/* 800ECACC 38 80 00 00 */ li r4, 0
|
||||
/* 800ECAD0 4B F2 CD 29 */ bl fopAcIt_Judge__FPFPvPv_PvPv
|
||||
/* 800ECAD4 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 800ECAD8 40 82 00 0C */ bne lbl_800ECAE4
|
||||
/* 800ECADC 38 60 00 00 */ li r3, 0
|
||||
/* 800ECAE0 48 00 00 60 */ b lbl_800ECB40
|
||||
lbl_800ECAE4:
|
||||
/* 800ECAE4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ECAE8 4B FF FF 55 */ bl commonInitForceRideRein__9daAlink_cFv
|
||||
/* 800ECAEC C0 1E 04 D0 */ lfs f0, 0x4d0(r30)
|
||||
/* 800ECAF0 D0 1F 04 D0 */ stfs f0, 0x4d0(r31)
|
||||
/* 800ECAF4 C0 1E 04 D4 */ lfs f0, 0x4d4(r30)
|
||||
/* 800ECAF8 D0 1F 04 D4 */ stfs f0, 0x4d4(r31)
|
||||
/* 800ECAFC C0 1E 04 D8 */ lfs f0, 0x4d8(r30)
|
||||
/* 800ECB00 D0 1F 04 D8 */ stfs f0, 0x4d8(r31)
|
||||
/* 800ECB04 A8 1E 04 E6 */ lha r0, 0x4e6(r30)
|
||||
/* 800ECB08 B0 1F 04 E6 */ sth r0, 0x4e6(r31)
|
||||
/* 800ECB0C A8 1E 04 E6 */ lha r0, 0x4e6(r30)
|
||||
/* 800ECB10 B0 1F 04 DE */ sth r0, 0x4de(r31)
|
||||
/* 800ECB14 38 00 00 02 */ li r0, 2
|
||||
/* 800ECB18 98 1E 2F AA */ stb r0, 0x2faa(r30)
|
||||
/* 800ECB1C 38 7E 28 14 */ addi r3, r30, 0x2814
|
||||
/* 800ECB20 7F E4 FB 78 */ mr r4, r31
|
||||
/* 800ECB24 48 07 21 95 */ bl setData__16daPy_actorKeep_cFP10fopAc_ac_c
|
||||
/* 800ECB28 3C 60 80 42 */ lis r3, l_boarBaseAnime@ha /* 0x804255A4@ha */
|
||||
/* 800ECB2C 38 03 55 A4 */ addi r0, r3, l_boarBaseAnime@l /* 0x804255A4@l */
|
||||
/* 800ECB30 90 1E 38 4C */ stw r0, 0x384c(r30)
|
||||
/* 800ECB34 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECB38 4B F4 B1 79 */ bl setPlayerRide__10e_wb_classFv
|
||||
/* 800ECB3C 38 60 00 01 */ li r3, 1
|
||||
lbl_800ECB40:
|
||||
/* 800ECB40 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800ECB44 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800ECB48 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800ECB4C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800ECB50 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800ECB54 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_800F25B4:
|
||||
/* 800F25B4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F25B8 7C 08 02 A6 */ mflr r0
|
||||
/* 800F25BC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F25C0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F25C4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F25C8 38 80 00 49 */ li r4, 0x49
|
||||
/* 800F25CC 4B FD 07 D9 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F25D0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F25D4 40 82 00 0C */ bne lbl_800F25E0
|
||||
/* 800F25D8 38 60 00 00 */ li r3, 0
|
||||
/* 800F25DC 48 00 00 38 */ b lbl_800F2614
|
||||
lbl_800F25E0:
|
||||
/* 800F25E0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F25E4 4B FF B4 41 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F25E8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F25EC 4B FF C7 AD */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F25F0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F25F4 38 80 00 00 */ li r4, 0
|
||||
/* 800F25F8 4B FE DD D9 */ bl initBoomerangUpperAnimeSpeed__9daAlink_cFi
|
||||
/* 800F25FC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F2600 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F2604 80 03 5F 18 */ lwz r0, 0x5f18(r3)
|
||||
/* 800F2608 64 00 00 08 */ oris r0, r0, 8
|
||||
/* 800F260C 90 03 5F 18 */ stw r0, 0x5f18(r3)
|
||||
/* 800F2610 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2614:
|
||||
/* 800F2614 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2618 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F261C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2620 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2624 4E 80 00 20 */ blr
|
||||
@@ -1,60 +0,0 @@
|
||||
lbl_800F2628:
|
||||
/* 800F2628 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F262C 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2630 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2634 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2638 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F263C 4B FC 4C A9 */ bl checkItemActorPointer__9daAlink_cFv
|
||||
/* 800F2640 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2644 40 82 00 0C */ bne lbl_800F2650
|
||||
/* 800F2648 38 60 00 01 */ li r3, 1
|
||||
/* 800F264C 48 00 00 94 */ b lbl_800F26E0
|
||||
lbl_800F2650:
|
||||
/* 800F2650 38 60 00 00 */ li r3, 0
|
||||
/* 800F2654 A0 1F 2F DC */ lhz r0, 0x2fdc(r31)
|
||||
/* 800F2658 28 00 00 40 */ cmplwi r0, 0x40
|
||||
/* 800F265C 41 82 00 0C */ beq lbl_800F2668
|
||||
/* 800F2660 28 00 01 02 */ cmplwi r0, 0x102
|
||||
/* 800F2664 40 82 00 14 */ bne lbl_800F2678
|
||||
lbl_800F2668:
|
||||
/* 800F2668 A0 1F 1F BC */ lhz r0, 0x1fbc(r31)
|
||||
/* 800F266C 28 00 00 54 */ cmplwi r0, 0x54
|
||||
/* 800F2670 40 82 00 08 */ bne lbl_800F2678
|
||||
/* 800F2674 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2678:
|
||||
/* 800F2678 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F267C 41 82 00 10 */ beq lbl_800F268C
|
||||
/* 800F2680 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2684 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F2688 4B FC 0B C9 */ bl setDoStatus__9daAlink_cFUc
|
||||
lbl_800F268C:
|
||||
/* 800F268C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2690 4B FF B3 95 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2694 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2698 40 82 00 0C */ bne lbl_800F26A4
|
||||
/* 800F269C 38 60 00 01 */ li r3, 1
|
||||
/* 800F26A0 48 00 00 40 */ b lbl_800F26E0
|
||||
lbl_800F26A4:
|
||||
/* 800F26A4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F26A8 4B FF B6 C5 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F26AC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F26B0 41 82 00 0C */ beq lbl_800F26BC
|
||||
/* 800F26B4 38 60 00 01 */ li r3, 1
|
||||
/* 800F26B8 48 00 00 28 */ b lbl_800F26E0
|
||||
lbl_800F26BC:
|
||||
/* 800F26BC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F26C0 4B FF C6 D9 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F26C4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F26C8 4B FF CD 89 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F26CC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F26D0 40 82 00 0C */ bne lbl_800F26DC
|
||||
/* 800F26D4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F26D8 4B FF C9 79 */ bl setBodyAngleRideReadyAnime__9daAlink_cFv
|
||||
lbl_800F26DC:
|
||||
/* 800F26DC 38 60 00 01 */ li r3, 1
|
||||
lbl_800F26E0:
|
||||
/* 800F26E0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F26E4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F26E8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F26EC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F26F0 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_800F2454:
|
||||
/* 800F2454 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2458 7C 08 02 A6 */ mflr r0
|
||||
/* 800F245C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2460 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2464 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2468 38 80 00 48 */ li r4, 0x48
|
||||
/* 800F246C 4B FD 09 39 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2470 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2474 40 82 00 0C */ bne lbl_800F2480
|
||||
/* 800F2478 38 60 00 00 */ li r3, 0
|
||||
/* 800F247C 48 00 00 38 */ b lbl_800F24B4
|
||||
lbl_800F2480:
|
||||
/* 800F2480 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2484 4B FF B5 A1 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2488 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F248C 4B FF C9 0D */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2490 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2494 38 80 00 01 */ li r4, 1
|
||||
/* 800F2498 4B FE DF 39 */ bl initBoomerangUpperAnimeSpeed__9daAlink_cFi
|
||||
/* 800F249C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F24A0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F24A4 80 03 5F 18 */ lwz r0, 0x5f18(r3)
|
||||
/* 800F24A8 64 00 00 08 */ oris r0, r0, 8
|
||||
/* 800F24AC 90 03 5F 18 */ stw r0, 0x5f18(r3)
|
||||
/* 800F24B0 38 60 00 01 */ li r3, 1
|
||||
lbl_800F24B4:
|
||||
/* 800F24B4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F24B8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F24BC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F24C0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F24C4 4E 80 00 20 */ blr
|
||||
@@ -1,69 +0,0 @@
|
||||
lbl_800F24C8:
|
||||
/* 800F24C8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F24CC 7C 08 02 A6 */ mflr r0
|
||||
/* 800F24D0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F24D4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F24D8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F24DC 4B FC 4E 09 */ bl checkItemActorPointer__9daAlink_cFv
|
||||
/* 800F24E0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F24E4 40 82 00 0C */ bne lbl_800F24F0
|
||||
/* 800F24E8 38 60 00 01 */ li r3, 1
|
||||
/* 800F24EC 48 00 00 B4 */ b lbl_800F25A0
|
||||
lbl_800F24F0:
|
||||
/* 800F24F0 38 60 00 00 */ li r3, 0
|
||||
/* 800F24F4 A0 1F 2F DC */ lhz r0, 0x2fdc(r31)
|
||||
/* 800F24F8 28 00 00 40 */ cmplwi r0, 0x40
|
||||
/* 800F24FC 41 82 00 0C */ beq lbl_800F2508
|
||||
/* 800F2500 28 00 01 02 */ cmplwi r0, 0x102
|
||||
/* 800F2504 40 82 00 14 */ bne lbl_800F2518
|
||||
lbl_800F2508:
|
||||
/* 800F2508 A0 1F 1F BC */ lhz r0, 0x1fbc(r31)
|
||||
/* 800F250C 28 00 00 54 */ cmplwi r0, 0x54
|
||||
/* 800F2510 40 82 00 08 */ bne lbl_800F2518
|
||||
/* 800F2514 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2518:
|
||||
/* 800F2518 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F251C 41 82 00 10 */ beq lbl_800F252C
|
||||
/* 800F2520 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2524 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F2528 4B FC 0D 29 */ bl setDoStatus__9daAlink_cFUc
|
||||
lbl_800F252C:
|
||||
/* 800F252C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2530 4B FF B4 F5 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2534 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2538 40 82 00 0C */ bne lbl_800F2544
|
||||
/* 800F253C 38 60 00 01 */ li r3, 1
|
||||
/* 800F2540 48 00 00 60 */ b lbl_800F25A0
|
||||
lbl_800F2544:
|
||||
/* 800F2544 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2548 4B FF B8 25 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F254C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2550 41 82 00 0C */ beq lbl_800F255C
|
||||
/* 800F2554 38 60 00 01 */ li r3, 1
|
||||
/* 800F2558 48 00 00 48 */ b lbl_800F25A0
|
||||
lbl_800F255C:
|
||||
/* 800F255C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2560 4B FF C8 39 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2564 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2568 4B FF CE E9 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F256C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2570 40 82 00 24 */ bne lbl_800F2594
|
||||
/* 800F2574 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2578 A8 9F 04 DE */ lha r4, 0x4de(r31)
|
||||
/* 800F257C 4B FF C9 B5 */ bl setRideSubjectAngle__9daAlink_cFs
|
||||
/* 800F2580 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2584 41 82 00 18 */ beq lbl_800F259C
|
||||
/* 800F2588 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F258C 4B FE E8 D9 */ bl setBoomerangSight__9daAlink_cFv
|
||||
/* 800F2590 48 00 00 0C */ b lbl_800F259C
|
||||
lbl_800F2594:
|
||||
/* 800F2594 38 00 00 00 */ li r0, 0
|
||||
/* 800F2598 98 1F 20 68 */ stb r0, 0x2068(r31)
|
||||
lbl_800F259C:
|
||||
/* 800F259C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F25A0:
|
||||
/* 800F25A0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F25A4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F25A8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F25AC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F25B0 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_800F2AD8:
|
||||
/* 800F2AD8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2ADC 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2AE0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2AE4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2AE8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2AEC 4B FF AF 39 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2AF0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2AF4 40 82 00 2C */ bne lbl_800F2B20
|
||||
/* 800F2AF8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2AFC 38 80 00 02 */ li r4, 2
|
||||
/* 800F2B00 C0 22 92 C4 */ lfs f1, lit_6109(r2)
|
||||
/* 800F2B04 4B FB AC 21 */ bl resetUpperAnime__9daAlink_cFQ29daAlink_c13daAlink_UPPERf
|
||||
/* 800F2B08 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2B0C 4B FC CD 79 */ bl returnKeepItemData__9daAlink_cFv
|
||||
/* 800F2B10 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2B14 48 02 51 7D */ bl resetSpecialEvent__9daAlink_cFv
|
||||
/* 800F2B18 38 60 00 01 */ li r3, 1
|
||||
/* 800F2B1C 48 00 00 1C */ b lbl_800F2B38
|
||||
lbl_800F2B20:
|
||||
/* 800F2B20 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2B24 4B FF C2 75 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2B28 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2B2C 38 80 00 01 */ li r4, 1
|
||||
/* 800F2B30 48 01 BF 95 */ bl commonBottleDrink__9daAlink_cFi
|
||||
/* 800F2B34 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2B38:
|
||||
/* 800F2B38 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2B3C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2B40 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2B44 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2B48 4E 80 00 20 */ blr
|
||||
@@ -1,26 +0,0 @@
|
||||
lbl_800F224C:
|
||||
/* 800F224C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2250 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2254 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2258 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F225C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2260 38 80 00 46 */ li r4, 0x46
|
||||
/* 800F2264 4B FD 0B 41 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2268 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F226C 40 82 00 0C */ bne lbl_800F2278
|
||||
/* 800F2270 38 60 00 00 */ li r3, 0
|
||||
/* 800F2274 48 00 00 20 */ b lbl_800F2294
|
||||
lbl_800F2278:
|
||||
/* 800F2278 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F227C 4B FF B7 A9 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2280 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2284 4B FF CB 15 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2288 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F228C 4B FE C9 01 */ bl setBowOrSlingStatus__9daAlink_cFv
|
||||
/* 800F2290 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2294:
|
||||
/* 800F2294 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2298 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F229C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F22A0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F22A4 4E 80 00 20 */ blr
|
||||
@@ -1,40 +0,0 @@
|
||||
lbl_800F22A8:
|
||||
/* 800F22A8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F22AC 7C 08 02 A6 */ mflr r0
|
||||
/* 800F22B0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F22B4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F22B8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F22BC 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F22C0 4B FC 0F 91 */ bl setDoStatus__9daAlink_cFUc
|
||||
/* 800F22C4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F22C8 4B FF B7 5D */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F22CC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F22D0 40 82 00 0C */ bne lbl_800F22DC
|
||||
/* 800F22D4 38 60 00 01 */ li r3, 1
|
||||
/* 800F22D8 48 00 00 48 */ b lbl_800F2320
|
||||
lbl_800F22DC:
|
||||
/* 800F22DC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F22E0 4B FF BA 8D */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F22E4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F22E8 41 82 00 0C */ beq lbl_800F22F4
|
||||
/* 800F22EC 38 60 00 01 */ li r3, 1
|
||||
/* 800F22F0 48 00 00 30 */ b lbl_800F2320
|
||||
lbl_800F22F4:
|
||||
/* 800F22F4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F22F8 4B FF CA A1 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F22FC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2300 4B FE CB 1D */ bl cancelBowMove__9daAlink_cFv
|
||||
/* 800F2304 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2308 4B FF D1 49 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F230C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2310 40 82 00 0C */ bne lbl_800F231C
|
||||
/* 800F2314 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2318 4B FF CD 39 */ bl setBodyAngleRideReadyAnime__9daAlink_cFv
|
||||
lbl_800F231C:
|
||||
/* 800F231C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2320:
|
||||
/* 800F2320 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2324 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2328 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F232C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2330 4E 80 00 20 */ blr
|
||||
@@ -1,28 +0,0 @@
|
||||
lbl_800F2150:
|
||||
/* 800F2150 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2154 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2158 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F215C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2160 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2164 38 80 00 45 */ li r4, 0x45
|
||||
/* 800F2168 4B FD 0C 3D */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F216C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2170 40 82 00 0C */ bne lbl_800F217C
|
||||
/* 800F2174 38 60 00 00 */ li r3, 0
|
||||
/* 800F2178 48 00 00 28 */ b lbl_800F21A0
|
||||
lbl_800F217C:
|
||||
/* 800F217C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2180 4B FF B8 A5 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2184 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2188 4B FF CC 11 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F218C 38 00 00 00 */ li r0, 0
|
||||
/* 800F2190 B0 1F 30 0C */ sth r0, 0x300c(r31)
|
||||
/* 800F2194 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2198 4B FE C9 F5 */ bl setBowOrSlingStatus__9daAlink_cFv
|
||||
/* 800F219C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F21A0:
|
||||
/* 800F21A0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F21A4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F21A8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F21AC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F21B0 4E 80 00 20 */ blr
|
||||
@@ -1,43 +0,0 @@
|
||||
lbl_800F21B4:
|
||||
/* 800F21B4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F21B8 7C 08 02 A6 */ mflr r0
|
||||
/* 800F21BC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F21C0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F21C4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F21C8 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F21CC 4B FC 10 85 */ bl setDoStatus__9daAlink_cFUc
|
||||
/* 800F21D0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F21D4 4B FF B8 51 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F21D8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F21DC 40 82 00 0C */ bne lbl_800F21E8
|
||||
/* 800F21E0 38 60 00 01 */ li r3, 1
|
||||
/* 800F21E4 48 00 00 54 */ b lbl_800F2238
|
||||
lbl_800F21E8:
|
||||
/* 800F21E8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F21EC 4B FF BB 81 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F21F0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F21F4 41 82 00 0C */ beq lbl_800F2200
|
||||
/* 800F21F8 38 60 00 01 */ li r3, 1
|
||||
/* 800F21FC 48 00 00 3C */ b lbl_800F2238
|
||||
lbl_800F2200:
|
||||
/* 800F2200 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2204 4B FF CB 95 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2208 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F220C 4B FF D2 45 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F2210 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2214 40 82 00 20 */ bne lbl_800F2234
|
||||
/* 800F2218 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F221C A8 9F 04 DE */ lha r4, 0x4de(r31)
|
||||
/* 800F2220 4B FF CD 11 */ bl setRideSubjectAngle__9daAlink_cFs
|
||||
/* 800F2224 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2228 41 82 00 0C */ beq lbl_800F2234
|
||||
/* 800F222C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2230 4B FE DA A9 */ bl setBowSight__9daAlink_cFv
|
||||
lbl_800F2234:
|
||||
/* 800F2234 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2238:
|
||||
/* 800F2238 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F223C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2240 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2244 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2248 4E 80 00 20 */ blr
|
||||
@@ -1,27 +0,0 @@
|
||||
lbl_800F2D84:
|
||||
/* 800F2D84 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2D88 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2D8C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2D90 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2D94 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2D98 38 80 00 4D */ li r4, 0x4d
|
||||
/* 800F2D9C 4B FD 00 09 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2DA0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2DA4 40 82 00 0C */ bne lbl_800F2DB0
|
||||
/* 800F2DA8 38 60 00 00 */ li r3, 0
|
||||
/* 800F2DAC 48 00 00 24 */ b lbl_800F2DD0
|
||||
lbl_800F2DB0:
|
||||
/* 800F2DB0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2DB4 38 80 00 53 */ li r4, 0x53
|
||||
/* 800F2DB8 4B FB A1 C9 */ bl setSingleAnimeBase__9daAlink_cFQ29daAlink_c11daAlink_ANM
|
||||
/* 800F2DBC 38 00 00 00 */ li r0, 0
|
||||
/* 800F2DC0 98 1F 2F AB */ stb r0, 0x2fab(r31)
|
||||
/* 800F2DC4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2DC8 4B FF AC 5D */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2DCC 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2DD0:
|
||||
/* 800F2DD0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2DD4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2DD8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2DDC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2DE0 4E 80 00 20 */ blr
|
||||
@@ -1,70 +0,0 @@
|
||||
lbl_800F2DE4:
|
||||
/* 800F2DE4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2DE8 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2DEC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2DF0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2DF4 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800F2DF8 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800F2DFC 3B FE 1F D0 */ addi r31, r30, 0x1fd0
|
||||
/* 800F2E00 4B FF AC 25 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2E04 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2E08 48 06 B6 C5 */ bl checkAnmEnd__16daPy_frameCtrl_cFv
|
||||
/* 800F2E0C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F2E10 41 82 00 18 */ beq lbl_800F2E28
|
||||
/* 800F2E14 38 00 00 13 */ li r0, 0x13
|
||||
/* 800F2E18 98 1E 2F AB */ stb r0, 0x2fab(r30)
|
||||
/* 800F2E1C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F2E20 4B FF DB 61 */ bl procHorseWaitInit__9daAlink_cFv
|
||||
/* 800F2E24 48 00 00 A4 */ b lbl_800F2EC8
|
||||
lbl_800F2E28:
|
||||
/* 800F2E28 C0 3F 00 10 */ lfs f1, 0x10(r31)
|
||||
/* 800F2E2C C0 02 94 20 */ lfs f0, lit_14619(r2)
|
||||
/* 800F2E30 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F2E34 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F2E38 40 82 00 14 */ bne lbl_800F2E4C
|
||||
/* 800F2E3C 88 1E 2F AB */ lbz r0, 0x2fab(r30)
|
||||
/* 800F2E40 60 00 00 02 */ ori r0, r0, 2
|
||||
/* 800F2E44 98 1E 2F AB */ stb r0, 0x2fab(r30)
|
||||
/* 800F2E48 48 00 00 7C */ b lbl_800F2EC4
|
||||
lbl_800F2E4C:
|
||||
/* 800F2E4C C0 02 94 80 */ lfs f0, lit_16036(r2)
|
||||
/* 800F2E50 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F2E54 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F2E58 40 82 00 1C */ bne lbl_800F2E74
|
||||
/* 800F2E5C 38 00 00 05 */ li r0, 5
|
||||
/* 800F2E60 98 1E 2F 93 */ stb r0, 0x2f93(r30)
|
||||
/* 800F2E64 88 1E 2F AB */ lbz r0, 0x2fab(r30)
|
||||
/* 800F2E68 60 00 00 10 */ ori r0, r0, 0x10
|
||||
/* 800F2E6C 98 1E 2F AB */ stb r0, 0x2fab(r30)
|
||||
/* 800F2E70 48 00 00 54 */ b lbl_800F2EC4
|
||||
lbl_800F2E74:
|
||||
/* 800F2E74 C0 02 94 F8 */ lfs f0, lit_20303(r2)
|
||||
/* 800F2E78 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F2E7C 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F2E80 40 82 00 14 */ bne lbl_800F2E94
|
||||
/* 800F2E84 88 1E 2F AB */ lbz r0, 0x2fab(r30)
|
||||
/* 800F2E88 60 00 00 01 */ ori r0, r0, 1
|
||||
/* 800F2E8C 98 1E 2F AB */ stb r0, 0x2fab(r30)
|
||||
/* 800F2E90 48 00 00 34 */ b lbl_800F2EC4
|
||||
lbl_800F2E94:
|
||||
/* 800F2E94 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2E98 C0 22 93 78 */ lfs f1, lit_8676(r2)
|
||||
/* 800F2E9C 48 23 55 91 */ bl checkPass__12J3DFrameCtrlFf
|
||||
/* 800F2EA0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2EA4 41 82 00 20 */ beq lbl_800F2EC4
|
||||
/* 800F2EA8 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F2EAC 3C 80 00 01 */ lis r4, 0x0001 /* 0x0001000E@ha */
|
||||
/* 800F2EB0 38 84 00 0E */ addi r4, r4, 0x000E /* 0x0001000E@l */
|
||||
/* 800F2EB4 81 9E 06 28 */ lwz r12, 0x628(r30)
|
||||
/* 800F2EB8 81 8C 01 14 */ lwz r12, 0x114(r12)
|
||||
/* 800F2EBC 7D 89 03 A6 */ mtctr r12
|
||||
/* 800F2EC0 4E 80 04 21 */ bctrl
|
||||
lbl_800F2EC4:
|
||||
/* 800F2EC4 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2EC8:
|
||||
/* 800F2EC8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2ECC 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800F2ED0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2ED4 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2ED8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2EDC 4E 80 00 20 */ blr
|
||||
@@ -1,48 +0,0 @@
|
||||
lbl_800F1894:
|
||||
/* 800F1894 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F1898 7C 08 02 A6 */ mflr r0
|
||||
/* 800F189C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F18A0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F18A4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F18A8 38 80 00 42 */ li r4, 0x42
|
||||
/* 800F18AC 4B FD 06 C1 */ bl commonProcInit__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F18B0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F18B4 38 80 00 96 */ li r4, 0x96
|
||||
/* 800F18B8 38 A0 00 02 */ li r5, 2
|
||||
/* 800F18BC 3C C0 80 39 */ lis r6, m__25daAlinkHIO_hoCutCharge_c0@ha /* 0x8038DC9C@ha */
|
||||
/* 800F18C0 38 C6 DC 9C */ addi r6, r6, m__25daAlinkHIO_hoCutCharge_c0@l /* 0x8038DC9C@l */
|
||||
/* 800F18C4 4B FB BE 2D */ bl setUpperAnimeParam__9daAlink_cFUsQ29daAlink_c13daAlink_UPPERPC16daAlinkHIO_anm_c
|
||||
/* 800F18C8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F18CC 38 80 00 E8 */ li r4, 0xe8
|
||||
/* 800F18D0 38 A0 00 01 */ li r5, 1
|
||||
/* 800F18D4 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */
|
||||
/* 800F18D8 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */
|
||||
/* 800F18DC 4B FB DB D5 */ bl setFaceBck__9daAlink_cFUsiUs
|
||||
/* 800F18E0 38 00 00 02 */ li r0, 2
|
||||
/* 800F18E4 98 1F 2F 96 */ stb r0, 0x2f96(r31)
|
||||
/* 800F18E8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F18EC 38 80 00 01 */ li r4, 1
|
||||
/* 800F18F0 4B FF D0 29 */ bl setSyncRide__9daAlink_cFi
|
||||
/* 800F18F4 A0 1F 1F 80 */ lhz r0, 0x1f80(r31)
|
||||
/* 800F18F8 28 00 00 19 */ cmplwi r0, 0x19
|
||||
/* 800F18FC 40 82 00 14 */ bne lbl_800F1910
|
||||
/* 800F1900 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F1904 38 80 00 02 */ li r4, 2
|
||||
/* 800F1908 C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800F190C 4B FB C1 E1 */ bl resetUnderAnime__9daAlink_cFQ29daAlink_c13daAlink_UNDERf
|
||||
lbl_800F1910:
|
||||
/* 800F1910 3C 60 80 39 */ lis r3, m__17daAlinkHIO_cut_c0@ha /* 0x8038DE8C@ha */
|
||||
/* 800F1914 38 63 DE 8C */ addi r3, r3, m__17daAlinkHIO_cut_c0@l /* 0x8038DE8C@l */
|
||||
/* 800F1918 A8 03 00 56 */ lha r0, 0x56(r3)
|
||||
/* 800F191C B0 1F 30 0C */ sth r0, 0x300c(r31)
|
||||
/* 800F1920 38 00 00 00 */ li r0, 0
|
||||
/* 800F1924 B0 1F 30 04 */ sth r0, 0x3004(r31)
|
||||
/* 800F1928 80 1F 05 74 */ lwz r0, 0x574(r31)
|
||||
/* 800F192C 64 00 10 00 */ oris r0, r0, 0x1000
|
||||
/* 800F1930 90 1F 05 74 */ stw r0, 0x574(r31)
|
||||
/* 800F1934 38 60 00 01 */ li r3, 1
|
||||
/* 800F1938 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F193C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F1940 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F1944 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F1948 4E 80 00 20 */ blr
|
||||
@@ -1,31 +0,0 @@
|
||||
lbl_800F36E4:
|
||||
/* 800F36E4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F36E8 7C 08 02 A6 */ mflr r0
|
||||
/* 800F36EC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F36F0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F36F4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F36F8 38 80 00 51 */ li r4, 0x51
|
||||
/* 800F36FC 4B FC F6 A9 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F3700 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F3704 40 82 00 0C */ bne lbl_800F3710
|
||||
/* 800F3708 38 60 00 00 */ li r3, 0
|
||||
/* 800F370C 48 00 00 34 */ b lbl_800F3740
|
||||
lbl_800F3710:
|
||||
/* 800F3710 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3714 38 80 00 00 */ li r4, 0
|
||||
/* 800F3718 38 A0 00 00 */ li r5, 0
|
||||
/* 800F371C 4B FC DB C1 */ bl deleteEquipItem__9daAlink_cFii
|
||||
/* 800F3720 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3724 38 80 01 7E */ li r4, 0x17e
|
||||
/* 800F3728 4B FB 98 59 */ bl setSingleAnimeBase__9daAlink_cFQ29daAlink_c11daAlink_ANM
|
||||
/* 800F372C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3730 4B FF A2 F5 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F3734 38 00 00 00 */ li r0, 0
|
||||
/* 800F3738 B0 1F 30 0C */ sth r0, 0x300c(r31)
|
||||
/* 800F373C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F3740:
|
||||
/* 800F3740 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F3744 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F3748 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F374C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F3750 4E 80 00 20 */ blr
|
||||
@@ -1,54 +0,0 @@
|
||||
lbl_800F3754:
|
||||
/* 800F3754 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F3758 7C 08 02 A6 */ mflr r0
|
||||
/* 800F375C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F3760 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F3764 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800F3768 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800F376C 3B FE 1F D0 */ addi r31, r30, 0x1fd0
|
||||
/* 800F3770 4B FF A2 B5 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F3774 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3778 48 06 AD 55 */ bl checkAnmEnd__16daPy_frameCtrl_cFv
|
||||
/* 800F377C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F3780 41 82 00 1C */ beq lbl_800F379C
|
||||
/* 800F3784 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F3788 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F378C 38 63 4F F8 */ addi r3, r3, 0x4ff8
|
||||
/* 800F3790 80 9E 31 84 */ lwz r4, 0x3184(r30)
|
||||
/* 800F3794 4B F5 49 E9 */ bl cutEnd__16dEvent_manager_cFi
|
||||
/* 800F3798 48 00 00 64 */ b lbl_800F37FC
|
||||
lbl_800F379C:
|
||||
/* 800F379C C0 3F 00 10 */ lfs f1, 0x10(r31)
|
||||
/* 800F37A0 C0 02 94 88 */ lfs f0, lit_16038(r2)
|
||||
/* 800F37A4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F37A8 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F37AC 40 82 00 1C */ bne lbl_800F37C8
|
||||
/* 800F37B0 38 00 00 FE */ li r0, 0xfe
|
||||
/* 800F37B4 98 1E 2F 92 */ stb r0, 0x2f92(r30)
|
||||
/* 800F37B8 98 1E 2F 93 */ stb r0, 0x2f93(r30)
|
||||
/* 800F37BC 38 00 00 01 */ li r0, 1
|
||||
/* 800F37C0 B0 1E 30 0C */ sth r0, 0x300c(r30)
|
||||
/* 800F37C4 48 00 00 38 */ b lbl_800F37FC
|
||||
lbl_800F37C8:
|
||||
/* 800F37C8 C0 02 93 1C */ lfs f0, lit_7448(r2)
|
||||
/* 800F37CC FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F37D0 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F37D4 40 82 00 10 */ bne lbl_800F37E4
|
||||
/* 800F37D8 38 00 00 02 */ li r0, 2
|
||||
/* 800F37DC 98 1E 2F 92 */ stb r0, 0x2f92(r30)
|
||||
/* 800F37E0 48 00 00 1C */ b lbl_800F37FC
|
||||
lbl_800F37E4:
|
||||
/* 800F37E4 C0 02 93 3C */ lfs f0, lit_7808(r2)
|
||||
/* 800F37E8 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800F37EC 4C 41 13 82 */ cror 2, 1, 2
|
||||
/* 800F37F0 40 82 00 0C */ bne lbl_800F37FC
|
||||
/* 800F37F4 38 00 00 03 */ li r0, 3
|
||||
/* 800F37F8 98 1E 2F 92 */ stb r0, 0x2f92(r30)
|
||||
lbl_800F37FC:
|
||||
/* 800F37FC 38 60 00 01 */ li r3, 1
|
||||
/* 800F3800 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F3804 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800F3808 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F380C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F3810 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F3814 4E 80 00 20 */ blr
|
||||
@@ -1,26 +0,0 @@
|
||||
lbl_800F2334:
|
||||
/* 800F2334 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2338 7C 08 02 A6 */ mflr r0
|
||||
/* 800F233C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2340 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2344 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2348 38 80 00 47 */ li r4, 0x47
|
||||
/* 800F234C 4B FD 0A 59 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2350 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2354 40 82 00 0C */ bne lbl_800F2360
|
||||
/* 800F2358 38 60 00 00 */ li r3, 0
|
||||
/* 800F235C 48 00 00 20 */ b lbl_800F237C
|
||||
lbl_800F2360:
|
||||
/* 800F2360 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2364 4B FF B6 C1 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2368 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F236C 4B FF CA 2D */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2370 38 00 00 00 */ li r0, 0
|
||||
/* 800F2374 B0 1F 30 04 */ sth r0, 0x3004(r31)
|
||||
/* 800F2378 38 60 00 01 */ li r3, 1
|
||||
lbl_800F237C:
|
||||
/* 800F237C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2380 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2384 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2388 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F238C 4E 80 00 20 */ blr
|
||||
@@ -1,56 +0,0 @@
|
||||
lbl_800F2390:
|
||||
/* 800F2390 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2394 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2398 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F239C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F23A0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F23A4 4B FF B6 81 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F23A8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F23AC 40 82 00 0C */ bne lbl_800F23B8
|
||||
/* 800F23B0 38 60 00 01 */ li r3, 1
|
||||
/* 800F23B4 48 00 00 8C */ b lbl_800F2440
|
||||
lbl_800F23B8:
|
||||
/* 800F23B8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F23BC 4B FF B9 B1 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F23C0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F23C4 41 82 00 0C */ beq lbl_800F23D0
|
||||
/* 800F23C8 38 60 00 01 */ li r3, 1
|
||||
/* 800F23CC 48 00 00 74 */ b lbl_800F2440
|
||||
lbl_800F23D0:
|
||||
/* 800F23D0 80 1F 28 30 */ lwz r0, 0x2830(r31)
|
||||
/* 800F23D4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800F23D8 40 82 00 24 */ bne lbl_800F23FC
|
||||
/* 800F23DC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F23E0 4B FF 18 8D */ bl checkGrabAnime__9daAlink_cCFv
|
||||
/* 800F23E4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F23E8 41 82 00 14 */ beq lbl_800F23FC
|
||||
/* 800F23EC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F23F0 38 80 00 02 */ li r4, 2
|
||||
/* 800F23F4 C0 22 93 24 */ lfs f1, lit_7450(r2)
|
||||
/* 800F23F8 4B FB B3 2D */ bl resetUpperAnime__9daAlink_cFQ29daAlink_c13daAlink_UPPERf
|
||||
lbl_800F23FC:
|
||||
/* 800F23FC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2400 4B FF C9 99 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2404 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2408 4B FF 18 15 */ bl checkGrabThrowAnime__9daAlink_cCFv
|
||||
/* 800F240C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2410 41 82 00 24 */ beq lbl_800F2434
|
||||
/* 800F2414 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2418 C0 22 93 24 */ lfs f1, lit_7450(r2)
|
||||
/* 800F241C 4B FF 33 91 */ bl checkUpperGrabItemThrow__9daAlink_cFf
|
||||
/* 800F2420 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2424 41 82 00 18 */ beq lbl_800F243C
|
||||
/* 800F2428 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F242C 4B FF E5 55 */ bl procHorseWaitInit__9daAlink_cFv
|
||||
/* 800F2430 48 00 00 0C */ b lbl_800F243C
|
||||
lbl_800F2434:
|
||||
/* 800F2434 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2438 4B FF D0 19 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
lbl_800F243C:
|
||||
/* 800F243C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2440:
|
||||
/* 800F2440 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2444 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2448 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F244C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2450 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_800F2824:
|
||||
/* 800F2824 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2828 7C 08 02 A6 */ mflr r0
|
||||
/* 800F282C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2830 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2834 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2838 38 80 00 4B */ li r4, 0x4b
|
||||
/* 800F283C 4B FD 05 69 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2840 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2844 40 82 00 0C */ bne lbl_800F2850
|
||||
/* 800F2848 38 60 00 00 */ li r3, 0
|
||||
/* 800F284C 48 00 00 38 */ b lbl_800F2884
|
||||
lbl_800F2850:
|
||||
/* 800F2850 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2854 4B FF B1 D1 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2858 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F285C 4B FF C5 3D */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2860 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2864 38 80 00 00 */ li r4, 0
|
||||
/* 800F2868 48 01 68 85 */ bl initHookshotUpperAnimeSpeed__9daAlink_cFi
|
||||
/* 800F286C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F2870 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F2874 80 03 5F 18 */ lwz r0, 0x5f18(r3)
|
||||
/* 800F2878 60 00 40 00 */ ori r0, r0, 0x4000
|
||||
/* 800F287C 90 03 5F 18 */ stw r0, 0x5f18(r3)
|
||||
/* 800F2880 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2884:
|
||||
/* 800F2884 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2888 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F288C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2890 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2894 4E 80 00 20 */ blr
|
||||
@@ -1,45 +0,0 @@
|
||||
lbl_800F2898:
|
||||
/* 800F2898 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F289C 7C 08 02 A6 */ mflr r0
|
||||
/* 800F28A0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F28A4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F28A8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F28AC 48 01 66 B9 */ bl cancelHookshotMove__9daAlink_cFv
|
||||
/* 800F28B0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F28B4 48 01 61 65 */ bl checkHookshotWait__9daAlink_cCFv
|
||||
/* 800F28B8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F28BC 41 82 00 10 */ beq lbl_800F28CC
|
||||
/* 800F28C0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F28C4 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F28C8 4B FC 09 89 */ bl setDoStatus__9daAlink_cFUc
|
||||
lbl_800F28CC:
|
||||
/* 800F28CC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F28D0 4B FF B1 55 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F28D4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F28D8 40 82 00 0C */ bne lbl_800F28E4
|
||||
/* 800F28DC 38 60 00 01 */ li r3, 1
|
||||
/* 800F28E0 48 00 00 40 */ b lbl_800F2920
|
||||
lbl_800F28E4:
|
||||
/* 800F28E4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F28E8 4B FF B4 85 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F28EC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F28F0 41 82 00 0C */ beq lbl_800F28FC
|
||||
/* 800F28F4 38 60 00 01 */ li r3, 1
|
||||
/* 800F28F8 48 00 00 28 */ b lbl_800F2920
|
||||
lbl_800F28FC:
|
||||
/* 800F28FC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2900 4B FF C4 99 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2904 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2908 4B FF CB 49 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F290C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2910 40 82 00 0C */ bne lbl_800F291C
|
||||
/* 800F2914 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2918 4B FF C7 39 */ bl setBodyAngleRideReadyAnime__9daAlink_cFv
|
||||
lbl_800F291C:
|
||||
/* 800F291C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2920:
|
||||
/* 800F2920 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2924 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2928 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F292C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2930 4E 80 00 20 */ blr
|
||||
@@ -1,34 +0,0 @@
|
||||
lbl_800F26F4:
|
||||
/* 800F26F4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F26F8 7C 08 02 A6 */ mflr r0
|
||||
/* 800F26FC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F2700 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2704 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2708 38 80 00 4A */ li r4, 0x4a
|
||||
/* 800F270C 4B FD 06 99 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F2710 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F2714 40 82 00 0C */ bne lbl_800F2720
|
||||
/* 800F2718 38 60 00 00 */ li r3, 0
|
||||
/* 800F271C 48 00 00 40 */ b lbl_800F275C
|
||||
lbl_800F2720:
|
||||
/* 800F2720 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2724 4B FF B3 01 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F2728 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F272C 4B FF C6 6D */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F2730 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2734 38 80 00 01 */ li r4, 1
|
||||
/* 800F2738 48 01 69 B5 */ bl initHookshotUpperAnimeSpeed__9daAlink_cFi
|
||||
/* 800F273C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2740 48 01 69 31 */ bl setHookshotReadyMaterial__9daAlink_cFv
|
||||
/* 800F2744 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F2748 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F274C 80 03 5F 18 */ lwz r0, 0x5f18(r3)
|
||||
/* 800F2750 60 00 40 00 */ ori r0, r0, 0x4000
|
||||
/* 800F2754 90 03 5F 18 */ stw r0, 0x5f18(r3)
|
||||
/* 800F2758 38 60 00 01 */ li r3, 1
|
||||
lbl_800F275C:
|
||||
/* 800F275C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2760 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2764 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F2768 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F276C 4E 80 00 20 */ blr
|
||||
@@ -1,52 +0,0 @@
|
||||
lbl_800F2770:
|
||||
/* 800F2770 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F2774 7C 08 02 A6 */ mflr r0
|
||||
/* 800F2778 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F277C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F2780 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F2784 48 01 62 95 */ bl checkHookshotWait__9daAlink_cCFv
|
||||
/* 800F2788 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F278C 41 82 00 10 */ beq lbl_800F279C
|
||||
/* 800F2790 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F2794 38 80 00 12 */ li r4, 0x12
|
||||
/* 800F2798 4B FC 0A B9 */ bl setDoStatus__9daAlink_cFUc
|
||||
lbl_800F279C:
|
||||
/* 800F279C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27A0 4B FF B2 85 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F27A4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F27A8 40 82 00 0C */ bne lbl_800F27B4
|
||||
/* 800F27AC 38 60 00 01 */ li r3, 1
|
||||
/* 800F27B0 48 00 00 60 */ b lbl_800F2810
|
||||
lbl_800F27B4:
|
||||
/* 800F27B4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27B8 4B FF B5 B5 */ bl checkHorseSpecialProc__9daAlink_cFv
|
||||
/* 800F27BC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F27C0 41 82 00 0C */ beq lbl_800F27CC
|
||||
/* 800F27C4 38 60 00 01 */ li r3, 1
|
||||
/* 800F27C8 48 00 00 48 */ b lbl_800F2810
|
||||
lbl_800F27CC:
|
||||
/* 800F27CC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27D0 4B FF C5 C9 */ bl setBaseRideAnime__9daAlink_cFv
|
||||
/* 800F27D4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27D8 4B FF CC 79 */ bl checkNextActionHorse__9daAlink_cFv
|
||||
/* 800F27DC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F27E0 40 82 00 24 */ bne lbl_800F2804
|
||||
/* 800F27E4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27E8 A8 9F 04 DE */ lha r4, 0x4de(r31)
|
||||
/* 800F27EC 4B FF C7 45 */ bl setRideSubjectAngle__9daAlink_cFs
|
||||
/* 800F27F0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F27F4 41 82 00 18 */ beq lbl_800F280C
|
||||
/* 800F27F8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F27FC 48 01 65 B9 */ bl setHookshotSight__9daAlink_cFv
|
||||
/* 800F2800 48 00 00 0C */ b lbl_800F280C
|
||||
lbl_800F2804:
|
||||
/* 800F2804 38 00 00 00 */ li r0, 0
|
||||
/* 800F2808 98 1F 20 68 */ stb r0, 0x2068(r31)
|
||||
lbl_800F280C:
|
||||
/* 800F280C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F2810:
|
||||
/* 800F2810 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F2814 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F2818 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F281C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F2820 4E 80 00 20 */ blr
|
||||
@@ -1,40 +0,0 @@
|
||||
lbl_800F1060:
|
||||
/* 800F1060 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F1064 7C 08 02 A6 */ mflr r0
|
||||
/* 800F1068 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F106C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F1070 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F1074 38 80 00 3E */ li r4, 0x3e
|
||||
/* 800F1078 4B FD 0E F5 */ bl commonProcInit__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F107C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F1080 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800F1084 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800F1088 7D 89 03 A6 */ mtctr r12
|
||||
/* 800F108C 4E 80 04 21 */ bctrl
|
||||
/* 800F1090 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800F1094 41 82 00 14 */ beq lbl_800F10A8
|
||||
/* 800F1098 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F109C 38 80 00 02 */ li r4, 2
|
||||
/* 800F10A0 C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800F10A4 4B FB CA 49 */ bl resetUnderAnime__9daAlink_cFQ29daAlink_c13daAlink_UNDERf
|
||||
lbl_800F10A8:
|
||||
/* 800F10A8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F10AC 4B FF C9 79 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F10B0 38 00 00 00 */ li r0, 0
|
||||
/* 800F10B4 B0 1F 30 04 */ sth r0, 0x3004(r31)
|
||||
/* 800F10B8 B0 1F 30 02 */ sth r0, 0x3002(r31)
|
||||
/* 800F10BC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F10C0 4B FF C9 B9 */ bl setHorseTurnAnime__9daAlink_cFv
|
||||
/* 800F10C4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F10C8 3C 80 00 01 */ lis r4, 0x0001 /* 0x00010006@ha */
|
||||
/* 800F10CC 38 84 00 06 */ addi r4, r4, 0x0006 /* 0x00010006@l */
|
||||
/* 800F10D0 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800F10D4 81 8C 01 14 */ lwz r12, 0x114(r12)
|
||||
/* 800F10D8 7D 89 03 A6 */ mtctr r12
|
||||
/* 800F10DC 4E 80 04 21 */ bctrl
|
||||
/* 800F10E0 38 60 00 01 */ li r3, 1
|
||||
/* 800F10E4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F10E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F10EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F10F0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F10F4 4E 80 00 20 */ blr
|
||||
@@ -1,42 +0,0 @@
|
||||
lbl_800F10F8:
|
||||
/* 800F10F8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F10FC 7C 08 02 A6 */ mflr r0
|
||||
/* 800F1100 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F1104 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F1108 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800F110C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800F1110 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F1114 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F1118 83 E4 5D B8 */ lwz r31, 0x5db8(r4)
|
||||
/* 800F111C 4B FF C9 09 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F1120 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1124 40 82 00 0C */ bne lbl_800F1130
|
||||
/* 800F1128 38 60 00 01 */ li r3, 1
|
||||
/* 800F112C 48 00 00 44 */ b lbl_800F1170
|
||||
lbl_800F1130:
|
||||
/* 800F1130 38 60 00 00 */ li r3, 0
|
||||
/* 800F1134 88 1F 16 B4 */ lbz r0, 0x16b4(r31)
|
||||
/* 800F1138 28 00 00 05 */ cmplwi r0, 5
|
||||
/* 800F113C 40 82 00 14 */ bne lbl_800F1150
|
||||
/* 800F1140 A8 1F 17 1A */ lha r0, 0x171a(r31)
|
||||
/* 800F1144 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 800F1148 40 82 00 08 */ bne lbl_800F1150
|
||||
/* 800F114C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F1150:
|
||||
/* 800F1150 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F1154 41 82 00 10 */ beq lbl_800F1164
|
||||
/* 800F1158 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F115C 48 00 00 2D */ bl procHorseLandInit__9daAlink_cFv
|
||||
/* 800F1160 48 00 00 0C */ b lbl_800F116C
|
||||
lbl_800F1164:
|
||||
/* 800F1164 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F1168 4B FF C9 11 */ bl setHorseTurnAnime__9daAlink_cFv
|
||||
lbl_800F116C:
|
||||
/* 800F116C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F1170:
|
||||
/* 800F1170 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F1174 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800F1178 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F117C 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F1180 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F1184 4E 80 00 20 */ blr
|
||||
@@ -1,33 +0,0 @@
|
||||
lbl_800F1188:
|
||||
/* 800F1188 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F118C 7C 08 02 A6 */ mflr r0
|
||||
/* 800F1190 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F1194 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F1198 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F119C 38 80 00 3F */ li r4, 0x3f
|
||||
/* 800F11A0 4B FD 0D CD */ bl commonProcInit__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F11A4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F11A8 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800F11AC 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800F11B0 7D 89 03 A6 */ mtctr r12
|
||||
/* 800F11B4 4E 80 04 21 */ bctrl
|
||||
/* 800F11B8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800F11BC 41 82 00 14 */ beq lbl_800F11D0
|
||||
/* 800F11C0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F11C4 38 80 00 02 */ li r4, 2
|
||||
/* 800F11C8 C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800F11CC 4B FB C9 21 */ bl resetUnderAnime__9daAlink_cFQ29daAlink_c13daAlink_UNDERf
|
||||
lbl_800F11D0:
|
||||
/* 800F11D0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F11D4 4B FF C8 51 */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F11D8 38 00 00 00 */ li r0, 0
|
||||
/* 800F11DC B0 1F 30 04 */ sth r0, 0x3004(r31)
|
||||
/* 800F11E0 B0 1F 30 02 */ sth r0, 0x3002(r31)
|
||||
/* 800F11E4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F11E8 4B FF C8 91 */ bl setHorseTurnAnime__9daAlink_cFv
|
||||
/* 800F11EC 38 60 00 01 */ li r3, 1
|
||||
/* 800F11F0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F11F4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F11F8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F11FC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F1200 4E 80 00 20 */ blr
|
||||
@@ -1,42 +0,0 @@
|
||||
lbl_800F1204:
|
||||
/* 800F1204 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F1208 7C 08 02 A6 */ mflr r0
|
||||
/* 800F120C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F1210 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F1214 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800F1218 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800F121C 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F1220 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F1224 83 E4 5D B8 */ lwz r31, 0x5db8(r4)
|
||||
/* 800F1228 4B FF C7 FD */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F122C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1230 40 82 00 0C */ bne lbl_800F123C
|
||||
/* 800F1234 38 60 00 01 */ li r3, 1
|
||||
/* 800F1238 48 00 00 44 */ b lbl_800F127C
|
||||
lbl_800F123C:
|
||||
/* 800F123C 38 60 00 00 */ li r3, 0
|
||||
/* 800F1240 88 1F 16 B4 */ lbz r0, 0x16b4(r31)
|
||||
/* 800F1244 28 00 00 05 */ cmplwi r0, 5
|
||||
/* 800F1248 40 82 00 14 */ bne lbl_800F125C
|
||||
/* 800F124C A8 1F 17 1A */ lha r0, 0x171a(r31)
|
||||
/* 800F1250 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 800F1254 40 82 00 08 */ bne lbl_800F125C
|
||||
/* 800F1258 38 60 00 01 */ li r3, 1
|
||||
lbl_800F125C:
|
||||
/* 800F125C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F1260 40 82 00 10 */ bne lbl_800F1270
|
||||
/* 800F1264 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F1268 4B FF F7 19 */ bl procHorseWaitInit__9daAlink_cFv
|
||||
/* 800F126C 48 00 00 0C */ b lbl_800F1278
|
||||
lbl_800F1270:
|
||||
/* 800F1270 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800F1274 4B FF C8 05 */ bl setHorseTurnAnime__9daAlink_cFv
|
||||
lbl_800F1278:
|
||||
/* 800F1278 38 60 00 01 */ li r3, 1
|
||||
lbl_800F127C:
|
||||
/* 800F127C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F1280 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800F1284 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F1288 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F128C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F1290 4E 80 00 20 */ blr
|
||||
@@ -1,35 +0,0 @@
|
||||
lbl_800F3818:
|
||||
/* 800F3818 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F381C 7C 08 02 A6 */ mflr r0
|
||||
/* 800F3820 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F3824 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F3828 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F382C 38 80 00 52 */ li r4, 0x52
|
||||
/* 800F3830 4B FC F5 75 */ bl commonProcInitNotSameProc__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F3834 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F3838 40 82 00 0C */ bne lbl_800F3844
|
||||
/* 800F383C 38 60 00 00 */ li r3, 0
|
||||
/* 800F3840 48 00 00 40 */ b lbl_800F3880
|
||||
lbl_800F3844:
|
||||
/* 800F3844 A0 1F 2F DC */ lhz r0, 0x2fdc(r31)
|
||||
/* 800F3848 28 00 01 03 */ cmplwi r0, 0x103
|
||||
/* 800F384C 41 82 00 1C */ beq lbl_800F3868
|
||||
/* 800F3850 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3854 38 80 00 00 */ li r4, 0
|
||||
/* 800F3858 38 A0 00 00 */ li r5, 0
|
||||
/* 800F385C 4B FC DA 81 */ bl deleteEquipItem__9daAlink_cFii
|
||||
/* 800F3860 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3864 4B FD DA 05 */ bl setSwordModel__9daAlink_cFv
|
||||
lbl_800F3868:
|
||||
/* 800F3868 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F386C 38 80 01 99 */ li r4, 0x199
|
||||
/* 800F3870 4B FB 97 11 */ bl setSingleAnimeBase__9daAlink_cFQ29daAlink_c11daAlink_ANM
|
||||
/* 800F3874 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F3878 4B FF A1 AD */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F387C 38 60 00 01 */ li r3, 1
|
||||
lbl_800F3880:
|
||||
/* 800F3880 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F3884 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F3888 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F388C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F3890 4E 80 00 20 */ blr
|
||||
@@ -1,23 +0,0 @@
|
||||
lbl_800F3894:
|
||||
/* 800F3894 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F3898 7C 08 02 A6 */ mflr r0
|
||||
/* 800F389C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F38A0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F38A4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F38A8 4B FF A1 7D */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F38AC 38 7F 1F D0 */ addi r3, r31, 0x1fd0
|
||||
/* 800F38B0 48 06 AC 1D */ bl checkAnmEnd__16daPy_frameCtrl_cFv
|
||||
/* 800F38B4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800F38B8 41 82 00 18 */ beq lbl_800F38D0
|
||||
/* 800F38BC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800F38C0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800F38C4 38 63 4F F8 */ addi r3, r3, 0x4ff8
|
||||
/* 800F38C8 80 9F 31 84 */ lwz r4, 0x3184(r31)
|
||||
/* 800F38CC 4B F5 48 B1 */ bl cutEnd__16dEvent_manager_cFi
|
||||
lbl_800F38D0:
|
||||
/* 800F38D0 38 60 00 01 */ li r3, 1
|
||||
/* 800F38D4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F38D8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F38DC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F38E0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F38E4 4E 80 00 20 */ blr
|
||||
@@ -1,27 +0,0 @@
|
||||
lbl_800F1294:
|
||||
/* 800F1294 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F1298 7C 08 02 A6 */ mflr r0
|
||||
/* 800F129C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F12A0 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F12A4 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F12A8 38 80 00 40 */ li r4, 0x40
|
||||
/* 800F12AC 4B FD 0C C1 */ bl commonProcInit__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F12B0 A0 1F 1F 80 */ lhz r0, 0x1f80(r31)
|
||||
/* 800F12B4 28 00 00 19 */ cmplwi r0, 0x19
|
||||
/* 800F12B8 40 82 00 14 */ bne lbl_800F12CC
|
||||
/* 800F12BC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F12C0 38 80 00 02 */ li r4, 2
|
||||
/* 800F12C4 C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800F12C8 4B FB C8 25 */ bl resetUnderAnime__9daAlink_cFQ29daAlink_c13daAlink_UNDERf
|
||||
lbl_800F12CC:
|
||||
/* 800F12CC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F12D0 38 80 00 00 */ li r4, 0
|
||||
/* 800F12D4 4B FF D6 45 */ bl setSyncRide__9daAlink_cFi
|
||||
/* 800F12D8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F12DC 4B FD D8 19 */ bl setSubjectMode__9daAlink_cFv
|
||||
/* 800F12E0 38 60 00 01 */ li r3, 1
|
||||
/* 800F12E4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F12E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F12EC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F12F0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F12F4 4E 80 00 20 */ blr
|
||||
@@ -1,63 +0,0 @@
|
||||
lbl_800F12F8:
|
||||
/* 800F12F8 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 800F12FC 7C 08 02 A6 */ mflr r0
|
||||
/* 800F1300 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 800F1304 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800F1308 48 27 0E D1 */ bl _savegpr_28
|
||||
/* 800F130C 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 800F1310 80 03 05 80 */ lwz r0, 0x580(r3)
|
||||
/* 800F1314 64 00 04 00 */ oris r0, r0, 0x400
|
||||
/* 800F1318 90 03 05 80 */ stw r0, 0x580(r3)
|
||||
/* 800F131C AB E3 04 E6 */ lha r31, 0x4e6(r3)
|
||||
/* 800F1320 AB C3 04 DE */ lha r30, 0x4de(r3)
|
||||
/* 800F1324 83 A3 31 90 */ lwz r29, 0x3190(r3)
|
||||
/* 800F1328 38 80 00 00 */ li r4, 0
|
||||
/* 800F132C 4B FF D5 ED */ bl setSyncRide__9daAlink_cFi
|
||||
/* 800F1330 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1334 40 82 00 0C */ bne lbl_800F1340
|
||||
/* 800F1338 38 60 00 01 */ li r3, 1
|
||||
/* 800F133C 48 00 00 84 */ b lbl_800F13C0
|
||||
lbl_800F1340:
|
||||
/* 800F1340 B3 FC 04 E6 */ sth r31, 0x4e6(r28)
|
||||
/* 800F1344 7F 83 E3 78 */ mr r3, r28
|
||||
/* 800F1348 38 80 00 01 */ li r4, 1
|
||||
/* 800F134C 4B FD D8 8D */ bl checkSubjectEnd__9daAlink_cFi
|
||||
/* 800F1350 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1354 41 82 00 10 */ beq lbl_800F1364
|
||||
/* 800F1358 7F 83 E3 78 */ mr r3, r28
|
||||
/* 800F135C 4B FF F6 25 */ bl procHorseWaitInit__9daAlink_cFv
|
||||
/* 800F1360 48 00 00 5C */ b lbl_800F13BC
|
||||
lbl_800F1364:
|
||||
/* 800F1364 7F 83 E3 78 */ mr r3, r28
|
||||
/* 800F1368 4B FC 89 C5 */ bl checkNextActionFromButton__9daAlink_cFv
|
||||
/* 800F136C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1370 41 82 00 40 */ beq lbl_800F13B0
|
||||
/* 800F1374 7F 83 E3 78 */ mr r3, r28
|
||||
/* 800F1378 4B FC 9C 09 */ bl checkUpperReadyThrowAnime__9daAlink_cCFv
|
||||
/* 800F137C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800F1380 41 82 00 28 */ beq lbl_800F13A8
|
||||
/* 800F1384 93 BC 31 90 */ stw r29, 0x3190(r28)
|
||||
/* 800F1388 80 1C 31 90 */ lwz r0, 0x3190(r28)
|
||||
/* 800F138C B0 1C 05 9E */ sth r0, 0x59e(r28)
|
||||
/* 800F1390 A8 1C 05 9C */ lha r0, 0x59c(r28)
|
||||
/* 800F1394 B0 1C 31 0A */ sth r0, 0x310a(r28)
|
||||
/* 800F1398 A8 7C 04 E6 */ lha r3, 0x4e6(r28)
|
||||
/* 800F139C 80 1C 31 90 */ lwz r0, 0x3190(r28)
|
||||
/* 800F13A0 7C 03 02 14 */ add r0, r3, r0
|
||||
/* 800F13A4 B0 1C 31 0C */ sth r0, 0x310c(r28)
|
||||
lbl_800F13A8:
|
||||
/* 800F13A8 38 60 00 01 */ li r3, 1
|
||||
/* 800F13AC 48 00 00 14 */ b lbl_800F13C0
|
||||
lbl_800F13B0:
|
||||
/* 800F13B0 7F 83 E3 78 */ mr r3, r28
|
||||
/* 800F13B4 7F C4 F3 78 */ mr r4, r30
|
||||
/* 800F13B8 4B FF DB 79 */ bl setRideSubjectAngle__9daAlink_cFs
|
||||
lbl_800F13BC:
|
||||
/* 800F13BC 38 60 00 01 */ li r3, 1
|
||||
lbl_800F13C0:
|
||||
/* 800F13C0 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800F13C4 48 27 0E 61 */ bl _restgpr_28
|
||||
/* 800F13C8 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 800F13CC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F13D0 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 800F13D4 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_800F0C6C:
|
||||
/* 800F0C6C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800F0C70 7C 08 02 A6 */ mflr r0
|
||||
/* 800F0C74 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800F0C78 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800F0C7C 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800F0C80 38 80 00 3D */ li r4, 0x3d
|
||||
/* 800F0C84 4B FD 12 E9 */ bl commonProcInit__9daAlink_cFQ29daAlink_c12daAlink_PROC
|
||||
/* 800F0C88 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F0C8C 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800F0C90 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800F0C94 7D 89 03 A6 */ mtctr r12
|
||||
/* 800F0C98 4E 80 04 21 */ bctrl
|
||||
/* 800F0C9C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800F0CA0 41 82 00 14 */ beq lbl_800F0CB4
|
||||
/* 800F0CA4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F0CA8 38 80 00 02 */ li r4, 2
|
||||
/* 800F0CAC C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800F0CB0 4B FB CE 3D */ bl resetUnderAnime__9daAlink_cFQ29daAlink_c13daAlink_UNDERf
|
||||
lbl_800F0CB4:
|
||||
/* 800F0CB4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F0CB8 4B FF CD 6D */ bl setSyncRidePos__9daAlink_cFv
|
||||
/* 800F0CBC 38 00 00 00 */ li r0, 0
|
||||
/* 800F0CC0 B0 1F 30 04 */ sth r0, 0x3004(r31)
|
||||
/* 800F0CC4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800F0CC8 4B FF CD B1 */ bl setHorseTurnAnime__9daAlink_cFv
|
||||
/* 800F0CCC 38 60 00 01 */ li r3, 1
|
||||
/* 800F0CD0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800F0CD4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800F0CD8 7C 08 03 A6 */ mtlr r0
|
||||
/* 800F0CDC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800F0CE0 4E 80 00 20 */ blr
|
||||
@@ -1,122 +0,0 @@
|
||||
lbl_800ECBD0:
|
||||
/* 800ECBD0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800ECBD4 7C 08 02 A6 */ mflr r0
|
||||
/* 800ECBD8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800ECBDC 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800ECBE0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800ECBE4 81 83 06 28 */ lwz r12, 0x628(r3)
|
||||
/* 800ECBE8 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800ECBEC 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECBF0 4E 80 04 21 */ bctrl
|
||||
/* 800ECBF4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECBF8 41 82 00 34 */ beq lbl_800ECC2C
|
||||
/* 800ECBFC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800ECC00 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800ECC04 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800ECC08 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECC0C 41 82 00 10 */ beq lbl_800ECC1C
|
||||
/* 800ECC10 39 83 18 F8 */ addi r12, r3, 0x18f8
|
||||
/* 800ECC14 48 27 54 71 */ bl __ptmf_scall
|
||||
/* 800ECC18 60 00 00 00 */ nop
|
||||
lbl_800ECC1C:
|
||||
/* 800ECC1C 38 7F 2C A8 */ addi r3, r31, 0x2ca8
|
||||
/* 800ECC20 38 80 00 00 */ li r4, 0
|
||||
/* 800ECC24 48 1D 6E 49 */ bl setRiding__14Z2CreatureLinkFb
|
||||
/* 800ECC28 48 00 00 FC */ b lbl_800ECD24
|
||||
lbl_800ECC2C:
|
||||
/* 800ECC2C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECC30 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECC34 81 8C 01 8C */ lwz r12, 0x18c(r12)
|
||||
/* 800ECC38 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECC3C 4E 80 04 21 */ bctrl
|
||||
/* 800ECC40 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECC44 41 82 00 18 */ beq lbl_800ECC5C
|
||||
/* 800ECC48 80 7F 28 18 */ lwz r3, 0x2818(r31)
|
||||
/* 800ECC4C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECC50 41 82 00 D4 */ beq lbl_800ECD24
|
||||
/* 800ECC54 4B F4 B0 A1 */ bl getOff__10e_wb_classFv
|
||||
/* 800ECC58 48 00 00 CC */ b lbl_800ECD24
|
||||
lbl_800ECC5C:
|
||||
/* 800ECC5C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECC60 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECC64 81 8C 01 98 */ lwz r12, 0x198(r12)
|
||||
/* 800ECC68 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECC6C 4E 80 04 21 */ bctrl
|
||||
/* 800ECC70 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECC74 41 82 00 38 */ beq lbl_800ECCAC
|
||||
/* 800ECC78 80 7F 28 18 */ lwz r3, 0x2818(r31)
|
||||
/* 800ECC7C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECC80 41 82 00 0C */ beq lbl_800ECC8C
|
||||
/* 800ECC84 38 00 00 01 */ li r0, 1
|
||||
/* 800ECC88 98 03 0A 71 */ stb r0, 0xa71(r3)
|
||||
lbl_800ECC8C:
|
||||
/* 800ECC8C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECC90 3C 80 00 02 */ lis r4, 0x0002 /* 0x00020077@ha */
|
||||
/* 800ECC94 38 84 00 77 */ addi r4, r4, 0x0077 /* 0x00020077@l */
|
||||
/* 800ECC98 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECC9C 81 8C 01 18 */ lwz r12, 0x118(r12)
|
||||
/* 800ECCA0 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECCA4 4E 80 04 21 */ bctrl
|
||||
/* 800ECCA8 48 00 00 7C */ b lbl_800ECD24
|
||||
lbl_800ECCAC:
|
||||
/* 800ECCAC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECCB0 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECCB4 81 8C 01 90 */ lwz r12, 0x190(r12)
|
||||
/* 800ECCB8 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECCBC 4E 80 04 21 */ bctrl
|
||||
/* 800ECCC0 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECCC4 41 82 00 1C */ beq lbl_800ECCE0
|
||||
/* 800ECCC8 A0 1F 2F DC */ lhz r0, 0x2fdc(r31)
|
||||
/* 800ECCCC 28 00 01 0B */ cmplwi r0, 0x10b
|
||||
/* 800ECCD0 40 82 00 54 */ bne lbl_800ECD24
|
||||
/* 800ECCD4 38 00 00 FF */ li r0, 0xff
|
||||
/* 800ECCD8 B0 1F 2F DC */ sth r0, 0x2fdc(r31)
|
||||
/* 800ECCDC 48 00 00 48 */ b lbl_800ECD24
|
||||
lbl_800ECCE0:
|
||||
/* 800ECCE0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECCE4 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECCE8 81 8C 01 94 */ lwz r12, 0x194(r12)
|
||||
/* 800ECCEC 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECCF0 4E 80 04 21 */ bctrl
|
||||
/* 800ECCF4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECCF8 41 82 00 2C */ beq lbl_800ECD24
|
||||
/* 800ECCFC 38 00 00 00 */ li r0, 0
|
||||
/* 800ECD00 80 7F 28 18 */ lwz r3, 0x2818(r31)
|
||||
/* 800ECD04 98 03 09 60 */ stb r0, 0x960(r3)
|
||||
/* 800ECD08 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECD0C 48 02 8F 15 */ bl checkEventRun__9daAlink_cCFv
|
||||
/* 800ECD10 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ECD14 41 82 00 10 */ beq lbl_800ECD24
|
||||
/* 800ECD18 38 00 00 01 */ li r0, 1
|
||||
/* 800ECD1C 80 7F 28 18 */ lwz r3, 0x2818(r31)
|
||||
/* 800ECD20 98 03 09 62 */ stb r0, 0x962(r3)
|
||||
lbl_800ECD24:
|
||||
/* 800ECD24 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECD28 81 9F 06 28 */ lwz r12, 0x628(r31)
|
||||
/* 800ECD2C 81 8C 01 94 */ lwz r12, 0x194(r12)
|
||||
/* 800ECD30 7D 89 03 A6 */ mtctr r12
|
||||
/* 800ECD34 4E 80 04 21 */ bctrl
|
||||
/* 800ECD38 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800ECD3C 41 82 00 14 */ beq lbl_800ECD50
|
||||
/* 800ECD40 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ECD44 48 02 8E DD */ bl checkEventRun__9daAlink_cCFv
|
||||
/* 800ECD48 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ECD4C 41 82 00 0C */ beq lbl_800ECD58
|
||||
lbl_800ECD50:
|
||||
/* 800ECD50 38 7F 28 14 */ addi r3, r31, 0x2814
|
||||
/* 800ECD54 48 07 1F A9 */ bl clearData__16daPy_actorKeep_cFv
|
||||
lbl_800ECD58:
|
||||
/* 800ECD58 38 60 00 00 */ li r3, 0
|
||||
/* 800ECD5C 98 7F 2F AA */ stb r3, 0x2faa(r31)
|
||||
/* 800ECD60 80 1F 05 74 */ lwz r0, 0x574(r31)
|
||||
/* 800ECD64 54 00 05 64 */ rlwinm r0, r0, 0, 0x15, 0x12
|
||||
/* 800ECD68 90 1F 05 74 */ stw r0, 0x574(r31)
|
||||
/* 800ECD6C 38 00 00 0A */ li r0, 0xa
|
||||
/* 800ECD70 B0 1F 05 4E */ sth r0, 0x54e(r31)
|
||||
/* 800ECD74 B0 7F 04 E4 */ sth r3, 0x4e4(r31)
|
||||
/* 800ECD78 B0 7F 04 E8 */ sth r3, 0x4e8(r31)
|
||||
/* 800ECD7C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800ECD80 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800ECD84 7C 08 03 A6 */ mtlr r0
|
||||
/* 800ECD88 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800ECD8C 4E 80 00 20 */ blr
|
||||
@@ -1,60 +0,0 @@
|
||||
lbl_800EF884:
|
||||
/* 800EF884 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 800EF888 7C 08 02 A6 */ mflr r0
|
||||
/* 800EF88C 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 800EF890 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800EF894 48 27 29 49 */ bl _savegpr_29
|
||||
/* 800EF898 7C 7D 1B 78 */ mr r29, r3
|
||||
/* 800EF89C 7C 9E 23 78 */ mr r30, r4
|
||||
/* 800EF8A0 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EF8A4 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EF8A8 83 E4 5D B8 */ lwz r31, 0x5db8(r4)
|
||||
/* 800EF8AC 88 04 5E 24 */ lbz r0, 0x5e24(r4)
|
||||
/* 800EF8B0 28 00 00 32 */ cmplwi r0, 0x32
|
||||
/* 800EF8B4 40 82 00 8C */ bne lbl_800EF940
|
||||
/* 800EF8B8 88 1D 2F 8D */ lbz r0, 0x2f8d(r29)
|
||||
/* 800EF8BC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
|
||||
/* 800EF8C0 41 82 00 80 */ beq lbl_800EF940
|
||||
/* 800EF8C4 81 83 06 28 */ lwz r12, 0x628(r3)
|
||||
/* 800EF8C8 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EF8CC 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EF8D0 4E 80 04 21 */ bctrl
|
||||
/* 800EF8D4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EF8D8 41 82 00 10 */ beq lbl_800EF8E8
|
||||
/* 800EF8DC 80 1F 17 48 */ lwz r0, 0x1748(r31)
|
||||
/* 800EF8E0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
|
||||
/* 800EF8E4 40 82 00 14 */ bne lbl_800EF8F8
|
||||
lbl_800EF8E8:
|
||||
/* 800EF8E8 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800EF8EC 4B FF D6 19 */ bl checkHorseLieAnime__9daAlink_cCFv
|
||||
/* 800EF8F0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EF8F4 41 82 00 3C */ beq lbl_800EF930
|
||||
lbl_800EF8F8:
|
||||
/* 800EF8F8 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800EF8FC 38 80 00 02 */ li r4, 2
|
||||
/* 800EF900 C0 22 92 BC */ lfs f1, lit_6041(r2)
|
||||
/* 800EF904 4B FB DE 21 */ bl resetUpperAnime__9daAlink_cFQ29daAlink_c13daAlink_UPPERf
|
||||
/* 800EF908 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800EF90C 38 80 00 00 */ li r4, 0
|
||||
/* 800EF910 4B FD 5E 95 */ bl procBackJumpInit__9daAlink_cFi
|
||||
/* 800EF914 C0 3D 04 D4 */ lfs f1, 0x4d4(r29)
|
||||
/* 800EF918 3C 60 80 39 */ lis r3, m__22daAlinkHIO_backJump_c0@ha /* 0x8038D82C@ha */
|
||||
/* 800EF91C 38 63 D8 2C */ addi r3, r3, m__22daAlinkHIO_backJump_c0@l /* 0x8038D82C@l */
|
||||
/* 800EF920 C0 03 00 2C */ lfs f0, 0x2c(r3)
|
||||
/* 800EF924 EC 01 00 2A */ fadds f0, f1, f0
|
||||
/* 800EF928 D0 1D 04 D4 */ stfs f0, 0x4d4(r29)
|
||||
/* 800EF92C 48 00 00 14 */ b lbl_800EF940
|
||||
lbl_800EF930:
|
||||
/* 800EF930 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800EF934 7F C4 F3 78 */ mr r4, r30
|
||||
/* 800EF938 48 00 0A 55 */ bl procHorseGetOffInit__9daAlink_cFi
|
||||
/* 800EF93C 48 00 00 08 */ b lbl_800EF944
|
||||
lbl_800EF940:
|
||||
/* 800EF940 38 60 00 00 */ li r3, 0
|
||||
lbl_800EF944:
|
||||
/* 800EF944 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800EF948 48 27 28 E1 */ bl _restgpr_29
|
||||
/* 800EF94C 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 800EF950 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EF954 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 800EF958 4E 80 00 20 */ blr
|
||||
@@ -1,57 +0,0 @@
|
||||
lbl_800EEE5C:
|
||||
/* 800EEE5C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EEE60 7C 08 02 A6 */ mflr r0
|
||||
/* 800EEE64 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EEE68 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EEE6C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800EEE70 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800EEE74 7C 9F 23 78 */ mr r31, r4
|
||||
/* 800EEE78 81 83 06 28 */ lwz r12, 0x628(r3)
|
||||
/* 800EEE7C 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EEE80 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EEE84 4E 80 04 21 */ bctrl
|
||||
/* 800EEE88 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EEE8C 41 82 00 80 */ beq lbl_800EEF0C
|
||||
/* 800EEE90 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEE94 4B FC A3 C1 */ bl checkNoUpperAnime__9daAlink_cCFv
|
||||
/* 800EEE98 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEE9C 41 82 00 70 */ beq lbl_800EEF0C
|
||||
/* 800EEEA0 A0 1E 2F DC */ lhz r0, 0x2fdc(r30)
|
||||
/* 800EEEA4 28 00 01 03 */ cmplwi r0, 0x103
|
||||
/* 800EEEA8 40 82 00 64 */ bne lbl_800EEF0C
|
||||
/* 800EEEAC 4B FF D8 C1 */ bl checkHorseZeldaBowMode__9daAlink_cFv
|
||||
/* 800EEEB0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEEB4 40 82 00 58 */ bne lbl_800EEF0C
|
||||
/* 800EEEB8 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 800EEEBC 41 82 00 14 */ beq lbl_800EEED0
|
||||
/* 800EEEC0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEEC4 4B FF FF 6D */ bl checkHorseSwordUpSpped__9daAlink_cFv
|
||||
/* 800EEEC8 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800EEECC 40 82 00 28 */ bne lbl_800EEEF4
|
||||
lbl_800EEED0:
|
||||
/* 800EEED0 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 800EEED4 40 82 00 38 */ bne lbl_800EEF0C
|
||||
/* 800EEED8 80 7E 27 EC */ lwz r3, 0x27ec(r30)
|
||||
/* 800EEEDC 4B FE D6 6D */ bl checkEnemyGroup__9daAlink_cFP10fopAc_ac_c
|
||||
/* 800EEEE0 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEEE4 41 82 00 28 */ beq lbl_800EEF0C
|
||||
/* 800EEEE8 80 1E 05 74 */ lwz r0, 0x574(r30)
|
||||
/* 800EEEEC 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
|
||||
/* 800EEEF0 41 82 00 1C */ beq lbl_800EEF0C
|
||||
lbl_800EEEF4:
|
||||
/* 800EEEF4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEEF8 4B FF E0 A5 */ bl setHorseSwordUpAnime__9daAlink_cFv
|
||||
/* 800EEEFC 3C 60 80 39 */ lis r3, m__19daAlinkHIO_horse_c0@ha /* 0x8038E5A4@ha */
|
||||
/* 800EEF00 38 63 E5 A4 */ addi r3, r3, m__19daAlinkHIO_horse_c0@l /* 0x8038E5A4@l */
|
||||
/* 800EEF04 A8 03 00 50 */ lha r0, 0x50(r3)
|
||||
/* 800EEF08 B0 1E 30 02 */ sth r0, 0x3002(r30)
|
||||
lbl_800EEF0C:
|
||||
/* 800EEF0C 80 1E 05 74 */ lwz r0, 0x574(r30)
|
||||
/* 800EEF10 54 00 05 66 */ rlwinm r0, r0, 0, 0x15, 0x13
|
||||
/* 800EEF14 90 1E 05 74 */ stw r0, 0x574(r30)
|
||||
/* 800EEF18 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EEF1C 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800EEF20 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EEF24 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EEF28 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EEF2C 4E 80 00 20 */ blr
|
||||
@@ -1,36 +0,0 @@
|
||||
lbl_800ECFF4:
|
||||
/* 800ECFF4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800ECFF8 7C 08 02 A6 */ mflr r0
|
||||
/* 800ECFFC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800ED000 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800ED004 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800ED008 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800ED00C 7C 9F 23 78 */ mr r31, r4
|
||||
/* 800ED010 48 00 00 65 */ bl checkHorseNoUpperAnime__9daAlink_cCFv
|
||||
/* 800ED014 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ED018 40 82 00 2C */ bne lbl_800ED044
|
||||
/* 800ED01C 2C 1F 00 00 */ cmpwi r31, 0
|
||||
/* 800ED020 40 82 00 10 */ bne lbl_800ED030
|
||||
/* 800ED024 A0 1E 1F BC */ lhz r0, 0x1fbc(r30)
|
||||
/* 800ED028 28 00 02 4D */ cmplwi r0, 0x24d
|
||||
/* 800ED02C 41 82 00 18 */ beq lbl_800ED044
|
||||
lbl_800ED030:
|
||||
/* 800ED030 2C 1F 00 01 */ cmpwi r31, 1
|
||||
/* 800ED034 40 82 00 28 */ bne lbl_800ED05C
|
||||
/* 800ED038 A0 1E 1F BC */ lhz r0, 0x1fbc(r30)
|
||||
/* 800ED03C 28 00 02 4C */ cmplwi r0, 0x24c
|
||||
/* 800ED040 40 82 00 1C */ bne lbl_800ED05C
|
||||
lbl_800ED044:
|
||||
/* 800ED044 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED048 30 1F FF FF */ addic r0, r31, -1
|
||||
/* 800ED04C 7C 80 01 10 */ subfe r4, r0, r0
|
||||
/* 800ED050 38 84 02 4D */ addi r4, r4, 0x24d
|
||||
/* 800ED054 C0 22 93 24 */ lfs f1, lit_7450(r2)
|
||||
/* 800ED058 4B FC 03 1D */ bl setUpperAnimeBaseMorf__9daAlink_cFUsf
|
||||
lbl_800ED05C:
|
||||
/* 800ED05C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800ED060 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800ED064 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800ED068 7C 08 03 A6 */ mtlr r0
|
||||
/* 800ED06C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800ED070 4E 80 00 20 */ blr
|
||||
@@ -1,12 +0,0 @@
|
||||
lbl_800EC7B0:
|
||||
/* 800EC7B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EC7B4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EC7B8 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800EC7BC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EC7C0 4D 82 00 20 */ beqlr
|
||||
/* 800EC7C4 80 63 12 58 */ lwz r3, 0x1258(r3)
|
||||
/* 800EC7C8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EC7CC 4D 82 00 20 */ beqlr
|
||||
/* 800EC7D0 38 00 00 01 */ li r0, 1
|
||||
/* 800EC7D4 98 03 06 DB */ stb r0, 0x6db(r3)
|
||||
/* 800EC7D8 4E 80 00 20 */ blr
|
||||
@@ -1,106 +0,0 @@
|
||||
lbl_800ED78C:
|
||||
/* 800ED78C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 800ED790 7C 08 02 A6 */ mflr r0
|
||||
/* 800ED794 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 800ED798 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 800ED79C 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 800ED7A0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800ED7A4 80 83 28 18 */ lwz r4, 0x2818(r3)
|
||||
/* 800ED7A8 7C 9E 23 78 */ mr r30, r4
|
||||
/* 800ED7AC 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 800ED7B0 40 82 00 34 */ bne lbl_800ED7E4
|
||||
/* 800ED7B4 A0 1F 2F E8 */ lhz r0, 0x2fe8(r31)
|
||||
/* 800ED7B8 28 00 01 50 */ cmplwi r0, 0x150
|
||||
/* 800ED7BC 41 82 00 0C */ beq lbl_800ED7C8
|
||||
/* 800ED7C0 28 00 01 48 */ cmplwi r0, 0x148
|
||||
/* 800ED7C4 40 82 00 0C */ bne lbl_800ED7D0
|
||||
lbl_800ED7C8:
|
||||
/* 800ED7C8 38 60 00 01 */ li r3, 1
|
||||
/* 800ED7CC 48 00 01 28 */ b lbl_800ED8F4
|
||||
lbl_800ED7D0:
|
||||
/* 800ED7D0 4B FF F4 01 */ bl rideGetOff__9daAlink_cFv
|
||||
/* 800ED7D4 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ED7D8 4B FC 81 15 */ bl checkWaitAction__9daAlink_cFv
|
||||
/* 800ED7DC 38 60 00 00 */ li r3, 0
|
||||
/* 800ED7E0 48 00 01 14 */ b lbl_800ED8F4
|
||||
lbl_800ED7E4:
|
||||
/* 800ED7E4 C0 04 05 2C */ lfs f0, 0x52c(r4)
|
||||
/* 800ED7E8 FC 00 02 10 */ fabs f0, f0
|
||||
/* 800ED7EC FC 20 00 18 */ frsp f1, f0
|
||||
/* 800ED7F0 C0 02 93 E4 */ lfs f0, lit_12328(r2)
|
||||
/* 800ED7F4 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800ED7F8 40 80 00 14 */ bge lbl_800ED80C
|
||||
/* 800ED7FC 80 1F 31 A0 */ lwz r0, 0x31a0(r31)
|
||||
/* 800ED800 60 00 00 01 */ ori r0, r0, 1
|
||||
/* 800ED804 90 1F 31 A0 */ stw r0, 0x31a0(r31)
|
||||
/* 800ED808 48 00 00 10 */ b lbl_800ED818
|
||||
lbl_800ED80C:
|
||||
/* 800ED80C 80 1F 31 A0 */ lwz r0, 0x31a0(r31)
|
||||
/* 800ED810 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
|
||||
/* 800ED814 90 1F 31 A0 */ stw r0, 0x31a0(r31)
|
||||
lbl_800ED818:
|
||||
/* 800ED818 A0 1F 2F E8 */ lhz r0, 0x2fe8(r31)
|
||||
/* 800ED81C 28 00 01 50 */ cmplwi r0, 0x150
|
||||
/* 800ED820 41 82 00 60 */ beq lbl_800ED880
|
||||
/* 800ED824 28 00 01 48 */ cmplwi r0, 0x148
|
||||
/* 800ED828 41 82 00 58 */ beq lbl_800ED880
|
||||
/* 800ED82C 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 800ED830 41 82 00 14 */ beq lbl_800ED844
|
||||
/* 800ED834 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED838 4B F4 A5 31 */ bl checkDownDamage__10e_wb_classFv
|
||||
/* 800ED83C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ED840 41 82 00 14 */ beq lbl_800ED854
|
||||
lbl_800ED844:
|
||||
/* 800ED844 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ED848 48 00 1B 15 */ bl boarForceGetOff__9daAlink_cFv
|
||||
/* 800ED84C 38 60 00 00 */ li r3, 0
|
||||
/* 800ED850 48 00 00 A4 */ b lbl_800ED8F4
|
||||
lbl_800ED854:
|
||||
/* 800ED854 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED858 4B F4 A5 3D */ bl checkNormalRideMode__10e_wb_classCFv
|
||||
/* 800ED85C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ED860 40 82 00 20 */ bne lbl_800ED880
|
||||
/* 800ED864 A0 1F 2F E8 */ lhz r0, 0x2fe8(r31)
|
||||
/* 800ED868 28 00 00 53 */ cmplwi r0, 0x53
|
||||
/* 800ED86C 41 82 00 14 */ beq lbl_800ED880
|
||||
/* 800ED870 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ED874 48 00 60 75 */ bl procBoarRunInit__9daAlink_cFv
|
||||
/* 800ED878 38 60 00 00 */ li r3, 0
|
||||
/* 800ED87C 48 00 00 78 */ b lbl_800ED8F4
|
||||
lbl_800ED880:
|
||||
/* 800ED880 80 7E 05 E0 */ lwz r3, 0x5e0(r30)
|
||||
/* 800ED884 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 800ED888 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 800ED88C 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 800ED890 3B C3 02 D0 */ addi r30, r3, 0x2d0
|
||||
/* 800ED894 38 00 00 60 */ li r0, 0x60
|
||||
/* 800ED898 98 1F 2F 99 */ stb r0, 0x2f99(r31)
|
||||
/* 800ED89C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED8A0 3C 80 80 42 */ lis r4, l_localBoarRidePos@ha /* 0x804255D4@ha */
|
||||
/* 800ED8A4 38 84 55 D4 */ addi r4, r4, l_localBoarRidePos@l /* 0x804255D4@l */
|
||||
/* 800ED8A8 38 BF 04 D0 */ addi r5, r31, 0x4d0
|
||||
/* 800ED8AC 48 25 94 C1 */ bl PSMTXMultVec
|
||||
/* 800ED8B0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED8B4 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 800ED8B8 4B F1 F3 49 */ bl mDoMtx_MtxToRot__FPA4_CfP5csXyz
|
||||
/* 800ED8BC A8 01 00 0C */ lha r0, 0xc(r1)
|
||||
/* 800ED8C0 7C 00 00 D0 */ neg r0, r0
|
||||
/* 800ED8C4 B0 1F 04 E4 */ sth r0, 0x4e4(r31)
|
||||
/* 800ED8C8 A8 61 00 0A */ lha r3, 0xa(r1)
|
||||
/* 800ED8CC 38 03 40 00 */ addi r0, r3, 0x4000
|
||||
/* 800ED8D0 B0 1F 04 E6 */ sth r0, 0x4e6(r31)
|
||||
/* 800ED8D4 A8 01 00 08 */ lha r0, 8(r1)
|
||||
/* 800ED8D8 B0 1F 04 E8 */ sth r0, 0x4e8(r31)
|
||||
/* 800ED8DC A8 1F 04 E6 */ lha r0, 0x4e6(r31)
|
||||
/* 800ED8E0 B0 1F 04 DE */ sth r0, 0x4de(r31)
|
||||
/* 800ED8E4 80 7F 28 18 */ lwz r3, 0x2818(r31)
|
||||
/* 800ED8E8 C0 03 05 2C */ lfs f0, 0x52c(r3)
|
||||
/* 800ED8EC D0 1F 33 98 */ stfs f0, 0x3398(r31)
|
||||
/* 800ED8F0 38 60 00 01 */ li r3, 1
|
||||
lbl_800ED8F4:
|
||||
/* 800ED8F4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 800ED8F8 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 800ED8FC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 800ED900 7C 08 03 A6 */ mtlr r0
|
||||
/* 800ED904 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 800ED908 4E 80 00 20 */ blr
|
||||
@@ -1,76 +0,0 @@
|
||||
lbl_800ED90C:
|
||||
/* 800ED90C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 800ED910 7C 08 02 A6 */ mflr r0
|
||||
/* 800ED914 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 800ED918 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800ED91C 48 27 48 C1 */ bl _savegpr_29
|
||||
/* 800ED920 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800ED924 83 E3 28 18 */ lwz r31, 0x2818(r3)
|
||||
/* 800ED928 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 800ED92C 41 82 00 14 */ beq lbl_800ED940
|
||||
/* 800ED930 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ED934 4B F4 A4 35 */ bl checkDownDamage__10e_wb_classFv
|
||||
/* 800ED938 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ED93C 41 82 00 14 */ beq lbl_800ED950
|
||||
lbl_800ED940:
|
||||
/* 800ED940 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED944 48 00 1A 19 */ bl boarForceGetOff__9daAlink_cFv
|
||||
/* 800ED948 38 60 00 00 */ li r3, 0
|
||||
/* 800ED94C 48 00 00 C0 */ b lbl_800EDA0C
|
||||
lbl_800ED950:
|
||||
/* 800ED950 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800ED954 4B F4 A4 41 */ bl checkNormalRideMode__10e_wb_classCFv
|
||||
/* 800ED958 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800ED95C 41 82 00 14 */ beq lbl_800ED970
|
||||
/* 800ED960 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800ED964 48 00 30 1D */ bl procHorseWaitInit__9daAlink_cFv
|
||||
/* 800ED968 38 60 00 00 */ li r3, 0
|
||||
/* 800ED96C 48 00 00 A0 */ b lbl_800EDA0C
|
||||
lbl_800ED970:
|
||||
/* 800ED970 80 7F 05 E0 */ lwz r3, 0x5e0(r31)
|
||||
/* 800ED974 80 63 00 04 */ lwz r3, 4(r3)
|
||||
/* 800ED978 80 63 00 84 */ lwz r3, 0x84(r3)
|
||||
/* 800ED97C 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
/* 800ED980 3B A3 02 D0 */ addi r29, r3, 0x2d0
|
||||
/* 800ED984 38 00 00 60 */ li r0, 0x60
|
||||
/* 800ED988 98 1E 2F 99 */ stb r0, 0x2f99(r30)
|
||||
/* 800ED98C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800ED990 3C 80 80 39 */ lis r4, localOffset_18237@ha /* 0x8039196C@ha */
|
||||
/* 800ED994 38 84 19 6C */ addi r4, r4, localOffset_18237@l /* 0x8039196C@l */
|
||||
/* 800ED998 38 BE 04 D0 */ addi r5, r30, 0x4d0
|
||||
/* 800ED99C 48 25 93 D1 */ bl PSMTXMultVec
|
||||
/* 800ED9A0 7F A3 EB 78 */ mr r3, r29
|
||||
/* 800ED9A4 38 81 00 08 */ addi r4, r1, 8
|
||||
/* 800ED9A8 4B F1 F2 59 */ bl mDoMtx_MtxToRot__FPA4_CfP5csXyz
|
||||
/* 800ED9AC A8 01 00 0C */ lha r0, 0xc(r1)
|
||||
/* 800ED9B0 7C 00 00 D0 */ neg r0, r0
|
||||
/* 800ED9B4 B0 1E 04 E4 */ sth r0, 0x4e4(r30)
|
||||
/* 800ED9B8 A8 61 00 0A */ lha r3, 0xa(r1)
|
||||
/* 800ED9BC 38 03 40 00 */ addi r0, r3, 0x4000
|
||||
/* 800ED9C0 B0 1E 04 E6 */ sth r0, 0x4e6(r30)
|
||||
/* 800ED9C4 A8 01 00 08 */ lha r0, 8(r1)
|
||||
/* 800ED9C8 B0 1E 04 E8 */ sth r0, 0x4e8(r30)
|
||||
/* 800ED9CC A8 1E 04 E6 */ lha r0, 0x4e6(r30)
|
||||
/* 800ED9D0 B0 1E 04 DE */ sth r0, 0x4de(r30)
|
||||
/* 800ED9D4 A0 1E 2F E8 */ lhz r0, 0x2fe8(r30)
|
||||
/* 800ED9D8 28 00 00 53 */ cmplwi r0, 0x53
|
||||
/* 800ED9DC 40 82 00 2C */ bne lbl_800EDA08
|
||||
/* 800ED9E0 A8 1E 30 0E */ lha r0, 0x300e(r30)
|
||||
/* 800ED9E4 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 800ED9E8 41 82 00 20 */ beq lbl_800EDA08
|
||||
/* 800ED9EC 80 7F 05 E0 */ lwz r3, 0x5e0(r31)
|
||||
/* 800ED9F0 C0 03 00 1C */ lfs f0, 0x1c(r3)
|
||||
/* 800ED9F4 D0 1E 1F E0 */ stfs f0, 0x1fe0(r30)
|
||||
/* 800ED9F8 80 7F 05 E0 */ lwz r3, 0x5e0(r31)
|
||||
/* 800ED9FC C0 03 00 1C */ lfs f0, 0x1c(r3)
|
||||
/* 800EDA00 80 7E 1F 2C */ lwz r3, 0x1f2c(r30)
|
||||
/* 800EDA04 D0 03 00 08 */ stfs f0, 8(r3)
|
||||
lbl_800EDA08:
|
||||
/* 800EDA08 38 60 00 01 */ li r3, 1
|
||||
lbl_800EDA0C:
|
||||
/* 800EDA0C 39 61 00 20 */ addi r11, r1, 0x20
|
||||
/* 800EDA10 48 27 48 19 */ bl _restgpr_29
|
||||
/* 800EDA14 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 800EDA18 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EDA1C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 800EDA20 4E 80 00 20 */ blr
|
||||
@@ -1,127 +0,0 @@
|
||||
lbl_800EE918:
|
||||
/* 800EE918 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 800EE91C 7C 08 02 A6 */ mflr r0
|
||||
/* 800EE920 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 800EE924 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800EE928 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 800EE92C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 800EE930 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 800EE934 41 82 00 5C */ beq lbl_800EE990
|
||||
/* 800EE938 88 1E 2F B2 */ lbz r0, 0x2fb2(r30)
|
||||
/* 800EE93C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800EE940 40 82 00 50 */ bne lbl_800EE990
|
||||
/* 800EE944 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EE948 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EE94C 88 04 5E 24 */ lbz r0, 0x5e24(r4)
|
||||
/* 800EE950 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800EE954 40 82 00 3C */ bne lbl_800EE990
|
||||
/* 800EE958 81 83 06 28 */ lwz r12, 0x628(r3)
|
||||
/* 800EE95C 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EE960 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EE964 4E 80 04 21 */ bctrl
|
||||
/* 800EE968 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EE96C 41 82 00 1C */ beq lbl_800EE988
|
||||
/* 800EE970 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
|
||||
/* 800EE974 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
|
||||
/* 800EE978 80 63 5D B8 */ lwz r3, 0x5db8(r3)
|
||||
/* 800EE97C A0 03 16 C4 */ lhz r0, 0x16c4(r3)
|
||||
/* 800EE980 28 00 00 07 */ cmplwi r0, 7
|
||||
/* 800EE984 41 82 00 0C */ beq lbl_800EE990
|
||||
lbl_800EE988:
|
||||
/* 800EE988 3B E0 00 01 */ li r31, 1
|
||||
/* 800EE98C 48 00 00 08 */ b lbl_800EE994
|
||||
lbl_800EE990:
|
||||
/* 800EE990 3B E0 00 00 */ li r31, 0
|
||||
lbl_800EE994:
|
||||
/* 800EE994 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EE998 4B FC 5E 1D */ bl checkServiceWaitMode__9daAlink_cFv
|
||||
/* 800EE99C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800EE9A0 41 82 00 F0 */ beq lbl_800EEA90
|
||||
/* 800EE9A4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EE9A8 81 9E 06 28 */ lwz r12, 0x628(r30)
|
||||
/* 800EE9AC 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EE9B0 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EE9B4 4E 80 04 21 */ bctrl
|
||||
/* 800EE9B8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EE9BC 41 82 00 D4 */ beq lbl_800EEA90
|
||||
/* 800EE9C0 A0 1E 2F E8 */ lhz r0, 0x2fe8(r30)
|
||||
/* 800EE9C4 28 00 00 3C */ cmplwi r0, 0x3c
|
||||
/* 800EE9C8 40 82 00 C8 */ bne lbl_800EEA90
|
||||
/* 800EE9CC 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EE9D0 A0 9E 2F DC */ lhz r4, 0x2fdc(r30)
|
||||
/* 800EE9D4 4B FE FD AD */ bl checkBowAndSlingItem__9daAlink_cFi
|
||||
/* 800EE9D8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EE9DC 40 82 00 B4 */ bne lbl_800EEA90
|
||||
/* 800EE9E0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EE9E4 4B FC 4F 21 */ bl checkZeroSpeedF__9daAlink_cCFv
|
||||
/* 800EE9E8 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 800EE9EC 41 82 00 A4 */ beq lbl_800EEA90
|
||||
/* 800EE9F0 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EE9F4 38 80 00 5A */ li r4, 0x5a
|
||||
/* 800EE9F8 4B FB DB 61 */ bl checkUnderMove0BckNoArc__9daAlink_cCFQ29daAlink_c11daAlink_ANM
|
||||
/* 800EE9FC 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEA00 40 82 00 90 */ bne lbl_800EEA90
|
||||
/* 800EEA04 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA08 38 80 00 5B */ li r4, 0x5b
|
||||
/* 800EEA0C 4B FB DB 4D */ bl checkUnderMove0BckNoArc__9daAlink_cCFQ29daAlink_c11daAlink_ANM
|
||||
/* 800EEA10 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEA14 40 82 00 7C */ bne lbl_800EEA90
|
||||
/* 800EEA18 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA1C 38 80 00 4D */ li r4, 0x4d
|
||||
/* 800EEA20 4B FB DB 39 */ bl checkUnderMove0BckNoArc__9daAlink_cCFQ29daAlink_c11daAlink_ANM
|
||||
/* 800EEA24 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEA28 40 82 00 68 */ bne lbl_800EEA90
|
||||
/* 800EEA2C 80 1E 31 A0 */ lwz r0, 0x31a0(r30)
|
||||
/* 800EEA30 54 00 07 FF */ clrlwi. r0, r0, 0x1f
|
||||
/* 800EEA34 41 82 00 5C */ beq lbl_800EEA90
|
||||
/* 800EEA38 A8 7E 30 CA */ lha r3, 0x30ca(r30)
|
||||
/* 800EEA3C 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 800EEA40 41 82 00 10 */ beq lbl_800EEA50
|
||||
/* 800EEA44 38 03 FF FF */ addi r0, r3, -1
|
||||
/* 800EEA48 B0 1E 30 CA */ sth r0, 0x30ca(r30)
|
||||
/* 800EEA4C 48 00 00 4C */ b lbl_800EEA98
|
||||
lbl_800EEA50:
|
||||
/* 800EEA50 48 17 8E 1D */ bl cM_rnd__Fv
|
||||
/* 800EEA54 C0 02 92 98 */ lfs f0, lit_5943(r2)
|
||||
/* 800EEA58 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 800EEA5C 40 80 00 18 */ bge lbl_800EEA74
|
||||
/* 800EEA60 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA64 38 80 00 51 */ li r4, 0x51
|
||||
/* 800EEA68 C0 22 93 24 */ lfs f1, lit_7450(r2)
|
||||
/* 800EEA6C 4B FB E5 45 */ bl setSingleAnimeBaseMorf__9daAlink_cFQ29daAlink_c11daAlink_ANMf
|
||||
/* 800EEA70 48 00 00 14 */ b lbl_800EEA84
|
||||
lbl_800EEA74:
|
||||
/* 800EEA74 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA78 38 80 00 52 */ li r4, 0x52
|
||||
/* 800EEA7C C0 22 93 24 */ lfs f1, lit_7450(r2)
|
||||
/* 800EEA80 4B FB E5 31 */ bl setSingleAnimeBaseMorf__9daAlink_cFQ29daAlink_c11daAlink_ANMf
|
||||
lbl_800EEA84:
|
||||
/* 800EEA84 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA88 4B FC 4D BD */ bl initServiceWaitTime__9daAlink_cFv
|
||||
/* 800EEA8C 48 00 00 0C */ b lbl_800EEA98
|
||||
lbl_800EEA90:
|
||||
/* 800EEA90 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA94 4B FC 4D B1 */ bl initServiceWaitTime__9daAlink_cFv
|
||||
lbl_800EEA98:
|
||||
/* 800EEA98 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEA9C 81 9E 06 28 */ lwz r12, 0x628(r30)
|
||||
/* 800EEAA0 81 8C 01 88 */ lwz r12, 0x188(r12)
|
||||
/* 800EEAA4 7D 89 03 A6 */ mtctr r12
|
||||
/* 800EEAA8 4E 80 04 21 */ bctrl
|
||||
/* 800EEAAC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 800EEAB0 41 82 00 14 */ beq lbl_800EEAC4
|
||||
/* 800EEAB4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEAB8 7F E4 FB 78 */ mr r4, r31
|
||||
/* 800EEABC 4B FF F4 31 */ bl setSyncHorse__9daAlink_cFi
|
||||
/* 800EEAC0 48 00 00 10 */ b lbl_800EEAD0
|
||||
lbl_800EEAC4:
|
||||
/* 800EEAC4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 800EEAC8 7F E4 FB 78 */ mr r4, r31
|
||||
/* 800EEACC 4B FF FB 81 */ bl setSyncBoar__9daAlink_cFi
|
||||
lbl_800EEAD0:
|
||||
/* 800EEAD0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800EEAD4 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 800EEAD8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800EEADC 7C 08 03 A6 */ mtlr r0
|
||||
/* 800EEAE0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800EEAE4 4E 80 00 20 */ blr
|
||||
+31
-27
@@ -634,6 +634,7 @@ public:
|
||||
/* 0x19B */ ANM_DIVE,
|
||||
/* 0x19C */ ANM_ODOROKU, // ?
|
||||
/* 0x19D */ ANM_ASHIMOTO, // ?
|
||||
/* 0x19E */ ANM_MAX,
|
||||
};
|
||||
|
||||
enum daAlink_UPPER {
|
||||
@@ -1910,12 +1911,12 @@ public:
|
||||
/* 800E23FC */ void concatMagneBootMtx();
|
||||
/* 800E243C */ void concatMagneBootInvMtx();
|
||||
/* 800E247C */ void multVecMagneBootInvMtx(cXyz*);
|
||||
/* 800E24B0 */ int commonMagneLineCheck(cXyz*, cXyz*);
|
||||
/* 800E24B0 */ bool commonMagneLineCheck(cXyz*, cXyz*);
|
||||
/* 800E251C */ BOOL checkBootsMoveAnime(int);
|
||||
/* 800E2580 */ void setHeavyBoots(int);
|
||||
/* 800E2580 */ int setHeavyBoots(int);
|
||||
/* 800E2738 */ s16 getMagneBootsLocalAngleY(s16, int);
|
||||
/* 800E2808 */ void setMagneBootsMtx(cBgS_PolyInfo*, int);
|
||||
/* 800E2DC4 */ void cancelMagneBootsOn();
|
||||
/* 800E2DC4 */ int cancelMagneBootsOn();
|
||||
/* 800E2F88 */ int checkMagneBootsFly();
|
||||
/* 800E3048 */ int procBootsEquipInit();
|
||||
/* 800E30DC */ int procBootsEquip();
|
||||
@@ -1953,7 +1954,7 @@ public:
|
||||
/* 800E5170 */ void checkNextActionGrab();
|
||||
/* 800E53AC */ void initGrabNextMode();
|
||||
/* 800E53F8 */ void setGrabItemThrow();
|
||||
/* 800E57AC */ void checkUpperGrabItemThrow(f32);
|
||||
/* 800E57AC */ BOOL checkUpperGrabItemThrow(f32);
|
||||
/* 800E5830 */ void putObjLineCheck(dBgS_LinChk&, cXyz*, fopAc_ac_c*);
|
||||
/* 800E5B6C */ void grabLineCheck(cXyz*, cXyz*);
|
||||
/* 800E5BB4 */ void setGrabItemActor(fopAc_ac_c*);
|
||||
@@ -2033,14 +2034,14 @@ public:
|
||||
/* 800EC3D8 */ int procSumouWinLose();
|
||||
/* 800EC538 */ int procSumouShikoInit();
|
||||
/* 800EC5F4 */ int procSumouShiko();
|
||||
/* 800EC76C */ void checkHorseZeldaBowMode();
|
||||
/* 800EC7B0 */ void setHorseZeldaDamage();
|
||||
/* 800EC7DC */ BOOL checkHorseDashAccept();
|
||||
/* 800EC814 */ BOOL checkCowGame();
|
||||
/* 800EC76C */ static BOOL checkHorseZeldaBowMode();
|
||||
/* 800EC7B0 */ static void setHorseZeldaDamage();
|
||||
/* 800EC7DC */ static BOOL checkHorseDashAccept();
|
||||
/* 800EC814 */ static BOOL checkCowGame();
|
||||
/* 800EC87C */ int getReinRideDirection();
|
||||
/* 800EC8F8 */ void checkReinRideBgCheck();
|
||||
/* 800EC8F8 */ int checkReinRideBgCheck();
|
||||
/* 800ECA3C */ void commonInitForceRideRein();
|
||||
/* 800ECAAC */ void initForceRideBoar();
|
||||
/* 800ECAAC */ int initForceRideBoar();
|
||||
/* 800ECB58 */ void initForceRideHorse();
|
||||
/* 800ECBD0 */ void rideGetOff();
|
||||
/* 800ECD90 */ BOOL checkHorseNotDamageReaction() const;
|
||||
@@ -2056,32 +2057,32 @@ public:
|
||||
/* 800ED1F0 */ void checkHorseNotGrab() const;
|
||||
/* 800ED310 */ void setHorseStirrup();
|
||||
/* 800ED4B8 */ void changeBoarRunRide();
|
||||
/* 800ED4DC */ void setSyncHorsePos();
|
||||
/* 800ED78C */ void setSyncBoarPos();
|
||||
/* 800ED90C */ void setSyncBoarRunPos();
|
||||
/* 800EDA24 */ void setSyncRidePos();
|
||||
/* 800ED4DC */ int setSyncHorsePos();
|
||||
/* 800ED78C */ int setSyncBoarPos();
|
||||
/* 800ED90C */ int setSyncBoarRunPos();
|
||||
/* 800EDA24 */ BOOL setSyncRidePos();
|
||||
/* 800EDA78 */ void setHorseTurnAnime();
|
||||
/* 800EDB48 */ void getBaseHorseAnime(daAlink_c::daAlink_ANM*);
|
||||
/* 800EDD6C */ void checkHorseSpecialProc();
|
||||
/* 800EDE8C */ void checkHorseServiceWaitAnime();
|
||||
/* 800EDEEC */ void setSyncHorse(int);
|
||||
/* 800EE64C */ void setSyncBoar(int);
|
||||
/* 800EE918 */ void setSyncRide(int);
|
||||
/* 800EDD6C */ int checkHorseSpecialProc();
|
||||
/* 800EDE8C */ BOOL checkHorseServiceWaitAnime();
|
||||
/* 800EDEEC */ int setSyncHorse(int);
|
||||
/* 800EE64C */ int setSyncBoar(int);
|
||||
/* 800EE918 */ int setSyncRide(int);
|
||||
/* 800EEAE8 */ void setBaseHorseAnimeFrame();
|
||||
/* 800EEC98 */ void setBaseBoarAnime();
|
||||
/* 800EED98 */ void setBaseRideAnime();
|
||||
/* 800EEE30 */ void checkHorseSwordUpSpped();
|
||||
/* 800EEE30 */ bool checkHorseSwordUpSpped();
|
||||
/* 800EEE5C */ void setHorseSwordUp(int);
|
||||
/* 800EEF30 */ void setRideSubjectAngle(s16);
|
||||
/* 800EEF30 */ int setRideSubjectAngle(s16);
|
||||
/* 800EF050 */ void setBodyAngleRideReadyAnime();
|
||||
/* 800EF0E8 */ void checkHorseGetOffWallCheck(cXyz*, cXyz*, s16);
|
||||
/* 800EF198 */ void checkHorseGetOffDirection();
|
||||
/* 800EF0E8 */ BOOL checkHorseGetOffWallCheck(cXyz*, cXyz*, s16);
|
||||
/* 800EF198 */ int checkHorseGetOffDirection();
|
||||
/* 800EF35C */ void boarForceGetOff();
|
||||
/* 800EF394 */ void horseGetOffEnd();
|
||||
/* 800EF450 */ void checkNextActionHorse();
|
||||
/* 800EF598 */ void checkHorseGetOff();
|
||||
/* 800EF450 */ int checkNextActionHorse();
|
||||
/* 800EF598 */ BOOL checkHorseGetOff();
|
||||
/* 800EF6B0 */ void checkHorseGetOffAndSetDoStatus();
|
||||
/* 800EF884 */ void setHorseGetOff(int);
|
||||
/* 800EF884 */ int setHorseGetOff(int);
|
||||
/* 800EF95C */ int procHorseRideInit();
|
||||
/* 800EFDC4 */ int procHorseRide();
|
||||
/* 800F038C */ int procHorseGetOffInit(int);
|
||||
@@ -3167,9 +3168,12 @@ public:
|
||||
BOOL checkGrabAnimeSide() const { return checkUpperAnime(0x50); }
|
||||
BOOL checkGrabAnimeCarry() const { return checkUpperAnime(0x60); }
|
||||
bool checkHorseUnderDashStartAnime() const { return checkUnderAnime(0xDD); }
|
||||
bool checkHorseUnderLashAnime() const { return checkUnderAnime(0x1B3); }
|
||||
bool checkUpperHorseLieAnime() const { return checkUpperAnime(0x265); }
|
||||
bool checkHorseTiredAnime() const { return checkUpperAnime(0x263); }
|
||||
bool checkHorseSwordUpAnime() const { return checkUpperAnime(0xCC); }
|
||||
bool checkHorseUnderItemAnime() const { return checkUnderAnime(0x19); }
|
||||
bool checkHorseWalkStartAnm() const { return checkUnderMove0BckNoArc(ANM_WSTARTH); }
|
||||
bool checkIronBallPreSwingAnime() const { return checkUpperAnime(0x19A); }
|
||||
bool checkIronBallSwingAnime() const { return checkUpperAnime(0x19B); }
|
||||
bool checkDashDamageAnime() const { return checkUpperAnime(0xAD); }
|
||||
@@ -3389,7 +3393,7 @@ private:
|
||||
/* 0x006D4 */ void* field_0x06d4;
|
||||
/* 0x006D8 */ void* field_0x06d8;
|
||||
/* 0x006DC */ void* field_0x06dc;
|
||||
/* 0x006E0 */ void* field_0x06e0;
|
||||
/* 0x006E0 */ J3DShape* field_0x06e0;
|
||||
/* 0x006E4 */ J3DShape* field_0x06e4;
|
||||
/* 0x006E8 */ J3DShape* field_0x06e8;
|
||||
/* 0x006EC */ J3DShape* field_0x06ec;
|
||||
|
||||
@@ -249,6 +249,8 @@ public:
|
||||
FLG1_UNK_8000 = 0x8000,
|
||||
FLG1_THROW_DAMAGE = 0x4000,
|
||||
FLG1_UNK_2000 = 0x2000,
|
||||
FLG1_UNK_1000 = 0x1000,
|
||||
FLG1_UNK_800 = 0x800,
|
||||
FLG1_UNK_80 = 0x80,
|
||||
FLG1_UNK_40 = 0x40,
|
||||
FLG1_UNK_20 = 0x20,
|
||||
@@ -256,6 +258,8 @@ public:
|
||||
FLG1_UNK_4 = 4,
|
||||
FLG1_UNK_2 = 2,
|
||||
FLG1_UNK_1 = 1,
|
||||
|
||||
FLG1_UNK_1800 = 0x1800,
|
||||
};
|
||||
|
||||
enum daPy_FLG2 {
|
||||
@@ -304,6 +308,7 @@ public:
|
||||
FLG3_UNK_4000 = 0x4000,
|
||||
FLG3_UNK_200 = 0x200,
|
||||
FLG3_UNK_100 = 0x100,
|
||||
FLG3_UNK_80 = 0x80,
|
||||
FLG3_UNK_40 = 0x40,
|
||||
FLG3_UNK_20 = 0x20,
|
||||
FLG3_UNK_10 = 0x10,
|
||||
@@ -360,6 +365,7 @@ public:
|
||||
ERFLG2_UNK_100 = 0x100,
|
||||
ERFLG2_UNK_40 = 0x40,
|
||||
ERFLG2_UNK_20 = 0x20,
|
||||
ERFLG2_UNK_2 = 2,
|
||||
};
|
||||
|
||||
enum daPy_RFLG0 {
|
||||
@@ -369,6 +375,7 @@ public:
|
||||
RFLG0_FRONT_ROLL_CRASH = 0x2000,
|
||||
RFLG0_ENEMY_ATTN_LOCK = 0x1000,
|
||||
RFLG0_UNK_400 = 0x400,
|
||||
RFLG0_UNK_200 = 0x200,
|
||||
RFLG0_UNK_100 = 0x100,
|
||||
RFLG0_UNK_80 = 0x80,
|
||||
RFLG0_UNK_40 = 0x40,
|
||||
@@ -750,6 +757,7 @@ public:
|
||||
void i_offNoResetFlg3(int pFlg) { mNoResetFlg3 &= ~pFlg; }
|
||||
|
||||
void i_offResetFlg0(int flag) { mResetFlg0 &= ~flag; }
|
||||
void i_offResetFlg1(int flag) { mResetFlg1 &= ~flag; }
|
||||
void i_onResetFlg0(int flag) { mResetFlg0 |= flag; }
|
||||
void i_onResetFlg1(int flag) { mResetFlg1 |= flag; }
|
||||
|
||||
@@ -818,4 +826,6 @@ public:
|
||||
static daMidna_c* m_midnaActor;
|
||||
};
|
||||
|
||||
int daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, s16 param_4);
|
||||
|
||||
#endif /* D_A_D_A_PLAYER_H */
|
||||
|
||||
@@ -249,6 +249,9 @@ public:
|
||||
bool checkHeadLockFlg() const { return mFlags & 0x80; }
|
||||
bool checkDownFlg() const { return mFlags & 0x1; }
|
||||
cXyz& getDownPos() { return mDownPos; }
|
||||
cXyz& getHeadLockPos() { return mHeadLockPos; }
|
||||
|
||||
void onCutDownHitFlg() { mFlags |= 2; }
|
||||
|
||||
/* 0x568 */ cXyz mDownPos;
|
||||
/* 0x574 */ cXyz mHeadLockPos;
|
||||
|
||||
@@ -125,6 +125,10 @@ inline void mDoAud_startFogWipeTrigger(const Vec* param_0) {
|
||||
g_mEnvSeMgr.startFogWipeTrigger((Vec*)param_0);
|
||||
}
|
||||
|
||||
inline void mDoAud_changeSubBgmStatus(s32 param_0) {
|
||||
Z2AudioMgr::getInterface()->changeSubBgmStatus(param_0);
|
||||
}
|
||||
|
||||
inline void mDoAud_mEnvse_framework() {
|
||||
g_mEnvSeMgr.framework();
|
||||
}
|
||||
|
||||
@@ -314,6 +314,10 @@ public:
|
||||
*/
|
||||
static void copy(const Mtx m) { MTXCopy(m, now); }
|
||||
|
||||
static void rotAxisRadS(const Vec* axis, f32 rad) {
|
||||
MTXRotAxisRad(now, axis, rad);
|
||||
}
|
||||
|
||||
static Mtx now;
|
||||
static Mtx buffer[16];
|
||||
static Mtx* next;
|
||||
|
||||
@@ -1,6 +1,184 @@
|
||||
#ifndef D_A_B_GND_H
|
||||
#define D_A_B_GND_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/bg/d_bg_s_acch.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "d/cc/d_cc_uty.h"
|
||||
#include "d/msg/d_msg_flow.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
struct g_himo_s {
|
||||
/* 80601D40 */ ~g_himo_s();
|
||||
/* 80601DA0 */ g_himo_s();
|
||||
|
||||
/* 0x0 */ cXyz field_0x0[16];
|
||||
};
|
||||
|
||||
class b_gnd_class : public fopEn_enemy_c {
|
||||
public:
|
||||
/* 80601960 */ b_gnd_class();
|
||||
|
||||
bool checkAttackChance() { return field_0x2740 != 0; }
|
||||
|
||||
/* 0x05AC */ request_of_phase_process_class mPhaseReq;
|
||||
/* 0x05B4 */ request_of_phase_process_class mHorsePhaseReq;
|
||||
/* 0x05BC */ s16 field_0x05bc;
|
||||
/* 0x05BE */ u8 field_0x05be;
|
||||
/* 0x05BF */ u8 field_0x05BF[0x05C0 - 0x05BF];
|
||||
/* 0x05C0 */ cXyz field_0x05c0;
|
||||
/* 0x05CC */ s16 field_0x05cc;
|
||||
/* 0x05CE */ u8 field_0x05CE[0x05D0 - 0x05CE];
|
||||
/* 0x05D0 */ mDoExt_McaMorfSO* mpMorf;
|
||||
/* 0x05D4 */ mDoExt_McaMorfSO* mpHorseMorf;
|
||||
/* 0x05D8 */ mDoExt_McaMorf* field_0x05d8;
|
||||
/* 0x05DC */ Z2CreatureEnemy mZ2Creature;
|
||||
/* 0x0680 */ Z2CreatureEnemy field_0x0680;
|
||||
/* 0x0724 */ mDoExt_brkAnm* field_0x0724;
|
||||
/* 0x0728 */ mDoExt_btkAnm* field_0x0728[6];
|
||||
/* 0x0740 */ u8 field_0x0740[0x0744 - 0x0740];
|
||||
/* 0x0744 */ mDoExt_btpAnm* field_0x0744;
|
||||
/* 0x0748 */ int field_0x0748;
|
||||
/* 0x074C */ mDoExt_btpAnm* field_0x074c;
|
||||
/* 0x0750 */ mDoExt_btkAnm* field_0x0750;
|
||||
/* 0x0754 */ u8 field_0x0754[0x0758 - 0x0754];
|
||||
/* 0x0758 */ int mAnmID;
|
||||
/* 0x075C */ int mHorseAnmID;
|
||||
/* 0x0760 */ f32 field_0x0760;
|
||||
/* 0x0764 */ u8 field_0x0764[0x0768 - 0x0764];
|
||||
/* 0x0768 */ J3DModel* field_0x0768;
|
||||
/* 0x076C */ J3DModel* field_0x076c;
|
||||
/* 0x0770 */ u8 field_0x0770[0x0772 - 0x0770];
|
||||
/* 0x0772 */ s16 field_0x0772;
|
||||
/* 0x0774 */ dKy_tevstr_c field_0x0774;
|
||||
/* 0x0AFC */ s16 field_0x0afc;
|
||||
/* 0x0AFE */ s16 mActionID;
|
||||
/* 0x0B00 */ s16 field_0x0b00;
|
||||
/* 0x0B02 */ u8 field_0x0B02[0x0B94 - 0x0B02];
|
||||
/* 0x0B94 */ J3DModel* field_0x0b94[36];
|
||||
/* 0x0C24 */ s16 field_0x0c24;
|
||||
/* 0x0C26 */ s16 field_0x0c26;
|
||||
/* 0x0C28 */ s16 field_0x0c28;
|
||||
/* 0x0C2A */ u8 field_0x0C2A[0x0C2C - 0x0C2A];
|
||||
/* 0x0C2C */ J3DModel* field_0x0c2c[2];
|
||||
/* 0x0C34 */ u8 field_0x0C34[0x0C38 - 0x0C34];
|
||||
/* 0x0C38 */ f32 field_0x0c38;
|
||||
/* 0x0C3C */ s16 field_0x0c3c;
|
||||
/* 0x0C3E */ u8 field_0x0C3E[0x0C40 - 0x0C3E];
|
||||
/* 0x0C40 */ u32 field_0x0c40;
|
||||
/* 0x0C44 */ s16 field_0x0c44[10];
|
||||
/* 0x0C58 */ s16 field_0x0c58;
|
||||
/* 0x0C5A */ s16 field_0x0c5a;
|
||||
/* 0x0C5C */ u8 field_0x0C5C[0x0C60 - 0x0C5C];
|
||||
/* 0x0C60 */ int field_0x0c60;
|
||||
/* 0x0C64 */ int field_0x0c64;
|
||||
/* 0x0C68 */ s16 field_0x0c68;
|
||||
/* 0x0C6A */ s16 field_0x0c6a;
|
||||
/* 0x0C6C */ f32 field_0x0c6c;
|
||||
/* 0x0C70 */ s16 field_0x0c70;
|
||||
/* 0x0C72 */ s16 field_0x0c72;
|
||||
/* 0x0C74 */ s16 field_0x0c74;
|
||||
/* 0x0C76 */ u8 field_0x0C76[0x0C7D - 0x0C76];
|
||||
/* 0x0C7D */ u8 field_0x0c7d;
|
||||
/* 0x0C7E */ u8 field_0x0C7E[0x0C80 - 0x0C7E];
|
||||
/* 0x0C80 */ cXyz field_0x0c80;
|
||||
/* 0x0C8C */ s16 field_0x0c8c;
|
||||
/* 0x0C8E */ s16 field_0x0c8e;
|
||||
/* 0x0C90 */ s16 field_0x0c90;
|
||||
/* 0x0C92 */ s16 field_0x0c92;
|
||||
/* 0x0C94 */ dBgS_AcchCir field_0x0c94;
|
||||
/* 0x0CD4 */ dBgS_ObjAcch field_0x0cd4;
|
||||
/* 0x0EAC */ s16 field_0x0eac;
|
||||
/* 0x0EAE */ u8 field_0x0EAE[0x0EB0 - 0x0EAE];
|
||||
/* 0x0EB0 */ f32 field_0x0eb0;
|
||||
/* 0x0EB4 */ cXyz field_0x0eb4;
|
||||
/* 0x0EC0 */ csXyz field_0x0ec0;
|
||||
/* 0x0EC6 */ u8 field_0x0EC6[0x0EC8 - 0x0EC6];
|
||||
/* 0x0EC8 */ dCcD_Stts field_0x0ec8;
|
||||
/* 0x0F04 */ dCcD_Sph field_0x0f04[2];
|
||||
/* 0x1174 */ dCcD_Sph field_0x1174[4];
|
||||
/* 0x1654 */ dCcD_Stts field_0x1654;
|
||||
/* 0x1690 */ dCcD_Sph field_0x1690[3];
|
||||
/* 0x1A38 */ dCcD_Sph field_0x1a38;
|
||||
/* 0x1B70 */ dCcD_Sph field_0x1b70;
|
||||
/* 0x1CA8 */ dCcD_Cyl field_0x1ca8;
|
||||
/* 0x1DE4 */ dCcU_AtInfo mAtInfo;
|
||||
/* 0x1E08 */ u8 field_0x1E08[0x1E0A - 0x1E08];
|
||||
/* 0x1E0A */ u16 field_0x1e0a;
|
||||
/* 0x1E0C */ u16 field_0x1e0c;
|
||||
/* 0x1E0E */ u8 field_0x1E0E[0x1E0F - 0x1E0E];
|
||||
/* 0x1E0F */ s8 field_0x1e0f;
|
||||
/* 0x1E10 */ f32 field_0x1e10;
|
||||
/* 0x1E14 */ cXyz field_0x1e14;
|
||||
/* 0x1E20 */ cXyz field_0x1e20;
|
||||
/* 0x1E2C */ Z2SoundObjSimple field_0x1e2c;
|
||||
/* 0x1E4C */ f32 field_0x1e4c;
|
||||
/* 0x1E50 */ csXyz field_0x1e50;
|
||||
/* 0x1E56 */ u8 field_0x1e56[5];
|
||||
/* 0x1E5B */ u8 field_0x1E5B[0x1E5C - 0x1E5B];
|
||||
/* 0x1E5C */ cXyz field_0x1e5c[5];
|
||||
/* 0x1E98 */ cXyz field_0x1e98[5];
|
||||
/* 0x1ED4 */ cXyz field_0x1ed4[5];
|
||||
/* 0x1F10 */ Z2SoundObjSimple field_0x1f10[5];
|
||||
/* 0x1FB0 */ u8 field_0x1FB0[0x1FB4 - 0x1FB0];
|
||||
/* 0x1FB4 */ fopAc_ac_c* mMantChild;
|
||||
/* 0x1FB8 */ cXyz field_0x1fb8;
|
||||
/* 0x1FC4 */ int field_0x1fc4;
|
||||
/* 0x1FC8 */ s16 field_0x1fc8;
|
||||
/* 0x1FCA */ s16 field_0x1fca;
|
||||
/* 0x1FCC */ s16 field_0x1fcc;
|
||||
/* 0x1FCE */ u8 field_0x1FCE[0x1FD0 - 0x1FCE];
|
||||
/* 0x1FD0 */ f32 field_0x1fd0;
|
||||
/* 0x1FD4 */ s16 field_0x1fd4;
|
||||
/* 0x1FD6 */ s16 field_0x1fd6;
|
||||
/* 0x1FD8 */ cXyz field_0x1fd8[2];
|
||||
/* 0x1FF0 */ g_himo_s field_0x1ff0[2];
|
||||
/* 0x2170 */ mDoExt_3DlineMat1_c field_0x2170[2];
|
||||
/* 0x21E8 */ mDoExt_3DlineMat1_c field_0x21e8;
|
||||
/* 0x2224 */ dKy_tevstr_c field_0x2224;
|
||||
/* 0x25AC */ u32 field_0x25ac;
|
||||
/* 0x25B0 */ u32 field_0x25b0;
|
||||
/* 0x25B4 */ u32 field_0x25b4;
|
||||
/* 0x25B8 */ u32 field_0x25b8;
|
||||
/* 0x25BC */ u32 field_0x25bc;
|
||||
/* 0x25C0 */ u32 field_0x25c0;
|
||||
/* 0x25C4 */ u32 field_0x25c4;
|
||||
/* 0x25C8 */ u32 field_0x25c8;
|
||||
/* 0x25CC */ u32 field_0x25cc;
|
||||
/* 0x25D0 */ u32 field_0x25d0;
|
||||
/* 0x25D4 */ u8 field_0x25D4[0x25D8 - 0x25D4];
|
||||
/* 0x25D8 */ u32 field_0x25d8;
|
||||
/* 0x25DC */ u32 field_0x25dc;
|
||||
/* 0x25E0 */ u32 field_0x25e0;
|
||||
/* 0x25E4 */ u32 field_0x25e4[3];
|
||||
/* 0x25F0 */ u8 field_0x25F0[0x2688 - 0x25F0];
|
||||
/* 0x2688 */ u32 field_0x2688;
|
||||
/* 0x268C */ u32 field_0x268c[3];
|
||||
/* 0x2698 */ u8 field_0x2698[0x269C - 0x2698];
|
||||
/* 0x269C */ cXyz field_0x269c;
|
||||
/* 0x26A8 */ cXyz field_0x26a8[2];
|
||||
/* 0x26C0 */ s16 field_0x26c0;
|
||||
/* 0x26C2 */ s16 field_0x26c2;
|
||||
/* 0x26C4 */ s16 field_0x26c4;
|
||||
/* 0x26C6 */ s16 field_0x26c6;
|
||||
/* 0x26C8 */ cXyz field_0x26c8;
|
||||
/* 0x26D4 */ cXyz field_0x26d4;
|
||||
/* 0x26E0 */ cXyz field_0x26e0;
|
||||
/* 0x26EC */ cXyz field_0x26ec;
|
||||
/* 0x26F8 */ cXyz field_0x26f8;
|
||||
/* 0x2704 */ cXyz field_0x2704;
|
||||
/* 0x2710 */ cXyz field_0x2710;
|
||||
/* 0x271C */ s16 field_0x271c;
|
||||
/* 0x271E */ u8 field_0x271E[0x272C - 0x271E];
|
||||
/* 0x272C */ s16 field_0x272c;
|
||||
/* 0x272E */ u8 field_0x272E[0x2730 - 0x272E];
|
||||
/* 0x2730 */ f32 field_0x2730;
|
||||
/* 0x2734 */ f32 field_0x2734;
|
||||
/* 0x2738 */ u8 field_0x2738;
|
||||
/* 0x2739 */ u8 field_0x2739[0x273C - 0x2739];
|
||||
/* 0x273C */ f32 field_0x273c;
|
||||
/* 0x2740 */ u8 field_0x2740;
|
||||
/* 0x2741 */ u8 field_0x2741[0x2744 - 0x2741];
|
||||
/* 0x2744 */ dMsgFlow_c mMsgFlow;
|
||||
};
|
||||
|
||||
#endif /* D_A_B_GND_H */
|
||||
|
||||
@@ -34,6 +34,7 @@ private:
|
||||
/* 0x0 */ u8 field_0x0[0xE4];
|
||||
}; // Size: 0xE4
|
||||
|
||||
class daHoZelda_c;
|
||||
class daHorse_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum daHorse_ERFLG0 {
|
||||
@@ -41,6 +42,8 @@ public:
|
||||
/* 0x010 */ MOVE_ACCEPT = 0x10,
|
||||
/* 0x080 */ RIDE_RUN_FLG = 0x80,
|
||||
/* 0x100 */ CUT_TURN_CANCEL = 0x100,
|
||||
|
||||
ERFLG0_UNK_18 = 0x18,
|
||||
};
|
||||
|
||||
enum daHorse_RFLG0 {
|
||||
@@ -153,7 +156,7 @@ public:
|
||||
|
||||
bool checkNoBombProc() const { return field_0x16b4 == 0 || field_0x16b4 == 1; }
|
||||
bool checkResetStateFlg0(daHorse_RFLG0 flag) const { return mResetStateFlg0 & flag; }
|
||||
bool checkEndResetStateFlg0(daHorse_ERFLG0 flag) { return mEndResetStateFlg0 & flag; }
|
||||
bool checkEndResetStateFlg0(daHorse_ERFLG0 flag) const { return mEndResetStateFlg0 & flag; }
|
||||
bool checkStateFlg0(daHorse_FLG0 flag) const { return mStateFlg0 & flag; }
|
||||
f32 getNormalMaxSpeedF() { return mNormalMaxSpeedF; }
|
||||
f32 getLashMaxSpeedF() { return mLashMaxSpeedF; }
|
||||
@@ -169,10 +172,29 @@ public:
|
||||
void onEndResetStateFlg0(daHorse_ERFLG0 i_flag) { mEndResetStateFlg0 |= i_flag;}
|
||||
void offNoDrawWait() { offStateFlg0(NO_DRAW_WAIT); }
|
||||
int checkSpecialWallHit(const cXyz& param_0) { return (this->*mpCheckSpecialWallHitFn)(param_0); }
|
||||
MtxP getSaddleMtx() { return field_0x570->i_getAnmMtx(21); }
|
||||
MtxP getRootMtx() { return field_0x570->i_getAnmMtx(0); }
|
||||
f32 getAnmFrameMax(int i_idx) const { return field_0x5b0[i_idx].getEnd(); }
|
||||
f32 getAnmFrame(int i_idx) const { return field_0x5b0[i_idx].getFrame(); }
|
||||
s16 getAimNeckAngleY() const { return mAimNeckAngleY; }
|
||||
f32 getMorfFrame() const { return mMorfFrame; }
|
||||
f32 getBlendRate() { return field_0x594[1].getRatio(); }
|
||||
u16 getAnmIdx(int i_idx) const { return mAnmIdx[i_idx]; }
|
||||
|
||||
daHoZelda_c* i_getZeldaActor() { return (daHoZelda_c*)mZeldaActorKeep.getActor(); }
|
||||
|
||||
bool checkTurnStandCamera() const { return checkResetStateFlg0(TURN_STAND_CAMERA); }
|
||||
bool checkTurnStand() const { return checkResetStateFlg0(TURN_STAND); }
|
||||
bool checkRodeoMode() const { return checkStateFlg0(RODEO_MODE); }
|
||||
bool checkCutTurnCancel() const { return checkEndResetStateFlg0(CUT_TURN_CANCEL); }
|
||||
bool checkTurnCancelKeep() const { return checkStateFlg0(TURN_CANCEL_KEEP); }
|
||||
bool checkTurn() const { return field_0x16b4 == 3 && field_0x1720 == 0; }
|
||||
bool checkStop() const { return field_0x16b4 == 2; }
|
||||
bool checkJump() const { return field_0x16b4 == 4; }
|
||||
bool checkWait() const { return field_0x16b4 == 0; }
|
||||
bool checkLand() const { return field_0x16b4 == 5 && field_0x171a == 0; }
|
||||
bool checkGetOff() const { return fabsf(speedF) < 3.0f; }
|
||||
bool checkEnemySearch() { return checkResetStateFlg0(ENEMY_SEARCH); }
|
||||
|
||||
void onTagJump(f32 param_0, f32 param_1, f32 param_2) {
|
||||
field_0x1768 = param_0;
|
||||
@@ -181,6 +203,10 @@ public:
|
||||
onEndResetStateFlg0(ERFLG0_UNK_1);
|
||||
}
|
||||
|
||||
void onMoveAccept() { onEndResetStateFlg0(MOVE_ACCEPT); }
|
||||
void onPlayerLash() { onEndResetStateFlg0(ERFLG0_UNK_18); }
|
||||
void offPlayerBackRideLash() { offStateFlg0(PLAYER_BACK_RIDE_LASH); }
|
||||
|
||||
static u8 const m_footJointTable[8];
|
||||
static f32 const m_callLimitDistance2;
|
||||
|
||||
@@ -216,7 +242,9 @@ public:
|
||||
/* 0x16B8 */ u8 field_0x16b8;
|
||||
/* 0x16B9 */ u8 field_0x16b9[2];
|
||||
/* 0x16BB */ u8 mRodeoPointCnt;
|
||||
/* 0x16BC */ u8 field_0x16bc[0x36];
|
||||
/* 0x16BC */ u8 field_0x16bc[0x16C4 - 0x16BC];
|
||||
/* 0x16C4 */ u16 mAnmIdx[3];
|
||||
/* 0x16CA */ u8 field_0x16ca[0x16F2 - 0x16CA];
|
||||
/* 0x16F2 */ s16 mAimNeckAngleY;
|
||||
/* 0x16F4 */ u8 field_0x16f4[0x8];
|
||||
/* 0x16FC */ s16 mDemoMoveAngle;
|
||||
@@ -225,7 +253,11 @@ public:
|
||||
/* 0x1704 */ u8 field_0x1704[2];
|
||||
/* 0x1706 */ s16 mCowHitAngle;
|
||||
/* 0x1708 */ s16 mCowHit;
|
||||
/* 0x170A */ u8 field_0x170a[0x1E];
|
||||
/* 0x170A */ u8 field_0x170a[0x171A - 0x170A];
|
||||
/* 0x171A */ s16 field_0x171a;
|
||||
/* 0x171C */ u8 field_0x171c[0x1720 - 0x171C];
|
||||
/* 0x1720 */ s16 field_0x1720;
|
||||
/* 0x1722 */ u8 field_0x1722[0x1728 - 0x1722];
|
||||
/* 0x1728 */ int field_0x1728;
|
||||
/* 0x172C */ u8 field_0x172c[0x14];
|
||||
/* 0x1740 */ u32 field_0x1740;
|
||||
|
||||
@@ -2,5 +2,94 @@
|
||||
#define D_A_HOZELDA_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daHoZelda_matAnm_c : public J3DMaterialAnm {
|
||||
public:
|
||||
/* 80845EAC */ void init();
|
||||
|
||||
/* 80848D54 */ virtual ~daHoZelda_matAnm_c();
|
||||
/* 80845EDC */ virtual void calc(J3DMaterial*) const;
|
||||
|
||||
static bool mEyeMoveFlg;
|
||||
static u8 mMorfFrame;
|
||||
|
||||
/* 0x0F4 */ f32 field_0xf4;
|
||||
/* 0x0F8 */ f32 field_0xf8;
|
||||
/* 0x0FC */ f32 mNowOffsetX;
|
||||
/* 0x100 */ f32 mNowOffsetY;
|
||||
};
|
||||
|
||||
class daHoZelda_hio_c;
|
||||
|
||||
class daHoZelda_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* 80846000 */ void createHeap();
|
||||
/* 80846718 */ void modelCallBack(u16);
|
||||
/* 808469B0 */ void create();
|
||||
/* 80846DB0 */ ~daHoZelda_c();
|
||||
/* 80846F4C */ void setDoubleAnime(f32, f32, f32, u16, u16, f32);
|
||||
/* 8084718C */ void setUpperAnime(u16);
|
||||
/* 80847234 */ void resetUpperAnime();
|
||||
/* 808472C0 */ void setSingleAnime(u16, f32, f32, s16, f32);
|
||||
/* 80847430 */ void animePlay();
|
||||
/* 80847574 */ void setEyeBtp(u16);
|
||||
/* 808475F0 */ void setEyeBtk(u16, u8);
|
||||
/* 80847670 */ void setNormalFace();
|
||||
/* 808476B0 */ void setAnm();
|
||||
/* 80847E44 */ void setBowModel();
|
||||
/* 80847F54 */ void setMatrix();
|
||||
/* 80848058 */ void shootArrow();
|
||||
/* 80848090 */ void deleteArrow();
|
||||
/* 80848118 */ void setBowBck(u16);
|
||||
/* 8084819C */ void setRideOffset();
|
||||
/* 80848204 */ void clearEyeMove();
|
||||
/* 80848254 */ void setEyeMove(cXyz const*, s16, s16);
|
||||
/* 808484B8 */ void setNeckAngle();
|
||||
/* 80848774 */ void searchBodyAngle();
|
||||
/* 808489CC */ void execute();
|
||||
/* 80848B64 */ void draw();
|
||||
|
||||
u8 checkBowMode() const { return field_0x6d8; }
|
||||
void setDamageInit() { field_0x6db = 1; }
|
||||
|
||||
/* 0x568 */ request_of_phase_process_class mPhase;
|
||||
/* 0x570 */ J3DModel* mpZeldaModel;
|
||||
/* 0x574 */ J3DModel* mpBowModel;
|
||||
/* 0x578 */ mDoExt_btpAnm mEyeBtp;
|
||||
/* 0x590 */ mDoExt_btkAnm mEyeBtk;
|
||||
/* 0x5A8 */ mDoExt_MtxCalcAnmBlendTblOld* field_0x5a8;
|
||||
/* 0x5AC */ mDoExt_AnmRatioPack field_0x5ac[3];
|
||||
/* 0x5C4 */ mDoExt_MtxCalcOldFrame* field_0x5c4;
|
||||
/* 0x5C8 */ daPy_frameCtrl_c field_0x5c8[3];
|
||||
/* 0x610 */ daHoZelda_matAnm_c* field_0x610[2];
|
||||
/* 0x618 */ Z2Creature mSound;
|
||||
/* 0x6A8 */ mDoExt_bckAnm mBowBck;
|
||||
/* 0x6C4 */ daPy_actorKeep_c mArrowAcKeep;
|
||||
/* 0x6CC */ daPy_actorKeep_c field_0x6cc;
|
||||
/* 0x6D4 */ daHoZelda_hio_c* mpHIO;
|
||||
/* 0x6D8 */ u8 field_0x6d8;
|
||||
/* 0x6D9 */ u8 field_0x6d9;
|
||||
/* 0x6DA */ u8 field_0x6da;
|
||||
/* 0x6DB */ u8 field_0x6db;
|
||||
/* 0x6DC */ u8 field_0x6DC[0x6DD - 0x6DC];
|
||||
/* 0x6DD */ u8 field_0x6dd;
|
||||
/* 0x6DE */ u8 field_0x6de;
|
||||
/* 0x6DF */ u8 field_0x6df;
|
||||
/* 0x6E0 */ s8 mReverb;
|
||||
/* 0x6E1 */ u8 field_0x6E1[0x6E4 - 0x6E1];
|
||||
/* 0x6E4 */ u16 field_0x6e4;
|
||||
/* 0x6E6 */ u16 field_0x6e6;
|
||||
/* 0x6E8 */ u16 mUpperAnmID;
|
||||
/* 0x6EA */ s16 mBowAnmID;
|
||||
/* 0x6EC */ s16 field_0x6ec;
|
||||
/* 0x6EE */ s16 field_0x6ee;
|
||||
/* 0x6F0 */ u8 field_0x6F0[0x6F2 - 0x6F0];
|
||||
/* 0x6F2 */ s16 field_0x6f2;
|
||||
/* 0x6F4 */ s16 field_0x6f4;
|
||||
/* 0x6F6 */ u8 field_0x6F6[0x6F8 - 0x6F6];
|
||||
/* 0x6F8 */ Vec field_0x6f8;
|
||||
/* 0x704 */ Vec* mpRideOffset;
|
||||
};
|
||||
|
||||
#endif /* D_A_HOZELDA_H */
|
||||
|
||||
@@ -80,6 +80,8 @@ public:
|
||||
|
||||
s16 getAngleY() { return shape_angle.y + field_0xa7e; }
|
||||
|
||||
void forceDelete() { mDeleteFlg = 1; }
|
||||
|
||||
private:
|
||||
/* 0x568 */ J3DModel* mpModel;
|
||||
/* 0x56C */ mDoExt_bckAnm mBck;
|
||||
|
||||
@@ -19,9 +19,22 @@ public:
|
||||
void setPlayerRide();
|
||||
void getOff();
|
||||
BOOL checkDownDamage();
|
||||
u8 checkNormalRideMode() const;
|
||||
BOOL checkNormalRideMode() const;
|
||||
void setRunRideMode();
|
||||
|
||||
MtxP getRideMtx() { return field_0x5e0->getModel()->i_getAnmMtx(15); }
|
||||
f32 nowAnimeFrame() const { return field_0x5e0->getFrame(); }
|
||||
s16 getWaitRollAngle() const { return mWaitRollAngle; }
|
||||
bool checkGetOff() const { return speedF < 3.0f; }
|
||||
|
||||
J3DModel* getModel() {
|
||||
if (field_0x5e0 != NULL) {
|
||||
return field_0x5e0->getModel();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x05AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x05B4 */ s16 field_0x5b4;
|
||||
@@ -144,6 +157,7 @@ private:
|
||||
/* 0x1722 */ s8 field_0x1722;
|
||||
/* 0x1723 */ u8 field_0x1723[0x17c4 - 0x1723];
|
||||
/* 0x17C4 */ u32 field_0x17c4;
|
||||
/* 0x17C8 */ u8 field_0x17c8[0x17D0 - 0x17C8];
|
||||
/* 0x17D0 */ u32 field_0x17d0[4];
|
||||
/* 0x17E0 */ u8 field_0x17e0;
|
||||
/* 0x17E1 */ u8 field_0x17e1;
|
||||
|
||||
@@ -1,6 +1,54 @@
|
||||
#ifndef D_A_OBJ_ICELEAF_H
|
||||
#define D_A_OBJ_ICELEAF_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
|
||||
class daObjIceLeaf_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* 80C24738 */ void initBaseMtx();
|
||||
/* 80C24774 */ void setBaseMtx();
|
||||
/* 80C249E4 */ void Create();
|
||||
/* 80C24BC4 */ void setAnmPos();
|
||||
/* 80C24C9C */ void CreateHeap();
|
||||
/* 80C24E14 */ void create();
|
||||
/* 80C25158 */ void execute();
|
||||
/* 80C25360 */ void action();
|
||||
/* 80C2541C */ void modeDropWait();
|
||||
/* 80C25614 */ void modeDrop();
|
||||
/* 80C258F8 */ void modePlayerWait();
|
||||
/* 80C25904 */ void modeRide();
|
||||
/* 80C25908 */ void event_proc_call();
|
||||
/* 80C259C4 */ void actionWait();
|
||||
/* 80C259C8 */ void actionOrderEvent();
|
||||
/* 80C25A68 */ void actionEvent();
|
||||
/* 80C25AC4 */ void actionDead();
|
||||
/* 80C25AC8 */ void setFallSE();
|
||||
/* 80C25BB8 */ void draw();
|
||||
/* 80C25C50 */ void _delete();
|
||||
|
||||
void offRide() { mRide = false; }
|
||||
void setBreakEffect() { mBreakEffect = true; }
|
||||
|
||||
/* 0x568 */ request_of_phase_process_class mPhase;
|
||||
/* 0x570 */ J3DModel* mpModel;
|
||||
/* 0x574 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x74C */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x78C */ dCcD_Stts mStts;
|
||||
/* 0x7C8 */ dCcD_Cyl mCyl;
|
||||
/* 0x904 */ mDoExt_bckAnm* mpBck;
|
||||
/* 0x908 */ J3DTransformInfo field_0x908;
|
||||
/* 0x928 */ u8 mAction;
|
||||
/* 0x929 */ u8 field_0x929;
|
||||
/* 0x92A */ u8 field_0x92a;
|
||||
/* 0x92B */ u8 field_0x92b;
|
||||
/* 0x92C */ s16 mEventID;
|
||||
/* 0x930 */ Mtx field_0x930;
|
||||
/* 0x960 */ u8 mRide;
|
||||
/* 0x961 */ u8 field_0x961;
|
||||
/* 0x962 */ u8 mBreakEffect;
|
||||
/* 0x964 */ cXyz field_0x964;
|
||||
/* 0x970 */ cXyz field_0x970;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_ICELEAF_H */
|
||||
|
||||
@@ -6,6 +6,10 @@ namespace std {
|
||||
float fabs(float num) {
|
||||
return fabsf(num);
|
||||
}
|
||||
|
||||
float abs(float num) {
|
||||
return fabsf(num);
|
||||
}
|
||||
} // namespace std
|
||||
|
||||
#endif
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// Translation Unit: d_a_b_gnd
|
||||
//
|
||||
|
||||
#include "rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h"
|
||||
// #include "rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
// Translation Unit: d_a_hozelda
|
||||
//
|
||||
|
||||
#include "rel/d/a/d_a_hozelda/d_a_hozelda.h"
|
||||
// #include "rel/d/a/d_a_hozelda/d_a_hozelda.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
// Translation Unit: d_a_obj_iceleaf
|
||||
//
|
||||
|
||||
#include "rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h"
|
||||
// #include "rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/cc/d_cc_d.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
|
||||
+18
-26
@@ -5698,65 +5698,57 @@ COMPILER_STRIP_GATE(0x8039190C, &daAlink_c::m_handRightInSidePos);
|
||||
/* 80391918-80391924 01DF78 000C+00 0/1 0/0 0/0 .rodata horseLocalLeft$17678 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const horseLocalLeft[12] = {
|
||||
0x41, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
static const Vec horseLocalLeft = {
|
||||
20.0f, 0.0f, 0.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391918, &horseLocalLeft);
|
||||
#pragma pop
|
||||
|
||||
/* 80391924-80391930 01DF84 000C+00 0/1 0/0 0/0 .rodata horseLocalRight$17679 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const horseLocalRight[12] = {
|
||||
0xC1, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
static const Vec horseLocalRight = {
|
||||
-20.0f, 0.0f, 0.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391924, &horseLocalRight);
|
||||
#pragma pop
|
||||
|
||||
/* 80391930-8039193C 01DF90 000C+00 0/1 0/0 0/0 .rodata horseLocalBack$17680 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const horseLocalBack[12] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC3, 0x48, 0x00, 0x00,
|
||||
static const Vec horseLocalBack = {
|
||||
0.0f, 0.0f, -200.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391930, &horseLocalBack);
|
||||
#pragma pop
|
||||
|
||||
/* 8039193C-80391948 01DF9C 000C+00 0/1 0/0 0/0 .rodata boarLocalLeft$17681 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const boarLocalLeft[12] = {
|
||||
0x43, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC1, 0x90, 0x00, 0x00,
|
||||
static const Vec boarLocalLeft = {
|
||||
200.0f, 0.0f, -18.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x8039193C, &boarLocalLeft);
|
||||
#pragma pop
|
||||
|
||||
/* 80391948-80391954 01DFA8 000C+00 0/1 0/0 0/0 .rodata boarLocalRight$17682 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const boarLocalRight[12] = {
|
||||
0xC3, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC1, 0x90, 0x00, 0x00,
|
||||
static const Vec boarLocalRight = {
|
||||
-200.0f, 0.0f, -18.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391948, &boarLocalRight);
|
||||
#pragma pop
|
||||
|
||||
/* 80391954-80391960 01DFB4 000C+00 1/1 0/0 0/0 .rodata localHorseRun$18095 */
|
||||
SECTION_RODATA static u8 const localHorseRun_18095[12] = {
|
||||
0x41, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC2, 0x34, 0x00, 0x00,
|
||||
static const Vec localHorseRun_18095 = {
|
||||
15.0f, 0.0f, -45.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391954, &localHorseRun_18095);
|
||||
|
||||
/* 80391960-8039196C 01DFC0 000C+00 1/1 0/0 0/0 .rodata localHorseRun$18103 */
|
||||
SECTION_RODATA static u8 const localHorseRun_18103[12] = {
|
||||
0x41, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00,
|
||||
static const Vec localHorseRun_18103 = {
|
||||
30.0f, 0.0f, -10.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80391960, &localHorseRun_18103);
|
||||
|
||||
/* 8039196C-80391978 01DFCC 000C+00 1/1 0/0 0/0 .rodata localOffset$18237 */
|
||||
SECTION_RODATA static u8 const localOffset_18237[12] = {
|
||||
0xC1, 0xF0, 0x00, 0x00, 0xC1, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
static const Vec localOffset_18237 = {
|
||||
-30.0f, -18.0f, 0.0f
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x8039196C, &localOffset_18237);
|
||||
|
||||
/* 80391978-80391984 01DFD8 000C+00 1/1 0/0 0/0 .rodata @18938 */
|
||||
SECTION_RODATA static u8 const lit_18938[12] = {
|
||||
@@ -13190,7 +13182,7 @@ static u8 lit_4416[12];
|
||||
#pragma pop
|
||||
|
||||
/* 804255BC-804255C8 0522DC 000C+00 1/3 0/0 0/0 .bss l_localHorseRidePos */
|
||||
static u8 l_localHorseRidePos[12];
|
||||
static Vec l_localHorseRidePos;
|
||||
|
||||
/* 804255C8-804255D4 0522E8 000C+00 0/1 0/0 0/0 .bss @4417 */
|
||||
#pragma push
|
||||
@@ -13199,7 +13191,7 @@ static u8 lit_4417[12];
|
||||
#pragma pop
|
||||
|
||||
/* 804255D4-804255E0 0522F4 000C+00 1/3 0/0 0/0 .bss l_localBoarRidePos */
|
||||
static u8 l_localBoarRidePos[12];
|
||||
static Vec l_localBoarRidePos;
|
||||
|
||||
/* 804255E0-804255EC 052300 000C+00 0/1 0/0 0/0 .bss @4418 */
|
||||
#pragma push
|
||||
|
||||
+527
-20
@@ -3,8 +3,29 @@
|
||||
* Player Sword action handling
|
||||
*/
|
||||
|
||||
#include "rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h"
|
||||
|
||||
/* 800D0D38-800D0E08 0CB678 00D0+00 1/1 0/0 0/0 .text daAlink_searchNightStalker__FP10fopAc_ac_cPv
|
||||
*/
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
static fopAc_ac_c* daAlink_searchNightStalker(fopAc_ac_c* i_actor, void*) {
|
||||
if (fopAcM_GetName(i_actor) == PROC_E_S1) {
|
||||
daPy_py_c* player_p = daPy_getLinkPlayerActorClass();
|
||||
if (player_p->current.pos.abs2XZ(i_actor->current.pos) < 250000.0f &&
|
||||
fabsf(player_p->current.pos.y - i_actor->current.pos.y) < 300.0f)
|
||||
{
|
||||
return i_actor;
|
||||
}
|
||||
} else if (fopAcM_GetName(i_actor) == PROC_B_GND &&
|
||||
static_cast<b_gnd_class*>(i_actor)->checkAttackChance())
|
||||
{
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -13,6 +34,7 @@ static asm void daAlink_searchNightStalker(fopAc_ac_c* param_0, void* param_1) {
|
||||
#include "asm/d/a/d_a_alink/daAlink_searchNightStalker__FP10fopAc_ac_cPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D0E08-800D0E98 0CB748 0090+00 1/1 0/0 0/0 .text checkLightSwordMtrl__9daAlink_cFv
|
||||
*/
|
||||
@@ -21,7 +43,8 @@ void daAlink_c::checkLightSwordMtrl() {
|
||||
stage_stag_info_class* stag_info = dComIfGp_getStageStagInfo();
|
||||
|
||||
if (i_dStage_stagInfo_GetSaveTbl(stag_info) == 0x17 ||
|
||||
fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchNightStalker, NULL)) {
|
||||
fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchNightStalker, NULL))
|
||||
{
|
||||
i_onNoResetFlg3(FLG3_UNK_100000);
|
||||
return;
|
||||
}
|
||||
@@ -93,6 +116,38 @@ void daAlink_c::changeCutFast() {
|
||||
}
|
||||
|
||||
/* 800D10E0-800D1268 0CBA20 0188+00 1/1 0/0 0/0 .text checkCutFastReady__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
bool daAlink_c::checkCutFastReady() {
|
||||
if (mProcID == PROC_CUT_FAST_READY) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (checkNotBattleStage()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
fopAc_ac_c* target_p = mAttention->LockonTarget(0);
|
||||
|
||||
if (mEquipItem == NO_ITEM && (i_dComIfGs_isEventBit(0x2A80) || i_checkNoResetFlg3(FLG3_UNK_80)))
|
||||
{
|
||||
if (i_checkModeFlg(1) && !i_checkRideOn() && i_checkSwordGet() && i_checkModeFlg(4) &&
|
||||
!i_checkModeFlg(0x40000) && mTargetedActor == NULL && checkEnemyGroup(target_p))
|
||||
{
|
||||
f32 xz_dist = target_p->mEyePos.abs2XZ(current.pos);
|
||||
f32 y_dist = fabsf(target_p->mEyePos.y - current.pos.y);
|
||||
|
||||
if ((xz_dist < 160000.0f && y_dist < 300.0f) ||
|
||||
(i_checkNoResetFlg0(FLG0_UNK_1000000) && xz_dist < 202500.0f && y_dist < 350.0f))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -101,6 +156,7 @@ asm bool daAlink_c::checkCutFastReady() {
|
||||
#include "asm/d/a/d_a_alink/checkCutFastReady__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D1268-800D1310 0CBBA8 00A8+00 9/9 0/0 0/0 .text setSwordModel__9daAlink_cFv */
|
||||
void daAlink_c::setSwordModel() {
|
||||
@@ -161,9 +217,11 @@ void daAlink_c::resetCombo(int param_0) {
|
||||
void daAlink_c::checkComboCnt() {
|
||||
if ((mEquipItem == EQUIP_SWORD && mComboCutCount == 2) &&
|
||||
(i_checkAttentionLock() &&
|
||||
(mAtCps[0].ChkAtHit() || mAtCps[1].ChkAtHit() || mAtCps[2].ChkAtHit()))) {
|
||||
(mAtCps[0].ChkAtHit() || mAtCps[1].ChkAtHit() || mAtCps[2].ChkAtHit())))
|
||||
{
|
||||
i_onNoResetFlg0(FLG0_UNK_8000);
|
||||
}
|
||||
|
||||
if (field_0x307e > 0) {
|
||||
field_0x307e--;
|
||||
} else {
|
||||
@@ -300,7 +358,8 @@ BOOL daAlink_c::setSwordHitVibration(dCcD_GObjInf* i_gobj) {
|
||||
var_r4 = 3;
|
||||
}
|
||||
} else if (field_0x2fd0 == 2 ||
|
||||
(i_gobj->GetAtHitAc() != NULL && fopAcM_GetGroup(i_gobj->GetAtHitAc()) == 3)) {
|
||||
(i_gobj->GetAtHitAc() != NULL && fopAcM_GetGroup(i_gobj->GetAtHitAc()) == 3))
|
||||
{
|
||||
var_r4 = 2;
|
||||
} else if (field_0x2fd0 == 1) {
|
||||
var_r4 = 4;
|
||||
@@ -634,7 +693,8 @@ BOOL daAlink_c::checkDownAttackState() {
|
||||
(i_checkWolf() &&
|
||||
(fopAcM_GetName(mTargetedActor) == PROC_E_PO ||
|
||||
fopAcM_GetName(mTargetedActor) == PROC_E_HP) &&
|
||||
enemy->getDownPos().abs2(current.pos) < lit_7174)))) {
|
||||
enemy->getDownPos().abs2(current.pos) < lit_7174))))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -835,7 +895,8 @@ int daAlink_c::procCutNormal() {
|
||||
if ((cutDir == DIR_RIGHT && mCutType == CUT_TYPE_NM_LEFT &&
|
||||
frameCtrl->getFrame() > lit_7448) ||
|
||||
(cutDir == DIR_LEFT && mCutType == CUT_TYPE_NM_RIGHT &&
|
||||
frameCtrl->getFrame() > lit_7448)) {
|
||||
frameCtrl->getFrame() > lit_7448))
|
||||
{
|
||||
field_0x300a = cutDir;
|
||||
}
|
||||
}
|
||||
@@ -849,7 +910,8 @@ int daAlink_c::procCutNormal() {
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if ((!(frameCtrl->getFrame() > field_0x3484) && field_0x300a == 4) ||
|
||||
!checkCutCancelNextMode(3)) {
|
||||
!checkCutCancelNextMode(3))
|
||||
{
|
||||
if (frameCtrl->getFrame() > field_0x3484) {
|
||||
resetCombo(1);
|
||||
}
|
||||
@@ -1011,6 +1073,79 @@ int daAlink_c::procCutFinishInit(int i_type) {
|
||||
}
|
||||
|
||||
/* 800D382C-800D3ADC 0CE16C 02B0+00 1/0 0/0 0/0 .text procCutFinish__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutFinish() {
|
||||
if (checkGroundSpecialMode()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
daPy_frameCtrl_c* frameCtrl_p = mUnderFrameCtrl;
|
||||
|
||||
setBodyAngleXReadyAnime(1);
|
||||
cLib_chaseF(&mNormalSpeed, 0.0f, daAlinkHIO_move_c0::m.mDeceleration);
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
setComboReserb();
|
||||
|
||||
checkCutTurnCharge();
|
||||
checkCutAtnActorChange();
|
||||
|
||||
if (mCutType == CUT_TYPE_MORTAL_DRAW_A || mCutType == CUT_TYPE_FINISH_STAB) {
|
||||
field_0x2f99 = 5;
|
||||
} else {
|
||||
field_0x2f99 = 4;
|
||||
}
|
||||
|
||||
if (frameCtrl_p->getFrame() >= field_0x300e.x) {
|
||||
onModeFlg(0x100);
|
||||
} else if (frameCtrl_p->getFrame() >= field_0x300c) {
|
||||
offModeFlg(0x100);
|
||||
}
|
||||
|
||||
if (checkAnmEnd(frameCtrl_p)) {
|
||||
resetCombo(1);
|
||||
|
||||
if (field_0x3008 > 0) {
|
||||
if (!(frameCtrl_p->getFrame() > field_0x3484) || !checkCutCancelNextMode(3)) {
|
||||
field_0x3008--;
|
||||
}
|
||||
} else if (mDemo.getDemoMode() == 0x24 || mDemo.getDemoMode() == 0x54) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
} else {
|
||||
mNormalSpeed = 0.0f;
|
||||
field_0x2f98 = 2;
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if (!(frameCtrl_p->getFrame() > field_0x3484) || !checkCutCancelNextMode(3)) {
|
||||
if (frameCtrl_p->getFrame() > field_0x3484) {
|
||||
resetCombo(1);
|
||||
}
|
||||
|
||||
if (changeCutReverseProc((daAlink_ANM)field_0x3198)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
setShapeAngleToAtnActor(field_0x300e.y);
|
||||
|
||||
if (cLib_distanceAngleS(getShapeAngleYAtnActor(), shape_angle.y) < 0x800) {
|
||||
field_0x300e.y = 1;
|
||||
}
|
||||
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
if (frameCtrl_p->getFrame() >= field_0x3478 && frameCtrl_p->getFrame() < field_0x347c) {
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
|
||||
seStartSwordCut(field_0x32d0);
|
||||
mNormalSpeed = field_0x3480;
|
||||
}
|
||||
|
||||
i_onResetFlg0(RFLG0_UNK_2);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1019,6 +1154,7 @@ asm int daAlink_c::procCutFinish() {
|
||||
#include "asm/d/a/d_a_alink/procCutFinish__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D3ADC-800D3CCC 0CE41C 01F0+00 2/2 0/0 0/0 .text procCutFinishJumpUpInit__9daAlink_cFv */
|
||||
int daAlink_c::procCutFinishJumpUpInit() {
|
||||
@@ -1055,8 +1191,8 @@ int daAlink_c::procCutFinishJumpUpInit() {
|
||||
field_0x307e = daAlinkHIO_cut_c0::m.mComboDuration;
|
||||
f32 var_f31 = daAlinkHIO_cutFnJU_c0::m.mCutAnm.mStartFrame;
|
||||
|
||||
setCylAtParam(getSwordAtType(), dCcG_At_Spl_UNK_1, 3, 1, 3, daAlinkHIO_cutFnJU_c0::m.mAttackRadius,
|
||||
lit_7625);
|
||||
setCylAtParam(getSwordAtType(), dCcG_At_Spl_UNK_1, 3, 1, 3,
|
||||
daAlinkHIO_cutFnJU_c0::m.mAttackRadius, lit_7625);
|
||||
field_0x32cc = Z2SE_AL_SWORD_SWING_L;
|
||||
|
||||
setSingleAnime(ANM_CUT_TWIRL, daAlinkHIO_cutFnJU_c0::m.mCutAnm.mSpeed, var_f31,
|
||||
@@ -1089,12 +1225,14 @@ int daAlink_c::procCutFinishJumpUp() {
|
||||
}
|
||||
|
||||
if (mDemo.getDemoMode() != 0x52 &&
|
||||
current.pos.y < mLastJumpPos.y - daAlinkHIO_cutFnJU_c0::m.mFallHeight) {
|
||||
current.pos.y < mLastJumpPos.y - daAlinkHIO_cutFnJU_c0::m.mFallHeight)
|
||||
{
|
||||
return procFallInit(2, daAlinkHIO_cutFnJU_c0::m.mFallInterpolation);
|
||||
}
|
||||
|
||||
if (frameCtrl->getFrame() >= daAlinkHIO_cutFnJU_c0::m.mAttackStartFrame &&
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutFnJU_c0::m.mAttackEndFrame) {
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutFnJU_c0::m.mAttackEndFrame)
|
||||
{
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
|
||||
seStartSwordCut(field_0x32cc);
|
||||
}
|
||||
@@ -1210,7 +1348,8 @@ int daAlink_c::procCutReverseInit(daAlink_c::daAlink_ANM i_anmID) {
|
||||
|
||||
int temp_r3;
|
||||
if (mCutType == CUT_TYPE_MORTAL_DRAW_A || mCutType == CUT_TYPE_MORTAL_DRAW_B ||
|
||||
mCutType == CUT_TYPE_JUMP) {
|
||||
mCutType == CUT_TYPE_JUMP)
|
||||
{
|
||||
temp_r3 = 5;
|
||||
} else {
|
||||
temp_r3 = 3;
|
||||
@@ -1359,8 +1498,8 @@ int daAlink_c::procCutJumpLand() {
|
||||
|
||||
if (frameCtrl->checkAnmEnd()) {
|
||||
checkNextAction(0);
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_cutJump_c0::m.mJumpSpinDelay &&
|
||||
field_0x3198 != 2) {
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_cutJump_c0::m.mJumpSpinDelay && field_0x3198 != 2)
|
||||
{
|
||||
procCutTurnInit(1, field_0x3198);
|
||||
} else {
|
||||
if (frameCtrl->getFrame() > daAlinkHIO_cutJump_c0::m.mLandAnm.mCheckFrame) {
|
||||
@@ -1619,6 +1758,133 @@ int daAlink_c::procCutTurnMoveInit(int param_0) {
|
||||
}
|
||||
|
||||
/* 800D4EFC-800D53C8 0CF83C 04CC+00 1/0 0/0 0/0 .text procCutTurnMove__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutTurnMove() {
|
||||
setShapeAngleToAtnActor(0);
|
||||
|
||||
if (!checkWoodSwordEquip()) {
|
||||
simpleAnmPlay(m_nSwordBtk);
|
||||
} else {
|
||||
field_0x3008++;
|
||||
if (field_0x3008 >= 14.0f) {
|
||||
field_0x3008 = 100;
|
||||
}
|
||||
}
|
||||
|
||||
field_0x2fe4 = shape_angle.y;
|
||||
i_onNoResetFlg1(FLG1_UNK_10000000);
|
||||
|
||||
if (checkGroundSpecialMode()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
BOOL var_r4 = m_nSwordBtk->getFrame() >= 14.0f || field_0x3008 >= 14.0f;
|
||||
|
||||
if (field_0x300c != 0) {
|
||||
if (checkDownAttackState() && !var_r4) {
|
||||
setDoStatusEmphasys(0x30);
|
||||
} else if (checkCutHeadState() && !var_r4) {
|
||||
setDoStatusEmphasys(0x77);
|
||||
} else {
|
||||
setDoStatus(0x86);
|
||||
}
|
||||
} else {
|
||||
field_0x307e = daAlinkHIO_cut_c0::m.mComboDuration;
|
||||
}
|
||||
|
||||
if (mDemo.getDemoMode() == 0x5B || mDemo.getDemoMode() == 0x5C) {
|
||||
if (var_r4) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
}
|
||||
} else if ((field_0x300c == 0 && swordButton()) || (field_0x300c != 0 && doButton())) {
|
||||
f32 var_f30 = 0.0f;
|
||||
i_onResetFlg0(RFLG0_UNK_10);
|
||||
|
||||
if (checkInputOnR()) {
|
||||
int direction = getDirectionFromAngle(field_0x2fe2 - field_0x2fe4);
|
||||
daAlink_ANM anm = ANM_MAX;
|
||||
|
||||
cLib_addCalcAngleS(¤t.angle.y, field_0x2fe2, 4, 12000, 0x2000);
|
||||
|
||||
f32 var_f31;
|
||||
if (field_0x2f98 == 0 || field_0x2f98 == 1) {
|
||||
if (direction == DIR_LEFT || direction == DIR_RIGHT) {
|
||||
anm = ANM_CUT_TURN_CHARGE_MOVE;
|
||||
var_f31 = daAlinkHIO_cutTurn_c0::m.mMoveLRInterpolation;
|
||||
mNormalSpeed *= 0.5f;
|
||||
} else if (field_0x2f98 != direction) {
|
||||
mNormalSpeed *= -0.5f;
|
||||
current.angle.y = field_0x2fe2;
|
||||
}
|
||||
} else if (direction == DIR_FORWARD || direction == DIR_BACKWARD) {
|
||||
anm = ANM_CUT_TURN_CHARGE;
|
||||
var_f31 = daAlinkHIO_cutTurn_c0::m.mMoveFBInterpolation;
|
||||
mNormalSpeed *= 0.5f;
|
||||
} else if (field_0x2f98 != direction) {
|
||||
mNormalSpeed *= -0.5f;
|
||||
current.angle.y = field_0x2fe2;
|
||||
}
|
||||
|
||||
if (field_0x2f98 == direction) {
|
||||
var_f30 = daAlinkHIO_cutTurn_c0::m.mChargeMoveAccel * field_0x33ac;
|
||||
} else {
|
||||
field_0x2f98 = direction;
|
||||
}
|
||||
|
||||
if (anm != ANM_MAX) {
|
||||
setSingleAnimeBaseSpeed(anm, 0.0f, var_f31);
|
||||
}
|
||||
}
|
||||
|
||||
setNormalSpeedF(var_f30, daAlinkHIO_cutTurn_c0::m.mChargeMoveDecel);
|
||||
|
||||
f32 var_f31_2;
|
||||
if (field_0x2f98 == DIR_FORWARD) {
|
||||
var_f31_2 = daAlinkHIO_cutTurn_c0::m.mMoveFBAnmSpeed;
|
||||
} else if (field_0x2f98 == DIR_BACKWARD) {
|
||||
var_f31_2 = -daAlinkHIO_cutTurn_c0::m.mMoveFBAnmSpeed;
|
||||
} else if (field_0x2f98 == DIR_RIGHT) {
|
||||
var_f31_2 = -daAlinkHIO_cutTurn_c0::m.mMoveLRAnmSpeed;
|
||||
} else {
|
||||
var_f31_2 = daAlinkHIO_cutTurn_c0::m.mMoveLRAnmSpeed;
|
||||
}
|
||||
|
||||
daPy_frameCtrl_c* frameCtrl_p = mUnderFrameCtrl;
|
||||
|
||||
f32 temp_f0 = mNormalSpeed / field_0x594;
|
||||
setWaterInAnmRate(frameCtrl_p, temp_f0 * var_f31_2);
|
||||
|
||||
if (var_f31_2 >= 0.0f) {
|
||||
frameCtrl_p->setLoop(frameCtrl_p->getStart());
|
||||
} else {
|
||||
frameCtrl_p->setLoop(frameCtrl_p->getEnd());
|
||||
}
|
||||
|
||||
initBasAnime();
|
||||
|
||||
if (checkZeroSpeedF()) {
|
||||
onModeFlg(1);
|
||||
mSpeedModifier = 0.0f;
|
||||
} else {
|
||||
offModeFlg(1);
|
||||
mSpeedModifier = 1.0f;
|
||||
}
|
||||
} else if (var_r4) {
|
||||
if (field_0x300c != 0) {
|
||||
procCutLargeJumpInit();
|
||||
} else {
|
||||
procCutTurnInit(0, 1);
|
||||
}
|
||||
} else if (field_0x300c != 0) {
|
||||
checkDoCutAction();
|
||||
} else {
|
||||
cancelCutCharge();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1627,8 +1893,89 @@ asm int daAlink_c::procCutTurnMove() {
|
||||
#include "asm/d/a/d_a_alink/procCutTurnMove__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D53C8-800D57F8 0CFD08 0430+00 2/1 0/0 0/0 .text procCutDownInit__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutDownInit() {
|
||||
if (mDemo.getDemoMode() == 0x51 && (mProcID == PROC_CUT_DOWN || mProcID == PROC_CUT_DOWN_LAND))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
commonProcInit(PROC_CUT_DOWN);
|
||||
resetCombo(1);
|
||||
|
||||
cXyz sp2C;
|
||||
field_0x300e.x = 0;
|
||||
|
||||
if (mTargetedActor != NULL) {
|
||||
sp2C = static_cast<fopEn_enemy_c*>(mTargetedActor)->getDownPos();
|
||||
field_0x280c.setData(mTargetedActor);
|
||||
|
||||
if (fopAcM_GetName(mTargetedActor) == PROC_B_GND) {
|
||||
field_0x300e.x = 1;
|
||||
}
|
||||
} else {
|
||||
sp2C.set(current.pos.x + cM_ssin(shape_angle.y) * 100.0f, current.pos.y,
|
||||
current.pos.z + cM_scos(shape_angle.y) * 100.0f);
|
||||
field_0x280c.clearData();
|
||||
}
|
||||
|
||||
if (field_0x300e.x != 0) {
|
||||
mNormalSpeed = 0.0f;
|
||||
speed.y = 0.0f;
|
||||
offModeFlg(2);
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_CUT_FINISHING_BLOW_JUMP, &daAlinkHIO_cutDown_c0::m.mJumpAnm);
|
||||
sp2C.y += 50.0f;
|
||||
|
||||
if (fopAcM_gc_c::gndCheck(&sp2C)) {
|
||||
sp2C.y = fopAcM_gc_c::getGroundY();
|
||||
} else {
|
||||
sp2C.y -= 50.0f;
|
||||
}
|
||||
|
||||
shape_angle.y = cLib_targetAngleY(¤t.pos, &sp2C);
|
||||
current.angle.y = shape_angle.y;
|
||||
|
||||
sp2C.x -= cM_ssin(shape_angle.y) * 95.0f;
|
||||
sp2C.z -= cM_scos(shape_angle.y) * 95.0f;
|
||||
|
||||
f32 var_f31 = current.pos.absXZ(sp2C);
|
||||
if (var_f31 > 800.0f) {
|
||||
var_f31 = 800.0f;
|
||||
}
|
||||
|
||||
speed.y = daAlinkHIO_cutDown_c0::m.mRecoverSpeedH;
|
||||
|
||||
if (i_checkNoResetFlg0(FLG0_UNDERWATER)) {
|
||||
mNormalSpeed *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityX;
|
||||
speed.y *= daAlinkHIO_magneBoots_c0::m.mWaterVelocityY;
|
||||
} else if (checkHeavyStateOn(1, 1)) {
|
||||
speed.y *= 1.5f;
|
||||
}
|
||||
|
||||
f32 var_f4 = speed.y + mGravity;
|
||||
f32 var_f5 = 1.0f / mGravity;
|
||||
|
||||
f32 temp_f1 = sp2C.y - (current.pos.y - var_f5 * (var_f4 * var_f4) * 0.5f);
|
||||
if (temp_f1 > 0.0f) {
|
||||
temp_f1 = 0.0f;
|
||||
}
|
||||
|
||||
temp_f1 = JMAFastSqrt(temp_f1 * 2.0f * var_f5);
|
||||
mNormalSpeed = var_f31 / (temp_f1 - var_f4 * var_f5);
|
||||
field_0x300c = 0;
|
||||
}
|
||||
|
||||
setSwordVoiceSe(Z2SE_AL_V_TODOME_JUMP);
|
||||
setCutType(CUT_TYPE_DOWN);
|
||||
dComIfGp_setPlayerStatus1(0, 0x400000);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1637,6 +1984,7 @@ asm int daAlink_c::procCutDownInit() {
|
||||
#include "asm/d/a/d_a_alink/procCutDownInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D57F8-800D58A0 0D0138 00A8+00 1/0 0/0 0/0 .text procCutDown__9daAlink_cFv */
|
||||
int daAlink_c::procCutDown() {
|
||||
@@ -1656,6 +2004,52 @@ int daAlink_c::procCutDown() {
|
||||
|
||||
/* 800D58A0-800D5ADC 0D01E0 023C+00 1/1 0/0 0/0 .text
|
||||
* procCutDownLandInit__9daAlink_cFP13fopEn_enemy_c */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutDownLandInit(fopEn_enemy_c* i_enemy) {
|
||||
commonProcInit(PROC_CUT_DOWN_LAND);
|
||||
checkCutLandDamage();
|
||||
setSingleAnimeParam(ANM_CUT_FINISHING_BLOW_STAB, &daAlinkHIO_cutDown_c0::m.mLandAnm);
|
||||
|
||||
u32 var_r30;
|
||||
if (mDemo.getDemoMode() == 0x51 || (i_enemy != NULL && i_enemy->checkDownFlg() &&
|
||||
mSwordTopPos.abs2XZ(i_enemy->getDownPos()) < 10000.0f &&
|
||||
fabsf(i_enemy->current.pos.y - current.pos.y) < 100.0f))
|
||||
{
|
||||
field_0x300e.x = 1;
|
||||
if (i_enemy != NULL) {
|
||||
i_enemy->onCutDownHitFlg();
|
||||
|
||||
csXyz angle(0x4000, shape_angle.y, 0);
|
||||
i_dComIfGp_setHitMark(3, NULL, &i_enemy->getDownPos(), &angle, NULL, 0);
|
||||
}
|
||||
|
||||
var_r30 = 0x20;
|
||||
field_0x3008 = daAlinkHIO_cutDown_c0::m.mSuccessStopTime;
|
||||
dComIfGp_getVibration().StartShock(4, 31, cXyz(0.0f, 1.0f, 0.0f));
|
||||
} else {
|
||||
var_r30 = mPolySound;
|
||||
field_0x300e.x = 0;
|
||||
field_0x3008 = daAlinkHIO_cutDown_c0::m.mFailStopTime;
|
||||
}
|
||||
|
||||
mZ2Link.startCollisionSE(Z2SE_HIT_SWORD_STAB, var_r30);
|
||||
field_0x300c = 0;
|
||||
mNormalSpeed = 0.0f;
|
||||
|
||||
i_offResetFlg0(RFLG0_UNK_8000000);
|
||||
field_0x2f9d = 4;
|
||||
|
||||
setFootEffectProcType(2);
|
||||
i_onResetFlg1(RFLG1_UNK_30);
|
||||
field_0x300e.y = 0;
|
||||
|
||||
dComIfGp_setPlayerStatus1(0, 0x400000);
|
||||
field_0x3588 = l_halfAtnWaitBaseAnime;
|
||||
field_0x2f99 = 4;
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1664,8 +2058,61 @@ asm int daAlink_c::procCutDownLandInit(fopEn_enemy_c* param_0) {
|
||||
#include "asm/d/a/d_a_alink/procCutDownLandInit__9daAlink_cFP13fopEn_enemy_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D5ADC-800D5C88 0D041C 01AC+00 1/0 0/0 0/0 .text procCutDownLand__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutDownLand() {
|
||||
if (checkGroundSpecialMode()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
daPy_frameCtrl_c* frameCtrl_p = mUnderFrameCtrl;
|
||||
field_0x2f99 = 4;
|
||||
|
||||
if (field_0x300c != 0) {
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
}
|
||||
|
||||
if (checkAnmEnd(frameCtrl_p)) {
|
||||
if (field_0x300c == 0) {
|
||||
if (field_0x3008 != 0) {
|
||||
field_0x3008--;
|
||||
} else if (field_0x300e.x != 0) {
|
||||
if (mDemo.getDemoMode() == 0x51) {
|
||||
dComIfGp_evmng_cutEnd(field_0x3184);
|
||||
} else {
|
||||
procBackJumpInit(1);
|
||||
}
|
||||
} else {
|
||||
setSingleAnimeParam(ANM_CUT_FINISHING_BLOW_MISS,
|
||||
&daAlinkHIO_cutDown_c0::m.mMissAnm);
|
||||
field_0x300c = 1;
|
||||
}
|
||||
} else {
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if (field_0x300c != 0) {
|
||||
if (frameCtrl_p->getFrame() >= 37.0f) {
|
||||
field_0x300e.y = 0;
|
||||
} else if (frameCtrl_p->getFrame() >= 30.0f) {
|
||||
field_0x300e.y = 254;
|
||||
}
|
||||
|
||||
if (frameCtrl_p->checkPass(54.0f)) {
|
||||
seStartSwordCut(Z2SE_SWORD_STICK_PULLOUT);
|
||||
}
|
||||
|
||||
if (frameCtrl_p->getFrame() > daAlinkHIO_cutDown_c0::m.mMissAnm.mCheckFrame) {
|
||||
onModeFlg(4);
|
||||
checkNextAction(1);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1674,8 +2121,57 @@ asm int daAlink_c::procCutDownLand() {
|
||||
#include "asm/d/a/d_a_alink/procCutDownLand__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D5C88-800D5FC8 0D05C8 0340+00 2/1 0/0 0/0 .text procCutHeadInit__9daAlink_cFv */
|
||||
// small regalloc
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procCutHeadInit() {
|
||||
fopEn_enemy_c* enemy_p = (fopEn_enemy_c*)mTargetedActor;
|
||||
|
||||
if (mDemo.getDemoMode() == 0x53 && (mProcID == PROC_CUT_HEAD || mProcID == PROC_CUT_HEAD_LAND))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
commonProcInit(PROC_CUT_HEAD);
|
||||
resetCombo(1);
|
||||
setSingleAnimeParam(ANM_CUT_HEAD_JUMP, &daAlinkHIO_cutHead_c0::m.mJumpAnm);
|
||||
setSpecialGravity(daAlinkHIO_cutHead_c0::m.mGravity, mMaxFallSpeed, 0);
|
||||
|
||||
cXyz sp2C;
|
||||
if (enemy_p != NULL) {
|
||||
sp2C = enemy_p->getHeadLockPos() - current.pos;
|
||||
field_0x280c.setData(enemy_p);
|
||||
} else {
|
||||
sp2C.set(cM_ssin(shape_angle.y) * 200.0f, 200.0f, cM_scos(shape_angle.y) * 200.0f);
|
||||
field_0x280c.clearData();
|
||||
}
|
||||
|
||||
f32 fvar9 = cLib_minMaxLimit(sp2C.y, 30.0f, daAlinkHIO_cutHead_c0::m.mMaxHeight);
|
||||
f32 fvar10 = JMAFastSqrt((fvar9 * -2.0f) / mGravity);
|
||||
speed.y = fvar10 * -mGravity;
|
||||
|
||||
f32 fvar5 = sp2C.absXZ();
|
||||
if (fvar5 > daAlinkHIO_cutHead_c0::m.mMaxDistance) {
|
||||
fvar5 = daAlinkHIO_cutHead_c0::m.mMaxDistance;
|
||||
}
|
||||
|
||||
field_0x3478 = (fvar5 * 2.0f) / (fvar10 * 3.0f * fvar10);
|
||||
mNormalSpeed = field_0x3478 * fvar10 * 2.0f;
|
||||
field_0x300e.x = 0;
|
||||
|
||||
current.angle.y = sp2C.atan2sX_Z();
|
||||
shape_angle.y = current.angle.y;
|
||||
|
||||
setSwordVoiceSe(Z2SE_AL_V_KABUTO_JUMP);
|
||||
setSwordAtParam(dCcG_At_Spl_UNK_1, 3, 1, 3, daAlinkHIO_cutHead_c0::m.mSwordLength,
|
||||
daAlinkHIO_cutHead_c0::m.mSwordRadius);
|
||||
setCutType(5);
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -1684,6 +2180,7 @@ asm int daAlink_c::procCutHeadInit() {
|
||||
#include "asm/d/a/d_a_alink/procCutHeadInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800D5FC8-800D6130 0D0908 0168+00 1/0 0/0 0/0 .text procCutHead__9daAlink_cFv */
|
||||
int daAlink_c::procCutHead() {
|
||||
@@ -1711,7 +2208,8 @@ int daAlink_c::procCutHead() {
|
||||
}
|
||||
|
||||
if (frameCtrl->getFrame() >= daAlinkHIO_cutHead_c0::m.mAttackStartFrame &&
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutHead_c0::m.mAttackEndFrame) {
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutHead_c0::m.mAttackEndFrame)
|
||||
{
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
|
||||
seStartSwordCut(Z2SE_AL_SWORD_SWING_L);
|
||||
}
|
||||
@@ -1794,7 +2292,8 @@ int daAlink_c::procCutLargeJumpCharge() {
|
||||
*/
|
||||
int daAlink_c::procCutLargeJumpInit() {
|
||||
if (mDemo.getDemoMode() == 0x56 &&
|
||||
(mProcID == PROC_CUT_LARGE_JUMP || mProcID == PROC_CUT_LARGE_JUMP_LAND)) {
|
||||
(mProcID == PROC_CUT_LARGE_JUMP || mProcID == PROC_CUT_LARGE_JUMP_LAND))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1847,7 +2346,8 @@ int daAlink_c::procCutLargeJump() {
|
||||
}
|
||||
|
||||
if (frameCtrl->getFrame() >= daAlinkHIO_cutLargeJump_c0::m.mJumpAttackStartFrame &&
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutLargeJump_c0::m.mJumpAttackEndFrame) {
|
||||
frameCtrl->getFrame() < daAlinkHIO_cutLargeJump_c0::m.mJumpAttackEndFrame)
|
||||
{
|
||||
if (!i_checkNoResetFlg0(FLG0_UNK_40)) {
|
||||
seStartSwordCut(Z2SE_AL_SWORD_SWING_S);
|
||||
}
|
||||
@@ -1922,7 +2422,9 @@ int daAlink_c::procCutLargeJumpLand() {
|
||||
} else {
|
||||
checkNextAction(0);
|
||||
}
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_cutLargeJump_c0::m.mSpinSlashCheckFrame && field_0x3198 != 2) {
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_cutLargeJump_c0::m.mSpinSlashCheckFrame &&
|
||||
field_0x3198 != 2)
|
||||
{
|
||||
procCutTurnInit(1, field_0x3198);
|
||||
} else if (frameCtrl->getFrame() > daAlinkHIO_cutLargeJump_c0::m.mLandAnm.mCheckFrame) {
|
||||
checkNextAction(1);
|
||||
@@ -1997,10 +2499,13 @@ int daAlink_c::procSwordUnequipSp() {
|
||||
}
|
||||
} else {
|
||||
field_0x3198 = 1;
|
||||
setSingleAnimeBaseSpeed(ANM_FINISH_END, daAlinkHIO_cut_c0::m.mFlourishEndAnmSpeed, lit_6109);
|
||||
setSingleAnimeBaseSpeed(ANM_FINISH_END, daAlinkHIO_cut_c0::m.mFlourishEndAnmSpeed,
|
||||
lit_6109);
|
||||
}
|
||||
} else if (field_0x3198 != 0) {
|
||||
if (!(frameCtrl->getFrame() > daAlinkHIO_cut_c0::m.mFlourishControlStartFrame) || !checkNextAction(1)) {
|
||||
if (!(frameCtrl->getFrame() > daAlinkHIO_cut_c0::m.mFlourishControlStartFrame) ||
|
||||
!checkNextAction(1))
|
||||
{
|
||||
if (frameCtrl->getFrame() >= lit_8779) {
|
||||
field_0x2f92 = 1;
|
||||
} else if (frameCtrl->getFrame() >= lit_8780) {
|
||||
@@ -2031,7 +2536,9 @@ int daAlink_c::procSwordUnequipSp() {
|
||||
|
||||
if (frameCtrl->checkPass(lit_8502) || frameCtrl->checkPass(lit_8781)) {
|
||||
seStartSwordCut(0x20006);
|
||||
} else if (frameCtrl->checkPass(lit_8784) || frameCtrl->checkPass(lit_8785) || frameCtrl->checkPass(lit_8786)) {
|
||||
} else if (frameCtrl->checkPass(lit_8784) || frameCtrl->checkPass(lit_8785) ||
|
||||
frameCtrl->checkPass(lit_8786))
|
||||
{
|
||||
seStartSwordCut(0x20007);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -301,7 +301,7 @@ asm void daAlink_c::setGrabItemThrow() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::checkUpperGrabItemThrow(f32 param_0) {
|
||||
asm BOOL daAlink_c::checkUpperGrabItemThrow(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/checkUpperGrabItemThrow__9daAlink_cFf.s"
|
||||
}
|
||||
|
||||
+1296
-337
File diff suppressed because it is too large
Load Diff
@@ -27,31 +27,88 @@ void daAlink_c::multVecMagneBootInvMtx(cXyz* vec) {
|
||||
|
||||
/* 800E24B0-800E251C 0DCDF0 006C+00 2/2 0/0 0/0 .text
|
||||
* commonMagneLineCheck__9daAlink_cFP4cXyzP4cXyz */
|
||||
int daAlink_c::commonMagneLineCheck(cXyz* i_start, cXyz* i_end) {
|
||||
bool daAlink_c::commonMagneLineCheck(cXyz* i_start, cXyz* i_end) {
|
||||
mMagneLineChk.Set(i_start, i_end, this);
|
||||
|
||||
if (dComIfG_Bgsp().LineCross(&mMagneLineChk) && daTagMagne_c::checkMagnetCode(mMagneLineChk)) {
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 800E251C-800E2580 0DCE5C 0064+00 2/2 0/0 0/0 .text checkBootsMoveAnime__9daAlink_cFi
|
||||
*/
|
||||
BOOL daAlink_c::checkBootsMoveAnime(int param_0) {
|
||||
return (checkHeavyStateOn(param_0, 1) && !i_checkNoResetFlg0(FLG0_UNDERWATER)) || checkDkCaught2Anime();
|
||||
return (checkHeavyStateOn(param_0, 1) && !i_checkNoResetFlg0(FLG0_UNDERWATER)) ||
|
||||
checkDkCaught2Anime();
|
||||
}
|
||||
|
||||
/* 800E2580-800E2738 0DCEC0 01B8+00 17/17 0/0 0/0 .text setHeavyBoots__9daAlink_cFi */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::setHeavyBoots(int param_0) {
|
||||
if (i_checkEquipHeavyBoots()) {
|
||||
i_offNoResetFlg0(FLG0_EQUIP_HVY_BOOTS);
|
||||
mZ2Link.setLinkBootsType(0);
|
||||
|
||||
if (field_0x06e0 != NULL) {
|
||||
field_0x06e0->show();
|
||||
|
||||
if (checkZoraWearMaskDraw()) {
|
||||
field_0x06e4->show();
|
||||
}
|
||||
}
|
||||
|
||||
if (i_checkModeFlg(0x40000) && !checkHookshotItem(mEquipItem)) {
|
||||
deleteEquipItem(TRUE, FALSE);
|
||||
}
|
||||
|
||||
if (i_checkNoResetFlg0(FLG0_UNDERWATER) && !i_dComIfGp_checkPlayerStatus1(0, 0x2000000)) {
|
||||
return procSwimWaitInit(0);
|
||||
}
|
||||
|
||||
if (i_checkMagneBootsOn()) {
|
||||
if (cancelMagneBootsOn()) {
|
||||
return procFallInit(1, 5.0f);
|
||||
}
|
||||
|
||||
if (mProcID != PROC_BOOTS_EQUIP) {
|
||||
procWaitInit();
|
||||
field_0x2060->initOldFrameMorf(3.0f, 0, 35);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
} else if (param_0) {
|
||||
i_onNoResetFlg0(FLG0_EQUIP_HVY_BOOTS);
|
||||
mZ2Link.setLinkBootsType(1);
|
||||
|
||||
if (field_0x06e0 != NULL) {
|
||||
field_0x06e0->hide();
|
||||
|
||||
if (field_0x06e4 != NULL) {
|
||||
field_0x06e4->hide();
|
||||
}
|
||||
}
|
||||
|
||||
if (i_checkModeFlg(0x40000)) {
|
||||
i_offNoResetFlg0(FLG0_UNK_100);
|
||||
mZ2Link.setInWater(true);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::setHeavyBoots(int param_0) {
|
||||
asm int daAlink_c::setHeavyBoots(int param_0) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/setHeavyBoots__9daAlink_cFi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E2738-800E2808 0DD078 00D0+00 2/2 0/0 0/0 .text getMagneBootsLocalAngleY__9daAlink_cFsi */
|
||||
// matches with literals
|
||||
@@ -82,6 +139,101 @@ asm s16 daAlink_c::getMagneBootsLocalAngleY(s16 param_0, int param_1) {
|
||||
|
||||
/* 800E2808-800E2DC4 0DD148 05BC+00 3/3 0/0 0/0 .text
|
||||
* setMagneBootsMtx__9daAlink_cFP13cBgS_PolyInfoi */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void daAlink_c::setMagneBootsMtx(cBgS_PolyInfo* i_polyinfo, int param_1) {
|
||||
cM3dGPla poly;
|
||||
dComIfG_Bgsp().GetTriPla(*i_polyinfo, &poly);
|
||||
|
||||
s16 var_r28 = cM_atan2s(poly.mNormal.absXZ(), poly.mNormal.y);
|
||||
int temp_r3_2 = abs(var_r28);
|
||||
if (temp_r3_2 < 500) {
|
||||
var_r28 = 0;
|
||||
} else if (temp_r3_2 > 0x7E0B) {
|
||||
var_r28 = -0x8000;
|
||||
}
|
||||
|
||||
if (var_r28 != 0 && var_r28 != -0x8000) {
|
||||
field_0x3116 = poly.mNormal.atan2sX_Z();
|
||||
} else if (param_1) {
|
||||
field_0x3116 = 0;
|
||||
}
|
||||
|
||||
if (param_1) {
|
||||
if (mProcID == PROC_MAGNE_BOOTS_FLY) {
|
||||
cLib_addCalcAngleS(&field_0x3114, var_r28, 5, 0x1000, 0x100);
|
||||
} else {
|
||||
field_0x3114 = var_r28;
|
||||
}
|
||||
} else {
|
||||
// D_MN54 is the E3 Goron Mines Demo map
|
||||
if (checkStageName("D_MN54") && getMoveBGActorName(*i_polyinfo, 1) == PROC_Obj_MagneArm) {
|
||||
i_fopAcM_onSwitch(this, 0x93);
|
||||
}
|
||||
|
||||
field_0x3114 = var_r28;
|
||||
|
||||
f32 temp_f1 = mMagneBootsTopVec.inprod(poly.mNormal);
|
||||
if (!(fabsf(temp_f1) > 0.9999f)) {
|
||||
cXyz sp44 = mMagneBootsTopVec.outprod(poly.mNormal);
|
||||
sp44.normalizeZP();
|
||||
|
||||
f32 var_f1_2 = JMAFastSqrt(1.0f - temp_f1 * temp_f1);
|
||||
f32 temp_f1_2 = cM_atan2f(var_f1_2, temp_f1);
|
||||
f32 var_f2 = temp_f1_2 * 0.2f;
|
||||
|
||||
if (var_f2 > 0.4f) {
|
||||
var_f2 = 0.4f;
|
||||
} else if (var_f2 < 0.025f) {
|
||||
var_f2 = 0.025f;
|
||||
|
||||
if (0.025f > temp_f1_2) {
|
||||
var_f2 = temp_f1_2;
|
||||
}
|
||||
}
|
||||
|
||||
cXyz sp40;
|
||||
mDoMtx_stack_c::rotAxisRadS(&sp44, var_f2);
|
||||
mDoMtx_stack_c::concat(mMagneBootMtx);
|
||||
mDoMtx_copy(mDoMtx_stack_c::get(), mMagneBootMtx);
|
||||
mDoMtx_multVec(mMagneBootMtx, &cXyz::BaseY, &sp40);
|
||||
|
||||
field_0x3114 = cM_atan2s(sp40.absXZ(), sp40.y);
|
||||
|
||||
int temp_r3_4 = abs(field_0x3114);
|
||||
if (temp_r3_4 < 500) {
|
||||
field_0x3114 = 0;
|
||||
} else if (temp_r3_4 > 0x7E0B) {
|
||||
field_0x3114 = -0x8000;
|
||||
}
|
||||
|
||||
if (field_0x3114 != 0 && field_0x3114 != -0x8000) {
|
||||
field_0x3116 = sp40.atan2sX_Z();
|
||||
} else {
|
||||
field_0x3116 = 0;
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::YrotS(field_0x3116);
|
||||
mDoMtx_stack_c::XrotM(-field_0x3114);
|
||||
mDoMtx_stack_c::YrotM(-field_0x3116);
|
||||
mDoMtx_stack_c::concat(mMagneBootMtx);
|
||||
mDoMtx_stack_c::multVecSR(&cXyz::BaseZ, &sp40);
|
||||
|
||||
s16 angle = sp40.atan2sX_Z();
|
||||
shape_angle.y += angle;
|
||||
current.angle.y += angle;
|
||||
field_0x2fe6 += angle;
|
||||
field_0x310c += angle;
|
||||
}
|
||||
}
|
||||
|
||||
mDoMtx_YrotS(mMagneBootMtx, field_0x3116);
|
||||
mDoMtx_XrotM(mMagneBootMtx, field_0x3114);
|
||||
mDoMtx_YrotM(mMagneBootMtx, -field_0x3116);
|
||||
mDoMtx_inverse(mMagneBootMtx, mMagneBootInvMtx);
|
||||
mDoMtx_multVec(mMagneBootMtx, &cXyz::BaseY, &mMagneBootsTopVec);
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -90,23 +242,69 @@ asm void daAlink_c::setMagneBootsMtx(cBgS_PolyInfo* param_0, int param_1) {
|
||||
#include "asm/d/a/d_a_alink/setMagneBootsMtx__9daAlink_cFP13cBgS_PolyInfoi.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E2DC4-800E2F88 0DD704 01C4+00 7/7 0/0 0/0 .text cancelMagneBootsOn__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::cancelMagneBootsOn() {
|
||||
i_offNoResetFlg0(FLG0_MAGNE_BOOTS_ON);
|
||||
mZ2Link.setMagnetized(false);
|
||||
|
||||
if (field_0x3114 == -0x8000) {
|
||||
setOldRootQuaternion(field_0x3114, 0, 0);
|
||||
} else {
|
||||
s16 var_r31 = shape_angle.y - field_0x3116;
|
||||
setOldRootQuaternion(0, var_r31, 0);
|
||||
setOldRootQuaternion(field_0x3114, 0, 0);
|
||||
setOldRootQuaternion(0, -var_r31, 0);
|
||||
}
|
||||
|
||||
field_0x3114 = 0;
|
||||
|
||||
if (!cBgW_CheckBGround(mMagneBootsTopVec.y)) {
|
||||
current.pos += mMagneBootsTopVec * 100.0f;
|
||||
mLinkGndChk.SetPos(¤t.pos);
|
||||
|
||||
f32 gnd_cross = dComIfG_Bgsp().GroundCross(&mLinkGndChk);
|
||||
current.pos.y -= 100.0f;
|
||||
if (gnd_cross > current.pos.y) {
|
||||
current.pos.y = gnd_cross;
|
||||
}
|
||||
|
||||
next.pos = current.pos;
|
||||
field_0x3798 = current.pos;
|
||||
mMagneBootsTopVec = cXyz::BaseY;
|
||||
|
||||
if (checkUpperReadyThrowAnime()) {
|
||||
resetUpperAnime(UPPER_2, 3.0f);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
mMagneBootsTopVec = cXyz::BaseY;
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daAlink_c::cancelMagneBootsOn() {
|
||||
asm int daAlink_c::cancelMagneBootsOn() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/cancelMagneBootsOn__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E2F88-800E3048 0DD8C8 00C0+00 1/1 0/0 0/0 .text checkMagneBootsFly__9daAlink_cFv */
|
||||
int daAlink_c::checkMagneBootsFly() {
|
||||
if (field_0x2fb8 != 0 && i_checkEquipHeavyBoots() && !checkDeadHP() && mProcID != PROC_MAGNE_BOOTS_FLY && !checkEventRun()) {
|
||||
if (field_0x2fb8 != 0 && i_checkEquipHeavyBoots() && !checkDeadHP() &&
|
||||
mProcID != PROC_MAGNE_BOOTS_FLY && !checkEventRun())
|
||||
{
|
||||
cXyz vec(field_0x369c);
|
||||
vec.normalizeZP();
|
||||
|
||||
|
||||
if (mMagneBootsTopVec.getDotProduct(vec) > lit_8131 && procMagneBootsFlyInit()) {
|
||||
return 1;
|
||||
}
|
||||
@@ -132,6 +330,33 @@ int daAlink_c::procBootsEquipInit() {
|
||||
}
|
||||
|
||||
/* 800E30DC-800E3218 0DDA1C 013C+00 1/0 0/0 0/0 .text procBootsEquip__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procBootsEquip() {
|
||||
daPy_frameCtrl_c* frameCtrl_p = mUnderFrameCtrl;
|
||||
i_onEndResetFlg0(ERFLG0_UNK_8000000);
|
||||
|
||||
if (checkAnmEnd(frameCtrl_p)) {
|
||||
checkNextAction(0);
|
||||
} else if (frameCtrl_p->checkPass(10.0f)) {
|
||||
setHeavyBoots(1);
|
||||
} else if (frameCtrl_p->checkPass(16.0f)) {
|
||||
if (i_checkNoResetFlg0(FLG0_EQUIP_HVY_BOOTS)) {
|
||||
dComIfGp_getVibration().StartShock(3, 1, cXyz(0.0f, 1.0f, 0.0f));
|
||||
}
|
||||
|
||||
offModeFlg(2);
|
||||
} else if (frameCtrl_p->getFrame() > daAlinkHIO_magneBoots_c0::m.mEquipAnm.mCheckFrame) {
|
||||
onModeFlg(4);
|
||||
checkNextAction(1);
|
||||
} else if (frameCtrl_p->getFrame() >= 5.0f) {
|
||||
field_0x2f92 = 1;
|
||||
field_0x2f93 = 6;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -140,9 +365,57 @@ asm int daAlink_c::procBootsEquip() {
|
||||
#include "asm/d/a/d_a_alink/procBootsEquip__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E3218-800E3454 0DDB58 023C+00 1/1 0/0 0/0 .text procMagneBootsFlyInit__9daAlink_cFv
|
||||
*/
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procMagneBootsFlyInit() {
|
||||
cXyz sp44 = field_0x369c.normZP();
|
||||
cM3dGPla sp50(&sp44, -sp44.inprod(field_0x3834));
|
||||
sp44 = field_0x36b4 + field_0x369c;
|
||||
|
||||
cXyz sp38;
|
||||
if (!sp50.crossInfLin(field_0x36b4, sp44, sp38)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
sp44 = sp38 + (field_0x369c * 2.0f);
|
||||
|
||||
if (!commonMagneLineCheck(&sp38, &sp44)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (i_checkMagneBootsOn()) {
|
||||
i_offNoResetFlg0(FLG0_MAGNE_BOOTS_ON);
|
||||
mZ2Link.setMagnetized(true);
|
||||
}
|
||||
|
||||
commonProcInit(PROC_MAGNE_BOOTS_FLY);
|
||||
|
||||
dComIfG_Bgsp().GetTriPla(mMagneLineChk, &sp50);
|
||||
mPolyInfo2.SetPolyInfo(mMagneLineChk);
|
||||
field_0x37c8 = mMagneLineChk.i_GetCross();
|
||||
|
||||
setSpecialGravity(0.0f, mMaxFallSpeed, 0);
|
||||
speed.y = 0.0f;
|
||||
mNormalSpeed = 0.0f;
|
||||
|
||||
setSingleAnimeBase(ANM_MG_KICK);
|
||||
if (mEquipItem != 0x103 && !checkBowItem(mEquipItem)) {
|
||||
deleteEquipItem(FALSE, TRUE);
|
||||
} else {
|
||||
offKandelaarModel();
|
||||
}
|
||||
|
||||
field_0x3478 = 0.0f;
|
||||
field_0x594 = daAlinkHIO_magneBoots_c0::m.mMaxMagneFlySpeed;
|
||||
field_0x300c = 0;
|
||||
voiceStart(Z2SE_AL_V_MAGNET_CAUGHT);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -151,8 +424,49 @@ asm int daAlink_c::procMagneBootsFlyInit() {
|
||||
#include "asm/d/a/d_a_alink/procMagneBootsFlyInit__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 800E3454-800E3760 0DDD94 030C+00 1/0 0/0 0/0 .text procMagneBootsFly__9daAlink_cFv */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
int daAlink_c::procMagneBootsFly() {
|
||||
field_0x3478 += daAlinkHIO_magneBoots_c0::m.mMagneFlyAccelRate;
|
||||
if (field_0x3478 > field_0x594) {
|
||||
field_0x3478 = field_0x594;
|
||||
}
|
||||
|
||||
if (dComIfG_Bgsp().ChkPolySafe(mPolyInfo2) && i_checkEquipHeavyBoots()) {
|
||||
if (dComIfG_Bgsp().ChkMoveBG(mPolyInfo2)) {
|
||||
cXyz old_37c8(field_0x37c8);
|
||||
dComIfG_Bgsp().MoveBgTransPos(mPolyInfo2, true, &field_0x37c8, NULL, NULL);
|
||||
current.pos += field_0x37c8 - old_37c8;
|
||||
}
|
||||
|
||||
setMagneBootsMtx(&mPolyInfo2, 1);
|
||||
} else {
|
||||
cancelMagneBootsOn();
|
||||
return procFallInit(1, 5.0f);
|
||||
}
|
||||
|
||||
cLib_chasePos(¤t.pos, field_0x37c8, field_0x3478);
|
||||
if (field_0x37c8.abs(current.pos) < 50.0f) {
|
||||
current.pos = field_0x37c8;
|
||||
i_onNoResetFlg0(FLG0_MAGNE_BOOTS_ON);
|
||||
mZ2Link.setMagnetized(true);
|
||||
procLandDamageInit(0);
|
||||
} else {
|
||||
cXyz sp24;
|
||||
mDoMtx_multVecZero(mpLinkModel->i_getAnmMtx(0), &sp24);
|
||||
sp24 = field_0x37c8 - sp24;
|
||||
|
||||
cLib_addCalcAngleS(&shape_angle.x, sp24.atan2sY_XZ() + -0x4000, 5, 0x1000, 0x100);
|
||||
cLib_addCalcAngleS(&shape_angle.y, sp24.atan2sX_Z(), 5, 0x1000, 0x100);
|
||||
field_0x300c += 0x1C00;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
@@ -160,4 +474,5 @@ asm int daAlink_c::procMagneBootsFly() {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_alink/procMagneBootsFly__9daAlink_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
@@ -40,7 +40,7 @@ BOOL e_wb_class::checkDownDamage() {
|
||||
return mActionID != ACT_PL_RIDE && mActionID != 0x66 && mActionID != ACT_S_DAMAGE;
|
||||
}
|
||||
|
||||
u8 e_wb_class::checkNormalRideMode() const {
|
||||
BOOL e_wb_class::checkNormalRideMode() const {
|
||||
return mActionID != 0x66 || field_0x5b4 < 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -679,7 +679,7 @@ int daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, s16 p
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, s16 param_4) {
|
||||
asm int daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, s16 param_4) {
|
||||
nofralloc
|
||||
#include "asm/d/a/d_a_player/daPy_addCalcShort__FPsssss.s"
|
||||
}
|
||||
|
||||
+2
-1
@@ -4440,7 +4440,8 @@ asm void daHorse_c::getLashDashStart() const {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void std::fabs(f32 param_0) {
|
||||
// asm void std::fabs(f32 param_0) {
|
||||
extern "C" asm void fabs__3stdFf() {
|
||||
nofralloc
|
||||
#include "asm/d/d_camera/fabs__3stdFf.s"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user