En_Mk OK (lakeside lab dude) (#616)

* en_mk OK

* ready for pr

* ok now

* anim mode enums

* fixed dodojr

Co-authored-by: Zelllll <elijah@DESKTOP-NMP1I89.localdomain>
This commit is contained in:
Zelllll 2021-01-31 14:26:34 -06:00 committed by GitHub
parent 9b91229422
commit a25ae3a584
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 328 additions and 995 deletions

View File

@ -1,12 +0,0 @@
glabel EnMk_Destroy
/* 00118 80AACA18 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0011C 80AACA1C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00120 80AACA20 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00124 80AACA24 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00128 80AACA28 0C0170EB */ jal Collider_DestroyCylinder
/* 0012C 80AACA2C 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C
/* 00130 80AACA30 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00134 80AACA34 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00138 80AACA38 03E00008 */ jr $ra
/* 0013C 80AACA3C 00000000 */ nop

View File

@ -1,26 +0,0 @@
glabel EnMk_Draw
/* 00C9C 80AAD59C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00CA0 80AAD5A0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00CA4 80AAD5A4 AFA40028 */ sw $a0, 0x0028($sp)
/* 00CA8 80AAD5A8 AFA5002C */ sw $a1, 0x002C($sp)
/* 00CAC 80AAD5AC 0C0250F2 */ jal func_800943C8
/* 00CB0 80AAD5B0 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000
/* 00CB4 80AAD5B4 8FA20028 */ lw $v0, 0x0028($sp)
/* 00CB8 80AAD5B8 3C0F80AB */ lui $t7, %hi(func_80AAD518) ## $t7 = 80AB0000
/* 00CBC 80AAD5BC 3C1880AB */ lui $t8, %hi(func_80AAD55C) ## $t8 = 80AB0000
/* 00CC0 80AAD5C0 8C45019C */ lw $a1, 0x019C($v0) ## 0000019C
/* 00CC4 80AAD5C4 8C4601B8 */ lw $a2, 0x01B8($v0) ## 000001B8
/* 00CC8 80AAD5C8 9047019A */ lbu $a3, 0x019A($v0) ## 0000019A
/* 00CCC 80AAD5CC 2718D55C */ addiu $t8, $t8, %lo(func_80AAD55C) ## $t8 = 80AAD55C
/* 00CD0 80AAD5D0 25EFD518 */ addiu $t7, $t7, %lo(func_80AAD518) ## $t7 = 80AAD518
/* 00CD4 80AAD5D4 AFAF0010 */ sw $t7, 0x0010($sp)
/* 00CD8 80AAD5D8 AFB80014 */ sw $t8, 0x0014($sp)
/* 00CDC 80AAD5DC 8FA4002C */ lw $a0, 0x002C($sp)
/* 00CE0 80AAD5E0 0C0286B2 */ jal SkelAnime_DrawFlexOpa
/* 00CE4 80AAD5E4 AFA20018 */ sw $v0, 0x0018($sp)
/* 00CE8 80AAD5E8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00CEC 80AAD5EC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00CF0 80AAD5F0 03E00008 */ jr $ra
/* 00CF4 80AAD5F4 00000000 */ nop
/* 00CF8 80AAD5F8 00000000 */ nop
/* 00CFC 80AAD5FC 00000000 */ nop

View File

@ -1,76 +0,0 @@
glabel EnMk_Init
/* 00000 80AAC900 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00004 80AAC904 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 00008 80AAC908 44812000 */ mtc1 $at, $f4 ## $f4 = -4.00
/* 0000C 80AAC90C 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
/* 00010 80AAC910 44813000 */ mtc1 $at, $f6 ## $f6 = -1.00
/* 00014 80AAC914 AFBF002C */ sw $ra, 0x002C($sp)
/* 00018 80AAC918 AFB00028 */ sw $s0, 0x0028($sp)
/* 0001C 80AAC91C AFA50044 */ sw $a1, 0x0044($sp)
/* 00020 80AAC920 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00024 80AAC924 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
/* 00028 80AAC928 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
/* 0002C 80AAC92C 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
/* 00030 80AAC930 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 00034 80AAC934 3C074210 */ lui $a3, 0x4210 ## $a3 = 42100000
/* 00038 80AAC938 E484FFBC */ swc1 $f4, -0x0044($a0) ## 00000070
/* 0003C 80AAC93C 0C00AC78 */ jal ActorShape_Init
/* 00040 80AAC940 E486FFB8 */ swc1 $f6, -0x0048($a0) ## 0000006C
/* 00044 80AAC944 26050198 */ addiu $a1, $s0, 0x0198 ## $a1 = 00000198
/* 00048 80AAC948 3C060600 */ lui $a2, %hi(D_06005DF0) ## $a2 = 06000000
/* 0004C 80AAC94C 3C070600 */ lui $a3, %hi(D_06000D88) ## $a3 = 06000000
/* 00050 80AAC950 260E01DC */ addiu $t6, $s0, 0x01DC ## $t6 = 000001DC
/* 00054 80AAC954 260F022A */ addiu $t7, $s0, 0x022A ## $t7 = 0000022A
/* 00058 80AAC958 2418000D */ addiu $t8, $zero, 0x000D ## $t8 = 0000000D
/* 0005C 80AAC95C AFB80018 */ sw $t8, 0x0018($sp)
/* 00060 80AAC960 AFAF0014 */ sw $t7, 0x0014($sp)
/* 00064 80AAC964 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00068 80AAC968 24E70D88 */ addiu $a3, $a3, %lo(D_06000D88) ## $a3 = 06000D88
/* 0006C 80AAC96C 24C65DF0 */ addiu $a2, $a2, %lo(D_06005DF0) ## $a2 = 06005DF0
/* 00070 80AAC970 AFA50034 */ sw $a1, 0x0034($sp)
/* 00074 80AAC974 0C0291BE */ jal SkelAnime_InitFlex
/* 00078 80AAC978 8FA40044 */ lw $a0, 0x0044($sp)
/* 0007C 80AAC97C 3C050600 */ lui $a1, %hi(D_06000D88) ## $a1 = 06000000
/* 00080 80AAC980 24A50D88 */ addiu $a1, $a1, %lo(D_06000D88) ## $a1 = 06000D88
/* 00084 80AAC984 0C0294BE */ jal Animation_PlayLoop
/* 00088 80AAC988 8FA40034 */ lw $a0, 0x0034($sp)
/* 0008C 80AAC98C 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
/* 00090 80AAC990 AFA50034 */ sw $a1, 0x0034($sp)
/* 00094 80AAC994 0C0170D9 */ jal Collider_InitCylinder
/* 00098 80AAC998 8FA40044 */ lw $a0, 0x0044($sp)
/* 0009C 80AAC99C 3C0780AB */ lui $a3, %hi(D_80AAD620) ## $a3 = 80AB0000
/* 000A0 80AAC9A0 8FA50034 */ lw $a1, 0x0034($sp)
/* 000A4 80AAC9A4 24E7D620 */ addiu $a3, $a3, %lo(D_80AAD620) ## $a3 = 80AAD620
/* 000A8 80AAC9A8 8FA40044 */ lw $a0, 0x0044($sp)
/* 000AC 80AAC9AC 0C01712B */ jal Collider_SetCylinder
/* 000B0 80AAC9B0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000B4 80AAC9B4 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF
/* 000B8 80AAC9B8 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 000BC 80AAC9BC A21900AE */ sb $t9, 0x00AE($s0) ## 000000AE
/* 000C0 80AAC9C0 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 000C4 80AAC9C4 0C00B58B */ jal Actor_SetScale
/* 000C8 80AAC9C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000CC 80AAC9CC 3C0880AB */ lui $t0, %hi(func_80AAD080) ## $t0 = 80AB0000
/* 000D0 80AAC9D0 2508D080 */ addiu $t0, $t0, %lo(func_80AAD080) ## $t0 = 80AAD080
/* 000D4 80AAC9D4 24090006 */ addiu $t1, $zero, 0x0006 ## $t1 = 00000006
/* 000D8 80AAC9D8 AE080284 */ sw $t0, 0x0284($s0) ## 00000284
/* 000DC 80AAC9DC A600027E */ sh $zero, 0x027E($s0) ## 0000027E
/* 000E0 80AAC9E0 A6000280 */ sh $zero, 0x0280($s0) ## 00000280
/* 000E4 80AAC9E4 A209001F */ sb $t1, 0x001F($s0) ## 0000001F
/* 000E8 80AAC9E8 3C0A8016 */ lui $t2, %hi(gSaveContext+0xef2)
/* 000EC 80AAC9EC 954AF552 */ lhu $t2, %lo(gSaveContext+0xef2)($t2)
/* 000F0 80AAC9F0 340D0004 */ ori $t5, $zero, 0x0004 ## $t5 = 00000004
/* 000F4 80AAC9F4 314B0001 */ andi $t3, $t2, 0x0001 ## $t3 = 00000000
/* 000F8 80AAC9F8 51600003 */ beql $t3, $zero, .L80AACA08
/* 000FC 80AAC9FC 8FBF002C */ lw $ra, 0x002C($sp)
/* 00100 80AACA00 A60D027E */ sh $t5, 0x027E($s0) ## 0000027E
/* 00104 80AACA04 8FBF002C */ lw $ra, 0x002C($sp)
.L80AACA08:
/* 00108 80AACA08 8FB00028 */ lw $s0, 0x0028($sp)
/* 0010C 80AACA0C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00110 80AACA10 03E00008 */ jr $ra
/* 00114 80AACA14 00000000 */ nop

View File

@ -1,169 +0,0 @@
.late_rodata
glabel D_80AAD660
.float 0.025
.text
glabel EnMk_Update
/* 009D0 80AAD2D0 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 009D4 80AAD2D4 AFB00028 */ sw $s0, 0x0028($sp)
/* 009D8 80AAD2D8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 009DC 80AAD2DC AFBF002C */ sw $ra, 0x002C($sp)
/* 009E0 80AAD2E0 AFA50054 */ sw $a1, 0x0054($sp)
/* 009E4 80AAD2E4 2606014C */ addiu $a2, $s0, 0x014C ## $a2 = 0000014C
/* 009E8 80AAD2E8 00C02825 */ or $a1, $a2, $zero ## $a1 = 0000014C
/* 009EC 80AAD2EC 0C0189B7 */ jal Collider_UpdateCylinder
/* 009F0 80AAD2F0 AFA60034 */ sw $a2, 0x0034($sp)
/* 009F4 80AAD2F4 8FA40054 */ lw $a0, 0x0054($sp)
/* 009F8 80AAD2F8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 009FC 80AAD2FC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00A00 80AAD300 8FA60034 */ lw $a2, 0x0034($sp)
/* 00A04 80AAD304 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 00A08 80AAD308 00812821 */ addu $a1, $a0, $at
/* 00A0C 80AAD30C 0C00B638 */ jal Actor_MoveForward
/* 00A10 80AAD310 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A14 80AAD314 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 00A18 80AAD318 240E0004 */ addiu $t6, $zero, 0x0004 ## $t6 = 00000004
/* 00A1C 80AAD31C AFAE0014 */ sw $t6, 0x0014($sp)
/* 00A20 80AAD320 44060000 */ mfc1 $a2, $f0
/* 00A24 80AAD324 44070000 */ mfc1 $a3, $f0
/* 00A28 80AAD328 8FA40054 */ lw $a0, 0x0054($sp)
/* 00A2C 80AAD32C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00A30 80AAD330 0C00B92D */ jal Actor_UpdateBgCheckInfo
/* 00A34 80AAD334 E7A00010 */ swc1 $f0, 0x0010($sp)
/* 00A38 80AAD338 960F027E */ lhu $t7, 0x027E($s0) ## 0000027E
/* 00A3C 80AAD33C 31F80002 */ andi $t8, $t7, 0x0002 ## $t8 = 00000000
/* 00A40 80AAD340 57000009 */ bnel $t8, $zero, .L80AAD368
/* 00A44 80AAD344 8E190284 */ lw $t9, 0x0284($s0) ## 00000284
/* 00A48 80AAD348 0C02927F */ jal SkelAnime_Update
/* 00A4C 80AAD34C 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 00A50 80AAD350 50400005 */ beql $v0, $zero, .L80AAD368
/* 00A54 80AAD354 8E190284 */ lw $t9, 0x0284($s0) ## 00000284
/* 00A58 80AAD358 9619027E */ lhu $t9, 0x027E($s0) ## 0000027E
/* 00A5C 80AAD35C 37280002 */ ori $t0, $t9, 0x0002 ## $t0 = 00000002
/* 00A60 80AAD360 A608027E */ sh $t0, 0x027E($s0) ## 0000027E
/* 00A64 80AAD364 8E190284 */ lw $t9, 0x0284($s0) ## 00000284
.L80AAD368:
/* 00A68 80AAD368 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A6C 80AAD36C 8FA50054 */ lw $a1, 0x0054($sp)
/* 00A70 80AAD370 0320F809 */ jalr $ra, $t9
/* 00A74 80AAD374 00000000 */ nop
/* 00A78 80AAD378 9609027E */ lhu $t1, 0x027E($s0) ## 0000027E
/* 00A7C 80AAD37C 26040278 */ addiu $a0, $s0, 0x0278 ## $a0 = 00000278
/* 00A80 80AAD380 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00A84 80AAD384 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
/* 00A88 80AAD388 1140000E */ beq $t2, $zero, .L80AAD3C4
/* 00A8C 80AAD38C 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
/* 00A90 80AAD390 8E0C0038 */ lw $t4, 0x0038($s0) ## 00000038
/* 00A94 80AAD394 8FA40054 */ lw $a0, 0x0054($sp)
/* 00A98 80AAD398 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00A9C 80AAD39C AFAC0010 */ sw $t4, 0x0010($sp)
/* 00AA0 80AAD3A0 8E0B003C */ lw $t3, 0x003C($s0) ## 0000003C
/* 00AA4 80AAD3A4 26060278 */ addiu $a2, $s0, 0x0278 ## $a2 = 00000278
/* 00AA8 80AAD3A8 27A70040 */ addiu $a3, $sp, 0x0040 ## $a3 = FFFFFFF0
/* 00AAC 80AAD3AC AFAB0014 */ sw $t3, 0x0014($sp)
/* 00AB0 80AAD3B0 8E0C0040 */ lw $t4, 0x0040($s0) ## 00000040
/* 00AB4 80AAD3B4 0C00E0A4 */ jal func_80038290
/* 00AB8 80AAD3B8 AFAC0018 */ sw $t4, 0x0018($sp)
/* 00ABC 80AAD3BC 1000000D */ beq $zero, $zero, .L80AAD3F4
/* 00AC0 80AAD3C0 9605027E */ lhu $a1, 0x027E($s0) ## 0000027E
.L80AAD3C4:
/* 00AC4 80AAD3C4 240D0064 */ addiu $t5, $zero, 0x0064 ## $t5 = 00000064
/* 00AC8 80AAD3C8 AFAD0010 */ sw $t5, 0x0010($sp)
/* 00ACC 80AAD3CC 0C01E1A7 */ jal Math_SmoothStepToS
/* 00AD0 80AAD3D0 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
/* 00AD4 80AAD3D4 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064
/* 00AD8 80AAD3D8 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00ADC 80AAD3DC 2604027A */ addiu $a0, $s0, 0x027A ## $a0 = 0000027A
/* 00AE0 80AAD3E0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00AE4 80AAD3E4 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
/* 00AE8 80AAD3E8 0C01E1A7 */ jal Math_SmoothStepToS
/* 00AEC 80AAD3EC 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
/* 00AF0 80AAD3F0 9605027E */ lhu $a1, 0x027E($s0) ## 0000027E
.L80AAD3F4:
/* 00AF4 80AAD3F4 8FAF0054 */ lw $t7, 0x0054($sp)
/* 00AF8 80AAD3F8 30B80008 */ andi $t8, $a1, 0x0008 ## $t8 = 00000000
/* 00AFC 80AAD3FC 13000008 */ beq $t8, $zero, .L80AAD420
/* 00B00 80AAD400 8DE31C44 */ lw $v1, 0x1C44($t7) ## 00001C44
/* 00B04 80AAD404 8C680680 */ lw $t0, 0x0680($v1) ## 00000680
/* 00B08 80AAD408 30A9FFF7 */ andi $t1, $a1, 0xFFF7 ## $t1 = 00000000
/* 00B0C 80AAD40C 31190400 */ andi $t9, $t0, 0x0400 ## $t9 = 00000000
/* 00B10 80AAD410 5720003D */ bnel $t9, $zero, .L80AAD508
/* 00B14 80AAD414 8FBF002C */ lw $ra, 0x002C($sp)
/* 00B18 80AAD418 1000003A */ beq $zero, $zero, .L80AAD504
/* 00B1C 80AAD41C A609027E */ sh $t1, 0x027E($s0) ## 0000027E
.L80AAD420:
/* 00B20 80AAD420 806A014F */ lb $t2, 0x014F($v1) ## 0000014F
/* 00B24 80AAD424 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00B28 80AAD428 34AB0008 */ ori $t3, $a1, 0x0008 ## $t3 = 00000008
/* 00B2C 80AAD42C 55410004 */ bnel $t2, $at, .L80AAD440
/* 00B30 80AAD430 8C6C0680 */ lw $t4, 0x0680($v1) ## 00000680
/* 00B34 80AAD434 10000033 */ beq $zero, $zero, .L80AAD504
/* 00B38 80AAD438 A60B027E */ sh $t3, 0x027E($s0) ## 0000027E
/* 00B3C 80AAD43C 8C6C0680 */ lw $t4, 0x0680($v1) ## 00000680
.L80AAD440:
/* 00B40 80AAD440 318D0400 */ andi $t5, $t4, 0x0400 ## $t5 = 00000000
/* 00B44 80AAD444 51A00030 */ beql $t5, $zero, .L80AAD508
/* 00B48 80AAD448 8FBF002C */ lw $ra, 0x002C($sp)
/* 00B4C 80AAD44C C4640084 */ lwc1 $f4, 0x0084($v1) ## 00000084
/* 00B50 80AAD450 4600218D */ trunc.w.s $f6, $f4
/* 00B54 80AAD454 44023000 */ mfc1 $v0, $f6
/* 00B58 80AAD458 00000000 */ nop
/* 00B5C 80AAD45C 00021400 */ sll $v0, $v0, 16
/* 00B60 80AAD460 00021403 */ sra $v0, $v0, 16
/* 00B64 80AAD464 18400027 */ blez $v0, .L80AAD504
/* 00B68 80AAD468 28410140 */ slti $at, $v0, 0x0140
/* 00B6C 80AAD46C 14200008 */ bne $at, $zero, .L80AAD490
/* 00B70 80AAD470 30A80004 */ andi $t0, $a1, 0x0004 ## $t0 = 00000000
/* 00B74 80AAD474 28410163 */ slti $at, $v0, 0x0163
/* 00B78 80AAD478 14200003 */ bne $at, $zero, .L80AAD488
/* 00B7C 80AAD47C 00000000 */ nop
/* 00B80 80AAD480 10000012 */ beq $zero, $zero, .L80AAD4CC
/* 00B84 80AAD484 24020008 */ addiu $v0, $zero, 0x0008 ## $v0 = 00000008
.L80AAD488:
/* 00B88 80AAD488 10000010 */ beq $zero, $zero, .L80AAD4CC
/* 00B8C 80AAD48C 24020007 */ addiu $v0, $zero, 0x0007 ## $v0 = 00000007
.L80AAD490:
/* 00B90 80AAD490 28410050 */ slti $at, $v0, 0x0050
/* 00B94 80AAD494 50200004 */ beql $at, $zero, .L80AAD4A8
/* 00B98 80AAD498 44824000 */ mtc1 $v0, $f8 ## $f8 = 0.00
/* 00B9C 80AAD49C 1000000B */ beq $zero, $zero, .L80AAD4CC
/* 00BA0 80AAD4A0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
/* 00BA4 80AAD4A4 44824000 */ mtc1 $v0, $f8 ## $f8 = 0.00
.L80AAD4A8:
/* 00BA8 80AAD4A8 3C0180AB */ lui $at, %hi(D_80AAD660) ## $at = 80AB0000
/* 00BAC 80AAD4AC C430D660 */ lwc1 $f16, %lo(D_80AAD660)($at)
/* 00BB0 80AAD4B0 468042A0 */ cvt.s.w $f10, $f8
/* 00BB4 80AAD4B4 46105482 */ mul.s $f18, $f10, $f16
/* 00BB8 80AAD4B8 4600910D */ trunc.w.s $f4, $f18
/* 00BBC 80AAD4BC 44022000 */ mfc1 $v0, $f4
/* 00BC0 80AAD4C0 00000000 */ nop
/* 00BC4 80AAD4C4 00021400 */ sll $v0, $v0, 16
/* 00BC8 80AAD4C8 00021403 */ sra $v0, $v0, 16
.L80AAD4CC:
/* 00BCC 80AAD4CC 86180280 */ lh $t8, 0x0280($s0) ## 00000280
/* 00BD0 80AAD4D0 0302082A */ slt $at, $t8, $v0
/* 00BD4 80AAD4D4 5020000C */ beql $at, $zero, .L80AAD508
/* 00BD8 80AAD4D8 8FBF002C */ lw $ra, 0x002C($sp)
/* 00BDC 80AAD4DC 15000009 */ bne $t0, $zero, .L80AAD504
/* 00BE0 80AAD4E0 A6020280 */ sh $v0, 0x0280($s0) ## 00000280
/* 00BE4 80AAD4E4 86190280 */ lh $t9, 0x0280($s0) ## 00000280
/* 00BE8 80AAD4E8 34A90004 */ ori $t1, $a1, 0x0004 ## $t1 = 00000004
/* 00BEC 80AAD4EC 24044802 */ addiu $a0, $zero, 0x4802 ## $a0 = 00004802
/* 00BF0 80AAD4F0 2B210008 */ slti $at, $t9, 0x0008
/* 00BF4 80AAD4F4 54200004 */ bnel $at, $zero, .L80AAD508
/* 00BF8 80AAD4F8 8FBF002C */ lw $ra, 0x002C($sp)
/* 00BFC 80AAD4FC 0C01E221 */ jal func_80078884
/* 00C00 80AAD500 A609027E */ sh $t1, 0x027E($s0) ## 0000027E
.L80AAD504:
/* 00C04 80AAD504 8FBF002C */ lw $ra, 0x002C($sp)
.L80AAD508:
/* 00C08 80AAD508 8FB00028 */ lw $s0, 0x0028($sp)
/* 00C0C 80AAD50C 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
/* 00C10 80AAD510 03E00008 */ jr $ra
/* 00C14 80AAD514 00000000 */ nop

View File

@ -1,23 +0,0 @@
glabel func_80AACA40
/* 00140 80AACA40 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00144 80AACA44 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00148 80AACA48 0C00BCCD */ jal func_8002F334
/* 0014C 80AACA4C AFA40018 */ sw $a0, 0x0018($sp)
/* 00150 80AACA50 10400009 */ beq $v0, $zero, .L80AACA78
/* 00154 80AACA54 8FA40018 */ lw $a0, 0x0018($sp)
/* 00158 80AACA58 8C8E0004 */ lw $t6, 0x0004($a0) ## 00000004
/* 0015C 80AACA5C 3C01FFFE */ lui $at, 0xFFFE ## $at = FFFE0000
/* 00160 80AACA60 3421FFFF */ ori $at, $at, 0xFFFF ## $at = FFFEFFFF
/* 00164 80AACA64 3C1880AB */ lui $t8, %hi(func_80AAD080) ## $t8 = 80AB0000
/* 00168 80AACA68 2718D080 */ addiu $t8, $t8, %lo(func_80AAD080) ## $t8 = 80AAD080
/* 0016C 80AACA6C 01C17824 */ and $t7, $t6, $at
/* 00170 80AACA70 AC8F0004 */ sw $t7, 0x0004($a0) ## 00000004
/* 00174 80AACA74 AC980284 */ sw $t8, 0x0284($a0) ## 00000284
.L80AACA78:
/* 00178 80AACA78 9499027E */ lhu $t9, 0x027E($a0) ## 0000027E
/* 0017C 80AACA7C 37280001 */ ori $t0, $t9, 0x0001 ## $t0 = 00000001
/* 00180 80AACA80 A488027E */ sh $t0, 0x027E($a0) ## 0000027E
/* 00184 80AACA84 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00188 80AACA88 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0018C 80AACA8C 03E00008 */ jr $ra
/* 00190 80AACA90 00000000 */ nop

View File

@ -1,35 +0,0 @@
glabel func_80AACA94
/* 00194 80AACA94 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00198 80AACA98 AFBF001C */ sw $ra, 0x001C($sp)
/* 0019C 80AACA9C AFA40020 */ sw $a0, 0x0020($sp)
/* 001A0 80AACAA0 0C00BD04 */ jal Actor_HasParent
/* 001A4 80AACAA4 AFA50024 */ sw $a1, 0x0024($sp)
/* 001A8 80AACAA8 1040000D */ beq $v0, $zero, .L80AACAE0
/* 001AC 80AACAAC 3C0E80AB */ lui $t6, %hi(func_80AACA40) ## $t6 = 80AB0000
/* 001B0 80AACAB0 8FA20020 */ lw $v0, 0x0020($sp)
/* 001B4 80AACAB4 25CECA40 */ addiu $t6, $t6, %lo(func_80AACA40) ## $t6 = 80AACA40
/* 001B8 80AACAB8 240400F0 */ addiu $a0, $zero, 0x00F0 ## $a0 = 000000F0
/* 001BC 80AACABC AC400118 */ sw $zero, 0x0118($v0) ## 00000118
/* 001C0 80AACAC0 0C0222A8 */ jal func_80088AA0
/* 001C4 80AACAC4 AC4E0284 */ sw $t6, 0x0284($v0) ## 00000284
/* 001C8 80AACAC8 3C028016 */ lui $v0, %hi(gSaveContext)
/* 001CC 80AACACC 2442E660 */ addiu $v0, %lo(gSaveContext)
/* 001D0 80AACAD0 944F13FC */ lhu $t7, 0x13FC($v0) ## 8015FA5C
/* 001D4 80AACAD4 31F8FFFE */ andi $t8, $t7, 0xFFFE ## $t8 = 00000000
/* 001D8 80AACAD8 1000000A */ beq $zero, $zero, .L80AACB04
/* 001DC 80AACADC A45813FC */ sh $t8, 0x13FC($v0) ## 8015FA5C
.L80AACAE0:
/* 001E0 80AACAE0 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 001E4 80AACAE4 44812000 */ mtc1 $at, $f4 ## $f4 = 50.00
/* 001E8 80AACAE8 3C07461C */ lui $a3, 0x461C ## $a3 = 461C0000
/* 001EC 80AACAEC 34E74000 */ ori $a3, $a3, 0x4000 ## $a3 = 461C4000
/* 001F0 80AACAF0 8FA40020 */ lw $a0, 0x0020($sp)
/* 001F4 80AACAF4 8FA50024 */ lw $a1, 0x0024($sp)
/* 001F8 80AACAF8 24060025 */ addiu $a2, $zero, 0x0025 ## $a2 = 00000025
/* 001FC 80AACAFC 0C00BD0D */ jal func_8002F434
/* 00200 80AACB00 E7A40010 */ swc1 $f4, 0x0010($sp)
.L80AACB04:
/* 00204 80AACB04 8FBF001C */ lw $ra, 0x001C($sp)
/* 00208 80AACB08 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 0020C 80AACB0C 03E00008 */ jr $ra
/* 00210 80AACB10 00000000 */ nop

View File

@ -1,24 +0,0 @@
glabel func_80AACB14
/* 00214 80AACB14 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00218 80AACB18 AFBF001C */ sw $ra, 0x001C($sp)
/* 0021C 80AACB1C AFA50024 */ sw $a1, 0x0024($sp)
/* 00220 80AACB20 0C00BCCD */ jal func_8002F334
/* 00224 80AACB24 AFA40020 */ sw $a0, 0x0020($sp)
/* 00228 80AACB28 1040000C */ beq $v0, $zero, .L80AACB5C
/* 0022C 80AACB2C 8FA40020 */ lw $a0, 0x0020($sp)
/* 00230 80AACB30 3C0E80AB */ lui $t6, %hi(func_80AACA94) ## $t6 = 80AB0000
/* 00234 80AACB34 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 00238 80AACB38 44812000 */ mtc1 $at, $f4 ## $f4 = 50.00
/* 0023C 80AACB3C 25CECA94 */ addiu $t6, $t6, %lo(func_80AACA94) ## $t6 = 80AACA94
/* 00240 80AACB40 AC8E0284 */ sw $t6, 0x0284($a0) ## 00000284
/* 00244 80AACB44 3C07461C */ lui $a3, 0x461C ## $a3 = 461C0000
/* 00248 80AACB48 34E74000 */ ori $a3, $a3, 0x4000 ## $a3 = 461C4000
/* 0024C 80AACB4C 8FA50024 */ lw $a1, 0x0024($sp)
/* 00250 80AACB50 24060025 */ addiu $a2, $zero, 0x0025 ## $a2 = 00000025
/* 00254 80AACB54 0C00BD0D */ jal func_8002F434
/* 00258 80AACB58 E7A40010 */ swc1 $f4, 0x0010($sp)
.L80AACB5C:
/* 0025C 80AACB5C 8FBF001C */ lw $ra, 0x001C($sp)
/* 00260 80AACB60 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00264 80AACB64 03E00008 */ jr $ra
/* 00268 80AACB68 00000000 */ nop

View File

@ -1,18 +0,0 @@
glabel func_80AACB6C
/* 0026C 80AACB6C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00270 80AACB70 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00274 80AACB74 0C00BC65 */ jal func_8002F194
/* 00278 80AACB78 AFA40018 */ sw $a0, 0x0018($sp)
/* 0027C 80AACB7C 10400004 */ beq $v0, $zero, .L80AACB90
/* 00280 80AACB80 8FA40018 */ lw $a0, 0x0018($sp)
/* 00284 80AACB84 3C0E80AB */ lui $t6, %hi(func_80AACB14) ## $t6 = 80AB0000
/* 00288 80AACB88 25CECB14 */ addiu $t6, $t6, %lo(func_80AACB14) ## $t6 = 80AACB14
/* 0028C 80AACB8C AC8E0284 */ sw $t6, 0x0284($a0) ## 00000284
.L80AACB90:
/* 00290 80AACB90 948F027E */ lhu $t7, 0x027E($a0) ## 0000027E
/* 00294 80AACB94 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
/* 00298 80AACB98 A498027E */ sh $t8, 0x027E($a0) ## 0000027E
/* 0029C 80AACB9C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 002A0 80AACBA0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 002A4 80AACBA4 03E00008 */ jr $ra
/* 002A8 80AACBA8 00000000 */ nop

View File

@ -1,25 +0,0 @@
glabel func_80AACBAC
/* 002AC 80AACBAC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 002B0 80AACBB0 AFBF0014 */ sw $ra, 0x0014($sp)
/* 002B4 80AACBB4 94820282 */ lhu $v0, 0x0282($a0) ## 00000282
/* 002B8 80AACBB8 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 002BC 80AACBBC 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 002C0 80AACBC0 18400007 */ blez $v0, .L80AACBE0
/* 002C4 80AACBC4 3C1980AB */ lui $t9, %hi(func_80AACB6C) ## $t9 = 80AB0000
/* 002C8 80AACBC8 848F00B6 */ lh $t7, 0x00B6($a0) ## 000000B6
/* 002CC 80AACBCC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 002D0 80AACBD0 A48E0282 */ sh $t6, 0x0282($a0) ## 00000282
/* 002D4 80AACBD4 25F8F800 */ addiu $t8, $t7, 0xF800 ## $t8 = FFFFF800
/* 002D8 80AACBD8 10000006 */ beq $zero, $zero, .L80AACBF4
/* 002DC 80AACBDC A49800B6 */ sh $t8, 0x00B6($a0) ## 000000B6
.L80AACBE0:
/* 002E0 80AACBE0 2739CB6C */ addiu $t9, $t9, %lo(func_80AACB6C) ## $t9 = 80AACB6C
/* 002E4 80AACBE4 ACD90284 */ sw $t9, 0x0284($a2) ## 00000284
/* 002E8 80AACBE8 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 002EC 80AACBEC 0C042DC8 */ jal func_8010B720
/* 002F0 80AACBF0 24054030 */ addiu $a1, $zero, 0x4030 ## $a1 = 00004030
.L80AACBF4:
/* 002F4 80AACBF4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 002F8 80AACBF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 002FC 80AACBFC 03E00008 */ jr $ra
/* 00300 80AACC00 00000000 */ nop

View File

@ -1,44 +0,0 @@
glabel func_80AACC04
/* 00304 80AACC04 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00308 80AACC08 AFBF002C */ sw $ra, 0x002C($sp)
/* 0030C 80AACC0C AFB00028 */ sw $s0, 0x0028($sp)
/* 00310 80AACC10 AFA50034 */ sw $a1, 0x0034($sp)
/* 00314 80AACC14 94820282 */ lhu $v0, 0x0282($a0) ## 00000282
/* 00318 80AACC18 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0031C 80AACC1C 240F0010 */ addiu $t7, $zero, 0x0010 ## $t7 = 00000010
/* 00320 80AACC20 18400004 */ blez $v0, .L80AACC34
/* 00324 80AACC24 3C1880AB */ lui $t8, %hi(func_80AACBAC) ## $t8 = 80AB0000
/* 00328 80AACC28 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 0032C 80AACC2C 10000017 */ beq $zero, $zero, .L80AACC8C
/* 00330 80AACC30 A48E0282 */ sh $t6, 0x0282($a0) ## 00000282
.L80AACC34:
/* 00334 80AACC34 2718CBAC */ addiu $t8, $t8, %lo(func_80AACBAC) ## $t8 = 80AACBAC
/* 00338 80AACC38 3C040600 */ lui $a0, %hi(D_06000D88) ## $a0 = 06000000
/* 0033C 80AACC3C A60F0282 */ sh $t7, 0x0282($s0) ## 00000282
/* 00340 80AACC40 AE180284 */ sw $t8, 0x0284($s0) ## 00000284
/* 00344 80AACC44 0C028800 */ jal Animation_GetLastFrame
/* 00348 80AACC48 24840D88 */ addiu $a0, $a0, %lo(D_06000D88) ## $a0 = 06000D88
/* 0034C 80AACC4C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00350 80AACC50 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 00354 80AACC54 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00358 80AACC58 468021A0 */ cvt.s.w $f6, $f4
/* 0035C 80AACC5C 3C050600 */ lui $a1, %hi(D_06000D88) ## $a1 = 06000000
/* 00360 80AACC60 24A50D88 */ addiu $a1, $a1, %lo(D_06000D88) ## $a1 = 06000D88
/* 00364 80AACC64 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 00368 80AACC68 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0036C 80AACC6C 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00370 80AACC70 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00374 80AACC74 AFA00014 */ sw $zero, 0x0014($sp)
/* 00378 80AACC78 0C029468 */ jal Animation_Change
/* 0037C 80AACC7C E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00380 80AACC80 9619027E */ lhu $t9, 0x027E($s0) ## 0000027E
/* 00384 80AACC84 3328FFFD */ andi $t0, $t9, 0xFFFD ## $t0 = 00000000
/* 00388 80AACC88 A608027E */ sh $t0, 0x027E($s0) ## 0000027E
.L80AACC8C:
/* 0038C 80AACC8C 8FBF002C */ lw $ra, 0x002C($sp)
/* 00390 80AACC90 8FB00028 */ lw $s0, 0x0028($sp)
/* 00394 80AACC94 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00398 80AACC98 03E00008 */ jr $ra
/* 0039C 80AACC9C 00000000 */ nop

View File

@ -1,47 +0,0 @@
glabel func_80AACCA0
/* 003A0 80AACCA0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 003A4 80AACCA4 AFBF002C */ sw $ra, 0x002C($sp)
/* 003A8 80AACCA8 AFB00028 */ sw $s0, 0x0028($sp)
/* 003AC 80AACCAC AFA50034 */ sw $a1, 0x0034($sp)
/* 003B0 80AACCB0 94820282 */ lhu $v0, 0x0282($a0) ## 00000282
/* 003B4 80AACCB4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 003B8 80AACCB8 24190078 */ addiu $t9, $zero, 0x0078 ## $t9 = 00000078
/* 003BC 80AACCBC 18400007 */ blez $v0, .L80AACCDC
/* 003C0 80AACCC0 3C0880AB */ lui $t0, %hi(func_80AACC04) ## $t0 = 80AB0000
/* 003C4 80AACCC4 848F00B6 */ lh $t7, 0x00B6($a0) ## 000000B6
/* 003C8 80AACCC8 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 003CC 80AACCCC A48E0282 */ sh $t6, 0x0282($a0) ## 00000282
/* 003D0 80AACCD0 25F80800 */ addiu $t8, $t7, 0x0800 ## $t8 = 00000800
/* 003D4 80AACCD4 10000017 */ beq $zero, $zero, .L80AACD34
/* 003D8 80AACCD8 A49800B6 */ sh $t8, 0x00B6($a0) ## 000000B6
.L80AACCDC:
/* 003DC 80AACCDC 2508CC04 */ addiu $t0, $t0, %lo(func_80AACC04) ## $t0 = 80AACC04
/* 003E0 80AACCE0 3C040600 */ lui $a0, %hi(D_06000724) ## $a0 = 06000000
/* 003E4 80AACCE4 A6190282 */ sh $t9, 0x0282($s0) ## 00000282
/* 003E8 80AACCE8 AE080284 */ sw $t0, 0x0284($s0) ## 00000284
/* 003EC 80AACCEC 0C028800 */ jal Animation_GetLastFrame
/* 003F0 80AACCF0 24840724 */ addiu $a0, $a0, %lo(D_06000724) ## $a0 = 06000724
/* 003F4 80AACCF4 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 003F8 80AACCF8 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 003FC 80AACCFC 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00400 80AACD00 468021A0 */ cvt.s.w $f6, $f4
/* 00404 80AACD04 3C050600 */ lui $a1, %hi(D_06000724) ## $a1 = 06000000
/* 00408 80AACD08 24A50724 */ addiu $a1, $a1, %lo(D_06000724) ## $a1 = 06000724
/* 0040C 80AACD0C 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 00410 80AACD10 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00414 80AACD14 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00418 80AACD18 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 0041C 80AACD1C AFA00014 */ sw $zero, 0x0014($sp)
/* 00420 80AACD20 0C029468 */ jal Animation_Change
/* 00424 80AACD24 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00428 80AACD28 9609027E */ lhu $t1, 0x027E($s0) ## 0000027E
/* 0042C 80AACD2C 312AFFFD */ andi $t2, $t1, 0xFFFD ## $t2 = 00000000
/* 00430 80AACD30 A60A027E */ sh $t2, 0x027E($s0) ## 0000027E
.L80AACD34:
/* 00434 80AACD34 8FBF002C */ lw $ra, 0x002C($sp)
/* 00438 80AACD38 8FB00028 */ lw $s0, 0x0028($sp)
/* 0043C 80AACD3C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00440 80AACD40 03E00008 */ jr $ra
/* 00444 80AACD44 00000000 */ nop

View File

@ -1,61 +0,0 @@
glabel func_80AACD48
/* 00448 80AACD48 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 0044C 80AACD4C AFBF002C */ sw $ra, 0x002C($sp)
/* 00450 80AACD50 AFB10028 */ sw $s1, 0x0028($sp)
/* 00454 80AACD54 AFB00024 */ sw $s0, 0x0024($sp)
/* 00458 80AACD58 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44
/* 0045C 80AACD5C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00460 80AACD60 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00464 80AACD64 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
/* 00468 80AACD68 0C042F6F */ jal func_8010BDBC
/* 0046C 80AACD6C AFAE0034 */ sw $t6, 0x0034($sp)
/* 00470 80AACD70 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 00474 80AACD74 54410026 */ bnel $v0, $at, .L80AACE10
/* 00478 80AACD78 960B027E */ lhu $t3, 0x027E($s0) ## 0000027E
/* 0047C 80AACD7C 0C041AF2 */ jal func_80106BC8
/* 00480 80AACD80 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00484 80AACD84 50400022 */ beql $v0, $zero, .L80AACE10
/* 00488 80AACD88 960B027E */ lhu $t3, 0x027E($s0) ## 0000027E
/* 0048C 80AACD8C 0C041B33 */ jal func_80106CCC
/* 00490 80AACD90 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00494 80AACD94 3C0F80AB */ lui $t7, %hi(func_80AACCA0) ## $t7 = 80AB0000
/* 00498 80AACD98 25EFCCA0 */ addiu $t7, $t7, %lo(func_80AACCA0) ## $t7 = 80AACCA0
/* 0049C 80AACD9C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 004A0 80AACDA0 AE0F0284 */ sw $t7, 0x0284($s0) ## 00000284
/* 004A4 80AACDA4 00310821 */ addu $at, $at, $s1
/* 004A8 80AACDA8 24180037 */ addiu $t8, $zero, 0x0037 ## $t8 = 00000037
/* 004AC 80AACDAC A03803DC */ sb $t8, 0x03DC($at) ## 000103DC
/* 004B0 80AACDB0 8FB90034 */ lw $t9, 0x0034($sp)
/* 004B4 80AACDB4 24080010 */ addiu $t0, $zero, 0x0010 ## $t0 = 00000010
/* 004B8 80AACDB8 3C040600 */ lui $a0, %hi(D_06000D88) ## $a0 = 06000000
/* 004BC 80AACDBC A3200693 */ sb $zero, 0x0693($t9) ## 00000693
/* 004C0 80AACDC0 A6080282 */ sh $t0, 0x0282($s0) ## 00000282
/* 004C4 80AACDC4 0C028800 */ jal Animation_GetLastFrame
/* 004C8 80AACDC8 24840D88 */ addiu $a0, $a0, %lo(D_06000D88) ## $a0 = 06000D88
/* 004CC 80AACDCC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 004D0 80AACDD0 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 004D4 80AACDD4 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 004D8 80AACDD8 468021A0 */ cvt.s.w $f6, $f4
/* 004DC 80AACDDC 3C050600 */ lui $a1, %hi(D_06000D88) ## $a1 = 06000000
/* 004E0 80AACDE0 24A50D88 */ addiu $a1, $a1, %lo(D_06000D88) ## $a1 = 06000D88
/* 004E4 80AACDE4 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 004E8 80AACDE8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 004EC 80AACDEC 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 004F0 80AACDF0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 004F4 80AACDF4 AFA00014 */ sw $zero, 0x0014($sp)
/* 004F8 80AACDF8 0C029468 */ jal Animation_Change
/* 004FC 80AACDFC E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00500 80AACE00 9609027E */ lhu $t1, 0x027E($s0) ## 0000027E
/* 00504 80AACE04 312AFFFD */ andi $t2, $t1, 0xFFFD ## $t2 = 00000000
/* 00508 80AACE08 A60A027E */ sh $t2, 0x027E($s0) ## 0000027E
/* 0050C 80AACE0C 960B027E */ lhu $t3, 0x027E($s0) ## 0000027E
.L80AACE10:
/* 00510 80AACE10 356C0001 */ ori $t4, $t3, 0x0001 ## $t4 = 00000001
/* 00514 80AACE14 A60C027E */ sh $t4, 0x027E($s0) ## 0000027E
/* 00518 80AACE18 8FBF002C */ lw $ra, 0x002C($sp)
/* 0051C 80AACE1C 8FB10028 */ lw $s1, 0x0028($sp)
/* 00520 80AACE20 8FB00024 */ lw $s0, 0x0024($sp)
/* 00524 80AACE24 03E00008 */ jr $ra
/* 00528 80AACE28 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000

View File

@ -1,52 +0,0 @@
glabel func_80AACE2C
/* 0052C 80AACE2C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00530 80AACE30 AFB00028 */ sw $s0, 0x0028($sp)
/* 00534 80AACE34 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00538 80AACE38 AFBF002C */ sw $ra, 0x002C($sp)
/* 0053C 80AACE3C AFA50034 */ sw $a1, 0x0034($sp)
/* 00540 80AACE40 0C042F6F */ jal func_8010BDBC
/* 00544 80AACE44 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
/* 00548 80AACE48 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 0054C 80AACE4C 5441001F */ bnel $v0, $at, .L80AACECC
/* 00550 80AACE50 9608027E */ lhu $t0, 0x027E($s0) ## 0000027E
/* 00554 80AACE54 0C041AF2 */ jal func_80106BC8
/* 00558 80AACE58 8FA40034 */ lw $a0, 0x0034($sp)
/* 0055C 80AACE5C 1040001A */ beq $v0, $zero, .L80AACEC8
/* 00560 80AACE60 8FA40034 */ lw $a0, 0x0034($sp)
/* 00564 80AACE64 0C042DC8 */ jal func_8010B720
/* 00568 80AACE68 24054001 */ addiu $a1, $zero, 0x4001 ## $a1 = 00004001
/* 0056C 80AACE6C 3C040600 */ lui $a0, %hi(D_06000AC0) ## $a0 = 06000000
/* 00570 80AACE70 0C028800 */ jal Animation_GetLastFrame
/* 00574 80AACE74 24840AC0 */ addiu $a0, $a0, %lo(D_06000AC0) ## $a0 = 06000AC0
/* 00578 80AACE78 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 0057C 80AACE7C 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 00580 80AACE80 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00584 80AACE84 468021A0 */ cvt.s.w $f6, $f4
/* 00588 80AACE88 3C050600 */ lui $a1, %hi(D_06000AC0) ## $a1 = 06000000
/* 0058C 80AACE8C 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 00590 80AACE90 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00594 80AACE94 24A50AC0 */ addiu $a1, $a1, %lo(D_06000AC0) ## $a1 = 06000AC0
/* 00598 80AACE98 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 0059C 80AACE9C E7A60010 */ swc1 $f6, 0x0010($sp)
/* 005A0 80AACEA0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 005A4 80AACEA4 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 005A8 80AACEA8 0C029468 */ jal Animation_Change
/* 005AC 80AACEAC E7A80018 */ swc1 $f8, 0x0018($sp)
/* 005B0 80AACEB0 960F027E */ lhu $t7, 0x027E($s0) ## 0000027E
/* 005B4 80AACEB4 3C1980AB */ lui $t9, %hi(func_80AACD48) ## $t9 = 80AB0000
/* 005B8 80AACEB8 2739CD48 */ addiu $t9, $t9, %lo(func_80AACD48) ## $t9 = 80AACD48
/* 005BC 80AACEBC 31F8FFFD */ andi $t8, $t7, 0xFFFD ## $t8 = 00000000
/* 005C0 80AACEC0 A618027E */ sh $t8, 0x027E($s0) ## 0000027E
/* 005C4 80AACEC4 AE190284 */ sw $t9, 0x0284($s0) ## 00000284
.L80AACEC8:
/* 005C8 80AACEC8 9608027E */ lhu $t0, 0x027E($s0) ## 0000027E
.L80AACECC:
/* 005CC 80AACECC 35090001 */ ori $t1, $t0, 0x0001 ## $t1 = 00000001
/* 005D0 80AACED0 A609027E */ sh $t1, 0x027E($s0) ## 0000027E
/* 005D4 80AACED4 8FBF002C */ lw $ra, 0x002C($sp)
/* 005D8 80AACED8 8FB00028 */ lw $s0, 0x0028($sp)
/* 005DC 80AACEDC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 005E0 80AACEE0 03E00008 */ jr $ra
/* 005E4 80AACEE4 00000000 */ nop

View File

@ -1,51 +0,0 @@
glabel func_80AACEE8
/* 005E8 80AACEE8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 005EC 80AACEEC AFB00028 */ sw $s0, 0x0028($sp)
/* 005F0 80AACEF0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 005F4 80AACEF4 AFBF002C */ sw $ra, 0x002C($sp)
/* 005F8 80AACEF8 AFA50034 */ sw $a1, 0x0034($sp)
/* 005FC 80AACEFC 0C042F6F */ jal func_8010BDBC
/* 00600 80AACF00 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
/* 00604 80AACF04 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 00608 80AACF08 5441001E */ bnel $v0, $at, .L80AACF84
/* 0060C 80AACF0C 9619027E */ lhu $t9, 0x027E($s0) ## 0000027E
/* 00610 80AACF10 0C041AF2 */ jal func_80106BC8
/* 00614 80AACF14 8FA40034 */ lw $a0, 0x0034($sp)
/* 00618 80AACF18 10400019 */ beq $v0, $zero, .L80AACF80
/* 0061C 80AACF1C 8FA40034 */ lw $a0, 0x0034($sp)
/* 00620 80AACF20 0C042DC8 */ jal func_8010B720
/* 00624 80AACF24 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
/* 00628 80AACF28 3C040600 */ lui $a0, %hi(D_06000AC0) ## $a0 = 06000000
/* 0062C 80AACF2C 0C028800 */ jal Animation_GetLastFrame
/* 00630 80AACF30 24840AC0 */ addiu $a0, $a0, %lo(D_06000AC0) ## $a0 = 06000AC0
/* 00634 80AACF34 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00638 80AACF38 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 0063C 80AACF3C 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00640 80AACF40 468021A0 */ cvt.s.w $f6, $f4
/* 00644 80AACF44 3C050600 */ lui $a1, %hi(D_06000AC0) ## $a1 = 06000000
/* 00648 80AACF48 24A50AC0 */ addiu $a1, $a1, %lo(D_06000AC0) ## $a1 = 06000AC0
/* 0064C 80AACF4C 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 00650 80AACF50 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00654 80AACF54 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00658 80AACF58 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 0065C 80AACF5C AFA00014 */ sw $zero, 0x0014($sp)
/* 00660 80AACF60 0C029468 */ jal Animation_Change
/* 00664 80AACF64 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00668 80AACF68 960E027E */ lhu $t6, 0x027E($s0) ## 0000027E
/* 0066C 80AACF6C 3C1880AB */ lui $t8, %hi(func_80AACE2C) ## $t8 = 80AB0000
/* 00670 80AACF70 2718CE2C */ addiu $t8, $t8, %lo(func_80AACE2C) ## $t8 = 80AACE2C
/* 00674 80AACF74 31CFFFFD */ andi $t7, $t6, 0xFFFD ## $t7 = 00000000
/* 00678 80AACF78 A60F027E */ sh $t7, 0x027E($s0) ## 0000027E
/* 0067C 80AACF7C AE180284 */ sw $t8, 0x0284($s0) ## 00000284
.L80AACF80:
/* 00680 80AACF80 9619027E */ lhu $t9, 0x027E($s0) ## 0000027E
.L80AACF84:
/* 00684 80AACF84 37280001 */ ori $t0, $t9, 0x0001 ## $t0 = 00000001
/* 00688 80AACF88 A608027E */ sh $t0, 0x027E($s0) ## 0000027E
/* 0068C 80AACF8C 8FBF002C */ lw $ra, 0x002C($sp)
/* 00690 80AACF90 8FB00028 */ lw $s0, 0x0028($sp)
/* 00694 80AACF94 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00698 80AACF98 03E00008 */ jr $ra
/* 0069C 80AACF9C 00000000 */ nop

View File

@ -1,32 +0,0 @@
glabel func_80AACFA0
/* 006A0 80AACFA0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 006A4 80AACFA4 AFBF001C */ sw $ra, 0x001C($sp)
/* 006A8 80AACFA8 AFA50024 */ sw $a1, 0x0024($sp)
/* 006AC 80AACFAC 0C00BD04 */ jal Actor_HasParent
/* 006B0 80AACFB0 AFA40020 */ sw $a0, 0x0020($sp)
/* 006B4 80AACFB4 1040000B */ beq $v0, $zero, .L80AACFE4
/* 006B8 80AACFB8 8FA40020 */ lw $a0, 0x0020($sp)
/* 006BC 80AACFBC 3C0E80AB */ lui $t6, %hi(func_80AACA40) ## $t6 = 80AB0000
/* 006C0 80AACFC0 3C028016 */ lui $v0, %hi(gSaveContext)
/* 006C4 80AACFC4 25CECA40 */ addiu $t6, $t6, %lo(func_80AACA40) ## $t6 = 80AACA40
/* 006C8 80AACFC8 2442E660 */ addiu $v0, %lo(gSaveContext)
/* 006CC 80AACFCC AC800118 */ sw $zero, 0x0118($a0) ## 00000118
/* 006D0 80AACFD0 AC8E0284 */ sw $t6, 0x0284($a0) ## 00000284
/* 006D4 80AACFD4 944F0EF2 */ lhu $t7, 0x0EF2($v0) ## 8015F552
/* 006D8 80AACFD8 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
/* 006DC 80AACFDC 10000009 */ beq $zero, $zero, .L80AAD004
/* 006E0 80AACFE0 A4580EF2 */ sh $t8, 0x0EF2($v0) ## 8015F552
.L80AACFE4:
/* 006E4 80AACFE4 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 006E8 80AACFE8 44812000 */ mtc1 $at, $f4 ## $f4 = 50.00
/* 006EC 80AACFEC 3C07461C */ lui $a3, 0x461C ## $a3 = 461C0000
/* 006F0 80AACFF0 34E74000 */ ori $a3, $a3, 0x4000 ## $a3 = 461C4000
/* 006F4 80AACFF4 8FA50024 */ lw $a1, 0x0024($sp)
/* 006F8 80AACFF8 2406003E */ addiu $a2, $zero, 0x003E ## $a2 = 0000003E
/* 006FC 80AACFFC 0C00BD0D */ jal func_8002F434
/* 00700 80AAD000 E7A40010 */ swc1 $f4, 0x0010($sp)
.L80AAD004:
/* 00704 80AAD004 8FBF001C */ lw $ra, 0x001C($sp)
/* 00708 80AAD008 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 0070C 80AAD00C 03E00008 */ jr $ra
/* 00710 80AAD010 00000000 */ nop

View File

@ -1,29 +0,0 @@
glabel func_80AAD014
/* 00714 80AAD014 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00718 80AAD018 AFBF001C */ sw $ra, 0x001C($sp)
/* 0071C 80AAD01C AFA50024 */ sw $a1, 0x0024($sp)
/* 00720 80AAD020 0C00BCCD */ jal func_8002F334
/* 00724 80AAD024 AFA40020 */ sw $a0, 0x0020($sp)
/* 00728 80AAD028 1040000E */ beq $v0, $zero, .L80AAD064
/* 0072C 80AAD02C 8FA40020 */ lw $a0, 0x0020($sp)
/* 00730 80AAD030 3C0E80AB */ lui $t6, %hi(func_80AACFA0) ## $t6 = 80AB0000
/* 00734 80AAD034 25CECFA0 */ addiu $t6, $t6, %lo(func_80AACFA0) ## $t6 = 80AACFA0
/* 00738 80AAD038 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 0073C 80AAD03C 44812000 */ mtc1 $at, $f4 ## $f4 = 50.00
/* 00740 80AAD040 AC8E0284 */ sw $t6, 0x0284($a0) ## 00000284
/* 00744 80AAD044 3C07461C */ lui $a3, 0x461C ## $a3 = 461C0000
/* 00748 80AAD048 34E74000 */ ori $a3, $a3, 0x4000 ## $a3 = 461C4000
/* 0074C 80AAD04C AFA40020 */ sw $a0, 0x0020($sp)
/* 00750 80AAD050 8FA50024 */ lw $a1, 0x0024($sp)
/* 00754 80AAD054 2406003E */ addiu $a2, $zero, 0x003E ## $a2 = 0000003E
/* 00758 80AAD058 0C00BD0D */ jal func_8002F434
/* 0075C 80AAD05C E7A40010 */ swc1 $f4, 0x0010($sp)
/* 00760 80AAD060 8FA40020 */ lw $a0, 0x0020($sp)
.L80AAD064:
/* 00764 80AAD064 948F027E */ lhu $t7, 0x027E($a0) ## 0000027E
/* 00768 80AAD068 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
/* 0076C 80AAD06C A498027E */ sh $t8, 0x027E($a0) ## 0000027E
/* 00770 80AAD070 8FBF001C */ lw $ra, 0x001C($sp)
/* 00774 80AAD074 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00778 80AAD078 03E00008 */ jr $ra
/* 0077C 80AAD07C 00000000 */ nop

View File

@ -1,163 +0,0 @@
glabel func_80AAD080
/* 00780 80AAD080 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00784 80AAD084 AFBF002C */ sw $ra, 0x002C($sp)
/* 00788 80AAD088 AFB00028 */ sw $s0, 0x0028($sp)
/* 0078C 80AAD08C 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44
/* 00790 80AAD090 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00794 80AAD094 AFA50044 */ sw $a1, 0x0044($sp)
/* 00798 80AAD098 0C00BC65 */ jal func_8002F194
/* 0079C 80AAD09C AFA30034 */ sw $v1, 0x0034($sp)
/* 007A0 80AAD0A0 10400064 */ beq $v0, $zero, .L80AAD234
/* 007A4 80AAD0A4 8FA30034 */ lw $v1, 0x0034($sp)
/* 007A8 80AAD0A8 8FA40044 */ lw $a0, 0x0044($sp)
/* 007AC 80AAD0AC 0C00BCDA */ jal func_8002F368
/* 007B0 80AAD0B0 AFA30034 */ sw $v1, 0x0034($sp)
/* 007B4 80AAD0B4 9604010E */ lhu $a0, 0x010E($s0) ## 0000010E
/* 007B8 80AAD0B8 24014018 */ addiu $at, $zero, 0x4018 ## $at = 00004018
/* 007BC 80AAD0BC 8FA30034 */ lw $v1, 0x0034($sp)
/* 007C0 80AAD0C0 10810006 */ beq $a0, $at, .L80AAD0DC
/* 007C4 80AAD0C4 3C0F8012 */ lui $t7, %hi(gItemSlots+0x30)
/* 007C8 80AAD0C8 3C0E80AB */ lui $t6, %hi(func_80AACA40) ## $t6 = 80AB0000
/* 007CC 80AAD0CC A464010E */ sh $a0, 0x010E($v1) ## 0000010E
/* 007D0 80AAD0D0 25CECA40 */ addiu $t6, $t6, %lo(func_80AACA40) ## $t6 = 80AACA40
/* 007D4 80AAD0D4 10000079 */ beq $zero, $zero, .L80AAD2BC
/* 007D8 80AAD0D8 AE0E0284 */ sw $t6, 0x0284($s0) ## 00000284
.L80AAD0DC:
/* 007DC 80AAD0DC 91EF7494 */ lbu $t7, %lo(gItemSlots+0x30)($t7)
/* 007E0 80AAD0E0 3C058016 */ lui $a1, %hi(gSaveContext)
/* 007E4 80AAD0E4 24A5E660 */ addiu $a1, %lo(gSaveContext)
/* 007E8 80AAD0E8 00AFC021 */ addu $t8, $a1, $t7
/* 007EC 80AAD0EC 93190074 */ lbu $t9, 0x0074($t8) ## 00000074
/* 007F0 80AAD0F0 24010036 */ addiu $at, $zero, 0x0036 ## $at = 00000036
/* 007F4 80AAD0F4 24084032 */ addiu $t0, $zero, 0x4032 ## $t0 = 00004032
/* 007F8 80AAD0F8 17210005 */ bne $t9, $at, .L80AAD110
/* 007FC 80AAD0FC 3C0980AB */ lui $t1, %hi(func_80AACA40) ## $t1 = 80AB0000
/* 00800 80AAD100 A468010E */ sh $t0, 0x010E($v1) ## 0000010E
/* 00804 80AAD104 2529CA40 */ addiu $t1, $t1, %lo(func_80AACA40) ## $t1 = 80AACA40
/* 00808 80AAD108 1000006C */ beq $zero, $zero, .L80AAD2BC
/* 0080C 80AAD10C AE090284 */ sw $t1, 0x0284($s0) ## 00000284
.L80AAD110:
/* 00810 80AAD110 10400009 */ beq $v0, $zero, .L80AAD138
/* 00814 80AAD114 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
/* 00818 80AAD118 10410028 */ beq $v0, $at, .L80AAD1BC
/* 0081C 80AAD11C 240C4019 */ addiu $t4, $zero, 0x4019 ## $t4 = 00004019
/* 00820 80AAD120 240A4018 */ addiu $t2, $zero, 0x4018 ## $t2 = 00004018
/* 00824 80AAD124 3C0B80AB */ lui $t3, %hi(func_80AACA40) ## $t3 = 80AB0000
/* 00828 80AAD128 256BCA40 */ addiu $t3, $t3, %lo(func_80AACA40) ## $t3 = 80AACA40
/* 0082C 80AAD12C A46A010E */ sh $t2, 0x010E($v1) ## 0000010E
/* 00830 80AAD130 10000062 */ beq $zero, $zero, .L80AAD2BC
/* 00834 80AAD134 AE0B0284 */ sw $t3, 0x0284($s0) ## 00000284
.L80AAD138:
/* 00838 80AAD138 86020280 */ lh $v0, 0x0280($s0) ## 00000280
/* 0083C 80AAD13C 28410008 */ slti $at, $v0, 0x0008
/* 00840 80AAD140 14200011 */ bne $at, $zero, .L80AAD188
/* 00844 80AAD144 00000000 */ nop
/* 00848 80AAD148 94AC0EF2 */ lhu $t4, 0x0EF2($a1) ## 8015F552
/* 0084C 80AAD14C 3C1980AB */ lui $t9, %hi(func_80AAD014) ## $t9 = 80AB0000
/* 00850 80AAD150 24184074 */ addiu $t8, $zero, 0x4074 ## $t8 = 00004074
/* 00854 80AAD154 318D0001 */ andi $t5, $t4, 0x0001 ## $t5 = 00000001
/* 00858 80AAD158 11A00007 */ beq $t5, $zero, .L80AAD178
/* 0085C 80AAD15C 2739D014 */ addiu $t9, $t9, %lo(func_80AAD014) ## $t9 = 80AAD014
/* 00860 80AAD160 240E4075 */ addiu $t6, $zero, 0x4075 ## $t6 = 00004075
/* 00864 80AAD164 3C0F80AB */ lui $t7, %hi(func_80AACA40) ## $t7 = 80AB0000
/* 00868 80AAD168 A46E010E */ sh $t6, 0x010E($v1) ## 0000010E
/* 0086C 80AAD16C 25EFCA40 */ addiu $t7, $t7, %lo(func_80AACA40) ## $t7 = 80AACA40
/* 00870 80AAD170 10000052 */ beq $zero, $zero, .L80AAD2BC
/* 00874 80AAD174 AE0F0284 */ sw $t7, 0x0284($s0) ## 00000284
.L80AAD178:
/* 00878 80AAD178 A478010E */ sh $t8, 0x010E($v1) ## 0000010E
/* 0087C 80AAD17C AE190284 */ sw $t9, 0x0284($s0) ## 00000284
/* 00880 80AAD180 1000004E */ beq $zero, $zero, .L80AAD2BC
/* 00884 80AAD184 A6000280 */ sh $zero, 0x0280($s0) ## 00000280
.L80AAD188:
/* 00888 80AAD188 14400007 */ bne $v0, $zero, .L80AAD1A8
/* 0088C 80AAD18C 244A406C */ addiu $t2, $v0, 0x406C ## $t2 = 0000406C
/* 00890 80AAD190 24084018 */ addiu $t0, $zero, 0x4018 ## $t0 = 00004018
/* 00894 80AAD194 3C0980AB */ lui $t1, %hi(func_80AACA40) ## $t1 = 80AB0000
/* 00898 80AAD198 A468010E */ sh $t0, 0x010E($v1) ## 0000010E
/* 0089C 80AAD19C 2529CA40 */ addiu $t1, $t1, %lo(func_80AACA40) ## $t1 = 80AACA40
/* 008A0 80AAD1A0 10000046 */ beq $zero, $zero, .L80AAD2BC
/* 008A4 80AAD1A4 AE090284 */ sw $t1, 0x0284($s0) ## 00000284
.L80AAD1A8:
/* 008A8 80AAD1A8 3C0B80AB */ lui $t3, %hi(func_80AACA40) ## $t3 = 80AB0000
/* 008AC 80AAD1AC A46A010E */ sh $t2, 0x010E($v1) ## 0000010E
/* 008B0 80AAD1B0 256BCA40 */ addiu $t3, $t3, %lo(func_80AACA40) ## $t3 = 80AACA40
/* 008B4 80AAD1B4 10000041 */ beq $zero, $zero, .L80AAD2BC
/* 008B8 80AAD1B8 AE0B0284 */ sw $t3, 0x0284($s0) ## 00000284
.L80AAD1BC:
/* 008BC 80AAD1BC 3C0D80AB */ lui $t5, %hi(func_80AACEE8) ## $t5 = 80AB0000
/* 008C0 80AAD1C0 A46C010E */ sh $t4, 0x010E($v1) ## 0000010E
/* 008C4 80AAD1C4 25ADCEE8 */ addiu $t5, $t5, %lo(func_80AACEE8) ## $t5 = 80AACEE8
/* 008C8 80AAD1C8 3C040600 */ lui $a0, %hi(D_06000368) ## $a0 = 06000000
/* 008CC 80AAD1CC AE0D0284 */ sw $t5, 0x0284($s0) ## 00000284
/* 008D0 80AAD1D0 0C028800 */ jal Animation_GetLastFrame
/* 008D4 80AAD1D4 24840368 */ addiu $a0, $a0, %lo(D_06000368) ## $a0 = 06000368
/* 008D8 80AAD1D8 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 008DC 80AAD1DC 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 008E0 80AAD1E0 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 008E4 80AAD1E4 468021A0 */ cvt.s.w $f6, $f4
/* 008E8 80AAD1E8 3C050600 */ lui $a1, %hi(D_06000368) ## $a1 = 06000000
/* 008EC 80AAD1EC 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 008F0 80AAD1F0 AFAE0014 */ sw $t6, 0x0014($sp)
/* 008F4 80AAD1F4 24A50368 */ addiu $a1, $a1, %lo(D_06000368) ## $a1 = 06000368
/* 008F8 80AAD1F8 26040198 */ addiu $a0, $s0, 0x0198 ## $a0 = 00000198
/* 008FC 80AAD1FC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00900 80AAD200 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00904 80AAD204 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00908 80AAD208 0C029468 */ jal Animation_Change
/* 0090C 80AAD20C E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00910 80AAD210 960F027E */ lhu $t7, 0x027E($s0) ## 0000027E
/* 00914 80AAD214 3C018016 */ lui $at, %hi(gSaveContext+0x13d2)
/* 00918 80AAD218 24044807 */ addiu $a0, $zero, 0x4807 ## $a0 = 00004807
/* 0091C 80AAD21C 31F8FFFD */ andi $t8, $t7, 0xFFFD ## $t8 = 00000000
/* 00920 80AAD220 A618027E */ sh $t8, 0x027E($s0) ## 0000027E
/* 00924 80AAD224 0C01E221 */ jal func_80078884
/* 00928 80AAD228 A420FA32 */ sh $zero, %lo(gSaveContext+0x13d2)($at)
/* 0092C 80AAD22C 10000024 */ beq $zero, $zero, .L80AAD2C0
/* 00930 80AAD230 8FBF002C */ lw $ra, 0x002C($sp)
.L80AAD234:
/* 00934 80AAD234 8FA40044 */ lw $a0, 0x0044($sp)
/* 00938 80AAD238 0C01B0D8 */ jal Text_GetFaceReaction
/* 0093C 80AAD23C 2405001A */ addiu $a1, $zero, 0x001A ## $a1 = 0000001A
/* 00940 80AAD240 3059FFFF */ andi $t9, $v0, 0xFFFF ## $t9 = 00000000
/* 00944 80AAD244 17200003 */ bne $t9, $zero, .L80AAD254
/* 00948 80AAD248 A602010E */ sh $v0, 0x010E($s0) ## 0000010E
/* 0094C 80AAD24C 24084018 */ addiu $t0, $zero, 0x4018 ## $t0 = 00004018
/* 00950 80AAD250 A608010E */ sh $t0, 0x010E($s0) ## 0000010E
.L80AAD254:
/* 00954 80AAD254 8609008A */ lh $t1, 0x008A($s0) ## 0000008A
/* 00958 80AAD258 860A00B6 */ lh $t2, 0x00B6($s0) ## 000000B6
/* 0095C 80AAD25C 012A1023 */ subu $v0, $t1, $t2
/* 00960 80AAD260 00021400 */ sll $v0, $v0, 16
/* 00964 80AAD264 00021403 */ sra $v0, $v0, 16
/* 00968 80AAD268 04400003 */ bltz $v0, .L80AAD278
/* 0096C 80AAD26C 00021823 */ subu $v1, $zero, $v0
/* 00970 80AAD270 10000001 */ beq $zero, $zero, .L80AAD278
/* 00974 80AAD274 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
.L80AAD278:
/* 00978 80AAD278 28612151 */ slti $at, $v1, 0x2151
/* 0097C 80AAD27C 1020000F */ beq $at, $zero, .L80AAD2BC
/* 00980 80AAD280 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00984 80AAD284 44810000 */ mtc1 $at, $f0 ## $f0 = 100.00
/* 00988 80AAD288 C60A0090 */ lwc1 $f10, 0x0090($s0) ## 00000090
/* 0098C 80AAD28C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00990 80AAD290 8FA50044 */ lw $a1, 0x0044($sp)
/* 00994 80AAD294 4600503C */ c.lt.s $f10, $f0
/* 00998 80AAD298 00000000 */ nop
/* 0099C 80AAD29C 45020008 */ bc1fl .L80AAD2C0
/* 009A0 80AAD2A0 8FBF002C */ lw $ra, 0x002C($sp)
/* 009A4 80AAD2A4 44060000 */ mfc1 $a2, $f0
/* 009A8 80AAD2A8 0C00BCA6 */ jal func_8002F298
/* 009AC 80AAD2AC 2407000D */ addiu $a3, $zero, 0x000D ## $a3 = 0000000D
/* 009B0 80AAD2B0 960B027E */ lhu $t3, 0x027E($s0) ## 0000027E
/* 009B4 80AAD2B4 356C0001 */ ori $t4, $t3, 0x0001 ## $t4 = 00000001
/* 009B8 80AAD2B8 A60C027E */ sh $t4, 0x027E($s0) ## 0000027E
.L80AAD2BC:
/* 009BC 80AAD2BC 8FBF002C */ lw $ra, 0x002C($sp)
.L80AAD2C0:
/* 009C0 80AAD2C0 8FB00028 */ lw $s0, 0x0028($sp)
/* 009C4 80AAD2C4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 009C8 80AAD2C8 03E00008 */ jr $ra
/* 009CC 80AAD2CC 00000000 */ nop

View File

@ -1,19 +0,0 @@
glabel func_80AAD518
/* 00C18 80AAD518 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
/* 00C1C 80AAD51C AFA40000 */ sw $a0, 0x0000($sp)
/* 00C20 80AAD520 AFA60008 */ sw $a2, 0x0008($sp)
/* 00C24 80AAD524 14A1000B */ bne $a1, $at, .L80AAD554
/* 00C28 80AAD528 AFA7000C */ sw $a3, 0x000C($sp)
/* 00C2C 80AAD52C 8FA20014 */ lw $v0, 0x0014($sp)
/* 00C30 80AAD530 8FA30010 */ lw $v1, 0x0010($sp)
/* 00C34 80AAD534 844F027A */ lh $t7, 0x027A($v0) ## 0000027A
/* 00C38 80AAD538 846E0002 */ lh $t6, 0x0002($v1) ## 00000002
/* 00C3C 80AAD53C 84790004 */ lh $t9, 0x0004($v1) ## 00000004
/* 00C40 80AAD540 01CFC023 */ subu $t8, $t6, $t7
/* 00C44 80AAD544 A4780002 */ sh $t8, 0x0002($v1) ## 00000002
/* 00C48 80AAD548 84480278 */ lh $t0, 0x0278($v0) ## 00000278
/* 00C4C 80AAD54C 03284821 */ addu $t1, $t9, $t0
/* 00C50 80AAD550 A4690004 */ sh $t1, 0x0004($v1) ## 00000004
.L80AAD554:
/* 00C54 80AAD554 03E00008 */ jr $ra
/* 00C58 80AAD558 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000

View File

@ -1,18 +0,0 @@
glabel func_80AAD55C
/* 00C5C 80AAD55C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00C60 80AAD560 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
/* 00C64 80AAD564 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00C68 80AAD568 AFA40018 */ sw $a0, 0x0018($sp)
/* 00C6C 80AAD56C AFA60020 */ sw $a2, 0x0020($sp)
/* 00C70 80AAD570 14A10006 */ bne $a1, $at, .L80AAD58C
/* 00C74 80AAD574 AFA70024 */ sw $a3, 0x0024($sp)
/* 00C78 80AAD578 8FA50028 */ lw $a1, 0x0028($sp)
/* 00C7C 80AAD57C 3C0480AB */ lui $a0, %hi(D_80AAD64C) ## $a0 = 80AB0000
/* 00C80 80AAD580 2484D64C */ addiu $a0, $a0, %lo(D_80AAD64C) ## $a0 = 80AAD64C
/* 00C84 80AAD584 0C0346BD */ jal Matrix_MultVec3f
/* 00C88 80AAD588 24A50038 */ addiu $a1, $a1, 0x0038 ## $a1 = 00000038
.L80AAD58C:
/* 00C8C 80AAD58C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00C90 80AAD590 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00C94 80AAD594 03E00008 */ jr $ra
/* 00C98 80AAD598 00000000 */ nop

View File

@ -1,22 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .data
.balign 16
glabel En_Mk_InitVars
.word 0x014A0400, 0x00000019, 0x01320000, 0x00000288
.word EnMk_Init
.word EnMk_Destroy
.word EnMk_Update
.word EnMk_Draw
glabel D_80AAD620
.word 0x0A001139, 0x10010000, 0x00000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00010100, 0x001E0028, 0x00000000, 0x00000000
glabel D_80AAD64C
.word 0x447A0000, 0xC2C80000, 0x00000000, 0x00000000, 0x00000000

View File

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80AAD670
.incbin "baserom/ovl_En_Mk", 0xD70, 0x00000100

3
spec
View File

@ -2666,8 +2666,7 @@ endseg
beginseg
name "ovl_En_Mk"
include "build/src/overlays/actors/ovl_En_Mk/z_en_mk.o"
include "build/data/overlays/actors/z_en_mk.data.o"
include "build/data/overlays/actors/z_en_mk.reloc.o"
include "build/src/overlays/actors/ovl_En_Mk/ovl_En_Mk_reloc.o"
endseg
beginseg

View File

@ -170,7 +170,7 @@ s32 func_809F68B0(EnDodojr* this, GlobalContext* globalCtx) {
void func_809F6994(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_06000860);
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, 1, -10.0f);
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, -10.0f);
this->actor.velocity.y = 0.0f;
this->actor.speedXZ = 2.6f;
this->actor.gravity = -0.8f;
@ -179,7 +179,7 @@ void func_809F6994(EnDodojr* this) {
void func_809F6A20(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_060004A0);
Animation_Change(&this->skelAnime, &D_060004A0, 1.0f, 0.0f, lastFrame, 2, -10.0f);
Animation_Change(&this->skelAnime, &D_060004A0, 1.0f, 0.0f, lastFrame, ANIMMODE_ONCE, -10.0f);
this->actor.speedXZ = 0.0f;
this->actor.velocity.x = 0.0f;
this->actor.velocity.z = 0.0f;
@ -194,7 +194,7 @@ void func_809F6A20(EnDodojr* this) {
void func_809F6AC4(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_060005F0);
Animation_Change(&this->skelAnime, &D_060005F0, 1.0f, 0.0f, lastFrame, 0, 0.0f);
Animation_Change(&this->skelAnime, &D_060005F0, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, 0.0f);
this->actor.velocity.y = 0.0f;
this->actor.gravity = -0.8f;
}
@ -202,7 +202,7 @@ void func_809F6AC4(EnDodojr* this) {
void func_809F6B38(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_06000724);
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 0.0f, lastFrame, 0, -10.0f);
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, -10.0f);
this->actor.gravity = -0.8f;
this->unk_1FC = 3;
this->actor.velocity.y = 10.0f;
@ -219,7 +219,7 @@ void func_809F6BBC(EnDodojr* this) {
}
void func_809F6C24(EnDodojr* this) {
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 8.0f, 12.0f, 2, 0.0f);
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 8.0f, 12.0f, ANIMMODE_ONCE, 0.0f);
Audio_PlayActorSound2(this, NA_SE_EN_DODO_M_EAT);
this->actor.speedXZ = 0.0f;
this->actor.velocity.x = 0.0f;
@ -403,7 +403,7 @@ void func_809F73AC(EnDodojr* this, GlobalContext* globalCtx) {
dist = this->actor.world.pos.y - player->actor.world.pos.y;
if (!(dist >= 40.0f)) {
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, 1, -10.0f);
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, -10.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_M_UP);
this->actor.world.pos.y -= 60.0f;
this->actor.flags |= 1;

View File

@ -15,13 +15,14 @@ void EnMk_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnMk_Update(Actor* thisx, GlobalContext* globalCtx);
void EnMk_Draw(Actor* thisx, GlobalContext* globalCtx);
extern UNK_TYPE D_06000368;
extern UNK_TYPE D_06000724;
extern UNK_TYPE D_06000AC0;
extern UNK_TYPE D_06000D88;
extern UNK_TYPE D_06005DF0;
void EnMk_Wait(EnMk* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000368;
extern AnimationHeader D_06000724;
extern AnimationHeader D_06000AC0;
extern AnimationHeader D_06000D88;
extern FlexSkeletonHeader D_06005DF0;
/*
const ActorInit En_Mk_InitVars = {
ACTOR_EN_MK,
ACTORCAT_NPC,
@ -34,7 +35,7 @@ const ActorInit En_Mk_InitVars = {
(ActorFunc)EnMk_Draw,
};
static ColliderCylinderInit D_80AAD620 = {
static ColliderCylinderInit sCylinderInit = {
{
COLTYPE_NONE,
AT_NONE,
@ -53,41 +54,323 @@ static ColliderCylinderInit D_80AAD620 = {
},
{ 30, 40, 0, { 0, 0, 0 } },
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/EnMk_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/EnMk_Destroy.s")
void EnMk_Init(Actor* thisx, GlobalContext* globalCtx) {
EnMk* this = THIS;
s32 swimFlag;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACA40.s")
this->actor.minVelocityY = -4.0f;
this->actor.gravity = -1.0f;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06005DF0, &D_06000D88, &this->jointTable, &this->morphTable, 13);
Animation_PlayLoop(&this->skelAnime, &D_06000D88);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
this->actor.colChkInfo.mass = 0xFF;
Actor_SetScale(&this->actor, 0.01f);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACA94.s")
this->actionFunc = EnMk_Wait;
this->flags = 0;
this->swimFlag = 0;
this->actor.targetMode = 6;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACB14.s")
if (gSaveContext.itemGetInf[1] & 1) {
this->flags |= 4;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACB6C.s")
void EnMk_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnMk* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACBAC.s")
Collider_DestroyCylinder(globalCtx, &this->collider);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACC04.s")
void func_80AACA40(EnMk* this, GlobalContext* globalCtx) {
if (func_8002F334(&this->actor, globalCtx)) {
this->actor.flags &= 0xFFFEFFFF;
this->actionFunc = EnMk_Wait;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACCA0.s")
this->flags |= 1;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACD48.s")
void func_80AACA94(EnMk* this, GlobalContext* globalCtx) {
if (Actor_HasParent(this, globalCtx) != 0) {
this->actor.parent = NULL;
this->actionFunc = func_80AACA40;
func_80088AA0(240);
gSaveContext.eventInf[1] &= ~1;
} else {
func_8002F434(&this->actor, globalCtx, GI_EYEDROPS, 10000.0f, 50.0f);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACE2C.s")
void func_80AACB14(EnMk* this, GlobalContext* globalCtx) {
if (func_8002F334(&this->actor, globalCtx)) {
this->actionFunc = func_80AACA94;
func_8002F434(&this->actor, globalCtx, GI_EYEDROPS, 10000.0f, 50.0f);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACEE8.s")
void func_80AACB6C(EnMk* this, GlobalContext* globalCtx) {
if (func_8002F194(&this->actor, globalCtx)) {
this->actionFunc = func_80AACB14;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AACFA0.s")
this->flags |= 1;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AAD014.s")
void func_80AACBAC(EnMk* this, GlobalContext* globalCtx) {
if (this->timer > 0) {
this->timer--;
this->actor.shape.rot.y -= 0x800;
} else {
this->actionFunc = func_80AACB6C;
func_8010B720(globalCtx, 0x4030);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AAD080.s")
void func_80AACC04(EnMk* this, GlobalContext* globalCtx) {
if (this->timer > 0) {
this->timer--;
} else {
this->timer = 16;
this->actionFunc = func_80AACBAC;
Animation_Change(&this->skelAnime, &D_06000D88, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000D88), ANIMMODE_LOOP,
-4.0f);
this->flags &= ~2;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/EnMk_Update.s")
void func_80AACCA0(EnMk* this, GlobalContext* globalCtx) {
if (this->timer > 0) {
this->timer--;
this->actor.shape.rot.y += 0x800;
} else {
this->timer = 120;
this->actionFunc = func_80AACC04;
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000724), ANIMMODE_LOOP,
-4.0f);
this->flags &= ~2;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AAD518.s")
void func_80AACD48(EnMk* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/func_80AAD55C.s")
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && (func_80106BC8(globalCtx) != 0)) {
func_80106CCC(globalCtx);
this->actionFunc = func_80AACCA0;
globalCtx->msgCtx.msgMode = 0x37;
player->exchangeItemId = EXCH_ITEM_NONE;
this->timer = 16;
Animation_Change(&this->skelAnime, &D_06000D88, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000D88), ANIMMODE_LOOP,
-4.0f);
this->flags &= ~2;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mk/EnMk_Draw.s")
this->flags |= 1;
}
void func_80AACE2C(EnMk* this, GlobalContext* globalCtx) {
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && (func_80106BC8(globalCtx) != 0)) {
func_8010B720(globalCtx, 0x4001);
Animation_Change(&this->skelAnime, &D_06000AC0, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000AC0), ANIMMODE_ONCE,
-4.0f);
this->flags &= ~2;
this->actionFunc = func_80AACD48;
}
this->flags |= 1;
}
void func_80AACEE8(EnMk* this, GlobalContext* globalCtx) {
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && (func_80106BC8(globalCtx) != 0)) {
func_8010B720(globalCtx, 0x4000);
Animation_Change(&this->skelAnime, &D_06000AC0, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000AC0), ANIMMODE_LOOP,
-4.0f);
this->flags &= ~2;
this->actionFunc = func_80AACE2C;
}
this->flags |= 1;
}
void func_80AACFA0(EnMk* this, GlobalContext* globalCtx) {
if (Actor_HasParent(&this->actor, globalCtx)) {
this->actor.parent = NULL;
this->actionFunc = func_80AACA40;
gSaveContext.itemGetInf[1] |= 1;
} else {
func_8002F434(&this->actor, globalCtx, GI_HEART_PIECE, 10000.0f, 50.0f);
}
}
void func_80AAD014(EnMk* this, GlobalContext* globalCtx) {
if (func_8002F334(&this->actor, globalCtx) != 0) {
this->actionFunc = func_80AACFA0;
func_8002F434(&this->actor, globalCtx, GI_HEART_PIECE, 10000.0f, 50.0f);
}
this->flags |= 1;
}
void EnMk_Wait(EnMk* this, GlobalContext* globalCtx) {
s16 angle;
s32 swimFlag;
Player* player = PLAYER;
s32 playerExchangeItem;
if (func_8002F194(&this->actor, globalCtx) != 0) {
playerExchangeItem = func_8002F368(globalCtx);
if (this->actor.textId != 0x4018) {
player->actor.textId = this->actor.textId;
this->actionFunc = func_80AACA40;
} else {
if (INV_CONTENT(ITEM_ODD_MUSHROOM) == ITEM_EYEDROPS) {
player->actor.textId = 0x4032;
this->actionFunc = func_80AACA40;
} else {
switch (playerExchangeItem) {
case EXCH_ITEM_NONE:
if (this->swimFlag >= 8) {
if (gSaveContext.itemGetInf[1] & 1) {
player->actor.textId = 0x4075;
this->actionFunc = func_80AACA40;
} else {
player->actor.textId = 0x4074;
this->actionFunc = func_80AAD014;
this->swimFlag = 0;
}
} else {
if (this->swimFlag == 0) {
player->actor.textId = 0x4018;
this->actionFunc = func_80AACA40;
} else {
player->actor.textId = 0x406C + this->swimFlag;
this->actionFunc = func_80AACA40;
}
}
break;
case EXCH_ITEM_FROG:
player->actor.textId = 0x4019;
this->actionFunc = func_80AACEE8;
Animation_Change(&this->skelAnime, &D_06000368, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000368),
ANIMMODE_ONCE, -4.0f);
this->flags &= ~2;
gSaveContext.timer2State = 0;
func_80078884(NA_SE_SY_TRE_BOX_APPEAR);
break;
default:
player->actor.textId = 0x4018;
this->actionFunc = func_80AACA40;
break;
}
}
}
} else {
this->actor.textId = Text_GetFaceReaction(globalCtx, 0x1A);
if (this->actor.textId == 0) {
this->actor.textId = 0x4018;
}
angle = this->actor.yawTowardsPlayer - this->actor.shape.rot.y;
if ((ABS(angle) < 0x2151) && (this->actor.xzDistToPlayer < 100.0f)) {
func_8002F298(&this->actor, globalCtx, 100.0f, EXCH_ITEM_FROG);
this->flags |= 1;
}
}
}
void EnMk_Update(Actor* thisx, GlobalContext* globalCtx) {
EnMk* this = THIS;
s32 pad;
Vec3s vec;
Player* player;
s16 swimFlag;
Collider_UpdateCylinder(&this->actor, &this->collider);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
Actor_MoveForward(&this->actor);
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4);
if ((!(this->flags & 2)) && (SkelAnime_Update(&this->skelAnime))) {
this->flags |= 2;
}
this->actionFunc(this, globalCtx);
if (this->flags & 1) {
func_80038290(globalCtx, &this->actor, &this->headRotation, &vec, this->actor.focus.pos);
} else {
Math_SmoothStepToS(&this->headRotation.x, 0, 6, 6200, 100);
Math_SmoothStepToS(&this->headRotation.y, 0, 6, 6200, 100);
}
player = PLAYER;
if (this->flags & 8) {
if (!(player->stateFlags2 & 0x400)) {
this->flags &= ~8;
}
} else {
if (player->currentBoots == PLAYER_BOOTS_IRON) {
this->flags |= 8;
} else if (player->stateFlags2 & 0x400) {
swimFlag = player->actor.yDistToWater;
if (swimFlag > 0) {
if (swimFlag >= 320) {
if (swimFlag >= 355) {
swimFlag = 8;
} else {
swimFlag = 7;
}
} else if (swimFlag < 80) {
swimFlag = 1;
} else {
swimFlag *= 0.025f;
}
if (this->swimFlag < swimFlag) {
this->swimFlag = swimFlag;
if ((!(this->flags & 4)) && (this->swimFlag >= 8)) {
this->flags |= 4;
func_80078884(NA_SE_SY_CORRECT_CHIME);
}
}
}
}
}
}
s32 EnMk_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) {
EnMk* this = THIS;
if (limbIndex == 11) {
rot->y -= this->headRotation.y;
rot->z += this->headRotation.x;
}
return 0;
}
void EnMk_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx) {
static Vec3f D_80AAD64C = { 1000.0f, -100.0f, 0.0f };
if (limbIndex == 11) {
Matrix_MultVec3f(&D_80AAD64C, &thisx->focus);
}
}
void EnMk_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnMk* this = THIS;
func_800943C8(globalCtx->state.gfxCtx);
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, this->skelAnime.dListCount,
EnMk_OverrideLimbDraw, EnMk_PostLimbDraw, &this->actor);
}

View File

@ -6,9 +6,19 @@
struct EnMk;
typedef void (*EnMkActionFunc)(struct EnMk*, GlobalContext*);
typedef struct EnMk {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x13C];
/* 0x014C */ ColliderCylinder collider;
/* 0x0198 */ SkelAnime skelAnime;
/* 0x01DC */ Vec3s jointTable[13];
/* 0x022A */ Vec3s morphTable[13];
/* 0x0278 */ Vec3s headRotation; // Used to rotate the man's head towards Link
/* 0x027E */ u16 flags;
/* 0x0280 */ s16 swimFlag;
/* 0x0282 */ u16 timer;
/* 0x0284 */ EnMkActionFunc actionFunc;
} EnMk; // size = 0x0288
extern const ActorInit En_Mk_InitVars;