This commit is contained in:
Ethan Roseman 2020-10-17 22:27:25 -04:00
parent 57f56dd257
commit a8e550dd9a
497 changed files with 49546 additions and 5 deletions

View File

@ -0,0 +1,6 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80246B2C_16C8E0
/* 17540C 80246B2C 03E00008 */ jr $ra
/* 175410 80246B30 00000000 */ nop

View File

@ -0,0 +1,6 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel pause_cleanup_16C8E0
/* 172FE8 80244708 03E00008 */ jr $ra
/* 172FEC 8024470C 00000000 */ nop

View File

@ -0,0 +1,37 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100
/* 317020 802BD100 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 317024 802BD104 AFB10014 */ sw $s1, 0x14($sp)
/* 317028 802BD108 0080882D */ daddu $s1, $a0, $zero
/* 31702C 802BD10C AFB00010 */ sw $s0, 0x10($sp)
/* 317030 802BD110 0000802D */ daddu $s0, $zero, $zero
/* 317034 802BD114 AFBF0018 */ sw $ra, 0x18($sp)
.L802BD118:
/* 317038 802BD118 0C051734 */ jal get_trigger_by_id
/* 31703C 802BD11C 0200202D */ daddu $a0, $s0, $zero
/* 317040 802BD120 0040182D */ daddu $v1, $v0, $zero
/* 317044 802BD124 1060000B */ beqz $v1, .L802BD154
/* 317048 802BD128 26100001 */ addiu $s0, $s0, 1
/* 31704C 802BD12C 8C620000 */ lw $v0, ($v1)
/* 317050 802BD130 30420100 */ andi $v0, $v0, 0x100
/* 317054 802BD134 10400007 */ beqz $v0, .L802BD154
/* 317058 802BD138 00000000 */ nop
/* 31705C 802BD13C 8C620008 */ lw $v0, 8($v1)
/* 317060 802BD140 14510005 */ bne $v0, $s1, .L802BD158
/* 317064 802BD144 2A020040 */ slti $v0, $s0, 0x40
/* 317068 802BD148 8C62002C */ lw $v0, 0x2c($v1)
/* 31706C 802BD14C 080AF458 */ j .L802BD160
/* 317070 802BD150 00000000 */ nop
.L802BD154:
/* 317074 802BD154 2A020040 */ slti $v0, $s0, 0x40
.L802BD158:
/* 317078 802BD158 1440FFEF */ bnez $v0, .L802BD118
/* 31707C 802BD15C 0000102D */ daddu $v0, $zero, $zero
.L802BD160:
/* 317080 802BD160 8FBF0018 */ lw $ra, 0x18($sp)
/* 317084 802BD164 8FB10014 */ lw $s1, 0x14($sp)
/* 317088 802BD168 8FB00010 */ lw $s0, 0x10($sp)
/* 31708C 802BD16C 03E00008 */ jr $ra
/* 317090 802BD170 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,9 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD174
/* 317094 802BD174 24020018 */ addiu $v0, $zero, 0x18
/* 317098 802BD178 A48200A8 */ sh $v0, 0xa8($a0)
/* 31709C 802BD17C 24020014 */ addiu $v0, $zero, 0x14
/* 3170A0 802BD180 03E00008 */ jr $ra
/* 3170A4 802BD184 A48200A6 */ sh $v0, 0xa6($a0)

View File

@ -0,0 +1,23 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD188
/* 3170A8 802BD188 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3170AC 802BD18C AFBF0014 */ sw $ra, 0x14($sp)
/* 3170B0 802BD190 AFB00010 */ sw $s0, 0x10($sp)
/* 3170B4 802BD194 8C90014C */ lw $s0, 0x14c($a0)
/* 3170B8 802BD198 2402FFFF */ addiu $v0, $zero, -1
/* 3170BC 802BD19C 3C01802C */ lui $at, 0x802c
/* 3170C0 802BD1A0 AC22DF60 */ sw $v0, -0x20a0($at)
/* 3170C4 802BD1A4 10A00003 */ beqz $a1, .L802BD1B4
/* 3170C8 802BD1A8 00000000 */ nop
/* 3170CC 802BD1AC 0C03BB31 */ jal func_800EECC4
/* 3170D0 802BD1B0 0200202D */ daddu $a0, $s0, $zero
.L802BD1B4:
/* 3170D4 802BD1B4 0C03BB3A */ jal func_800EECE8
/* 3170D8 802BD1B8 0200202D */ daddu $a0, $s0, $zero
/* 3170DC 802BD1BC 8FBF0014 */ lw $ra, 0x14($sp)
/* 3170E0 802BD1C0 8FB00010 */ lw $s0, 0x10($sp)
/* 3170E4 802BD1C4 0002102B */ sltu $v0, $zero, $v0
/* 3170E8 802BD1C8 03E00008 */ jr $ra
/* 3170EC 802BD1CC 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,247 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD1D0
/* 3170F0 802BD1D0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 3170F4 802BD1D4 AFB00018 */ sw $s0, 0x18($sp)
/* 3170F8 802BD1D8 3C108011 */ lui $s0, %hi(gPlayerData)
/* 3170FC 802BD1DC 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 317100 802BD1E0 AFBF0028 */ sw $ra, 0x28($sp)
/* 317104 802BD1E4 AFB30024 */ sw $s3, 0x24($sp)
/* 317108 802BD1E8 AFB20020 */ sw $s2, 0x20($sp)
/* 31710C 802BD1EC AFB1001C */ sw $s1, 0x1c($sp)
/* 317110 802BD1F0 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 317114 802BD1F4 8C91014C */ lw $s1, 0x14c($a0)
/* 317118 802BD1F8 10A00009 */ beqz $a1, .L802BD220
/* 31711C 802BD1FC 0220202D */ daddu $a0, $s1, $zero
/* 317120 802BD200 0C03AE2A */ jal enable_partner_walking
/* 317124 802BD204 24050001 */ addiu $a1, $zero, 1
/* 317128 802BD208 3C04802C */ lui $a0, 0x802c
/* 31712C 802BD20C 8C84DD88 */ lw $a0, -0x2278($a0)
/* 317130 802BD210 0C00A580 */ jal mem_clear
/* 317134 802BD214 2405001C */ addiu $a1, $zero, 0x1c
/* 317138 802BD218 3C018011 */ lui $at, 0x8011
/* 31713C 802BD21C AC20C954 */ sw $zero, -0x36ac($at)
.L802BD220:
/* 317140 802BD220 3C138011 */ lui $s3, 0x8011
/* 317144 802BD224 2673C954 */ addiu $s3, $s3, -0x36ac
/* 317148 802BD228 8E0202F8 */ lw $v0, 0x2f8($s0)
/* 31714C 802BD22C 8E720000 */ lw $s2, ($s3)
/* 317150 802BD230 24420001 */ addiu $v0, $v0, 1
/* 317154 802BD234 16400007 */ bnez $s2, .L802BD254
/* 317158 802BD238 AE0202F8 */ sw $v0, 0x2f8($s0)
/* 31715C 802BD23C 0C03AE8F */ jal func_800EBA3C
/* 317160 802BD240 0220202D */ daddu $a0, $s1, $zero
/* 317164 802BD244 0C03AED0 */ jal func_800EBB40
/* 317168 802BD248 0220202D */ daddu $a0, $s1, $zero
/* 31716C 802BD24C 080AF551 */ j .L802BD544
/* 317170 802BD250 0000102D */ daddu $v0, $zero, $zero
.L802BD254:
/* 317174 802BD254 3C10802C */ lui $s0, 0x802c
/* 317178 802BD258 2610DD88 */ addiu $s0, $s0, -0x2278
/* 31717C 802BD25C 8E040000 */ lw $a0, ($s0)
/* 317180 802BD260 8C830004 */ lw $v1, 4($a0)
/* 317184 802BD264 24050001 */ addiu $a1, $zero, 1
/* 317188 802BD268 10650030 */ beq $v1, $a1, .L802BD32C
/* 31718C 802BD26C 28620002 */ slti $v0, $v1, 2
/* 317190 802BD270 10400005 */ beqz $v0, .L802BD288
/* 317194 802BD274 24020002 */ addiu $v0, $zero, 2
/* 317198 802BD278 10600009 */ beqz $v1, .L802BD2A0
/* 31719C 802BD27C 0000102D */ daddu $v0, $zero, $zero
/* 3171A0 802BD280 080AF551 */ j .L802BD544
/* 3171A4 802BD284 00000000 */ nop
.L802BD288:
/* 3171A8 802BD288 1062009A */ beq $v1, $v0, .L802BD4F4
/* 3171AC 802BD28C 24020003 */ addiu $v0, $zero, 3
/* 3171B0 802BD290 106200A0 */ beq $v1, $v0, .L802BD514
/* 3171B4 802BD294 0000102D */ daddu $v0, $zero, $zero
/* 3171B8 802BD298 080AF551 */ j .L802BD544
/* 3171BC 802BD29C 00000000 */ nop
.L802BD2A0:
/* 3171C0 802BD2A0 AC850004 */ sw $a1, 4($a0)
/* 3171C4 802BD2A4 8E220000 */ lw $v0, ($s1)
/* 3171C8 802BD2A8 AC820008 */ sw $v0, 8($a0)
/* 3171CC 802BD2AC C62C0038 */ lwc1 $f12, 0x38($s1)
/* 3171D0 802BD2B0 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 3171D4 802BD2B4 8E460048 */ lw $a2, 0x48($s2)
/* 3171D8 802BD2B8 0C00A7B5 */ jal dist2D
/* 3171DC 802BD2BC 8E470050 */ lw $a3, 0x50($s2)
/* 3171E0 802BD2C0 8E020000 */ lw $v0, ($s0)
/* 3171E4 802BD2C4 46000005 */ abs.s $f0, $f0
/* 3171E8 802BD2C8 E440000C */ swc1 $f0, 0xc($v0)
/* 3171EC 802BD2CC C64C0048 */ lwc1 $f12, 0x48($s2)
/* 3171F0 802BD2D0 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 3171F4 802BD2D4 8E260038 */ lw $a2, 0x38($s1)
/* 3171F8 802BD2D8 0C00A720 */ jal atan2
/* 3171FC 802BD2DC 8E270040 */ lw $a3, 0x40($s1)
/* 317200 802BD2E0 3C040004 */ lui $a0, 4
/* 317204 802BD2E4 24020078 */ addiu $v0, $zero, 0x78
/* 317208 802BD2E8 8E030000 */ lw $v1, ($s0)
/* 31720C 802BD2EC 3C0140C0 */ lui $at, 0x40c0
/* 317210 802BD2F0 44811000 */ mtc1 $at, $f2
/* 317214 802BD2F4 3C014248 */ lui $at, 0x4248
/* 317218 802BD2F8 44812000 */ mtc1 $at, $f4
/* 31721C 802BD2FC 34840148 */ ori $a0, $a0, 0x148
/* 317220 802BD300 E4600010 */ swc1 $f0, 0x10($v1)
/* 317224 802BD304 E4620014 */ swc1 $f2, 0x14($v1)
/* 317228 802BD308 E4640018 */ swc1 $f4, 0x18($v1)
/* 31722C 802BD30C AC620000 */ sw $v0, ($v1)
/* 317230 802BD310 8E220000 */ lw $v0, ($s1)
/* 317234 802BD314 2403FDFF */ addiu $v1, $zero, -0x201
/* 317238 802BD318 00441025 */ or $v0, $v0, $a0
/* 31723C 802BD31C 00431024 */ and $v0, $v0, $v1
/* 317240 802BD320 AE220000 */ sw $v0, ($s1)
/* 317244 802BD324 3C10802C */ lui $s0, 0x802c
/* 317248 802BD328 2610DD88 */ addiu $s0, $s0, -0x2278
.L802BD32C:
/* 31724C 802BD32C 8E020000 */ lw $v0, ($s0)
/* 317250 802BD330 3C0140C9 */ lui $at, 0x40c9
/* 317254 802BD334 34210FD0 */ ori $at, $at, 0xfd0
/* 317258 802BD338 44810000 */ mtc1 $at, $f0
/* 31725C 802BD33C C44C0010 */ lwc1 $f12, 0x10($v0)
/* 317260 802BD340 46006302 */ mul.s $f12, $f12, $f0
/* 317264 802BD344 00000000 */ nop
/* 317268 802BD348 27A50010 */ addiu $a1, $sp, 0x10
/* 31726C 802BD34C 3C0143B4 */ lui $at, 0x43b4
/* 317270 802BD350 44810000 */ mtc1 $at, $f0
/* 317274 802BD354 27A60014 */ addiu $a2, $sp, 0x14
/* 317278 802BD358 0C00A82D */ jal sin_cos_rad
/* 31727C 802BD35C 46006303 */ div.s $f12, $f12, $f0
/* 317280 802BD360 8E020000 */ lw $v0, ($s0)
/* 317284 802BD364 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 317288 802BD368 C440000C */ lwc1 $f0, 0xc($v0)
/* 31728C 802BD36C 46001082 */ mul.s $f2, $f2, $f0
/* 317290 802BD370 00000000 */ nop
/* 317294 802BD374 C6400048 */ lwc1 $f0, 0x48($s2)
/* 317298 802BD378 46020000 */ add.s $f0, $f0, $f2
/* 31729C 802BD37C E6200038 */ swc1 $f0, 0x38($s1)
/* 3172A0 802BD380 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 3172A4 802BD384 C440000C */ lwc1 $f0, 0xc($v0)
/* 3172A8 802BD388 46001082 */ mul.s $f2, $f2, $f0
/* 3172AC 802BD38C 00000000 */ nop
/* 3172B0 802BD390 C6400050 */ lwc1 $f0, 0x50($s2)
/* 3172B4 802BD394 46020001 */ sub.s $f0, $f0, $f2
/* 3172B8 802BD398 E6200040 */ swc1 $f0, 0x40($s1)
/* 3172BC 802BD39C C4400010 */ lwc1 $f0, 0x10($v0)
/* 3172C0 802BD3A0 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 3172C4 802BD3A4 0C00A6C9 */ jal clamp_angle
/* 3172C8 802BD3A8 460C0301 */ sub.s $f12, $f0, $f12
/* 3172CC 802BD3AC 8E100000 */ lw $s0, ($s0)
/* 3172D0 802BD3B0 3C0141A0 */ lui $at, 0x41a0
/* 3172D4 802BD3B4 44811000 */ mtc1 $at, $f2
/* 3172D8 802BD3B8 C604000C */ lwc1 $f4, 0xc($s0)
/* 3172DC 802BD3BC 4604103C */ c.lt.s $f2, $f4
/* 3172E0 802BD3C0 00000000 */ nop
/* 3172E4 802BD3C4 45000005 */ bc1f .L802BD3DC
/* 3172E8 802BD3C8 E6000010 */ swc1 $f0, 0x10($s0)
/* 3172EC 802BD3CC 3C013F80 */ lui $at, 0x3f80
/* 3172F0 802BD3D0 44810000 */ mtc1 $at, $f0
/* 3172F4 802BD3D4 080AF502 */ j .L802BD408
/* 3172F8 802BD3D8 46002001 */ sub.s $f0, $f4, $f0
.L802BD3DC:
/* 3172FC 802BD3DC 3C014198 */ lui $at, 0x4198
/* 317300 802BD3E0 44810000 */ mtc1 $at, $f0
/* 317304 802BD3E4 00000000 */ nop
/* 317308 802BD3E8 4600203C */ c.lt.s $f4, $f0
/* 31730C 802BD3EC 00000000 */ nop
/* 317310 802BD3F0 45000006 */ bc1f .L802BD40C
/* 317314 802BD3F4 00000000 */ nop
/* 317318 802BD3F8 3C013F80 */ lui $at, 0x3f80
/* 31731C 802BD3FC 44810000 */ mtc1 $at, $f0
/* 317320 802BD400 00000000 */ nop
/* 317324 802BD404 46002000 */ add.s $f0, $f4, $f0
.L802BD408:
/* 317328 802BD408 E600000C */ swc1 $f0, 0xc($s0)
.L802BD40C:
/* 31732C 802BD40C 3C10802C */ lui $s0, 0x802c
/* 317330 802BD410 2610DD88 */ addiu $s0, $s0, -0x2278
/* 317334 802BD414 8E020000 */ lw $v0, ($s0)
/* 317338 802BD418 3C0140C9 */ lui $at, 0x40c9
/* 31733C 802BD41C 34210FD0 */ ori $at, $at, 0xfd0
/* 317340 802BD420 44810000 */ mtc1 $at, $f0
/* 317344 802BD424 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 317348 802BD428 46006302 */ mul.s $f12, $f12, $f0
/* 31734C 802BD42C 00000000 */ nop
/* 317350 802BD430 3C0143B4 */ lui $at, 0x43b4
/* 317354 802BD434 4481A000 */ mtc1 $at, $f20
/* 317358 802BD438 0C00A85B */ jal sin_rad
/* 31735C 802BD43C 46146303 */ div.s $f12, $f12, $f20
/* 317360 802BD440 8E020000 */ lw $v0, ($s0)
/* 317364 802BD444 3C014040 */ lui $at, 0x4040
/* 317368 802BD448 44812000 */ mtc1 $at, $f4
/* 31736C 802BD44C C4420018 */ lwc1 $f2, 0x18($v0)
/* 317370 802BD450 46041080 */ add.s $f2, $f2, $f4
/* 317374 802BD454 3C014316 */ lui $at, 0x4316
/* 317378 802BD458 44813000 */ mtc1 $at, $f6
/* 31737C 802BD45C 00000000 */ nop
/* 317380 802BD460 4602303C */ c.lt.s $f6, $f2
/* 317384 802BD464 E4420018 */ swc1 $f2, 0x18($v0)
/* 317388 802BD468 46040082 */ mul.s $f2, $f0, $f4
/* 31738C 802BD46C 00000000 */ nop
/* 317390 802BD470 45030001 */ bc1tl .L802BD478
/* 317394 802BD474 E4460018 */ swc1 $f6, 0x18($v0)
.L802BD478:
/* 317398 802BD478 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31739C 802BD47C 46020000 */ add.s $f0, $f0, $f2
/* 3173A0 802BD480 8E020000 */ lw $v0, ($s0)
/* 3173A4 802BD484 E620003C */ swc1 $f0, 0x3c($s1)
/* 3173A8 802BD488 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 3173AC 802BD48C 0C00A6C9 */ jal clamp_angle
/* 3173B0 802BD490 460CA301 */ sub.s $f12, $f20, $f12
/* 3173B4 802BD494 8E020000 */ lw $v0, ($s0)
/* 3173B8 802BD498 E6200034 */ swc1 $f0, 0x34($s1)
/* 3173BC 802BD49C C4400014 */ lwc1 $f0, 0x14($v0)
/* 3173C0 802BD4A0 3C01802C */ lui $at, 0x802c
/* 3173C4 802BD4A4 D422DE80 */ ldc1 $f2, -0x2180($at)
/* 3173C8 802BD4A8 46000021 */ cvt.d.s $f0, $f0
/* 3173CC 802BD4AC 46220000 */ add.d $f0, $f0, $f2
/* 3173D0 802BD4B0 3C014220 */ lui $at, 0x4220
/* 3173D4 802BD4B4 44811000 */ mtc1 $at, $f2
/* 3173D8 802BD4B8 46200020 */ cvt.s.d $f0, $f0
/* 3173DC 802BD4BC 4600103C */ c.lt.s $f2, $f0
/* 3173E0 802BD4C0 00000000 */ nop
/* 3173E4 802BD4C4 45000002 */ bc1f .L802BD4D0
/* 3173E8 802BD4C8 E4400014 */ swc1 $f0, 0x14($v0)
/* 3173EC 802BD4CC E4420014 */ swc1 $f2, 0x14($v0)
.L802BD4D0:
/* 3173F0 802BD4D0 8E030000 */ lw $v1, ($s0)
/* 3173F4 802BD4D4 8C620000 */ lw $v0, ($v1)
/* 3173F8 802BD4D8 2442FFFF */ addiu $v0, $v0, -1
/* 3173FC 802BD4DC 14400018 */ bnez $v0, .L802BD540
/* 317400 802BD4E0 AC620000 */ sw $v0, ($v1)
/* 317404 802BD4E4 8C620004 */ lw $v0, 4($v1)
/* 317408 802BD4E8 24420001 */ addiu $v0, $v0, 1
/* 31740C 802BD4EC 080AF550 */ j .L802BD540
/* 317410 802BD4F0 AC620004 */ sw $v0, 4($v1)
.L802BD4F4:
/* 317414 802BD4F4 8C820008 */ lw $v0, 8($a0)
/* 317418 802BD4F8 AE220000 */ sw $v0, ($s1)
/* 31741C 802BD4FC 8C820004 */ lw $v0, 4($a0)
/* 317420 802BD500 2403001E */ addiu $v1, $zero, 0x1e
/* 317424 802BD504 AC830000 */ sw $v1, ($a0)
/* 317428 802BD508 24420001 */ addiu $v0, $v0, 1
/* 31742C 802BD50C 080AF550 */ j .L802BD540
/* 317430 802BD510 AC820004 */ sw $v0, 4($a0)
.L802BD514:
/* 317434 802BD514 0C03AE8F */ jal func_800EBA3C
/* 317438 802BD518 0220202D */ daddu $a0, $s1, $zero
/* 31743C 802BD51C 0C03AED0 */ jal func_800EBB40
/* 317440 802BD520 0220202D */ daddu $a0, $s1, $zero
/* 317444 802BD524 8E030000 */ lw $v1, ($s0)
/* 317448 802BD528 8C620000 */ lw $v0, ($v1)
/* 31744C 802BD52C 2442FFFF */ addiu $v0, $v0, -1
/* 317450 802BD530 14400003 */ bnez $v0, .L802BD540
/* 317454 802BD534 AC620000 */ sw $v0, ($v1)
/* 317458 802BD538 AC600004 */ sw $zero, 4($v1)
/* 31745C 802BD53C AE600000 */ sw $zero, ($s3)
.L802BD540:
/* 317460 802BD540 0000102D */ daddu $v0, $zero, $zero
.L802BD544:
/* 317464 802BD544 8FBF0028 */ lw $ra, 0x28($sp)
/* 317468 802BD548 8FB30024 */ lw $s3, 0x24($sp)
/* 31746C 802BD54C 8FB20020 */ lw $s2, 0x20($sp)
/* 317470 802BD550 8FB1001C */ lw $s1, 0x1c($sp)
/* 317474 802BD554 8FB00018 */ lw $s0, 0x18($sp)
/* 317478 802BD558 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 31747C 802BD55C 03E00008 */ jr $ra
/* 317480 802BD560 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD564
/* 317484 802BD564 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 317488 802BD568 3C058011 */ lui $a1, 0x8011
/* 31748C 802BD56C 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 317490 802BD570 AFBF0010 */ sw $ra, 0x10($sp)
/* 317494 802BD574 8CA20000 */ lw $v0, ($a1)
/* 317498 802BD578 10400008 */ beqz $v0, .L802BD59C
/* 31749C 802BD57C 00000000 */ nop
/* 3174A0 802BD580 3C03802C */ lui $v1, 0x802c
/* 3174A4 802BD584 8C63DD88 */ lw $v1, -0x2278($v1)
/* 3174A8 802BD588 8C620008 */ lw $v0, 8($v1)
/* 3174AC 802BD58C ACA00000 */ sw $zero, ($a1)
/* 3174B0 802BD590 AC820000 */ sw $v0, ($a0)
/* 3174B4 802BD594 0C03BD17 */ jal clear_partner_move_history
/* 3174B8 802BD598 AC600004 */ sw $zero, 4($v1)
.L802BD59C:
/* 3174BC 802BD59C 8FBF0010 */ lw $ra, 0x10($sp)
/* 3174C0 802BD5A0 03E00008 */ jr $ra
/* 3174C4 802BD5A4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,18 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD5A8
/* 3174C8 802BD5A8 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 3174CC 802BD5AC 8042EBB0 */ lb $v0, %lo(D_8010EBB0)($v0)
/* 3174D0 802BD5B0 14400005 */ bnez $v0, .L802BD5C8
/* 3174D4 802BD5B4 24031000 */ addiu $v1, $zero, 0x1000
/* 3174D8 802BD5B8 8C820000 */ lw $v0, ($a0)
/* 3174DC 802BD5BC 30421800 */ andi $v0, $v0, 0x1800
/* 3174E0 802BD5C0 10430003 */ beq $v0, $v1, .L802BD5D0
/* 3174E4 802BD5C4 00000000 */ nop
.L802BD5C8:
/* 3174E8 802BD5C8 03E00008 */ jr $ra
/* 3174EC 802BD5CC 0000102D */ daddu $v0, $zero, $zero
.L802BD5D0:
/* 3174F0 802BD5D0 03E00008 */ jr $ra
/* 3174F4 802BD5D4 24020001 */ addiu $v0, $zero, 1

View File

@ -0,0 +1,381 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD5D8
/* 3174F8 802BD5D8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 3174FC 802BD5DC AFB10014 */ sw $s1, 0x14($sp)
/* 317500 802BD5E0 0080882D */ daddu $s1, $a0, $zero
/* 317504 802BD5E4 AFB00010 */ sw $s0, 0x10($sp)
/* 317508 802BD5E8 3C108011 */ lui $s0, %hi(gPlayerStatus)
/* 31750C 802BD5EC 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus)
/* 317510 802BD5F0 AFBF0024 */ sw $ra, 0x24($sp)
/* 317514 802BD5F4 AFB40020 */ sw $s4, 0x20($sp)
/* 317518 802BD5F8 AFB3001C */ sw $s3, 0x1c($sp)
/* 31751C 802BD5FC AFB20018 */ sw $s2, 0x18($sp)
/* 317520 802BD600 10A0001C */ beqz $a1, .L802BD674
/* 317524 802BD604 8E32014C */ lw $s2, 0x14c($s1)
/* 317528 802BD608 0C0AF559 */ jal func_802BD564
/* 31752C 802BD60C 0240202D */ daddu $a0, $s2, $zero
/* 317530 802BD610 3C04802C */ lui $a0, 0x802c
/* 317534 802BD614 2484DF30 */ addiu $a0, $a0, -0x20d0
/* 317538 802BD618 3C01802C */ lui $at, 0x802c
/* 31753C 802BD61C AC20DF64 */ sw $zero, -0x209c($at)
/* 317540 802BD620 AC800000 */ sw $zero, ($a0)
/* 317544 802BD624 8E020004 */ lw $v0, 4($s0)
/* 317548 802BD628 3C05802C */ lui $a1, 0x802c
/* 31754C 802BD62C 24A5DF34 */ addiu $a1, $a1, -0x20cc
/* 317550 802BD630 30420020 */ andi $v0, $v0, 0x20
/* 317554 802BD634 10400008 */ beqz $v0, .L802BD658
/* 317558 802BD638 ACA00000 */ sw $zero, ($a1)
/* 31755C 802BD63C 3C02802B */ lui $v0, 0x802b
/* 317560 802BD640 8C4279A8 */ lw $v0, 0x79a8($v0)
/* 317564 802BD644 8C430000 */ lw $v1, ($v0)
/* 317568 802BD648 24020001 */ addiu $v0, $zero, 1
/* 31756C 802BD64C AC820000 */ sw $v0, ($a0)
/* 317570 802BD650 3C01802C */ lui $at, 0x802c
/* 317574 802BD654 AC23DF38 */ sw $v1, -0x20c8($at)
.L802BD658:
/* 317578 802BD658 8E020004 */ lw $v0, 4($s0)
/* 31757C 802BD65C 30420010 */ andi $v0, $v0, 0x10
/* 317580 802BD660 10400002 */ beqz $v0, .L802BD66C
/* 317584 802BD664 24020001 */ addiu $v0, $zero, 1
/* 317588 802BD668 ACA20000 */ sw $v0, ($a1)
.L802BD66C:
/* 31758C 802BD66C 24020028 */ addiu $v0, $zero, 0x28
/* 317590 802BD670 AE220070 */ sw $v0, 0x70($s1)
.L802BD674:
/* 317594 802BD674 8E230070 */ lw $v1, 0x70($s1)
/* 317598 802BD678 24130001 */ addiu $s3, $zero, 1
/* 31759C 802BD67C 10730053 */ beq $v1, $s3, .L802BD7CC
/* 3175A0 802BD680 28620002 */ slti $v0, $v1, 2
/* 3175A4 802BD684 10400005 */ beqz $v0, .L802BD69C
/* 3175A8 802BD688 24020028 */ addiu $v0, $zero, 0x28
/* 3175AC 802BD68C 10600030 */ beqz $v1, .L802BD750
/* 3175B0 802BD690 2402000A */ addiu $v0, $zero, 0xa
/* 3175B4 802BD694 080AF6A3 */ j .L802BDA8C
/* 3175B8 802BD698 00000000 */ nop
.L802BD69C:
/* 3175BC 802BD69C 10620005 */ beq $v1, $v0, .L802BD6B4
/* 3175C0 802BD6A0 24020029 */ addiu $v0, $zero, 0x29
/* 3175C4 802BD6A4 10620018 */ beq $v1, $v0, .L802BD708
/* 3175C8 802BD6A8 00000000 */ nop
/* 3175CC 802BD6AC 080AF6A1 */ j .L802BDA84
/* 3175D0 802BD6B0 00000000 */ nop
.L802BD6B4:
/* 3175D4 802BD6B4 8E420000 */ lw $v0, ($s2)
/* 3175D8 802BD6B8 30421000 */ andi $v0, $v0, 0x1000
/* 3175DC 802BD6BC 10400004 */ beqz $v0, .L802BD6D0
/* 3175E0 802BD6C0 2402FFFF */ addiu $v0, $zero, -1
/* 3175E4 802BD6C4 82020015 */ lb $v0, 0x15($s0)
/* 3175E8 802BD6C8 10400004 */ beqz $v0, .L802BD6DC
/* 3175EC 802BD6CC 2402FFFF */ addiu $v0, $zero, -1
.L802BD6D0:
/* 3175F0 802BD6D0 AE220084 */ sw $v0, 0x84($s1)
.L802BD6D4:
/* 3175F4 802BD6D4 080AF6C4 */ j .L802BDB10
/* 3175F8 802BD6D8 24020002 */ addiu $v0, $zero, 2
.L802BD6DC:
/* 3175FC 802BD6DC 24020003 */ addiu $v0, $zero, 3
/* 317600 802BD6E0 0C03805E */ jal disable_player_input
/* 317604 802BD6E4 AE220074 */ sw $v0, 0x74($s1)
/* 317608 802BD6E8 82030015 */ lb $v1, 0x15($s0)
/* 31760C 802BD6EC 8E220070 */ lw $v0, 0x70($s1)
/* 317610 802BD6F0 3C01802C */ lui $at, 0x802c
/* 317614 802BD6F4 AC33DF64 */ sw $s3, -0x209c($at)
/* 317618 802BD6F8 24420001 */ addiu $v0, $v0, 1
/* 31761C 802BD6FC AE230078 */ sw $v1, 0x78($s1)
/* 317620 802BD700 080AF6A1 */ j .L802BDA84
/* 317624 802BD704 AE220070 */ sw $v0, 0x70($s1)
.L802BD708:
/* 317628 802BD708 8E220074 */ lw $v0, 0x74($s1)
/* 31762C 802BD70C 10400003 */ beqz $v0, .L802BD71C
/* 317630 802BD710 2442FFFF */ addiu $v0, $v0, -1
/* 317634 802BD714 080AF6A1 */ j .L802BDA84
/* 317638 802BD718 AE220074 */ sw $v0, 0x74($s1)
.L802BD71C:
/* 31763C 802BD71C 82030015 */ lb $v1, 0x15($s0)
/* 317640 802BD720 8E220078 */ lw $v0, 0x78($s1)
/* 317644 802BD724 0043102A */ slt $v0, $v0, $v1
/* 317648 802BD728 10400007 */ beqz $v0, .L802BD748
/* 31764C 802BD72C 2402FFFF */ addiu $v0, $zero, -1
/* 317650 802BD730 0C038069 */ jal enable_player_input
/* 317654 802BD734 AE220084 */ sw $v0, 0x84($s1)
/* 317658 802BD738 3C01802C */ lui $at, 0x802c
/* 31765C 802BD73C AC20DF64 */ sw $zero, -0x209c($at)
/* 317660 802BD740 080AF6C4 */ j .L802BDB10
/* 317664 802BD744 24020002 */ addiu $v0, $zero, 2
.L802BD748:
/* 317668 802BD748 080AF6A1 */ j .L802BDA84
/* 31766C 802BD74C AE200070 */ sw $zero, 0x70($s1)
.L802BD750:
/* 317670 802BD750 0C009C22 */ jal func_80027088
/* 317674 802BD754 24040001 */ addiu $a0, $zero, 1
/* 317678 802BD758 3C03FDFF */ lui $v1, 0xfdff
/* 31767C 802BD75C 3463FFFF */ ori $v1, $v1, 0xffff
/* 317680 802BD760 3C040001 */ lui $a0, 1
/* 317684 802BD764 8E020000 */ lw $v0, ($s0)
/* 317688 802BD768 34840001 */ ori $a0, $a0, 1
/* 31768C 802BD76C 00431024 */ and $v0, $v0, $v1
/* 317690 802BD770 AE020000 */ sw $v0, ($s0)
/* 317694 802BD774 AE440028 */ sw $a0, 0x28($s2)
/* 317698 802BD778 3C01800B */ lui $at, 0x800b
/* 31769C 802BD77C C42C1DEC */ lwc1 $f12, 0x1dec($at)
/* 3176A0 802BD780 C60000A8 */ lwc1 $f0, 0xa8($s0)
/* 3176A4 802BD784 46006300 */ add.s $f12, $f12, $f0
/* 3176A8 802BD788 3C0142B4 */ lui $at, 0x42b4
/* 3176AC 802BD78C 44810000 */ mtc1 $at, $f0
/* 3176B0 802BD790 0C00A6C9 */ jal clamp_angle
/* 3176B4 802BD794 46006301 */ sub.s $f12, $f12, $f0
/* 3176B8 802BD798 E640000C */ swc1 $f0, 0xc($s2)
/* 3176BC 802BD79C 3C018011 */ lui $at, %hi(D_8010EBB0)
/* 3176C0 802BD7A0 A033EBB0 */ sb $s3, %lo(D_8010EBB0)($at)
/* 3176C4 802BD7A4 0C03A5EE */ jal func_800E97B8
/* 3176C8 802BD7A8 00000000 */ nop
/* 3176CC 802BD7AC 3C02802C */ lui $v0, 0x802c
/* 3176D0 802BD7B0 8C42DF30 */ lw $v0, -0x20d0($v0)
/* 3176D4 802BD7B4 10400004 */ beqz $v0, .L802BD7C8
/* 3176D8 802BD7B8 24020014 */ addiu $v0, $zero, 0x14
/* 3176DC 802BD7BC AE200084 */ sw $zero, 0x84($s1)
/* 3176E0 802BD7C0 080AF6A1 */ j .L802BDA84
/* 3176E4 802BD7C4 AE220070 */ sw $v0, 0x70($s1)
.L802BD7C8:
/* 3176E8 802BD7C8 AE330070 */ sw $s3, 0x70($s1)
.L802BD7CC:
/* 3176EC 802BD7CC 3C04802C */ lui $a0, 0x802c
/* 3176F0 802BD7D0 8C84DF60 */ lw $a0, -0x20a0($a0)
/* 3176F4 802BD7D4 0480008A */ bltz $a0, .L802BDA00
/* 3176F8 802BD7D8 30824000 */ andi $v0, $a0, 0x4000
/* 3176FC 802BD7DC 10400070 */ beqz $v0, .L802BD9A0
/* 317700 802BD7E0 00000000 */ nop
/* 317704 802BD7E4 0C0441A9 */ jal get_entity_type
/* 317708 802BD7E8 2410FFFF */ addiu $s0, $zero, -1
/* 31770C 802BD7EC 0040282D */ daddu $a1, $v0, $zero
/* 317710 802BD7F0 3C03802C */ lui $v1, 0x802c
/* 317714 802BD7F4 2463DC40 */ addiu $v1, $v1, -0x23c0
/* 317718 802BD7F8 8C620000 */ lw $v0, ($v1)
/* 31771C 802BD7FC 10500066 */ beq $v0, $s0, .L802BD998
/* 317720 802BD800 24A4FFF7 */ addiu $a0, $a1, -9
/* 317724 802BD804 0060A02D */ daddu $s4, $v1, $zero
/* 317728 802BD808 3C03802C */ lui $v1, 0x802c
/* 31772C 802BD80C 2463DE88 */ addiu $v1, $v1, -0x2178
/* 317730 802BD810 00041080 */ sll $v0, $a0, 2
/* 317734 802BD814 00434821 */ addu $t1, $v0, $v1
/* 317738 802BD818 3C068011 */ lui $a2, %hi(gPlayerData)
/* 31773C 802BD81C 24C6F290 */ addiu $a2, $a2, %lo(gPlayerData)
/* 317740 802BD820 24070001 */ addiu $a3, $zero, 1
/* 317744 802BD824 24080002 */ addiu $t0, $zero, 2
/* 317748 802BD828 0200982D */ daddu $s3, $s0, $zero
/* 31774C 802BD82C 0280182D */ daddu $v1, $s4, $zero
/* 317750 802BD830 24120004 */ addiu $s2, $zero, 4
/* 317754 802BD834 8C620000 */ lw $v0, ($v1)
.L802BD838:
/* 317758 802BD838 54450054 */ bnel $v0, $a1, .L802BD98C
/* 31775C 802BD83C 24630008 */ addiu $v1, $v1, 8
/* 317760 802BD840 2C82002A */ sltiu $v0, $a0, 0x2a
/* 317764 802BD844 1040004B */ beqz $v0, .L802BD974
/* 317768 802BD848 00000000 */ nop
/* 31776C 802BD84C 8D220000 */ lw $v0, ($t1)
/* 317770 802BD850 00400008 */ jr $v0
/* 317774 802BD854 00000000 */ nop
/* 317778 802BD858 80C20001 */ lb $v0, 1($a2)
/* 31777C 802BD85C 18400045 */ blez $v0, .L802BD974
/* 317780 802BD860 00000000 */ nop
/* 317784 802BD864 3C10001B */ lui $s0, 0x1b
/* 317788 802BD868 080AF65D */ j .L802BD974
/* 31778C 802BD86C 36100002 */ ori $s0, $s0, 2
/* 317790 802BD870 80C20001 */ lb $v0, 1($a2)
/* 317794 802BD874 28420002 */ slti $v0, $v0, 2
/* 317798 802BD878 1440003E */ bnez $v0, .L802BD974
/* 31779C 802BD87C 00000000 */ nop
/* 3177A0 802BD880 3C10001B */ lui $s0, 0x1b
/* 3177A4 802BD884 080AF65D */ j .L802BD974
/* 3177A8 802BD888 36100004 */ ori $s0, $s0, 4
/* 3177AC 802BD88C 3C028011 */ lui $v0, %hi(gPlayerData)
/* 3177B0 802BD890 8042F290 */ lb $v0, %lo(gPlayerData)($v0)
/* 3177B4 802BD894 14470004 */ bne $v0, $a3, .L802BD8A8
/* 3177B8 802BD898 00000000 */ nop
/* 3177BC 802BD89C 3C10001B */ lui $s0, 0x1b
/* 3177C0 802BD8A0 080AF65D */ j .L802BD974
/* 3177C4 802BD8A4 36100018 */ ori $s0, $s0, 0x18
.L802BD8A8:
/* 3177C8 802BD8A8 14480032 */ bne $v0, $t0, .L802BD974
/* 3177CC 802BD8AC 00000000 */ nop
/* 3177D0 802BD8B0 3C10001B */ lui $s0, 0x1b
/* 3177D4 802BD8B4 080AF65D */ j .L802BD974
/* 3177D8 802BD8B8 36100019 */ ori $s0, $s0, 0x19
/* 3177DC 802BD8BC 3C028011 */ lui $v0, %hi(gPlayerData)
/* 3177E0 802BD8C0 8042F290 */ lb $v0, %lo(gPlayerData)($v0)
/* 3177E4 802BD8C4 14470004 */ bne $v0, $a3, .L802BD8D8
/* 3177E8 802BD8C8 00000000 */ nop
/* 3177EC 802BD8CC 3C10001B */ lui $s0, 0x1b
/* 3177F0 802BD8D0 080AF65D */ j .L802BD974
/* 3177F4 802BD8D4 3610001B */ ori $s0, $s0, 0x1b
.L802BD8D8:
/* 3177F8 802BD8D8 14480026 */ bne $v0, $t0, .L802BD974
/* 3177FC 802BD8DC 00000000 */ nop
/* 317800 802BD8E0 3C10001B */ lui $s0, 0x1b
/* 317804 802BD8E4 080AF65D */ j .L802BD974
/* 317808 802BD8E8 3610001C */ ori $s0, $s0, 0x1c
/* 31780C 802BD8EC 3C028011 */ lui $v0, %hi(gPlayerData)
/* 317810 802BD8F0 8042F290 */ lb $v0, %lo(gPlayerData)($v0)
/* 317814 802BD8F4 28420002 */ slti $v0, $v0, 2
/* 317818 802BD8F8 1440001E */ bnez $v0, .L802BD974
/* 31781C 802BD8FC 00000000 */ nop
/* 317820 802BD900 3C10001B */ lui $s0, 0x1b
/* 317824 802BD904 080AF65D */ j .L802BD974
/* 317828 802BD908 3610000D */ ori $s0, $s0, 0xd
/* 31782C 802BD90C 3C028011 */ lui $v0, %hi(gPlayerData)
/* 317830 802BD910 8042F290 */ lb $v0, %lo(gPlayerData)($v0)
/* 317834 802BD914 28420002 */ slti $v0, $v0, 2
/* 317838 802BD918 14400016 */ bnez $v0, .L802BD974
/* 31783C 802BD91C 00000000 */ nop
/* 317840 802BD920 3C10001B */ lui $s0, 0x1b
/* 317844 802BD924 080AF65D */ j .L802BD974
/* 317848 802BD928 3610000F */ ori $s0, $s0, 0xf
/* 31784C 802BD92C 3C028011 */ lui $v0, %hi(gPlayerData)
/* 317850 802BD930 8042F290 */ lb $v0, %lo(gPlayerData)($v0)
/* 317854 802BD934 28420002 */ slti $v0, $v0, 2
/* 317858 802BD938 1440000E */ bnez $v0, .L802BD974
/* 31785C 802BD93C 00000000 */ nop
/* 317860 802BD940 3C10001B */ lui $s0, 0x1b
/* 317864 802BD944 080AF65D */ j .L802BD974
/* 317868 802BD948 3610001E */ ori $s0, $s0, 0x1e
/* 31786C 802BD94C 3C04802C */ lui $a0, 0x802c
/* 317870 802BD950 8C84DF60 */ lw $a0, -0x20a0($a0)
/* 317874 802BD954 0C04417A */ jal get_entity_by_index
/* 317878 802BD958 30843FFF */ andi $a0, $a0, 0x3fff
/* 31787C 802BD95C 8C420040 */ lw $v0, 0x40($v0)
/* 317880 802BD960 8C420010 */ lw $v0, 0x10($v0)
/* 317884 802BD964 14530003 */ bne $v0, $s3, .L802BD974
/* 317888 802BD968 00000000 */ nop
/* 31788C 802BD96C 3C10001B */ lui $s0, 0x1b
/* 317890 802BD970 36100016 */ ori $s0, $s0, 0x16
.L802BD974:
/* 317894 802BD974 56130058 */ bnel $s0, $s3, .L802BDAD8
/* 317898 802BD978 AE300084 */ sw $s0, 0x84($s1)
/* 31789C 802BD97C 02541021 */ addu $v0, $s2, $s4
/* 3178A0 802BD980 8C420000 */ lw $v0, ($v0)
/* 3178A4 802BD984 080AF6B6 */ j .L802BDAD8
/* 3178A8 802BD988 AE220084 */ sw $v0, 0x84($s1)
.L802BD98C:
/* 3178AC 802BD98C 8C620000 */ lw $v0, ($v1)
/* 3178B0 802BD990 1453FFA9 */ bne $v0, $s3, .L802BD838
/* 3178B4 802BD994 26520008 */ addiu $s2, $s2, 8
.L802BD998:
/* 3178B8 802BD998 3C04802C */ lui $a0, 0x802c
/* 3178BC 802BD99C 8C84DF60 */ lw $a0, -0x20a0($a0)
.L802BD9A0:
/* 3178C0 802BD9A0 04800017 */ bltz $a0, .L802BDA00
/* 3178C4 802BD9A4 30822000 */ andi $v0, $a0, 0x2000
/* 3178C8 802BD9A8 10400015 */ beqz $v0, .L802BDA00
/* 3178CC 802BD9AC 00000000 */ nop
/* 3178D0 802BD9B0 0C00EABB */ jal get_npc_unsafe
/* 3178D4 802BD9B4 30841FFF */ andi $a0, $a0, 0x1fff
/* 3178D8 802BD9B8 3C01802C */ lui $at, 0x802c
/* 3178DC 802BD9BC AC22DF38 */ sw $v0, -0x20c8($at)
/* 3178E0 802BD9C0 0C00FB3A */ jal get_enemy
/* 3178E4 802BD9C4 804400A4 */ lb $a0, 0xa4($v0)
/* 3178E8 802BD9C8 8C4200D8 */ lw $v0, 0xd8($v0)
/* 3178EC 802BD9CC 1040FF41 */ beqz $v0, .L802BD6D4
/* 3178F0 802BD9D0 0040802D */ daddu $s0, $v0, $zero
/* 3178F4 802BD9D4 3C02EFE8 */ lui $v0, 0xefe8
/* 3178F8 802BD9D8 34422080 */ ori $v0, $v0, 0x2080
/* 3178FC 802BD9DC 0202102A */ slt $v0, $s0, $v0
/* 317900 802BD9E0 50400005 */ beql $v0, $zero, .L802BD9F8
/* 317904 802BD9E4 AE300084 */ sw $s0, 0x84($s1)
/* 317908 802BD9E8 0200F809 */ jalr $s0
/* 31790C 802BD9EC 00000000 */ nop
/* 317910 802BD9F0 080AF5B5 */ j .L802BD6D4
/* 317914 802BD9F4 AE220084 */ sw $v0, 0x84($s1)
.L802BD9F8:
/* 317918 802BD9F8 080AF5B5 */ j .L802BD6D4
/* 31791C 802BD9FC AE200088 */ sw $zero, 0x88($s1)
.L802BDA00:
/* 317920 802BDA00 3C02802C */ lui $v0, 0x802c
/* 317924 802BDA04 8C42DF34 */ lw $v0, -0x20cc($v0)
/* 317928 802BDA08 10400003 */ beqz $v0, .L802BDA18
/* 31792C 802BDA0C 3C03001B */ lui $v1, 0x1b
/* 317930 802BDA10 080AF6BF */ j .L802BDAFC
/* 317934 802BDA14 34630025 */ ori $v1, $v1, 0x25
.L802BDA18:
/* 317938 802BDA18 3C04802C */ lui $a0, 0x802c
/* 31793C 802BDA1C 8C84DF60 */ lw $a0, -0x20a0($a0)
/* 317940 802BDA20 04800004 */ bltz $a0, .L802BDA34
/* 317944 802BDA24 0000282D */ daddu $a1, $zero, $zero
/* 317948 802BDA28 0C0AF440 */ jal func_802BD100
/* 31794C 802BDA2C 00000000 */ nop
/* 317950 802BDA30 0040282D */ daddu $a1, $v0, $zero
.L802BDA34:
/* 317954 802BDA34 14A00010 */ bnez $a1, .L802BDA78
/* 317958 802BDA38 24020001 */ addiu $v0, $zero, 1
/* 31795C 802BDA3C 0C016AFA */ jal get_current_map_header
/* 317960 802BDA40 00000000 */ nop
/* 317964 802BDA44 8C50003C */ lw $s0, 0x3c($v0)
/* 317968 802BDA48 1200FF22 */ beqz $s0, .L802BD6D4
/* 31796C 802BDA4C 3C02EFE8 */ lui $v0, 0xefe8
/* 317970 802BDA50 34422080 */ ori $v0, $v0, 0x2080
/* 317974 802BDA54 0202102A */ slt $v0, $s0, $v0
/* 317978 802BDA58 50400005 */ beql $v0, $zero, .L802BDA70
/* 31797C 802BDA5C AE300084 */ sw $s0, 0x84($s1)
/* 317980 802BDA60 0200F809 */ jalr $s0
/* 317984 802BDA64 00000000 */ nop
/* 317988 802BDA68 080AF5B5 */ j .L802BD6D4
/* 31798C 802BDA6C AE220084 */ sw $v0, 0x84($s1)
.L802BDA70:
/* 317990 802BDA70 080AF5B5 */ j .L802BD6D4
/* 317994 802BDA74 AE200088 */ sw $zero, 0x88($s1)
.L802BDA78:
/* 317998 802BDA78 AE250084 */ sw $a1, 0x84($s1)
/* 31799C 802BDA7C 080AF5B5 */ j .L802BD6D4
/* 3179A0 802BDA80 AE220088 */ sw $v0, 0x88($s1)
.L802BDA84:
/* 3179A4 802BDA84 8E230070 */ lw $v1, 0x70($s1)
/* 3179A8 802BDA88 2402000A */ addiu $v0, $zero, 0xa
.L802BDA8C:
/* 3179AC 802BDA8C 10620005 */ beq $v1, $v0, .L802BDAA4
/* 3179B0 802BDA90 24020014 */ addiu $v0, $zero, 0x14
/* 3179B4 802BDA94 10620012 */ beq $v1, $v0, .L802BDAE0
/* 3179B8 802BDA98 0000102D */ daddu $v0, $zero, $zero
/* 3179BC 802BDA9C 080AF6C4 */ j .L802BDB10
/* 3179C0 802BDAA0 00000000 */ nop
.L802BDAA4:
/* 3179C4 802BDAA4 0C016AFA */ jal get_current_map_header
/* 3179C8 802BDAA8 00000000 */ nop
/* 3179CC 802BDAAC 8C50003C */ lw $s0, 0x3c($v0)
/* 3179D0 802BDAB0 12000016 */ beqz $s0, .L802BDB0C
/* 3179D4 802BDAB4 3C02EFE8 */ lui $v0, 0xefe8
/* 3179D8 802BDAB8 34422080 */ ori $v0, $v0, 0x2080
/* 3179DC 802BDABC 0202102A */ slt $v0, $s0, $v0
/* 3179E0 802BDAC0 50400005 */ beql $v0, $zero, .L802BDAD8
/* 3179E4 802BDAC4 AE300084 */ sw $s0, 0x84($s1)
/* 3179E8 802BDAC8 0200F809 */ jalr $s0
/* 3179EC 802BDACC 00000000 */ nop
/* 3179F0 802BDAD0 080AF5B5 */ j .L802BD6D4
/* 3179F4 802BDAD4 AE220084 */ sw $v0, 0x84($s1)
.L802BDAD8:
/* 3179F8 802BDAD8 080AF5B5 */ j .L802BD6D4
/* 3179FC 802BDADC AE200088 */ sw $zero, 0x88($s1)
.L802BDAE0:
/* 317A00 802BDAE0 3C02802C */ lui $v0, 0x802c
/* 317A04 802BDAE4 8C42DF38 */ lw $v0, -0x20c8($v0)
/* 317A08 802BDAE8 0C00FB3A */ jal get_enemy
/* 317A0C 802BDAEC 804400A4 */ lb $a0, 0xa4($v0)
/* 317A10 802BDAF0 8C4300D8 */ lw $v1, 0xd8($v0)
/* 317A14 802BDAF4 10600006 */ beqz $v1, .L802BDB10
/* 317A18 802BDAF8 0000102D */ daddu $v0, $zero, $zero
.L802BDAFC:
/* 317A1C 802BDAFC 24020002 */ addiu $v0, $zero, 2
/* 317A20 802BDB00 AE230084 */ sw $v1, 0x84($s1)
/* 317A24 802BDB04 080AF6C4 */ j .L802BDB10
/* 317A28 802BDB08 AE200088 */ sw $zero, 0x88($s1)
.L802BDB0C:
/* 317A2C 802BDB0C 0000102D */ daddu $v0, $zero, $zero
.L802BDB10:
/* 317A30 802BDB10 8FBF0024 */ lw $ra, 0x24($sp)
/* 317A34 802BDB14 8FB40020 */ lw $s4, 0x20($sp)
/* 317A38 802BDB18 8FB3001C */ lw $s3, 0x1c($sp)
/* 317A3C 802BDB1C 8FB20018 */ lw $s2, 0x18($sp)
/* 317A40 802BDB20 8FB10014 */ lw $s1, 0x14($sp)
/* 317A44 802BDB24 8FB00010 */ lw $s0, 0x10($sp)
/* 317A48 802BDB28 03E00008 */ jr $ra
/* 317A4C 802BDB2C 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -0,0 +1,26 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDB30
/* 317A50 802BDB30 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 317A54 802BDB34 0000202D */ daddu $a0, $zero, $zero
/* 317A58 802BDB38 AFBF0014 */ sw $ra, 0x14($sp)
/* 317A5C 802BDB3C 0C009C22 */ jal func_80027088
/* 317A60 802BDB40 AFB00010 */ sw $s0, 0x10($sp)
/* 317A64 802BDB44 3C03802C */ lui $v1, 0x802c
/* 317A68 802BDB48 2463DF64 */ addiu $v1, $v1, -0x209c
/* 317A6C 802BDB4C 8C620000 */ lw $v0, ($v1)
/* 317A70 802BDB50 3C108011 */ lui $s0, %hi(D_8010EBB0)
/* 317A74 802BDB54 2610EBB0 */ addiu $s0, $s0, %lo(D_8010EBB0)
/* 317A78 802BDB58 50400004 */ beql $v0, $zero, .L802BDB6C
/* 317A7C 802BDB5C A2000000 */ sb $zero, ($s0)
/* 317A80 802BDB60 0C038069 */ jal enable_player_input
/* 317A84 802BDB64 AC600000 */ sw $zero, ($v1)
/* 317A88 802BDB68 A2000000 */ sb $zero, ($s0)
.L802BDB6C:
/* 317A8C 802BDB6C A2000003 */ sb $zero, 3($s0)
/* 317A90 802BDB70 8FBF0014 */ lw $ra, 0x14($sp)
/* 317A94 802BDB74 8FB00010 */ lw $s0, 0x10($sp)
/* 317A98 802BDB78 24020002 */ addiu $v0, $zero, 2
/* 317A9C 802BDB7C 03E00008 */ jr $ra
/* 317AA0 802BDB80 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDB84
/* 317AA4 802BDB84 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 317AA8 802BDB88 AFBF0014 */ sw $ra, 0x14($sp)
/* 317AAC 802BDB8C AFB00010 */ sw $s0, 0x10($sp)
/* 317AB0 802BDB90 10A00003 */ beqz $a1, .L802BDBA0
/* 317AB4 802BDB94 8C90014C */ lw $s0, 0x14c($a0)
/* 317AB8 802BDB98 0C03BA65 */ jal func_800EE994
/* 317ABC 802BDB9C 0200202D */ daddu $a0, $s0, $zero
.L802BDBA0:
/* 317AC0 802BDBA0 0C03BA6E */ jal func_800EE9B8
/* 317AC4 802BDBA4 0200202D */ daddu $a0, $s0, $zero
/* 317AC8 802BDBA8 8FBF0014 */ lw $ra, 0x14($sp)
/* 317ACC 802BDBAC 8FB00010 */ lw $s0, 0x10($sp)
/* 317AD0 802BDBB0 0002102B */ sltu $v0, $zero, $v0
/* 317AD4 802BDBB4 03E00008 */ jr $ra
/* 317AD8 802BDBB8 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,38 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDBBC
/* 317ADC 802BDBBC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 317AE0 802BDBC0 AFB10014 */ sw $s1, 0x14($sp)
/* 317AE4 802BDBC4 0080882D */ daddu $s1, $a0, $zero
/* 317AE8 802BDBC8 AFB00010 */ sw $s0, 0x10($sp)
/* 317AEC 802BDBCC 3C108011 */ lui $s0, %hi(D_8010EBB0)
/* 317AF0 802BDBD0 2610EBB0 */ addiu $s0, $s0, %lo(D_8010EBB0)
/* 317AF4 802BDBD4 AFBF001C */ sw $ra, 0x1c($sp)
/* 317AF8 802BDBD8 AFB20018 */ sw $s2, 0x18($sp)
/* 317AFC 802BDBDC 82020000 */ lb $v0, ($s0)
/* 317B00 802BDBE0 1040000D */ beqz $v0, .L802BDC18
/* 317B04 802BDBE4 0200902D */ daddu $s2, $s0, $zero
/* 317B08 802BDBE8 0C009C22 */ jal func_80027088
/* 317B0C 802BDBEC 0000202D */ daddu $a0, $zero, $zero
/* 317B10 802BDBF0 0C038069 */ jal enable_player_input
/* 317B14 802BDBF4 00000000 */ nop
/* 317B18 802BDBF8 0C0B4312 */ jal CancelMessageAndBlock
/* 317B1C 802BDBFC 00000000 */ nop
/* 317B20 802BDC00 0C03BD17 */ jal clear_partner_move_history
/* 317B24 802BDC04 0220202D */ daddu $a0, $s1, $zero
/* 317B28 802BDC08 0220202D */ daddu $a0, $s1, $zero
/* 317B2C 802BDC0C A2000000 */ sb $zero, ($s0)
/* 317B30 802BDC10 0C00EB6B */ jal disable_npc_blur
/* 317B34 802BDC14 A2000003 */ sb $zero, 3($s0)
.L802BDC18:
/* 317B38 802BDC18 24020001 */ addiu $v0, $zero, 1
/* 317B3C 802BDC1C A2420003 */ sb $v0, 3($s2)
/* 317B40 802BDC20 8FBF001C */ lw $ra, 0x1c($sp)
/* 317B44 802BDC24 8FB20018 */ lw $s2, 0x18($sp)
/* 317B48 802BDC28 8FB10014 */ lw $s1, 0x14($sp)
/* 317B4C 802BDC2C 8FB00010 */ lw $s0, 0x10($sp)
/* 317B50 802BDC30 03E00008 */ jr $ra
/* 317B54 802BDC34 27BD0020 */ addiu $sp, $sp, 0x20
/* 317B58 802BDC38 00000000 */ nop
/* 317B5C 802BDC3C 00000000 */ nop

View File

@ -0,0 +1,128 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_317E50
/* 317E50 802BD100 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 317E54 802BD104 F7B40038 */ sdc1 $f20, 0x38($sp)
/* 317E58 802BD108 4480A000 */ mtc1 $zero, $f20
/* 317E5C 802BD10C F7BA0050 */ sdc1 $f26, 0x50($sp)
/* 317E60 802BD110 3C0141F0 */ lui $at, 0x41f0
/* 317E64 802BD114 4481D000 */ mtc1 $at, $f26
/* 317E68 802BD118 F7B80048 */ sdc1 $f24, 0x48($sp)
/* 317E6C 802BD11C 3C014234 */ lui $at, 0x4234
/* 317E70 802BD120 4481C000 */ mtc1 $at, $f24
/* 317E74 802BD124 F7B60040 */ sdc1 $f22, 0x40($sp)
/* 317E78 802BD128 3C0143B4 */ lui $at, 0x43b4
/* 317E7C 802BD12C 4481B000 */ mtc1 $at, $f22
/* 317E80 802BD130 AFB00030 */ sw $s0, 0x30($sp)
/* 317E84 802BD134 0080802D */ daddu $s0, $a0, $zero
/* 317E88 802BD138 AFBF0034 */ sw $ra, 0x34($sp)
.L802BD13C:
/* 317E8C 802BD13C C6020038 */ lwc1 $f2, 0x38($s0)
/* 317E90 802BD140 C604003C */ lwc1 $f4, 0x3c($s0)
/* 317E94 802BD144 C60C000C */ lwc1 $f12, 0xc($s0)
/* 317E98 802BD148 C6000040 */ lwc1 $f0, 0x40($s0)
/* 317E9C 802BD14C 46146300 */ add.s $f12, $f12, $f20
/* 317EA0 802BD150 E7A20020 */ swc1 $f2, 0x20($sp)
/* 317EA4 802BD154 E7A40024 */ swc1 $f4, 0x24($sp)
/* 317EA8 802BD158 0C00A6C9 */ jal clamp_angle
/* 317EAC 802BD15C E7A00028 */ swc1 $f0, 0x28($sp)
/* 317EB0 802BD160 3C040010 */ lui $a0, 0x10
/* 317EB4 802BD164 27A50020 */ addiu $a1, $sp, 0x20
/* 317EB8 802BD168 E7BA0010 */ swc1 $f26, 0x10($sp)
/* 317EBC 802BD16C E7A00014 */ swc1 $f0, 0x14($sp)
/* 317EC0 802BD170 860200A8 */ lh $v0, 0xa8($s0)
/* 317EC4 802BD174 27A60024 */ addiu $a2, $sp, 0x24
/* 317EC8 802BD178 44820000 */ mtc1 $v0, $f0
/* 317ECC 802BD17C 00000000 */ nop
/* 317ED0 802BD180 46800020 */ cvt.s.w $f0, $f0
/* 317ED4 802BD184 E7A00018 */ swc1 $f0, 0x18($sp)
/* 317ED8 802BD188 860200A6 */ lh $v0, 0xa6($s0)
/* 317EDC 802BD18C 27A70028 */ addiu $a3, $sp, 0x28
/* 317EE0 802BD190 44820000 */ mtc1 $v0, $f0
/* 317EE4 802BD194 00000000 */ nop
/* 317EE8 802BD198 46800020 */ cvt.s.w $f0, $f0
/* 317EEC 802BD19C 0C0376B9 */ jal func_800DDAE4
/* 317EF0 802BD1A0 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 317EF4 802BD1A4 14400006 */ bnez $v0, .L802BD1C0
/* 317EF8 802BD1A8 00000000 */ nop
/* 317EFC 802BD1AC 4618A500 */ add.s $f20, $f20, $f24
/* 317F00 802BD1B0 4616A03C */ c.lt.s $f20, $f22
/* 317F04 802BD1B4 00000000 */ nop
/* 317F08 802BD1B8 4501FFE0 */ bc1t .L802BD13C
/* 317F0C 802BD1BC 00000000 */ nop
.L802BD1C0:
/* 317F10 802BD1C0 3C0143B4 */ lui $at, 0x43b4
/* 317F14 802BD1C4 44810000 */ mtc1 $at, $f0
/* 317F18 802BD1C8 00000000 */ nop
/* 317F1C 802BD1CC 4614003E */ c.le.s $f0, $f20
/* 317F20 802BD1D0 00000000 */ nop
/* 317F24 802BD1D4 4500002F */ bc1f .L802BD294
/* 317F28 802BD1D8 00000000 */ nop
/* 317F2C 802BD1DC 46000686 */ mov.s $f26, $f0
/* 317F30 802BD1E0 4480A000 */ mtc1 $zero, $f20
/* 317F34 802BD1E4 3C0141F0 */ lui $at, 0x41f0
/* 317F38 802BD1E8 4481C000 */ mtc1 $at, $f24
/* 317F3C 802BD1EC 3C014234 */ lui $at, 0x4234
/* 317F40 802BD1F0 4481B000 */ mtc1 $at, $f22
.L802BD1F4:
/* 317F44 802BD1F4 C6020038 */ lwc1 $f2, 0x38($s0)
/* 317F48 802BD1F8 C604003C */ lwc1 $f4, 0x3c($s0)
/* 317F4C 802BD1FC C60C000C */ lwc1 $f12, 0xc($s0)
/* 317F50 802BD200 C6000040 */ lwc1 $f0, 0x40($s0)
/* 317F54 802BD204 46146300 */ add.s $f12, $f12, $f20
/* 317F58 802BD208 E7A20020 */ swc1 $f2, 0x20($sp)
/* 317F5C 802BD20C E7A40024 */ swc1 $f4, 0x24($sp)
/* 317F60 802BD210 0C00A6C9 */ jal clamp_angle
/* 317F64 802BD214 E7A00028 */ swc1 $f0, 0x28($sp)
/* 317F68 802BD218 3C040004 */ lui $a0, 4
/* 317F6C 802BD21C 27A50020 */ addiu $a1, $sp, 0x20
/* 317F70 802BD220 E7B80010 */ swc1 $f24, 0x10($sp)
/* 317F74 802BD224 E7A00014 */ swc1 $f0, 0x14($sp)
/* 317F78 802BD228 860200A8 */ lh $v0, 0xa8($s0)
/* 317F7C 802BD22C 27A60024 */ addiu $a2, $sp, 0x24
/* 317F80 802BD230 44820000 */ mtc1 $v0, $f0
/* 317F84 802BD234 00000000 */ nop
/* 317F88 802BD238 46800020 */ cvt.s.w $f0, $f0
/* 317F8C 802BD23C E7A00018 */ swc1 $f0, 0x18($sp)
/* 317F90 802BD240 860200A6 */ lh $v0, 0xa6($s0)
/* 317F94 802BD244 27A70028 */ addiu $a3, $sp, 0x28
/* 317F98 802BD248 44820000 */ mtc1 $v0, $f0
/* 317F9C 802BD24C 00000000 */ nop
/* 317FA0 802BD250 46800020 */ cvt.s.w $f0, $f0
/* 317FA4 802BD254 0C0376B9 */ jal func_800DDAE4
/* 317FA8 802BD258 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 317FAC 802BD25C 14400006 */ bnez $v0, .L802BD278
/* 317FB0 802BD260 00000000 */ nop
/* 317FB4 802BD264 4616A500 */ add.s $f20, $f20, $f22
/* 317FB8 802BD268 461AA03C */ c.lt.s $f20, $f26
/* 317FBC 802BD26C 00000000 */ nop
/* 317FC0 802BD270 4501FFE0 */ bc1t .L802BD1F4
/* 317FC4 802BD274 00000000 */ nop
.L802BD278:
/* 317FC8 802BD278 3C0143B4 */ lui $at, 0x43b4
/* 317FCC 802BD27C 44810000 */ mtc1 $at, $f0
/* 317FD0 802BD280 00000000 */ nop
/* 317FD4 802BD284 4614003E */ c.le.s $f0, $f20
/* 317FD8 802BD288 00000000 */ nop
/* 317FDC 802BD28C 4501000A */ bc1t .L802BD2B8
/* 317FE0 802BD290 00000000 */ nop
.L802BD294:
/* 317FE4 802BD294 3C038011 */ lui $v1, 0x8011
/* 317FE8 802BD298 8C63C978 */ lw $v1, -0x3688($v1)
/* 317FEC 802BD29C 04600006 */ bltz $v1, .L802BD2B8
/* 317FF0 802BD2A0 30624000 */ andi $v0, $v1, 0x4000
/* 317FF4 802BD2A4 10400004 */ beqz $v0, .L802BD2B8
/* 317FF8 802BD2A8 00000000 */ nop
/* 317FFC 802BD2AC 2404BFFF */ addiu $a0, $zero, -0x4001
/* 318000 802BD2B0 0C044277 */ jal func_801109DC
/* 318004 802BD2B4 00642024 */ and $a0, $v1, $a0
.L802BD2B8:
/* 318008 802BD2B8 8FBF0034 */ lw $ra, 0x34($sp)
/* 31800C 802BD2BC 8FB00030 */ lw $s0, 0x30($sp)
/* 318010 802BD2C0 D7BA0050 */ ldc1 $f26, 0x50($sp)
/* 318014 802BD2C4 D7B80048 */ ldc1 $f24, 0x48($sp)
/* 318018 802BD2C8 D7B60040 */ ldc1 $f22, 0x40($sp)
/* 31801C 802BD2CC D7B40038 */ ldc1 $f20, 0x38($sp)
/* 318020 802BD2D0 03E00008 */ jr $ra
/* 318024 802BD2D4 27BD0058 */ addiu $sp, $sp, 0x58

View File

@ -0,0 +1,14 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD2D8
/* 318028 802BD2D8 2402001C */ addiu $v0, $zero, 0x1c
/* 31802C 802BD2DC A48200A8 */ sh $v0, 0xa8($a0)
/* 318030 802BD2E0 24020018 */ addiu $v0, $zero, 0x18
/* 318034 802BD2E4 A48200A6 */ sh $v0, 0xa6($a0)
/* 318038 802BD2E8 3C01802C */ lui $at, 0x802c
/* 31803C 802BD2EC AC20E928 */ sw $zero, -0x16d8($at)
/* 318040 802BD2F0 3C01802C */ lui $at, 0x802c
/* 318044 802BD2F4 AC20E924 */ sw $zero, -0x16dc($at)
/* 318048 802BD2F8 03E00008 */ jr $ra
/* 31804C 802BD2FC 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD300
/* 318050 802BD300 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 318054 802BD304 AFBF0014 */ sw $ra, 0x14($sp)
/* 318058 802BD308 AFB00010 */ sw $s0, 0x10($sp)
/* 31805C 802BD30C 10A00003 */ beqz $a1, .L802BD31C
/* 318060 802BD310 8C90014C */ lw $s0, 0x14c($a0)
/* 318064 802BD314 0C03BB31 */ jal func_800EECC4
/* 318068 802BD318 0200202D */ daddu $a0, $s0, $zero
.L802BD31C:
/* 31806C 802BD31C 0C03BB3A */ jal func_800EECE8
/* 318070 802BD320 0200202D */ daddu $a0, $s0, $zero
/* 318074 802BD324 8FBF0014 */ lw $ra, 0x14($sp)
/* 318078 802BD328 8FB00010 */ lw $s0, 0x10($sp)
/* 31807C 802BD32C 0002102B */ sltu $v0, $zero, $v0
/* 318080 802BD330 03E00008 */ jr $ra
/* 318084 802BD334 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,251 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD338
/* 318088 802BD338 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31808C 802BD33C AFB00018 */ sw $s0, 0x18($sp)
/* 318090 802BD340 3C108011 */ lui $s0, %hi(gPlayerData)
/* 318094 802BD344 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 318098 802BD348 AFBF0028 */ sw $ra, 0x28($sp)
/* 31809C 802BD34C AFB30024 */ sw $s3, 0x24($sp)
/* 3180A0 802BD350 AFB20020 */ sw $s2, 0x20($sp)
/* 3180A4 802BD354 AFB1001C */ sw $s1, 0x1c($sp)
/* 3180A8 802BD358 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 3180AC 802BD35C 8C91014C */ lw $s1, 0x14c($a0)
/* 3180B0 802BD360 10A00009 */ beqz $a1, .L802BD388
/* 3180B4 802BD364 0220202D */ daddu $a0, $s1, $zero
/* 3180B8 802BD368 0C03AE2A */ jal enable_partner_walking
/* 3180BC 802BD36C 24050001 */ addiu $a1, $zero, 1
/* 3180C0 802BD370 3C04802C */ lui $a0, 0x802c
/* 3180C4 802BD374 8C84E89C */ lw $a0, -0x1764($a0)
/* 3180C8 802BD378 0C00A580 */ jal mem_clear
/* 3180CC 802BD37C 2405001C */ addiu $a1, $zero, 0x1c
/* 3180D0 802BD380 3C018011 */ lui $at, 0x8011
/* 3180D4 802BD384 AC20C954 */ sw $zero, -0x36ac($at)
.L802BD388:
/* 3180D8 802BD388 3C030001 */ lui $v1, 1
/* 3180DC 802BD38C 8E020300 */ lw $v0, 0x300($s0)
/* 3180E0 802BD390 3C138011 */ lui $s3, 0x8011
/* 3180E4 802BD394 2673C954 */ addiu $s3, $s3, -0x36ac
/* 3180E8 802BD398 24420001 */ addiu $v0, $v0, 1
/* 3180EC 802BD39C AE020300 */ sw $v0, 0x300($s0)
/* 3180F0 802BD3A0 8E220000 */ lw $v0, ($s1)
/* 3180F4 802BD3A4 8E720000 */ lw $s2, ($s3)
/* 3180F8 802BD3A8 00431025 */ or $v0, $v0, $v1
/* 3180FC 802BD3AC 16400007 */ bnez $s2, .L802BD3CC
/* 318100 802BD3B0 AE220000 */ sw $v0, ($s1)
/* 318104 802BD3B4 0C03AE8F */ jal func_800EBA3C
/* 318108 802BD3B8 0220202D */ daddu $a0, $s1, $zero
/* 31810C 802BD3BC 0C03AED0 */ jal func_800EBB40
/* 318110 802BD3C0 0220202D */ daddu $a0, $s1, $zero
/* 318114 802BD3C4 080AF5AF */ j .L802BD6BC
/* 318118 802BD3C8 0000102D */ daddu $v0, $zero, $zero
.L802BD3CC:
/* 31811C 802BD3CC 3C10802C */ lui $s0, 0x802c
/* 318120 802BD3D0 2610E89C */ addiu $s0, $s0, -0x1764
/* 318124 802BD3D4 8E040000 */ lw $a0, ($s0)
/* 318128 802BD3D8 8C830004 */ lw $v1, 4($a0)
/* 31812C 802BD3DC 24050001 */ addiu $a1, $zero, 1
/* 318130 802BD3E0 10650030 */ beq $v1, $a1, .L802BD4A4
/* 318134 802BD3E4 28620002 */ slti $v0, $v1, 2
/* 318138 802BD3E8 10400005 */ beqz $v0, .L802BD400
/* 31813C 802BD3EC 24020002 */ addiu $v0, $zero, 2
/* 318140 802BD3F0 10600009 */ beqz $v1, .L802BD418
/* 318144 802BD3F4 0000102D */ daddu $v0, $zero, $zero
/* 318148 802BD3F8 080AF5AF */ j .L802BD6BC
/* 31814C 802BD3FC 00000000 */ nop
.L802BD400:
/* 318150 802BD400 1062009A */ beq $v1, $v0, .L802BD66C
/* 318154 802BD404 24020003 */ addiu $v0, $zero, 3
/* 318158 802BD408 106200A0 */ beq $v1, $v0, .L802BD68C
/* 31815C 802BD40C 0000102D */ daddu $v0, $zero, $zero
/* 318160 802BD410 080AF5AF */ j .L802BD6BC
/* 318164 802BD414 00000000 */ nop
.L802BD418:
/* 318168 802BD418 AC850004 */ sw $a1, 4($a0)
/* 31816C 802BD41C 8E220000 */ lw $v0, ($s1)
/* 318170 802BD420 AC820008 */ sw $v0, 8($a0)
/* 318174 802BD424 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 318178 802BD428 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 31817C 802BD42C 8E460048 */ lw $a2, 0x48($s2)
/* 318180 802BD430 0C00A7B5 */ jal dist2D
/* 318184 802BD434 8E470050 */ lw $a3, 0x50($s2)
/* 318188 802BD438 8E020000 */ lw $v0, ($s0)
/* 31818C 802BD43C 46000005 */ abs.s $f0, $f0
/* 318190 802BD440 E440000C */ swc1 $f0, 0xc($v0)
/* 318194 802BD444 C64C0048 */ lwc1 $f12, 0x48($s2)
/* 318198 802BD448 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 31819C 802BD44C 8E260038 */ lw $a2, 0x38($s1)
/* 3181A0 802BD450 0C00A720 */ jal atan2
/* 3181A4 802BD454 8E270040 */ lw $a3, 0x40($s1)
/* 3181A8 802BD458 3C040004 */ lui $a0, 4
/* 3181AC 802BD45C 24020078 */ addiu $v0, $zero, 0x78
/* 3181B0 802BD460 8E030000 */ lw $v1, ($s0)
/* 3181B4 802BD464 3C0140C0 */ lui $at, 0x40c0
/* 3181B8 802BD468 44811000 */ mtc1 $at, $f2
/* 3181BC 802BD46C 3C014248 */ lui $at, 0x4248
/* 3181C0 802BD470 44812000 */ mtc1 $at, $f4
/* 3181C4 802BD474 34840148 */ ori $a0, $a0, 0x148
/* 3181C8 802BD478 E4600010 */ swc1 $f0, 0x10($v1)
/* 3181CC 802BD47C E4620014 */ swc1 $f2, 0x14($v1)
/* 3181D0 802BD480 E4640018 */ swc1 $f4, 0x18($v1)
/* 3181D4 802BD484 AC620000 */ sw $v0, ($v1)
/* 3181D8 802BD488 8E220000 */ lw $v0, ($s1)
/* 3181DC 802BD48C 2403FDFF */ addiu $v1, $zero, -0x201
/* 3181E0 802BD490 00441025 */ or $v0, $v0, $a0
/* 3181E4 802BD494 00431024 */ and $v0, $v0, $v1
/* 3181E8 802BD498 AE220000 */ sw $v0, ($s1)
/* 3181EC 802BD49C 3C10802C */ lui $s0, 0x802c
/* 3181F0 802BD4A0 2610E89C */ addiu $s0, $s0, -0x1764
.L802BD4A4:
/* 3181F4 802BD4A4 8E020000 */ lw $v0, ($s0)
/* 3181F8 802BD4A8 3C0140C9 */ lui $at, 0x40c9
/* 3181FC 802BD4AC 34210FD0 */ ori $at, $at, 0xfd0
/* 318200 802BD4B0 44810000 */ mtc1 $at, $f0
/* 318204 802BD4B4 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 318208 802BD4B8 46006302 */ mul.s $f12, $f12, $f0
/* 31820C 802BD4BC 00000000 */ nop
/* 318210 802BD4C0 27A50010 */ addiu $a1, $sp, 0x10
/* 318214 802BD4C4 3C0143B4 */ lui $at, 0x43b4
/* 318218 802BD4C8 44810000 */ mtc1 $at, $f0
/* 31821C 802BD4CC 27A60014 */ addiu $a2, $sp, 0x14
/* 318220 802BD4D0 0C00A82D */ jal sin_cos_rad
/* 318224 802BD4D4 46006303 */ div.s $f12, $f12, $f0
/* 318228 802BD4D8 8E020000 */ lw $v0, ($s0)
/* 31822C 802BD4DC C7A20010 */ lwc1 $f2, 0x10($sp)
/* 318230 802BD4E0 C440000C */ lwc1 $f0, 0xc($v0)
/* 318234 802BD4E4 46001082 */ mul.s $f2, $f2, $f0
/* 318238 802BD4E8 00000000 */ nop
/* 31823C 802BD4EC C6400048 */ lwc1 $f0, 0x48($s2)
/* 318240 802BD4F0 46020000 */ add.s $f0, $f0, $f2
/* 318244 802BD4F4 E6200038 */ swc1 $f0, 0x38($s1)
/* 318248 802BD4F8 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 31824C 802BD4FC C440000C */ lwc1 $f0, 0xc($v0)
/* 318250 802BD500 46001082 */ mul.s $f2, $f2, $f0
/* 318254 802BD504 00000000 */ nop
/* 318258 802BD508 C6400050 */ lwc1 $f0, 0x50($s2)
/* 31825C 802BD50C 46020001 */ sub.s $f0, $f0, $f2
/* 318260 802BD510 E6200040 */ swc1 $f0, 0x40($s1)
/* 318264 802BD514 C4400010 */ lwc1 $f0, 0x10($v0)
/* 318268 802BD518 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 31826C 802BD51C 0C00A6C9 */ jal clamp_angle
/* 318270 802BD520 460C0301 */ sub.s $f12, $f0, $f12
/* 318274 802BD524 8E100000 */ lw $s0, ($s0)
/* 318278 802BD528 3C0141A0 */ lui $at, 0x41a0
/* 31827C 802BD52C 44811000 */ mtc1 $at, $f2
/* 318280 802BD530 C604000C */ lwc1 $f4, 0xc($s0)
/* 318284 802BD534 4604103C */ c.lt.s $f2, $f4
/* 318288 802BD538 00000000 */ nop
/* 31828C 802BD53C 45000005 */ bc1f .L802BD554
/* 318290 802BD540 E6000010 */ swc1 $f0, 0x10($s0)
/* 318294 802BD544 3C013F80 */ lui $at, 0x3f80
/* 318298 802BD548 44810000 */ mtc1 $at, $f0
/* 31829C 802BD54C 080AF560 */ j .L802BD580
/* 3182A0 802BD550 46002001 */ sub.s $f0, $f4, $f0
.L802BD554:
/* 3182A4 802BD554 3C014198 */ lui $at, 0x4198
/* 3182A8 802BD558 44810000 */ mtc1 $at, $f0
/* 3182AC 802BD55C 00000000 */ nop
/* 3182B0 802BD560 4600203C */ c.lt.s $f4, $f0
/* 3182B4 802BD564 00000000 */ nop
/* 3182B8 802BD568 45000006 */ bc1f .L802BD584
/* 3182BC 802BD56C 00000000 */ nop
/* 3182C0 802BD570 3C013F80 */ lui $at, 0x3f80
/* 3182C4 802BD574 44810000 */ mtc1 $at, $f0
/* 3182C8 802BD578 00000000 */ nop
/* 3182CC 802BD57C 46002000 */ add.s $f0, $f4, $f0
.L802BD580:
/* 3182D0 802BD580 E600000C */ swc1 $f0, 0xc($s0)
.L802BD584:
/* 3182D4 802BD584 3C10802C */ lui $s0, 0x802c
/* 3182D8 802BD588 2610E89C */ addiu $s0, $s0, -0x1764
/* 3182DC 802BD58C 8E020000 */ lw $v0, ($s0)
/* 3182E0 802BD590 3C0140C9 */ lui $at, 0x40c9
/* 3182E4 802BD594 34210FD0 */ ori $at, $at, 0xfd0
/* 3182E8 802BD598 44810000 */ mtc1 $at, $f0
/* 3182EC 802BD59C C44C0018 */ lwc1 $f12, 0x18($v0)
/* 3182F0 802BD5A0 46006302 */ mul.s $f12, $f12, $f0
/* 3182F4 802BD5A4 00000000 */ nop
/* 3182F8 802BD5A8 3C0143B4 */ lui $at, 0x43b4
/* 3182FC 802BD5AC 4481A000 */ mtc1 $at, $f20
/* 318300 802BD5B0 0C00A85B */ jal sin_rad
/* 318304 802BD5B4 46146303 */ div.s $f12, $f12, $f20
/* 318308 802BD5B8 8E020000 */ lw $v0, ($s0)
/* 31830C 802BD5BC 3C014040 */ lui $at, 0x4040
/* 318310 802BD5C0 44812000 */ mtc1 $at, $f4
/* 318314 802BD5C4 C4420018 */ lwc1 $f2, 0x18($v0)
/* 318318 802BD5C8 46041080 */ add.s $f2, $f2, $f4
/* 31831C 802BD5CC 3C014316 */ lui $at, 0x4316
/* 318320 802BD5D0 44813000 */ mtc1 $at, $f6
/* 318324 802BD5D4 00000000 */ nop
/* 318328 802BD5D8 4602303C */ c.lt.s $f6, $f2
/* 31832C 802BD5DC E4420018 */ swc1 $f2, 0x18($v0)
/* 318330 802BD5E0 46040082 */ mul.s $f2, $f0, $f4
/* 318334 802BD5E4 00000000 */ nop
/* 318338 802BD5E8 45030001 */ bc1tl .L802BD5F0
/* 31833C 802BD5EC E4460018 */ swc1 $f6, 0x18($v0)
.L802BD5F0:
/* 318340 802BD5F0 C620003C */ lwc1 $f0, 0x3c($s1)
/* 318344 802BD5F4 46020000 */ add.s $f0, $f0, $f2
/* 318348 802BD5F8 8E020000 */ lw $v0, ($s0)
/* 31834C 802BD5FC E620003C */ swc1 $f0, 0x3c($s1)
/* 318350 802BD600 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 318354 802BD604 0C00A6C9 */ jal clamp_angle
/* 318358 802BD608 460CA301 */ sub.s $f12, $f20, $f12
/* 31835C 802BD60C 8E020000 */ lw $v0, ($s0)
/* 318360 802BD610 E6200034 */ swc1 $f0, 0x34($s1)
/* 318364 802BD614 C4400014 */ lwc1 $f0, 0x14($v0)
/* 318368 802BD618 3C01802C */ lui $at, 0x802c
/* 31836C 802BD61C D422E900 */ ldc1 $f2, -0x1700($at)
/* 318370 802BD620 46000021 */ cvt.d.s $f0, $f0
/* 318374 802BD624 46220000 */ add.d $f0, $f0, $f2
/* 318378 802BD628 3C014220 */ lui $at, 0x4220
/* 31837C 802BD62C 44811000 */ mtc1 $at, $f2
/* 318380 802BD630 46200020 */ cvt.s.d $f0, $f0
/* 318384 802BD634 4600103C */ c.lt.s $f2, $f0
/* 318388 802BD638 00000000 */ nop
/* 31838C 802BD63C 45000002 */ bc1f .L802BD648
/* 318390 802BD640 E4400014 */ swc1 $f0, 0x14($v0)
/* 318394 802BD644 E4420014 */ swc1 $f2, 0x14($v0)
.L802BD648:
/* 318398 802BD648 8E030000 */ lw $v1, ($s0)
/* 31839C 802BD64C 8C620000 */ lw $v0, ($v1)
/* 3183A0 802BD650 2442FFFF */ addiu $v0, $v0, -1
/* 3183A4 802BD654 14400018 */ bnez $v0, .L802BD6B8
/* 3183A8 802BD658 AC620000 */ sw $v0, ($v1)
/* 3183AC 802BD65C 8C620004 */ lw $v0, 4($v1)
/* 3183B0 802BD660 24420001 */ addiu $v0, $v0, 1
/* 3183B4 802BD664 080AF5AE */ j .L802BD6B8
/* 3183B8 802BD668 AC620004 */ sw $v0, 4($v1)
.L802BD66C:
/* 3183BC 802BD66C 8C820008 */ lw $v0, 8($a0)
/* 3183C0 802BD670 AE220000 */ sw $v0, ($s1)
/* 3183C4 802BD674 8C820004 */ lw $v0, 4($a0)
/* 3183C8 802BD678 2403001E */ addiu $v1, $zero, 0x1e
/* 3183CC 802BD67C AC830000 */ sw $v1, ($a0)
/* 3183D0 802BD680 24420001 */ addiu $v0, $v0, 1
/* 3183D4 802BD684 080AF5AE */ j .L802BD6B8
/* 3183D8 802BD688 AC820004 */ sw $v0, 4($a0)
.L802BD68C:
/* 3183DC 802BD68C 0C03AE8F */ jal func_800EBA3C
/* 3183E0 802BD690 0220202D */ daddu $a0, $s1, $zero
/* 3183E4 802BD694 0C03AED0 */ jal func_800EBB40
/* 3183E8 802BD698 0220202D */ daddu $a0, $s1, $zero
/* 3183EC 802BD69C 8E030000 */ lw $v1, ($s0)
/* 3183F0 802BD6A0 8C620000 */ lw $v0, ($v1)
/* 3183F4 802BD6A4 2442FFFF */ addiu $v0, $v0, -1
/* 3183F8 802BD6A8 14400003 */ bnez $v0, .L802BD6B8
/* 3183FC 802BD6AC AC620000 */ sw $v0, ($v1)
/* 318400 802BD6B0 AC600004 */ sw $zero, 4($v1)
/* 318404 802BD6B4 AE600000 */ sw $zero, ($s3)
.L802BD6B8:
/* 318408 802BD6B8 0000102D */ daddu $v0, $zero, $zero
.L802BD6BC:
/* 31840C 802BD6BC 8FBF0028 */ lw $ra, 0x28($sp)
/* 318410 802BD6C0 8FB30024 */ lw $s3, 0x24($sp)
/* 318414 802BD6C4 8FB20020 */ lw $s2, 0x20($sp)
/* 318418 802BD6C8 8FB1001C */ lw $s1, 0x1c($sp)
/* 31841C 802BD6CC 8FB00018 */ lw $s0, 0x18($sp)
/* 318420 802BD6D0 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 318424 802BD6D4 03E00008 */ jr $ra
/* 318428 802BD6D8 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD6DC
/* 31842C 802BD6DC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 318430 802BD6E0 3C058011 */ lui $a1, 0x8011
/* 318434 802BD6E4 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 318438 802BD6E8 AFBF0010 */ sw $ra, 0x10($sp)
/* 31843C 802BD6EC 8CA20000 */ lw $v0, ($a1)
/* 318440 802BD6F0 10400008 */ beqz $v0, .L802BD714
/* 318444 802BD6F4 00000000 */ nop
/* 318448 802BD6F8 3C03802C */ lui $v1, 0x802c
/* 31844C 802BD6FC 8C63E89C */ lw $v1, -0x1764($v1)
/* 318450 802BD700 8C620008 */ lw $v0, 8($v1)
/* 318454 802BD704 ACA00000 */ sw $zero, ($a1)
/* 318458 802BD708 AC820000 */ sw $v0, ($a0)
/* 31845C 802BD70C 0C03BD17 */ jal clear_partner_move_history
/* 318460 802BD710 AC600004 */ sw $zero, 4($v1)
.L802BD714:
/* 318464 802BD714 8FBF0010 */ lw $ra, 0x10($sp)
/* 318468 802BD718 03E00008 */ jr $ra
/* 31846C 802BD71C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,15 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD720
/* 318470 802BD720 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 318474 802BD724 8042EBB0 */ lb $v0, %lo(D_8010EBB0)($v0)
/* 318478 802BD728 10400005 */ beqz $v0, .L802BD740
/* 31847C 802BD72C 24020001 */ addiu $v0, $zero, 1
/* 318480 802BD730 3C01802C */ lui $at, 0x802c
/* 318484 802BD734 AC22E934 */ sw $v0, -0x16cc($at)
/* 318488 802BD738 03E00008 */ jr $ra
/* 31848C 802BD73C 0000102D */ daddu $v0, $zero, $zero
.L802BD740:
/* 318490 802BD740 03E00008 */ jr $ra
/* 318494 802BD744 00000000 */ nop

View File

@ -0,0 +1,8 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD748
/* 318498 802BD748 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 31849C 802BD74C 8042EBB0 */ lb $v0, %lo(D_8010EBB0)($v0)
/* 3184A0 802BD750 03E00008 */ jr $ra
/* 3184A4 802BD754 2C420001 */ sltiu $v0, $v0, 1

View File

@ -0,0 +1,928 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD758
/* 3184A8 802BD758 3C02800B */ lui $v0, 0x800b
/* 3184AC 802BD75C 80420F18 */ lb $v0, 0xf18($v0)
/* 3184B0 802BD760 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 3184B4 802BD764 AFB20038 */ sw $s2, 0x38($sp)
/* 3184B8 802BD768 0080902D */ daddu $s2, $a0, $zero
/* 3184BC 802BD76C AFB3003C */ sw $s3, 0x3c($sp)
/* 3184C0 802BD770 3C138011 */ lui $s3, %hi(gPlayerStatus)
/* 3184C4 802BD774 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus)
/* 3184C8 802BD778 AFB40040 */ sw $s4, 0x40($sp)
/* 3184CC 802BD77C 3C148016 */ lui $s4, 0x8016
/* 3184D0 802BD780 2694A550 */ addiu $s4, $s4, -0x5ab0
/* 3184D4 802BD784 AFB50044 */ sw $s5, 0x44($sp)
/* 3184D8 802BD788 3C158011 */ lui $s5, %hi(D_8010EBB0)
/* 3184DC 802BD78C 26B5EBB0 */ addiu $s5, $s5, %lo(D_8010EBB0)
/* 3184E0 802BD790 AFBF0048 */ sw $ra, 0x48($sp)
/* 3184E4 802BD794 AFB10034 */ sw $s1, 0x34($sp)
/* 3184E8 802BD798 AFB00030 */ sw $s0, 0x30($sp)
/* 3184EC 802BD79C F7B40050 */ sdc1 $f20, 0x50($sp)
/* 3184F0 802BD7A0 8E51014C */ lw $s1, 0x14c($s2)
/* 3184F4 802BD7A4 14400346 */ bnez $v0, .L802BE4C0
/* 3184F8 802BD7A8 0000102D */ daddu $v0, $zero, $zero
/* 3184FC 802BD7AC 10A00005 */ beqz $a1, .L802BD7C4
/* 318500 802BD7B0 00000000 */ nop
/* 318504 802BD7B4 0C0AF5B7 */ jal func_802BD6DC
/* 318508 802BD7B8 0220202D */ daddu $a0, $s1, $zero
/* 31850C 802BD7BC 24020014 */ addiu $v0, $zero, 0x14
/* 318510 802BD7C0 AE420070 */ sw $v0, 0x70($s2)
.L802BD7C4:
/* 318514 802BD7C4 8E430070 */ lw $v1, 0x70($s2)
/* 318518 802BD7C8 24020002 */ addiu $v0, $zero, 2
/* 31851C 802BD7CC 106200E7 */ beq $v1, $v0, .L802BDB6C
/* 318520 802BD7D0 28620003 */ slti $v0, $v1, 3
/* 318524 802BD7D4 10400005 */ beqz $v0, .L802BD7EC
/* 318528 802BD7D8 24020001 */ addiu $v0, $zero, 1
/* 31852C 802BD7DC 106200AD */ beq $v1, $v0, .L802BDA94
/* 318530 802BD7E0 24020004 */ addiu $v0, $zero, 4
/* 318534 802BD7E4 080AF77C */ j .L802BDDF0
/* 318538 802BD7E8 00000000 */ nop
.L802BD7EC:
/* 31853C 802BD7EC 24020014 */ addiu $v0, $zero, 0x14
/* 318540 802BD7F0 10620005 */ beq $v1, $v0, .L802BD808
/* 318544 802BD7F4 24020015 */ addiu $v0, $zero, 0x15
/* 318548 802BD7F8 10620034 */ beq $v1, $v0, .L802BD8CC
/* 31854C 802BD7FC 00000000 */ nop
/* 318550 802BD800 080AF77A */ j .L802BDDE8
/* 318554 802BD804 00000000 */ nop
.L802BD808:
/* 318558 802BD808 82620015 */ lb $v0, 0x15($s3)
/* 31855C 802BD80C 1440032C */ bnez $v0, .L802BE4C0
/* 318560 802BD810 24020002 */ addiu $v0, $zero, 2
/* 318564 802BD814 8E620000 */ lw $v0, ($s3)
/* 318568 802BD818 30420002 */ andi $v0, $v0, 2
/* 31856C 802BD81C 14400328 */ bnez $v0, .L802BE4C0
/* 318570 802BD820 24020002 */ addiu $v0, $zero, 2
/* 318574 802BD824 8E220000 */ lw $v0, ($s1)
/* 318578 802BD828 30421000 */ andi $v0, $v0, 0x1000
/* 31857C 802BD82C 10400324 */ beqz $v0, .L802BE4C0
/* 318580 802BD830 24020002 */ addiu $v0, $zero, 2
/* 318584 802BD834 0C03805E */ jal disable_player_input
/* 318588 802BD838 00000000 */ nop
/* 31858C 802BD83C 82620015 */ lb $v0, 0x15($s3)
/* 318590 802BD840 24040001 */ addiu $a0, $zero, 1
/* 318594 802BD844 AE42007C */ sw $v0, 0x7c($s2)
/* 318598 802BD848 8E220000 */ lw $v0, ($s1)
/* 31859C 802BD84C 2403F5B7 */ addiu $v1, $zero, -0xa49
/* 3185A0 802BD850 3C01802C */ lui $at, 0x802c
/* 3185A4 802BD854 AC24E92C */ sw $a0, -0x16d4($at)
/* 3185A8 802BD858 3C01802C */ lui $at, 0x802c
/* 3185AC 802BD85C AC20E928 */ sw $zero, -0x16d8($at)
/* 3185B0 802BD860 3C01802C */ lui $at, 0x802c
/* 3185B4 802BD864 AC20E930 */ sw $zero, -0x16d0($at)
/* 3185B8 802BD868 3C01802C */ lui $at, 0x802c
/* 3185BC 802BD86C AC20E934 */ sw $zero, -0x16cc($at)
/* 3185C0 802BD870 00431024 */ and $v0, $v0, $v1
/* 3185C4 802BD874 AE220000 */ sw $v0, ($s1)
/* 3185C8 802BD878 24020003 */ addiu $v0, $zero, 3
/* 3185CC 802BD87C A2A40000 */ sb $a0, ($s5)
/* 3185D0 802BD880 0C03BD38 */ jal func_800EF4E0
/* 3185D4 802BD884 A2A20003 */ sb $v0, 3($s5)
/* 3185D8 802BD888 3C01802C */ lui $at, 0x802c
/* 3185DC 802BD88C AC22E920 */ sw $v0, -0x16e0($at)
/* 3185E0 802BD890 0C00EB49 */ jal enable_npc_blur
/* 3185E4 802BD894 0220202D */ daddu $a0, $s1, $zero
/* 3185E8 802BD898 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 3185EC 802BD89C C62E0040 */ lwc1 $f14, 0x40($s1)
/* 3185F0 802BD8A0 24020004 */ addiu $v0, $zero, 4
/* 3185F4 802BD8A4 A622008E */ sh $v0, 0x8e($s1)
/* 3185F8 802BD8A8 8E660028 */ lw $a2, 0x28($s3)
/* 3185FC 802BD8AC 0C00A720 */ jal atan2
/* 318600 802BD8B0 8E670030 */ lw $a3, 0x30($s3)
/* 318604 802BD8B4 3C040001 */ lui $a0, 1
/* 318608 802BD8B8 34840002 */ ori $a0, $a0, 2
/* 31860C 802BD8BC 0C037FBF */ jal func_800DFEFC
/* 318610 802BD8C0 E620000C */ swc1 $f0, 0xc($s1)
/* 318614 802BD8C4 24020015 */ addiu $v0, $zero, 0x15
/* 318618 802BD8C8 AE420070 */ sw $v0, 0x70($s2)
.L802BD8CC:
/* 31861C 802BD8CC 926200B4 */ lbu $v0, 0xb4($s3)
/* 318620 802BD8D0 2442FFEB */ addiu $v0, $v0, -0x15
/* 318624 802BD8D4 2C420002 */ sltiu $v0, $v0, 2
/* 318628 802BD8D8 10400005 */ beqz $v0, .L802BD8F0
/* 31862C 802BD8DC 00000000 */ nop
/* 318630 802BD8E0 0C00EB6B */ jal disable_npc_blur
/* 318634 802BD8E4 0220202D */ daddu $a0, $s1, $zero
/* 318638 802BD8E8 080AF6E4 */ j .L802BDB90
/* 31863C 802BD8EC 24020007 */ addiu $v0, $zero, 7
.L802BD8F0:
/* 318640 802BD8F0 8E620000 */ lw $v0, ($s3)
/* 318644 802BD8F4 30420002 */ andi $v0, $v0, 2
/* 318648 802BD8F8 144000A5 */ bnez $v0, .L802BDB90
/* 31864C 802BD8FC 24020007 */ addiu $v0, $zero, 7
/* 318650 802BD900 3C020003 */ lui $v0, 3
/* 318654 802BD904 C6600028 */ lwc1 $f0, 0x28($s3)
/* 318658 802BD908 34420007 */ ori $v0, $v0, 7
/* 31865C 802BD90C E6200060 */ swc1 $f0, 0x60($s1)
/* 318660 802BD910 C660002C */ lwc1 $f0, 0x2c($s3)
/* 318664 802BD914 26240060 */ addiu $a0, $s1, 0x60
/* 318668 802BD918 E6200064 */ swc1 $f0, 0x64($s1)
/* 31866C 802BD91C C6600030 */ lwc1 $f0, 0x30($s3)
/* 318670 802BD920 26250068 */ addiu $a1, $s1, 0x68
/* 318674 802BD924 AE220028 */ sw $v0, 0x28($s1)
/* 318678 802BD928 E6200068 */ swc1 $f0, 0x68($s1)
/* 31867C 802BD92C 8E670080 */ lw $a3, 0x80($s3)
/* 318680 802BD930 0C00A7E7 */ jal add_vec2D_polar
/* 318684 802BD934 0000302D */ daddu $a2, $zero, $zero
/* 318688 802BD938 3C02802C */ lui $v0, 0x802c
/* 31868C 802BD93C 8C42E920 */ lw $v0, -0x16e0($v0)
/* 318690 802BD940 C66C0080 */ lwc1 $f12, 0x80($s3)
/* 318694 802BD944 3C0142B4 */ lui $at, 0x42b4
/* 318698 802BD948 44810000 */ mtc1 $at, $f0
/* 31869C 802BD94C 10400003 */ beqz $v0, .L802BD95C
/* 3186A0 802BD950 00000000 */ nop
/* 3186A4 802BD954 3C01C2B4 */ lui $at, 0xc2b4
/* 3186A8 802BD958 44810000 */ mtc1 $at, $f0
.L802BD95C:
/* 3186AC 802BD95C 0C00A6C9 */ jal clamp_angle
/* 3186B0 802BD960 46006300 */ add.s $f12, $f12, $f0
/* 3186B4 802BD964 866200B2 */ lh $v0, 0xb2($s3)
/* 3186B8 802BD968 26240060 */ addiu $a0, $s1, 0x60
/* 3186BC 802BD96C 04410002 */ bgez $v0, .L802BD978
/* 3186C0 802BD970 26250068 */ addiu $a1, $s1, 0x68
/* 3186C4 802BD974 24420003 */ addiu $v0, $v0, 3
.L802BD978:
/* 3186C8 802BD978 00021083 */ sra $v0, $v0, 2
/* 3186CC 802BD97C 44828000 */ mtc1 $v0, $f16
/* 3186D0 802BD980 00000000 */ nop
/* 3186D4 802BD984 46808420 */ cvt.s.w $f16, $f16
/* 3186D8 802BD988 44070000 */ mfc1 $a3, $f0
/* 3186DC 802BD98C 44068000 */ mfc1 $a2, $f16
/* 3186E0 802BD990 0C00A7E7 */ jal add_vec2D_polar
/* 3186E4 802BD994 00000000 */ nop
/* 3186E8 802BD998 C6200060 */ lwc1 $f0, 0x60($s1)
/* 3186EC 802BD99C C62A0038 */ lwc1 $f10, 0x38($s1)
/* 3186F0 802BD9A0 8622008E */ lh $v0, 0x8e($s1)
/* 3186F4 802BD9A4 C6240064 */ lwc1 $f4, 0x64($s1)
/* 3186F8 802BD9A8 C628003C */ lwc1 $f8, 0x3c($s1)
/* 3186FC 802BD9AC C6260040 */ lwc1 $f6, 0x40($s1)
/* 318700 802BD9B0 44821000 */ mtc1 $v0, $f2
/* 318704 802BD9B4 00000000 */ nop
/* 318708 802BD9B8 468010A0 */ cvt.s.w $f2, $f2
/* 31870C 802BD9BC 0040202D */ daddu $a0, $v0, $zero
/* 318710 802BD9C0 460A0001 */ sub.s $f0, $f0, $f10
/* 318714 802BD9C4 0080182D */ daddu $v1, $a0, $zero
/* 318718 802BD9C8 9622008E */ lhu $v0, 0x8e($s1)
/* 31871C 802BD9CC 46082101 */ sub.s $f4, $f4, $f8
/* 318720 802BD9D0 2442FFFF */ addiu $v0, $v0, -1
/* 318724 802BD9D4 A622008E */ sh $v0, 0x8e($s1)
/* 318728 802BD9D8 46020003 */ div.s $f0, $f0, $f2
/* 31872C 802BD9DC 46005280 */ add.s $f10, $f10, $f0
/* 318730 802BD9E0 C6220068 */ lwc1 $f2, 0x68($s1)
/* 318734 802BD9E4 00021400 */ sll $v0, $v0, 0x10
/* 318738 802BD9E8 46061081 */ sub.s $f2, $f2, $f6
/* 31873C 802BD9EC 44840000 */ mtc1 $a0, $f0
/* 318740 802BD9F0 00000000 */ nop
/* 318744 802BD9F4 46800020 */ cvt.s.w $f0, $f0
/* 318748 802BD9F8 46002103 */ div.s $f4, $f4, $f0
/* 31874C 802BD9FC 46044200 */ add.s $f8, $f8, $f4
/* 318750 802BDA00 44830000 */ mtc1 $v1, $f0
/* 318754 802BDA04 00000000 */ nop
/* 318758 802BDA08 46800020 */ cvt.s.w $f0, $f0
/* 31875C 802BDA0C 46001083 */ div.s $f2, $f2, $f0
/* 318760 802BDA10 46023180 */ add.s $f6, $f6, $f2
/* 318764 802BDA14 E62A0038 */ swc1 $f10, 0x38($s1)
/* 318768 802BDA18 E628003C */ swc1 $f8, 0x3c($s1)
/* 31876C 802BDA1C 144000F2 */ bnez $v0, .L802BDDE8
/* 318770 802BDA20 E6260040 */ swc1 $f6, 0x40($s1)
/* 318774 802BDA24 82630015 */ lb $v1, 0x15($s3)
/* 318778 802BDA28 8E42007C */ lw $v0, 0x7c($s2)
/* 31877C 802BDA2C 0043102A */ slt $v0, $v0, $v1
/* 318780 802BDA30 10400005 */ beqz $v0, .L802BDA48
/* 318784 802BDA34 0220202D */ daddu $a0, $s1, $zero
/* 318788 802BDA38 0C00EB6B */ jal disable_npc_blur
/* 31878C 802BDA3C 0220202D */ daddu $a0, $s1, $zero
/* 318790 802BDA40 080AF6E4 */ j .L802BDB90
/* 318794 802BDA44 24020007 */ addiu $v0, $zero, 7
.L802BDA48:
/* 318798 802BDA48 C6200060 */ lwc1 $f0, 0x60($s1)
/* 31879C 802BDA4C C6220064 */ lwc1 $f2, 0x64($s1)
/* 3187A0 802BDA50 C6240068 */ lwc1 $f4, 0x68($s1)
/* 3187A4 802BDA54 E6200038 */ swc1 $f0, 0x38($s1)
/* 3187A8 802BDA58 E622003C */ swc1 $f2, 0x3c($s1)
/* 3187AC 802BDA5C 0C00EB6B */ jal disable_npc_blur
/* 3187B0 802BDA60 E6240040 */ swc1 $f4, 0x40($s1)
/* 3187B4 802BDA64 3C040006 */ lui $a0, 6
/* 3187B8 802BDA68 0C037FBF */ jal func_800DFEFC
/* 3187BC 802BDA6C 3484000C */ ori $a0, $a0, 0xc
/* 3187C0 802BDA70 3C020003 */ lui $v0, 3
/* 3187C4 802BDA74 C6600080 */ lwc1 $f0, 0x80($s3)
/* 3187C8 802BDA78 34420005 */ ori $v0, $v0, 5
/* 3187CC 802BDA7C AE220028 */ sw $v0, 0x28($s1)
/* 3187D0 802BDA80 24020001 */ addiu $v0, $zero, 1
/* 3187D4 802BDA84 E620000C */ swc1 $f0, 0xc($s1)
/* 3187D8 802BDA88 AE420070 */ sw $v0, 0x70($s2)
/* 3187DC 802BDA8C 2402000A */ addiu $v0, $zero, 0xa
/* 3187E0 802BDA90 AE420074 */ sw $v0, 0x74($s2)
.L802BDA94:
/* 3187E4 802BDA94 926200B4 */ lbu $v0, 0xb4($s3)
/* 3187E8 802BDA98 2442FFEB */ addiu $v0, $v0, -0x15
/* 3187EC 802BDA9C 2C420002 */ sltiu $v0, $v0, 2
/* 3187F0 802BDAA0 1440003B */ bnez $v0, .L802BDB90
/* 3187F4 802BDAA4 24020007 */ addiu $v0, $zero, 7
/* 3187F8 802BDAA8 866200B0 */ lh $v0, 0xb0($s3)
/* 3187FC 802BDAAC C660002C */ lwc1 $f0, 0x2c($s3)
/* 318800 802BDAB0 44821000 */ mtc1 $v0, $f2
/* 318804 802BDAB4 00000000 */ nop
/* 318808 802BDAB8 468010A0 */ cvt.s.w $f2, $f2
/* 31880C 802BDABC 46020000 */ add.s $f0, $f0, $f2
/* 318810 802BDAC0 E620003C */ swc1 $f0, 0x3c($s1)
/* 318814 802BDAC4 C6600080 */ lwc1 $f0, 0x80($s3)
/* 318818 802BDAC8 E620000C */ swc1 $f0, 0xc($s1)
/* 31881C 802BDACC 8E420074 */ lw $v0, 0x74($s2)
/* 318820 802BDAD0 24100001 */ addiu $s0, $zero, 1
/* 318824 802BDAD4 14500005 */ bne $v0, $s0, .L802BDAEC
/* 318828 802BDAD8 00000000 */ nop
/* 31882C 802BDADC 3C040006 */ lui $a0, 6
/* 318830 802BDAE0 0C037FBF */ jal func_800DFEFC
/* 318834 802BDAE4 34840006 */ ori $a0, $a0, 6
/* 318838 802BDAE8 8E420074 */ lw $v0, 0x74($s2)
.L802BDAEC:
/* 31883C 802BDAEC 144000A8 */ bnez $v0, .L802BDD90
/* 318840 802BDAF0 2442FFFF */ addiu $v0, $v0, -1
/* 318844 802BDAF4 3C048000 */ lui $a0, 0x8000
/* 318848 802BDAF8 0000282D */ daddu $a1, $zero, $zero
/* 31884C 802BDAFC 0C052742 */ jal play_sound_at_npc
/* 318850 802BDB00 2406FFFC */ addiu $a2, $zero, -4
/* 318854 802BDB04 26240038 */ addiu $a0, $s1, 0x38
/* 318858 802BDB08 4480A000 */ mtc1 $zero, $f20
/* 31885C 802BDB0C 8E27000C */ lw $a3, 0xc($s1)
/* 318860 802BDB10 4406A000 */ mfc1 $a2, $f20
/* 318864 802BDB14 3C01802C */ lui $at, 0x802c
/* 318868 802BDB18 AC30E924 */ sw $s0, -0x16dc($at)
/* 31886C 802BDB1C 0C00A7E7 */ jal add_vec2D_polar
/* 318870 802BDB20 26250040 */ addiu $a1, $s1, 0x40
/* 318874 802BDB24 3C030003 */ lui $v1, 3
/* 318878 802BDB28 8E220000 */ lw $v0, ($s1)
/* 31887C 802BDB2C 3C013F80 */ lui $at, 0x3f80
/* 318880 802BDB30 44810000 */ mtc1 $at, $f0
/* 318884 802BDB34 34630006 */ ori $v1, $v1, 6
/* 318888 802BDB38 AE230028 */ sw $v1, 0x28($s1)
/* 31888C 802BDB3C 2403FEFF */ addiu $v1, $zero, -0x101
/* 318890 802BDB40 E634001C */ swc1 $f20, 0x1c($s1)
/* 318894 802BDB44 3C01802C */ lui $at, 0x802c
/* 318898 802BDB48 AC20E938 */ sw $zero, -0x16c8($at)
/* 31889C 802BDB4C 34420200 */ ori $v0, $v0, 0x200
/* 3188A0 802BDB50 00431024 */ and $v0, $v0, $v1
/* 3188A4 802BDB54 AE220000 */ sw $v0, ($s1)
/* 3188A8 802BDB58 24020002 */ addiu $v0, $zero, 2
/* 3188AC 802BDB5C E6200018 */ swc1 $f0, 0x18($s1)
/* 3188B0 802BDB60 AE420070 */ sw $v0, 0x70($s2)
/* 3188B4 802BDB64 24020032 */ addiu $v0, $zero, 0x32
/* 3188B8 802BDB68 AE420074 */ sw $v0, 0x74($s2)
.L802BDB6C:
/* 3188BC 802BDB6C 8E620004 */ lw $v0, 4($s3)
/* 3188C0 802BDB70 30420004 */ andi $v0, $v0, 4
/* 3188C4 802BDB74 14400006 */ bnez $v0, .L802BDB90
/* 3188C8 802BDB78 24020007 */ addiu $v0, $zero, 7
/* 3188CC 802BDB7C 926200B4 */ lbu $v0, 0xb4($s3)
/* 3188D0 802BDB80 2442FFEB */ addiu $v0, $v0, -0x15
/* 3188D4 802BDB84 2C420002 */ sltiu $v0, $v0, 2
/* 3188D8 802BDB88 10400003 */ beqz $v0, .L802BDB98
/* 3188DC 802BDB8C 24020007 */ addiu $v0, $zero, 7
.L802BDB90:
/* 3188E0 802BDB90 080AF77A */ j .L802BDDE8
/* 3188E4 802BDB94 AE420070 */ sw $v0, 0x70($s2)
.L802BDB98:
/* 3188E8 802BDB98 8E420074 */ lw $v0, 0x74($s2)
/* 3188EC 802BDB9C 2842002D */ slti $v0, $v0, 0x2d
/* 3188F0 802BDBA0 10400015 */ beqz $v0, .L802BDBF8
/* 3188F4 802BDBA4 3C040001 */ lui $a0, 1
/* 3188F8 802BDBA8 8E220000 */ lw $v0, ($s1)
/* 3188FC 802BDBAC 30422000 */ andi $v0, $v0, 0x2000
/* 318900 802BDBB0 1440000E */ bnez $v0, .L802BDBEC
/* 318904 802BDBB4 24020001 */ addiu $v0, $zero, 1
/* 318908 802BDBB8 3C02802C */ lui $v0, 0x802c
/* 31890C 802BDBBC 8C42E938 */ lw $v0, -0x16c8($v0)
/* 318910 802BDBC0 1440000A */ bnez $v0, .L802BDBEC
/* 318914 802BDBC4 24020001 */ addiu $v0, $zero, 1
/* 318918 802BDBC8 8E250018 */ lw $a1, 0x18($s1)
/* 31891C 802BDBCC 8E26000C */ lw $a2, 0xc($s1)
/* 318920 802BDBD0 0C00EA95 */ jal npc_move_heading
/* 318924 802BDBD4 0220202D */ daddu $a0, $s1, $zero
/* 318928 802BDBD8 0220202D */ daddu $a0, $s1, $zero
/* 31892C 802BDBDC 0C00F598 */ jal func_8003D660
/* 318930 802BDBE0 0000282D */ daddu $a1, $zero, $zero
/* 318934 802BDBE4 080AF6FE */ j .L802BDBF8
/* 318938 802BDBE8 3C040001 */ lui $a0, 1
.L802BDBEC:
/* 31893C 802BDBEC 3C01802C */ lui $at, 0x802c
/* 318940 802BDBF0 AC22E938 */ sw $v0, -0x16c8($at)
/* 318944 802BDBF4 3C040001 */ lui $a0, 1
.L802BDBF8:
/* 318948 802BDBF8 27A50020 */ addiu $a1, $sp, 0x20
/* 31894C 802BDBFC C6200038 */ lwc1 $f0, 0x38($s1)
/* 318950 802BDC00 3C014160 */ lui $at, 0x4160
/* 318954 802BDC04 44811000 */ mtc1 $at, $f2
/* 318958 802BDC08 3C014180 */ lui $at, 0x4180
/* 31895C 802BDC0C 44813000 */ mtc1 $at, $f6
/* 318960 802BDC10 27A2002C */ addiu $v0, $sp, 0x2c
/* 318964 802BDC14 E7A00020 */ swc1 $f0, 0x20($sp)
/* 318968 802BDC18 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31896C 802BDC1C C6240040 */ lwc1 $f4, 0x40($s1)
/* 318970 802BDC20 46020000 */ add.s $f0, $f0, $f2
/* 318974 802BDC24 E7A6002C */ swc1 $f6, 0x2c($sp)
/* 318978 802BDC28 E7A40028 */ swc1 $f4, 0x28($sp)
/* 31897C 802BDC2C E7A00024 */ swc1 $f0, 0x24($sp)
/* 318980 802BDC30 AFA20010 */ sw $v0, 0x10($sp)
/* 318984 802BDC34 C620000C */ lwc1 $f0, 0xc($s1)
/* 318988 802BDC38 27A60024 */ addiu $a2, $sp, 0x24
/* 31898C 802BDC3C E7A00014 */ swc1 $f0, 0x14($sp)
/* 318990 802BDC40 862200A6 */ lh $v0, 0xa6($s1)
/* 318994 802BDC44 27A70028 */ addiu $a3, $sp, 0x28
/* 318998 802BDC48 44820000 */ mtc1 $v0, $f0
/* 31899C 802BDC4C 00000000 */ nop
/* 3189A0 802BDC50 46800020 */ cvt.s.w $f0, $f0
/* 3189A4 802BDC54 0C0371DE */ jal func_800DC778
/* 3189A8 802BDC58 E7A00018 */ swc1 $f0, 0x18($sp)
/* 3189AC 802BDC5C 10400023 */ beqz $v0, .L802BDCEC
/* 3189B0 802BDC60 00000000 */ nop
/* 3189B4 802BDC64 3C048011 */ lui $a0, 0x8011
/* 3189B8 802BDC68 8C84C978 */ lw $a0, -0x3688($a0)
/* 3189BC 802BDC6C 0C016F6A */ jal get_collider_type_by_id
/* 3189C0 802BDC70 00000000 */ nop
/* 3189C4 802BDC74 304200FF */ andi $v0, $v0, 0xff
/* 3189C8 802BDC78 2442FFFE */ addiu $v0, $v0, -2
/* 3189CC 802BDC7C 2C420002 */ sltiu $v0, $v0, 2
/* 3189D0 802BDC80 1040001A */ beqz $v0, .L802BDCEC
/* 3189D4 802BDC84 00000000 */ nop
/* 3189D8 802BDC88 826200B4 */ lb $v0, 0xb4($s3)
/* 3189DC 802BDC8C 14400005 */ bnez $v0, .L802BDCA4
/* 3189E0 802BDC90 3C020003 */ lui $v0, 3
/* 3189E4 802BDC94 3C040001 */ lui $a0, 1
/* 3189E8 802BDC98 0C037FBF */ jal func_800DFEFC
/* 3189EC 802BDC9C 34840002 */ ori $a0, $a0, 2
/* 3189F0 802BDCA0 3C020003 */ lui $v0, 3
.L802BDCA4:
/* 3189F4 802BDCA4 34420010 */ ori $v0, $v0, 0x10
/* 3189F8 802BDCA8 2403FDFF */ addiu $v1, $zero, -0x201
/* 3189FC 802BDCAC AE220028 */ sw $v0, 0x28($s1)
/* 318A00 802BDCB0 8E220000 */ lw $v0, ($s1)
/* 318A04 802BDCB4 3C04802C */ lui $a0, 0x802c
/* 318A08 802BDCB8 2484E92C */ addiu $a0, $a0, -0x16d4
/* 318A0C 802BDCBC 00431024 */ and $v0, $v0, $v1
/* 318A10 802BDCC0 AE220000 */ sw $v0, ($s1)
/* 318A14 802BDCC4 24020002 */ addiu $v0, $zero, 2
/* 318A18 802BDCC8 AE420074 */ sw $v0, 0x74($s2)
/* 318A1C 802BDCCC 8C830000 */ lw $v1, ($a0)
/* 318A20 802BDCD0 24020003 */ addiu $v0, $zero, 3
/* 318A24 802BDCD4 10600044 */ beqz $v1, .L802BDDE8
/* 318A28 802BDCD8 AE420070 */ sw $v0, 0x70($s2)
/* 318A2C 802BDCDC 0C038069 */ jal enable_player_input
/* 318A30 802BDCE0 AC800000 */ sw $zero, ($a0)
/* 318A34 802BDCE4 080AF77A */ j .L802BDDE8
/* 318A38 802BDCE8 00000000 */ nop
.L802BDCEC:
/* 318A3C 802BDCEC 8E420074 */ lw $v0, 0x74($s2)
/* 318A40 802BDCF0 30420003 */ andi $v0, $v0, 3
/* 318A44 802BDCF4 1440000B */ bnez $v0, .L802BDD24
/* 318A48 802BDCF8 00000000 */ nop
/* 318A4C 802BDCFC 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 318A50 802BDD00 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 318A54 802BDD04 94420134 */ lhu $v0, 0x134($v0)
/* 318A58 802BDD08 30420001 */ andi $v0, $v0, 1
/* 318A5C 802BDD0C 10400002 */ beqz $v0, .L802BDD18
/* 318A60 802BDD10 24040142 */ addiu $a0, $zero, 0x142
/* 318A64 802BDD14 24040141 */ addiu $a0, $zero, 0x141
.L802BDD18:
/* 318A68 802BDD18 0000282D */ daddu $a1, $zero, $zero
/* 318A6C 802BDD1C 0C052742 */ jal play_sound_at_npc
/* 318A70 802BDD20 2406FFFC */ addiu $a2, $zero, -4
.L802BDD24:
/* 318A74 802BDD24 8E430074 */ lw $v1, 0x74($s2)
/* 318A78 802BDD28 24020028 */ addiu $v0, $zero, 0x28
/* 318A7C 802BDD2C 1462000A */ bne $v1, $v0, .L802BDD58
/* 318A80 802BDD30 00000000 */ nop
/* 318A84 802BDD34 826200B4 */ lb $v0, 0xb4($s3)
/* 318A88 802BDD38 14400003 */ bnez $v0, .L802BDD48
/* 318A8C 802BDD3C 3C040001 */ lui $a0, 1
/* 318A90 802BDD40 0C037FBF */ jal func_800DFEFC
/* 318A94 802BDD44 34840002 */ ori $a0, $a0, 2
.L802BDD48:
/* 318A98 802BDD48 0C038069 */ jal enable_player_input
/* 318A9C 802BDD4C 00000000 */ nop
/* 318AA0 802BDD50 3C01802C */ lui $at, 0x802c
/* 318AA4 802BDD54 AC20E92C */ sw $zero, -0x16d4($at)
.L802BDD58:
/* 318AA8 802BDD58 0C00E403 */ jal npc_do_other_npc_collision
/* 318AAC 802BDD5C 0220202D */ daddu $a0, $s1, $zero
/* 318AB0 802BDD60 8E220000 */ lw $v0, ($s1)
/* 318AB4 802BDD64 3C030200 */ lui $v1, 0x200
/* 318AB8 802BDD68 00431024 */ and $v0, $v0, $v1
/* 318ABC 802BDD6C 1440000A */ bnez $v0, .L802BDD98
/* 318AC0 802BDD70 00000000 */ nop
/* 318AC4 802BDD74 3C02802C */ lui $v0, 0x802c
/* 318AC8 802BDD78 8C42E934 */ lw $v0, -0x16cc($v0)
/* 318ACC 802BDD7C 1440000E */ bnez $v0, .L802BDDB8
/* 318AD0 802BDD80 3C020003 */ lui $v0, 3
/* 318AD4 802BDD84 8E420074 */ lw $v0, 0x74($s2)
/* 318AD8 802BDD88 1040000A */ beqz $v0, .L802BDDB4
/* 318ADC 802BDD8C 2442FFFF */ addiu $v0, $v0, -1
.L802BDD90:
/* 318AE0 802BDD90 080AF77A */ j .L802BDDE8
/* 318AE4 802BDD94 AE420074 */ sw $v0, 0x74($s2)
.L802BDD98:
/* 318AE8 802BDD98 3C03802C */ lui $v1, 0x802c
/* 318AEC 802BDD9C 2463E92C */ addiu $v1, $v1, -0x16d4
/* 318AF0 802BDDA0 8C620000 */ lw $v0, ($v1)
/* 318AF4 802BDDA4 10400004 */ beqz $v0, .L802BDDB8
/* 318AF8 802BDDA8 3C020003 */ lui $v0, 3
/* 318AFC 802BDDAC 0C038069 */ jal enable_player_input
/* 318B00 802BDDB0 AC600000 */ sw $zero, ($v1)
.L802BDDB4:
/* 318B04 802BDDB4 3C020003 */ lui $v0, 3
.L802BDDB8:
/* 318B08 802BDDB8 34420010 */ ori $v0, $v0, 0x10
/* 318B0C 802BDDBC AE220028 */ sw $v0, 0x28($s1)
/* 318B10 802BDDC0 24020014 */ addiu $v0, $zero, 0x14
/* 318B14 802BDDC4 AE420074 */ sw $v0, 0x74($s2)
/* 318B18 802BDDC8 24020003 */ addiu $v0, $zero, 3
/* 318B1C 802BDDCC AE420070 */ sw $v0, 0x70($s2)
/* 318B20 802BDDD0 826200B4 */ lb $v0, 0xb4($s3)
/* 318B24 802BDDD4 14400004 */ bnez $v0, .L802BDDE8
/* 318B28 802BDDD8 00000000 */ nop
/* 318B2C 802BDDDC 3C040001 */ lui $a0, 1
/* 318B30 802BDDE0 0C037FBF */ jal func_800DFEFC
/* 318B34 802BDDE4 34840002 */ ori $a0, $a0, 2
.L802BDDE8:
/* 318B38 802BDDE8 8E430070 */ lw $v1, 0x70($s2)
/* 318B3C 802BDDEC 24020004 */ addiu $v0, $zero, 4
.L802BDDF0:
/* 318B40 802BDDF0 10620062 */ beq $v1, $v0, .L802BDF7C
/* 318B44 802BDDF4 28620005 */ slti $v0, $v1, 5
/* 318B48 802BDDF8 10400005 */ beqz $v0, .L802BDE10
/* 318B4C 802BDDFC 24020003 */ addiu $v0, $zero, 3
/* 318B50 802BDE00 1062000A */ beq $v1, $v0, .L802BDE2C
/* 318B54 802BDE04 00000000 */ nop
/* 318B58 802BDE08 080AF8BE */ j .L802BE2F8
/* 318B5C 802BDE0C 00000000 */ nop
.L802BDE10:
/* 318B60 802BDE10 24020005 */ addiu $v0, $zero, 5
/* 318B64 802BDE14 106200A0 */ beq $v1, $v0, .L802BE098
/* 318B68 802BDE18 24020006 */ addiu $v0, $zero, 6
/* 318B6C 802BDE1C 106200E3 */ beq $v1, $v0, .L802BE1AC
/* 318B70 802BDE20 00000000 */ nop
/* 318B74 802BDE24 080AF8BE */ j .L802BE2F8
/* 318B78 802BDE28 00000000 */ nop
.L802BDE2C:
/* 318B7C 802BDE2C 8E420074 */ lw $v0, 0x74($s2)
/* 318B80 802BDE30 144000BF */ bnez $v0, .L802BE130
/* 318B84 802BDE34 2442FFFF */ addiu $v0, $v0, -1
/* 318B88 802BDE38 3C03802C */ lui $v1, 0x802c
/* 318B8C 802BDE3C 2463E924 */ addiu $v1, $v1, -0x16dc
/* 318B90 802BDE40 8C620000 */ lw $v0, ($v1)
/* 318B94 802BDE44 10400004 */ beqz $v0, .L802BDE58
/* 318B98 802BDE48 00000000 */ nop
/* 318B9C 802BDE4C AC600000 */ sw $zero, ($v1)
/* 318BA0 802BDE50 0C05271B */ jal stop_sound
/* 318BA4 802BDE54 3C048000 */ lui $a0, 0x8000
.L802BDE58:
/* 318BA8 802BDE58 3C108011 */ lui $s0, %hi(gPlayerData)
/* 318BAC 802BDE5C 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 318BB0 802BDE60 8E250038 */ lw $a1, 0x38($s1)
/* 318BB4 802BDE64 862200A8 */ lh $v0, 0xa8($s1)
/* 318BB8 802BDE68 3C013F00 */ lui $at, 0x3f00
/* 318BBC 802BDE6C 44811000 */ mtc1 $at, $f2
/* 318BC0 802BDE70 44820000 */ mtc1 $v0, $f0
/* 318BC4 802BDE74 00000000 */ nop
/* 318BC8 802BDE78 46800020 */ cvt.s.w $f0, $f0
/* 318BCC 802BDE7C 46020002 */ mul.s $f0, $f0, $f2
/* 318BD0 802BDE80 00000000 */ nop
/* 318BD4 802BDE84 8E270040 */ lw $a3, 0x40($s1)
/* 318BD8 802BDE88 82020012 */ lb $v0, 0x12($s0)
/* 318BDC 802BDE8C C622003C */ lwc1 $f2, 0x3c($s1)
/* 318BE0 802BDE90 000210C0 */ sll $v0, $v0, 3
/* 318BE4 802BDE94 46001080 */ add.s $f2, $f2, $f0
/* 318BE8 802BDE98 00501021 */ addu $v0, $v0, $s0
/* 318BEC 802BDE9C 80440015 */ lb $a0, 0x15($v0)
/* 318BF0 802BDEA0 44061000 */ mfc1 $a2, $f2
/* 318BF4 802BDEA4 0C01C07C */ jal func_800701F0
/* 318BF8 802BDEA8 00000000 */ nop
/* 318BFC 802BDEAC 82020012 */ lb $v0, 0x12($s0)
/* 318C00 802BDEB0 000210C0 */ sll $v0, $v0, 3
/* 318C04 802BDEB4 00501021 */ addu $v0, $v0, $s0
/* 318C08 802BDEB8 80430015 */ lb $v1, 0x15($v0)
/* 318C0C 802BDEBC 24020001 */ addiu $v0, $zero, 1
/* 318C10 802BDEC0 1062000D */ beq $v1, $v0, .L802BDEF8
/* 318C14 802BDEC4 28620002 */ slti $v0, $v1, 2
/* 318C18 802BDEC8 10400005 */ beqz $v0, .L802BDEE0
/* 318C1C 802BDECC 24020002 */ addiu $v0, $zero, 2
/* 318C20 802BDED0 10600007 */ beqz $v1, .L802BDEF0
/* 318C24 802BDED4 0000202D */ daddu $a0, $zero, $zero
/* 318C28 802BDED8 080AF7C6 */ j .L802BDF18
/* 318C2C 802BDEDC 0080282D */ daddu $a1, $a0, $zero
.L802BDEE0:
/* 318C30 802BDEE0 10620007 */ beq $v1, $v0, .L802BDF00
/* 318C34 802BDEE4 0000202D */ daddu $a0, $zero, $zero
/* 318C38 802BDEE8 080AF7C6 */ j .L802BDF18
/* 318C3C 802BDEEC 0080282D */ daddu $a1, $a0, $zero
.L802BDEF0:
/* 318C40 802BDEF0 080AF7C1 */ j .L802BDF04
/* 318C44 802BDEF4 24042016 */ addiu $a0, $zero, 0x2016
.L802BDEF8:
/* 318C48 802BDEF8 080AF7C1 */ j .L802BDF04
/* 318C4C 802BDEFC 24042017 */ addiu $a0, $zero, 0x2017
.L802BDF00:
/* 318C50 802BDF00 24042018 */ addiu $a0, $zero, 0x2018
.L802BDF04:
/* 318C54 802BDF04 0000282D */ daddu $a1, $zero, $zero
/* 318C58 802BDF08 0C052742 */ jal play_sound_at_npc
/* 318C5C 802BDF0C 2406FFFC */ addiu $a2, $zero, -4
/* 318C60 802BDF10 0000202D */ daddu $a0, $zero, $zero
/* 318C64 802BDF14 0080282D */ daddu $a1, $a0, $zero
.L802BDF18:
/* 318C68 802BDF18 0C0B2D5B */ jal exec_ShakeCam1
/* 318C6C 802BDF1C 24060014 */ addiu $a2, $zero, 0x14
/* 318C70 802BDF20 0220202D */ daddu $a0, $s1, $zero
/* 318C74 802BDF24 0C00F598 */ jal func_8003D660
/* 318C78 802BDF28 24050002 */ addiu $a1, $zero, 2
/* 318C7C 802BDF2C A6800018 */ sh $zero, 0x18($s4)
/* 318C80 802BDF30 C6200038 */ lwc1 $f0, 0x38($s1)
/* 318C84 802BDF34 E680001C */ swc1 $f0, 0x1c($s4)
/* 318C88 802BDF38 C620003C */ lwc1 $f0, 0x3c($s1)
/* 318C8C 802BDF3C E6800020 */ swc1 $f0, 0x20($s4)
/* 318C90 802BDF40 C6200040 */ lwc1 $f0, 0x40($s1)
/* 318C94 802BDF44 0220202D */ daddu $a0, $s1, $zero
/* 318C98 802BDF48 0C0AF440 */ jal func_802BD100_317E50
/* 318C9C 802BDF4C E6800024 */ swc1 $f0, 0x24($s4)
/* 318CA0 802BDF50 24020001 */ addiu $v0, $zero, 1
/* 318CA4 802BDF54 3C01802C */ lui $at, 0x802c
/* 318CA8 802BDF58 AC22E928 */ sw $v0, -0x16d8($at)
/* 318CAC 802BDF5C 24020002 */ addiu $v0, $zero, 2
/* 318CB0 802BDF60 A2A20000 */ sb $v0, ($s5)
/* 318CB4 802BDF64 8E420070 */ lw $v0, 0x70($s2)
/* 318CB8 802BDF68 24030003 */ addiu $v1, $zero, 3
/* 318CBC 802BDF6C AE430074 */ sw $v1, 0x74($s2)
/* 318CC0 802BDF70 24420001 */ addiu $v0, $v0, 1
/* 318CC4 802BDF74 080AF8BE */ j .L802BE2F8
/* 318CC8 802BDF78 AE420070 */ sw $v0, 0x70($s2)
.L802BDF7C:
/* 318CCC 802BDF7C 8E420074 */ lw $v0, 0x74($s2)
/* 318CD0 802BDF80 1440006B */ bnez $v0, .L802BE130
/* 318CD4 802BDF84 2442FFFF */ addiu $v0, $v0, -1
/* 318CD8 802BDF88 24020003 */ addiu $v0, $zero, 3
/* 318CDC 802BDF8C A2A20000 */ sb $v0, ($s5)
/* 318CE0 802BDF90 C660002C */ lwc1 $f0, 0x2c($s3)
/* 318CE4 802BDF94 C622003C */ lwc1 $f2, 0x3c($s1)
/* 318CE8 802BDF98 24040168 */ addiu $a0, $zero, 0x168
/* 318CEC 802BDF9C 46020001 */ sub.s $f0, $f0, $f2
/* 318CF0 802BDFA0 3C0141A0 */ lui $at, 0x41a0
/* 318CF4 802BDFA4 44811000 */ mtc1 $at, $f2
/* 318CF8 802BDFA8 3C013F4C */ lui $at, 0x3f4c
/* 318CFC 802BDFAC 3421CCCD */ ori $at, $at, 0xcccd
/* 318D00 802BDFB0 4481A000 */ mtc1 $at, $f20
/* 318D04 802BDFB4 46020003 */ div.s $f0, $f0, $f2
/* 318D08 802BDFB8 3C01403E */ lui $at, 0x403e
/* 318D0C 802BDFBC 44811800 */ mtc1 $at, $f3
/* 318D10 802BDFC0 44801000 */ mtc1 $zero, $f2
/* 318D14 802BDFC4 46000021 */ cvt.d.s $f0, $f0
/* 318D18 802BDFC8 46220000 */ add.d $f0, $f0, $f2
/* 318D1C 802BDFCC 3C01802C */ lui $at, 0x802c
/* 318D20 802BDFD0 AC20E928 */ sw $zero, -0x16d8($at)
/* 318D24 802BDFD4 E6340018 */ swc1 $f20, 0x18($s1)
/* 318D28 802BDFD8 46200020 */ cvt.s.d $f0, $f0
/* 318D2C 802BDFDC 0C00A67F */ jal rand_int
/* 318D30 802BDFE0 E620001C */ swc1 $f0, 0x1c($s1)
/* 318D34 802BDFE4 44822000 */ mtc1 $v0, $f4
/* 318D38 802BDFE8 00000000 */ nop
/* 318D3C 802BDFEC 46802120 */ cvt.s.w $f4, $f4
/* 318D40 802BDFF0 C620003C */ lwc1 $f0, 0x3c($s1)
/* 318D44 802BDFF4 3C014120 */ lui $at, 0x4120
/* 318D48 802BDFF8 44811000 */ mtc1 $at, $f2
/* 318D4C 802BDFFC 2402FFFF */ addiu $v0, $zero, -1
/* 318D50 802BE000 46020000 */ add.s $f0, $f0, $f2
/* 318D54 802BE004 E624000C */ swc1 $f4, 0xc($s1)
/* 318D58 802BE008 E6340014 */ swc1 $f20, 0x14($s1)
/* 318D5C 802BE00C E620003C */ swc1 $f0, 0x3c($s1)
/* 318D60 802BE010 E6200064 */ swc1 $f0, 0x64($s1)
/* 318D64 802BE014 A6820018 */ sh $v0, 0x18($s4)
/* 318D68 802BE018 C6200038 */ lwc1 $f0, 0x38($s1)
/* 318D6C 802BE01C E680001C */ swc1 $f0, 0x1c($s4)
/* 318D70 802BE020 C620003C */ lwc1 $f0, 0x3c($s1)
/* 318D74 802BE024 E6800020 */ swc1 $f0, 0x20($s4)
/* 318D78 802BE028 C6200040 */ lwc1 $f0, 0x40($s1)
/* 318D7C 802BE02C 3C020003 */ lui $v0, 3
/* 318D80 802BE030 E6800024 */ swc1 $f0, 0x24($s4)
/* 318D84 802BE034 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 318D88 802BE038 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 318D8C 802BE03C 34420011 */ ori $v0, $v0, 0x11
/* 318D90 802BE040 AE220028 */ sw $v0, 0x28($s1)
/* 318D94 802BE044 8E660028 */ lw $a2, 0x28($s3)
/* 318D98 802BE048 0C00A720 */ jal atan2
/* 318D9C 802BE04C 8E670030 */ lw $a3, 0x30($s3)
/* 318DA0 802BE050 3C02800B */ lui $v0, %hi(gCameras)
/* 318DA4 802BE054 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 318DA8 802BE058 C44C006C */ lwc1 $f12, 0x6c($v0)
/* 318DAC 802BE05C 0C00A70A */ jal get_clamped_angle_diff
/* 318DB0 802BE060 46000386 */ mov.s $f14, $f0
/* 318DB4 802BE064 44801000 */ mtc1 $zero, $f2
/* 318DB8 802BE068 00000000 */ nop
/* 318DBC 802BE06C 4602003C */ c.lt.s $f0, $f2
/* 318DC0 802BE070 00000000 */ nop
/* 318DC4 802BE074 45010002 */ bc1t .L802BE080
/* 318DC8 802BE078 2402FFFF */ addiu $v0, $zero, -1
/* 318DCC 802BE07C 24020001 */ addiu $v0, $zero, 1
.L802BE080:
/* 318DD0 802BE080 AE420078 */ sw $v0, 0x78($s2)
/* 318DD4 802BE084 2402000A */ addiu $v0, $zero, 0xa
/* 318DD8 802BE088 AE420074 */ sw $v0, 0x74($s2)
/* 318DDC 802BE08C 24020005 */ addiu $v0, $zero, 5
/* 318DE0 802BE090 080AF8BE */ j .L802BE2F8
/* 318DE4 802BE094 AE420070 */ sw $v0, 0x70($s2)
.L802BE098:
/* 318DE8 802BE098 C624003C */ lwc1 $f4, 0x3c($s1)
/* 318DEC 802BE09C C620001C */ lwc1 $f0, 0x1c($s1)
/* 318DF0 802BE0A0 46002100 */ add.s $f4, $f4, $f0
/* 318DF4 802BE0A4 C6220014 */ lwc1 $f2, 0x14($s1)
/* 318DF8 802BE0A8 46020001 */ sub.s $f0, $f0, $f2
/* 318DFC 802BE0AC E624003C */ swc1 $f4, 0x3c($s1)
/* 318E00 802BE0B0 E620001C */ swc1 $f0, 0x1c($s1)
/* 318E04 802BE0B4 8E430078 */ lw $v1, 0x78($s2)
/* 318E08 802BE0B8 C620004C */ lwc1 $f0, 0x4c($s1)
/* 318E0C 802BE0BC 00031080 */ sll $v0, $v1, 2
/* 318E10 802BE0C0 00431021 */ addu $v0, $v0, $v1
/* 318E14 802BE0C4 00021100 */ sll $v0, $v0, 4
/* 318E18 802BE0C8 00431023 */ subu $v0, $v0, $v1
/* 318E1C 802BE0CC 00021FC2 */ srl $v1, $v0, 0x1f
/* 318E20 802BE0D0 00431021 */ addu $v0, $v0, $v1
/* 318E24 802BE0D4 00021043 */ sra $v0, $v0, 1
/* 318E28 802BE0D8 44821000 */ mtc1 $v0, $f2
/* 318E2C 802BE0DC 00000000 */ nop
/* 318E30 802BE0E0 468010A0 */ cvt.s.w $f2, $f2
/* 318E34 802BE0E4 46020001 */ sub.s $f0, $f0, $f2
/* 318E38 802BE0E8 E620004C */ swc1 $f0, 0x4c($s1)
/* 318E3C 802BE0EC 8E430078 */ lw $v1, 0x78($s2)
/* 318E40 802BE0F0 C6200044 */ lwc1 $f0, 0x44($s1)
/* 318E44 802BE0F4 00031100 */ sll $v0, $v1, 4
/* 318E48 802BE0F8 00431021 */ addu $v0, $v0, $v1
/* 318E4C 802BE0FC 00021080 */ sll $v0, $v0, 2
/* 318E50 802BE100 00431023 */ subu $v0, $v0, $v1
/* 318E54 802BE104 00021FC2 */ srl $v1, $v0, 0x1f
/* 318E58 802BE108 00431021 */ addu $v0, $v0, $v1
/* 318E5C 802BE10C 00021043 */ sra $v0, $v0, 1
/* 318E60 802BE110 44821000 */ mtc1 $v0, $f2
/* 318E64 802BE114 00000000 */ nop
/* 318E68 802BE118 468010A0 */ cvt.s.w $f2, $f2
/* 318E6C 802BE11C 46020001 */ sub.s $f0, $f0, $f2
/* 318E70 802BE120 E6200044 */ swc1 $f0, 0x44($s1)
/* 318E74 802BE124 8E420074 */ lw $v0, 0x74($s2)
/* 318E78 802BE128 10400003 */ beqz $v0, .L802BE138
/* 318E7C 802BE12C 2442FFFF */ addiu $v0, $v0, -1
.L802BE130:
/* 318E80 802BE130 080AF8BE */ j .L802BE2F8
/* 318E84 802BE134 AE420074 */ sw $v0, 0x74($s2)
.L802BE138:
/* 318E88 802BE138 3C02802C */ lui $v0, 0x802c
/* 318E8C 802BE13C 8C42E930 */ lw $v0, -0x16d0($v0)
/* 318E90 802BE140 14400005 */ bnez $v0, .L802BE158
/* 318E94 802BE144 00000000 */ nop
/* 318E98 802BE148 C6600028 */ lwc1 $f0, 0x28($s3)
/* 318E9C 802BE14C E6200038 */ swc1 $f0, 0x38($s1)
/* 318EA0 802BE150 C6600030 */ lwc1 $f0, 0x30($s3)
/* 318EA4 802BE154 E6200040 */ swc1 $f0, 0x40($s1)
.L802BE158:
/* 318EA8 802BE158 3C01800B */ lui $at, 0x800b
/* 318EAC 802BE15C C4201DEC */ lwc1 $f0, 0x1dec($at)
/* 318EB0 802BE160 C66C00A8 */ lwc1 $f12, 0xa8($s3)
/* 318EB4 802BE164 0C00A6C9 */ jal clamp_angle
/* 318EB8 802BE168 460C0300 */ add.s $f12, $f0, $f12
/* 318EBC 802BE16C 26240038 */ addiu $a0, $s1, 0x38
/* 318EC0 802BE170 3C064120 */ lui $a2, 0x4120
/* 318EC4 802BE174 44070000 */ mfc1 $a3, $f0
/* 318EC8 802BE178 26250040 */ addiu $a1, $s1, 0x40
/* 318ECC 802BE17C 0C00A7E7 */ jal add_vec2D_polar
/* 318ED0 802BE180 AE27000C */ sw $a3, 0xc($s1)
/* 318ED4 802BE184 3C030003 */ lui $v1, 3
/* 318ED8 802BE188 8E220000 */ lw $v0, ($s1)
/* 318EDC 802BE18C 34630011 */ ori $v1, $v1, 0x11
/* 318EE0 802BE190 AE20001C */ sw $zero, 0x1c($s1)
/* 318EE4 802BE194 AE230028 */ sw $v1, 0x28($s1)
/* 318EE8 802BE198 34420800 */ ori $v0, $v0, 0x800
/* 318EEC 802BE19C AE220000 */ sw $v0, ($s1)
/* 318EF0 802BE1A0 24020006 */ addiu $v0, $zero, 6
/* 318EF4 802BE1A4 080AF8BE */ j .L802BE2F8
/* 318EF8 802BE1A8 AE420070 */ sw $v0, 0x70($s2)
.L802BE1AC:
/* 318EFC 802BE1AC C624003C */ lwc1 $f4, 0x3c($s1)
/* 318F00 802BE1B0 3C014120 */ lui $at, 0x4120
/* 318F04 802BE1B4 44810000 */ mtc1 $at, $f0
/* 318F08 802BE1B8 866200B0 */ lh $v0, 0xb0($s3)
/* 318F0C 802BE1BC 46002100 */ add.s $f4, $f4, $f0
/* 318F10 802BE1C0 C660002C */ lwc1 $f0, 0x2c($s3)
/* 318F14 802BE1C4 44821000 */ mtc1 $v0, $f2
/* 318F18 802BE1C8 00000000 */ nop
/* 318F1C 802BE1CC 468010A0 */ cvt.s.w $f2, $f2
/* 318F20 802BE1D0 46020000 */ add.s $f0, $f0, $f2
/* 318F24 802BE1D4 4600203C */ c.lt.s $f4, $f0
/* 318F28 802BE1D8 00000000 */ nop
/* 318F2C 802BE1DC 45000018 */ bc1f .L802BE240
/* 318F30 802BE1E0 2403F7FF */ addiu $v1, $zero, -0x801
/* 318F34 802BE1E4 8E220000 */ lw $v0, ($s1)
/* 318F38 802BE1E8 C622003C */ lwc1 $f2, 0x3c($s1)
/* 318F3C 802BE1EC 00431024 */ and $v0, $v0, $v1
/* 318F40 802BE1F0 AE220000 */ sw $v0, ($s1)
/* 318F44 802BE1F4 C660002C */ lwc1 $f0, 0x2c($s3)
/* 318F48 802BE1F8 46020001 */ sub.s $f0, $f0, $f2
/* 318F4C 802BE1FC 3C01802C */ lui $at, 0x802c
/* 318F50 802BE200 D422E908 */ ldc1 $f2, -0x16f8($at)
/* 318F54 802BE204 46000005 */ abs.s $f0, $f0
/* 318F58 802BE208 46000021 */ cvt.d.s $f0, $f0
/* 318F5C 802BE20C 4622003C */ c.lt.d $f0, $f2
/* 318F60 802BE210 00000000 */ nop
/* 318F64 802BE214 45000003 */ bc1f .L802BE224
/* 318F68 802BE218 24020008 */ addiu $v0, $zero, 8
/* 318F6C 802BE21C 080AF8BE */ j .L802BE2F8
/* 318F70 802BE220 AE420070 */ sw $v0, 0x70($s2)
.L802BE224:
/* 318F74 802BE224 8E25001C */ lw $a1, 0x1c($s1)
/* 318F78 802BE228 0C00E5FA */ jal func_800397E8
/* 318F7C 802BE22C 0220202D */ daddu $a0, $s1, $zero
/* 318F80 802BE230 10400003 */ beqz $v0, .L802BE240
/* 318F84 802BE234 24020007 */ addiu $v0, $zero, 7
/* 318F88 802BE238 080AF8BE */ j .L802BE2F8
/* 318F8C 802BE23C AE420070 */ sw $v0, 0x70($s2)
.L802BE240:
/* 318F90 802BE240 C626001C */ lwc1 $f6, 0x1c($s1)
/* 318F94 802BE244 C6200014 */ lwc1 $f0, 0x14($s1)
/* 318F98 802BE248 C624003C */ lwc1 $f4, 0x3c($s1)
/* 318F9C 802BE24C 46003181 */ sub.s $f6, $f6, $f0
/* 318FA0 802BE250 C620001C */ lwc1 $f0, 0x1c($s1)
/* 318FA4 802BE254 46002100 */ add.s $f4, $f4, $f0
/* 318FA8 802BE258 3C01C020 */ lui $at, 0xc020
/* 318FAC 802BE25C 44811800 */ mtc1 $at, $f3
/* 318FB0 802BE260 44801000 */ mtc1 $zero, $f2
/* 318FB4 802BE264 46003021 */ cvt.d.s $f0, $f6
/* 318FB8 802BE268 4622003C */ c.lt.d $f0, $f2
/* 318FBC 802BE26C E626001C */ swc1 $f6, 0x1c($s1)
/* 318FC0 802BE270 45000005 */ bc1f .L802BE288
/* 318FC4 802BE274 E624003C */ swc1 $f4, 0x3c($s1)
/* 318FC8 802BE278 3C01C100 */ lui $at, 0xc100
/* 318FCC 802BE27C 44810000 */ mtc1 $at, $f0
/* 318FD0 802BE280 00000000 */ nop
/* 318FD4 802BE284 E620001C */ swc1 $f0, 0x1c($s1)
.L802BE288:
/* 318FD8 802BE288 8E430078 */ lw $v1, 0x78($s2)
/* 318FDC 802BE28C C620004C */ lwc1 $f0, 0x4c($s1)
/* 318FE0 802BE290 00031080 */ sll $v0, $v1, 2
/* 318FE4 802BE294 00431021 */ addu $v0, $v0, $v1
/* 318FE8 802BE298 00021100 */ sll $v0, $v0, 4
/* 318FEC 802BE29C 00431023 */ subu $v0, $v0, $v1
/* 318FF0 802BE2A0 00021FC2 */ srl $v1, $v0, 0x1f
/* 318FF4 802BE2A4 00431021 */ addu $v0, $v0, $v1
/* 318FF8 802BE2A8 00021043 */ sra $v0, $v0, 1
/* 318FFC 802BE2AC 44821000 */ mtc1 $v0, $f2
/* 319000 802BE2B0 00000000 */ nop
/* 319004 802BE2B4 468010A0 */ cvt.s.w $f2, $f2
/* 319008 802BE2B8 46020001 */ sub.s $f0, $f0, $f2
/* 31900C 802BE2BC E620004C */ swc1 $f0, 0x4c($s1)
/* 319010 802BE2C0 8E430078 */ lw $v1, 0x78($s2)
/* 319014 802BE2C4 C6200044 */ lwc1 $f0, 0x44($s1)
/* 319018 802BE2C8 00031100 */ sll $v0, $v1, 4
/* 31901C 802BE2CC 00431021 */ addu $v0, $v0, $v1
/* 319020 802BE2D0 00021080 */ sll $v0, $v0, 2
/* 319024 802BE2D4 00431023 */ subu $v0, $v0, $v1
/* 319028 802BE2D8 00021FC2 */ srl $v1, $v0, 0x1f
/* 31902C 802BE2DC 00431021 */ addu $v0, $v0, $v1
/* 319030 802BE2E0 00021043 */ sra $v0, $v0, 1
/* 319034 802BE2E4 44821000 */ mtc1 $v0, $f2
/* 319038 802BE2E8 00000000 */ nop
/* 31903C 802BE2EC 468010A0 */ cvt.s.w $f2, $f2
/* 319040 802BE2F0 46020001 */ sub.s $f0, $f0, $f2
/* 319044 802BE2F4 E6200044 */ swc1 $f0, 0x44($s1)
.L802BE2F8:
/* 319048 802BE2F8 8E440070 */ lw $a0, 0x70($s2)
/* 31904C 802BE2FC 24020007 */ addiu $v0, $zero, 7
/* 319050 802BE300 10820005 */ beq $a0, $v0, .L802BE318
/* 319054 802BE304 24020008 */ addiu $v0, $zero, 8
/* 319058 802BE308 10820029 */ beq $a0, $v0, .L802BE3B0
/* 31905C 802BE30C 0000102D */ daddu $v0, $zero, $zero
/* 319060 802BE310 080AF930 */ j .L802BE4C0
/* 319064 802BE314 00000000 */ nop
.L802BE318:
/* 319068 802BE318 826200B4 */ lb $v0, 0xb4($s3)
/* 31906C 802BE31C 14400003 */ bnez $v0, .L802BE32C
/* 319070 802BE320 3C040001 */ lui $a0, 1
/* 319074 802BE324 0C037FBF */ jal func_800DFEFC
/* 319078 802BE328 34840002 */ ori $a0, $a0, 2
.L802BE32C:
/* 31907C 802BE32C 3C03802C */ lui $v1, 0x802c
/* 319080 802BE330 2463E92C */ addiu $v1, $v1, -0x16d4
/* 319084 802BE334 8C620000 */ lw $v0, ($v1)
/* 319088 802BE338 10400004 */ beqz $v0, .L802BE34C
/* 31908C 802BE33C 3C020003 */ lui $v0, 3
/* 319090 802BE340 0C038069 */ jal enable_player_input
/* 319094 802BE344 AC600000 */ sw $zero, ($v1)
/* 319098 802BE348 3C020003 */ lui $v0, 3
.L802BE34C:
/* 31909C 802BE34C 34420003 */ ori $v0, $v0, 3
/* 3190A0 802BE350 A2A00000 */ sb $zero, ($s5)
/* 3190A4 802BE354 A2A00003 */ sb $zero, 3($s5)
/* 3190A8 802BE358 AE20001C */ sw $zero, 0x1c($s1)
/* 3190AC 802BE35C C660002C */ lwc1 $f0, 0x2c($s3)
/* 3190B0 802BE360 0220202D */ daddu $a0, $s1, $zero
/* 3190B4 802BE364 3C01802C */ lui $at, 0x802c
/* 3190B8 802BE368 AC20E928 */ sw $zero, -0x16d8($at)
/* 3190BC 802BE36C 3C01802C */ lui $at, 0x802c
/* 3190C0 802BE370 AC20E934 */ sw $zero, -0x16cc($at)
/* 3190C4 802BE374 AC800044 */ sw $zero, 0x44($a0)
/* 3190C8 802BE378 AC80004C */ sw $zero, 0x4c($a0)
/* 3190CC 802BE37C AC820028 */ sw $v0, 0x28($a0)
/* 3190D0 802BE380 0C03BD17 */ jal clear_partner_move_history
/* 3190D4 802BE384 E480003C */ swc1 $f0, 0x3c($a0)
/* 3190D8 802BE388 3C03802C */ lui $v1, 0x802c
/* 3190DC 802BE38C 2463E924 */ addiu $v1, $v1, -0x16dc
/* 3190E0 802BE390 8C620000 */ lw $v0, ($v1)
/* 3190E4 802BE394 1040004A */ beqz $v0, .L802BE4C0
/* 3190E8 802BE398 24020002 */ addiu $v0, $zero, 2
/* 3190EC 802BE39C AC600000 */ sw $zero, ($v1)
/* 3190F0 802BE3A0 0C05271B */ jal stop_sound
/* 3190F4 802BE3A4 3C048000 */ lui $a0, 0x8000
/* 3190F8 802BE3A8 080AF930 */ j .L802BE4C0
/* 3190FC 802BE3AC 24020002 */ addiu $v0, $zero, 2
.L802BE3B0:
/* 319100 802BE3B0 3C03802C */ lui $v1, 0x802c
/* 319104 802BE3B4 2463E92C */ addiu $v1, $v1, -0x16d4
/* 319108 802BE3B8 8C620000 */ lw $v0, ($v1)
/* 31910C 802BE3BC 10400004 */ beqz $v0, .L802BE3D0
/* 319110 802BE3C0 3C020003 */ lui $v0, 3
/* 319114 802BE3C4 0C038069 */ jal enable_player_input
/* 319118 802BE3C8 AC600000 */ sw $zero, ($v1)
/* 31911C 802BE3CC 3C020003 */ lui $v0, 3
.L802BE3D0:
/* 319120 802BE3D0 A2A00000 */ sb $zero, ($s5)
/* 319124 802BE3D4 A2A00003 */ sb $zero, 3($s5)
/* 319128 802BE3D8 AE20001C */ sw $zero, 0x1c($s1)
/* 31912C 802BE3DC C660002C */ lwc1 $f0, 0x2c($s3)
/* 319130 802BE3E0 34420003 */ ori $v0, $v0, 3
/* 319134 802BE3E4 AE220028 */ sw $v0, 0x28($s1)
/* 319138 802BE3E8 3C02802C */ lui $v0, 0x802c
/* 31913C 802BE3EC 8C42E920 */ lw $v0, -0x16e0($v0)
/* 319140 802BE3F0 AE200044 */ sw $zero, 0x44($s1)
/* 319144 802BE3F4 AE20004C */ sw $zero, 0x4c($s1)
/* 319148 802BE3F8 E620003C */ swc1 $f0, 0x3c($s1)
/* 31914C 802BE3FC C6600028 */ lwc1 $f0, 0x28($s3)
/* 319150 802BE400 E6200038 */ swc1 $f0, 0x38($s1)
/* 319154 802BE404 C660002C */ lwc1 $f0, 0x2c($s3)
/* 319158 802BE408 26300038 */ addiu $s0, $s1, 0x38
/* 31915C 802BE40C E620003C */ swc1 $f0, 0x3c($s1)
/* 319160 802BE410 C6600030 */ lwc1 $f0, 0x30($s3)
/* 319164 802BE414 26320040 */ addiu $s2, $s1, 0x40
/* 319168 802BE418 3C01802C */ lui $at, 0x802c
/* 31916C 802BE41C AC20E928 */ sw $zero, -0x16d8($at)
/* 319170 802BE420 3C01802C */ lui $at, 0x802c
/* 319174 802BE424 AC20E934 */ sw $zero, -0x16cc($at)
/* 319178 802BE428 14400006 */ bnez $v0, .L802BE444
/* 31917C 802BE42C E6200040 */ swc1 $f0, 0x40($s1)
/* 319180 802BE430 C6600080 */ lwc1 $f0, 0x80($s3)
/* 319184 802BE434 3C0142B4 */ lui $at, 0x42b4
/* 319188 802BE438 44816000 */ mtc1 $at, $f12
/* 31918C 802BE43C 080AF916 */ j .L802BE458
/* 319190 802BE440 460C0300 */ add.s $f12, $f0, $f12
.L802BE444:
/* 319194 802BE444 C6600080 */ lwc1 $f0, 0x80($s3)
/* 319198 802BE448 3C0142B4 */ lui $at, 0x42b4
/* 31919C 802BE44C 44816000 */ mtc1 $at, $f12
/* 3191A0 802BE450 00000000 */ nop
/* 3191A4 802BE454 460C0301 */ sub.s $f12, $f0, $f12
.L802BE458:
/* 3191A8 802BE458 0C00A6C9 */ jal clamp_angle
/* 3191AC 802BE45C 00000000 */ nop
/* 3191B0 802BE460 866200B2 */ lh $v0, 0xb2($s3)
/* 3191B4 802BE464 04420001 */ bltzl $v0, .L802BE46C
/* 3191B8 802BE468 24420003 */ addiu $v0, $v0, 3
.L802BE46C:
/* 3191BC 802BE46C 0200202D */ daddu $a0, $s0, $zero
/* 3191C0 802BE470 00021083 */ sra $v0, $v0, 2
/* 3191C4 802BE474 44828000 */ mtc1 $v0, $f16
/* 3191C8 802BE478 00000000 */ nop
/* 3191CC 802BE47C 46808420 */ cvt.s.w $f16, $f16
/* 3191D0 802BE480 44070000 */ mfc1 $a3, $f0
/* 3191D4 802BE484 44068000 */ mfc1 $a2, $f16
/* 3191D8 802BE488 0C00A7E7 */ jal add_vec2D_polar
/* 3191DC 802BE48C 0240282D */ daddu $a1, $s2, $zero
/* 3191E0 802BE490 0220202D */ daddu $a0, $s1, $zero
/* 3191E4 802BE494 0C03BD17 */ jal clear_partner_move_history
/* 3191E8 802BE498 AC80001C */ sw $zero, 0x1c($a0)
/* 3191EC 802BE49C 3C03802C */ lui $v1, 0x802c
/* 3191F0 802BE4A0 2463E924 */ addiu $v1, $v1, -0x16dc
/* 3191F4 802BE4A4 8C620000 */ lw $v0, ($v1)
/* 3191F8 802BE4A8 10400005 */ beqz $v0, .L802BE4C0
/* 3191FC 802BE4AC 24020002 */ addiu $v0, $zero, 2
/* 319200 802BE4B0 AC600000 */ sw $zero, ($v1)
/* 319204 802BE4B4 0C05271B */ jal stop_sound
/* 319208 802BE4B8 3C048000 */ lui $a0, 0x8000
/* 31920C 802BE4BC 24020002 */ addiu $v0, $zero, 2
.L802BE4C0:
/* 319210 802BE4C0 8FBF0048 */ lw $ra, 0x48($sp)
/* 319214 802BE4C4 8FB50044 */ lw $s5, 0x44($sp)
/* 319218 802BE4C8 8FB40040 */ lw $s4, 0x40($sp)
/* 31921C 802BE4CC 8FB3003C */ lw $s3, 0x3c($sp)
/* 319220 802BE4D0 8FB20038 */ lw $s2, 0x38($sp)
/* 319224 802BE4D4 8FB10034 */ lw $s1, 0x34($sp)
/* 319228 802BE4D8 8FB00030 */ lw $s0, 0x30($sp)
/* 31922C 802BE4DC D7B40050 */ ldc1 $f20, 0x50($sp)
/* 319230 802BE4E0 03E00008 */ jr $ra
/* 319234 802BE4E4 27BD0058 */ addiu $sp, $sp, 0x58

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE4E8
/* 319238 802BE4E8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31923C 802BE4EC AFBF0014 */ sw $ra, 0x14($sp)
/* 319240 802BE4F0 AFB00010 */ sw $s0, 0x10($sp)
/* 319244 802BE4F4 10A00003 */ beqz $a1, .L802BE504
/* 319248 802BE4F8 8C90014C */ lw $s0, 0x14c($a0)
/* 31924C 802BE4FC 0C03BA65 */ jal func_800EE994
/* 319250 802BE500 0200202D */ daddu $a0, $s0, $zero
.L802BE504:
/* 319254 802BE504 0C03BA6E */ jal func_800EE9B8
/* 319258 802BE508 0200202D */ daddu $a0, $s0, $zero
/* 31925C 802BE50C 8FBF0014 */ lw $ra, 0x14($sp)
/* 319260 802BE510 8FB00010 */ lw $s0, 0x10($sp)
/* 319264 802BE514 0002102B */ sltu $v0, $zero, $v0
/* 319268 802BE518 03E00008 */ jr $ra
/* 31926C 802BE51C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,122 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE520
/* 319270 802BE520 3C02802C */ lui $v0, 0x802c
/* 319274 802BE524 8C42E928 */ lw $v0, -0x16d8($v0)
/* 319278 802BE528 27BDFF90 */ addiu $sp, $sp, -0x70
/* 31927C 802BE52C AFB00030 */ sw $s0, 0x30($sp)
/* 319280 802BE530 AFBF0038 */ sw $ra, 0x38($sp)
/* 319284 802BE534 AFB10034 */ sw $s1, 0x34($sp)
/* 319288 802BE538 F7BE0068 */ sdc1 $f30, 0x68($sp)
/* 31928C 802BE53C F7BC0060 */ sdc1 $f28, 0x60($sp)
/* 319290 802BE540 F7BA0058 */ sdc1 $f26, 0x58($sp)
/* 319294 802BE544 F7B80050 */ sdc1 $f24, 0x50($sp)
/* 319298 802BE548 F7B60048 */ sdc1 $f22, 0x48($sp)
/* 31929C 802BE54C F7B40040 */ sdc1 $f20, 0x40($sp)
/* 3192A0 802BE550 14400003 */ bnez $v0, .L802BE560
/* 3192A4 802BE554 0080802D */ daddu $s0, $a0, $zero
/* 3192A8 802BE558 080AF9AF */ j .L802BE6BC
/* 3192AC 802BE55C 0000102D */ daddu $v0, $zero, $zero
.L802BE560:
/* 3192B0 802BE560 84A200A8 */ lh $v0, 0xa8($a1)
/* 3192B4 802BE564 3C013FE0 */ lui $at, 0x3fe0
/* 3192B8 802BE568 44810800 */ mtc1 $at, $f1
/* 3192BC 802BE56C 44800000 */ mtc1 $zero, $f0
/* 3192C0 802BE570 44821000 */ mtc1 $v0, $f2
/* 3192C4 802BE574 00000000 */ nop
/* 3192C8 802BE578 468010A1 */ cvt.d.w $f2, $f2
/* 3192CC 802BE57C 46201082 */ mul.d $f2, $f2, $f0
/* 3192D0 802BE580 00000000 */ nop
/* 3192D4 802BE584 84A200A6 */ lh $v0, 0xa6($a1)
/* 3192D8 802BE588 3C01802C */ lui $at, 0x802c
/* 3192DC 802BE58C D420E910 */ ldc1 $f0, -0x16f0($at)
/* 3192E0 802BE590 44823000 */ mtc1 $v0, $f6
/* 3192E4 802BE594 00000000 */ nop
/* 3192E8 802BE598 468031A1 */ cvt.d.w $f6, $f6
/* 3192EC 802BE59C 46203182 */ mul.d $f6, $f6, $f0
/* 3192F0 802BE5A0 00000000 */ nop
/* 3192F4 802BE5A4 C4BA0038 */ lwc1 $f26, 0x38($a1)
/* 3192F8 802BE5A8 C61C0038 */ lwc1 $f28, 0x38($s0)
/* 3192FC 802BE5AC 461CD201 */ sub.s $f8, $f26, $f28
/* 319300 802BE5B0 46084282 */ mul.s $f10, $f8, $f8
/* 319304 802BE5B4 00000000 */ nop
/* 319308 802BE5B8 C4A4003C */ lwc1 $f4, 0x3c($a1)
/* 31930C 802BE5BC 462010A0 */ cvt.s.d $f2, $f2
/* 319310 802BE5C0 46022100 */ add.s $f4, $f4, $f2
/* 319314 802BE5C4 C600003C */ lwc1 $f0, 0x3c($s0)
/* 319318 802BE5C8 46002101 */ sub.s $f4, $f4, $f0
/* 31931C 802BE5CC 46042302 */ mul.s $f12, $f4, $f4
/* 319320 802BE5D0 00000000 */ nop
/* 319324 802BE5D4 C4B60040 */ lwc1 $f22, 0x40($a1)
/* 319328 802BE5D8 C6180040 */ lwc1 $f24, 0x40($s0)
/* 31932C 802BE5DC 4618B001 */ sub.s $f0, $f22, $f24
/* 319330 802BE5E0 46000082 */ mul.s $f2, $f0, $f0
/* 319334 802BE5E4 00000000 */ nop
/* 319338 802BE5E8 3C01420C */ lui $at, 0x420c
/* 31933C 802BE5EC 4481F000 */ mtc1 $at, $f30
/* 319340 802BE5F0 460C5280 */ add.s $f10, $f10, $f12
/* 319344 802BE5F4 E7A80020 */ swc1 $f8, 0x20($sp)
/* 319348 802BE5F8 46203520 */ cvt.s.d $f20, $f6
/* 31934C 802BE5FC 46025300 */ add.s $f12, $f10, $f2
/* 319350 802BE600 E7A00028 */ swc1 $f0, 0x28($sp)
/* 319354 802BE604 46006084 */ sqrt.s $f2, $f12
/* 319358 802BE608 46021032 */ c.eq.s $f2, $f2
/* 31935C 802BE60C 00000000 */ nop
/* 319360 802BE610 45010004 */ bc1t .L802BE624
/* 319364 802BE614 E7A40024 */ swc1 $f4, 0x24($sp)
/* 319368 802BE618 0C0187BC */ jal sqrtf
/* 31936C 802BE61C 00000000 */ nop
/* 319370 802BE620 46000086 */ mov.s $f2, $f0
.L802BE624:
/* 319374 802BE624 461EA000 */ add.s $f0, $f20, $f30
/* 319378 802BE628 4600103C */ c.lt.s $f2, $f0
/* 31937C 802BE62C 00000000 */ nop
/* 319380 802BE630 45000002 */ bc1f .L802BE63C
/* 319384 802BE634 0000882D */ daddu $s1, $zero, $zero
/* 319388 802BE638 24110001 */ addiu $s1, $zero, 1
.L802BE63C:
/* 31938C 802BE63C 4600D306 */ mov.s $f12, $f26
/* 319390 802BE640 4406E000 */ mfc1 $a2, $f28
/* 319394 802BE644 4407C000 */ mfc1 $a3, $f24
/* 319398 802BE648 0C00A720 */ jal atan2
/* 31939C 802BE64C 4600B386 */ mov.s $f14, $f22
/* 3193A0 802BE650 4600D306 */ mov.s $f12, $f26
/* 3193A4 802BE654 4600B386 */ mov.s $f14, $f22
/* 3193A8 802BE658 4406E000 */ mfc1 $a2, $f28
/* 3193AC 802BE65C 4407C000 */ mfc1 $a3, $f24
/* 3193B0 802BE660 0C00A7B5 */ jal dist2D
/* 3193B4 802BE664 46000506 */ mov.s $f20, $f0
/* 3193B8 802BE668 27A60024 */ addiu $a2, $sp, 0x24
/* 3193BC 802BE66C 27A70028 */ addiu $a3, $sp, 0x28
/* 3193C0 802BE670 0000202D */ daddu $a0, $zero, $zero
/* 3193C4 802BE674 C6020038 */ lwc1 $f2, 0x38($s0)
/* 3193C8 802BE678 C604003C */ lwc1 $f4, 0x3c($s0)
/* 3193CC 802BE67C C6060040 */ lwc1 $f6, 0x40($s0)
/* 3193D0 802BE680 3C014000 */ lui $at, 0x4000
/* 3193D4 802BE684 44814000 */ mtc1 $at, $f8
/* 3193D8 802BE688 27A50020 */ addiu $a1, $sp, 0x20
/* 3193DC 802BE68C E7A20020 */ swc1 $f2, 0x20($sp)
/* 3193E0 802BE690 E7A40024 */ swc1 $f4, 0x24($sp)
/* 3193E4 802BE694 E7A60028 */ swc1 $f6, 0x28($sp)
/* 3193E8 802BE698 E7A00010 */ swc1 $f0, 0x10($sp)
/* 3193EC 802BE69C E7B40014 */ swc1 $f20, 0x14($sp)
/* 3193F0 802BE6A0 E7BE0018 */ swc1 $f30, 0x18($sp)
/* 3193F4 802BE6A4 0C0376B9 */ jal func_800DDAE4
/* 3193F8 802BE6A8 E7A8001C */ swc1 $f8, 0x1c($sp)
/* 3193FC 802BE6AC 0040182D */ daddu $v1, $v0, $zero
/* 319400 802BE6B0 14600002 */ bnez $v1, .L802BE6BC
/* 319404 802BE6B4 0000102D */ daddu $v0, $zero, $zero
/* 319408 802BE6B8 0220102D */ daddu $v0, $s1, $zero
.L802BE6BC:
/* 31940C 802BE6BC 8FBF0038 */ lw $ra, 0x38($sp)
/* 319410 802BE6C0 8FB10034 */ lw $s1, 0x34($sp)
/* 319414 802BE6C4 8FB00030 */ lw $s0, 0x30($sp)
/* 319418 802BE6C8 D7BE0068 */ ldc1 $f30, 0x68($sp)
/* 31941C 802BE6CC D7BC0060 */ ldc1 $f28, 0x60($sp)
/* 319420 802BE6D0 D7BA0058 */ ldc1 $f26, 0x58($sp)
/* 319424 802BE6D4 D7B80050 */ ldc1 $f24, 0x50($sp)
/* 319428 802BE6D8 D7B60048 */ ldc1 $f22, 0x48($sp)
/* 31942C 802BE6DC D7B40040 */ ldc1 $f20, 0x40($sp)
/* 319430 802BE6E0 03E00008 */ jr $ra
/* 319434 802BE6E4 27BD0070 */ addiu $sp, $sp, 0x70

View File

@ -0,0 +1,111 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE6E8
/* 319438 802BE6E8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 31943C 802BE6EC AFB00010 */ sw $s0, 0x10($sp)
/* 319440 802BE6F0 0080802D */ daddu $s0, $a0, $zero
/* 319444 802BE6F4 AFB10014 */ sw $s1, 0x14($sp)
/* 319448 802BE6F8 3C118011 */ lui $s1, %hi(gPlayerStatus)
/* 31944C 802BE6FC 2631EFC8 */ addiu $s1, $s1, %lo(gPlayerStatus)
/* 319450 802BE700 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 319454 802BE704 2442EBB0 */ addiu $v0, $v0, %lo(D_8010EBB0)
/* 319458 802BE708 AFBF0020 */ sw $ra, 0x20($sp)
/* 31945C 802BE70C AFB3001C */ sw $s3, 0x1c($sp)
/* 319460 802BE710 AFB20018 */ sw $s2, 0x18($sp)
/* 319464 802BE714 80430000 */ lb $v1, ($v0)
/* 319468 802BE718 1060004F */ beqz $v1, .L802BE858
/* 31946C 802BE71C 0040902D */ daddu $s2, $v0, $zero
/* 319470 802BE720 3C02802C */ lui $v0, 0x802c
/* 319474 802BE724 8C42E92C */ lw $v0, -0x16d4($v0)
/* 319478 802BE728 50400004 */ beql $v0, $zero, .L802BE73C
/* 31947C 802BE72C 0000202D */ daddu $a0, $zero, $zero
/* 319480 802BE730 0C038069 */ jal enable_player_input
/* 319484 802BE734 00000000 */ nop
/* 319488 802BE738 0000202D */ daddu $a0, $zero, $zero
.L802BE73C:
/* 31948C 802BE73C 8E220000 */ lw $v0, ($s1)
/* 319490 802BE740 2403FFFD */ addiu $v1, $zero, -3
/* 319494 802BE744 3C01802C */ lui $at, 0x802c
/* 319498 802BE748 AC20E928 */ sw $zero, -0x16d8($at)
/* 31949C 802BE74C 00431024 */ and $v0, $v0, $v1
/* 3194A0 802BE750 AE220000 */ sw $v0, ($s1)
/* 3194A4 802BE754 8E020000 */ lw $v0, ($s0)
/* 3194A8 802BE758 2403F7FF */ addiu $v1, $zero, -0x801
/* 3194AC 802BE75C AE00001C */ sw $zero, 0x1c($s0)
/* 3194B0 802BE760 00431024 */ and $v0, $v0, $v1
/* 3194B4 802BE764 0C039769 */ jal set_action_state
/* 3194B8 802BE768 AE020000 */ sw $v0, ($s0)
/* 3194BC 802BE76C 0C03BD17 */ jal clear_partner_move_history
/* 3194C0 802BE770 0200202D */ daddu $a0, $s0, $zero
/* 3194C4 802BE774 C6200028 */ lwc1 $f0, 0x28($s1)
/* 3194C8 802BE778 A2400000 */ sb $zero, ($s2)
/* 3194CC 802BE77C A2400003 */ sb $zero, 3($s2)
/* 3194D0 802BE780 3C02802C */ lui $v0, 0x802c
/* 3194D4 802BE784 8C42E920 */ lw $v0, -0x16e0($v0)
/* 3194D8 802BE788 E6000038 */ swc1 $f0, 0x38($s0)
/* 3194DC 802BE78C C620002C */ lwc1 $f0, 0x2c($s1)
/* 3194E0 802BE790 26120038 */ addiu $s2, $s0, 0x38
/* 3194E4 802BE794 E600003C */ swc1 $f0, 0x3c($s0)
/* 3194E8 802BE798 C6200030 */ lwc1 $f0, 0x30($s1)
/* 3194EC 802BE79C 26130040 */ addiu $s3, $s0, 0x40
/* 3194F0 802BE7A0 14400006 */ bnez $v0, .L802BE7BC
/* 3194F4 802BE7A4 E6000040 */ swc1 $f0, 0x40($s0)
/* 3194F8 802BE7A8 C6200080 */ lwc1 $f0, 0x80($s1)
/* 3194FC 802BE7AC 3C0142B4 */ lui $at, 0x42b4
/* 319500 802BE7B0 44816000 */ mtc1 $at, $f12
/* 319504 802BE7B4 080AF9F4 */ j .L802BE7D0
/* 319508 802BE7B8 460C0300 */ add.s $f12, $f0, $f12
.L802BE7BC:
/* 31950C 802BE7BC C6200080 */ lwc1 $f0, 0x80($s1)
/* 319510 802BE7C0 3C0142B4 */ lui $at, 0x42b4
/* 319514 802BE7C4 44816000 */ mtc1 $at, $f12
/* 319518 802BE7C8 00000000 */ nop
/* 31951C 802BE7CC 460C0301 */ sub.s $f12, $f0, $f12
.L802BE7D0:
/* 319520 802BE7D0 0C00A6C9 */ jal clamp_angle
/* 319524 802BE7D4 00000000 */ nop
/* 319528 802BE7D8 862200B2 */ lh $v0, 0xb2($s1)
/* 31952C 802BE7DC 04420001 */ bltzl $v0, .L802BE7E4
/* 319530 802BE7E0 24420003 */ addiu $v0, $v0, 3
.L802BE7E4:
/* 319534 802BE7E4 0240202D */ daddu $a0, $s2, $zero
/* 319538 802BE7E8 00021083 */ sra $v0, $v0, 2
/* 31953C 802BE7EC 44821000 */ mtc1 $v0, $f2
/* 319540 802BE7F0 00000000 */ nop
/* 319544 802BE7F4 468010A0 */ cvt.s.w $f2, $f2
/* 319548 802BE7F8 44070000 */ mfc1 $a3, $f0
/* 31954C 802BE7FC 44061000 */ mfc1 $a2, $f2
/* 319550 802BE800 0C00A7E7 */ jal add_vec2D_polar
/* 319554 802BE804 0260282D */ daddu $a1, $s3, $zero
/* 319558 802BE808 3C020003 */ lui $v0, 3
/* 31955C 802BE80C 34420003 */ ori $v0, $v0, 3
/* 319560 802BE810 AE00001C */ sw $zero, 0x1c($s0)
/* 319564 802BE814 C620002C */ lwc1 $f0, 0x2c($s1)
/* 319568 802BE818 0200202D */ daddu $a0, $s0, $zero
/* 31956C 802BE81C AE000044 */ sw $zero, 0x44($s0)
/* 319570 802BE820 AE00004C */ sw $zero, 0x4c($s0)
/* 319574 802BE824 AE020028 */ sw $v0, 0x28($s0)
/* 319578 802BE828 0C03BD17 */ jal clear_partner_move_history
/* 31957C 802BE82C E600003C */ swc1 $f0, 0x3c($s0)
/* 319580 802BE830 0C00EB6B */ jal disable_npc_blur
/* 319584 802BE834 0200202D */ daddu $a0, $s0, $zero
/* 319588 802BE838 3C03802C */ lui $v1, 0x802c
/* 31958C 802BE83C 2463E924 */ addiu $v1, $v1, -0x16dc
/* 319590 802BE840 8C620000 */ lw $v0, ($v1)
/* 319594 802BE844 10400004 */ beqz $v0, .L802BE858
/* 319598 802BE848 00000000 */ nop
/* 31959C 802BE84C AC600000 */ sw $zero, ($v1)
/* 3195A0 802BE850 0C05271B */ jal stop_sound
/* 3195A4 802BE854 3C048000 */ lui $a0, 0x8000
.L802BE858:
/* 3195A8 802BE858 8FBF0020 */ lw $ra, 0x20($sp)
/* 3195AC 802BE85C 8FB3001C */ lw $s3, 0x1c($sp)
/* 3195B0 802BE860 8FB20018 */ lw $s2, 0x18($sp)
/* 3195B4 802BE864 8FB10014 */ lw $s1, 0x14($sp)
/* 3195B8 802BE868 8FB00010 */ lw $s0, 0x10($sp)
/* 3195BC 802BE86C 03E00008 */ jr $ra
/* 3195C0 802BE870 27BD0028 */ addiu $sp, $sp, 0x28
/* 3195C4 802BE874 00000000 */ nop
/* 3195C8 802BE878 00000000 */ nop
/* 3195CC 802BE87C 00000000 */ nop

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_319670
/* 319670 802BD100 24020025 */ addiu $v0, $zero, 0x25
/* 319674 802BD104 A48200A8 */ sh $v0, 0xa8($a0)
/* 319678 802BD108 24020028 */ addiu $v0, $zero, 0x28
/* 31967C 802BD10C A48200A6 */ sh $v0, 0xa6($a0)
/* 319680 802BD110 3C01802C */ lui $at, 0x802c
/* 319684 802BD114 AC20EBB0 */ sw $zero, -0x1450($at)
/* 319688 802BD118 3C01802C */ lui $at, 0x802c
/* 31968C 802BD11C AC20EBC0 */ sw $zero, -0x1440($at)
/* 319690 802BD120 3C01802C */ lui $at, 0x802c
/* 319694 802BD124 AC20EBB4 */ sw $zero, -0x144c($at)
/* 319698 802BD128 3C01802C */ lui $at, 0x802c
/* 31969C 802BD12C AC20EBB8 */ sw $zero, -0x1448($at)
/* 3196A0 802BD130 3C01802C */ lui $at, 0x802c
/* 3196A4 802BD134 AC20EBBC */ sw $zero, -0x1444($at)
/* 3196A8 802BD138 3C01802C */ lui $at, 0x802c
/* 3196AC 802BD13C AC20EBC4 */ sw $zero, -0x143c($at)
/* 3196B0 802BD140 03E00008 */ jr $ra
/* 3196B4 802BD144 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD148
/* 3196B8 802BD148 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3196BC 802BD14C AFBF0014 */ sw $ra, 0x14($sp)
/* 3196C0 802BD150 AFB00010 */ sw $s0, 0x10($sp)
/* 3196C4 802BD154 10A00003 */ beqz $a1, .L802BD164
/* 3196C8 802BD158 8C90014C */ lw $s0, 0x14c($a0)
/* 3196CC 802BD15C 0C03BB31 */ jal func_800EECC4
/* 3196D0 802BD160 0200202D */ daddu $a0, $s0, $zero
.L802BD164:
/* 3196D4 802BD164 0C03BB3A */ jal func_800EECE8
/* 3196D8 802BD168 0200202D */ daddu $a0, $s0, $zero
/* 3196DC 802BD16C 8FBF0014 */ lw $ra, 0x14($sp)
/* 3196E0 802BD170 8FB00010 */ lw $s0, 0x10($sp)
/* 3196E4 802BD174 0002102B */ sltu $v0, $zero, $v0
/* 3196E8 802BD178 03E00008 */ jr $ra
/* 3196EC 802BD17C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,247 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD180
/* 3196F0 802BD180 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 3196F4 802BD184 AFB00018 */ sw $s0, 0x18($sp)
/* 3196F8 802BD188 3C108011 */ lui $s0, %hi(gPlayerData)
/* 3196FC 802BD18C 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 319700 802BD190 AFBF0028 */ sw $ra, 0x28($sp)
/* 319704 802BD194 AFB30024 */ sw $s3, 0x24($sp)
/* 319708 802BD198 AFB20020 */ sw $s2, 0x20($sp)
/* 31970C 802BD19C AFB1001C */ sw $s1, 0x1c($sp)
/* 319710 802BD1A0 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 319714 802BD1A4 8C91014C */ lw $s1, 0x14c($a0)
/* 319718 802BD1A8 10A00009 */ beqz $a1, .L802BD1D0
/* 31971C 802BD1AC 0220202D */ daddu $a0, $s1, $zero
/* 319720 802BD1B0 0C03B4C4 */ jal enable_partner_flying
/* 319724 802BD1B4 24050001 */ addiu $a1, $zero, 1
/* 319728 802BD1B8 3C04802C */ lui $a0, 0x802c
/* 31972C 802BD1BC 8C84EAAC */ lw $a0, -0x1554($a0)
/* 319730 802BD1C0 0C00A580 */ jal mem_clear
/* 319734 802BD1C4 2405001C */ addiu $a1, $zero, 0x1c
/* 319738 802BD1C8 3C018011 */ lui $at, 0x8011
/* 31973C 802BD1CC AC20C954 */ sw $zero, -0x36ac($at)
.L802BD1D0:
/* 319740 802BD1D0 3C138011 */ lui $s3, 0x8011
/* 319744 802BD1D4 2673C954 */ addiu $s3, $s3, -0x36ac
/* 319748 802BD1D8 8E020304 */ lw $v0, 0x304($s0)
/* 31974C 802BD1DC 8E720000 */ lw $s2, ($s3)
/* 319750 802BD1E0 24420001 */ addiu $v0, $v0, 1
/* 319754 802BD1E4 16400007 */ bnez $s2, .L802BD204
/* 319758 802BD1E8 AE020304 */ sw $v0, 0x304($s0)
/* 31975C 802BD1EC 0C03B52E */ jal update_player_move_history
/* 319760 802BD1F0 0220202D */ daddu $a0, $s1, $zero
/* 319764 802BD1F4 0C03B574 */ jal func_800ED5D0
/* 319768 802BD1F8 0220202D */ daddu $a0, $s1, $zero
/* 31976C 802BD1FC 080AF53D */ j .L802BD4F4
/* 319770 802BD200 0000102D */ daddu $v0, $zero, $zero
.L802BD204:
/* 319774 802BD204 3C10802C */ lui $s0, 0x802c
/* 319778 802BD208 2610EAAC */ addiu $s0, $s0, -0x1554
/* 31977C 802BD20C 8E040000 */ lw $a0, ($s0)
/* 319780 802BD210 8C830004 */ lw $v1, 4($a0)
/* 319784 802BD214 24050001 */ addiu $a1, $zero, 1
/* 319788 802BD218 10650030 */ beq $v1, $a1, .L802BD2DC
/* 31978C 802BD21C 28620002 */ slti $v0, $v1, 2
/* 319790 802BD220 10400005 */ beqz $v0, .L802BD238
/* 319794 802BD224 24020002 */ addiu $v0, $zero, 2
/* 319798 802BD228 10600009 */ beqz $v1, .L802BD250
/* 31979C 802BD22C 0000102D */ daddu $v0, $zero, $zero
/* 3197A0 802BD230 080AF53D */ j .L802BD4F4
/* 3197A4 802BD234 00000000 */ nop
.L802BD238:
/* 3197A8 802BD238 1062009A */ beq $v1, $v0, .L802BD4A4
/* 3197AC 802BD23C 24020003 */ addiu $v0, $zero, 3
/* 3197B0 802BD240 106200A0 */ beq $v1, $v0, .L802BD4C4
/* 3197B4 802BD244 0000102D */ daddu $v0, $zero, $zero
/* 3197B8 802BD248 080AF53D */ j .L802BD4F4
/* 3197BC 802BD24C 00000000 */ nop
.L802BD250:
/* 3197C0 802BD250 AC850004 */ sw $a1, 4($a0)
/* 3197C4 802BD254 8E220000 */ lw $v0, ($s1)
/* 3197C8 802BD258 AC820008 */ sw $v0, 8($a0)
/* 3197CC 802BD25C C62C0038 */ lwc1 $f12, 0x38($s1)
/* 3197D0 802BD260 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 3197D4 802BD264 8E460048 */ lw $a2, 0x48($s2)
/* 3197D8 802BD268 0C00A7B5 */ jal dist2D
/* 3197DC 802BD26C 8E470050 */ lw $a3, 0x50($s2)
/* 3197E0 802BD270 8E020000 */ lw $v0, ($s0)
/* 3197E4 802BD274 46000005 */ abs.s $f0, $f0
/* 3197E8 802BD278 E440000C */ swc1 $f0, 0xc($v0)
/* 3197EC 802BD27C C64C0048 */ lwc1 $f12, 0x48($s2)
/* 3197F0 802BD280 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 3197F4 802BD284 8E260038 */ lw $a2, 0x38($s1)
/* 3197F8 802BD288 0C00A720 */ jal atan2
/* 3197FC 802BD28C 8E270040 */ lw $a3, 0x40($s1)
/* 319800 802BD290 3C040004 */ lui $a0, 4
/* 319804 802BD294 24020078 */ addiu $v0, $zero, 0x78
/* 319808 802BD298 8E030000 */ lw $v1, ($s0)
/* 31980C 802BD29C 3C0140C0 */ lui $at, 0x40c0
/* 319810 802BD2A0 44811000 */ mtc1 $at, $f2
/* 319814 802BD2A4 3C014248 */ lui $at, 0x4248
/* 319818 802BD2A8 44812000 */ mtc1 $at, $f4
/* 31981C 802BD2AC 34840148 */ ori $a0, $a0, 0x148
/* 319820 802BD2B0 E4600010 */ swc1 $f0, 0x10($v1)
/* 319824 802BD2B4 E4620014 */ swc1 $f2, 0x14($v1)
/* 319828 802BD2B8 E4640018 */ swc1 $f4, 0x18($v1)
/* 31982C 802BD2BC AC620000 */ sw $v0, ($v1)
/* 319830 802BD2C0 8E220000 */ lw $v0, ($s1)
/* 319834 802BD2C4 2403FDFF */ addiu $v1, $zero, -0x201
/* 319838 802BD2C8 00441025 */ or $v0, $v0, $a0
/* 31983C 802BD2CC 00431024 */ and $v0, $v0, $v1
/* 319840 802BD2D0 AE220000 */ sw $v0, ($s1)
/* 319844 802BD2D4 3C10802C */ lui $s0, 0x802c
/* 319848 802BD2D8 2610EAAC */ addiu $s0, $s0, -0x1554
.L802BD2DC:
/* 31984C 802BD2DC 8E020000 */ lw $v0, ($s0)
/* 319850 802BD2E0 3C0140C9 */ lui $at, 0x40c9
/* 319854 802BD2E4 34210FD0 */ ori $at, $at, 0xfd0
/* 319858 802BD2E8 44810000 */ mtc1 $at, $f0
/* 31985C 802BD2EC C44C0010 */ lwc1 $f12, 0x10($v0)
/* 319860 802BD2F0 46006302 */ mul.s $f12, $f12, $f0
/* 319864 802BD2F4 00000000 */ nop
/* 319868 802BD2F8 27A50010 */ addiu $a1, $sp, 0x10
/* 31986C 802BD2FC 3C0143B4 */ lui $at, 0x43b4
/* 319870 802BD300 44810000 */ mtc1 $at, $f0
/* 319874 802BD304 27A60014 */ addiu $a2, $sp, 0x14
/* 319878 802BD308 0C00A82D */ jal sin_cos_rad
/* 31987C 802BD30C 46006303 */ div.s $f12, $f12, $f0
/* 319880 802BD310 8E020000 */ lw $v0, ($s0)
/* 319884 802BD314 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 319888 802BD318 C440000C */ lwc1 $f0, 0xc($v0)
/* 31988C 802BD31C 46001082 */ mul.s $f2, $f2, $f0
/* 319890 802BD320 00000000 */ nop
/* 319894 802BD324 C6400048 */ lwc1 $f0, 0x48($s2)
/* 319898 802BD328 46020000 */ add.s $f0, $f0, $f2
/* 31989C 802BD32C E6200038 */ swc1 $f0, 0x38($s1)
/* 3198A0 802BD330 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 3198A4 802BD334 C440000C */ lwc1 $f0, 0xc($v0)
/* 3198A8 802BD338 46001082 */ mul.s $f2, $f2, $f0
/* 3198AC 802BD33C 00000000 */ nop
/* 3198B0 802BD340 C6400050 */ lwc1 $f0, 0x50($s2)
/* 3198B4 802BD344 46020001 */ sub.s $f0, $f0, $f2
/* 3198B8 802BD348 E6200040 */ swc1 $f0, 0x40($s1)
/* 3198BC 802BD34C C4400010 */ lwc1 $f0, 0x10($v0)
/* 3198C0 802BD350 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 3198C4 802BD354 0C00A6C9 */ jal clamp_angle
/* 3198C8 802BD358 460C0301 */ sub.s $f12, $f0, $f12
/* 3198CC 802BD35C 8E100000 */ lw $s0, ($s0)
/* 3198D0 802BD360 3C0141A0 */ lui $at, 0x41a0
/* 3198D4 802BD364 44811000 */ mtc1 $at, $f2
/* 3198D8 802BD368 C604000C */ lwc1 $f4, 0xc($s0)
/* 3198DC 802BD36C 4604103C */ c.lt.s $f2, $f4
/* 3198E0 802BD370 00000000 */ nop
/* 3198E4 802BD374 45000005 */ bc1f .L802BD38C
/* 3198E8 802BD378 E6000010 */ swc1 $f0, 0x10($s0)
/* 3198EC 802BD37C 3C013F80 */ lui $at, 0x3f80
/* 3198F0 802BD380 44810000 */ mtc1 $at, $f0
/* 3198F4 802BD384 080AF4EE */ j .L802BD3B8
/* 3198F8 802BD388 46002001 */ sub.s $f0, $f4, $f0
.L802BD38C:
/* 3198FC 802BD38C 3C014198 */ lui $at, 0x4198
/* 319900 802BD390 44810000 */ mtc1 $at, $f0
/* 319904 802BD394 00000000 */ nop
/* 319908 802BD398 4600203C */ c.lt.s $f4, $f0
/* 31990C 802BD39C 00000000 */ nop
/* 319910 802BD3A0 45000006 */ bc1f .L802BD3BC
/* 319914 802BD3A4 00000000 */ nop
/* 319918 802BD3A8 3C013F80 */ lui $at, 0x3f80
/* 31991C 802BD3AC 44810000 */ mtc1 $at, $f0
/* 319920 802BD3B0 00000000 */ nop
/* 319924 802BD3B4 46002000 */ add.s $f0, $f4, $f0
.L802BD3B8:
/* 319928 802BD3B8 E600000C */ swc1 $f0, 0xc($s0)
.L802BD3BC:
/* 31992C 802BD3BC 3C10802C */ lui $s0, 0x802c
/* 319930 802BD3C0 2610EAAC */ addiu $s0, $s0, -0x1554
/* 319934 802BD3C4 8E020000 */ lw $v0, ($s0)
/* 319938 802BD3C8 3C0140C9 */ lui $at, 0x40c9
/* 31993C 802BD3CC 34210FD0 */ ori $at, $at, 0xfd0
/* 319940 802BD3D0 44810000 */ mtc1 $at, $f0
/* 319944 802BD3D4 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 319948 802BD3D8 46006302 */ mul.s $f12, $f12, $f0
/* 31994C 802BD3DC 00000000 */ nop
/* 319950 802BD3E0 3C0143B4 */ lui $at, 0x43b4
/* 319954 802BD3E4 4481A000 */ mtc1 $at, $f20
/* 319958 802BD3E8 0C00A85B */ jal sin_rad
/* 31995C 802BD3EC 46146303 */ div.s $f12, $f12, $f20
/* 319960 802BD3F0 8E020000 */ lw $v0, ($s0)
/* 319964 802BD3F4 3C014040 */ lui $at, 0x4040
/* 319968 802BD3F8 44812000 */ mtc1 $at, $f4
/* 31996C 802BD3FC C4420018 */ lwc1 $f2, 0x18($v0)
/* 319970 802BD400 46041080 */ add.s $f2, $f2, $f4
/* 319974 802BD404 3C014316 */ lui $at, 0x4316
/* 319978 802BD408 44813000 */ mtc1 $at, $f6
/* 31997C 802BD40C 00000000 */ nop
/* 319980 802BD410 4602303C */ c.lt.s $f6, $f2
/* 319984 802BD414 E4420018 */ swc1 $f2, 0x18($v0)
/* 319988 802BD418 46040082 */ mul.s $f2, $f0, $f4
/* 31998C 802BD41C 00000000 */ nop
/* 319990 802BD420 45030001 */ bc1tl .L802BD428
/* 319994 802BD424 E4460018 */ swc1 $f6, 0x18($v0)
.L802BD428:
/* 319998 802BD428 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31999C 802BD42C 46020000 */ add.s $f0, $f0, $f2
/* 3199A0 802BD430 8E020000 */ lw $v0, ($s0)
/* 3199A4 802BD434 E620003C */ swc1 $f0, 0x3c($s1)
/* 3199A8 802BD438 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 3199AC 802BD43C 0C00A6C9 */ jal clamp_angle
/* 3199B0 802BD440 460CA301 */ sub.s $f12, $f20, $f12
/* 3199B4 802BD444 8E020000 */ lw $v0, ($s0)
/* 3199B8 802BD448 E6200034 */ swc1 $f0, 0x34($s1)
/* 3199BC 802BD44C C4400014 */ lwc1 $f0, 0x14($v0)
/* 3199C0 802BD450 3C01802C */ lui $at, 0x802c
/* 3199C4 802BD454 D422EB10 */ ldc1 $f2, -0x14f0($at)
/* 3199C8 802BD458 46000021 */ cvt.d.s $f0, $f0
/* 3199CC 802BD45C 46220000 */ add.d $f0, $f0, $f2
/* 3199D0 802BD460 3C014220 */ lui $at, 0x4220
/* 3199D4 802BD464 44811000 */ mtc1 $at, $f2
/* 3199D8 802BD468 46200020 */ cvt.s.d $f0, $f0
/* 3199DC 802BD46C 4600103C */ c.lt.s $f2, $f0
/* 3199E0 802BD470 00000000 */ nop
/* 3199E4 802BD474 45000002 */ bc1f .L802BD480
/* 3199E8 802BD478 E4400014 */ swc1 $f0, 0x14($v0)
/* 3199EC 802BD47C E4420014 */ swc1 $f2, 0x14($v0)
.L802BD480:
/* 3199F0 802BD480 8E030000 */ lw $v1, ($s0)
/* 3199F4 802BD484 8C620000 */ lw $v0, ($v1)
/* 3199F8 802BD488 2442FFFF */ addiu $v0, $v0, -1
/* 3199FC 802BD48C 14400018 */ bnez $v0, .L802BD4F0
/* 319A00 802BD490 AC620000 */ sw $v0, ($v1)
/* 319A04 802BD494 8C620004 */ lw $v0, 4($v1)
/* 319A08 802BD498 24420001 */ addiu $v0, $v0, 1
/* 319A0C 802BD49C 080AF53C */ j .L802BD4F0
/* 319A10 802BD4A0 AC620004 */ sw $v0, 4($v1)
.L802BD4A4:
/* 319A14 802BD4A4 8C820008 */ lw $v0, 8($a0)
/* 319A18 802BD4A8 AE220000 */ sw $v0, ($s1)
/* 319A1C 802BD4AC 8C820004 */ lw $v0, 4($a0)
/* 319A20 802BD4B0 2403001E */ addiu $v1, $zero, 0x1e
/* 319A24 802BD4B4 AC830000 */ sw $v1, ($a0)
/* 319A28 802BD4B8 24420001 */ addiu $v0, $v0, 1
/* 319A2C 802BD4BC 080AF53C */ j .L802BD4F0
/* 319A30 802BD4C0 AC820004 */ sw $v0, 4($a0)
.L802BD4C4:
/* 319A34 802BD4C4 0C03B52E */ jal update_player_move_history
/* 319A38 802BD4C8 0220202D */ daddu $a0, $s1, $zero
/* 319A3C 802BD4CC 0C03B574 */ jal func_800ED5D0
/* 319A40 802BD4D0 0220202D */ daddu $a0, $s1, $zero
/* 319A44 802BD4D4 8E030000 */ lw $v1, ($s0)
/* 319A48 802BD4D8 8C620000 */ lw $v0, ($v1)
/* 319A4C 802BD4DC 2442FFFF */ addiu $v0, $v0, -1
/* 319A50 802BD4E0 14400003 */ bnez $v0, .L802BD4F0
/* 319A54 802BD4E4 AC620000 */ sw $v0, ($v1)
/* 319A58 802BD4E8 AC600004 */ sw $zero, 4($v1)
/* 319A5C 802BD4EC AE600000 */ sw $zero, ($s3)
.L802BD4F0:
/* 319A60 802BD4F0 0000102D */ daddu $v0, $zero, $zero
.L802BD4F4:
/* 319A64 802BD4F4 8FBF0028 */ lw $ra, 0x28($sp)
/* 319A68 802BD4F8 8FB30024 */ lw $s3, 0x24($sp)
/* 319A6C 802BD4FC 8FB20020 */ lw $s2, 0x20($sp)
/* 319A70 802BD500 8FB1001C */ lw $s1, 0x1c($sp)
/* 319A74 802BD504 8FB00018 */ lw $s0, 0x18($sp)
/* 319A78 802BD508 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 319A7C 802BD50C 03E00008 */ jr $ra
/* 319A80 802BD510 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD514
/* 319A84 802BD514 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 319A88 802BD518 3C058011 */ lui $a1, 0x8011
/* 319A8C 802BD51C 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 319A90 802BD520 AFBF0010 */ sw $ra, 0x10($sp)
/* 319A94 802BD524 8CA20000 */ lw $v0, ($a1)
/* 319A98 802BD528 10400008 */ beqz $v0, .L802BD54C
/* 319A9C 802BD52C 00000000 */ nop
/* 319AA0 802BD530 3C03802C */ lui $v1, 0x802c
/* 319AA4 802BD534 8C63EAAC */ lw $v1, -0x1554($v1)
/* 319AA8 802BD538 8C620008 */ lw $v0, 8($v1)
/* 319AAC 802BD53C ACA00000 */ sw $zero, ($a1)
/* 319AB0 802BD540 AC820000 */ sw $v0, ($a0)
/* 319AB4 802BD544 0C03BD17 */ jal clear_partner_move_history
/* 319AB8 802BD548 AC600004 */ sw $zero, 4($v1)
.L802BD54C:
/* 319ABC 802BD54C 8FBF0010 */ lw $ra, 0x10($sp)
/* 319AC0 802BD550 03E00008 */ jr $ra
/* 319AC4 802BD554 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,71 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD558
/* 319AC8 802BD558 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 319ACC 802BD55C AFB00048 */ sw $s0, 0x48($sp)
/* 319AD0 802BD560 3C108011 */ lui $s0, %hi(gPlayerStatus)
/* 319AD4 802BD564 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus)
/* 319AD8 802BD568 AFBF0050 */ sw $ra, 0x50($sp)
/* 319ADC 802BD56C AFB1004C */ sw $s1, 0x4c($sp)
/* 319AE0 802BD570 860200B0 */ lh $v0, 0xb0($s0)
/* 319AE4 802BD574 3C013FE0 */ lui $at, 0x3fe0
/* 319AE8 802BD578 44810800 */ mtc1 $at, $f1
/* 319AEC 802BD57C 44800000 */ mtc1 $zero, $f0
/* 319AF0 802BD580 44823000 */ mtc1 $v0, $f6
/* 319AF4 802BD584 00000000 */ nop
/* 319AF8 802BD588 468031A0 */ cvt.s.w $f6, $f6
/* 319AFC 802BD58C 460030A1 */ cvt.d.s $f2, $f6
/* 319B00 802BD590 46201082 */ mul.d $f2, $f2, $f0
/* 319B04 802BD594 00000000 */ nop
/* 319B08 802BD598 0200202D */ daddu $a0, $s0, $zero
/* 319B0C 802BD59C 27A50028 */ addiu $a1, $sp, 0x28
/* 319B10 802BD5A0 27A6002C */ addiu $a2, $sp, 0x2c
/* 319B14 802BD5A4 27A70030 */ addiu $a3, $sp, 0x30
/* 319B18 802BD5A8 3C013F00 */ lui $at, 0x3f00
/* 319B1C 802BD5AC 44810000 */ mtc1 $at, $f0
/* 319B20 802BD5B0 C6040028 */ lwc1 $f4, 0x28($s0)
/* 319B24 802BD5B4 46003182 */ mul.s $f6, $f6, $f0
/* 319B28 802BD5B8 00000000 */ nop
/* 319B2C 802BD5BC C600002C */ lwc1 $f0, 0x2c($s0)
/* 319B30 802BD5C0 27A20034 */ addiu $v0, $sp, 0x34
/* 319B34 802BD5C4 E7A40028 */ swc1 $f4, 0x28($sp)
/* 319B38 802BD5C8 C6040030 */ lwc1 $f4, 0x30($s0)
/* 319B3C 802BD5CC 46000021 */ cvt.d.s $f0, $f0
/* 319B40 802BD5D0 46220000 */ add.d $f0, $f0, $f2
/* 319B44 802BD5D4 E7A40030 */ swc1 $f4, 0x30($sp)
/* 319B48 802BD5D8 E7A60034 */ swc1 $f6, 0x34($sp)
/* 319B4C 802BD5DC 46200020 */ cvt.s.d $f0, $f0
/* 319B50 802BD5E0 E7A0002C */ swc1 $f0, 0x2c($sp)
/* 319B54 802BD5E4 AFA20010 */ sw $v0, 0x10($sp)
/* 319B58 802BD5E8 27A20038 */ addiu $v0, $sp, 0x38
/* 319B5C 802BD5EC AFA20014 */ sw $v0, 0x14($sp)
/* 319B60 802BD5F0 27A2003C */ addiu $v0, $sp, 0x3c
/* 319B64 802BD5F4 AFA20018 */ sw $v0, 0x18($sp)
/* 319B68 802BD5F8 27A20040 */ addiu $v0, $sp, 0x40
/* 319B6C 802BD5FC AFA2001C */ sw $v0, 0x1c($sp)
/* 319B70 802BD600 27A20044 */ addiu $v0, $sp, 0x44
/* 319B74 802BD604 0C03791B */ jal func_800DE46C
/* 319B78 802BD608 AFA20020 */ sw $v0, 0x20($sp)
/* 319B7C 802BD60C 0040882D */ daddu $s1, $v0, $zero
/* 319B80 802BD610 0C016F6A */ jal get_collider_type_by_id
/* 319B84 802BD614 0220202D */ daddu $a0, $s1, $zero
/* 319B88 802BD618 304200FF */ andi $v0, $v0, 0xff
/* 319B8C 802BD61C 2442FFFE */ addiu $v0, $v0, -2
/* 319B90 802BD620 2C420002 */ sltiu $v0, $v0, 2
/* 319B94 802BD624 10400008 */ beqz $v0, .L802BD648
/* 319B98 802BD628 24020002 */ addiu $v0, $zero, 2
/* 319B9C 802BD62C A20200BF */ sb $v0, 0xbf($s0)
/* 319BA0 802BD630 8E020000 */ lw $v0, ($s0)
/* 319BA4 802BD634 24030015 */ addiu $v1, $zero, 0x15
/* 319BA8 802BD638 3C01802C */ lui $at, 0x802c
/* 319BAC 802BD63C AC23EBC0 */ sw $v1, -0x1440($at)
/* 319BB0 802BD640 34420800 */ ori $v0, $v0, 0x800
/* 319BB4 802BD644 AE020000 */ sw $v0, ($s0)
.L802BD648:
/* 319BB8 802BD648 0220102D */ daddu $v0, $s1, $zero
/* 319BBC 802BD64C 8FBF0050 */ lw $ra, 0x50($sp)
/* 319BC0 802BD650 8FB1004C */ lw $s1, 0x4c($sp)
/* 319BC4 802BD654 8FB00048 */ lw $s0, 0x48($sp)
/* 319BC8 802BD658 03E00008 */ jr $ra
/* 319BCC 802BD65C 27BD0058 */ addiu $sp, $sp, 0x58

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE8D4
/* 31AE44 802BE8D4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31AE48 802BE8D8 AFBF0014 */ sw $ra, 0x14($sp)
/* 31AE4C 802BE8DC AFB00010 */ sw $s0, 0x10($sp)
/* 31AE50 802BE8E0 10A00003 */ beqz $a1, .L802BE8F0
/* 31AE54 802BE8E4 8C90014C */ lw $s0, 0x14c($a0)
/* 31AE58 802BE8E8 0C03BA65 */ jal func_800EE994
/* 31AE5C 802BE8EC 0200202D */ daddu $a0, $s0, $zero
.L802BE8F0:
/* 31AE60 802BE8F0 0C03BA6E */ jal func_800EE9B8
/* 31AE64 802BE8F4 0200202D */ daddu $a0, $s0, $zero
/* 31AE68 802BE8F8 8FBF0014 */ lw $ra, 0x14($sp)
/* 31AE6C 802BE8FC 8FB00010 */ lw $s0, 0x10($sp)
/* 31AE70 802BE900 0002102B */ sltu $v0, $zero, $v0
/* 31AE74 802BE904 03E00008 */ jr $ra
/* 31AE78 802BE908 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,57 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE90C
/* 31AE7C 802BE90C 3C02802C */ lui $v0, 0x802c
/* 31AE80 802BE910 8C42EBB0 */ lw $v0, -0x1450($v0)
/* 31AE84 802BE914 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 31AE88 802BE918 AFB00010 */ sw $s0, 0x10($sp)
/* 31AE8C 802BE91C 0080802D */ daddu $s0, $a0, $zero
/* 31AE90 802BE920 AFB10014 */ sw $s1, 0x14($sp)
/* 31AE94 802BE924 3C118011 */ lui $s1, %hi(D_8010EBB0)
/* 31AE98 802BE928 2631EBB0 */ addiu $s1, $s1, %lo(D_8010EBB0)
/* 31AE9C 802BE92C 10400021 */ beqz $v0, .L802BE9B4
/* 31AEA0 802BE930 AFBF0018 */ sw $ra, 0x18($sp)
/* 31AEA4 802BE934 3C02802C */ lui $v0, 0x802c
/* 31AEA8 802BE938 8C42EBB8 */ lw $v0, -0x1448($v0)
/* 31AEAC 802BE93C 10400003 */ beqz $v0, .L802BE94C
/* 31AEB0 802BE940 00000000 */ nop
/* 31AEB4 802BE944 0C038050 */ jal enable_player_static_collisions
/* 31AEB8 802BE948 00000000 */ nop
.L802BE94C:
/* 31AEBC 802BE94C 3C02802C */ lui $v0, 0x802c
/* 31AEC0 802BE950 8C42EBB4 */ lw $v0, -0x144c($v0)
/* 31AEC4 802BE954 10400003 */ beqz $v0, .L802BE964
/* 31AEC8 802BE958 00000000 */ nop
/* 31AECC 802BE95C 0C038069 */ jal enable_player_input
/* 31AED0 802BE960 00000000 */ nop
.L802BE964:
/* 31AED4 802BE964 0C039769 */ jal set_action_state
/* 31AED8 802BE968 0000202D */ daddu $a0, $zero, $zero
/* 31AEDC 802BE96C 26230018 */ addiu $v1, $s1, 0x18
/* 31AEE0 802BE970 0200102D */ daddu $v0, $s0, $zero
/* 31AEE4 802BE974 26040340 */ addiu $a0, $s0, 0x340
.L802BE978:
/* 31AEE8 802BE978 8C450000 */ lw $a1, ($v0)
/* 31AEEC 802BE97C 8C460004 */ lw $a2, 4($v0)
/* 31AEF0 802BE980 8C470008 */ lw $a3, 8($v0)
/* 31AEF4 802BE984 8C48000C */ lw $t0, 0xc($v0)
/* 31AEF8 802BE988 AC650000 */ sw $a1, ($v1)
/* 31AEFC 802BE98C AC660004 */ sw $a2, 4($v1)
/* 31AF00 802BE990 AC670008 */ sw $a3, 8($v1)
/* 31AF04 802BE994 AC68000C */ sw $t0, 0xc($v1)
/* 31AF08 802BE998 24420010 */ addiu $v0, $v0, 0x10
/* 31AF0C 802BE99C 1444FFF6 */ bne $v0, $a0, .L802BE978
/* 31AF10 802BE9A0 24630010 */ addiu $v1, $v1, 0x10
/* 31AF14 802BE9A4 24020001 */ addiu $v0, $zero, 1
/* 31AF18 802BE9A8 A2220001 */ sb $v0, 1($s1)
/* 31AF1C 802BE9AC 0C03BD17 */ jal clear_partner_move_history
/* 31AF20 802BE9B0 0200202D */ daddu $a0, $s0, $zero
.L802BE9B4:
/* 31AF24 802BE9B4 24020004 */ addiu $v0, $zero, 4
/* 31AF28 802BE9B8 A2220003 */ sb $v0, 3($s1)
/* 31AF2C 802BE9BC 8FBF0018 */ lw $ra, 0x18($sp)
/* 31AF30 802BE9C0 8FB10014 */ lw $s1, 0x14($sp)
/* 31AF34 802BE9C4 8FB00010 */ lw $s0, 0x10($sp)
/* 31AF38 802BE9C8 03E00008 */ jr $ra
/* 31AF3C 802BE9CC 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,56 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE9D0
/* 31AF40 802BE9D0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 31AF44 802BE9D4 AFB00010 */ sw $s0, 0x10($sp)
/* 31AF48 802BE9D8 3C108011 */ lui $s0, %hi(D_8010EBB0)
/* 31AF4C 802BE9DC 2610EBB0 */ addiu $s0, $s0, %lo(D_8010EBB0)
/* 31AF50 802BE9E0 AFBF0018 */ sw $ra, 0x18($sp)
/* 31AF54 802BE9E4 AFB10014 */ sw $s1, 0x14($sp)
/* 31AF58 802BE9E8 82020001 */ lb $v0, 1($s0)
/* 31AF5C 802BE9EC 10400023 */ beqz $v0, .L802BEA7C
/* 31AF60 802BE9F0 0080882D */ daddu $s1, $a0, $zero
/* 31AF64 802BE9F4 3C02802C */ lui $v0, 0x802c
/* 31AF68 802BE9F8 8C42EBB8 */ lw $v0, -0x1448($v0)
/* 31AF6C 802BE9FC 10400003 */ beqz $v0, .L802BEA0C
/* 31AF70 802BEA00 00000000 */ nop
/* 31AF74 802BEA04 0C038045 */ jal disable_player_static_collisions
/* 31AF78 802BEA08 00000000 */ nop
.L802BEA0C:
/* 31AF7C 802BEA0C 3C02802C */ lui $v0, 0x802c
/* 31AF80 802BEA10 8C42EBB4 */ lw $v0, -0x144c($v0)
/* 31AF84 802BEA14 10400003 */ beqz $v0, .L802BEA24
/* 31AF88 802BEA18 00000000 */ nop
/* 31AF8C 802BEA1C 0C03805E */ jal disable_player_input
/* 31AF90 802BEA20 00000000 */ nop
.L802BEA24:
/* 31AF94 802BEA24 0C039769 */ jal set_action_state
/* 31AF98 802BEA28 24040021 */ addiu $a0, $zero, 0x21
/* 31AF9C 802BEA2C 0220182D */ daddu $v1, $s1, $zero
/* 31AFA0 802BEA30 26020018 */ addiu $v0, $s0, 0x18
/* 31AFA4 802BEA34 26040358 */ addiu $a0, $s0, 0x358
.L802BEA38:
/* 31AFA8 802BEA38 8C450000 */ lw $a1, ($v0)
/* 31AFAC 802BEA3C 8C460004 */ lw $a2, 4($v0)
/* 31AFB0 802BEA40 8C470008 */ lw $a3, 8($v0)
/* 31AFB4 802BEA44 8C48000C */ lw $t0, 0xc($v0)
/* 31AFB8 802BEA48 AC650000 */ sw $a1, ($v1)
/* 31AFBC 802BEA4C AC660004 */ sw $a2, 4($v1)
/* 31AFC0 802BEA50 AC670008 */ sw $a3, 8($v1)
/* 31AFC4 802BEA54 AC68000C */ sw $t0, 0xc($v1)
/* 31AFC8 802BEA58 24420010 */ addiu $v0, $v0, 0x10
/* 31AFCC 802BEA5C 1444FFF6 */ bne $v0, $a0, .L802BEA38
/* 31AFD0 802BEA60 24630010 */ addiu $v1, $v1, 0x10
/* 31AFD4 802BEA64 0220202D */ daddu $a0, $s1, $zero
/* 31AFD8 802BEA68 A2000003 */ sb $zero, 3($s0)
/* 31AFDC 802BEA6C 0C03BD17 */ jal clear_partner_move_history
/* 31AFE0 802BEA70 A2000000 */ sb $zero, ($s0)
/* 31AFE4 802BEA74 0C03ACC5 */ jal partner_use_ability
/* 31AFE8 802BEA78 00000000 */ nop
.L802BEA7C:
/* 31AFEC 802BEA7C 8FBF0018 */ lw $ra, 0x18($sp)
/* 31AFF0 802BEA80 8FB10014 */ lw $s1, 0x14($sp)
/* 31AFF4 802BEA84 8FB00010 */ lw $s0, 0x10($sp)
/* 31AFF8 802BEA88 03E00008 */ jr $ra
/* 31AFFC 802BEA8C 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,23 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_31B120
/* 31B120 802BD100 3C038011 */ lui $v1, 0x8011
/* 31B124 802BD104 8C63C978 */ lw $v1, -0x3688($v1)
/* 31B128 802BD108 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31B12C 802BD10C AFBF0010 */ sw $ra, 0x10($sp)
/* 31B130 802BD110 04600009 */ bltz $v1, .L802BD138
/* 31B134 802BD114 0000102D */ daddu $v0, $zero, $zero
/* 31B138 802BD118 30624000 */ andi $v0, $v1, 0x4000
/* 31B13C 802BD11C 10400005 */ beqz $v0, .L802BD134
/* 31B140 802BD120 2404BFFF */ addiu $a0, $zero, -0x4001
/* 31B144 802BD124 0C044277 */ jal func_801109DC
/* 31B148 802BD128 00642024 */ and $a0, $v1, $a0
/* 31B14C 802BD12C 080AF44E */ j .L802BD138
/* 31B150 802BD130 00000000 */ nop
.L802BD134:
/* 31B154 802BD134 0000102D */ daddu $v0, $zero, $zero
.L802BD138:
/* 31B158 802BD138 8FBF0010 */ lw $ra, 0x10($sp)
/* 31B15C 802BD13C 03E00008 */ jr $ra
/* 31B160 802BD140 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD144
/* 31B164 802BD144 3C038011 */ lui $v1, 0x8011
/* 31B168 802BD148 8C63C978 */ lw $v1, -0x3688($v1)
/* 31B16C 802BD14C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31B170 802BD150 04600007 */ bltz $v1, .L802BD170
/* 31B174 802BD154 AFBF0010 */ sw $ra, 0x10($sp)
/* 31B178 802BD158 30624000 */ andi $v0, $v1, 0x4000
/* 31B17C 802BD15C 10400004 */ beqz $v0, .L802BD170
/* 31B180 802BD160 00000000 */ nop
/* 31B184 802BD164 2404BFFF */ addiu $a0, $zero, -0x4001
/* 31B188 802BD168 0C044277 */ jal func_801109DC
/* 31B18C 802BD16C 00642024 */ and $a0, $v1, $a0
.L802BD170:
/* 31B190 802BD170 8FBF0010 */ lw $ra, 0x10($sp)
/* 31B194 802BD174 03E00008 */ jr $ra
/* 31B198 802BD178 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,39 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD17C
/* 31B19C 802BD17C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31B1A0 802BD180 AFBF0010 */ sw $ra, 0x10($sp)
/* 31B1A4 802BD184 848200A6 */ lh $v0, 0xa6($a0)
/* 31B1A8 802BD188 C48C0038 */ lwc1 $f12, 0x38($a0)
/* 31B1AC 802BD18C C48E003C */ lwc1 $f14, 0x3c($a0)
/* 31B1B0 802BD190 8C860040 */ lw $a2, 0x40($a0)
/* 31B1B4 802BD194 44820000 */ mtc1 $v0, $f0
/* 31B1B8 802BD198 00000000 */ nop
/* 31B1BC 802BD19C 46800020 */ cvt.s.w $f0, $f0
/* 31B1C0 802BD1A0 44070000 */ mfc1 $a3, $f0
/* 31B1C4 802BD1A4 0C04CFF2 */ jal func_80133FC8
/* 31B1C8 802BD1A8 00000000 */ nop
/* 31B1CC 802BD1AC 0040282D */ daddu $a1, $v0, $zero
/* 31B1D0 802BD1B0 3C01802C */ lui $at, 0x802c
/* 31B1D4 802BD1B4 AC25EC68 */ sw $a1, -0x1398($at)
/* 31B1D8 802BD1B8 04A0000D */ bltz $a1, .L802BD1F0
/* 31B1DC 802BD1BC 24040001 */ addiu $a0, $zero, 1
/* 31B1E0 802BD1C0 3C02800A */ lui $v0, %hi(D_8009A650)
/* 31B1E4 802BD1C4 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 31B1E8 802BD1C8 8C430000 */ lw $v1, ($v0)
/* 31B1EC 802BD1CC 3C01802C */ lui $at, 0x802c
/* 31B1F0 802BD1D0 AC24EC6C */ sw $a0, -0x1394($at)
/* 31B1F4 802BD1D4 00A0202D */ daddu $a0, $a1, $zero
/* 31B1F8 802BD1D8 3C050020 */ lui $a1, 0x20
/* 31B1FC 802BD1DC 34630040 */ ori $v1, $v1, 0x40
/* 31B200 802BD1E0 0C04D052 */ jal set_item_entity_flags
/* 31B204 802BD1E4 AC430000 */ sw $v1, ($v0)
/* 31B208 802BD1E8 080AF47D */ j .L802BD1F4
/* 31B20C 802BD1EC 24020001 */ addiu $v0, $zero, 1
.L802BD1F0:
/* 31B210 802BD1F0 0000102D */ daddu $v0, $zero, $zero
.L802BD1F4:
/* 31B214 802BD1F4 8FBF0010 */ lw $ra, 0x10($sp)
/* 31B218 802BD1F8 03E00008 */ jr $ra
/* 31B21C 802BD1FC 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,14 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD200
/* 31B220 802BD200 24020025 */ addiu $v0, $zero, 0x25
/* 31B224 802BD204 A48200A8 */ sh $v0, 0xa8($a0)
/* 31B228 802BD208 24020018 */ addiu $v0, $zero, 0x18
/* 31B22C 802BD20C A48200A6 */ sh $v0, 0xa6($a0)
/* 31B230 802BD210 3C020001 */ lui $v0, 1
/* 31B234 802BD214 AC820080 */ sw $v0, 0x80($a0)
/* 31B238 802BD218 3C01802C */ lui $at, 0x802c
/* 31B23C 802BD21C AC20EC54 */ sw $zero, -0x13ac($at)
/* 31B240 802BD220 03E00008 */ jr $ra
/* 31B244 802BD224 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD228
/* 31B248 802BD228 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31B24C 802BD22C AFBF0014 */ sw $ra, 0x14($sp)
/* 31B250 802BD230 AFB00010 */ sw $s0, 0x10($sp)
/* 31B254 802BD234 10A00003 */ beqz $a1, .L802BD244
/* 31B258 802BD238 8C90014C */ lw $s0, 0x14c($a0)
/* 31B25C 802BD23C 0C03BB31 */ jal func_800EECC4
/* 31B260 802BD240 0200202D */ daddu $a0, $s0, $zero
.L802BD244:
/* 31B264 802BD244 0C03BB3A */ jal func_800EECE8
/* 31B268 802BD248 0200202D */ daddu $a0, $s0, $zero
/* 31B26C 802BD24C 8FBF0014 */ lw $ra, 0x14($sp)
/* 31B270 802BD250 8FB00010 */ lw $s0, 0x10($sp)
/* 31B274 802BD254 0002102B */ sltu $v0, $zero, $v0
/* 31B278 802BD258 03E00008 */ jr $ra
/* 31B27C 802BD25C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,247 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD260
/* 31B280 802BD260 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31B284 802BD264 AFB00018 */ sw $s0, 0x18($sp)
/* 31B288 802BD268 3C108011 */ lui $s0, %hi(gPlayerData)
/* 31B28C 802BD26C 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 31B290 802BD270 AFBF0028 */ sw $ra, 0x28($sp)
/* 31B294 802BD274 AFB30024 */ sw $s3, 0x24($sp)
/* 31B298 802BD278 AFB20020 */ sw $s2, 0x20($sp)
/* 31B29C 802BD27C AFB1001C */ sw $s1, 0x1c($sp)
/* 31B2A0 802BD280 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 31B2A4 802BD284 8C91014C */ lw $s1, 0x14c($a0)
/* 31B2A8 802BD288 10A00009 */ beqz $a1, .L802BD2B0
/* 31B2AC 802BD28C 0220202D */ daddu $a0, $s1, $zero
/* 31B2B0 802BD290 0C03AE2A */ jal enable_partner_walking
/* 31B2B4 802BD294 24050001 */ addiu $a1, $zero, 1
/* 31B2B8 802BD298 3C04802C */ lui $a0, 0x802c
/* 31B2BC 802BD29C 8C84EB60 */ lw $a0, -0x14a0($a0)
/* 31B2C0 802BD2A0 0C00A580 */ jal mem_clear
/* 31B2C4 802BD2A4 2405001C */ addiu $a1, $zero, 0x1c
/* 31B2C8 802BD2A8 3C018011 */ lui $at, 0x8011
/* 31B2CC 802BD2AC AC20C954 */ sw $zero, -0x36ac($at)
.L802BD2B0:
/* 31B2D0 802BD2B0 3C138011 */ lui $s3, 0x8011
/* 31B2D4 802BD2B4 2673C954 */ addiu $s3, $s3, -0x36ac
/* 31B2D8 802BD2B8 8E0202FC */ lw $v0, 0x2fc($s0)
/* 31B2DC 802BD2BC 8E720000 */ lw $s2, ($s3)
/* 31B2E0 802BD2C0 24420001 */ addiu $v0, $v0, 1
/* 31B2E4 802BD2C4 16400007 */ bnez $s2, .L802BD2E4
/* 31B2E8 802BD2C8 AE0202FC */ sw $v0, 0x2fc($s0)
/* 31B2EC 802BD2CC 0C03AE8F */ jal func_800EBA3C
/* 31B2F0 802BD2D0 0220202D */ daddu $a0, $s1, $zero
/* 31B2F4 802BD2D4 0C03AED0 */ jal func_800EBB40
/* 31B2F8 802BD2D8 0220202D */ daddu $a0, $s1, $zero
/* 31B2FC 802BD2DC 080AF575 */ j .L802BD5D4
/* 31B300 802BD2E0 0000102D */ daddu $v0, $zero, $zero
.L802BD2E4:
/* 31B304 802BD2E4 3C10802C */ lui $s0, 0x802c
/* 31B308 802BD2E8 2610EB60 */ addiu $s0, $s0, -0x14a0
/* 31B30C 802BD2EC 8E040000 */ lw $a0, ($s0)
/* 31B310 802BD2F0 8C830004 */ lw $v1, 4($a0)
/* 31B314 802BD2F4 24050001 */ addiu $a1, $zero, 1
/* 31B318 802BD2F8 10650030 */ beq $v1, $a1, .L802BD3BC
/* 31B31C 802BD2FC 28620002 */ slti $v0, $v1, 2
/* 31B320 802BD300 10400005 */ beqz $v0, .L802BD318
/* 31B324 802BD304 24020002 */ addiu $v0, $zero, 2
/* 31B328 802BD308 10600009 */ beqz $v1, .L802BD330
/* 31B32C 802BD30C 0000102D */ daddu $v0, $zero, $zero
/* 31B330 802BD310 080AF575 */ j .L802BD5D4
/* 31B334 802BD314 00000000 */ nop
.L802BD318:
/* 31B338 802BD318 1062009A */ beq $v1, $v0, .L802BD584
/* 31B33C 802BD31C 24020003 */ addiu $v0, $zero, 3
/* 31B340 802BD320 106200A0 */ beq $v1, $v0, .L802BD5A4
/* 31B344 802BD324 0000102D */ daddu $v0, $zero, $zero
/* 31B348 802BD328 080AF575 */ j .L802BD5D4
/* 31B34C 802BD32C 00000000 */ nop
.L802BD330:
/* 31B350 802BD330 AC850004 */ sw $a1, 4($a0)
/* 31B354 802BD334 8E220000 */ lw $v0, ($s1)
/* 31B358 802BD338 AC820008 */ sw $v0, 8($a0)
/* 31B35C 802BD33C C62C0038 */ lwc1 $f12, 0x38($s1)
/* 31B360 802BD340 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 31B364 802BD344 8E460048 */ lw $a2, 0x48($s2)
/* 31B368 802BD348 0C00A7B5 */ jal dist2D
/* 31B36C 802BD34C 8E470050 */ lw $a3, 0x50($s2)
/* 31B370 802BD350 8E020000 */ lw $v0, ($s0)
/* 31B374 802BD354 46000005 */ abs.s $f0, $f0
/* 31B378 802BD358 E440000C */ swc1 $f0, 0xc($v0)
/* 31B37C 802BD35C C64C0048 */ lwc1 $f12, 0x48($s2)
/* 31B380 802BD360 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 31B384 802BD364 8E260038 */ lw $a2, 0x38($s1)
/* 31B388 802BD368 0C00A720 */ jal atan2
/* 31B38C 802BD36C 8E270040 */ lw $a3, 0x40($s1)
/* 31B390 802BD370 3C040004 */ lui $a0, 4
/* 31B394 802BD374 24020078 */ addiu $v0, $zero, 0x78
/* 31B398 802BD378 8E030000 */ lw $v1, ($s0)
/* 31B39C 802BD37C 3C0140C0 */ lui $at, 0x40c0
/* 31B3A0 802BD380 44811000 */ mtc1 $at, $f2
/* 31B3A4 802BD384 3C014248 */ lui $at, 0x4248
/* 31B3A8 802BD388 44812000 */ mtc1 $at, $f4
/* 31B3AC 802BD38C 34840148 */ ori $a0, $a0, 0x148
/* 31B3B0 802BD390 E4600010 */ swc1 $f0, 0x10($v1)
/* 31B3B4 802BD394 E4620014 */ swc1 $f2, 0x14($v1)
/* 31B3B8 802BD398 E4640018 */ swc1 $f4, 0x18($v1)
/* 31B3BC 802BD39C AC620000 */ sw $v0, ($v1)
/* 31B3C0 802BD3A0 8E220000 */ lw $v0, ($s1)
/* 31B3C4 802BD3A4 2403FDFF */ addiu $v1, $zero, -0x201
/* 31B3C8 802BD3A8 00441025 */ or $v0, $v0, $a0
/* 31B3CC 802BD3AC 00431024 */ and $v0, $v0, $v1
/* 31B3D0 802BD3B0 AE220000 */ sw $v0, ($s1)
/* 31B3D4 802BD3B4 3C10802C */ lui $s0, 0x802c
/* 31B3D8 802BD3B8 2610EB60 */ addiu $s0, $s0, -0x14a0
.L802BD3BC:
/* 31B3DC 802BD3BC 8E020000 */ lw $v0, ($s0)
/* 31B3E0 802BD3C0 3C0140C9 */ lui $at, 0x40c9
/* 31B3E4 802BD3C4 34210FD0 */ ori $at, $at, 0xfd0
/* 31B3E8 802BD3C8 44810000 */ mtc1 $at, $f0
/* 31B3EC 802BD3CC C44C0010 */ lwc1 $f12, 0x10($v0)
/* 31B3F0 802BD3D0 46006302 */ mul.s $f12, $f12, $f0
/* 31B3F4 802BD3D4 00000000 */ nop
/* 31B3F8 802BD3D8 27A50010 */ addiu $a1, $sp, 0x10
/* 31B3FC 802BD3DC 3C0143B4 */ lui $at, 0x43b4
/* 31B400 802BD3E0 44810000 */ mtc1 $at, $f0
/* 31B404 802BD3E4 27A60014 */ addiu $a2, $sp, 0x14
/* 31B408 802BD3E8 0C00A82D */ jal sin_cos_rad
/* 31B40C 802BD3EC 46006303 */ div.s $f12, $f12, $f0
/* 31B410 802BD3F0 8E020000 */ lw $v0, ($s0)
/* 31B414 802BD3F4 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 31B418 802BD3F8 C440000C */ lwc1 $f0, 0xc($v0)
/* 31B41C 802BD3FC 46001082 */ mul.s $f2, $f2, $f0
/* 31B420 802BD400 00000000 */ nop
/* 31B424 802BD404 C6400048 */ lwc1 $f0, 0x48($s2)
/* 31B428 802BD408 46020000 */ add.s $f0, $f0, $f2
/* 31B42C 802BD40C E6200038 */ swc1 $f0, 0x38($s1)
/* 31B430 802BD410 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 31B434 802BD414 C440000C */ lwc1 $f0, 0xc($v0)
/* 31B438 802BD418 46001082 */ mul.s $f2, $f2, $f0
/* 31B43C 802BD41C 00000000 */ nop
/* 31B440 802BD420 C6400050 */ lwc1 $f0, 0x50($s2)
/* 31B444 802BD424 46020001 */ sub.s $f0, $f0, $f2
/* 31B448 802BD428 E6200040 */ swc1 $f0, 0x40($s1)
/* 31B44C 802BD42C C4400010 */ lwc1 $f0, 0x10($v0)
/* 31B450 802BD430 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 31B454 802BD434 0C00A6C9 */ jal clamp_angle
/* 31B458 802BD438 460C0301 */ sub.s $f12, $f0, $f12
/* 31B45C 802BD43C 8E100000 */ lw $s0, ($s0)
/* 31B460 802BD440 3C0141A0 */ lui $at, 0x41a0
/* 31B464 802BD444 44811000 */ mtc1 $at, $f2
/* 31B468 802BD448 C604000C */ lwc1 $f4, 0xc($s0)
/* 31B46C 802BD44C 4604103C */ c.lt.s $f2, $f4
/* 31B470 802BD450 00000000 */ nop
/* 31B474 802BD454 45000005 */ bc1f .L802BD46C
/* 31B478 802BD458 E6000010 */ swc1 $f0, 0x10($s0)
/* 31B47C 802BD45C 3C013F80 */ lui $at, 0x3f80
/* 31B480 802BD460 44810000 */ mtc1 $at, $f0
/* 31B484 802BD464 080AF526 */ j .L802BD498
/* 31B488 802BD468 46002001 */ sub.s $f0, $f4, $f0
.L802BD46C:
/* 31B48C 802BD46C 3C014198 */ lui $at, 0x4198
/* 31B490 802BD470 44810000 */ mtc1 $at, $f0
/* 31B494 802BD474 00000000 */ nop
/* 31B498 802BD478 4600203C */ c.lt.s $f4, $f0
/* 31B49C 802BD47C 00000000 */ nop
/* 31B4A0 802BD480 45000006 */ bc1f .L802BD49C
/* 31B4A4 802BD484 00000000 */ nop
/* 31B4A8 802BD488 3C013F80 */ lui $at, 0x3f80
/* 31B4AC 802BD48C 44810000 */ mtc1 $at, $f0
/* 31B4B0 802BD490 00000000 */ nop
/* 31B4B4 802BD494 46002000 */ add.s $f0, $f4, $f0
.L802BD498:
/* 31B4B8 802BD498 E600000C */ swc1 $f0, 0xc($s0)
.L802BD49C:
/* 31B4BC 802BD49C 3C10802C */ lui $s0, 0x802c
/* 31B4C0 802BD4A0 2610EB60 */ addiu $s0, $s0, -0x14a0
/* 31B4C4 802BD4A4 8E020000 */ lw $v0, ($s0)
/* 31B4C8 802BD4A8 3C0140C9 */ lui $at, 0x40c9
/* 31B4CC 802BD4AC 34210FD0 */ ori $at, $at, 0xfd0
/* 31B4D0 802BD4B0 44810000 */ mtc1 $at, $f0
/* 31B4D4 802BD4B4 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 31B4D8 802BD4B8 46006302 */ mul.s $f12, $f12, $f0
/* 31B4DC 802BD4BC 00000000 */ nop
/* 31B4E0 802BD4C0 3C0143B4 */ lui $at, 0x43b4
/* 31B4E4 802BD4C4 4481A000 */ mtc1 $at, $f20
/* 31B4E8 802BD4C8 0C00A85B */ jal sin_rad
/* 31B4EC 802BD4CC 46146303 */ div.s $f12, $f12, $f20
/* 31B4F0 802BD4D0 8E020000 */ lw $v0, ($s0)
/* 31B4F4 802BD4D4 3C014040 */ lui $at, 0x4040
/* 31B4F8 802BD4D8 44812000 */ mtc1 $at, $f4
/* 31B4FC 802BD4DC C4420018 */ lwc1 $f2, 0x18($v0)
/* 31B500 802BD4E0 46041080 */ add.s $f2, $f2, $f4
/* 31B504 802BD4E4 3C014316 */ lui $at, 0x4316
/* 31B508 802BD4E8 44813000 */ mtc1 $at, $f6
/* 31B50C 802BD4EC 00000000 */ nop
/* 31B510 802BD4F0 4602303C */ c.lt.s $f6, $f2
/* 31B514 802BD4F4 E4420018 */ swc1 $f2, 0x18($v0)
/* 31B518 802BD4F8 46040082 */ mul.s $f2, $f0, $f4
/* 31B51C 802BD4FC 00000000 */ nop
/* 31B520 802BD500 45030001 */ bc1tl .L802BD508
/* 31B524 802BD504 E4460018 */ swc1 $f6, 0x18($v0)
.L802BD508:
/* 31B528 802BD508 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31B52C 802BD50C 46020000 */ add.s $f0, $f0, $f2
/* 31B530 802BD510 8E020000 */ lw $v0, ($s0)
/* 31B534 802BD514 E620003C */ swc1 $f0, 0x3c($s1)
/* 31B538 802BD518 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 31B53C 802BD51C 0C00A6C9 */ jal clamp_angle
/* 31B540 802BD520 460CA301 */ sub.s $f12, $f20, $f12
/* 31B544 802BD524 8E020000 */ lw $v0, ($s0)
/* 31B548 802BD528 E6200034 */ swc1 $f0, 0x34($s1)
/* 31B54C 802BD52C C4400014 */ lwc1 $f0, 0x14($v0)
/* 31B550 802BD530 3C01802C */ lui $at, 0x802c
/* 31B554 802BD534 D422EBC0 */ ldc1 $f2, -0x1440($at)
/* 31B558 802BD538 46000021 */ cvt.d.s $f0, $f0
/* 31B55C 802BD53C 46220000 */ add.d $f0, $f0, $f2
/* 31B560 802BD540 3C014220 */ lui $at, 0x4220
/* 31B564 802BD544 44811000 */ mtc1 $at, $f2
/* 31B568 802BD548 46200020 */ cvt.s.d $f0, $f0
/* 31B56C 802BD54C 4600103C */ c.lt.s $f2, $f0
/* 31B570 802BD550 00000000 */ nop
/* 31B574 802BD554 45000002 */ bc1f .L802BD560
/* 31B578 802BD558 E4400014 */ swc1 $f0, 0x14($v0)
/* 31B57C 802BD55C E4420014 */ swc1 $f2, 0x14($v0)
.L802BD560:
/* 31B580 802BD560 8E030000 */ lw $v1, ($s0)
/* 31B584 802BD564 8C620000 */ lw $v0, ($v1)
/* 31B588 802BD568 2442FFFF */ addiu $v0, $v0, -1
/* 31B58C 802BD56C 14400018 */ bnez $v0, .L802BD5D0
/* 31B590 802BD570 AC620000 */ sw $v0, ($v1)
/* 31B594 802BD574 8C620004 */ lw $v0, 4($v1)
/* 31B598 802BD578 24420001 */ addiu $v0, $v0, 1
/* 31B59C 802BD57C 080AF574 */ j .L802BD5D0
/* 31B5A0 802BD580 AC620004 */ sw $v0, 4($v1)
.L802BD584:
/* 31B5A4 802BD584 8C820008 */ lw $v0, 8($a0)
/* 31B5A8 802BD588 AE220000 */ sw $v0, ($s1)
/* 31B5AC 802BD58C 8C820004 */ lw $v0, 4($a0)
/* 31B5B0 802BD590 2403001E */ addiu $v1, $zero, 0x1e
/* 31B5B4 802BD594 AC830000 */ sw $v1, ($a0)
/* 31B5B8 802BD598 24420001 */ addiu $v0, $v0, 1
/* 31B5BC 802BD59C 080AF574 */ j .L802BD5D0
/* 31B5C0 802BD5A0 AC820004 */ sw $v0, 4($a0)
.L802BD5A4:
/* 31B5C4 802BD5A4 0C03AE8F */ jal func_800EBA3C
/* 31B5C8 802BD5A8 0220202D */ daddu $a0, $s1, $zero
/* 31B5CC 802BD5AC 0C03AED0 */ jal func_800EBB40
/* 31B5D0 802BD5B0 0220202D */ daddu $a0, $s1, $zero
/* 31B5D4 802BD5B4 8E030000 */ lw $v1, ($s0)
/* 31B5D8 802BD5B8 8C620000 */ lw $v0, ($v1)
/* 31B5DC 802BD5BC 2442FFFF */ addiu $v0, $v0, -1
/* 31B5E0 802BD5C0 14400003 */ bnez $v0, .L802BD5D0
/* 31B5E4 802BD5C4 AC620000 */ sw $v0, ($v1)
/* 31B5E8 802BD5C8 AC600004 */ sw $zero, 4($v1)
/* 31B5EC 802BD5CC AE600000 */ sw $zero, ($s3)
.L802BD5D0:
/* 31B5F0 802BD5D0 0000102D */ daddu $v0, $zero, $zero
.L802BD5D4:
/* 31B5F4 802BD5D4 8FBF0028 */ lw $ra, 0x28($sp)
/* 31B5F8 802BD5D8 8FB30024 */ lw $s3, 0x24($sp)
/* 31B5FC 802BD5DC 8FB20020 */ lw $s2, 0x20($sp)
/* 31B600 802BD5E0 8FB1001C */ lw $s1, 0x1c($sp)
/* 31B604 802BD5E4 8FB00018 */ lw $s0, 0x18($sp)
/* 31B608 802BD5E8 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 31B60C 802BD5EC 03E00008 */ jr $ra
/* 31B610 802BD5F0 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD5F4
/* 31B614 802BD5F4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31B618 802BD5F8 3C058011 */ lui $a1, 0x8011
/* 31B61C 802BD5FC 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 31B620 802BD600 AFBF0010 */ sw $ra, 0x10($sp)
/* 31B624 802BD604 8CA20000 */ lw $v0, ($a1)
/* 31B628 802BD608 10400008 */ beqz $v0, .L802BD62C
/* 31B62C 802BD60C 00000000 */ nop
/* 31B630 802BD610 3C03802C */ lui $v1, 0x802c
/* 31B634 802BD614 8C63EB60 */ lw $v1, -0x14a0($v1)
/* 31B638 802BD618 8C620008 */ lw $v0, 8($v1)
/* 31B63C 802BD61C ACA00000 */ sw $zero, ($a1)
/* 31B640 802BD620 AC820000 */ sw $v0, ($a0)
/* 31B644 802BD624 0C03BD17 */ jal clear_partner_move_history
/* 31B648 802BD628 AC600004 */ sw $zero, 4($v1)
.L802BD62C:
/* 31B64C 802BD62C 8FBF0010 */ lw $ra, 0x10($sp)
/* 31B650 802BD630 03E00008 */ jr $ra
/* 31B654 802BD634 27BD0018 */ addiu $sp, $sp, 0x18

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE7E0
/* 31C800 802BE7E0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31C804 802BE7E4 AFBF0014 */ sw $ra, 0x14($sp)
/* 31C808 802BE7E8 AFB00010 */ sw $s0, 0x10($sp)
/* 31C80C 802BE7EC 10A00003 */ beqz $a1, .L802BE7FC
/* 31C810 802BE7F0 8C90014C */ lw $s0, 0x14c($a0)
/* 31C814 802BE7F4 0C03BA65 */ jal func_800EE994
/* 31C818 802BE7F8 0200202D */ daddu $a0, $s0, $zero
.L802BE7FC:
/* 31C81C 802BE7FC 0C03BA6E */ jal func_800EE9B8
/* 31C820 802BE800 0200202D */ daddu $a0, $s0, $zero
/* 31C824 802BE804 8FBF0014 */ lw $ra, 0x14($sp)
/* 31C828 802BE808 8FB00010 */ lw $s0, 0x10($sp)
/* 31C82C 802BE80C 0002102B */ sltu $v0, $zero, $v0
/* 31C830 802BE810 03E00008 */ jr $ra
/* 31C834 802BE814 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,137 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE818
/* 31C838 802BE818 27BDFF80 */ addiu $sp, $sp, -0x80
/* 31C83C 802BE81C AFB10044 */ sw $s1, 0x44($sp)
/* 31C840 802BE820 3C11802C */ lui $s1, 0x802c
/* 31C844 802BE824 2631EB40 */ addiu $s1, $s1, -0x14c0
/* 31C848 802BE828 AFBF0048 */ sw $ra, 0x48($sp)
/* 31C84C 802BE82C AFB00040 */ sw $s0, 0x40($sp)
/* 31C850 802BE830 F7BE0078 */ sdc1 $f30, 0x78($sp)
/* 31C854 802BE834 F7BC0070 */ sdc1 $f28, 0x70($sp)
/* 31C858 802BE838 F7BA0068 */ sdc1 $f26, 0x68($sp)
/* 31C85C 802BE83C F7B80060 */ sdc1 $f24, 0x60($sp)
/* 31C860 802BE840 F7B60058 */ sdc1 $f22, 0x58($sp)
/* 31C864 802BE844 F7B40050 */ sdc1 $f20, 0x50($sp)
/* 31C868 802BE848 8E220000 */ lw $v0, ($s1)
/* 31C86C 802BE84C 10400069 */ beqz $v0, .L802BE9F4
/* 31C870 802BE850 0080802D */ daddu $s0, $a0, $zero
/* 31C874 802BE854 C6160038 */ lwc1 $f22, 0x38($s0)
/* 31C878 802BE858 C6180040 */ lwc1 $f24, 0x40($s0)
/* 31C87C 802BE85C 84A200A6 */ lh $v0, 0xa6($a1)
/* 31C880 802BE860 3C01802C */ lui $at, 0x802c
/* 31C884 802BE864 D420EC38 */ ldc1 $f0, -0x13c8($at)
/* 31C888 802BE868 C4BE0038 */ lwc1 $f30, 0x38($a1)
/* 31C88C 802BE86C C4A80040 */ lwc1 $f8, 0x40($a1)
/* 31C890 802BE870 44822000 */ mtc1 $v0, $f4
/* 31C894 802BE874 00000000 */ nop
/* 31C898 802BE878 46802121 */ cvt.d.w $f4, $f4
/* 31C89C 802BE87C 46004386 */ mov.s $f14, $f8
/* 31C8A0 802BE880 46202102 */ mul.d $f4, $f4, $f0
/* 31C8A4 802BE884 00000000 */ nop
/* 31C8A8 802BE888 E7A80030 */ swc1 $f8, 0x30($sp)
/* 31C8AC 802BE88C 860200A6 */ lh $v0, 0xa6($s0)
/* 31C8B0 802BE890 3C01802C */ lui $at, 0x802c
/* 31C8B4 802BE894 D420EC40 */ ldc1 $f0, -0x13c0($at)
/* 31C8B8 802BE898 4406B000 */ mfc1 $a2, $f22
/* 31C8BC 802BE89C 44821000 */ mtc1 $v0, $f2
/* 31C8C0 802BE8A0 00000000 */ nop
/* 31C8C4 802BE8A4 468010A1 */ cvt.d.w $f2, $f2
/* 31C8C8 802BE8A8 84A200A8 */ lh $v0, 0xa8($a1)
/* 31C8CC 802BE8AC 4407C000 */ mfc1 $a3, $f24
/* 31C8D0 802BE8B0 44825000 */ mtc1 $v0, $f10
/* 31C8D4 802BE8B4 00000000 */ nop
/* 31C8D8 802BE8B8 468052A0 */ cvt.s.w $f10, $f10
/* 31C8DC 802BE8BC E7AA0034 */ swc1 $f10, 0x34($sp)
/* 31C8E0 802BE8C0 860200A8 */ lh $v0, 0xa8($s0)
/* 31C8E4 802BE8C4 46201082 */ mul.d $f2, $f2, $f0
/* 31C8E8 802BE8C8 00000000 */ nop
/* 31C8EC 802BE8CC 44824000 */ mtc1 $v0, $f8
/* 31C8F0 802BE8D0 00000000 */ nop
/* 31C8F4 802BE8D4 46804220 */ cvt.s.w $f8, $f8
/* 31C8F8 802BE8D8 E7A8003C */ swc1 $f8, 0x3c($sp)
/* 31C8FC 802BE8DC C4AA003C */ lwc1 $f10, 0x3c($a1)
/* 31C900 802BE8E0 E7AA002C */ swc1 $f10, 0x2c($sp)
/* 31C904 802BE8E4 C608003C */ lwc1 $f8, 0x3c($s0)
/* 31C908 802BE8E8 4600F306 */ mov.s $f12, $f30
/* 31C90C 802BE8EC E7A80038 */ swc1 $f8, 0x38($sp)
/* 31C910 802BE8F0 46202720 */ cvt.s.d $f28, $f4
/* 31C914 802BE8F4 0C00A720 */ jal atan2
/* 31C918 802BE8F8 462016A0 */ cvt.s.d $f26, $f2
/* 31C91C 802BE8FC 4600F306 */ mov.s $f12, $f30
/* 31C920 802BE900 C7AE0030 */ lwc1 $f14, 0x30($sp)
/* 31C924 802BE904 4406B000 */ mfc1 $a2, $f22
/* 31C928 802BE908 4407C000 */ mfc1 $a3, $f24
/* 31C92C 802BE90C 0C00A7B5 */ jal dist2D
/* 31C930 802BE910 46000506 */ mov.s $f20, $f0
/* 31C934 802BE914 27A60024 */ addiu $a2, $sp, 0x24
/* 31C938 802BE918 27A70028 */ addiu $a3, $sp, 0x28
/* 31C93C 802BE91C 0000202D */ daddu $a0, $zero, $zero
/* 31C940 802BE920 C6020038 */ lwc1 $f2, 0x38($s0)
/* 31C944 802BE924 C604003C */ lwc1 $f4, 0x3c($s0)
/* 31C948 802BE928 C6060040 */ lwc1 $f6, 0x40($s0)
/* 31C94C 802BE92C C7AA003C */ lwc1 $f10, 0x3c($sp)
/* 31C950 802BE930 27A50020 */ addiu $a1, $sp, 0x20
/* 31C954 802BE934 E7A20020 */ swc1 $f2, 0x20($sp)
/* 31C958 802BE938 E7A40024 */ swc1 $f4, 0x24($sp)
/* 31C95C 802BE93C E7A60028 */ swc1 $f6, 0x28($sp)
/* 31C960 802BE940 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31C964 802BE944 461CD000 */ add.s $f0, $f26, $f28
/* 31C968 802BE948 E7B40014 */ swc1 $f20, 0x14($sp)
/* 31C96C 802BE94C E7AA0018 */ swc1 $f10, 0x18($sp)
/* 31C970 802BE950 0C0376B9 */ jal func_800DDAE4
/* 31C974 802BE954 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 31C978 802BE958 54400027 */ bnel $v0, $zero, .L802BE9F8
/* 31C97C 802BE95C 0000102D */ daddu $v0, $zero, $zero
/* 31C980 802BE960 C7A8002C */ lwc1 $f8, 0x2c($sp)
/* 31C984 802BE964 C7AA0034 */ lwc1 $f10, 0x34($sp)
/* 31C988 802BE968 460A4000 */ add.s $f0, $f8, $f10
/* 31C98C 802BE96C C7A80038 */ lwc1 $f8, 0x38($sp)
/* 31C990 802BE970 4608003C */ c.lt.s $f0, $f8
/* 31C994 802BE974 00000000 */ nop
/* 31C998 802BE978 4503001F */ bc1tl .L802BE9F8
/* 31C99C 802BE97C 0000102D */ daddu $v0, $zero, $zero
/* 31C9A0 802BE980 C7AA0038 */ lwc1 $f10, 0x38($sp)
/* 31C9A4 802BE984 C7A8003C */ lwc1 $f8, 0x3c($sp)
/* 31C9A8 802BE988 46085000 */ add.s $f0, $f10, $f8
/* 31C9AC 802BE98C C7AA002C */ lwc1 $f10, 0x2c($sp)
/* 31C9B0 802BE990 460A003C */ c.lt.s $f0, $f10
/* 31C9B4 802BE994 00000000 */ nop
/* 31C9B8 802BE998 45030017 */ bc1tl .L802BE9F8
/* 31C9BC 802BE99C 0000102D */ daddu $v0, $zero, $zero
/* 31C9C0 802BE9A0 461AD002 */ mul.s $f0, $f26, $f26
/* 31C9C4 802BE9A4 00000000 */ nop
/* 31C9C8 802BE9A8 461CE082 */ mul.s $f2, $f28, $f28
/* 31C9CC 802BE9AC 00000000 */ nop
/* 31C9D0 802BE9B0 4616F581 */ sub.s $f22, $f30, $f22
/* 31C9D4 802BE9B4 4616B182 */ mul.s $f6, $f22, $f22
/* 31C9D8 802BE9B8 00000000 */ nop
/* 31C9DC 802BE9BC C7A80030 */ lwc1 $f8, 0x30($sp)
/* 31C9E0 802BE9C0 46184601 */ sub.s $f24, $f8, $f24
/* 31C9E4 802BE9C4 4618C102 */ mul.s $f4, $f24, $f24
/* 31C9E8 802BE9C8 00000000 */ nop
/* 31C9EC 802BE9CC 46020000 */ add.s $f0, $f0, $f2
/* 31C9F0 802BE9D0 46043180 */ add.s $f6, $f6, $f4
/* 31C9F4 802BE9D4 4606003E */ c.le.s $f0, $f6
/* 31C9F8 802BE9D8 00000000 */ nop
/* 31C9FC 802BE9DC 45030006 */ bc1tl .L802BE9F8
/* 31CA00 802BE9E0 0000102D */ daddu $v0, $zero, $zero
/* 31CA04 802BE9E4 24020002 */ addiu $v0, $zero, 2
/* 31CA08 802BE9E8 AE220000 */ sw $v0, ($s1)
/* 31CA0C 802BE9EC 080AFA7E */ j .L802BE9F8
/* 31CA10 802BE9F0 24020001 */ addiu $v0, $zero, 1
.L802BE9F4:
/* 31CA14 802BE9F4 0000102D */ daddu $v0, $zero, $zero
.L802BE9F8:
/* 31CA18 802BE9F8 8FBF0048 */ lw $ra, 0x48($sp)
/* 31CA1C 802BE9FC 8FB10044 */ lw $s1, 0x44($sp)
/* 31CA20 802BEA00 8FB00040 */ lw $s0, 0x40($sp)
/* 31CA24 802BEA04 D7BE0078 */ ldc1 $f30, 0x78($sp)
/* 31CA28 802BEA08 D7BC0070 */ ldc1 $f28, 0x70($sp)
/* 31CA2C 802BEA0C D7BA0068 */ ldc1 $f26, 0x68($sp)
/* 31CA30 802BEA10 D7B80060 */ ldc1 $f24, 0x60($sp)
/* 31CA34 802BEA14 D7B60058 */ ldc1 $f22, 0x58($sp)
/* 31CA38 802BEA18 D7B40050 */ ldc1 $f20, 0x50($sp)
/* 31CA3C 802BEA1C 03E00008 */ jr $ra
/* 31CA40 802BEA20 27BD0080 */ addiu $sp, $sp, 0x80

View File

@ -0,0 +1,66 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BEA24
/* 31CA44 802BEA24 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 31CA48 802BEA28 AFB10014 */ sw $s1, 0x14($sp)
/* 31CA4C 802BEA2C 0080882D */ daddu $s1, $a0, $zero
/* 31CA50 802BEA30 3C04802C */ lui $a0, 0x802c
/* 31CA54 802BEA34 2484EC54 */ addiu $a0, $a0, -0x13ac
/* 31CA58 802BEA38 AFB20018 */ sw $s2, 0x18($sp)
/* 31CA5C 802BEA3C 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 31CA60 802BEA40 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 31CA64 802BEA44 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 31CA68 802BEA48 2442EBB0 */ addiu $v0, $v0, %lo(D_8010EBB0)
/* 31CA6C 802BEA4C AFBF0020 */ sw $ra, 0x20($sp)
/* 31CA70 802BEA50 AFB3001C */ sw $s3, 0x1c($sp)
/* 31CA74 802BEA54 AFB00010 */ sw $s0, 0x10($sp)
/* 31CA78 802BEA58 AC800000 */ sw $zero, ($a0)
/* 31CA7C 802BEA5C 80430000 */ lb $v1, ($v0)
/* 31CA80 802BEA60 10600024 */ beqz $v1, .L802BEAF4
/* 31CA84 802BEA64 0040982D */ daddu $s3, $v0, $zero
/* 31CA88 802BEA68 24020002 */ addiu $v0, $zero, 2
/* 31CA8C 802BEA6C 14620002 */ bne $v1, $v0, .L802BEA78
/* 31CA90 802BEA70 24020001 */ addiu $v0, $zero, 1
/* 31CA94 802BEA74 AC820000 */ sw $v0, ($a0)
.L802BEA78:
/* 31CA98 802BEA78 3C10802C */ lui $s0, 0x802c
/* 31CA9C 802BEA7C 2610EC64 */ addiu $s0, $s0, -0x139c
/* 31CAA0 802BEA80 8E020000 */ lw $v0, ($s0)
/* 31CAA4 802BEA84 50400005 */ beql $v0, $zero, .L802BEA9C
/* 31CAA8 802BEA88 24040284 */ addiu $a0, $zero, 0x284
/* 31CAAC 802BEA8C 0C038069 */ jal enable_player_input
/* 31CAB0 802BEA90 00000000 */ nop
/* 31CAB4 802BEA94 AE000000 */ sw $zero, ($s0)
/* 31CAB8 802BEA98 24040284 */ addiu $a0, $zero, 0x284
.L802BEA9C:
/* 31CABC 802BEA9C 8E420000 */ lw $v0, ($s2)
/* 31CAC0 802BEAA0 2403FFFD */ addiu $v1, $zero, -3
/* 31CAC4 802BEAA4 3C01802C */ lui $at, 0x802c
/* 31CAC8 802BEAA8 AC20EB40 */ sw $zero, -0x14c0($at)
/* 31CACC 802BEAAC 00431024 */ and $v0, $v0, $v1
/* 31CAD0 802BEAB0 AE420000 */ sw $v0, ($s2)
/* 31CAD4 802BEAB4 8E220000 */ lw $v0, ($s1)
/* 31CAD8 802BEAB8 2403F7FF */ addiu $v1, $zero, -0x801
/* 31CADC 802BEABC AE20001C */ sw $zero, 0x1c($s1)
/* 31CAE0 802BEAC0 00431024 */ and $v0, $v0, $v1
/* 31CAE4 802BEAC4 2403FFBF */ addiu $v1, $zero, -0x41
/* 31CAE8 802BEAC8 00431024 */ and $v0, $v0, $v1
/* 31CAEC 802BEACC 0C05271B */ jal stop_sound
/* 31CAF0 802BEAD0 AE220000 */ sw $v0, ($s1)
/* 31CAF4 802BEAD4 0C039769 */ jal set_action_state
/* 31CAF8 802BEAD8 0000202D */ daddu $a0, $zero, $zero
/* 31CAFC 802BEADC 0C03BD17 */ jal clear_partner_move_history
/* 31CB00 802BEAE0 0220202D */ daddu $a0, $s1, $zero
/* 31CB04 802BEAE4 0C00EB6B */ jal disable_npc_blur
/* 31CB08 802BEAE8 0220202D */ daddu $a0, $s1, $zero
/* 31CB0C 802BEAEC A2600003 */ sb $zero, 3($s3)
/* 31CB10 802BEAF0 A2600000 */ sb $zero, ($s3)
.L802BEAF4:
/* 31CB14 802BEAF4 8FBF0020 */ lw $ra, 0x20($sp)
/* 31CB18 802BEAF8 8FB3001C */ lw $s3, 0x1c($sp)
/* 31CB1C 802BEAFC 8FB20018 */ lw $s2, 0x18($sp)
/* 31CB20 802BEB00 8FB10014 */ lw $s1, 0x14($sp)
/* 31CB24 802BEB04 8FB00010 */ lw $s0, 0x10($sp)
/* 31CB28 802BEB08 03E00008 */ jr $ra
/* 31CB2C 802BEB0C 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -0,0 +1,17 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BEB10
/* 31CB30 802BEB10 3C02802C */ lui $v0, 0x802c
/* 31CB34 802BEB14 8C42EC54 */ lw $v0, -0x13ac($v0)
/* 31CB38 802BEB18 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31CB3C 802BEB1C 10400005 */ beqz $v0, .L802BEB34
/* 31CB40 802BEB20 AFBF0010 */ sw $ra, 0x10($sp)
/* 31CB44 802BEB24 0C03BD17 */ jal clear_partner_move_history
/* 31CB48 802BEB28 00000000 */ nop
/* 31CB4C 802BEB2C 0C03ACC5 */ jal partner_use_ability
/* 31CB50 802BEB30 00000000 */ nop
.L802BEB34:
/* 31CB54 802BEB34 8FBF0010 */ lw $ra, 0x10($sp)
/* 31CB58 802BEB38 03E00008 */ jr $ra
/* 31CB5C 802BEB3C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,37 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_31CC70
/* 31CC70 802BD100 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 31CC74 802BD104 AFBF0024 */ sw $ra, 0x24($sp)
/* 31CC78 802BD108 AFB00020 */ sw $s0, 0x20($sp)
/* 31CC7C 802BD10C 8C820000 */ lw $v0, ($a0)
/* 31CC80 802BD110 30420002 */ andi $v0, $v0, 2
/* 31CC84 802BD114 14400016 */ bnez $v0, .L802BD170
/* 31CC88 802BD118 00000000 */ nop
/* 31CC8C 802BD11C 3C10802C */ lui $s0, 0x802c
/* 31CC90 802BD120 2610E310 */ addiu $s0, $s0, -0x1cf0
/* 31CC94 802BD124 8E020000 */ lw $v0, ($s0)
/* 31CC98 802BD128 14400011 */ bnez $v0, .L802BD170
/* 31CC9C 802BD12C 24020005 */ addiu $v0, $zero, 5
/* 31CCA0 802BD130 C484003C */ lwc1 $f4, 0x3c($a0)
/* 31CCA4 802BD134 3C014150 */ lui $at, 0x4150
/* 31CCA8 802BD138 44811000 */ mtc1 $at, $f2
/* 31CCAC 802BD13C 3C013F66 */ lui $at, 0x3f66
/* 31CCB0 802BD140 34216666 */ ori $at, $at, 0x6666
/* 31CCB4 802BD144 44810000 */ mtc1 $at, $f0
/* 31CCB8 802BD148 AFA20014 */ sw $v0, 0x14($sp)
/* 31CCBC 802BD14C AFA00018 */ sw $zero, 0x18($sp)
/* 31CCC0 802BD150 46022100 */ add.s $f4, $f4, $f2
/* 31CCC4 802BD154 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31CCC8 802BD158 8C850038 */ lw $a1, 0x38($a0)
/* 31CCCC 802BD15C 8C870040 */ lw $a3, 0x40($a0)
/* 31CCD0 802BD160 44062000 */ mfc1 $a2, $f4
/* 31CCD4 802BD164 0C01C8EC */ jal func_800723B0
/* 31CCD8 802BD168 0000202D */ daddu $a0, $zero, $zero
/* 31CCDC 802BD16C AE020000 */ sw $v0, ($s0)
.L802BD170:
/* 31CCE0 802BD170 8FBF0024 */ lw $ra, 0x24($sp)
/* 31CCE4 802BD174 8FB00020 */ lw $s0, 0x20($sp)
/* 31CCE8 802BD178 03E00008 */ jr $ra
/* 31CCEC 802BD17C 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -0,0 +1,16 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD180_31CC70
/* 31CCF0 802BD180 3C03802C */ lui $v1, 0x802c
/* 31CCF4 802BD184 2463E310 */ addiu $v1, $v1, -0x1cf0
/* 31CCF8 802BD188 8C620000 */ lw $v0, ($v1)
/* 31CCFC 802BD18C 10400005 */ beqz $v0, .L802BD1A4
/* 31CD00 802BD190 00000000 */ nop
/* 31CD04 802BD194 AC600000 */ sw $zero, ($v1)
/* 31CD08 802BD198 8C43000C */ lw $v1, 0xc($v0)
/* 31CD0C 802BD19C 24020001 */ addiu $v0, $zero, 1
/* 31CD10 802BD1A0 AC620028 */ sw $v0, 0x28($v1)
.L802BD1A4:
/* 31CD14 802BD1A4 03E00008 */ jr $ra
/* 31CD18 802BD1A8 00000000 */ nop

View File

@ -0,0 +1,42 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD1AC
/* 31CD1C 802BD1AC 3C02802C */ lui $v0, 0x802c
/* 31CD20 802BD1B0 8C42E310 */ lw $v0, -0x1cf0($v0)
/* 31CD24 802BD1B4 3C013F00 */ lui $at, 0x3f00
/* 31CD28 802BD1B8 44810000 */ mtc1 $at, $f0
/* 31CD2C 802BD1BC 8C45000C */ lw $a1, 0xc($v0)
/* 31CD30 802BD1C0 24030001 */ addiu $v1, $zero, 1
/* 31CD34 802BD1C4 ACA40000 */ sw $a0, ($a1)
/* 31CD38 802BD1C8 00042080 */ sll $a0, $a0, 2
/* 31CD3C 802BD1CC 3C01802C */ lui $at, 0x802c
/* 31CD40 802BD1D0 00240821 */ addu $at, $at, $a0
/* 31CD44 802BD1D4 C422E250 */ lwc1 $f2, -0x1db0($at)
/* 31CD48 802BD1D8 468010A0 */ cvt.s.w $f2, $f2
/* 31CD4C 802BD1DC 8C420008 */ lw $v0, 8($v0)
/* 31CD50 802BD1E0 46001082 */ mul.s $f2, $f2, $f0
/* 31CD54 802BD1E4 00000000 */ nop
/* 31CD58 802BD1E8 2444FFFF */ addiu $a0, $v0, -1
/* 31CD5C 802BD1EC 0064102A */ slt $v0, $v1, $a0
/* 31CD60 802BD1F0 10400010 */ beqz $v0, .L802BD234
/* 31CD64 802BD1F4 24A50038 */ addiu $a1, $a1, 0x38
/* 31CD68 802BD1F8 3C01BF80 */ lui $at, 0xbf80
/* 31CD6C 802BD1FC 44812000 */ mtc1 $at, $f4
.L802BD200:
/* 31CD70 802BD200 30620001 */ andi $v0, $v1, 1
/* 31CD74 802BD204 44820000 */ mtc1 $v0, $f0
/* 31CD78 802BD208 00000000 */ nop
/* 31CD7C 802BD20C 46800020 */ cvt.s.w $f0, $f0
/* 31CD80 802BD210 46001002 */ mul.s $f0, $f2, $f0
/* 31CD84 802BD214 00000000 */ nop
/* 31CD88 802BD218 46002001 */ sub.s $f0, $f4, $f0
/* 31CD8C 802BD21C 24630001 */ addiu $v1, $v1, 1
/* 31CD90 802BD220 0064102A */ slt $v0, $v1, $a0
/* 31CD94 802BD224 4600018D */ trunc.w.s $f6, $f0
/* 31CD98 802BD228 E4A60020 */ swc1 $f6, 0x20($a1)
/* 31CD9C 802BD22C 1440FFF4 */ bnez $v0, .L802BD200
/* 31CDA0 802BD230 24A50038 */ addiu $a1, $a1, 0x38
.L802BD234:
/* 31CDA4 802BD234 03E00008 */ jr $ra
/* 31CDA8 802BD238 00000000 */ nop

View File

@ -0,0 +1,20 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD23C
/* 31CDAC 802BD23C 24020018 */ addiu $v0, $zero, 0x18
/* 31CDB0 802BD240 A48200A8 */ sh $v0, 0xa8($a0)
/* 31CDB4 802BD244 A48200A6 */ sh $v0, 0xa6($a0)
/* 31CDB8 802BD248 24020014 */ addiu $v0, $zero, 0x14
/* 31CDBC 802BD24C 3C01802C */ lui $at, 0x802c
/* 31CDC0 802BD250 AC20E308 */ sw $zero, -0x1cf8($at)
/* 31CDC4 802BD254 3C01802C */ lui $at, 0x802c
/* 31CDC8 802BD258 AC20E300 */ sw $zero, -0x1d00($at)
/* 31CDCC 802BD25C 3C01802C */ lui $at, 0x802c
/* 31CDD0 802BD260 AC20E30C */ sw $zero, -0x1cf4($at)
/* 31CDD4 802BD264 3C01802C */ lui $at, 0x802c
/* 31CDD8 802BD268 AC22E304 */ sw $v0, -0x1cfc($at)
/* 31CDDC 802BD26C 3C01802C */ lui $at, 0x802c
/* 31CDE0 802BD270 AC20E310 */ sw $zero, -0x1cf0($at)
/* 31CDE4 802BD274 03E00008 */ jr $ra
/* 31CDE8 802BD278 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD27C
/* 31CDEC 802BD27C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31CDF0 802BD280 AFBF0014 */ sw $ra, 0x14($sp)
/* 31CDF4 802BD284 AFB00010 */ sw $s0, 0x10($sp)
/* 31CDF8 802BD288 10A00003 */ beqz $a1, .L802BD298
/* 31CDFC 802BD28C 8C90014C */ lw $s0, 0x14c($a0)
/* 31CE00 802BD290 0C03BB31 */ jal func_800EECC4
/* 31CE04 802BD294 0200202D */ daddu $a0, $s0, $zero
.L802BD298:
/* 31CE08 802BD298 0C03BB3A */ jal func_800EECE8
/* 31CE0C 802BD29C 0200202D */ daddu $a0, $s0, $zero
/* 31CE10 802BD2A0 8FBF0014 */ lw $ra, 0x14($sp)
/* 31CE14 802BD2A4 8FB00010 */ lw $s0, 0x10($sp)
/* 31CE18 802BD2A8 0002102B */ sltu $v0, $zero, $v0
/* 31CE1C 802BD2AC 03E00008 */ jr $ra
/* 31CE20 802BD2B0 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,299 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD2B4
/* 31CE24 802BD2B4 3C028011 */ lui $v0, 0x8011
/* 31CE28 802BD2B8 8042EBB1 */ lb $v0, -0x144f($v0)
/* 31CE2C 802BD2BC 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31CE30 802BD2C0 AFB00018 */ sw $s0, 0x18($sp)
/* 31CE34 802BD2C4 3C108011 */ lui $s0, %hi(gPlayerData)
/* 31CE38 802BD2C8 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 31CE3C 802BD2CC AFBF0028 */ sw $ra, 0x28($sp)
/* 31CE40 802BD2D0 AFB30024 */ sw $s3, 0x24($sp)
/* 31CE44 802BD2D4 AFB20020 */ sw $s2, 0x20($sp)
/* 31CE48 802BD2D8 AFB1001C */ sw $s1, 0x1c($sp)
/* 31CE4C 802BD2DC F7B40030 */ sdc1 $f20, 0x30($sp)
/* 31CE50 802BD2E0 8C91014C */ lw $s1, 0x14c($a0)
/* 31CE54 802BD2E4 14400102 */ bnez $v0, .L802BD6F0
/* 31CE58 802BD2E8 0000102D */ daddu $v0, $zero, $zero
/* 31CE5C 802BD2EC 10A00009 */ beqz $a1, .L802BD314
/* 31CE60 802BD2F0 0220202D */ daddu $a0, $s1, $zero
/* 31CE64 802BD2F4 0C03B4C4 */ jal enable_partner_flying
/* 31CE68 802BD2F8 24050001 */ addiu $a1, $zero, 1
/* 31CE6C 802BD2FC 3C04802C */ lui $a0, 0x802c
/* 31CE70 802BD300 8C84E274 */ lw $a0, -0x1d8c($a0)
/* 31CE74 802BD304 0C00A580 */ jal mem_clear
/* 31CE78 802BD308 2405001C */ addiu $a1, $zero, 0x1c
/* 31CE7C 802BD30C 3C018011 */ lui $at, 0x8011
/* 31CE80 802BD310 AC20C954 */ sw $zero, -0x36ac($at)
.L802BD314:
/* 31CE84 802BD314 3C138011 */ lui $s3, 0x8011
/* 31CE88 802BD318 2673C954 */ addiu $s3, $s3, -0x36ac
/* 31CE8C 802BD31C 8E02030C */ lw $v0, 0x30c($s0)
/* 31CE90 802BD320 8E720000 */ lw $s2, ($s3)
/* 31CE94 802BD324 24420001 */ addiu $v0, $v0, 1
/* 31CE98 802BD328 16400026 */ bnez $s2, .L802BD3C4
/* 31CE9C 802BD32C AE02030C */ sw $v0, 0x30c($s0)
/* 31CEA0 802BD330 0C0AF440 */ jal func_802BD100_31CC70
/* 31CEA4 802BD334 0220202D */ daddu $a0, $s1, $zero
/* 31CEA8 802BD338 0C03B52E */ jal update_player_move_history
/* 31CEAC 802BD33C 0220202D */ daddu $a0, $s1, $zero
/* 31CEB0 802BD340 0C03B574 */ jal func_800ED5D0
/* 31CEB4 802BD344 0220202D */ daddu $a0, $s1, $zero
/* 31CEB8 802BD348 C6220018 */ lwc1 $f2, 0x18($s1)
/* 31CEBC 802BD34C 44800000 */ mtc1 $zero, $f0
/* 31CEC0 802BD350 00000000 */ nop
/* 31CEC4 802BD354 46001032 */ c.eq.s $f2, $f0
/* 31CEC8 802BD358 00000000 */ nop
/* 31CECC 802BD35C 4501000D */ bc1t .L802BD394
/* 31CED0 802BD360 00000000 */ nop
/* 31CED4 802BD364 3C03802C */ lui $v1, 0x802c
/* 31CED8 802BD368 2463E278 */ addiu $v1, $v1, -0x1d88
/* 31CEDC 802BD36C 8C620000 */ lw $v0, ($v1)
/* 31CEE0 802BD370 144000CE */ bnez $v0, .L802BD6AC
/* 31CEE4 802BD374 00000000 */ nop
/* 31CEE8 802BD378 24040001 */ addiu $a0, $zero, 1
/* 31CEEC 802BD37C 0080102D */ daddu $v0, $a0, $zero
/* 31CEF0 802BD380 0C0AF46B */ jal func_802BD1AC
/* 31CEF4 802BD384 AC620000 */ sw $v0, ($v1)
/* 31CEF8 802BD388 3C020006 */ lui $v0, 6
/* 31CEFC 802BD38C 080AF4EF */ j .L802BD3BC
/* 31CF00 802BD390 34420003 */ ori $v0, $v0, 3
.L802BD394:
/* 31CF04 802BD394 3C03802C */ lui $v1, 0x802c
/* 31CF08 802BD398 2463E278 */ addiu $v1, $v1, -0x1d88
/* 31CF0C 802BD39C 8C620000 */ lw $v0, ($v1)
/* 31CF10 802BD3A0 104000C2 */ beqz $v0, .L802BD6AC
/* 31CF14 802BD3A4 00000000 */ nop
/* 31CF18 802BD3A8 0000202D */ daddu $a0, $zero, $zero
/* 31CF1C 802BD3AC 0C0AF46B */ jal func_802BD1AC
/* 31CF20 802BD3B0 AC600000 */ sw $zero, ($v1)
/* 31CF24 802BD3B4 3C020006 */ lui $v0, 6
/* 31CF28 802BD3B8 34420001 */ ori $v0, $v0, 1
.L802BD3BC:
/* 31CF2C 802BD3BC 080AF5AB */ j .L802BD6AC
/* 31CF30 802BD3C0 AE220028 */ sw $v0, 0x28($s1)
.L802BD3C4:
/* 31CF34 802BD3C4 3C10802C */ lui $s0, 0x802c
/* 31CF38 802BD3C8 2610E274 */ addiu $s0, $s0, -0x1d8c
/* 31CF3C 802BD3CC 8E040000 */ lw $a0, ($s0)
/* 31CF40 802BD3D0 8C830004 */ lw $v1, 4($a0)
/* 31CF44 802BD3D4 24050001 */ addiu $a1, $zero, 1
/* 31CF48 802BD3D8 1065002F */ beq $v1, $a1, .L802BD498
/* 31CF4C 802BD3DC 28620002 */ slti $v0, $v1, 2
/* 31CF50 802BD3E0 50400005 */ beql $v0, $zero, .L802BD3F8
/* 31CF54 802BD3E4 24020002 */ addiu $v0, $zero, 2
/* 31CF58 802BD3E8 50600009 */ beql $v1, $zero, .L802BD410
/* 31CF5C 802BD3EC AC850004 */ sw $a1, 4($a0)
/* 31CF60 802BD3F0 080AF5AB */ j .L802BD6AC
/* 31CF64 802BD3F4 00000000 */ nop
.L802BD3F8:
/* 31CF68 802BD3F8 10620099 */ beq $v1, $v0, .L802BD660
/* 31CF6C 802BD3FC 24020003 */ addiu $v0, $zero, 3
/* 31CF70 802BD400 1062009F */ beq $v1, $v0, .L802BD680
/* 31CF74 802BD404 00000000 */ nop
/* 31CF78 802BD408 080AF5AB */ j .L802BD6AC
/* 31CF7C 802BD40C 00000000 */ nop
.L802BD410:
/* 31CF80 802BD410 8E220000 */ lw $v0, ($s1)
/* 31CF84 802BD414 AC820008 */ sw $v0, 8($a0)
/* 31CF88 802BD418 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 31CF8C 802BD41C C62E0040 */ lwc1 $f14, 0x40($s1)
/* 31CF90 802BD420 8E460048 */ lw $a2, 0x48($s2)
/* 31CF94 802BD424 0C00A7B5 */ jal dist2D
/* 31CF98 802BD428 8E470050 */ lw $a3, 0x50($s2)
/* 31CF9C 802BD42C 8E020000 */ lw $v0, ($s0)
/* 31CFA0 802BD430 46000005 */ abs.s $f0, $f0
/* 31CFA4 802BD434 E440000C */ swc1 $f0, 0xc($v0)
/* 31CFA8 802BD438 C64C0048 */ lwc1 $f12, 0x48($s2)
/* 31CFAC 802BD43C C64E0050 */ lwc1 $f14, 0x50($s2)
/* 31CFB0 802BD440 8E260038 */ lw $a2, 0x38($s1)
/* 31CFB4 802BD444 0C00A720 */ jal atan2
/* 31CFB8 802BD448 8E270040 */ lw $a3, 0x40($s1)
/* 31CFBC 802BD44C 3C040004 */ lui $a0, 4
/* 31CFC0 802BD450 24020078 */ addiu $v0, $zero, 0x78
/* 31CFC4 802BD454 8E030000 */ lw $v1, ($s0)
/* 31CFC8 802BD458 3C0140C0 */ lui $at, 0x40c0
/* 31CFCC 802BD45C 44811000 */ mtc1 $at, $f2
/* 31CFD0 802BD460 3C014248 */ lui $at, 0x4248
/* 31CFD4 802BD464 44812000 */ mtc1 $at, $f4
/* 31CFD8 802BD468 34840148 */ ori $a0, $a0, 0x148
/* 31CFDC 802BD46C E4600010 */ swc1 $f0, 0x10($v1)
/* 31CFE0 802BD470 E4620014 */ swc1 $f2, 0x14($v1)
/* 31CFE4 802BD474 E4640018 */ swc1 $f4, 0x18($v1)
/* 31CFE8 802BD478 AC620000 */ sw $v0, ($v1)
/* 31CFEC 802BD47C 8E220000 */ lw $v0, ($s1)
/* 31CFF0 802BD480 2403FDFF */ addiu $v1, $zero, -0x201
/* 31CFF4 802BD484 00441025 */ or $v0, $v0, $a0
/* 31CFF8 802BD488 00431024 */ and $v0, $v0, $v1
/* 31CFFC 802BD48C AE220000 */ sw $v0, ($s1)
/* 31D000 802BD490 3C10802C */ lui $s0, 0x802c
/* 31D004 802BD494 2610E274 */ addiu $s0, $s0, -0x1d8c
.L802BD498:
/* 31D008 802BD498 8E020000 */ lw $v0, ($s0)
/* 31D00C 802BD49C 3C0140C9 */ lui $at, 0x40c9
/* 31D010 802BD4A0 34210FD0 */ ori $at, $at, 0xfd0
/* 31D014 802BD4A4 44810000 */ mtc1 $at, $f0
/* 31D018 802BD4A8 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 31D01C 802BD4AC 46006302 */ mul.s $f12, $f12, $f0
/* 31D020 802BD4B0 00000000 */ nop
/* 31D024 802BD4B4 27A50010 */ addiu $a1, $sp, 0x10
/* 31D028 802BD4B8 3C0143B4 */ lui $at, 0x43b4
/* 31D02C 802BD4BC 44810000 */ mtc1 $at, $f0
/* 31D030 802BD4C0 27A60014 */ addiu $a2, $sp, 0x14
/* 31D034 802BD4C4 0C00A82D */ jal sin_cos_rad
/* 31D038 802BD4C8 46006303 */ div.s $f12, $f12, $f0
/* 31D03C 802BD4CC 8E020000 */ lw $v0, ($s0)
/* 31D040 802BD4D0 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 31D044 802BD4D4 C440000C */ lwc1 $f0, 0xc($v0)
/* 31D048 802BD4D8 46001082 */ mul.s $f2, $f2, $f0
/* 31D04C 802BD4DC 00000000 */ nop
/* 31D050 802BD4E0 C6400048 */ lwc1 $f0, 0x48($s2)
/* 31D054 802BD4E4 46020000 */ add.s $f0, $f0, $f2
/* 31D058 802BD4E8 E6200038 */ swc1 $f0, 0x38($s1)
/* 31D05C 802BD4EC C7A20014 */ lwc1 $f2, 0x14($sp)
/* 31D060 802BD4F0 C440000C */ lwc1 $f0, 0xc($v0)
/* 31D064 802BD4F4 46001082 */ mul.s $f2, $f2, $f0
/* 31D068 802BD4F8 00000000 */ nop
/* 31D06C 802BD4FC C6400050 */ lwc1 $f0, 0x50($s2)
/* 31D070 802BD500 46020001 */ sub.s $f0, $f0, $f2
/* 31D074 802BD504 E6200040 */ swc1 $f0, 0x40($s1)
/* 31D078 802BD508 C4400010 */ lwc1 $f0, 0x10($v0)
/* 31D07C 802BD50C C44C0014 */ lwc1 $f12, 0x14($v0)
/* 31D080 802BD510 0C00A6C9 */ jal clamp_angle
/* 31D084 802BD514 460C0301 */ sub.s $f12, $f0, $f12
/* 31D088 802BD518 8E100000 */ lw $s0, ($s0)
/* 31D08C 802BD51C 3C0141A0 */ lui $at, 0x41a0
/* 31D090 802BD520 44811000 */ mtc1 $at, $f2
/* 31D094 802BD524 C604000C */ lwc1 $f4, 0xc($s0)
/* 31D098 802BD528 4604103C */ c.lt.s $f2, $f4
/* 31D09C 802BD52C 00000000 */ nop
/* 31D0A0 802BD530 45000005 */ bc1f .L802BD548
/* 31D0A4 802BD534 E6000010 */ swc1 $f0, 0x10($s0)
/* 31D0A8 802BD538 3C013F80 */ lui $at, 0x3f80
/* 31D0AC 802BD53C 44810000 */ mtc1 $at, $f0
/* 31D0B0 802BD540 080AF55D */ j .L802BD574
/* 31D0B4 802BD544 46002001 */ sub.s $f0, $f4, $f0
.L802BD548:
/* 31D0B8 802BD548 3C014198 */ lui $at, 0x4198
/* 31D0BC 802BD54C 44810000 */ mtc1 $at, $f0
/* 31D0C0 802BD550 00000000 */ nop
/* 31D0C4 802BD554 4600203C */ c.lt.s $f4, $f0
/* 31D0C8 802BD558 00000000 */ nop
/* 31D0CC 802BD55C 45000006 */ bc1f .L802BD578
/* 31D0D0 802BD560 00000000 */ nop
/* 31D0D4 802BD564 3C013F80 */ lui $at, 0x3f80
/* 31D0D8 802BD568 44810000 */ mtc1 $at, $f0
/* 31D0DC 802BD56C 00000000 */ nop
/* 31D0E0 802BD570 46002000 */ add.s $f0, $f4, $f0
.L802BD574:
/* 31D0E4 802BD574 E600000C */ swc1 $f0, 0xc($s0)
.L802BD578:
/* 31D0E8 802BD578 3C10802C */ lui $s0, 0x802c
/* 31D0EC 802BD57C 2610E274 */ addiu $s0, $s0, -0x1d8c
/* 31D0F0 802BD580 8E020000 */ lw $v0, ($s0)
/* 31D0F4 802BD584 3C0140C9 */ lui $at, 0x40c9
/* 31D0F8 802BD588 34210FD0 */ ori $at, $at, 0xfd0
/* 31D0FC 802BD58C 44810000 */ mtc1 $at, $f0
/* 31D100 802BD590 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 31D104 802BD594 46006302 */ mul.s $f12, $f12, $f0
/* 31D108 802BD598 00000000 */ nop
/* 31D10C 802BD59C 3C0143B4 */ lui $at, 0x43b4
/* 31D110 802BD5A0 4481A000 */ mtc1 $at, $f20
/* 31D114 802BD5A4 0C00A85B */ jal sin_rad
/* 31D118 802BD5A8 46146303 */ div.s $f12, $f12, $f20
/* 31D11C 802BD5AC 8E020000 */ lw $v0, ($s0)
/* 31D120 802BD5B0 3C014040 */ lui $at, 0x4040
/* 31D124 802BD5B4 44812000 */ mtc1 $at, $f4
/* 31D128 802BD5B8 C4420018 */ lwc1 $f2, 0x18($v0)
/* 31D12C 802BD5BC 46041080 */ add.s $f2, $f2, $f4
/* 31D130 802BD5C0 3C014316 */ lui $at, 0x4316
/* 31D134 802BD5C4 44813000 */ mtc1 $at, $f6
/* 31D138 802BD5C8 00000000 */ nop
/* 31D13C 802BD5CC 4602303C */ c.lt.s $f6, $f2
/* 31D140 802BD5D0 E4420018 */ swc1 $f2, 0x18($v0)
/* 31D144 802BD5D4 46040082 */ mul.s $f2, $f0, $f4
/* 31D148 802BD5D8 00000000 */ nop
/* 31D14C 802BD5DC 45030001 */ bc1tl .L802BD5E4
/* 31D150 802BD5E0 E4460018 */ swc1 $f6, 0x18($v0)
.L802BD5E4:
/* 31D154 802BD5E4 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31D158 802BD5E8 46020000 */ add.s $f0, $f0, $f2
/* 31D15C 802BD5EC 8E020000 */ lw $v0, ($s0)
/* 31D160 802BD5F0 E620003C */ swc1 $f0, 0x3c($s1)
/* 31D164 802BD5F4 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 31D168 802BD5F8 0C00A6C9 */ jal clamp_angle
/* 31D16C 802BD5FC 460CA301 */ sub.s $f12, $f20, $f12
/* 31D170 802BD600 8E020000 */ lw $v0, ($s0)
/* 31D174 802BD604 E6200034 */ swc1 $f0, 0x34($s1)
/* 31D178 802BD608 C4400014 */ lwc1 $f0, 0x14($v0)
/* 31D17C 802BD60C 3C01802C */ lui $at, 0x802c
/* 31D180 802BD610 D422E2F0 */ ldc1 $f2, -0x1d10($at)
/* 31D184 802BD614 46000021 */ cvt.d.s $f0, $f0
/* 31D188 802BD618 46220000 */ add.d $f0, $f0, $f2
/* 31D18C 802BD61C 3C014220 */ lui $at, 0x4220
/* 31D190 802BD620 44811000 */ mtc1 $at, $f2
/* 31D194 802BD624 46200020 */ cvt.s.d $f0, $f0
/* 31D198 802BD628 4600103C */ c.lt.s $f2, $f0
/* 31D19C 802BD62C 00000000 */ nop
/* 31D1A0 802BD630 45000002 */ bc1f .L802BD63C
/* 31D1A4 802BD634 E4400014 */ swc1 $f0, 0x14($v0)
/* 31D1A8 802BD638 E4420014 */ swc1 $f2, 0x14($v0)
.L802BD63C:
/* 31D1AC 802BD63C 8E030000 */ lw $v1, ($s0)
/* 31D1B0 802BD640 8C620000 */ lw $v0, ($v1)
/* 31D1B4 802BD644 2442FFFF */ addiu $v0, $v0, -1
/* 31D1B8 802BD648 14400018 */ bnez $v0, .L802BD6AC
/* 31D1BC 802BD64C AC620000 */ sw $v0, ($v1)
/* 31D1C0 802BD650 8C620004 */ lw $v0, 4($v1)
/* 31D1C4 802BD654 24420001 */ addiu $v0, $v0, 1
/* 31D1C8 802BD658 080AF5AB */ j .L802BD6AC
/* 31D1CC 802BD65C AC620004 */ sw $v0, 4($v1)
.L802BD660:
/* 31D1D0 802BD660 8C820008 */ lw $v0, 8($a0)
/* 31D1D4 802BD664 AE220000 */ sw $v0, ($s1)
/* 31D1D8 802BD668 8C820004 */ lw $v0, 4($a0)
/* 31D1DC 802BD66C 2403001E */ addiu $v1, $zero, 0x1e
/* 31D1E0 802BD670 AC830000 */ sw $v1, ($a0)
/* 31D1E4 802BD674 24420001 */ addiu $v0, $v0, 1
/* 31D1E8 802BD678 080AF5AB */ j .L802BD6AC
/* 31D1EC 802BD67C AC820004 */ sw $v0, 4($a0)
.L802BD680:
/* 31D1F0 802BD680 0C03B52E */ jal update_player_move_history
/* 31D1F4 802BD684 0220202D */ daddu $a0, $s1, $zero
/* 31D1F8 802BD688 0C03B574 */ jal func_800ED5D0
/* 31D1FC 802BD68C 0220202D */ daddu $a0, $s1, $zero
/* 31D200 802BD690 8E030000 */ lw $v1, ($s0)
/* 31D204 802BD694 8C620000 */ lw $v0, ($v1)
/* 31D208 802BD698 2442FFFF */ addiu $v0, $v0, -1
/* 31D20C 802BD69C 14400003 */ bnez $v0, .L802BD6AC
/* 31D210 802BD6A0 AC620000 */ sw $v0, ($v1)
/* 31D214 802BD6A4 AC600004 */ sw $zero, 4($v1)
/* 31D218 802BD6A8 AE600000 */ sw $zero, ($s3)
.L802BD6AC:
/* 31D21C 802BD6AC 3C03802C */ lui $v1, 0x802c
/* 31D220 802BD6B0 8C63E310 */ lw $v1, -0x1cf0($v1)
/* 31D224 802BD6B4 1060000E */ beqz $v1, .L802BD6F0
/* 31D228 802BD6B8 0000102D */ daddu $v0, $zero, $zero
/* 31D22C 802BD6BC 8C62000C */ lw $v0, 0xc($v1)
/* 31D230 802BD6C0 C6200038 */ lwc1 $f0, 0x38($s1)
/* 31D234 802BD6C4 3C014150 */ lui $at, 0x4150
/* 31D238 802BD6C8 44811000 */ mtc1 $at, $f2
/* 31D23C 802BD6CC E4400004 */ swc1 $f0, 4($v0)
/* 31D240 802BD6D0 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31D244 802BD6D4 46020000 */ add.s $f0, $f0, $f2
/* 31D248 802BD6D8 8C62000C */ lw $v0, 0xc($v1)
/* 31D24C 802BD6DC E4400008 */ swc1 $f0, 8($v0)
/* 31D250 802BD6E0 8C62000C */ lw $v0, 0xc($v1)
/* 31D254 802BD6E4 C6200040 */ lwc1 $f0, 0x40($s1)
/* 31D258 802BD6E8 E440000C */ swc1 $f0, 0xc($v0)
/* 31D25C 802BD6EC 0000102D */ daddu $v0, $zero, $zero
.L802BD6F0:
/* 31D260 802BD6F0 8FBF0028 */ lw $ra, 0x28($sp)
/* 31D264 802BD6F4 8FB30024 */ lw $s3, 0x24($sp)
/* 31D268 802BD6F8 8FB20020 */ lw $s2, 0x20($sp)
/* 31D26C 802BD6FC 8FB1001C */ lw $s1, 0x1c($sp)
/* 31D270 802BD700 8FB00018 */ lw $s0, 0x18($sp)
/* 31D274 802BD704 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 31D278 802BD708 03E00008 */ jr $ra
/* 31D27C 802BD70C 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD710
/* 31D280 802BD710 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31D284 802BD714 3C058011 */ lui $a1, 0x8011
/* 31D288 802BD718 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 31D28C 802BD71C AFBF0010 */ sw $ra, 0x10($sp)
/* 31D290 802BD720 8CA20000 */ lw $v0, ($a1)
/* 31D294 802BD724 10400008 */ beqz $v0, .L802BD748
/* 31D298 802BD728 00000000 */ nop
/* 31D29C 802BD72C 3C03802C */ lui $v1, 0x802c
/* 31D2A0 802BD730 8C63E274 */ lw $v1, -0x1d8c($v1)
/* 31D2A4 802BD734 8C620008 */ lw $v0, 8($v1)
/* 31D2A8 802BD738 ACA00000 */ sw $zero, ($a1)
/* 31D2AC 802BD73C AC820000 */ sw $v0, ($a0)
/* 31D2B0 802BD740 0C03BD17 */ jal clear_partner_move_history
/* 31D2B4 802BD744 AC600004 */ sw $zero, 4($v1)
.L802BD748:
/* 31D2B8 802BD748 8FBF0010 */ lw $ra, 0x10($sp)
/* 31D2BC 802BD74C 03E00008 */ jr $ra
/* 31D2C0 802BD750 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,391 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD754
/* 31D2C4 802BD754 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 31D2C8 802BD758 AFB3001C */ sw $s3, 0x1c($sp)
/* 31D2CC 802BD75C 0080982D */ daddu $s3, $a0, $zero
/* 31D2D0 802BD760 AFB20018 */ sw $s2, 0x18($sp)
/* 31D2D4 802BD764 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 31D2D8 802BD768 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 31D2DC 802BD76C AFB50024 */ sw $s5, 0x24($sp)
/* 31D2E0 802BD770 3C158011 */ lui $s5, %hi(D_8010EBB0)
/* 31D2E4 802BD774 26B5EBB0 */ addiu $s5, $s5, %lo(D_8010EBB0)
/* 31D2E8 802BD778 AFBF0028 */ sw $ra, 0x28($sp)
/* 31D2EC 802BD77C AFB40020 */ sw $s4, 0x20($sp)
/* 31D2F0 802BD780 AFB10014 */ sw $s1, 0x14($sp)
/* 31D2F4 802BD784 AFB00010 */ sw $s0, 0x10($sp)
/* 31D2F8 802BD788 10A0003B */ beqz $a1, .L802BD878
/* 31D2FC 802BD78C 8E71014C */ lw $s1, 0x14c($s3)
/* 31D300 802BD790 0C0AF5C4 */ jal func_802BD710
/* 31D304 802BD794 0220202D */ daddu $a0, $s1, $zero
/* 31D308 802BD798 8E430004 */ lw $v1, 4($s2)
/* 31D30C 802BD79C 3C020010 */ lui $v0, 0x10
/* 31D310 802BD7A0 00621024 */ and $v0, $v1, $v0
/* 31D314 802BD7A4 14400150 */ bnez $v0, .L802BDCE8
/* 31D318 802BD7A8 24020002 */ addiu $v0, $zero, 2
/* 31D31C 802BD7AC 82A20001 */ lb $v0, 1($s5)
/* 31D320 802BD7B0 14400026 */ bnez $v0, .L802BD84C
/* 31D324 802BD7B4 34620003 */ ori $v0, $v1, 3
/* 31D328 802BD7B8 82A20000 */ lb $v0, ($s5)
/* 31D32C 802BD7BC 14400009 */ bnez $v0, .L802BD7E4
/* 31D330 802BD7C0 00000000 */ nop
/* 31D334 802BD7C4 0C03A94B */ jal func_800EA52C
/* 31D338 802BD7C8 24040006 */ addiu $a0, $zero, 6
/* 31D33C 802BD7CC 10400146 */ beqz $v0, .L802BDCE8
/* 31D340 802BD7D0 24020002 */ addiu $v0, $zero, 2
/* 31D344 802BD7D4 0C011052 */ jal func_80044148
/* 31D348 802BD7D8 00000000 */ nop
/* 31D34C 802BD7DC 14400142 */ bnez $v0, .L802BDCE8
/* 31D350 802BD7E0 24020002 */ addiu $v0, $zero, 2
.L802BD7E4:
/* 31D354 802BD7E4 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 31D358 802BD7E8 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 31D35C 802BD7EC 8042007D */ lb $v0, 0x7d($v0)
/* 31D360 802BD7F0 10400009 */ beqz $v0, .L802BD818
/* 31D364 802BD7F4 00000000 */ nop
/* 31D368 802BD7F8 8E420004 */ lw $v0, 4($s2)
/* 31D36C 802BD7FC 30420003 */ andi $v0, $v0, 3
/* 31D370 802BD800 1040000D */ beqz $v0, .L802BD838
/* 31D374 802BD804 24020014 */ addiu $v0, $zero, 0x14
/* 31D378 802BD808 3C01802C */ lui $at, 0x802c
/* 31D37C 802BD80C AC22E304 */ sw $v0, -0x1cfc($at)
/* 31D380 802BD810 080AF61E */ j .L802BD878
/* 31D384 802BD814 00000000 */ nop
.L802BD818:
/* 31D388 802BD818 8E420004 */ lw $v0, 4($s2)
/* 31D38C 802BD81C 30420001 */ andi $v0, $v0, 1
/* 31D390 802BD820 10400005 */ beqz $v0, .L802BD838
/* 31D394 802BD824 24020002 */ addiu $v0, $zero, 2
/* 31D398 802BD828 3C01802C */ lui $at, 0x802c
/* 31D39C 802BD82C AC22E304 */ sw $v0, -0x1cfc($at)
/* 31D3A0 802BD830 080AF61E */ j .L802BD878
/* 31D3A4 802BD834 00000000 */ nop
.L802BD838:
/* 31D3A8 802BD838 24020028 */ addiu $v0, $zero, 0x28
/* 31D3AC 802BD83C 3C01802C */ lui $at, 0x802c
/* 31D3B0 802BD840 AC22E304 */ sw $v0, -0x1cfc($at)
/* 31D3B4 802BD844 080AF61E */ j .L802BD878
/* 31D3B8 802BD848 00000000 */ nop
.L802BD84C:
/* 31D3BC 802BD84C A2A00001 */ sb $zero, 1($s5)
/* 31D3C0 802BD850 0C0AF805 */ jal func_802BE014
/* 31D3C4 802BD854 AE420004 */ sw $v0, 4($s2)
/* 31D3C8 802BD858 3C020006 */ lui $v0, 6
/* 31D3CC 802BD85C 34420001 */ ori $v0, $v0, 1
/* 31D3D0 802BD860 AE220028 */ sw $v0, 0x28($s1)
/* 31D3D4 802BD864 24020001 */ addiu $v0, $zero, 1
/* 31D3D8 802BD868 3C01802C */ lui $at, 0x802c
/* 31D3DC 802BD86C AC22E304 */ sw $v0, -0x1cfc($at)
/* 31D3E0 802BD870 24020002 */ addiu $v0, $zero, 2
/* 31D3E4 802BD874 AE620074 */ sw $v0, 0x74($s3)
.L802BD878:
/* 31D3E8 802BD878 3C10802C */ lui $s0, 0x802c
/* 31D3EC 802BD87C 2610E304 */ addiu $s0, $s0, -0x1cfc
/* 31D3F0 802BD880 8E030000 */ lw $v1, ($s0)
/* 31D3F4 802BD884 24020028 */ addiu $v0, $zero, 0x28
/* 31D3F8 802BD888 10620005 */ beq $v1, $v0, .L802BD8A0
/* 31D3FC 802BD88C 24020029 */ addiu $v0, $zero, 0x29
/* 31D400 802BD890 1062000E */ beq $v1, $v0, .L802BD8CC
/* 31D404 802BD894 00000000 */ nop
/* 31D408 802BD898 080AF64C */ j .L802BD930
/* 31D40C 802BD89C 00000000 */ nop
.L802BD8A0:
/* 31D410 802BD8A0 82420015 */ lb $v0, 0x15($s2)
/* 31D414 802BD8A4 10400003 */ beqz $v0, .L802BD8B4
/* 31D418 802BD8A8 24020003 */ addiu $v0, $zero, 3
/* 31D41C 802BD8AC 080AF73A */ j .L802BDCE8
/* 31D420 802BD8B0 24020002 */ addiu $v0, $zero, 2
.L802BD8B4:
/* 31D424 802BD8B4 AE620074 */ sw $v0, 0x74($s3)
/* 31D428 802BD8B8 82430015 */ lb $v1, 0x15($s2)
/* 31D42C 802BD8BC 24020029 */ addiu $v0, $zero, 0x29
/* 31D430 802BD8C0 AE020000 */ sw $v0, ($s0)
/* 31D434 802BD8C4 080AF64C */ j .L802BD930
/* 31D438 802BD8C8 AE630078 */ sw $v1, 0x78($s3)
.L802BD8CC:
/* 31D43C 802BD8CC 8E620074 */ lw $v0, 0x74($s3)
/* 31D440 802BD8D0 14400016 */ bnez $v0, .L802BD92C
/* 31D444 802BD8D4 2442FFFF */ addiu $v0, $v0, -1
/* 31D448 802BD8D8 82430015 */ lb $v1, 0x15($s2)
/* 31D44C 802BD8DC 8E620078 */ lw $v0, 0x78($s3)
/* 31D450 802BD8E0 0043102A */ slt $v0, $v0, $v1
/* 31D454 802BD8E4 14400100 */ bnez $v0, .L802BDCE8
/* 31D458 802BD8E8 24020002 */ addiu $v0, $zero, 2
/* 31D45C 802BD8EC 8E420004 */ lw $v0, 4($s2)
/* 31D460 802BD8F0 3C030010 */ lui $v1, 0x10
/* 31D464 802BD8F4 00431024 */ and $v0, $v0, $v1
/* 31D468 802BD8F8 144000FB */ bnez $v0, .L802BDCE8
/* 31D46C 802BD8FC 24020002 */ addiu $v0, $zero, 2
/* 31D470 802BD900 0C03A94B */ jal func_800EA52C
/* 31D474 802BD904 24040006 */ addiu $a0, $zero, 6
/* 31D478 802BD908 104000F7 */ beqz $v0, .L802BDCE8
/* 31D47C 802BD90C 24020002 */ addiu $v0, $zero, 2
/* 31D480 802BD910 0C011052 */ jal func_80044148
/* 31D484 802BD914 00000000 */ nop
/* 31D488 802BD918 144000F3 */ bnez $v0, .L802BDCE8
/* 31D48C 802BD91C 24020002 */ addiu $v0, $zero, 2
/* 31D490 802BD920 24020014 */ addiu $v0, $zero, 0x14
/* 31D494 802BD924 080AF64C */ j .L802BD930
/* 31D498 802BD928 AE020000 */ sw $v0, ($s0)
.L802BD92C:
/* 31D49C 802BD92C AE620074 */ sw $v0, 0x74($s3)
.L802BD930:
/* 31D4A0 802BD930 3C14802C */ lui $s4, 0x802c
/* 31D4A4 802BD934 2694E304 */ addiu $s4, $s4, -0x1cfc
/* 31D4A8 802BD938 8E830000 */ lw $v1, ($s4)
/* 31D4AC 802BD93C 24020014 */ addiu $v0, $zero, 0x14
/* 31D4B0 802BD940 1062000C */ beq $v1, $v0, .L802BD974
/* 31D4B4 802BD944 28620015 */ slti $v0, $v1, 0x15
/* 31D4B8 802BD948 10400005 */ beqz $v0, .L802BD960
/* 31D4BC 802BD94C 24020001 */ addiu $v0, $zero, 1
/* 31D4C0 802BD950 10620099 */ beq $v1, $v0, .L802BDBB8
/* 31D4C4 802BD954 00000000 */ nop
/* 31D4C8 802BD958 080AF707 */ j .L802BDC1C
/* 31D4CC 802BD95C 00000000 */ nop
.L802BD960:
/* 31D4D0 802BD960 24020015 */ addiu $v0, $zero, 0x15
/* 31D4D4 802BD964 10620062 */ beq $v1, $v0, .L802BDAF0
/* 31D4D8 802BD968 00000000 */ nop
/* 31D4DC 802BD96C 080AF707 */ j .L802BDC1C
/* 31D4E0 802BD970 00000000 */ nop
.L802BD974:
/* 31D4E4 802BD974 3C058007 */ lui $a1, %hi(gGameStatusPtr)
/* 31D4E8 802BD978 8CA5419C */ lw $a1, %lo(gGameStatusPtr)($a1)
/* 31D4EC 802BD97C 80A2007D */ lb $v0, 0x7d($a1)
/* 31D4F0 802BD980 10400030 */ beqz $v0, .L802BDA44
/* 31D4F4 802BD984 24100001 */ addiu $s0, $zero, 1
/* 31D4F8 802BD988 8E420004 */ lw $v0, 4($s2)
/* 31D4FC 802BD98C 3C0140A0 */ lui $at, 0x40a0
/* 31D500 802BD990 44811000 */ mtc1 $at, $f2
/* 31D504 802BD994 34420001 */ ori $v0, $v0, 1
/* 31D508 802BD998 AE420004 */ sw $v0, 4($s2)
/* 31D50C 802BD99C 8E220000 */ lw $v0, ($s1)
/* 31D510 802BD9A0 2403F5FF */ addiu $v1, $zero, -0xa01
/* 31D514 802BD9A4 3C01802C */ lui $at, 0x802c
/* 31D518 802BD9A8 AC30E30C */ sw $s0, -0x1cf4($at)
/* 31D51C 802BD9AC 34420108 */ ori $v0, $v0, 0x108
/* 31D520 802BD9B0 00431024 */ and $v0, $v0, $v1
/* 31D524 802BD9B4 AE220000 */ sw $v0, ($s1)
/* 31D528 802BD9B8 A0A0007D */ sb $zero, 0x7d($a1)
/* 31D52C 802BD9BC A2B00000 */ sb $s0, ($s5)
/* 31D530 802BD9C0 C6400028 */ lwc1 $f0, 0x28($s2)
/* 31D534 802BD9C4 24020006 */ addiu $v0, $zero, 6
/* 31D538 802BD9C8 A2A20003 */ sb $v0, 3($s5)
/* 31D53C 802BD9CC E6200060 */ swc1 $f0, 0x60($s1)
/* 31D540 802BD9D0 C640002C */ lwc1 $f0, 0x2c($s2)
/* 31D544 802BD9D4 26240060 */ addiu $a0, $s1, 0x60
/* 31D548 802BD9D8 46020000 */ add.s $f0, $f0, $f2
/* 31D54C 802BD9DC 3C064170 */ lui $a2, 0x4170
/* 31D550 802BD9E0 3C020006 */ lui $v0, 6
/* 31D554 802BD9E4 E6200064 */ swc1 $f0, 0x64($s1)
/* 31D558 802BD9E8 C6400030 */ lwc1 $f0, 0x30($s2)
/* 31D55C 802BD9EC 34420002 */ ori $v0, $v0, 2
/* 31D560 802BD9F0 AE220028 */ sw $v0, 0x28($s1)
/* 31D564 802BD9F4 E6200068 */ swc1 $f0, 0x68($s1)
/* 31D568 802BD9F8 8E470080 */ lw $a3, 0x80($s2)
/* 31D56C 802BD9FC 0C00A7E7 */ jal add_vec2D_polar
/* 31D570 802BDA00 26250068 */ addiu $a1, $s1, 0x68
/* 31D574 802BDA04 3C020006 */ lui $v0, 6
/* 31D578 802BDA08 C6400080 */ lwc1 $f0, 0x80($s2)
/* 31D57C 802BDA0C 00501025 */ or $v0, $v0, $s0
/* 31D580 802BDA10 AE220028 */ sw $v0, 0x28($s1)
/* 31D584 802BDA14 E620000C */ swc1 $f0, 0xc($s1)
/* 31D588 802BDA18 8E420004 */ lw $v0, 4($s2)
/* 31D58C 802BDA1C 34420002 */ ori $v0, $v0, 2
/* 31D590 802BDA20 0C0AF805 */ jal func_802BE014
/* 31D594 802BDA24 AE420004 */ sw $v0, 4($s2)
/* 31D598 802BDA28 0220202D */ daddu $a0, $s1, $zero
/* 31D59C 802BDA2C 0C00ECF4 */ jal func_8003B3D0
/* 31D5A0 802BDA30 0200282D */ daddu $a1, $s0, $zero
/* 31D5A4 802BDA34 24020002 */ addiu $v0, $zero, 2
/* 31D5A8 802BDA38 AE620074 */ sw $v0, 0x74($s3)
/* 31D5AC 802BDA3C 080AF707 */ j .L802BDC1C
/* 31D5B0 802BDA40 AE900000 */ sw $s0, ($s4)
.L802BDA44:
/* 31D5B4 802BDA44 8E420004 */ lw $v0, 4($s2)
/* 31D5B8 802BDA48 24040001 */ addiu $a0, $zero, 1
/* 31D5BC 802BDA4C 00441025 */ or $v0, $v0, $a0
/* 31D5C0 802BDA50 AE420004 */ sw $v0, 4($s2)
/* 31D5C4 802BDA54 8E220000 */ lw $v0, ($s1)
/* 31D5C8 802BDA58 2403F5FF */ addiu $v1, $zero, -0xa01
/* 31D5CC 802BDA5C 3C01802C */ lui $at, 0x802c
/* 31D5D0 802BDA60 AC24E30C */ sw $a0, -0x1cf4($at)
/* 31D5D4 802BDA64 00431024 */ and $v0, $v0, $v1
/* 31D5D8 802BDA68 AE220000 */ sw $v0, ($s1)
/* 31D5DC 802BDA6C 24020006 */ addiu $v0, $zero, 6
/* 31D5E0 802BDA70 A0A0007D */ sb $zero, 0x7d($a1)
/* 31D5E4 802BDA74 A2A40000 */ sb $a0, ($s5)
/* 31D5E8 802BDA78 0C03BD38 */ jal func_800EF4E0
/* 31D5EC 802BDA7C A2A20003 */ sb $v0, 3($s5)
/* 31D5F0 802BDA80 C6400028 */ lwc1 $f0, 0x28($s2)
/* 31D5F4 802BDA84 3C0140A0 */ lui $at, 0x40a0
/* 31D5F8 802BDA88 44811000 */ mtc1 $at, $f2
/* 31D5FC 802BDA8C E6200060 */ swc1 $f0, 0x60($s1)
/* 31D600 802BDA90 C640002C */ lwc1 $f0, 0x2c($s2)
/* 31D604 802BDA94 3C020006 */ lui $v0, 6
/* 31D608 802BDA98 46020000 */ add.s $f0, $f0, $f2
/* 31D60C 802BDA9C 3C064170 */ lui $a2, 0x4170
/* 31D610 802BDAA0 34420002 */ ori $v0, $v0, 2
/* 31D614 802BDAA4 E6200064 */ swc1 $f0, 0x64($s1)
/* 31D618 802BDAA8 C6400030 */ lwc1 $f0, 0x30($s2)
/* 31D61C 802BDAAC 26240060 */ addiu $a0, $s1, 0x60
/* 31D620 802BDAB0 AE220028 */ sw $v0, 0x28($s1)
/* 31D624 802BDAB4 E6200068 */ swc1 $f0, 0x68($s1)
/* 31D628 802BDAB8 8E470080 */ lw $a3, 0x80($s2)
/* 31D62C 802BDABC 0C00A7E7 */ jal add_vec2D_polar
/* 31D630 802BDAC0 26250068 */ addiu $a1, $s1, 0x68
/* 31D634 802BDAC4 24020008 */ addiu $v0, $zero, 8
/* 31D638 802BDAC8 A622008E */ sh $v0, 0x8e($s1)
/* 31D63C 802BDACC 8E460028 */ lw $a2, 0x28($s2)
/* 31D640 802BDAD0 8E470030 */ lw $a3, 0x30($s2)
/* 31D644 802BDAD4 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 31D648 802BDAD8 0C00A720 */ jal atan2
/* 31D64C 802BDADC C62E0040 */ lwc1 $f14, 0x40($s1)
/* 31D650 802BDAE0 8E820000 */ lw $v0, ($s4)
/* 31D654 802BDAE4 E620000C */ swc1 $f0, 0xc($s1)
/* 31D658 802BDAE8 080AF706 */ j .L802BDC18
/* 31D65C 802BDAEC 24420001 */ addiu $v0, $v0, 1
.L802BDAF0:
/* 31D660 802BDAF0 C6200060 */ lwc1 $f0, 0x60($s1)
/* 31D664 802BDAF4 C62A0038 */ lwc1 $f10, 0x38($s1)
/* 31D668 802BDAF8 8622008E */ lh $v0, 0x8e($s1)
/* 31D66C 802BDAFC C6240064 */ lwc1 $f4, 0x64($s1)
/* 31D670 802BDB00 C628003C */ lwc1 $f8, 0x3c($s1)
/* 31D674 802BDB04 C6260040 */ lwc1 $f6, 0x40($s1)
/* 31D678 802BDB08 44821000 */ mtc1 $v0, $f2
/* 31D67C 802BDB0C 00000000 */ nop
/* 31D680 802BDB10 468010A0 */ cvt.s.w $f2, $f2
/* 31D684 802BDB14 0040202D */ daddu $a0, $v0, $zero
/* 31D688 802BDB18 460A0001 */ sub.s $f0, $f0, $f10
/* 31D68C 802BDB1C 0080182D */ daddu $v1, $a0, $zero
/* 31D690 802BDB20 9622008E */ lhu $v0, 0x8e($s1)
/* 31D694 802BDB24 46082101 */ sub.s $f4, $f4, $f8
/* 31D698 802BDB28 2442FFFF */ addiu $v0, $v0, -1
/* 31D69C 802BDB2C A622008E */ sh $v0, 0x8e($s1)
/* 31D6A0 802BDB30 46020003 */ div.s $f0, $f0, $f2
/* 31D6A4 802BDB34 46005280 */ add.s $f10, $f10, $f0
/* 31D6A8 802BDB38 C6220068 */ lwc1 $f2, 0x68($s1)
/* 31D6AC 802BDB3C 00021400 */ sll $v0, $v0, 0x10
/* 31D6B0 802BDB40 46061081 */ sub.s $f2, $f2, $f6
/* 31D6B4 802BDB44 44840000 */ mtc1 $a0, $f0
/* 31D6B8 802BDB48 00000000 */ nop
/* 31D6BC 802BDB4C 46800020 */ cvt.s.w $f0, $f0
/* 31D6C0 802BDB50 46002103 */ div.s $f4, $f4, $f0
/* 31D6C4 802BDB54 46044200 */ add.s $f8, $f8, $f4
/* 31D6C8 802BDB58 44830000 */ mtc1 $v1, $f0
/* 31D6CC 802BDB5C 00000000 */ nop
/* 31D6D0 802BDB60 46800020 */ cvt.s.w $f0, $f0
/* 31D6D4 802BDB64 46001083 */ div.s $f2, $f2, $f0
/* 31D6D8 802BDB68 46023180 */ add.s $f6, $f6, $f2
/* 31D6DC 802BDB6C E62A0038 */ swc1 $f10, 0x38($s1)
/* 31D6E0 802BDB70 E628003C */ swc1 $f8, 0x3c($s1)
/* 31D6E4 802BDB74 14400029 */ bnez $v0, .L802BDC1C
/* 31D6E8 802BDB78 E6260040 */ swc1 $f6, 0x40($s1)
/* 31D6EC 802BDB7C 3C020006 */ lui $v0, 6
/* 31D6F0 802BDB80 C6400080 */ lwc1 $f0, 0x80($s2)
/* 31D6F4 802BDB84 34420001 */ ori $v0, $v0, 1
/* 31D6F8 802BDB88 AE220028 */ sw $v0, 0x28($s1)
/* 31D6FC 802BDB8C E620000C */ swc1 $f0, 0xc($s1)
/* 31D700 802BDB90 8E420004 */ lw $v0, 4($s2)
/* 31D704 802BDB94 24030006 */ addiu $v1, $zero, 6
/* 31D708 802BDB98 A2A30003 */ sb $v1, 3($s5)
/* 31D70C 802BDB9C 34420002 */ ori $v0, $v0, 2
/* 31D710 802BDBA0 0C0AF805 */ jal func_802BE014
/* 31D714 802BDBA4 AE420004 */ sw $v0, 4($s2)
/* 31D718 802BDBA8 24020002 */ addiu $v0, $zero, 2
/* 31D71C 802BDBAC AE620074 */ sw $v0, 0x74($s3)
/* 31D720 802BDBB0 080AF706 */ j .L802BDC18
/* 31D724 802BDBB4 24020001 */ addiu $v0, $zero, 1
.L802BDBB8:
/* 31D728 802BDBB8 0C0AF81C */ jal func_802BE070
/* 31D72C 802BDBBC 00000000 */ nop
/* 31D730 802BDBC0 8E420000 */ lw $v0, ($s2)
/* 31D734 802BDBC4 30420800 */ andi $v0, $v0, 0x800
/* 31D738 802BDBC8 14400013 */ bnez $v0, .L802BDC18
/* 31D73C 802BDBCC 24020002 */ addiu $v0, $zero, 2
/* 31D740 802BDBD0 824300B4 */ lb $v1, 0xb4($s2)
/* 31D744 802BDBD4 2402001D */ addiu $v0, $zero, 0x1d
/* 31D748 802BDBD8 10620010 */ beq $v1, $v0, .L802BDC1C
/* 31D74C 802BDBDC 00000000 */ nop
/* 31D750 802BDBE0 8E620074 */ lw $v0, 0x74($s3)
/* 31D754 802BDBE4 10400003 */ beqz $v0, .L802BDBF4
/* 31D758 802BDBE8 2442FFFF */ addiu $v0, $v0, -1
/* 31D75C 802BDBEC 080AF707 */ j .L802BDC1C
/* 31D760 802BDBF0 AE620074 */ sw $v0, 0x74($s3)
.L802BDBF4:
/* 31D764 802BDBF4 2C620003 */ sltiu $v0, $v1, 3
/* 31D768 802BDBF8 14400003 */ bnez $v0, .L802BDC08
/* 31D76C 802BDBFC 2402000A */ addiu $v0, $zero, 0xa
/* 31D770 802BDC00 14620006 */ bne $v1, $v0, .L802BDC1C
/* 31D774 802BDC04 00000000 */ nop
.L802BDC08:
/* 31D778 802BDC08 8EA2000C */ lw $v0, 0xc($s5)
/* 31D77C 802BDC0C 30424000 */ andi $v0, $v0, 0x4000
/* 31D780 802BDC10 10400002 */ beqz $v0, .L802BDC1C
/* 31D784 802BDC14 24020002 */ addiu $v0, $zero, 2
.L802BDC18:
/* 31D788 802BDC18 AE820000 */ sw $v0, ($s4)
.L802BDC1C:
/* 31D78C 802BDC1C 3C10802C */ lui $s0, 0x802c
/* 31D790 802BDC20 2610E304 */ addiu $s0, $s0, -0x1cfc
/* 31D794 802BDC24 8E030000 */ lw $v1, ($s0)
/* 31D798 802BDC28 24020002 */ addiu $v0, $zero, 2
/* 31D79C 802BDC2C 1462001D */ bne $v1, $v0, .L802BDCA4
/* 31D7A0 802BDC30 3C050006 */ lui $a1, 6
/* 31D7A4 802BDC34 34A50001 */ ori $a1, $a1, 1
/* 31D7A8 802BDC38 0220202D */ daddu $a0, $s1, $zero
/* 31D7AC 802BDC3C 8E420004 */ lw $v0, 4($s2)
/* 31D7B0 802BDC40 2403FFFC */ addiu $v1, $zero, -4
/* 31D7B4 802BDC44 00431024 */ and $v0, $v0, $v1
/* 31D7B8 802BDC48 AE420004 */ sw $v0, 4($s2)
/* 31D7BC 802BDC4C 0C03BD17 */ jal clear_partner_move_history
/* 31D7C0 802BDC50 AE250028 */ sw $a1, 0x28($s1)
/* 31D7C4 802BDC54 0220202D */ daddu $a0, $s1, $zero
/* 31D7C8 802BDC58 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 31D7CC 802BDC5C 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 31D7D0 802BDC60 0000282D */ daddu $a1, $zero, $zero
/* 31D7D4 802BDC64 3C01802C */ lui $at, 0x802c
/* 31D7D8 802BDC68 AC20E30C */ sw $zero, -0x1cf4($at)
/* 31D7DC 802BDC6C A2A00003 */ sb $zero, 3($s5)
/* 31D7E0 802BDC70 A2A00000 */ sb $zero, ($s5)
/* 31D7E4 802BDC74 A040007D */ sb $zero, 0x7d($v0)
/* 31D7E8 802BDC78 24020014 */ addiu $v0, $zero, 0x14
/* 31D7EC 802BDC7C 0C00ECF4 */ jal func_8003B3D0
/* 31D7F0 802BDC80 AE020000 */ sw $v0, ($s0)
/* 31D7F4 802BDC84 8E420000 */ lw $v0, ($s2)
/* 31D7F8 802BDC88 30420800 */ andi $v0, $v0, 0x800
/* 31D7FC 802BDC8C 14400016 */ bnez $v0, .L802BDCE8
/* 31D800 802BDC90 24020001 */ addiu $v0, $zero, 1
/* 31D804 802BDC94 0C039769 */ jal set_action_state
/* 31D808 802BDC98 0000202D */ daddu $a0, $zero, $zero
/* 31D80C 802BDC9C 080AF73A */ j .L802BDCE8
/* 31D810 802BDCA0 24020001 */ addiu $v0, $zero, 1
.L802BDCA4:
/* 31D814 802BDCA4 3C03802C */ lui $v1, 0x802c
/* 31D818 802BDCA8 8C63E310 */ lw $v1, -0x1cf0($v1)
/* 31D81C 802BDCAC 1060000E */ beqz $v1, .L802BDCE8
/* 31D820 802BDCB0 0000102D */ daddu $v0, $zero, $zero
/* 31D824 802BDCB4 8C62000C */ lw $v0, 0xc($v1)
/* 31D828 802BDCB8 C6200038 */ lwc1 $f0, 0x38($s1)
/* 31D82C 802BDCBC 3C014150 */ lui $at, 0x4150
/* 31D830 802BDCC0 44811000 */ mtc1 $at, $f2
/* 31D834 802BDCC4 E4400004 */ swc1 $f0, 4($v0)
/* 31D838 802BDCC8 C620003C */ lwc1 $f0, 0x3c($s1)
/* 31D83C 802BDCCC 46020000 */ add.s $f0, $f0, $f2
/* 31D840 802BDCD0 8C62000C */ lw $v0, 0xc($v1)
/* 31D844 802BDCD4 E4400008 */ swc1 $f0, 8($v0)
/* 31D848 802BDCD8 8C62000C */ lw $v0, 0xc($v1)
/* 31D84C 802BDCDC C6200040 */ lwc1 $f0, 0x40($s1)
/* 31D850 802BDCE0 E440000C */ swc1 $f0, 0xc($v0)
/* 31D854 802BDCE4 0000102D */ daddu $v0, $zero, $zero
.L802BDCE8:
/* 31D858 802BDCE8 8FBF0028 */ lw $ra, 0x28($sp)
/* 31D85C 802BDCEC 8FB50024 */ lw $s5, 0x24($sp)
/* 31D860 802BDCF0 8FB40020 */ lw $s4, 0x20($sp)
/* 31D864 802BDCF4 8FB3001C */ lw $s3, 0x1c($sp)
/* 31D868 802BDCF8 8FB20018 */ lw $s2, 0x18($sp)
/* 31D86C 802BDCFC 8FB10014 */ lw $s1, 0x14($sp)
/* 31D870 802BDD00 8FB00010 */ lw $s0, 0x10($sp)
/* 31D874 802BDD04 03E00008 */ jr $ra
/* 31D878 802BDD08 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -0,0 +1,41 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDD0C
/* 31D87C 802BDD0C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 31D880 802BDD10 AFB20018 */ sw $s2, 0x18($sp)
/* 31D884 802BDD14 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 31D888 802BDD18 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 31D88C 802BDD1C AFB10014 */ sw $s1, 0x14($sp)
/* 31D890 802BDD20 3C118011 */ lui $s1, %hi(D_8010EBB0)
/* 31D894 802BDD24 2631EBB0 */ addiu $s1, $s1, %lo(D_8010EBB0)
/* 31D898 802BDD28 AFBF001C */ sw $ra, 0x1c($sp)
/* 31D89C 802BDD2C AFB00010 */ sw $s0, 0x10($sp)
/* 31D8A0 802BDD30 10A00011 */ beqz $a1, .L802BDD78
/* 31D8A4 802BDD34 8C90014C */ lw $s0, 0x14c($a0)
/* 31D8A8 802BDD38 0C0AF460 */ jal func_802BD180_31CC70
/* 31D8AC 802BDD3C 00000000 */ nop
/* 31D8B0 802BDD40 0C03BA65 */ jal func_800EE994
/* 31D8B4 802BDD44 0200202D */ daddu $a0, $s0, $zero
/* 31D8B8 802BDD48 3C040001 */ lui $a0, 1
/* 31D8BC 802BDD4C 0C037FD4 */ jal func_800DFF50
/* 31D8C0 802BDD50 34840002 */ ori $a0, $a0, 2
/* 31D8C4 802BDD54 2402FFFC */ addiu $v0, $zero, -4
/* 31D8C8 802BDD58 A2200003 */ sb $zero, 3($s1)
/* 31D8CC 802BDD5C A2200000 */ sb $zero, ($s1)
/* 31D8D0 802BDD60 8E430004 */ lw $v1, 4($s2)
/* 31D8D4 802BDD64 3C048007 */ lui $a0, %hi(gGameStatusPtr)
/* 31D8D8 802BDD68 8C84419C */ lw $a0, %lo(gGameStatusPtr)($a0)
/* 31D8DC 802BDD6C 00621824 */ and $v1, $v1, $v0
/* 31D8E0 802BDD70 AE430004 */ sw $v1, 4($s2)
/* 31D8E4 802BDD74 A080007D */ sb $zero, 0x7d($a0)
.L802BDD78:
/* 31D8E8 802BDD78 0C03BA6E */ jal func_800EE9B8
/* 31D8EC 802BDD7C 0200202D */ daddu $a0, $s0, $zero
/* 31D8F0 802BDD80 8FBF001C */ lw $ra, 0x1c($sp)
/* 31D8F4 802BDD84 8FB20018 */ lw $s2, 0x18($sp)
/* 31D8F8 802BDD88 8FB10014 */ lw $s1, 0x14($sp)
/* 31D8FC 802BDD8C 8FB00010 */ lw $s0, 0x10($sp)
/* 31D900 802BDD90 0002102B */ sltu $v0, $zero, $v0
/* 31D904 802BDD94 03E00008 */ jr $ra
/* 31D908 802BDD98 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,35 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDD9C
/* 31D90C 802BDD9C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31D910 802BDDA0 3C02802C */ lui $v0, 0x802c
/* 31D914 802BDDA4 8C42E30C */ lw $v0, -0x1cf4($v0)
/* 31D918 802BDDA8 3C068011 */ lui $a2, %hi(D_8010EBB0)
/* 31D91C 802BDDAC 24C6EBB0 */ addiu $a2, $a2, %lo(D_8010EBB0)
/* 31D920 802BDDB0 10400012 */ beqz $v0, .L802BDDFC
/* 31D924 802BDDB4 AFBF0010 */ sw $ra, 0x10($sp)
/* 31D928 802BDDB8 24C30018 */ addiu $v1, $a2, 0x18
/* 31D92C 802BDDBC 0080102D */ daddu $v0, $a0, $zero
/* 31D930 802BDDC0 24850340 */ addiu $a1, $a0, 0x340
.L802BDDC4:
/* 31D934 802BDDC4 8C470000 */ lw $a3, ($v0)
/* 31D938 802BDDC8 8C480004 */ lw $t0, 4($v0)
/* 31D93C 802BDDCC 8C490008 */ lw $t1, 8($v0)
/* 31D940 802BDDD0 8C4A000C */ lw $t2, 0xc($v0)
/* 31D944 802BDDD4 AC670000 */ sw $a3, ($v1)
/* 31D948 802BDDD8 AC680004 */ sw $t0, 4($v1)
/* 31D94C 802BDDDC AC690008 */ sw $t1, 8($v1)
/* 31D950 802BDDE0 AC6A000C */ sw $t2, 0xc($v1)
/* 31D954 802BDDE4 24420010 */ addiu $v0, $v0, 0x10
/* 31D958 802BDDE8 1445FFF6 */ bne $v0, $a1, .L802BDDC4
/* 31D95C 802BDDEC 24630010 */ addiu $v1, $v1, 0x10
/* 31D960 802BDDF0 24020001 */ addiu $v0, $zero, 1
/* 31D964 802BDDF4 0C03BD17 */ jal clear_partner_move_history
/* 31D968 802BDDF8 A0C20001 */ sb $v0, 1($a2)
.L802BDDFC:
/* 31D96C 802BDDFC 0C0AF460 */ jal func_802BD180_31CC70
/* 31D970 802BDE00 00000000 */ nop
/* 31D974 802BDE04 8FBF0010 */ lw $ra, 0x10($sp)
/* 31D978 802BDE08 03E00008 */ jr $ra
/* 31D97C 802BDE0C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,36 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDE10
/* 31D980 802BDE10 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31D984 802BDE14 AFB00010 */ sw $s0, 0x10($sp)
/* 31D988 802BDE18 0080802D */ daddu $s0, $a0, $zero
/* 31D98C 802BDE1C 3C048011 */ lui $a0, %hi(D_8010EBB0)
/* 31D990 802BDE20 2484EBB0 */ addiu $a0, $a0, %lo(D_8010EBB0)
/* 31D994 802BDE24 AFBF0014 */ sw $ra, 0x14($sp)
/* 31D998 802BDE28 80820001 */ lb $v0, 1($a0)
/* 31D99C 802BDE2C 10400012 */ beqz $v0, .L802BDE78
/* 31D9A0 802BDE30 0200182D */ daddu $v1, $s0, $zero
/* 31D9A4 802BDE34 24820018 */ addiu $v0, $a0, 0x18
/* 31D9A8 802BDE38 24840358 */ addiu $a0, $a0, 0x358
.L802BDE3C:
/* 31D9AC 802BDE3C 8C450000 */ lw $a1, ($v0)
/* 31D9B0 802BDE40 8C460004 */ lw $a2, 4($v0)
/* 31D9B4 802BDE44 8C470008 */ lw $a3, 8($v0)
/* 31D9B8 802BDE48 8C48000C */ lw $t0, 0xc($v0)
/* 31D9BC 802BDE4C AC650000 */ sw $a1, ($v1)
/* 31D9C0 802BDE50 AC660004 */ sw $a2, 4($v1)
/* 31D9C4 802BDE54 AC670008 */ sw $a3, 8($v1)
/* 31D9C8 802BDE58 AC68000C */ sw $t0, 0xc($v1)
/* 31D9CC 802BDE5C 24420010 */ addiu $v0, $v0, 0x10
/* 31D9D0 802BDE60 1444FFF6 */ bne $v0, $a0, .L802BDE3C
/* 31D9D4 802BDE64 24630010 */ addiu $v1, $v1, 0x10
/* 31D9D8 802BDE68 0C03ACC5 */ jal partner_use_ability
/* 31D9DC 802BDE6C 00000000 */ nop
/* 31D9E0 802BDE70 0C0AF440 */ jal func_802BD100_31CC70
/* 31D9E4 802BDE74 0200202D */ daddu $a0, $s0, $zero
.L802BDE78:
/* 31D9E8 802BDE78 8FBF0014 */ lw $ra, 0x14($sp)
/* 31D9EC 802BDE7C 8FB00010 */ lw $s0, 0x10($sp)
/* 31D9F0 802BDE80 03E00008 */ jr $ra
/* 31D9F4 802BDE84 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,110 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDE88
/* 31D9F8 802BDE88 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 31D9FC 802BDE8C AFB10014 */ sw $s1, 0x14($sp)
/* 31DA00 802BDE90 0080882D */ daddu $s1, $a0, $zero
/* 31DA04 802BDE94 AFB00010 */ sw $s0, 0x10($sp)
/* 31DA08 802BDE98 00A0802D */ daddu $s0, $a1, $zero
/* 31DA0C 802BDE9C 2404FFFC */ addiu $a0, $zero, -4
/* 31DA10 802BDEA0 AFBF0024 */ sw $ra, 0x24($sp)
/* 31DA14 802BDEA4 AFB40020 */ sw $s4, 0x20($sp)
/* 31DA18 802BDEA8 AFB3001C */ sw $s3, 0x1c($sp)
/* 31DA1C 802BDEAC 0C00EABB */ jal get_npc_unsafe
/* 31DA20 802BDEB0 AFB20018 */ sw $s2, 0x18($sp)
/* 31DA24 802BDEB4 3C148011 */ lui $s4, %hi(D_8010EBB0)
/* 31DA28 802BDEB8 2694EBB0 */ addiu $s4, $s4, %lo(D_8010EBB0)
/* 31DA2C 802BDEBC 3C138011 */ lui $s3, %hi(gPlayerStatus)
/* 31DA30 802BDEC0 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus)
/* 31DA34 802BDEC4 12000002 */ beqz $s0, .L802BDED0
/* 31DA38 802BDEC8 0040902D */ daddu $s2, $v0, $zero
/* 31DA3C 802BDECC AE200070 */ sw $zero, 0x70($s1)
.L802BDED0:
/* 31DA40 802BDED0 8E230070 */ lw $v1, 0x70($s1)
/* 31DA44 802BDED4 10600005 */ beqz $v1, .L802BDEEC
/* 31DA48 802BDED8 24020001 */ addiu $v0, $zero, 1
/* 31DA4C 802BDEDC 10620037 */ beq $v1, $v0, .L802BDFBC
/* 31DA50 802BDEE0 0000102D */ daddu $v0, $zero, $zero
/* 31DA54 802BDEE4 080AF7FD */ j .L802BDFF4
/* 31DA58 802BDEE8 00000000 */ nop
.L802BDEEC:
/* 31DA5C 802BDEEC 8E2200B4 */ lw $v0, 0xb4($s1)
/* 31DA60 802BDEF0 14400007 */ bnez $v0, .L802BDF10
/* 31DA64 802BDEF4 00000000 */ nop
/* 31DA68 802BDEF8 0C03ADF3 */ jal partner_kill_ability_script
/* 31DA6C 802BDEFC 00000000 */ nop
/* 31DA70 802BDF00 0C0AF460 */ jal func_802BD180_31CC70
/* 31DA74 802BDF04 00000000 */ nop
/* 31DA78 802BDF08 080AF7C6 */ j .L802BDF18
/* 31DA7C 802BDF0C 00000000 */ nop
.L802BDF10:
/* 31DA80 802BDF10 0C0AF440 */ jal func_802BD100_31CC70
/* 31DA84 802BDF14 0240202D */ daddu $a0, $s2, $zero
.L802BDF18:
/* 31DA88 802BDF18 C6220088 */ lwc1 $f2, 0x88($s1)
/* 31DA8C 802BDF1C 468010A0 */ cvt.s.w $f2, $f2
/* 31DA90 802BDF20 44061000 */ mfc1 $a2, $f2
/* 31DA94 802BDF24 C6220090 */ lwc1 $f2, 0x90($s1)
/* 31DA98 802BDF28 468010A0 */ cvt.s.w $f2, $f2
/* 31DA9C 802BDF2C 8E220094 */ lw $v0, 0x94($s1)
/* 31DAA0 802BDF30 44071000 */ mfc1 $a3, $f2
/* 31DAA4 802BDF34 AE220074 */ sw $v0, 0x74($s1)
/* 31DAA8 802BDF38 C66C0028 */ lwc1 $f12, 0x28($s3)
/* 31DAAC 802BDF3C 0C00A720 */ jal atan2
/* 31DAB0 802BDF40 C66E0030 */ lwc1 $f14, 0x30($s3)
/* 31DAB4 802BDF44 E6600080 */ swc1 $f0, 0x80($s3)
/* 31DAB8 802BDF48 E66000A0 */ swc1 $f0, 0xa0($s3)
/* 31DABC 802BDF4C 8E240074 */ lw $a0, 0x74($s1)
/* 31DAC0 802BDF50 8E260098 */ lw $a2, 0x98($s1)
/* 31DAC4 802BDF54 44050000 */ mfc1 $a1, $f0
/* 31DAC8 802BDF58 0C0389DE */ jal move_player
/* 31DACC 802BDF5C 00000000 */ nop
/* 31DAD0 802BDF60 0C0AF81C */ jal func_802BE070
/* 31DAD4 802BDF64 00000000 */ nop
/* 31DAD8 802BDF68 8E420000 */ lw $v0, ($s2)
/* 31DADC 802BDF6C 2403FDFF */ addiu $v1, $zero, -0x201
/* 31DAE0 802BDF70 00431024 */ and $v0, $v0, $v1
/* 31DAE4 802BDF74 34420100 */ ori $v0, $v0, 0x100
/* 31DAE8 802BDF78 AE420000 */ sw $v0, ($s2)
/* 31DAEC 802BDF7C 8E620004 */ lw $v0, 4($s3)
/* 31DAF0 802BDF80 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 31DAF4 802BDF84 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 31DAF8 802BDF88 34420003 */ ori $v0, $v0, 3
/* 31DAFC 802BDF8C AE620004 */ sw $v0, 4($s3)
/* 31DB00 802BDF90 24020001 */ addiu $v0, $zero, 1
/* 31DB04 802BDF94 A062007D */ sb $v0, 0x7d($v1)
/* 31DB08 802BDF98 A2820000 */ sb $v0, ($s4)
/* 31DB0C 802BDF9C 24020006 */ addiu $v0, $zero, 6
/* 31DB10 802BDFA0 A2820003 */ sb $v0, 3($s4)
/* 31DB14 802BDFA4 8E220070 */ lw $v0, 0x70($s1)
/* 31DB18 802BDFA8 3C01802C */ lui $at, 0x802c
/* 31DB1C 802BDFAC AC20E308 */ sw $zero, -0x1cf8($at)
/* 31DB20 802BDFB0 24420001 */ addiu $v0, $v0, 1
/* 31DB24 802BDFB4 080AF7FC */ j .L802BDFF0
/* 31DB28 802BDFB8 AE220070 */ sw $v0, 0x70($s1)
.L802BDFBC:
/* 31DB2C 802BDFBC 0C0AF81C */ jal func_802BE070
/* 31DB30 802BDFC0 00000000 */ nop
/* 31DB34 802BDFC4 8E220074 */ lw $v0, 0x74($s1)
/* 31DB38 802BDFC8 2442FFFF */ addiu $v0, $v0, -1
/* 31DB3C 802BDFCC 14400008 */ bnez $v0, .L802BDFF0
/* 31DB40 802BDFD0 AE220074 */ sw $v0, 0x74($s1)
/* 31DB44 802BDFD4 8E2200B4 */ lw $v0, 0xb4($s1)
/* 31DB48 802BDFD8 10400006 */ beqz $v0, .L802BDFF4
/* 31DB4C 802BDFDC 24020002 */ addiu $v0, $zero, 2
/* 31DB50 802BDFE0 0C03ACC5 */ jal partner_use_ability
/* 31DB54 802BDFE4 00000000 */ nop
/* 31DB58 802BDFE8 080AF7FD */ j .L802BDFF4
/* 31DB5C 802BDFEC 24020002 */ addiu $v0, $zero, 2
.L802BDFF0:
/* 31DB60 802BDFF0 0000102D */ daddu $v0, $zero, $zero
.L802BDFF4:
/* 31DB64 802BDFF4 8FBF0024 */ lw $ra, 0x24($sp)
/* 31DB68 802BDFF8 8FB40020 */ lw $s4, 0x20($sp)
/* 31DB6C 802BDFFC 8FB3001C */ lw $s3, 0x1c($sp)
/* 31DB70 802BE000 8FB20018 */ lw $s2, 0x18($sp)
/* 31DB74 802BE004 8FB10014 */ lw $s1, 0x14($sp)
/* 31DB78 802BE008 8FB00010 */ lw $s0, 0x10($sp)
/* 31DB7C 802BE00C 03E00008 */ jr $ra
/* 31DB80 802BE010 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -0,0 +1,29 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE014
/* 31DB84 802BE014 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31DB88 802BE018 3C028011 */ lui $v0, %hi(gPlayerStatus)
/* 31DB8C 802BE01C 2442EFC8 */ addiu $v0, $v0, %lo(gPlayerStatus)
/* 31DB90 802BE020 AFBF0010 */ sw $ra, 0x10($sp)
/* 31DB94 802BE024 C4420054 */ lwc1 $f2, 0x54($v0)
/* 31DB98 802BE028 C440005C */ lwc1 $f0, 0x5c($v0)
/* 31DB9C 802BE02C 4602003E */ c.le.s $f0, $f2
/* 31DBA0 802BE030 00000000 */ nop
/* 31DBA4 802BE034 45000003 */ bc1f .L802BE044
/* 31DBA8 802BE038 3C040006 */ lui $a0, 6
/* 31DBAC 802BE03C 080AF817 */ j .L802BE05C
/* 31DBB0 802BE040 34840002 */ ori $a0, $a0, 2
.L802BE044:
/* 31DBB4 802BE044 C4400058 */ lwc1 $f0, 0x58($v0)
/* 31DBB8 802BE048 4602003E */ c.le.s $f0, $f2
/* 31DBBC 802BE04C 00000000 */ nop
/* 31DBC0 802BE050 45000002 */ bc1f .L802BE05C
/* 31DBC4 802BE054 34840007 */ ori $a0, $a0, 7
/* 31DBC8 802BE058 3C040006 */ lui $a0, 6
.L802BE05C:
/* 31DBCC 802BE05C 0C037FBF */ jal func_800DFEFC
/* 31DBD0 802BE060 00000000 */ nop
/* 31DBD4 802BE064 8FBF0010 */ lw $ra, 0x10($sp)
/* 31DBD8 802BE068 03E00008 */ jr $ra
/* 31DBDC 802BE06C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,129 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE070
/* 31DBE0 802BE070 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 31DBE4 802BE074 8042EBB0 */ lb $v0, %lo(D_8010EBB0)($v0)
/* 31DBE8 802BE078 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31DBEC 802BE07C AFBF0024 */ sw $ra, 0x24($sp)
/* 31DBF0 802BE080 AFB40020 */ sw $s4, 0x20($sp)
/* 31DBF4 802BE084 AFB3001C */ sw $s3, 0x1c($sp)
/* 31DBF8 802BE088 AFB20018 */ sw $s2, 0x18($sp)
/* 31DBFC 802BE08C AFB10014 */ sw $s1, 0x14($sp)
/* 31DC00 802BE090 AFB00010 */ sw $s0, 0x10($sp)
/* 31DC04 802BE094 F7B60030 */ sdc1 $f22, 0x30($sp)
/* 31DC08 802BE098 10400060 */ beqz $v0, .L802BE21C
/* 31DC0C 802BE09C F7B40028 */ sdc1 $f20, 0x28($sp)
/* 31DC10 802BE0A0 3C02800F */ lui $v0, %hi(gPlayerStatusPtr)
/* 31DC14 802BE0A4 8C427B30 */ lw $v0, %lo(gPlayerStatusPtr)($v0)
/* 31DC18 802BE0A8 3C0142B4 */ lui $at, 0x42b4
/* 31DC1C 802BE0AC 44810000 */ mtc1 $at, $f0
/* 31DC20 802BE0B0 C44200A8 */ lwc1 $f2, 0xa8($v0)
/* 31DC24 802BE0B4 4600103C */ c.lt.s $f2, $f0
/* 31DC28 802BE0B8 00000000 */ nop
/* 31DC2C 802BE0BC 45010008 */ bc1t .L802BE0E0
/* 31DC30 802BE0C0 00000000 */ nop
/* 31DC34 802BE0C4 3C014387 */ lui $at, 0x4387
/* 31DC38 802BE0C8 44810000 */ mtc1 $at, $f0
/* 31DC3C 802BE0CC 00000000 */ nop
/* 31DC40 802BE0D0 4602003C */ c.lt.s $f0, $f2
/* 31DC44 802BE0D4 00000000 */ nop
/* 31DC48 802BE0D8 45000008 */ bc1f .L802BE0FC
/* 31DC4C 802BE0DC 3C030100 */ lui $v1, 0x100
.L802BE0E0:
/* 31DC50 802BE0E0 8C4200A4 */ lw $v0, 0xa4($v0)
/* 31DC54 802BE0E4 3C030100 */ lui $v1, 0x100
/* 31DC58 802BE0E8 00431024 */ and $v0, $v0, $v1
/* 31DC5C 802BE0EC 10400007 */ beqz $v0, .L802BE10C
/* 31DC60 802BE0F0 24030005 */ addiu $v1, $zero, 5
/* 31DC64 802BE0F4 080AF844 */ j .L802BE110
/* 31DC68 802BE0F8 00000000 */ nop
.L802BE0FC:
/* 31DC6C 802BE0FC 8C4200A4 */ lw $v0, 0xa4($v0)
/* 31DC70 802BE100 00431024 */ and $v0, $v0, $v1
/* 31DC74 802BE104 10400002 */ beqz $v0, .L802BE110
/* 31DC78 802BE108 24030005 */ addiu $v1, $zero, 5
.L802BE10C:
/* 31DC7C 802BE10C 2403FFFB */ addiu $v1, $zero, -5
.L802BE110:
/* 31DC80 802BE110 3C013F19 */ lui $at, 0x3f19
/* 31DC84 802BE114 3421999A */ ori $at, $at, 0x999a
/* 31DC88 802BE118 4481B000 */ mtc1 $at, $f22
/* 31DC8C 802BE11C 3C11800F */ lui $s1, %hi(gPlayerStatusPtr)
/* 31DC90 802BE120 26317B30 */ addiu $s1, $s1, %lo(gPlayerStatusPtr)
/* 31DC94 802BE124 3C02800B */ lui $v0, %hi(gCameras)
/* 31DC98 802BE128 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 31DC9C 802BE12C C454006C */ lwc1 $f20, 0x6c($v0)
/* 31DCA0 802BE130 3C014387 */ lui $at, 0x4387
/* 31DCA4 802BE134 44810000 */ mtc1 $at, $f0
/* 31DCA8 802BE138 8E340000 */ lw $s4, ($s1)
/* 31DCAC 802BE13C 4600A500 */ add.s $f20, $f20, $f0
/* 31DCB0 802BE140 C68000A8 */ lwc1 $f0, 0xa8($s4)
/* 31DCB4 802BE144 4600A501 */ sub.s $f20, $f20, $f0
/* 31DCB8 802BE148 44830000 */ mtc1 $v1, $f0
/* 31DCBC 802BE14C 00000000 */ nop
/* 31DCC0 802BE150 46800020 */ cvt.s.w $f0, $f0
/* 31DCC4 802BE154 4600A500 */ add.s $f20, $f20, $f0
/* 31DCC8 802BE158 3C0140C9 */ lui $at, 0x40c9
/* 31DCCC 802BE15C 34210FD0 */ ori $at, $at, 0xfd0
/* 31DCD0 802BE160 44810000 */ mtc1 $at, $f0
/* 31DCD4 802BE164 00000000 */ nop
/* 31DCD8 802BE168 4600A502 */ mul.s $f20, $f20, $f0
/* 31DCDC 802BE16C 00000000 */ nop
/* 31DCE0 802BE170 3C108011 */ lui $s0, 0x8011
/* 31DCE4 802BE174 2610C930 */ addiu $s0, $s0, -0x36d0
/* 31DCE8 802BE178 3C0143B4 */ lui $at, 0x43b4
/* 31DCEC 802BE17C 44810000 */ mtc1 $at, $f0
/* 31DCF0 802BE180 8E120000 */ lw $s2, ($s0)
/* 31DCF4 802BE184 4600A503 */ div.s $f20, $f20, $f0
/* 31DCF8 802BE188 0C00A85B */ jal sin_rad
/* 31DCFC 802BE18C 4600A306 */ mov.s $f12, $f20
/* 31DD00 802BE190 8E330000 */ lw $s3, ($s1)
/* 31DD04 802BE194 866200B2 */ lh $v0, 0xb2($s3)
/* 31DD08 802BE198 44821000 */ mtc1 $v0, $f2
/* 31DD0C 802BE19C 00000000 */ nop
/* 31DD10 802BE1A0 468010A0 */ cvt.s.w $f2, $f2
/* 31DD14 802BE1A4 46020002 */ mul.s $f0, $f0, $f2
/* 31DD18 802BE1A8 00000000 */ nop
/* 31DD1C 802BE1AC 46160002 */ mul.s $f0, $f0, $f22
/* 31DD20 802BE1B0 00000000 */ nop
/* 31DD24 802BE1B4 C6820028 */ lwc1 $f2, 0x28($s4)
/* 31DD28 802BE1B8 46001080 */ add.s $f2, $f2, $f0
/* 31DD2C 802BE1BC E6420038 */ swc1 $f2, 0x38($s2)
/* 31DD30 802BE1C0 8E120000 */ lw $s2, ($s0)
/* 31DD34 802BE1C4 0C00A874 */ jal cos_rad
/* 31DD38 802BE1C8 4600A306 */ mov.s $f12, $f20
/* 31DD3C 802BE1CC 8E230000 */ lw $v1, ($s1)
/* 31DD40 802BE1D0 846200B2 */ lh $v0, 0xb2($v1)
/* 31DD44 802BE1D4 44821000 */ mtc1 $v0, $f2
/* 31DD48 802BE1D8 00000000 */ nop
/* 31DD4C 802BE1DC 468010A0 */ cvt.s.w $f2, $f2
/* 31DD50 802BE1E0 46020002 */ mul.s $f0, $f0, $f2
/* 31DD54 802BE1E4 00000000 */ nop
/* 31DD58 802BE1E8 46160002 */ mul.s $f0, $f0, $f22
/* 31DD5C 802BE1EC 00000000 */ nop
/* 31DD60 802BE1F0 C6620030 */ lwc1 $f2, 0x30($s3)
/* 31DD64 802BE1F4 46001081 */ sub.s $f2, $f2, $f0
/* 31DD68 802BE1F8 E6420040 */ swc1 $f2, 0x40($s2)
/* 31DD6C 802BE1FC 8E020000 */ lw $v0, ($s0)
/* 31DD70 802BE200 C4600080 */ lwc1 $f0, 0x80($v1)
/* 31DD74 802BE204 3C0140A0 */ lui $at, 0x40a0
/* 31DD78 802BE208 44811000 */ mtc1 $at, $f2
/* 31DD7C 802BE20C E440000C */ swc1 $f0, 0xc($v0)
/* 31DD80 802BE210 C460002C */ lwc1 $f0, 0x2c($v1)
/* 31DD84 802BE214 46020000 */ add.s $f0, $f0, $f2
/* 31DD88 802BE218 E440003C */ swc1 $f0, 0x3c($v0)
.L802BE21C:
/* 31DD8C 802BE21C 8FBF0024 */ lw $ra, 0x24($sp)
/* 31DD90 802BE220 8FB40020 */ lw $s4, 0x20($sp)
/* 31DD94 802BE224 8FB3001C */ lw $s3, 0x1c($sp)
/* 31DD98 802BE228 8FB20018 */ lw $s2, 0x18($sp)
/* 31DD9C 802BE22C 8FB10014 */ lw $s1, 0x14($sp)
/* 31DDA0 802BE230 8FB00010 */ lw $s0, 0x10($sp)
/* 31DDA4 802BE234 D7B60030 */ ldc1 $f22, 0x30($sp)
/* 31DDA8 802BE238 D7B40028 */ ldc1 $f20, 0x28($sp)
/* 31DDAC 802BE23C 03E00008 */ jr $ra
/* 31DDB0 802BE240 27BD0038 */ addiu $sp, $sp, 0x38
/* 31DDB4 802BE244 00000000 */ nop
/* 31DDB8 802BE248 00000000 */ nop
/* 31DDBC 802BE24C 00000000 */ nop

View File

@ -0,0 +1,73 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_31DE70
/* 31DE70 802BD100 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 31DE74 802BD104 2404FFFC */ addiu $a0, $zero, -4
/* 31DE78 802BD108 AFBF0014 */ sw $ra, 0x14($sp)
/* 31DE7C 802BD10C 0C00EABB */ jal get_npc_unsafe
/* 31DE80 802BD110 AFB00010 */ sw $s0, 0x10($sp)
/* 31DE84 802BD114 C4400038 */ lwc1 $f0, 0x38($v0)
/* 31DE88 802BD118 3C014180 */ lui $at, 0x4180
/* 31DE8C 802BD11C 44811000 */ mtc1 $at, $f2
/* 31DE90 802BD120 3C108011 */ lui $s0, %hi(gPlayerStatus)
/* 31DE94 802BD124 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus)
/* 31DE98 802BD128 E6000028 */ swc1 $f0, 0x28($s0)
/* 31DE9C 802BD12C C440003C */ lwc1 $f0, 0x3c($v0)
/* 31DEA0 802BD130 46020000 */ add.s $f0, $f0, $f2
/* 31DEA4 802BD134 C60400A8 */ lwc1 $f4, 0xa8($s0)
/* 31DEA8 802BD138 E600002C */ swc1 $f0, 0x2c($s0)
/* 31DEAC 802BD13C C4400040 */ lwc1 $f0, 0x40($v0)
/* 31DEB0 802BD140 E6000030 */ swc1 $f0, 0x30($s0)
/* 31DEB4 802BD144 3C0142B4 */ lui $at, 0x42b4
/* 31DEB8 802BD148 44810000 */ mtc1 $at, $f0
/* 31DEBC 802BD14C C442000C */ lwc1 $f2, 0xc($v0)
/* 31DEC0 802BD150 4600203C */ c.lt.s $f4, $f0
/* 31DEC4 802BD154 00000000 */ nop
/* 31DEC8 802BD158 45010008 */ bc1t .L802BD17C
/* 31DECC 802BD15C E6020080 */ swc1 $f2, 0x80($s0)
/* 31DED0 802BD160 3C014387 */ lui $at, 0x4387
/* 31DED4 802BD164 44810000 */ mtc1 $at, $f0
/* 31DED8 802BD168 00000000 */ nop
/* 31DEDC 802BD16C 4604003C */ c.lt.s $f0, $f4
/* 31DEE0 802BD170 00000000 */ nop
/* 31DEE4 802BD174 45000002 */ bc1f .L802BD180
/* 31DEE8 802BD178 24030008 */ addiu $v1, $zero, 8
.L802BD17C:
/* 31DEEC 802BD17C 2403FFF8 */ addiu $v1, $zero, -8
.L802BD180:
/* 31DEF0 802BD180 3C02800B */ lui $v0, %hi(gCameras)
/* 31DEF4 802BD184 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 31DEF8 802BD188 C44C006C */ lwc1 $f12, 0x6c($v0)
/* 31DEFC 802BD18C C60000A8 */ lwc1 $f0, 0xa8($s0)
/* 31DF00 802BD190 46006300 */ add.s $f12, $f12, $f0
/* 31DF04 802BD194 3C0142B4 */ lui $at, 0x42b4
/* 31DF08 802BD198 44810000 */ mtc1 $at, $f0
/* 31DF0C 802BD19C 00000000 */ nop
/* 31DF10 802BD1A0 46006301 */ sub.s $f12, $f12, $f0
/* 31DF14 802BD1A4 44830000 */ mtc1 $v1, $f0
/* 31DF18 802BD1A8 00000000 */ nop
/* 31DF1C 802BD1AC 46800020 */ cvt.s.w $f0, $f0
/* 31DF20 802BD1B0 46006300 */ add.s $f12, $f12, $f0
/* 31DF24 802BD1B4 3C0140C9 */ lui $at, 0x40c9
/* 31DF28 802BD1B8 34210FD0 */ ori $at, $at, 0xfd0
/* 31DF2C 802BD1BC 44810000 */ mtc1 $at, $f0
/* 31DF30 802BD1C0 00000000 */ nop
/* 31DF34 802BD1C4 46006302 */ mul.s $f12, $f12, $f0
/* 31DF38 802BD1C8 00000000 */ nop
/* 31DF3C 802BD1CC 3C0143B4 */ lui $at, 0x43b4
/* 31DF40 802BD1D0 44810000 */ mtc1 $at, $f0
/* 31DF44 802BD1D4 0C00A874 */ jal cos_rad
/* 31DF48 802BD1D8 46006303 */ div.s $f12, $f12, $f0
/* 31DF4C 802BD1DC 3C01C080 */ lui $at, 0xc080
/* 31DF50 802BD1E0 44811000 */ mtc1 $at, $f2
/* 31DF54 802BD1E4 00000000 */ nop
/* 31DF58 802BD1E8 46020002 */ mul.s $f0, $f0, $f2
/* 31DF5C 802BD1EC 00000000 */ nop
/* 31DF60 802BD1F0 C6020030 */ lwc1 $f2, 0x30($s0)
/* 31DF64 802BD1F4 46001081 */ sub.s $f2, $f2, $f0
/* 31DF68 802BD1F8 E6020030 */ swc1 $f2, 0x30($s0)
/* 31DF6C 802BD1FC 8FBF0014 */ lw $ra, 0x14($sp)
/* 31DF70 802BD200 8FB00010 */ lw $s0, 0x10($sp)
/* 31DF74 802BD204 03E00008 */ jr $ra
/* 31DF78 802BD208 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,93 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD20C
/* 31DF7C 802BD20C 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31DF80 802BD210 AFB20018 */ sw $s2, 0x18($sp)
/* 31DF84 802BD214 0080902D */ daddu $s2, $a0, $zero
/* 31DF88 802BD218 AFB3001C */ sw $s3, 0x1c($sp)
/* 31DF8C 802BD21C 00A0982D */ daddu $s3, $a1, $zero
/* 31DF90 802BD220 F7B40028 */ sdc1 $f20, 0x28($sp)
/* 31DF94 802BD224 4480A000 */ mtc1 $zero, $f20
/* 31DF98 802BD228 3C038011 */ lui $v1, %hi(D_8010EBB0)
/* 31DF9C 802BD22C 2463EBB0 */ addiu $v1, $v1, %lo(D_8010EBB0)
/* 31DFA0 802BD230 AFB00010 */ sw $s0, 0x10($sp)
/* 31DFA4 802BD234 3C10802C */ lui $s0, 0x802c
/* 31DFA8 802BD238 2610FDB0 */ addiu $s0, $s0, -0x250
/* 31DFAC 802BD23C AFB10014 */ sw $s1, 0x14($sp)
/* 31DFB0 802BD240 3C11802C */ lui $s1, 0x802c
/* 31DFB4 802BD244 2631FDB4 */ addiu $s1, $s1, -0x24c
/* 31DFB8 802BD248 AFBF0020 */ sw $ra, 0x20($sp)
/* 31DFBC 802BD24C F7B60030 */ sdc1 $f22, 0x30($sp)
/* 31DFC0 802BD250 84620006 */ lh $v0, 6($v1)
/* 31DFC4 802BD254 4600A306 */ mov.s $f12, $f20
/* 31DFC8 802BD258 44821000 */ mtc1 $v0, $f2
/* 31DFCC 802BD25C 00000000 */ nop
/* 31DFD0 802BD260 468010A0 */ cvt.s.w $f2, $f2
/* 31DFD4 802BD264 46001107 */ neg.s $f4, $f2
/* 31DFD8 802BD268 84620004 */ lh $v0, 4($v1)
/* 31DFDC 802BD26C 44072000 */ mfc1 $a3, $f4
/* 31DFE0 802BD270 44820000 */ mtc1 $v0, $f0
/* 31DFE4 802BD274 00000000 */ nop
/* 31DFE8 802BD278 46800020 */ cvt.s.w $f0, $f0
/* 31DFEC 802BD27C 44060000 */ mfc1 $a2, $f0
/* 31DFF0 802BD280 4600A386 */ mov.s $f14, $f20
/* 31DFF4 802BD284 AE060000 */ sw $a2, ($s0)
/* 31DFF8 802BD288 0C00A720 */ jal atan2
/* 31DFFC 802BD28C E6220000 */ swc1 $f2, ($s1)
/* 31E000 802BD290 3C01800B */ lui $at, 0x800b
/* 31E004 802BD294 C42C1DEC */ lwc1 $f12, 0x1dec($at)
/* 31E008 802BD298 0C00A6C9 */ jal clamp_angle
/* 31E00C 802BD29C 460C0300 */ add.s $f12, $f0, $f12
/* 31E010 802BD2A0 4600A306 */ mov.s $f12, $f20
/* 31E014 802BD2A4 4600A386 */ mov.s $f14, $f20
/* 31E018 802BD2A8 C6220000 */ lwc1 $f2, ($s1)
/* 31E01C 802BD2AC 8E060000 */ lw $a2, ($s0)
/* 31E020 802BD2B0 46001087 */ neg.s $f2, $f2
/* 31E024 802BD2B4 44071000 */ mfc1 $a3, $f2
/* 31E028 802BD2B8 0C00A7B5 */ jal dist2D
/* 31E02C 802BD2BC 46000586 */ mov.s $f22, $f0
/* 31E030 802BD2C0 3C013FF0 */ lui $at, 0x3ff0
/* 31E034 802BD2C4 44811800 */ mtc1 $at, $f3
/* 31E038 802BD2C8 44801000 */ mtc1 $zero, $f2
/* 31E03C 802BD2CC 46000021 */ cvt.d.s $f0, $f0
/* 31E040 802BD2D0 4620103E */ c.le.d $f2, $f0
/* 31E044 802BD2D4 00000000 */ nop
/* 31E048 802BD2D8 45020019 */ bc1fl .L802BD340
/* 31E04C 802BD2DC E6560000 */ swc1 $f22, ($s2)
/* 31E050 802BD2E0 C6000000 */ lwc1 $f0, ($s0)
/* 31E054 802BD2E4 46000002 */ mul.s $f0, $f0, $f0
/* 31E058 802BD2E8 00000000 */ nop
/* 31E05C 802BD2EC C6220000 */ lwc1 $f2, ($s1)
/* 31E060 802BD2F0 46021082 */ mul.s $f2, $f2, $f2
/* 31E064 802BD2F4 00000000 */ nop
/* 31E068 802BD2F8 46020000 */ add.s $f0, $f0, $f2
/* 31E06C 802BD2FC 3C01453D */ lui $at, 0x453d
/* 31E070 802BD300 34211000 */ ori $at, $at, 0x1000
/* 31E074 802BD304 44811000 */ mtc1 $at, $f2
/* 31E078 802BD308 00000000 */ nop
/* 31E07C 802BD30C 4600103C */ c.lt.s $f2, $f0
/* 31E080 802BD310 00000000 */ nop
/* 31E084 802BD314 45000007 */ bc1f .L802BD334
/* 31E088 802BD318 00000000 */ nop
/* 31E08C 802BD31C 3C02802C */ lui $v0, 0x802c
/* 31E090 802BD320 8C42FEE4 */ lw $v0, -0x11c($v0)
/* 31E094 802BD324 3C014080 */ lui $at, 0x4080
/* 31E098 802BD328 4481A000 */ mtc1 $at, $f20
/* 31E09C 802BD32C 50400004 */ beql $v0, $zero, .L802BD340
/* 31E0A0 802BD330 E6560000 */ swc1 $f22, ($s2)
.L802BD334:
/* 31E0A4 802BD334 3C014000 */ lui $at, 0x4000
/* 31E0A8 802BD338 4481A000 */ mtc1 $at, $f20
/* 31E0AC 802BD33C E6560000 */ swc1 $f22, ($s2)
.L802BD340:
/* 31E0B0 802BD340 E6740000 */ swc1 $f20, ($s3)
/* 31E0B4 802BD344 8FBF0020 */ lw $ra, 0x20($sp)
/* 31E0B8 802BD348 8FB3001C */ lw $s3, 0x1c($sp)
/* 31E0BC 802BD34C 8FB20018 */ lw $s2, 0x18($sp)
/* 31E0C0 802BD350 8FB10014 */ lw $s1, 0x14($sp)
/* 31E0C4 802BD354 8FB00010 */ lw $s0, 0x10($sp)
/* 31E0C8 802BD358 D7B60030 */ ldc1 $f22, 0x30($sp)
/* 31E0CC 802BD35C D7B40028 */ ldc1 $f20, 0x28($sp)
/* 31E0D0 802BD360 03E00008 */ jr $ra
/* 31E0D4 802BD364 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,49 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD368
/* 31E0D8 802BD368 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 31E0DC 802BD36C 3C0142C8 */ lui $at, 0x42c8
/* 31E0E0 802BD370 44810000 */ mtc1 $at, $f0
/* 31E0E4 802BD374 44864000 */ mtc1 $a2, $f8
/* 31E0E8 802BD378 C7A40048 */ lwc1 $f4, 0x48($sp)
/* 31E0EC 802BD37C C7A6004C */ lwc1 $f6, 0x4c($sp)
/* 31E0F0 802BD380 27A20020 */ addiu $v0, $sp, 0x20
/* 31E0F4 802BD384 AFB00028 */ sw $s0, 0x28($sp)
/* 31E0F8 802BD388 3C108016 */ lui $s0, 0x8016
/* 31E0FC 802BD38C 2610A550 */ addiu $s0, $s0, -0x5ab0
/* 31E100 802BD390 AFB1002C */ sw $s1, 0x2c($sp)
/* 31E104 802BD394 0200882D */ daddu $s1, $s0, $zero
/* 31E108 802BD398 AFA5003C */ sw $a1, 0x3c($sp)
/* 31E10C 802BD39C 27A5003C */ addiu $a1, $sp, 0x3c
/* 31E110 802BD3A0 AFA70044 */ sw $a3, 0x44($sp)
/* 31E114 802BD3A4 27A70044 */ addiu $a3, $sp, 0x44
/* 31E118 802BD3A8 AFBF0030 */ sw $ra, 0x30($sp)
/* 31E11C 802BD3AC AFA60040 */ sw $a2, 0x40($sp)
/* 31E120 802BD3B0 46004080 */ add.s $f2, $f8, $f0
/* 31E124 802BD3B4 3C014348 */ lui $at, 0x4348
/* 31E128 802BD3B8 44810000 */ mtc1 $at, $f0
/* 31E12C 802BD3BC 27A60040 */ addiu $a2, $sp, 0x40
/* 31E130 802BD3C0 E7A20040 */ swc1 $f2, 0x40($sp)
/* 31E134 802BD3C4 E7A00020 */ swc1 $f0, 0x20($sp)
/* 31E138 802BD3C8 AFA20010 */ sw $v0, 0x10($sp)
/* 31E13C 802BD3CC E7A40014 */ swc1 $f4, 0x14($sp)
/* 31E140 802BD3D0 0C0371DE */ jal func_800DC778
/* 31E144 802BD3D4 E7A60018 */ swc1 $f6, 0x18($sp)
/* 31E148 802BD3D8 14400003 */ bnez $v0, .L802BD3E8
/* 31E14C 802BD3DC 2402FFFF */ addiu $v0, $zero, -1
/* 31E150 802BD3E0 080AF500 */ j .L802BD400
/* 31E154 802BD3E4 A6020002 */ sh $v0, 2($s0)
.L802BD3E8:
/* 31E158 802BD3E8 3C028011 */ lui $v0, 0x8011
/* 31E15C 802BD3EC 9442C97A */ lhu $v0, -0x3686($v0)
/* 31E160 802BD3F0 A6220002 */ sh $v0, 2($s1)
/* 31E164 802BD3F4 C7A00040 */ lwc1 $f0, 0x40($sp)
/* 31E168 802BD3F8 3C01802C */ lui $at, 0x802c
/* 31E16C 802BD3FC E420FEE0 */ swc1 $f0, -0x120($at)
.L802BD400:
/* 31E170 802BD400 8FBF0030 */ lw $ra, 0x30($sp)
/* 31E174 802BD404 8FB1002C */ lw $s1, 0x2c($sp)
/* 31E178 802BD408 8FB00028 */ lw $s0, 0x28($sp)
/* 31E17C 802BD40C 03E00008 */ jr $ra
/* 31E180 802BD410 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,961 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD414
/* 31E184 802BD414 27BDFF80 */ addiu $sp, $sp, -0x80
/* 31E188 802BD418 AFB00040 */ sw $s0, 0x40($sp)
/* 31E18C 802BD41C 0080802D */ daddu $s0, $a0, $zero
/* 31E190 802BD420 27A40020 */ addiu $a0, $sp, 0x20
/* 31E194 802BD424 AFBF0058 */ sw $ra, 0x58($sp)
/* 31E198 802BD428 AFB50054 */ sw $s5, 0x54($sp)
/* 31E19C 802BD42C AFB40050 */ sw $s4, 0x50($sp)
/* 31E1A0 802BD430 AFB3004C */ sw $s3, 0x4c($sp)
/* 31E1A4 802BD434 AFB20048 */ sw $s2, 0x48($sp)
/* 31E1A8 802BD438 AFB10044 */ sw $s1, 0x44($sp)
/* 31E1AC 802BD43C F7BA0078 */ sdc1 $f26, 0x78($sp)
/* 31E1B0 802BD440 F7B80070 */ sdc1 $f24, 0x70($sp)
/* 31E1B4 802BD444 F7B60068 */ sdc1 $f22, 0x68($sp)
/* 31E1B8 802BD448 F7B40060 */ sdc1 $f20, 0x60($sp)
/* 31E1BC 802BD44C 0C0AF483 */ jal func_802BD20C
/* 31E1C0 802BD450 27A50024 */ addiu $a1, $sp, 0x24
/* 31E1C4 802BD454 3C148011 */ lui $s4, %hi(gPlayerStatus)
/* 31E1C8 802BD458 2694EFC8 */ addiu $s4, $s4, %lo(gPlayerStatus)
/* 31E1CC 802BD45C 3C158011 */ lui $s5, %hi(D_8010EBB0)
/* 31E1D0 802BD460 26B5EBB0 */ addiu $s5, $s5, %lo(D_8010EBB0)
/* 31E1D4 802BD464 3C118016 */ lui $s1, 0x8016
/* 31E1D8 802BD468 2631A550 */ addiu $s1, $s1, -0x5ab0
/* 31E1DC 802BD46C 3C02802C */ lui $v0, 0x802c
/* 31E1E0 802BD470 8C42FEE4 */ lw $v0, -0x11c($v0)
/* 31E1E4 802BD474 3C014200 */ lui $at, 0x4200
/* 31E1E8 802BD478 4481A000 */ mtc1 $at, $f20
/* 31E1EC 802BD47C 10400003 */ beqz $v0, .L802BD48C
/* 31E1F0 802BD480 00000000 */ nop
/* 31E1F4 802BD484 3C0142A0 */ lui $at, 0x42a0
/* 31E1F8 802BD488 4481A000 */ mtc1 $at, $f20
.L802BD48C:
/* 31E1FC 802BD48C C7A00024 */ lwc1 $f0, 0x24($sp)
/* 31E200 802BD490 44803000 */ mtc1 $zero, $f6
/* 31E204 802BD494 00000000 */ nop
/* 31E208 802BD498 46060032 */ c.eq.s $f0, $f6
/* 31E20C 802BD49C 00000000 */ nop
/* 31E210 802BD4A0 45010095 */ bc1t .L802BD6F8
/* 31E214 802BD4A4 00000000 */ nop
/* 31E218 802BD4A8 3C02802C */ lui $v0, 0x802c
/* 31E21C 802BD4AC 2442FDB8 */ addiu $v0, $v0, -0x248
/* 31E220 802BD4B0 3C01802C */ lui $at, 0x802c
/* 31E224 802BD4B4 C422FDB0 */ lwc1 $f2, -0x250($at)
/* 31E228 802BD4B8 C4440000 */ lwc1 $f4, ($v0)
/* 31E22C 802BD4BC 46041002 */ mul.s $f0, $f2, $f4
/* 31E230 802BD4C0 00000000 */ nop
/* 31E234 802BD4C4 3C014100 */ lui $at, 0x4100
/* 31E238 802BD4C8 44815000 */ mtc1 $at, $f10
/* 31E23C 802BD4CC 3C014200 */ lui $at, 0x4200
/* 31E240 802BD4D0 44814000 */ mtc1 $at, $f8
/* 31E244 802BD4D4 4600303C */ c.lt.s $f6, $f0
/* 31E248 802BD4D8 00000000 */ nop
/* 31E24C 802BD4DC 45020002 */ bc1fl .L802BD4E8
/* 31E250 802BD4E0 460A1003 */ div.s $f0, $f2, $f10
/* 31E254 802BD4E4 46081003 */ div.s $f0, $f2, $f8
.L802BD4E8:
/* 31E258 802BD4E8 46002000 */ add.s $f0, $f4, $f0
/* 31E25C 802BD4EC E4400000 */ swc1 $f0, ($v0)
/* 31E260 802BD4F0 3C01802C */ lui $at, 0x802c
/* 31E264 802BD4F4 C422FDB0 */ lwc1 $f2, -0x250($at)
/* 31E268 802BD4F8 44800000 */ mtc1 $zero, $f0
/* 31E26C 802BD4FC 00000000 */ nop
/* 31E270 802BD500 4602003C */ c.lt.s $f0, $f2
/* 31E274 802BD504 00000000 */ nop
/* 31E278 802BD508 45000007 */ bc1f .L802BD528
/* 31E27C 802BD50C 00000000 */ nop
/* 31E280 802BD510 3C02802C */ lui $v0, 0x802c
/* 31E284 802BD514 2442FDB8 */ addiu $v0, $v0, -0x248
/* 31E288 802BD518 C4400000 */ lwc1 $f0, ($v0)
/* 31E28C 802BD51C 4600103C */ c.lt.s $f2, $f0
/* 31E290 802BD520 080AF54F */ j .L802BD53C
/* 31E294 802BD524 00000000 */ nop
.L802BD528:
/* 31E298 802BD528 3C02802C */ lui $v0, 0x802c
/* 31E29C 802BD52C 2442FDB8 */ addiu $v0, $v0, -0x248
/* 31E2A0 802BD530 C4400000 */ lwc1 $f0, ($v0)
/* 31E2A4 802BD534 4602003C */ c.lt.s $f0, $f2
/* 31E2A8 802BD538 00000000 */ nop
.L802BD53C:
/* 31E2AC 802BD53C 45030001 */ bc1tl .L802BD544
/* 31E2B0 802BD540 E4420000 */ swc1 $f2, ($v0)
.L802BD544:
/* 31E2B4 802BD544 3C02802C */ lui $v0, 0x802c
/* 31E2B8 802BD548 2442FDBC */ addiu $v0, $v0, -0x244
/* 31E2BC 802BD54C 3C01802C */ lui $at, 0x802c
/* 31E2C0 802BD550 C424FDB4 */ lwc1 $f4, -0x24c($at)
/* 31E2C4 802BD554 C4460000 */ lwc1 $f6, ($v0)
/* 31E2C8 802BD558 46062082 */ mul.s $f2, $f4, $f6
/* 31E2CC 802BD55C 00000000 */ nop
/* 31E2D0 802BD560 44800000 */ mtc1 $zero, $f0
/* 31E2D4 802BD564 00000000 */ nop
/* 31E2D8 802BD568 4602003C */ c.lt.s $f0, $f2
/* 31E2DC 802BD56C 00000000 */ nop
/* 31E2E0 802BD570 45020002 */ bc1fl .L802BD57C
/* 31E2E4 802BD574 460A2003 */ div.s $f0, $f4, $f10
/* 31E2E8 802BD578 46082003 */ div.s $f0, $f4, $f8
.L802BD57C:
/* 31E2EC 802BD57C 46003000 */ add.s $f0, $f6, $f0
/* 31E2F0 802BD580 E4400000 */ swc1 $f0, ($v0)
/* 31E2F4 802BD584 3C01802C */ lui $at, 0x802c
/* 31E2F8 802BD588 C422FDB4 */ lwc1 $f2, -0x24c($at)
/* 31E2FC 802BD58C 44800000 */ mtc1 $zero, $f0
/* 31E300 802BD590 00000000 */ nop
/* 31E304 802BD594 4602003C */ c.lt.s $f0, $f2
/* 31E308 802BD598 00000000 */ nop
/* 31E30C 802BD59C 45000007 */ bc1f .L802BD5BC
/* 31E310 802BD5A0 00000000 */ nop
/* 31E314 802BD5A4 3C02802C */ lui $v0, 0x802c
/* 31E318 802BD5A8 2442FDBC */ addiu $v0, $v0, -0x244
/* 31E31C 802BD5AC C4400000 */ lwc1 $f0, ($v0)
/* 31E320 802BD5B0 4600103C */ c.lt.s $f2, $f0
/* 31E324 802BD5B4 080AF574 */ j .L802BD5D0
/* 31E328 802BD5B8 00000000 */ nop
.L802BD5BC:
/* 31E32C 802BD5BC 3C02802C */ lui $v0, 0x802c
/* 31E330 802BD5C0 2442FDBC */ addiu $v0, $v0, -0x244
/* 31E334 802BD5C4 C4400000 */ lwc1 $f0, ($v0)
/* 31E338 802BD5C8 4602003C */ c.lt.s $f0, $f2
/* 31E33C 802BD5CC 00000000 */ nop
.L802BD5D0:
/* 31E340 802BD5D0 45030001 */ bc1tl .L802BD5D8
/* 31E344 802BD5D4 E4420000 */ swc1 $f2, ($v0)
.L802BD5D8:
/* 31E348 802BD5D8 3C06802C */ lui $a2, 0x802c
/* 31E34C 802BD5DC 8CC6FDB8 */ lw $a2, -0x248($a2)
/* 31E350 802BD5E0 3C01802C */ lui $at, 0x802c
/* 31E354 802BD5E4 C420FDBC */ lwc1 $f0, -0x244($at)
/* 31E358 802BD5E8 44806000 */ mtc1 $zero, $f12
/* 31E35C 802BD5EC 46000007 */ neg.s $f0, $f0
/* 31E360 802BD5F0 44070000 */ mfc1 $a3, $f0
/* 31E364 802BD5F4 0C00A720 */ jal atan2
/* 31E368 802BD5F8 46006386 */ mov.s $f14, $f12
/* 31E36C 802BD5FC 3C01800B */ lui $at, 0x800b
/* 31E370 802BD600 C42C1DEC */ lwc1 $f12, 0x1dec($at)
/* 31E374 802BD604 0C00A6C9 */ jal clamp_angle
/* 31E378 802BD608 460C0300 */ add.s $f12, $f0, $f12
/* 31E37C 802BD60C 3C02802C */ lui $v0, 0x802c
/* 31E380 802BD610 2442FEF8 */ addiu $v0, $v0, -0x108
/* 31E384 802BD614 C4420000 */ lwc1 $f2, ($v0)
/* 31E388 802BD618 C7A40024 */ lwc1 $f4, 0x24($sp)
/* 31E38C 802BD61C 4604103E */ c.le.s $f2, $f4
/* 31E390 802BD620 00000000 */ nop
/* 31E394 802BD624 4500000A */ bc1f .L802BD650
/* 31E398 802BD628 E7A00020 */ swc1 $f0, 0x20($sp)
/* 31E39C 802BD62C 46022001 */ sub.s $f0, $f4, $f2
/* 31E3A0 802BD630 46140003 */ div.s $f0, $f0, $f20
/* 31E3A4 802BD634 46001000 */ add.s $f0, $f2, $f0
/* 31E3A8 802BD638 4600203C */ c.lt.s $f4, $f0
/* 31E3AC 802BD63C 00000000 */ nop
/* 31E3B0 802BD640 45000007 */ bc1f .L802BD660
/* 31E3B4 802BD644 E4400000 */ swc1 $f0, ($v0)
/* 31E3B8 802BD648 080AF598 */ j .L802BD660
/* 31E3BC 802BD64C E4440000 */ swc1 $f4, ($v0)
.L802BD650:
/* 31E3C0 802BD650 46022001 */ sub.s $f0, $f4, $f2
/* 31E3C4 802BD654 46140003 */ div.s $f0, $f0, $f20
/* 31E3C8 802BD658 46001000 */ add.s $f0, $f2, $f0
/* 31E3CC 802BD65C E4400000 */ swc1 $f0, ($v0)
.L802BD660:
/* 31E3D0 802BD660 27A50028 */ addiu $a1, $sp, 0x28
/* 31E3D4 802BD664 C7A40020 */ lwc1 $f4, 0x20($sp)
/* 31E3D8 802BD668 3C0140C9 */ lui $at, 0x40c9
/* 31E3DC 802BD66C 34210FD0 */ ori $at, $at, 0xfd0
/* 31E3E0 802BD670 44816000 */ mtc1 $at, $f12
/* 31E3E4 802BD674 3C01802C */ lui $at, 0x802c
/* 31E3E8 802BD678 C420FEF8 */ lwc1 $f0, -0x108($at)
/* 31E3EC 802BD67C 460C2302 */ mul.s $f12, $f4, $f12
/* 31E3F0 802BD680 00000000 */ nop
/* 31E3F4 802BD684 3C0143B4 */ lui $at, 0x43b4
/* 31E3F8 802BD688 44811000 */ mtc1 $at, $f2
/* 31E3FC 802BD68C 27A6002C */ addiu $a2, $sp, 0x2c
/* 31E400 802BD690 E7A00024 */ swc1 $f0, 0x24($sp)
/* 31E404 802BD694 3C01802C */ lui $at, 0x802c
/* 31E408 802BD698 E424FEFC */ swc1 $f4, -0x104($at)
/* 31E40C 802BD69C 0C00A82D */ jal sin_cos_rad
/* 31E410 802BD6A0 46026303 */ div.s $f12, $f12, $f2
/* 31E414 802BD6A4 C7A00024 */ lwc1 $f0, 0x24($sp)
/* 31E418 802BD6A8 C7A20028 */ lwc1 $f2, 0x28($sp)
/* 31E41C 802BD6AC 46020082 */ mul.s $f2, $f0, $f2
/* 31E420 802BD6B0 00000000 */ nop
/* 31E424 802BD6B4 C7A4002C */ lwc1 $f4, 0x2c($sp)
/* 31E428 802BD6B8 46000007 */ neg.s $f0, $f0
/* 31E42C 802BD6BC 46040002 */ mul.s $f0, $f0, $f4
/* 31E430 802BD6C0 00000000 */ nop
/* 31E434 802BD6C4 3C03802C */ lui $v1, 0x802c
/* 31E438 802BD6C8 2463FF00 */ addiu $v1, $v1, -0x100
/* 31E43C 802BD6CC 3C02802C */ lui $v0, 0x802c
/* 31E440 802BD6D0 2442FF04 */ addiu $v0, $v0, -0xfc
/* 31E444 802BD6D4 C4640000 */ lwc1 $f4, ($v1)
/* 31E448 802BD6D8 46141083 */ div.s $f2, $f2, $f20
/* 31E44C 802BD6DC 46022100 */ add.s $f4, $f4, $f2
/* 31E450 802BD6E0 C4420000 */ lwc1 $f2, ($v0)
/* 31E454 802BD6E4 46140003 */ div.s $f0, $f0, $f20
/* 31E458 802BD6E8 46001080 */ add.s $f2, $f2, $f0
/* 31E45C 802BD6EC E4640000 */ swc1 $f4, ($v1)
/* 31E460 802BD6F0 080AF5EB */ j .L802BD7AC
/* 31E464 802BD6F4 E4420000 */ swc1 $f2, ($v0)
.L802BD6F8:
/* 31E468 802BD6F8 3C02802C */ lui $v0, 0x802c
/* 31E46C 802BD6FC 2442FEF8 */ addiu $v0, $v0, -0x108
/* 31E470 802BD700 C4400000 */ lwc1 $f0, ($v0)
/* 31E474 802BD704 3C01802C */ lui $at, 0x802c
/* 31E478 802BD708 D422FE50 */ ldc1 $f2, -0x1b0($at)
/* 31E47C 802BD70C 46000021 */ cvt.d.s $f0, $f0
/* 31E480 802BD710 46220001 */ sub.d $f0, $f0, $f2
/* 31E484 802BD714 46200020 */ cvt.s.d $f0, $f0
/* 31E488 802BD718 4606003C */ c.lt.s $f0, $f6
/* 31E48C 802BD71C 00000000 */ nop
/* 31E490 802BD720 45000006 */ bc1f .L802BD73C
/* 31E494 802BD724 E4400000 */ swc1 $f0, ($v0)
/* 31E498 802BD728 E4460000 */ swc1 $f6, ($v0)
/* 31E49C 802BD72C 3C01802C */ lui $at, 0x802c
/* 31E4A0 802BD730 E426FDBC */ swc1 $f6, -0x244($at)
/* 31E4A4 802BD734 3C01802C */ lui $at, 0x802c
/* 31E4A8 802BD738 E426FDB8 */ swc1 $f6, -0x248($at)
.L802BD73C:
/* 31E4AC 802BD73C 27A50028 */ addiu $a1, $sp, 0x28
/* 31E4B0 802BD740 3C01802C */ lui $at, 0x802c
/* 31E4B4 802BD744 C424FEFC */ lwc1 $f4, -0x104($at)
/* 31E4B8 802BD748 3C0140C9 */ lui $at, 0x40c9
/* 31E4BC 802BD74C 34210FD0 */ ori $at, $at, 0xfd0
/* 31E4C0 802BD750 44816000 */ mtc1 $at, $f12
/* 31E4C4 802BD754 C4400000 */ lwc1 $f0, ($v0)
/* 31E4C8 802BD758 460C2302 */ mul.s $f12, $f4, $f12
/* 31E4CC 802BD75C 00000000 */ nop
/* 31E4D0 802BD760 3C0143B4 */ lui $at, 0x43b4
/* 31E4D4 802BD764 44811000 */ mtc1 $at, $f2
/* 31E4D8 802BD768 27A6002C */ addiu $a2, $sp, 0x2c
/* 31E4DC 802BD76C E7A00024 */ swc1 $f0, 0x24($sp)
/* 31E4E0 802BD770 E7A40020 */ swc1 $f4, 0x20($sp)
/* 31E4E4 802BD774 0C00A82D */ jal sin_cos_rad
/* 31E4E8 802BD778 46026303 */ div.s $f12, $f12, $f2
/* 31E4EC 802BD77C C7A00024 */ lwc1 $f0, 0x24($sp)
/* 31E4F0 802BD780 C7A20028 */ lwc1 $f2, 0x28($sp)
/* 31E4F4 802BD784 46020082 */ mul.s $f2, $f0, $f2
/* 31E4F8 802BD788 00000000 */ nop
/* 31E4FC 802BD78C C7A4002C */ lwc1 $f4, 0x2c($sp)
/* 31E500 802BD790 46000007 */ neg.s $f0, $f0
/* 31E504 802BD794 46040002 */ mul.s $f0, $f0, $f4
/* 31E508 802BD798 00000000 */ nop
/* 31E50C 802BD79C 3C01802C */ lui $at, 0x802c
/* 31E510 802BD7A0 E422FF00 */ swc1 $f2, -0x100($at)
/* 31E514 802BD7A4 3C01802C */ lui $at, 0x802c
/* 31E518 802BD7A8 E420FF04 */ swc1 $f0, -0xfc($at)
.L802BD7AC:
/* 31E51C 802BD7AC C7A20024 */ lwc1 $f2, 0x24($sp)
/* 31E520 802BD7B0 44800000 */ mtc1 $zero, $f0
/* 31E524 802BD7B4 00000000 */ nop
/* 31E528 802BD7B8 46001032 */ c.eq.s $f2, $f0
/* 31E52C 802BD7BC 00000000 */ nop
/* 31E530 802BD7C0 450100D6 */ bc1t .L802BDB1C
/* 31E534 802BD7C4 E6020018 */ swc1 $f2, 0x18($s0)
/* 31E538 802BD7C8 860200A8 */ lh $v0, 0xa8($s0)
/* 31E53C 802BD7CC 3C013F00 */ lui $at, 0x3f00
/* 31E540 802BD7D0 44810000 */ mtc1 $at, $f0
/* 31E544 802BD7D4 C7AA0020 */ lwc1 $f10, 0x20($sp)
/* 31E548 802BD7D8 C6080038 */ lwc1 $f8, 0x38($s0)
/* 31E54C 802BD7DC 44823000 */ mtc1 $v0, $f6
/* 31E550 802BD7E0 00000000 */ nop
/* 31E554 802BD7E4 468031A0 */ cvt.s.w $f6, $f6
/* 31E558 802BD7E8 46003182 */ mul.s $f6, $f6, $f0
/* 31E55C 802BD7EC 00000000 */ nop
/* 31E560 802BD7F0 E60A000C */ swc1 $f10, 0xc($s0)
/* 31E564 802BD7F4 868200B0 */ lh $v0, 0xb0($s4)
/* 31E568 802BD7F8 3C013F4C */ lui $at, 0x3f4c
/* 31E56C 802BD7FC 3421CCCD */ ori $at, $at, 0xcccd
/* 31E570 802BD800 44810000 */ mtc1 $at, $f0
/* 31E574 802BD804 44821000 */ mtc1 $v0, $f2
/* 31E578 802BD808 00000000 */ nop
/* 31E57C 802BD80C 468010A0 */ cvt.s.w $f2, $f2
/* 31E580 802BD810 46001082 */ mul.s $f2, $f2, $f0
/* 31E584 802BD814 00000000 */ nop
/* 31E588 802BD818 3C01C0C0 */ lui $at, 0xc0c0
/* 31E58C 802BD81C 44812000 */ mtc1 $at, $f4
/* 31E590 802BD820 C6000064 */ lwc1 $f0, 0x64($s0)
/* 31E594 802BD824 27A50030 */ addiu $a1, $sp, 0x30
/* 31E598 802BD828 E7A80030 */ swc1 $f8, 0x30($sp)
/* 31E59C 802BD82C 46040000 */ add.s $f0, $f0, $f4
/* 31E5A0 802BD830 C6080018 */ lwc1 $f8, 0x18($s0)
/* 31E5A4 802BD834 C6040040 */ lwc1 $f4, 0x40($s0)
/* 31E5A8 802BD838 46023180 */ add.s $f6, $f6, $f2
/* 31E5AC 802BD83C E7A40038 */ swc1 $f4, 0x38($sp)
/* 31E5B0 802BD840 E7A00034 */ swc1 $f0, 0x34($sp)
/* 31E5B4 802BD844 E7A6003C */ swc1 $f6, 0x3c($sp)
/* 31E5B8 802BD848 E7A80010 */ swc1 $f8, 0x10($sp)
/* 31E5BC 802BD84C E7AA0014 */ swc1 $f10, 0x14($sp)
/* 31E5C0 802BD850 E7A60018 */ swc1 $f6, 0x18($sp)
/* 31E5C4 802BD854 860200A6 */ lh $v0, 0xa6($s0)
/* 31E5C8 802BD858 27A60034 */ addiu $a2, $sp, 0x34
/* 31E5CC 802BD85C 44820000 */ mtc1 $v0, $f0
/* 31E5D0 802BD860 00000000 */ nop
/* 31E5D4 802BD864 46800020 */ cvt.s.w $f0, $f0
/* 31E5D8 802BD868 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 31E5DC 802BD86C 8E040080 */ lw $a0, 0x80($s0)
/* 31E5E0 802BD870 0C0376B9 */ jal func_800DDAE4
/* 31E5E4 802BD874 27A70038 */ addiu $a3, $sp, 0x38
/* 31E5E8 802BD878 10400025 */ beqz $v0, .L802BD910
/* 31E5EC 802BD87C 00000000 */ nop
/* 31E5F0 802BD880 3C028011 */ lui $v0, 0x8011
/* 31E5F4 802BD884 2442C978 */ addiu $v0, $v0, -0x3688
/* 31E5F8 802BD888 8C440000 */ lw $a0, ($v0)
/* 31E5FC 802BD88C 94420002 */ lhu $v0, 2($v0)
/* 31E600 802BD890 0C016F6A */ jal get_collider_type_by_id
/* 31E604 802BD894 A6220000 */ sh $v0, ($s1)
/* 31E608 802BD898 304200FF */ andi $v0, $v0, 0xff
/* 31E60C 802BD89C 24030004 */ addiu $v1, $zero, 4
/* 31E610 802BD8A0 14430007 */ bne $v0, $v1, .L802BD8C0
/* 31E614 802BD8A4 00000000 */ nop
/* 31E618 802BD8A8 3C03802C */ lui $v1, 0x802c
/* 31E61C 802BD8AC 2463FEF0 */ addiu $v1, $v1, -0x110
/* 31E620 802BD8B0 8C620000 */ lw $v0, ($v1)
/* 31E624 802BD8B4 24420001 */ addiu $v0, $v0, 1
/* 31E628 802BD8B8 080AF632 */ j .L802BD8C8
/* 31E62C 802BD8BC AC620000 */ sw $v0, ($v1)
.L802BD8C0:
/* 31E630 802BD8C0 3C01802C */ lui $at, 0x802c
/* 31E634 802BD8C4 AC20FEF0 */ sw $zero, -0x110($at)
.L802BD8C8:
/* 31E638 802BD8C8 C7A40030 */ lwc1 $f4, 0x30($sp)
/* 31E63C 802BD8CC C6060038 */ lwc1 $f6, 0x38($s0)
/* 31E640 802BD8D0 46062101 */ sub.s $f4, $f4, $f6
/* 31E644 802BD8D4 3C013F00 */ lui $at, 0x3f00
/* 31E648 802BD8D8 44814000 */ mtc1 $at, $f8
/* 31E64C 802BD8DC 00000000 */ nop
/* 31E650 802BD8E0 46082102 */ mul.s $f4, $f4, $f8
/* 31E654 802BD8E4 00000000 */ nop
/* 31E658 802BD8E8 C7A00038 */ lwc1 $f0, 0x38($sp)
/* 31E65C 802BD8EC C6020040 */ lwc1 $f2, 0x40($s0)
/* 31E660 802BD8F0 46020001 */ sub.s $f0, $f0, $f2
/* 31E664 802BD8F4 46080002 */ mul.s $f0, $f0, $f8
/* 31E668 802BD8F8 00000000 */ nop
/* 31E66C 802BD8FC 46043180 */ add.s $f6, $f6, $f4
/* 31E670 802BD900 46001080 */ add.s $f2, $f2, $f0
/* 31E674 802BD904 E6060038 */ swc1 $f6, 0x38($s0)
/* 31E678 802BD908 080AF64A */ j .L802BD928
/* 31E67C 802BD90C E6020040 */ swc1 $f2, 0x40($s0)
.L802BD910:
/* 31E680 802BD910 8FA50024 */ lw $a1, 0x24($sp)
/* 31E684 802BD914 8FA60020 */ lw $a2, 0x20($sp)
/* 31E688 802BD918 0C00EA95 */ jal npc_move_heading
/* 31E68C 802BD91C 0200202D */ daddu $a0, $s0, $zero
/* 31E690 802BD920 2402FFFF */ addiu $v0, $zero, -1
/* 31E694 802BD924 A6220000 */ sh $v0, ($s1)
.L802BD928:
/* 31E698 802BD928 C60C000C */ lwc1 $f12, 0xc($s0)
/* 31E69C 802BD92C 3C0141F0 */ lui $at, 0x41f0
/* 31E6A0 802BD930 4481D000 */ mtc1 $at, $f26
/* 31E6A4 802BD934 3C014000 */ lui $at, 0x4000
/* 31E6A8 802BD938 44810000 */ mtc1 $at, $f0
/* 31E6AC 802BD93C 461A6301 */ sub.s $f12, $f12, $f26
/* 31E6B0 802BD940 0C00A6C9 */ jal clamp_angle
/* 31E6B4 802BD944 E7A00024 */ swc1 $f0, 0x24($sp)
/* 31E6B8 802BD948 27B30030 */ addiu $s3, $sp, 0x30
/* 31E6BC 802BD94C 0260282D */ daddu $a1, $s3, $zero
/* 31E6C0 802BD950 27B20034 */ addiu $s2, $sp, 0x34
/* 31E6C4 802BD954 860200A8 */ lh $v0, 0xa8($s0)
/* 31E6C8 802BD958 3C013F00 */ lui $at, 0x3f00
/* 31E6CC 802BD95C 4481C000 */ mtc1 $at, $f24
/* 31E6D0 802BD960 44824000 */ mtc1 $v0, $f8
/* 31E6D4 802BD964 00000000 */ nop
/* 31E6D8 802BD968 46804220 */ cvt.s.w $f8, $f8
/* 31E6DC 802BD96C 46184202 */ mul.s $f8, $f8, $f24
/* 31E6E0 802BD970 00000000 */ nop
/* 31E6E4 802BD974 0240302D */ daddu $a2, $s2, $zero
/* 31E6E8 802BD978 868200B0 */ lh $v0, 0xb0($s4)
/* 31E6EC 802BD97C 3C013F4C */ lui $at, 0x3f4c
/* 31E6F0 802BD980 3421CCCD */ ori $at, $at, 0xcccd
/* 31E6F4 802BD984 4481A000 */ mtc1 $at, $f20
/* 31E6F8 802BD988 44822000 */ mtc1 $v0, $f4
/* 31E6FC 802BD98C 00000000 */ nop
/* 31E700 802BD990 46802120 */ cvt.s.w $f4, $f4
/* 31E704 802BD994 46142102 */ mul.s $f4, $f4, $f20
/* 31E708 802BD998 00000000 */ nop
/* 31E70C 802BD99C C6060038 */ lwc1 $f6, 0x38($s0)
/* 31E710 802BD9A0 C6020064 */ lwc1 $f2, 0x64($s0)
/* 31E714 802BD9A4 3C01C0C0 */ lui $at, 0xc0c0
/* 31E718 802BD9A8 4481B000 */ mtc1 $at, $f22
/* 31E71C 802BD9AC C7AA0024 */ lwc1 $f10, 0x24($sp)
/* 31E720 802BD9B0 46161080 */ add.s $f2, $f2, $f22
/* 31E724 802BD9B4 E7A00020 */ swc1 $f0, 0x20($sp)
/* 31E728 802BD9B8 E7A60030 */ swc1 $f6, 0x30($sp)
/* 31E72C 802BD9BC C6060040 */ lwc1 $f6, 0x40($s0)
/* 31E730 802BD9C0 46044200 */ add.s $f8, $f8, $f4
/* 31E734 802BD9C4 E7A60038 */ swc1 $f6, 0x38($sp)
/* 31E738 802BD9C8 E7A20034 */ swc1 $f2, 0x34($sp)
/* 31E73C 802BD9CC E7A8003C */ swc1 $f8, 0x3c($sp)
/* 31E740 802BD9D0 E7AA0010 */ swc1 $f10, 0x10($sp)
/* 31E744 802BD9D4 E7A00014 */ swc1 $f0, 0x14($sp)
/* 31E748 802BD9D8 E7A80018 */ swc1 $f8, 0x18($sp)
/* 31E74C 802BD9DC 860200A6 */ lh $v0, 0xa6($s0)
/* 31E750 802BD9E0 27B10038 */ addiu $s1, $sp, 0x38
/* 31E754 802BD9E4 44820000 */ mtc1 $v0, $f0
/* 31E758 802BD9E8 00000000 */ nop
/* 31E75C 802BD9EC 46800020 */ cvt.s.w $f0, $f0
/* 31E760 802BD9F0 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 31E764 802BD9F4 8E040080 */ lw $a0, 0x80($s0)
/* 31E768 802BD9F8 0C0376B9 */ jal func_800DDAE4
/* 31E76C 802BD9FC 0220382D */ daddu $a3, $s1, $zero
/* 31E770 802BDA00 1040000F */ beqz $v0, .L802BDA40
/* 31E774 802BDA04 00000000 */ nop
/* 31E778 802BDA08 C7A00030 */ lwc1 $f0, 0x30($sp)
/* 31E77C 802BDA0C C6060038 */ lwc1 $f6, 0x38($s0)
/* 31E780 802BDA10 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 31E784 802BDA14 46060001 */ sub.s $f0, $f0, $f6
/* 31E788 802BDA18 C6040040 */ lwc1 $f4, 0x40($s0)
/* 31E78C 802BDA1C 3C0140A0 */ lui $at, 0x40a0
/* 31E790 802BDA20 44814000 */ mtc1 $at, $f8
/* 31E794 802BDA24 46041081 */ sub.s $f2, $f2, $f4
/* 31E798 802BDA28 46080003 */ div.s $f0, $f0, $f8
/* 31E79C 802BDA2C 46003180 */ add.s $f6, $f6, $f0
/* 31E7A0 802BDA30 46081083 */ div.s $f2, $f2, $f8
/* 31E7A4 802BDA34 46022100 */ add.s $f4, $f4, $f2
/* 31E7A8 802BDA38 E6060038 */ swc1 $f6, 0x38($s0)
/* 31E7AC 802BDA3C E6040040 */ swc1 $f4, 0x40($s0)
.L802BDA40:
/* 31E7B0 802BDA40 C60C000C */ lwc1 $f12, 0xc($s0)
/* 31E7B4 802BDA44 0C00A6C9 */ jal clamp_angle
/* 31E7B8 802BDA48 461A6300 */ add.s $f12, $f12, $f26
/* 31E7BC 802BDA4C 860200A8 */ lh $v0, 0xa8($s0)
/* 31E7C0 802BDA50 44823000 */ mtc1 $v0, $f6
/* 31E7C4 802BDA54 00000000 */ nop
/* 31E7C8 802BDA58 468031A0 */ cvt.s.w $f6, $f6
/* 31E7CC 802BDA5C 46183182 */ mul.s $f6, $f6, $f24
/* 31E7D0 802BDA60 00000000 */ nop
/* 31E7D4 802BDA64 868200B0 */ lh $v0, 0xb0($s4)
/* 31E7D8 802BDA68 44822000 */ mtc1 $v0, $f4
/* 31E7DC 802BDA6C 00000000 */ nop
/* 31E7E0 802BDA70 46802120 */ cvt.s.w $f4, $f4
/* 31E7E4 802BDA74 46142102 */ mul.s $f4, $f4, $f20
/* 31E7E8 802BDA78 00000000 */ nop
/* 31E7EC 802BDA7C 0260282D */ daddu $a1, $s3, $zero
/* 31E7F0 802BDA80 C6080038 */ lwc1 $f8, 0x38($s0)
/* 31E7F4 802BDA84 C6020064 */ lwc1 $f2, 0x64($s0)
/* 31E7F8 802BDA88 C7AA0024 */ lwc1 $f10, 0x24($sp)
/* 31E7FC 802BDA8C 46161080 */ add.s $f2, $f2, $f22
/* 31E800 802BDA90 E7A00020 */ swc1 $f0, 0x20($sp)
/* 31E804 802BDA94 E7A80030 */ swc1 $f8, 0x30($sp)
/* 31E808 802BDA98 C6080040 */ lwc1 $f8, 0x40($s0)
/* 31E80C 802BDA9C 46043180 */ add.s $f6, $f6, $f4
/* 31E810 802BDAA0 E7A80038 */ swc1 $f8, 0x38($sp)
/* 31E814 802BDAA4 E7A20034 */ swc1 $f2, 0x34($sp)
/* 31E818 802BDAA8 E7A6003C */ swc1 $f6, 0x3c($sp)
/* 31E81C 802BDAAC E7AA0010 */ swc1 $f10, 0x10($sp)
/* 31E820 802BDAB0 E7A00014 */ swc1 $f0, 0x14($sp)
/* 31E824 802BDAB4 E7A60018 */ swc1 $f6, 0x18($sp)
/* 31E828 802BDAB8 860200A6 */ lh $v0, 0xa6($s0)
/* 31E82C 802BDABC 0240302D */ daddu $a2, $s2, $zero
/* 31E830 802BDAC0 44820000 */ mtc1 $v0, $f0
/* 31E834 802BDAC4 00000000 */ nop
/* 31E838 802BDAC8 46800020 */ cvt.s.w $f0, $f0
/* 31E83C 802BDACC E7A0001C */ swc1 $f0, 0x1c($sp)
/* 31E840 802BDAD0 8E040080 */ lw $a0, 0x80($s0)
/* 31E844 802BDAD4 0C0376B9 */ jal func_800DDAE4
/* 31E848 802BDAD8 0220382D */ daddu $a3, $s1, $zero
/* 31E84C 802BDADC 1040000F */ beqz $v0, .L802BDB1C
/* 31E850 802BDAE0 00000000 */ nop
/* 31E854 802BDAE4 C7A00030 */ lwc1 $f0, 0x30($sp)
/* 31E858 802BDAE8 C6060038 */ lwc1 $f6, 0x38($s0)
/* 31E85C 802BDAEC C7A20038 */ lwc1 $f2, 0x38($sp)
/* 31E860 802BDAF0 46060001 */ sub.s $f0, $f0, $f6
/* 31E864 802BDAF4 C6040040 */ lwc1 $f4, 0x40($s0)
/* 31E868 802BDAF8 3C0140A0 */ lui $at, 0x40a0
/* 31E86C 802BDAFC 44814000 */ mtc1 $at, $f8
/* 31E870 802BDB00 46041081 */ sub.s $f2, $f2, $f4
/* 31E874 802BDB04 46080003 */ div.s $f0, $f0, $f8
/* 31E878 802BDB08 46003180 */ add.s $f6, $f6, $f0
/* 31E87C 802BDB0C 46081083 */ div.s $f2, $f2, $f8
/* 31E880 802BDB10 46022100 */ add.s $f4, $f4, $f2
/* 31E884 802BDB14 E6060038 */ swc1 $f6, 0x38($s0)
/* 31E888 802BDB18 E6040040 */ swc1 $f4, 0x40($s0)
.L802BDB1C:
/* 31E88C 802BDB1C 3C11802C */ lui $s1, 0x802c
/* 31E890 802BDB20 2631FEE4 */ addiu $s1, $s1, -0x11c
/* 31E894 802BDB24 8E220000 */ lw $v0, ($s1)
/* 31E898 802BDB28 1440002C */ bnez $v0, .L802BDBDC
/* 31E89C 802BDB2C 00000000 */ nop
/* 31E8A0 802BDB30 C600000C */ lwc1 $f0, 0xc($s0)
/* 31E8A4 802BDB34 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31E8A8 802BDB38 860200A6 */ lh $v0, 0xa6($s0)
/* 31E8AC 802BDB3C 3C013F00 */ lui $at, 0x3f00
/* 31E8B0 802BDB40 4481A000 */ mtc1 $at, $f20
/* 31E8B4 802BDB44 44820000 */ mtc1 $v0, $f0
/* 31E8B8 802BDB48 00000000 */ nop
/* 31E8BC 802BDB4C 46800020 */ cvt.s.w $f0, $f0
/* 31E8C0 802BDB50 46140002 */ mul.s $f0, $f0, $f20
/* 31E8C4 802BDB54 00000000 */ nop
/* 31E8C8 802BDB58 E7A00014 */ swc1 $f0, 0x14($sp)
/* 31E8CC 802BDB5C 8E040080 */ lw $a0, 0x80($s0)
/* 31E8D0 802BDB60 8E050038 */ lw $a1, 0x38($s0)
/* 31E8D4 802BDB64 8E06003C */ lw $a2, 0x3c($s0)
/* 31E8D8 802BDB68 0C0AF4DA */ jal func_802BD368
/* 31E8DC 802BDB6C 8E070040 */ lw $a3, 0x40($s0)
/* 31E8E0 802BDB70 8E220000 */ lw $v0, ($s1)
/* 31E8E4 802BDB74 14400019 */ bnez $v0, .L802BDBDC
/* 31E8E8 802BDB78 00000000 */ nop
/* 31E8EC 802BDB7C 860200A8 */ lh $v0, 0xa8($s0)
/* 31E8F0 802BDB80 44820000 */ mtc1 $v0, $f0
/* 31E8F4 802BDB84 00000000 */ nop
/* 31E8F8 802BDB88 46800020 */ cvt.s.w $f0, $f0
/* 31E8FC 802BDB8C 46140002 */ mul.s $f0, $f0, $f20
/* 31E900 802BDB90 00000000 */ nop
/* 31E904 802BDB94 3C01802C */ lui $at, 0x802c
/* 31E908 802BDB98 C422FEE0 */ lwc1 $f2, -0x120($at)
/* 31E90C 802BDB9C 46001081 */ sub.s $f2, $f2, $f0
/* 31E910 802BDBA0 3C014040 */ lui $at, 0x4040
/* 31E914 802BDBA4 44810000 */ mtc1 $at, $f0
/* 31E918 802BDBA8 00000000 */ nop
/* 31E91C 802BDBAC E6000018 */ swc1 $f0, 0x18($s0)
/* 31E920 802BDBB0 E6020064 */ swc1 $f2, 0x64($s0)
/* 31E924 802BDBB4 8EA2000C */ lw $v0, 0xc($s5)
/* 31E928 802BDBB8 3C01802C */ lui $at, 0x802c
/* 31E92C 802BDBBC AC20FEE8 */ sw $zero, -0x118($at)
/* 31E930 802BDBC0 30420004 */ andi $v0, $v0, 4
/* 31E934 802BDBC4 104001A1 */ beqz $v0, .L802BE24C
/* 31E938 802BDBC8 24020001 */ addiu $v0, $zero, 1
/* 31E93C 802BDBCC 3C014000 */ lui $at, 0x4000
/* 31E940 802BDBD0 44810000 */ mtc1 $at, $f0
/* 31E944 802BDBD4 AE220000 */ sw $v0, ($s1)
/* 31E948 802BDBD8 E6000018 */ swc1 $f0, 0x18($s0)
.L802BDBDC:
/* 31E94C 802BDBDC 3C04802C */ lui $a0, 0x802c
/* 31E950 802BDBE0 2484FEE4 */ addiu $a0, $a0, -0x11c
/* 31E954 802BDBE4 8C830000 */ lw $v1, ($a0)
/* 31E958 802BDBE8 24020001 */ addiu $v0, $zero, 1
/* 31E95C 802BDBEC 1462000A */ bne $v1, $v0, .L802BDC18
/* 31E960 802BDBF0 00000000 */ nop
/* 31E964 802BDBF4 8EA20008 */ lw $v0, 8($s5)
/* 31E968 802BDBF8 30420004 */ andi $v0, $v0, 4
/* 31E96C 802BDBFC 10400006 */ beqz $v0, .L802BDC18
/* 31E970 802BDC00 00000000 */ nop
/* 31E974 802BDC04 3C02802C */ lui $v0, 0x802c
/* 31E978 802BDC08 8C42FEE8 */ lw $v0, -0x118($v0)
/* 31E97C 802BDC0C 14400002 */ bnez $v0, .L802BDC18
/* 31E980 802BDC10 24020002 */ addiu $v0, $zero, 2
/* 31E984 802BDC14 AC820000 */ sw $v0, ($a0)
.L802BDC18:
/* 31E988 802BDC18 3C03802C */ lui $v1, 0x802c
/* 31E98C 802BDC1C 2463FEE8 */ addiu $v1, $v1, -0x118
/* 31E990 802BDC20 8C620000 */ lw $v0, ($v1)
/* 31E994 802BDC24 24420001 */ addiu $v0, $v0, 1
/* 31E998 802BDC28 AC620000 */ sw $v0, ($v1)
/* 31E99C 802BDC2C 3C03802C */ lui $v1, 0x802c
/* 31E9A0 802BDC30 8C63FEE4 */ lw $v1, -0x11c($v1)
/* 31E9A4 802BDC34 24020002 */ addiu $v0, $zero, 2
/* 31E9A8 802BDC38 146200B1 */ bne $v1, $v0, .L802BDF00
/* 31E9AC 802BDC3C 27A50030 */ addiu $a1, $sp, 0x30
/* 31E9B0 802BDC40 C6000038 */ lwc1 $f0, 0x38($s0)
/* 31E9B4 802BDC44 C602003C */ lwc1 $f2, 0x3c($s0)
/* 31E9B8 802BDC48 C6040040 */ lwc1 $f4, 0x40($s0)
/* 31E9BC 802BDC4C 860200A8 */ lh $v0, 0xa8($s0)
/* 31E9C0 802BDC50 E7A00030 */ swc1 $f0, 0x30($sp)
/* 31E9C4 802BDC54 44820000 */ mtc1 $v0, $f0
/* 31E9C8 802BDC58 00000000 */ nop
/* 31E9CC 802BDC5C 46800020 */ cvt.s.w $f0, $f0
/* 31E9D0 802BDC60 27A2003C */ addiu $v0, $sp, 0x3c
/* 31E9D4 802BDC64 E7A20034 */ swc1 $f2, 0x34($sp)
/* 31E9D8 802BDC68 E7A40038 */ swc1 $f4, 0x38($sp)
/* 31E9DC 802BDC6C E7A0003C */ swc1 $f0, 0x3c($sp)
/* 31E9E0 802BDC70 AFA20010 */ sw $v0, 0x10($sp)
/* 31E9E4 802BDC74 C600000C */ lwc1 $f0, 0xc($s0)
/* 31E9E8 802BDC78 E7A00014 */ swc1 $f0, 0x14($sp)
/* 31E9EC 802BDC7C 860200A6 */ lh $v0, 0xa6($s0)
/* 31E9F0 802BDC80 27A60034 */ addiu $a2, $sp, 0x34
/* 31E9F4 802BDC84 44820000 */ mtc1 $v0, $f0
/* 31E9F8 802BDC88 00000000 */ nop
/* 31E9FC 802BDC8C 46800020 */ cvt.s.w $f0, $f0
/* 31EA00 802BDC90 E7A00018 */ swc1 $f0, 0x18($sp)
/* 31EA04 802BDC94 8E040080 */ lw $a0, 0x80($s0)
/* 31EA08 802BDC98 0C0371DE */ jal func_800DC778
/* 31EA0C 802BDC9C 27A70038 */ addiu $a3, $sp, 0x38
/* 31EA10 802BDCA0 1040001D */ beqz $v0, .L802BDD18
/* 31EA14 802BDCA4 00000000 */ nop
/* 31EA18 802BDCA8 868200B0 */ lh $v0, 0xb0($s4)
/* 31EA1C 802BDCAC 3C01802C */ lui $at, 0x802c
/* 31EA20 802BDCB0 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EA24 802BDCB4 00021040 */ sll $v0, $v0, 1
/* 31EA28 802BDCB8 44821000 */ mtc1 $v0, $f2
/* 31EA2C 802BDCBC 00000000 */ nop
/* 31EA30 802BDCC0 468010A0 */ cvt.s.w $f2, $f2
/* 31EA34 802BDCC4 46020001 */ sub.s $f0, $f0, $f2
/* 31EA38 802BDCC8 C6040064 */ lwc1 $f4, 0x64($s0)
/* 31EA3C 802BDCCC 46040001 */ sub.s $f0, $f0, $f4
/* 31EA40 802BDCD0 3C013DCC */ lui $at, 0x3dcc
/* 31EA44 802BDCD4 3421CCCD */ ori $at, $at, 0xcccd
/* 31EA48 802BDCD8 44811000 */ mtc1 $at, $f2
/* 31EA4C 802BDCDC 00000000 */ nop
/* 31EA50 802BDCE0 46020502 */ mul.s $f20, $f0, $f2
/* 31EA54 802BDCE4 00000000 */ nop
/* 31EA58 802BDCE8 C7A20034 */ lwc1 $f2, 0x34($sp)
/* 31EA5C 802BDCEC 46142100 */ add.s $f4, $f4, $f20
/* 31EA60 802BDCF0 3C0140A0 */ lui $at, 0x40a0
/* 31EA64 802BDCF4 44810000 */ mtc1 $at, $f0
/* 31EA68 802BDCF8 00000000 */ nop
/* 31EA6C 802BDCFC 46001080 */ add.s $f2, $f2, $f0
/* 31EA70 802BDD00 4602203C */ c.lt.s $f4, $f2
/* 31EA74 802BDD04 00000000 */ nop
/* 31EA78 802BDD08 45000015 */ bc1f .L802BDD60
/* 31EA7C 802BDD0C E6040064 */ swc1 $f4, 0x64($s0)
/* 31EA80 802BDD10 080AF758 */ j .L802BDD60
/* 31EA84 802BDD14 E6020064 */ swc1 $f2, 0x64($s0)
.L802BDD18:
/* 31EA88 802BDD18 868200B0 */ lh $v0, 0xb0($s4)
/* 31EA8C 802BDD1C 3C01802C */ lui $at, 0x802c
/* 31EA90 802BDD20 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EA94 802BDD24 00021040 */ sll $v0, $v0, 1
/* 31EA98 802BDD28 44821000 */ mtc1 $v0, $f2
/* 31EA9C 802BDD2C 00000000 */ nop
/* 31EAA0 802BDD30 468010A0 */ cvt.s.w $f2, $f2
/* 31EAA4 802BDD34 46020001 */ sub.s $f0, $f0, $f2
/* 31EAA8 802BDD38 C6020064 */ lwc1 $f2, 0x64($s0)
/* 31EAAC 802BDD3C 46020001 */ sub.s $f0, $f0, $f2
/* 31EAB0 802BDD40 3C013DCC */ lui $at, 0x3dcc
/* 31EAB4 802BDD44 3421CCCD */ ori $at, $at, 0xcccd
/* 31EAB8 802BDD48 44812000 */ mtc1 $at, $f4
/* 31EABC 802BDD4C 00000000 */ nop
/* 31EAC0 802BDD50 46040502 */ mul.s $f20, $f0, $f4
/* 31EAC4 802BDD54 00000000 */ nop
/* 31EAC8 802BDD58 46141080 */ add.s $f2, $f2, $f20
/* 31EACC 802BDD5C E6020064 */ swc1 $f2, 0x64($s0)
.L802BDD60:
/* 31EAD0 802BDD60 3C022AAA */ lui $v0, 0x2aaa
/* 31EAD4 802BDD64 3C11802C */ lui $s1, 0x802c
/* 31EAD8 802BDD68 2631FEE8 */ addiu $s1, $s1, -0x118
/* 31EADC 802BDD6C 8E240000 */ lw $a0, ($s1)
/* 31EAE0 802BDD70 3442AAAB */ ori $v0, $v0, 0xaaab
/* 31EAE4 802BDD74 00820018 */ mult $a0, $v0
/* 31EAE8 802BDD78 00041FC3 */ sra $v1, $a0, 0x1f
/* 31EAEC 802BDD7C 00004010 */ mfhi $t0
/* 31EAF0 802BDD80 01031823 */ subu $v1, $t0, $v1
/* 31EAF4 802BDD84 00031040 */ sll $v0, $v1, 1
/* 31EAF8 802BDD88 00431021 */ addu $v0, $v0, $v1
/* 31EAFC 802BDD8C 00021040 */ sll $v0, $v0, 1
/* 31EB00 802BDD90 14820015 */ bne $a0, $v0, .L802BDDE8
/* 31EB04 802BDD94 00000000 */ nop
/* 31EB08 802BDD98 860200A8 */ lh $v0, 0xa8($s0)
/* 31EB0C 802BDD9C 3C013F00 */ lui $at, 0x3f00
/* 31EB10 802BDDA0 44810000 */ mtc1 $at, $f0
/* 31EB14 802BDDA4 44821000 */ mtc1 $v0, $f2
/* 31EB18 802BDDA8 00000000 */ nop
/* 31EB1C 802BDDAC 468010A0 */ cvt.s.w $f2, $f2
/* 31EB20 802BDDB0 46001082 */ mul.s $f2, $f2, $f0
/* 31EB24 802BDDB4 00000000 */ nop
/* 31EB28 802BDDB8 C6040064 */ lwc1 $f4, 0x64($s0)
/* 31EB2C 802BDDBC 3C01802C */ lui $at, 0x802c
/* 31EB30 802BDDC0 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EB34 802BDDC4 46040001 */ sub.s $f0, $f0, $f4
/* 31EB38 802BDDC8 46022100 */ add.s $f4, $f4, $f2
/* 31EB3C 802BDDCC 46020001 */ sub.s $f0, $f0, $f2
/* 31EB40 802BDDD0 44062000 */ mfc1 $a2, $f4
/* 31EB44 802BDDD4 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31EB48 802BDDD8 8E050038 */ lw $a1, 0x38($s0)
/* 31EB4C 802BDDDC 8E070040 */ lw $a3, 0x40($s0)
/* 31EB50 802BDDE0 0C01C16C */ jal func_800705B0
/* 31EB54 802BDDE4 0000202D */ daddu $a0, $zero, $zero
.L802BDDE8:
/* 31EB58 802BDDE8 8E220000 */ lw $v0, ($s1)
/* 31EB5C 802BDDEC 24110001 */ addiu $s1, $zero, 1
/* 31EB60 802BDDF0 14510007 */ bne $v0, $s1, .L802BDE10
/* 31EB64 802BDDF4 00000000 */ nop
/* 31EB68 802BDDF8 3C040008 */ lui $a0, 8
/* 31EB6C 802BDDFC 0C037FDE */ jal func_800DFF78
/* 31EB70 802BDE00 34840010 */ ori $a0, $a0, 0x10
/* 31EB74 802BDE04 3C020007 */ lui $v0, 7
/* 31EB78 802BDE08 3442000A */ ori $v0, $v0, 0xa
/* 31EB7C 802BDE0C AE020028 */ sw $v0, 0x28($s0)
.L802BDE10:
/* 31EB80 802BDE10 3C03802C */ lui $v1, 0x802c
/* 31EB84 802BDE14 2463FEF4 */ addiu $v1, $v1, -0x10c
/* 31EB88 802BDE18 8C620000 */ lw $v0, ($v1)
/* 31EB8C 802BDE1C 14400023 */ bnez $v0, .L802BDEAC
/* 31EB90 802BDE20 00000000 */ nop
/* 31EB94 802BDE24 868200B0 */ lh $v0, 0xb0($s4)
/* 31EB98 802BDE28 3C013F00 */ lui $at, 0x3f00
/* 31EB9C 802BDE2C 44811000 */ mtc1 $at, $f2
/* 31EBA0 802BDE30 44820000 */ mtc1 $v0, $f0
/* 31EBA4 802BDE34 00000000 */ nop
/* 31EBA8 802BDE38 46800020 */ cvt.s.w $f0, $f0
/* 31EBAC 802BDE3C 46020002 */ mul.s $f0, $f0, $f2
/* 31EBB0 802BDE40 00000000 */ nop
/* 31EBB4 802BDE44 C682002C */ lwc1 $f2, 0x2c($s4)
/* 31EBB8 802BDE48 46001080 */ add.s $f2, $f2, $f0
/* 31EBBC 802BDE4C 3C01802C */ lui $at, 0x802c
/* 31EBC0 802BDE50 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EBC4 802BDE54 4600103C */ c.lt.s $f2, $f0
/* 31EBC8 802BDE58 00000000 */ nop
/* 31EBCC 802BDE5C 45000013 */ bc1f .L802BDEAC
/* 31EBD0 802BDE60 24050004 */ addiu $a1, $zero, 4
/* 31EBD4 802BDE64 24060002 */ addiu $a2, $zero, 2
/* 31EBD8 802BDE68 0000382D */ daddu $a3, $zero, $zero
/* 31EBDC 802BDE6C 8E8400A4 */ lw $a0, 0xa4($s4)
/* 31EBE0 802BDE70 2402000D */ addiu $v0, $zero, 0xd
/* 31EBE4 802BDE74 AC710000 */ sw $s1, ($v1)
/* 31EBE8 802BDE78 A28200BE */ sb $v0, 0xbe($s4)
/* 31EBEC 802BDE7C AFA00010 */ sw $zero, 0x10($sp)
/* 31EBF0 802BDE80 AFA00014 */ sw $zero, 0x14($sp)
/* 31EBF4 802BDE84 0C0B77FE */ jal func_802DDFF8
/* 31EBF8 802BDE88 AFA00018 */ sw $zero, 0x18($sp)
/* 31EBFC 802BDE8C 0200202D */ daddu $a0, $s0, $zero
/* 31EC00 802BDE90 24050004 */ addiu $a1, $zero, 4
/* 31EC04 802BDE94 24060002 */ addiu $a2, $zero, 2
/* 31EC08 802BDE98 0000382D */ daddu $a3, $zero, $zero
/* 31EC0C 802BDE9C AFA00010 */ sw $zero, 0x10($sp)
/* 31EC10 802BDEA0 AFA00014 */ sw $zero, 0x14($sp)
/* 31EC14 802BDEA4 0C00F589 */ jal func_8003D624
/* 31EC18 802BDEA8 AFA00018 */ sw $zero, 0x18($sp)
.L802BDEAC:
/* 31EC1C 802BDEAC 3C03802C */ lui $v1, 0x802c
/* 31EC20 802BDEB0 8C63FEE8 */ lw $v1, -0x118($v1)
/* 31EC24 802BDEB4 2862000A */ slti $v0, $v1, 0xa
/* 31EC28 802BDEB8 14400011 */ bnez $v0, .L802BDF00
/* 31EC2C 802BDEBC 00000000 */ nop
/* 31EC30 802BDEC0 8EA20008 */ lw $v0, 8($s5)
/* 31EC34 802BDEC4 30420004 */ andi $v0, $v0, 4
/* 31EC38 802BDEC8 10400003 */ beqz $v0, .L802BDED8
/* 31EC3C 802BDECC 2862001E */ slti $v0, $v1, 0x1e
/* 31EC40 802BDED0 1440000B */ bnez $v0, .L802BDF00
/* 31EC44 802BDED4 00000000 */ nop
.L802BDED8:
/* 31EC48 802BDED8 3C020007 */ lui $v0, 7
/* 31EC4C 802BDEDC 3442000C */ ori $v0, $v0, 0xc
/* 31EC50 802BDEE0 24040694 */ addiu $a0, $zero, 0x694
/* 31EC54 802BDEE4 0000282D */ daddu $a1, $zero, $zero
/* 31EC58 802BDEE8 2406FFFC */ addiu $a2, $zero, -4
/* 31EC5C 802BDEEC 0C052742 */ jal play_sound_at_npc
/* 31EC60 802BDEF0 AE020028 */ sw $v0, 0x28($s0)
/* 31EC64 802BDEF4 24020003 */ addiu $v0, $zero, 3
/* 31EC68 802BDEF8 3C01802C */ lui $at, 0x802c
/* 31EC6C 802BDEFC AC22FEE4 */ sw $v0, -0x11c($at)
.L802BDF00:
/* 31EC70 802BDF00 860200A8 */ lh $v0, 0xa8($s0)
/* 31EC74 802BDF04 C6020038 */ lwc1 $f2, 0x38($s0)
/* 31EC78 802BDF08 3C013F00 */ lui $at, 0x3f00
/* 31EC7C 802BDF0C 4481A000 */ mtc1 $at, $f20
/* 31EC80 802BDF10 44820000 */ mtc1 $v0, $f0
/* 31EC84 802BDF14 00000000 */ nop
/* 31EC88 802BDF18 46800020 */ cvt.s.w $f0, $f0
/* 31EC8C 802BDF1C 868200B0 */ lh $v0, 0xb0($s4)
/* 31EC90 802BDF20 46140002 */ mul.s $f0, $f0, $f20
/* 31EC94 802BDF24 00000000 */ nop
/* 31EC98 802BDF28 E7A20030 */ swc1 $f2, 0x30($sp)
/* 31EC9C 802BDF2C C6040064 */ lwc1 $f4, 0x64($s0)
/* 31ECA0 802BDF30 C6060040 */ lwc1 $f6, 0x40($s0)
/* 31ECA4 802BDF34 44821000 */ mtc1 $v0, $f2
/* 31ECA8 802BDF38 00000000 */ nop
/* 31ECAC 802BDF3C 468010A0 */ cvt.s.w $f2, $f2
/* 31ECB0 802BDF40 27A2003C */ addiu $v0, $sp, 0x3c
/* 31ECB4 802BDF44 46020000 */ add.s $f0, $f0, $f2
/* 31ECB8 802BDF48 E7A40034 */ swc1 $f4, 0x34($sp)
/* 31ECBC 802BDF4C E7A60038 */ swc1 $f6, 0x38($sp)
/* 31ECC0 802BDF50 E7A0003C */ swc1 $f0, 0x3c($sp)
/* 31ECC4 802BDF54 AFA20010 */ sw $v0, 0x10($sp)
/* 31ECC8 802BDF58 C600000C */ lwc1 $f0, 0xc($s0)
/* 31ECCC 802BDF5C E7A00014 */ swc1 $f0, 0x14($sp)
/* 31ECD0 802BDF60 860200A6 */ lh $v0, 0xa6($s0)
/* 31ECD4 802BDF64 3C013E99 */ lui $at, 0x3e99
/* 31ECD8 802BDF68 3421999A */ ori $at, $at, 0x999a
/* 31ECDC 802BDF6C 44811000 */ mtc1 $at, $f2
/* 31ECE0 802BDF70 44820000 */ mtc1 $v0, $f0
/* 31ECE4 802BDF74 00000000 */ nop
/* 31ECE8 802BDF78 46800020 */ cvt.s.w $f0, $f0
/* 31ECEC 802BDF7C 46020002 */ mul.s $f0, $f0, $f2
/* 31ECF0 802BDF80 00000000 */ nop
/* 31ECF4 802BDF84 27A50030 */ addiu $a1, $sp, 0x30
/* 31ECF8 802BDF88 27A60034 */ addiu $a2, $sp, 0x34
/* 31ECFC 802BDF8C E7A00018 */ swc1 $f0, 0x18($sp)
/* 31ED00 802BDF90 8E040080 */ lw $a0, 0x80($s0)
/* 31ED04 802BDF94 0C03748A */ jal func_800DD228
/* 31ED08 802BDF98 27A70038 */ addiu $a3, $sp, 0x38
/* 31ED0C 802BDF9C 04400039 */ bltz $v0, .L802BE084
/* 31ED10 802BDFA0 24020003 */ addiu $v0, $zero, 3
/* 31ED14 802BDFA4 860200A8 */ lh $v0, 0xa8($s0)
/* 31ED18 802BDFA8 44822000 */ mtc1 $v0, $f4
/* 31ED1C 802BDFAC 00000000 */ nop
/* 31ED20 802BDFB0 46802120 */ cvt.s.w $f4, $f4
/* 31ED24 802BDFB4 46142102 */ mul.s $f4, $f4, $f20
/* 31ED28 802BDFB8 00000000 */ nop
/* 31ED2C 802BDFBC C6060064 */ lwc1 $f6, 0x64($s0)
/* 31ED30 802BDFC0 C7A00034 */ lwc1 $f0, 0x34($sp)
/* 31ED34 802BDFC4 C7A2003C */ lwc1 $f2, 0x3c($sp)
/* 31ED38 802BDFC8 46003001 */ sub.s $f0, $f6, $f0
/* 31ED3C 802BDFCC 3C04802C */ lui $a0, 0x802c
/* 31ED40 802BDFD0 8C84FEE8 */ lw $a0, -0x118($a0)
/* 31ED44 802BDFD4 868200B0 */ lh $v0, 0xb0($s4)
/* 31ED48 802BDFD8 46020000 */ add.s $f0, $f0, $f2
/* 31ED4C 802BDFDC 44821000 */ mtc1 $v0, $f2
/* 31ED50 802BDFE0 00000000 */ nop
/* 31ED54 802BDFE4 468010A0 */ cvt.s.w $f2, $f2
/* 31ED58 802BDFE8 3C0238E3 */ lui $v0, 0x38e3
/* 31ED5C 802BDFEC 34428E39 */ ori $v0, $v0, 0x8e39
/* 31ED60 802BDFF0 00820018 */ mult $a0, $v0
/* 31ED64 802BDFF4 46022100 */ add.s $f4, $f4, $f2
/* 31ED68 802BDFF8 46040001 */ sub.s $f0, $f0, $f4
/* 31ED6C 802BDFFC 3C013E4C */ lui $at, 0x3e4c
/* 31ED70 802BE000 3421CCCD */ ori $at, $at, 0xcccd
/* 31ED74 802BE004 44811000 */ mtc1 $at, $f2
/* 31ED78 802BE008 00000000 */ nop
/* 31ED7C 802BE00C 46020002 */ mul.s $f0, $f0, $f2
/* 31ED80 802BE010 00000000 */ nop
/* 31ED84 802BE014 000417C3 */ sra $v0, $a0, 0x1f
/* 31ED88 802BE018 00004010 */ mfhi $t0
/* 31ED8C 802BE01C 00081843 */ sra $v1, $t0, 1
/* 31ED90 802BE020 00621823 */ subu $v1, $v1, $v0
/* 31ED94 802BE024 46003180 */ add.s $f6, $f6, $f0
/* 31ED98 802BE028 000310C0 */ sll $v0, $v1, 3
/* 31ED9C 802BE02C 00431021 */ addu $v0, $v0, $v1
/* 31EDA0 802BE030 14820086 */ bne $a0, $v0, .L802BE24C
/* 31EDA4 802BE034 E6060064 */ swc1 $f6, 0x64($s0)
/* 31EDA8 802BE038 860200A8 */ lh $v0, 0xa8($s0)
/* 31EDAC 802BE03C 44821000 */ mtc1 $v0, $f2
/* 31EDB0 802BE040 00000000 */ nop
/* 31EDB4 802BE044 468010A0 */ cvt.s.w $f2, $f2
/* 31EDB8 802BE048 46141082 */ mul.s $f2, $f2, $f20
/* 31EDBC 802BE04C 00000000 */ nop
/* 31EDC0 802BE050 3C01802C */ lui $at, 0x802c
/* 31EDC4 802BE054 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EDC8 802BE058 46060001 */ sub.s $f0, $f0, $f6
/* 31EDCC 802BE05C 46023180 */ add.s $f6, $f6, $f2
/* 31EDD0 802BE060 46020001 */ sub.s $f0, $f0, $f2
/* 31EDD4 802BE064 44063000 */ mfc1 $a2, $f6
/* 31EDD8 802BE068 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31EDDC 802BE06C 8E050038 */ lw $a1, 0x38($s0)
/* 31EDE0 802BE070 8E070040 */ lw $a3, 0x40($s0)
/* 31EDE4 802BE074 0C01C16C */ jal func_800705B0
/* 31EDE8 802BE078 0000202D */ daddu $a0, $zero, $zero
/* 31EDEC 802BE07C 080AF893 */ j .L802BE24C
/* 31EDF0 802BE080 00000000 */ nop
.L802BE084:
/* 31EDF4 802BE084 3C12802C */ lui $s2, 0x802c
/* 31EDF8 802BE088 2652FEE4 */ addiu $s2, $s2, -0x11c
/* 31EDFC 802BE08C 8E430000 */ lw $v1, ($s2)
/* 31EE00 802BE090 1462006E */ bne $v1, $v0, .L802BE24C
/* 31EE04 802BE094 00000000 */ nop
/* 31EE08 802BE098 3C03802C */ lui $v1, 0x802c
/* 31EE0C 802BE09C 2463FF08 */ addiu $v1, $v1, -0xf8
/* 31EE10 802BE0A0 C4600000 */ lwc1 $f0, ($v1)
/* 31EE14 802BE0A4 3C01802C */ lui $at, 0x802c
/* 31EE18 802BE0A8 D422FE58 */ ldc1 $f2, -0x1a8($at)
/* 31EE1C 802BE0AC 46000021 */ cvt.d.s $f0, $f0
/* 31EE20 802BE0B0 46220000 */ add.d $f0, $f0, $f2
/* 31EE24 802BE0B4 3C01802C */ lui $at, 0x802c
/* 31EE28 802BE0B8 D424FE60 */ ldc1 $f4, -0x1a0($at)
/* 31EE2C 802BE0BC 46200020 */ cvt.s.d $f0, $f0
/* 31EE30 802BE0C0 460000A1 */ cvt.d.s $f2, $f0
/* 31EE34 802BE0C4 4622203C */ c.lt.d $f4, $f2
/* 31EE38 802BE0C8 00000000 */ nop
/* 31EE3C 802BE0CC 45000006 */ bc1f .L802BE0E8
/* 31EE40 802BE0D0 E4600000 */ swc1 $f0, ($v1)
/* 31EE44 802BE0D4 3C013FE6 */ lui $at, 0x3fe6
/* 31EE48 802BE0D8 34216666 */ ori $at, $at, 0x6666
/* 31EE4C 802BE0DC 44810000 */ mtc1 $at, $f0
/* 31EE50 802BE0E0 00000000 */ nop
/* 31EE54 802BE0E4 E4600000 */ swc1 $f0, ($v1)
.L802BE0E8:
/* 31EE58 802BE0E8 3C0238E3 */ lui $v0, 0x38e3
/* 31EE5C 802BE0EC 3C04802C */ lui $a0, 0x802c
/* 31EE60 802BE0F0 8C84FEE8 */ lw $a0, -0x118($a0)
/* 31EE64 802BE0F4 34428E39 */ ori $v0, $v0, 0x8e39
/* 31EE68 802BE0F8 00820018 */ mult $a0, $v0
/* 31EE6C 802BE0FC C6020064 */ lwc1 $f2, 0x64($s0)
/* 31EE70 802BE100 C4600000 */ lwc1 $f0, ($v1)
/* 31EE74 802BE104 46001100 */ add.s $f4, $f2, $f0
/* 31EE78 802BE108 000417C3 */ sra $v0, $a0, 0x1f
/* 31EE7C 802BE10C 00004010 */ mfhi $t0
/* 31EE80 802BE110 00081843 */ sra $v1, $t0, 1
/* 31EE84 802BE114 00621823 */ subu $v1, $v1, $v0
/* 31EE88 802BE118 000310C0 */ sll $v0, $v1, 3
/* 31EE8C 802BE11C 00431021 */ addu $v0, $v0, $v1
/* 31EE90 802BE120 14820012 */ bne $a0, $v0, .L802BE16C
/* 31EE94 802BE124 E6040064 */ swc1 $f4, 0x64($s0)
/* 31EE98 802BE128 860200A8 */ lh $v0, 0xa8($s0)
/* 31EE9C 802BE12C 44821000 */ mtc1 $v0, $f2
/* 31EEA0 802BE130 00000000 */ nop
/* 31EEA4 802BE134 468010A0 */ cvt.s.w $f2, $f2
/* 31EEA8 802BE138 46141082 */ mul.s $f2, $f2, $f20
/* 31EEAC 802BE13C 00000000 */ nop
/* 31EEB0 802BE140 3C01802C */ lui $at, 0x802c
/* 31EEB4 802BE144 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 31EEB8 802BE148 46040001 */ sub.s $f0, $f0, $f4
/* 31EEBC 802BE14C 46022100 */ add.s $f4, $f4, $f2
/* 31EEC0 802BE150 46020001 */ sub.s $f0, $f0, $f2
/* 31EEC4 802BE154 44062000 */ mfc1 $a2, $f4
/* 31EEC8 802BE158 E7A00010 */ swc1 $f0, 0x10($sp)
/* 31EECC 802BE15C 8E050038 */ lw $a1, 0x38($s0)
/* 31EED0 802BE160 8E070040 */ lw $a3, 0x40($s0)
/* 31EED4 802BE164 0C01C16C */ jal func_800705B0
/* 31EED8 802BE168 0000202D */ daddu $a0, $zero, $zero
.L802BE16C:
/* 31EEDC 802BE16C 860200A8 */ lh $v0, 0xa8($s0)
/* 31EEE0 802BE170 44822000 */ mtc1 $v0, $f4
/* 31EEE4 802BE174 00000000 */ nop
/* 31EEE8 802BE178 46802120 */ cvt.s.w $f4, $f4
/* 31EEEC 802BE17C 46142102 */ mul.s $f4, $f4, $f20
/* 31EEF0 802BE180 00000000 */ nop
/* 31EEF4 802BE184 3C11802C */ lui $s1, 0x802c
/* 31EEF8 802BE188 2631FEE0 */ addiu $s1, $s1, -0x120
/* 31EEFC 802BE18C C6200000 */ lwc1 $f0, ($s1)
/* 31EF00 802BE190 C6020064 */ lwc1 $f2, 0x64($s0)
/* 31EF04 802BE194 46020001 */ sub.s $f0, $f0, $f2
/* 31EF08 802BE198 46040001 */ sub.s $f0, $f0, $f4
/* 31EF0C 802BE19C 44801000 */ mtc1 $zero, $f2
/* 31EF10 802BE1A0 00000000 */ nop
/* 31EF14 802BE1A4 4602003E */ c.le.s $f0, $f2
/* 31EF18 802BE1A8 00000000 */ nop
/* 31EF1C 802BE1AC 45000027 */ bc1f .L802BE24C
/* 31EF20 802BE1B0 00000000 */ nop
/* 31EF24 802BE1B4 3C03802C */ lui $v1, 0x802c
/* 31EF28 802BE1B8 2463FEF4 */ addiu $v1, $v1, -0x10c
/* 31EF2C 802BE1BC 8C620000 */ lw $v0, ($v1)
/* 31EF30 802BE1C0 10400012 */ beqz $v0, .L802BE20C
/* 31EF34 802BE1C4 3C040001 */ lui $a0, 1
/* 31EF38 802BE1C8 34840002 */ ori $a0, $a0, 2
/* 31EF3C 802BE1CC 0000282D */ daddu $a1, $zero, $zero
/* 31EF40 802BE1D0 00A0302D */ daddu $a2, $a1, $zero
/* 31EF44 802BE1D4 00A0382D */ daddu $a3, $a1, $zero
/* 31EF48 802BE1D8 AC600000 */ sw $zero, ($v1)
/* 31EF4C 802BE1DC AFA00010 */ sw $zero, 0x10($sp)
/* 31EF50 802BE1E0 AFA00014 */ sw $zero, 0x14($sp)
/* 31EF54 802BE1E4 0C0B77FE */ jal func_802DDFF8
/* 31EF58 802BE1E8 AFA00018 */ sw $zero, 0x18($sp)
/* 31EF5C 802BE1EC 0200202D */ daddu $a0, $s0, $zero
/* 31EF60 802BE1F0 0000282D */ daddu $a1, $zero, $zero
/* 31EF64 802BE1F4 00A0302D */ daddu $a2, $a1, $zero
/* 31EF68 802BE1F8 00A0382D */ daddu $a3, $a1, $zero
/* 31EF6C 802BE1FC AFA00010 */ sw $zero, 0x10($sp)
/* 31EF70 802BE200 AFA00014 */ sw $zero, 0x14($sp)
/* 31EF74 802BE204 0C00F589 */ jal func_8003D624
/* 31EF78 802BE208 AFA00018 */ sw $zero, 0x18($sp)
.L802BE20C:
/* 31EF7C 802BE20C 860200A8 */ lh $v0, 0xa8($s0)
/* 31EF80 802BE210 3C030007 */ lui $v1, 7
/* 31EF84 802BE214 44821000 */ mtc1 $v0, $f2
/* 31EF88 802BE218 00000000 */ nop
/* 31EF8C 802BE21C 468010A0 */ cvt.s.w $f2, $f2
/* 31EF90 802BE220 46141082 */ mul.s $f2, $f2, $f20
/* 31EF94 802BE224 00000000 */ nop
/* 31EF98 802BE228 3463000A */ ori $v1, $v1, 0xa
/* 31EF9C 802BE22C 3C040008 */ lui $a0, 8
/* 31EFA0 802BE230 C6200000 */ lwc1 $f0, ($s1)
/* 31EFA4 802BE234 3484000F */ ori $a0, $a0, 0xf
/* 31EFA8 802BE238 46020001 */ sub.s $f0, $f0, $f2
/* 31EFAC 802BE23C AE400000 */ sw $zero, ($s2)
/* 31EFB0 802BE240 AE030028 */ sw $v1, 0x28($s0)
/* 31EFB4 802BE244 0C037FDE */ jal func_800DFF78
/* 31EFB8 802BE248 E6000064 */ swc1 $f0, 0x64($s0)
.L802BE24C:
/* 31EFBC 802BE24C 8FBF0058 */ lw $ra, 0x58($sp)
/* 31EFC0 802BE250 8FB50054 */ lw $s5, 0x54($sp)
/* 31EFC4 802BE254 8FB40050 */ lw $s4, 0x50($sp)
/* 31EFC8 802BE258 8FB3004C */ lw $s3, 0x4c($sp)
/* 31EFCC 802BE25C 8FB20048 */ lw $s2, 0x48($sp)
/* 31EFD0 802BE260 8FB10044 */ lw $s1, 0x44($sp)
/* 31EFD4 802BE264 8FB00040 */ lw $s0, 0x40($sp)
/* 31EFD8 802BE268 D7BA0078 */ ldc1 $f26, 0x78($sp)
/* 31EFDC 802BE26C D7B80070 */ ldc1 $f24, 0x70($sp)
/* 31EFE0 802BE270 D7B60068 */ ldc1 $f22, 0x68($sp)
/* 31EFE4 802BE274 D7B40060 */ ldc1 $f20, 0x60($sp)
/* 31EFE8 802BE278 03E00008 */ jr $ra
/* 31EFEC 802BE27C 27BD0080 */ addiu $sp, $sp, 0x80

View File

@ -0,0 +1,78 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE280
/* 31EFF0 802BE280 27BDFF78 */ addiu $sp, $sp, -0x88
/* 31EFF4 802BE284 AFB3006C */ sw $s3, 0x6c($sp)
/* 31EFF8 802BE288 8FB300A0 */ lw $s3, 0xa0($sp)
/* 31EFFC 802BE28C 3C0140C9 */ lui $at, 0x40c9
/* 31F000 802BE290 34210FD0 */ ori $at, $at, 0xfd0
/* 31F004 802BE294 44810000 */ mtc1 $at, $f0
/* 31F008 802BE298 AFB00060 */ sw $s0, 0x60($sp)
/* 31F00C 802BE29C 00A0802D */ daddu $s0, $a1, $zero
/* 31F010 802BE2A0 AFB10064 */ sw $s1, 0x64($sp)
/* 31F014 802BE2A4 00C0882D */ daddu $s1, $a2, $zero
/* 31F018 802BE2A8 AFB20068 */ sw $s2, 0x68($sp)
/* 31F01C 802BE2AC 00E0902D */ daddu $s2, $a3, $zero
/* 31F020 802BE2B0 AFBF0070 */ sw $ra, 0x70($sp)
/* 31F024 802BE2B4 F7B60080 */ sdc1 $f22, 0x80($sp)
/* 31F028 802BE2B8 F7B40078 */ sdc1 $f20, 0x78($sp)
/* 31F02C 802BE2BC C66C0000 */ lwc1 $f12, ($s3)
/* 31F030 802BE2C0 27A50038 */ addiu $a1, $sp, 0x38
/* 31F034 802BE2C4 46006302 */ mul.s $f12, $f12, $f0
/* 31F038 802BE2C8 00000000 */ nop
/* 31F03C 802BE2CC 27A6003C */ addiu $a2, $sp, 0x3c
/* 31F040 802BE2D0 C7B60098 */ lwc1 $f22, 0x98($sp)
/* 31F044 802BE2D4 3C0143B4 */ lui $at, 0x43b4
/* 31F048 802BE2D8 44810000 */ mtc1 $at, $f0
/* 31F04C 802BE2DC C7B4009C */ lwc1 $f20, 0x9c($sp)
/* 31F050 802BE2E0 0C00A82D */ jal sin_cos_rad
/* 31F054 802BE2E4 46006303 */ div.s $f12, $f12, $f0
/* 31F058 802BE2E8 27A20040 */ addiu $v0, $sp, 0x40
/* 31F05C 802BE2EC 4616A500 */ add.s $f20, $f20, $f22
/* 31F060 802BE2F0 C7A0003C */ lwc1 $f0, 0x3c($sp)
/* 31F064 802BE2F4 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 31F068 802BE2F8 46000007 */ neg.s $f0, $f0
/* 31F06C 802BE2FC E7A0003C */ swc1 $f0, 0x3c($sp)
/* 31F070 802BE300 E7B4004C */ swc1 $f20, 0x4c($sp)
/* 31F074 802BE304 AFA2001C */ sw $v0, 0x1c($sp)
/* 31F078 802BE308 27A20044 */ addiu $v0, $sp, 0x44
/* 31F07C 802BE30C AFA20020 */ sw $v0, 0x20($sp)
/* 31F080 802BE310 27A20048 */ addiu $v0, $sp, 0x48
/* 31F084 802BE314 AFA20024 */ sw $v0, 0x24($sp)
/* 31F088 802BE318 27A2004C */ addiu $v0, $sp, 0x4c
/* 31F08C 802BE31C AFA20028 */ sw $v0, 0x28($sp)
/* 31F090 802BE320 27A20050 */ addiu $v0, $sp, 0x50
/* 31F094 802BE324 AFA2002C */ sw $v0, 0x2c($sp)
/* 31F098 802BE328 27A20054 */ addiu $v0, $sp, 0x54
/* 31F09C 802BE32C AFA20030 */ sw $v0, 0x30($sp)
/* 31F0A0 802BE330 27A20058 */ addiu $v0, $sp, 0x58
/* 31F0A4 802BE334 E7A20010 */ swc1 $f2, 0x10($sp)
/* 31F0A8 802BE338 AFA00014 */ sw $zero, 0x14($sp)
/* 31F0AC 802BE33C E7A00018 */ swc1 $f0, 0x18($sp)
/* 31F0B0 802BE340 AFA20034 */ sw $v0, 0x34($sp)
/* 31F0B4 802BE344 8E050000 */ lw $a1, ($s0)
/* 31F0B8 802BE348 8E260000 */ lw $a2, ($s1)
/* 31F0BC 802BE34C 8E470000 */ lw $a3, ($s2)
/* 31F0C0 802BE350 0C017334 */ jal test_ray_colliders
/* 31F0C4 802BE354 3C040001 */ lui $a0, 1
/* 31F0C8 802BE358 0040802D */ daddu $s0, $v0, $zero
/* 31F0CC 802BE35C 06000008 */ bltz $s0, .L802BE380
/* 31F0D0 802BE360 0200102D */ daddu $v0, $s0, $zero
/* 31F0D4 802BE364 8FA60050 */ lw $a2, 0x50($sp)
/* 31F0D8 802BE368 44806000 */ mtc1 $zero, $f12
/* 31F0DC 802BE36C 8FA70058 */ lw $a3, 0x58($sp)
/* 31F0E0 802BE370 0C00A720 */ jal atan2
/* 31F0E4 802BE374 46006386 */ mov.s $f14, $f12
/* 31F0E8 802BE378 E6600000 */ swc1 $f0, ($s3)
/* 31F0EC 802BE37C 0200102D */ daddu $v0, $s0, $zero
.L802BE380:
/* 31F0F0 802BE380 8FBF0070 */ lw $ra, 0x70($sp)
/* 31F0F4 802BE384 8FB3006C */ lw $s3, 0x6c($sp)
/* 31F0F8 802BE388 8FB20068 */ lw $s2, 0x68($sp)
/* 31F0FC 802BE38C 8FB10064 */ lw $s1, 0x64($sp)
/* 31F100 802BE390 8FB00060 */ lw $s0, 0x60($sp)
/* 31F104 802BE394 D7B60080 */ ldc1 $f22, 0x80($sp)
/* 31F108 802BE398 D7B40078 */ ldc1 $f20, 0x78($sp)
/* 31F10C 802BE39C 03E00008 */ jr $ra
/* 31F110 802BE3A0 27BD0088 */ addiu $sp, $sp, 0x88

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF520
/* 320290 802BF520 24020018 */ addiu $v0, $zero, 0x18
/* 320294 802BF524 A48200A8 */ sh $v0, 0xa8($a0)
/* 320298 802BF528 24020024 */ addiu $v0, $zero, 0x24
/* 32029C 802BF52C A48200A6 */ sh $v0, 0xa6($a0)
/* 3202A0 802BF530 3C020001 */ lui $v0, 1
/* 3202A4 802BF534 AC820080 */ sw $v0, 0x80($a0)
/* 3202A8 802BF538 3C01802C */ lui $at, 0x802c
/* 3202AC 802BF53C AC20FEEC */ sw $zero, -0x114($at)
/* 3202B0 802BF540 3C01802C */ lui $at, 0x802c
/* 3202B4 802BF544 AC20FEE4 */ sw $zero, -0x11c($at)
/* 3202B8 802BF548 3C01802C */ lui $at, 0x802c
/* 3202BC 802BF54C AC20FEE8 */ sw $zero, -0x118($at)
/* 3202C0 802BF550 3C01802C */ lui $at, 0x802c
/* 3202C4 802BF554 AC20FEF0 */ sw $zero, -0x110($at)
/* 3202C8 802BF558 3C01802C */ lui $at, 0x802c
/* 3202CC 802BF55C AC20FEF4 */ sw $zero, -0x10c($at)
/* 3202D0 802BF560 03E00008 */ jr $ra
/* 3202D4 802BF564 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF568
/* 3202D8 802BF568 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3202DC 802BF56C AFBF0014 */ sw $ra, 0x14($sp)
/* 3202E0 802BF570 AFB00010 */ sw $s0, 0x10($sp)
/* 3202E4 802BF574 10A00003 */ beqz $a1, .L802BF584
/* 3202E8 802BF578 8C90014C */ lw $s0, 0x14c($a0)
/* 3202EC 802BF57C 0C03BB31 */ jal func_800EECC4
/* 3202F0 802BF580 0200202D */ daddu $a0, $s0, $zero
.L802BF584:
/* 3202F4 802BF584 0C03BB3A */ jal func_800EECE8
/* 3202F8 802BF588 0200202D */ daddu $a0, $s0, $zero
/* 3202FC 802BF58C 8FBF0014 */ lw $ra, 0x14($sp)
/* 320300 802BF590 8FB00010 */ lw $s0, 0x10($sp)
/* 320304 802BF594 0002102B */ sltu $v0, $zero, $v0
/* 320308 802BF598 03E00008 */ jr $ra
/* 32030C 802BF59C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,242 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF5A0
/* 320310 802BF5A0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 320314 802BF5A4 AFBF0028 */ sw $ra, 0x28($sp)
/* 320318 802BF5A8 AFB30024 */ sw $s3, 0x24($sp)
/* 32031C 802BF5AC AFB20020 */ sw $s2, 0x20($sp)
/* 320320 802BF5B0 AFB1001C */ sw $s1, 0x1c($sp)
/* 320324 802BF5B4 AFB00018 */ sw $s0, 0x18($sp)
/* 320328 802BF5B8 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 32032C 802BF5BC 8C91014C */ lw $s1, 0x14c($a0)
/* 320330 802BF5C0 10A00009 */ beqz $a1, .L802BF5E8
/* 320334 802BF5C4 0220202D */ daddu $a0, $s1, $zero
/* 320338 802BF5C8 0C03AE2A */ jal enable_partner_walking
/* 32033C 802BF5CC 24050001 */ addiu $a1, $zero, 1
/* 320340 802BF5D0 3C04802C */ lui $a0, 0x802c
/* 320344 802BF5D4 8C84FDF8 */ lw $a0, -0x208($a0)
/* 320348 802BF5D8 0C00A580 */ jal mem_clear
/* 32034C 802BF5DC 2405001C */ addiu $a1, $zero, 0x1c
/* 320350 802BF5E0 3C018011 */ lui $at, 0x8011
/* 320354 802BF5E4 AC20C954 */ sw $zero, -0x36ac($at)
.L802BF5E8:
/* 320358 802BF5E8 3C138011 */ lui $s3, 0x8011
/* 32035C 802BF5EC 2673C954 */ addiu $s3, $s3, -0x36ac
/* 320360 802BF5F0 8E720000 */ lw $s2, ($s3)
/* 320364 802BF5F4 16400007 */ bnez $s2, .L802BF614
/* 320368 802BF5F8 24050001 */ addiu $a1, $zero, 1
/* 32036C 802BF5FC 0C03AE8F */ jal func_800EBA3C
/* 320370 802BF600 0220202D */ daddu $a0, $s1, $zero
/* 320374 802BF604 0C03AED0 */ jal func_800EBB40
/* 320378 802BF608 0220202D */ daddu $a0, $s1, $zero
/* 32037C 802BF60C 080AFE40 */ j .L802BF900
/* 320380 802BF610 0000102D */ daddu $v0, $zero, $zero
.L802BF614:
/* 320384 802BF614 3C10802C */ lui $s0, 0x802c
/* 320388 802BF618 2610FDF8 */ addiu $s0, $s0, -0x208
/* 32038C 802BF61C 8E040000 */ lw $a0, ($s0)
/* 320390 802BF620 8C830004 */ lw $v1, 4($a0)
/* 320394 802BF624 10650030 */ beq $v1, $a1, .L802BF6E8
/* 320398 802BF628 28620002 */ slti $v0, $v1, 2
/* 32039C 802BF62C 10400005 */ beqz $v0, .L802BF644
/* 3203A0 802BF630 24020002 */ addiu $v0, $zero, 2
/* 3203A4 802BF634 10600009 */ beqz $v1, .L802BF65C
/* 3203A8 802BF638 0000102D */ daddu $v0, $zero, $zero
/* 3203AC 802BF63C 080AFE40 */ j .L802BF900
/* 3203B0 802BF640 00000000 */ nop
.L802BF644:
/* 3203B4 802BF644 1062009A */ beq $v1, $v0, .L802BF8B0
/* 3203B8 802BF648 24020003 */ addiu $v0, $zero, 3
/* 3203BC 802BF64C 106200A0 */ beq $v1, $v0, .L802BF8D0
/* 3203C0 802BF650 0000102D */ daddu $v0, $zero, $zero
/* 3203C4 802BF654 080AFE40 */ j .L802BF900
/* 3203C8 802BF658 00000000 */ nop
.L802BF65C:
/* 3203CC 802BF65C AC850004 */ sw $a1, 4($a0)
/* 3203D0 802BF660 8E220000 */ lw $v0, ($s1)
/* 3203D4 802BF664 AC820008 */ sw $v0, 8($a0)
/* 3203D8 802BF668 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 3203DC 802BF66C C62E0040 */ lwc1 $f14, 0x40($s1)
/* 3203E0 802BF670 8E460048 */ lw $a2, 0x48($s2)
/* 3203E4 802BF674 0C00A7B5 */ jal dist2D
/* 3203E8 802BF678 8E470050 */ lw $a3, 0x50($s2)
/* 3203EC 802BF67C 8E020000 */ lw $v0, ($s0)
/* 3203F0 802BF680 46000005 */ abs.s $f0, $f0
/* 3203F4 802BF684 E440000C */ swc1 $f0, 0xc($v0)
/* 3203F8 802BF688 C64C0048 */ lwc1 $f12, 0x48($s2)
/* 3203FC 802BF68C C64E0050 */ lwc1 $f14, 0x50($s2)
/* 320400 802BF690 8E260038 */ lw $a2, 0x38($s1)
/* 320404 802BF694 0C00A720 */ jal atan2
/* 320408 802BF698 8E270040 */ lw $a3, 0x40($s1)
/* 32040C 802BF69C 3C040004 */ lui $a0, 4
/* 320410 802BF6A0 24020078 */ addiu $v0, $zero, 0x78
/* 320414 802BF6A4 8E030000 */ lw $v1, ($s0)
/* 320418 802BF6A8 3C0140C0 */ lui $at, 0x40c0
/* 32041C 802BF6AC 44811000 */ mtc1 $at, $f2
/* 320420 802BF6B0 3C014248 */ lui $at, 0x4248
/* 320424 802BF6B4 44812000 */ mtc1 $at, $f4
/* 320428 802BF6B8 34840148 */ ori $a0, $a0, 0x148
/* 32042C 802BF6BC E4600010 */ swc1 $f0, 0x10($v1)
/* 320430 802BF6C0 E4620014 */ swc1 $f2, 0x14($v1)
/* 320434 802BF6C4 E4640018 */ swc1 $f4, 0x18($v1)
/* 320438 802BF6C8 AC620000 */ sw $v0, ($v1)
/* 32043C 802BF6CC 8E220000 */ lw $v0, ($s1)
/* 320440 802BF6D0 2403FDFF */ addiu $v1, $zero, -0x201
/* 320444 802BF6D4 00441025 */ or $v0, $v0, $a0
/* 320448 802BF6D8 00431024 */ and $v0, $v0, $v1
/* 32044C 802BF6DC AE220000 */ sw $v0, ($s1)
/* 320450 802BF6E0 3C10802C */ lui $s0, 0x802c
/* 320454 802BF6E4 2610FDF8 */ addiu $s0, $s0, -0x208
.L802BF6E8:
/* 320458 802BF6E8 8E020000 */ lw $v0, ($s0)
/* 32045C 802BF6EC 3C0140C9 */ lui $at, 0x40c9
/* 320460 802BF6F0 34210FD0 */ ori $at, $at, 0xfd0
/* 320464 802BF6F4 44810000 */ mtc1 $at, $f0
/* 320468 802BF6F8 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 32046C 802BF6FC 46006302 */ mul.s $f12, $f12, $f0
/* 320470 802BF700 00000000 */ nop
/* 320474 802BF704 27A50010 */ addiu $a1, $sp, 0x10
/* 320478 802BF708 3C0143B4 */ lui $at, 0x43b4
/* 32047C 802BF70C 44810000 */ mtc1 $at, $f0
/* 320480 802BF710 27A60014 */ addiu $a2, $sp, 0x14
/* 320484 802BF714 0C00A82D */ jal sin_cos_rad
/* 320488 802BF718 46006303 */ div.s $f12, $f12, $f0
/* 32048C 802BF71C 8E020000 */ lw $v0, ($s0)
/* 320490 802BF720 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 320494 802BF724 C440000C */ lwc1 $f0, 0xc($v0)
/* 320498 802BF728 46001082 */ mul.s $f2, $f2, $f0
/* 32049C 802BF72C 00000000 */ nop
/* 3204A0 802BF730 C6400048 */ lwc1 $f0, 0x48($s2)
/* 3204A4 802BF734 46020000 */ add.s $f0, $f0, $f2
/* 3204A8 802BF738 E6200038 */ swc1 $f0, 0x38($s1)
/* 3204AC 802BF73C C7A20014 */ lwc1 $f2, 0x14($sp)
/* 3204B0 802BF740 C440000C */ lwc1 $f0, 0xc($v0)
/* 3204B4 802BF744 46001082 */ mul.s $f2, $f2, $f0
/* 3204B8 802BF748 00000000 */ nop
/* 3204BC 802BF74C C6400050 */ lwc1 $f0, 0x50($s2)
/* 3204C0 802BF750 46020001 */ sub.s $f0, $f0, $f2
/* 3204C4 802BF754 E6200040 */ swc1 $f0, 0x40($s1)
/* 3204C8 802BF758 C4400010 */ lwc1 $f0, 0x10($v0)
/* 3204CC 802BF75C C44C0014 */ lwc1 $f12, 0x14($v0)
/* 3204D0 802BF760 0C00A6C9 */ jal clamp_angle
/* 3204D4 802BF764 460C0301 */ sub.s $f12, $f0, $f12
/* 3204D8 802BF768 8E100000 */ lw $s0, ($s0)
/* 3204DC 802BF76C 3C0141A0 */ lui $at, 0x41a0
/* 3204E0 802BF770 44811000 */ mtc1 $at, $f2
/* 3204E4 802BF774 C604000C */ lwc1 $f4, 0xc($s0)
/* 3204E8 802BF778 4604103C */ c.lt.s $f2, $f4
/* 3204EC 802BF77C 00000000 */ nop
/* 3204F0 802BF780 45000005 */ bc1f .L802BF798
/* 3204F4 802BF784 E6000010 */ swc1 $f0, 0x10($s0)
/* 3204F8 802BF788 3C013F80 */ lui $at, 0x3f80
/* 3204FC 802BF78C 44810000 */ mtc1 $at, $f0
/* 320500 802BF790 080AFDF1 */ j .L802BF7C4
/* 320504 802BF794 46002001 */ sub.s $f0, $f4, $f0
.L802BF798:
/* 320508 802BF798 3C014198 */ lui $at, 0x4198
/* 32050C 802BF79C 44810000 */ mtc1 $at, $f0
/* 320510 802BF7A0 00000000 */ nop
/* 320514 802BF7A4 4600203C */ c.lt.s $f4, $f0
/* 320518 802BF7A8 00000000 */ nop
/* 32051C 802BF7AC 45000006 */ bc1f .L802BF7C8
/* 320520 802BF7B0 00000000 */ nop
/* 320524 802BF7B4 3C013F80 */ lui $at, 0x3f80
/* 320528 802BF7B8 44810000 */ mtc1 $at, $f0
/* 32052C 802BF7BC 00000000 */ nop
/* 320530 802BF7C0 46002000 */ add.s $f0, $f4, $f0
.L802BF7C4:
/* 320534 802BF7C4 E600000C */ swc1 $f0, 0xc($s0)
.L802BF7C8:
/* 320538 802BF7C8 3C10802C */ lui $s0, 0x802c
/* 32053C 802BF7CC 2610FDF8 */ addiu $s0, $s0, -0x208
/* 320540 802BF7D0 8E020000 */ lw $v0, ($s0)
/* 320544 802BF7D4 3C0140C9 */ lui $at, 0x40c9
/* 320548 802BF7D8 34210FD0 */ ori $at, $at, 0xfd0
/* 32054C 802BF7DC 44810000 */ mtc1 $at, $f0
/* 320550 802BF7E0 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 320554 802BF7E4 46006302 */ mul.s $f12, $f12, $f0
/* 320558 802BF7E8 00000000 */ nop
/* 32055C 802BF7EC 3C0143B4 */ lui $at, 0x43b4
/* 320560 802BF7F0 4481A000 */ mtc1 $at, $f20
/* 320564 802BF7F4 0C00A85B */ jal sin_rad
/* 320568 802BF7F8 46146303 */ div.s $f12, $f12, $f20
/* 32056C 802BF7FC 8E020000 */ lw $v0, ($s0)
/* 320570 802BF800 3C014040 */ lui $at, 0x4040
/* 320574 802BF804 44812000 */ mtc1 $at, $f4
/* 320578 802BF808 C4420018 */ lwc1 $f2, 0x18($v0)
/* 32057C 802BF80C 46041080 */ add.s $f2, $f2, $f4
/* 320580 802BF810 3C014316 */ lui $at, 0x4316
/* 320584 802BF814 44813000 */ mtc1 $at, $f6
/* 320588 802BF818 00000000 */ nop
/* 32058C 802BF81C 4602303C */ c.lt.s $f6, $f2
/* 320590 802BF820 E4420018 */ swc1 $f2, 0x18($v0)
/* 320594 802BF824 46040082 */ mul.s $f2, $f0, $f4
/* 320598 802BF828 00000000 */ nop
/* 32059C 802BF82C 45030001 */ bc1tl .L802BF834
/* 3205A0 802BF830 E4460018 */ swc1 $f6, 0x18($v0)
.L802BF834:
/* 3205A4 802BF834 C620003C */ lwc1 $f0, 0x3c($s1)
/* 3205A8 802BF838 46020000 */ add.s $f0, $f0, $f2
/* 3205AC 802BF83C 8E020000 */ lw $v0, ($s0)
/* 3205B0 802BF840 E620003C */ swc1 $f0, 0x3c($s1)
/* 3205B4 802BF844 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 3205B8 802BF848 0C00A6C9 */ jal clamp_angle
/* 3205BC 802BF84C 460CA301 */ sub.s $f12, $f20, $f12
/* 3205C0 802BF850 8E020000 */ lw $v0, ($s0)
/* 3205C4 802BF854 E6200034 */ swc1 $f0, 0x34($s1)
/* 3205C8 802BF858 C4400014 */ lwc1 $f0, 0x14($v0)
/* 3205CC 802BF85C 3C01802C */ lui $at, 0x802c
/* 3205D0 802BF860 D422FED8 */ ldc1 $f2, -0x128($at)
/* 3205D4 802BF864 46000021 */ cvt.d.s $f0, $f0
/* 3205D8 802BF868 46220000 */ add.d $f0, $f0, $f2
/* 3205DC 802BF86C 3C014220 */ lui $at, 0x4220
/* 3205E0 802BF870 44811000 */ mtc1 $at, $f2
/* 3205E4 802BF874 46200020 */ cvt.s.d $f0, $f0
/* 3205E8 802BF878 4600103C */ c.lt.s $f2, $f0
/* 3205EC 802BF87C 00000000 */ nop
/* 3205F0 802BF880 45000002 */ bc1f .L802BF88C
/* 3205F4 802BF884 E4400014 */ swc1 $f0, 0x14($v0)
/* 3205F8 802BF888 E4420014 */ swc1 $f2, 0x14($v0)
.L802BF88C:
/* 3205FC 802BF88C 8E030000 */ lw $v1, ($s0)
/* 320600 802BF890 8C620000 */ lw $v0, ($v1)
/* 320604 802BF894 2442FFFF */ addiu $v0, $v0, -1
/* 320608 802BF898 14400018 */ bnez $v0, .L802BF8FC
/* 32060C 802BF89C AC620000 */ sw $v0, ($v1)
/* 320610 802BF8A0 8C620004 */ lw $v0, 4($v1)
/* 320614 802BF8A4 24420001 */ addiu $v0, $v0, 1
/* 320618 802BF8A8 080AFE3F */ j .L802BF8FC
/* 32061C 802BF8AC AC620004 */ sw $v0, 4($v1)
.L802BF8B0:
/* 320620 802BF8B0 8C820008 */ lw $v0, 8($a0)
/* 320624 802BF8B4 AE220000 */ sw $v0, ($s1)
/* 320628 802BF8B8 8C820004 */ lw $v0, 4($a0)
/* 32062C 802BF8BC 2403001E */ addiu $v1, $zero, 0x1e
/* 320630 802BF8C0 AC830000 */ sw $v1, ($a0)
/* 320634 802BF8C4 24420001 */ addiu $v0, $v0, 1
/* 320638 802BF8C8 080AFE3F */ j .L802BF8FC
/* 32063C 802BF8CC AC820004 */ sw $v0, 4($a0)
.L802BF8D0:
/* 320640 802BF8D0 0C03AE8F */ jal func_800EBA3C
/* 320644 802BF8D4 0220202D */ daddu $a0, $s1, $zero
/* 320648 802BF8D8 0C03AED0 */ jal func_800EBB40
/* 32064C 802BF8DC 0220202D */ daddu $a0, $s1, $zero
/* 320650 802BF8E0 8E030000 */ lw $v1, ($s0)
/* 320654 802BF8E4 8C620000 */ lw $v0, ($v1)
/* 320658 802BF8E8 2442FFFF */ addiu $v0, $v0, -1
/* 32065C 802BF8EC 14400003 */ bnez $v0, .L802BF8FC
/* 320660 802BF8F0 AC620000 */ sw $v0, ($v1)
/* 320664 802BF8F4 AC600004 */ sw $zero, 4($v1)
/* 320668 802BF8F8 AE600000 */ sw $zero, ($s3)
.L802BF8FC:
/* 32066C 802BF8FC 0000102D */ daddu $v0, $zero, $zero
.L802BF900:
/* 320670 802BF900 8FBF0028 */ lw $ra, 0x28($sp)
/* 320674 802BF904 8FB30024 */ lw $s3, 0x24($sp)
/* 320678 802BF908 8FB20020 */ lw $s2, 0x20($sp)
/* 32067C 802BF90C 8FB1001C */ lw $s1, 0x1c($sp)
/* 320680 802BF910 8FB00018 */ lw $s0, 0x18($sp)
/* 320684 802BF914 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 320688 802BF918 03E00008 */ jr $ra
/* 32068C 802BF91C 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF920
/* 320690 802BF920 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 320694 802BF924 3C058011 */ lui $a1, 0x8011
/* 320698 802BF928 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 32069C 802BF92C AFBF0010 */ sw $ra, 0x10($sp)
/* 3206A0 802BF930 8CA20000 */ lw $v0, ($a1)
/* 3206A4 802BF934 10400008 */ beqz $v0, .L802BF958
/* 3206A8 802BF938 00000000 */ nop
/* 3206AC 802BF93C 3C03802C */ lui $v1, 0x802c
/* 3206B0 802BF940 8C63FDF8 */ lw $v1, -0x208($v1)
/* 3206B4 802BF944 8C620008 */ lw $v0, 8($v1)
/* 3206B8 802BF948 ACA00000 */ sw $zero, ($a1)
/* 3206BC 802BF94C AC820000 */ sw $v0, ($a0)
/* 3206C0 802BF950 0C03BD17 */ jal clear_partner_move_history
/* 3206C4 802BF954 AC600004 */ sw $zero, 4($v1)
.L802BF958:
/* 3206C8 802BF958 8FBF0010 */ lw $ra, 0x10($sp)
/* 3206CC 802BF95C 03E00008 */ jr $ra
/* 3206D0 802BF960 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,26 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF964
/* 3206D4 802BF964 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3206D8 802BF968 AFBF0014 */ sw $ra, 0x14($sp)
/* 3206DC 802BF96C AFB00010 */ sw $s0, 0x10($sp)
/* 3206E0 802BF970 10A0000A */ beqz $a1, .L802BF99C
/* 3206E4 802BF974 8C90014C */ lw $s0, 0x14c($a0)
/* 3206E8 802BF978 0C03BA65 */ jal func_800EE994
/* 3206EC 802BF97C 0200202D */ daddu $a0, $s0, $zero
/* 3206F0 802BF980 3C04800F */ lui $a0, %hi(gPlayerStatusPtr)
/* 3206F4 802BF984 8C847B30 */ lw $a0, %lo(gPlayerStatusPtr)($a0)
/* 3206F8 802BF988 3C03FFBF */ lui $v1, 0xffbf
/* 3206FC 802BF98C 8C820004 */ lw $v0, 4($a0)
/* 320700 802BF990 3463FFFF */ ori $v1, $v1, 0xffff
/* 320704 802BF994 00431024 */ and $v0, $v0, $v1
/* 320708 802BF998 AC820004 */ sw $v0, 4($a0)
.L802BF99C:
/* 32070C 802BF99C 0C03BA6E */ jal func_800EE9B8
/* 320710 802BF9A0 0200202D */ daddu $a0, $s0, $zero
/* 320714 802BF9A4 8FBF0014 */ lw $ra, 0x14($sp)
/* 320718 802BF9A8 8FB00010 */ lw $s0, 0x10($sp)
/* 32071C 802BF9AC 0002102B */ sltu $v0, $zero, $v0
/* 320720 802BF9B0 03E00008 */ jr $ra
/* 320724 802BF9B4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,46 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF9B8
/* 320728 802BF9B8 3C02802C */ lui $v0, 0x802c
/* 32072C 802BF9BC 8C42FEEC */ lw $v0, -0x114($v0)
/* 320730 802BF9C0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 320734 802BF9C4 AFB00010 */ sw $s0, 0x10($sp)
/* 320738 802BF9C8 0080802D */ daddu $s0, $a0, $zero
/* 32073C 802BF9CC AFB10014 */ sw $s1, 0x14($sp)
/* 320740 802BF9D0 3C118011 */ lui $s1, %hi(D_8010EBB0)
/* 320744 802BF9D4 2631EBB0 */ addiu $s1, $s1, %lo(D_8010EBB0)
/* 320748 802BF9D8 10400018 */ beqz $v0, .L802BFA3C
/* 32074C 802BF9DC AFBF0018 */ sw $ra, 0x18($sp)
/* 320750 802BF9E0 26230018 */ addiu $v1, $s1, 0x18
/* 320754 802BF9E4 0200102D */ daddu $v0, $s0, $zero
/* 320758 802BF9E8 26040340 */ addiu $a0, $s0, 0x340
.L802BF9EC:
/* 32075C 802BF9EC 8C450000 */ lw $a1, ($v0)
/* 320760 802BF9F0 8C460004 */ lw $a2, 4($v0)
/* 320764 802BF9F4 8C470008 */ lw $a3, 8($v0)
/* 320768 802BF9F8 8C48000C */ lw $t0, 0xc($v0)
/* 32076C 802BF9FC AC650000 */ sw $a1, ($v1)
/* 320770 802BFA00 AC660004 */ sw $a2, 4($v1)
/* 320774 802BFA04 AC670008 */ sw $a3, 8($v1)
/* 320778 802BFA08 AC68000C */ sw $t0, 0xc($v1)
/* 32077C 802BFA0C 24420010 */ addiu $v0, $v0, 0x10
/* 320780 802BFA10 1444FFF6 */ bne $v0, $a0, .L802BF9EC
/* 320784 802BFA14 24630010 */ addiu $v1, $v1, 0x10
/* 320788 802BFA18 24020001 */ addiu $v0, $zero, 1
/* 32078C 802BFA1C 0C038050 */ jal enable_player_static_collisions
/* 320790 802BFA20 A2220001 */ sb $v0, 1($s1)
/* 320794 802BFA24 0C038069 */ jal enable_player_input
/* 320798 802BFA28 00000000 */ nop
/* 32079C 802BFA2C 0C039769 */ jal set_action_state
/* 3207A0 802BFA30 0000202D */ daddu $a0, $zero, $zero
/* 3207A4 802BFA34 0C03BD17 */ jal clear_partner_move_history
/* 3207A8 802BFA38 0200202D */ daddu $a0, $s0, $zero
.L802BFA3C:
/* 3207AC 802BFA3C 24020007 */ addiu $v0, $zero, 7
/* 3207B0 802BFA40 A2220003 */ sb $v0, 3($s1)
/* 3207B4 802BFA44 8FBF0018 */ lw $ra, 0x18($sp)
/* 3207B8 802BFA48 8FB10014 */ lw $s1, 0x14($sp)
/* 3207BC 802BFA4C 8FB00010 */ lw $s0, 0x10($sp)
/* 3207C0 802BFA50 03E00008 */ jr $ra
/* 3207C4 802BFA54 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,30 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFA58
/* 3207C8 802BFA58 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3207CC 802BFA5C 3C038011 */ lui $v1, %hi(D_8010EBB0)
/* 3207D0 802BFA60 2463EBB0 */ addiu $v1, $v1, %lo(D_8010EBB0)
/* 3207D4 802BFA64 AFBF0010 */ sw $ra, 0x10($sp)
/* 3207D8 802BFA68 80620001 */ lb $v0, 1($v1)
/* 3207DC 802BFA6C 1040000F */ beqz $v0, .L802BFAAC
/* 3207E0 802BFA70 24620018 */ addiu $v0, $v1, 0x18
/* 3207E4 802BFA74 24630358 */ addiu $v1, $v1, 0x358
.L802BFA78:
/* 3207E8 802BFA78 8C450000 */ lw $a1, ($v0)
/* 3207EC 802BFA7C 8C460004 */ lw $a2, 4($v0)
/* 3207F0 802BFA80 8C470008 */ lw $a3, 8($v0)
/* 3207F4 802BFA84 8C48000C */ lw $t0, 0xc($v0)
/* 3207F8 802BFA88 AC850000 */ sw $a1, ($a0)
/* 3207FC 802BFA8C AC860004 */ sw $a2, 4($a0)
/* 320800 802BFA90 AC870008 */ sw $a3, 8($a0)
/* 320804 802BFA94 AC88000C */ sw $t0, 0xc($a0)
/* 320808 802BFA98 24420010 */ addiu $v0, $v0, 0x10
/* 32080C 802BFA9C 1443FFF6 */ bne $v0, $v1, .L802BFA78
/* 320810 802BFAA0 24840010 */ addiu $a0, $a0, 0x10
/* 320814 802BFAA4 0C03ACC5 */ jal partner_use_ability
/* 320818 802BFAA8 00000000 */ nop
.L802BFAAC:
/* 32081C 802BFAAC 8FBF0010 */ lw $ra, 0x10($sp)
/* 320820 802BFAB0 03E00008 */ jr $ra
/* 320824 802BFAB4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,204 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFAB8
/* 320828 802BFAB8 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 32082C 802BFABC AFB30024 */ sw $s3, 0x24($sp)
/* 320830 802BFAC0 0080982D */ daddu $s3, $a0, $zero
/* 320834 802BFAC4 AFB00018 */ sw $s0, 0x18($sp)
/* 320838 802BFAC8 00A0802D */ daddu $s0, $a1, $zero
/* 32083C 802BFACC AFBF0028 */ sw $ra, 0x28($sp)
/* 320840 802BFAD0 AFB20020 */ sw $s2, 0x20($sp)
/* 320844 802BFAD4 AFB1001C */ sw $s1, 0x1c($sp)
/* 320848 802BFAD8 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 32084C 802BFADC 0C00EABB */ jal get_npc_unsafe
/* 320850 802BFAE0 2404FFFC */ addiu $a0, $zero, -4
/* 320854 802BFAE4 0040882D */ daddu $s1, $v0, $zero
/* 320858 802BFAE8 3C028011 */ lui $v0, %hi(gPlayerStatus)
/* 32085C 802BFAEC 2442EFC8 */ addiu $v0, $v0, %lo(gPlayerStatus)
/* 320860 802BFAF0 12000005 */ beqz $s0, .L802BFB08
/* 320864 802BFAF4 0040902D */ daddu $s2, $v0, $zero
/* 320868 802BFAF8 AE600070 */ sw $zero, 0x70($s3)
/* 32086C 802BFAFC C440002C */ lwc1 $f0, 0x2c($v0)
/* 320870 802BFB00 3C01802C */ lui $at, 0x802c
/* 320874 802BFB04 E420FEE0 */ swc1 $f0, -0x120($at)
.L802BFB08:
/* 320878 802BFB08 8E700070 */ lw $s0, 0x70($s3)
/* 32087C 802BFB0C 12000005 */ beqz $s0, .L802BFB24
/* 320880 802BFB10 24020001 */ addiu $v0, $zero, 1
/* 320884 802BFB14 1202006D */ beq $s0, $v0, .L802BFCCC
/* 320888 802BFB18 0000102D */ daddu $v0, $zero, $zero
/* 32088C 802BFB1C 080AFF61 */ j .L802BFD84
/* 320890 802BFB20 00000000 */ nop
.L802BFB24:
/* 320894 802BFB24 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 320898 802BFB28 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 32089C 802BFB2C 24020001 */ addiu $v0, $zero, 1
/* 3208A0 802BFB30 0C038045 */ jal disable_player_static_collisions
/* 3208A4 802BFB34 A062007D */ sb $v0, 0x7d($v1)
/* 3208A8 802BFB38 0C03805E */ jal disable_player_input
/* 3208AC 802BFB3C 00000000 */ nop
/* 3208B0 802BFB40 C6400028 */ lwc1 $f0, 0x28($s2)
/* 3208B4 802BFB44 C622000C */ lwc1 $f2, 0xc($s1)
/* 3208B8 802BFB48 E6200038 */ swc1 $f0, 0x38($s1)
/* 3208BC 802BFB4C C6400030 */ lwc1 $f0, 0x30($s2)
/* 3208C0 802BFB50 E6200040 */ swc1 $f0, 0x40($s1)
/* 3208C4 802BFB54 C640002C */ lwc1 $f0, 0x2c($s2)
/* 3208C8 802BFB58 E620003C */ swc1 $f0, 0x3c($s1)
/* 3208CC 802BFB5C E7A20010 */ swc1 $f2, 0x10($sp)
/* 3208D0 802BFB60 862200A6 */ lh $v0, 0xa6($s1)
/* 3208D4 802BFB64 3C013F00 */ lui $at, 0x3f00
/* 3208D8 802BFB68 4481A000 */ mtc1 $at, $f20
/* 3208DC 802BFB6C 44820000 */ mtc1 $v0, $f0
/* 3208E0 802BFB70 00000000 */ nop
/* 3208E4 802BFB74 46800020 */ cvt.s.w $f0, $f0
/* 3208E8 802BFB78 46140002 */ mul.s $f0, $f0, $f20
/* 3208EC 802BFB7C 00000000 */ nop
/* 3208F0 802BFB80 E7A00014 */ swc1 $f0, 0x14($sp)
/* 3208F4 802BFB84 8E240080 */ lw $a0, 0x80($s1)
/* 3208F8 802BFB88 8E250038 */ lw $a1, 0x38($s1)
/* 3208FC 802BFB8C 8E26003C */ lw $a2, 0x3c($s1)
/* 320900 802BFB90 0C0AF4DA */ jal func_802BD368
/* 320904 802BFB94 8E270040 */ lw $a3, 0x40($s1)
/* 320908 802BFB98 862200A8 */ lh $v0, 0xa8($s1)
/* 32090C 802BFB9C 44821000 */ mtc1 $v0, $f2
/* 320910 802BFBA0 00000000 */ nop
/* 320914 802BFBA4 468010A0 */ cvt.s.w $f2, $f2
/* 320918 802BFBA8 46141082 */ mul.s $f2, $f2, $f20
/* 32091C 802BFBAC 00000000 */ nop
/* 320920 802BFBB0 3C01802C */ lui $at, 0x802c
/* 320924 802BFBB4 C420FEE0 */ lwc1 $f0, -0x120($at)
/* 320928 802BFBB8 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 32092C 802BFBBC 46020001 */ sub.s $f0, $f0, $f2
/* 320930 802BFBC0 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 320934 802BFBC4 E620003C */ swc1 $f0, 0x3c($s1)
/* 320938 802BFBC8 C66A0088 */ lwc1 $f10, 0x88($s3)
/* 32093C 802BFBCC 468052A0 */ cvt.s.w $f10, $f10
/* 320940 802BFBD0 44065000 */ mfc1 $a2, $f10
/* 320944 802BFBD4 C66A0090 */ lwc1 $f10, 0x90($s3)
/* 320948 802BFBD8 468052A0 */ cvt.s.w $f10, $f10
/* 32094C 802BFBDC 44075000 */ mfc1 $a3, $f10
/* 320950 802BFBE0 0C00A720 */ jal atan2
/* 320954 802BFBE4 00000000 */ nop
/* 320958 802BFBE8 3C020007 */ lui $v0, 7
/* 32095C 802BFBEC 3442000A */ ori $v0, $v0, 0xa
/* 320960 802BFBF0 3C014040 */ lui $at, 0x4040
/* 320964 802BFBF4 44811000 */ mtc1 $at, $f2
/* 320968 802BFBF8 C6240038 */ lwc1 $f4, 0x38($s1)
/* 32096C 802BFBFC C626003C */ lwc1 $f6, 0x3c($s1)
/* 320970 802BFC00 C6280040 */ lwc1 $f8, 0x40($s1)
/* 320974 802BFC04 8E230000 */ lw $v1, ($s1)
/* 320978 802BFC08 0220202D */ daddu $a0, $s1, $zero
/* 32097C 802BFC0C AE220028 */ sw $v0, 0x28($s1)
/* 320980 802BFC10 2402FDFF */ addiu $v0, $zero, -0x201
/* 320984 802BFC14 E620000C */ swc1 $f0, 0xc($s1)
/* 320988 802BFC18 AE200014 */ sw $zero, 0x14($s1)
/* 32098C 802BFC1C 34630108 */ ori $v1, $v1, 0x108
/* 320990 802BFC20 00621824 */ and $v1, $v1, $v0
/* 320994 802BFC24 E6220018 */ swc1 $f2, 0x18($s1)
/* 320998 802BFC28 E6240060 */ swc1 $f4, 0x60($s1)
/* 32099C 802BFC2C E6260064 */ swc1 $f6, 0x64($s1)
/* 3209A0 802BFC30 E6280068 */ swc1 $f8, 0x68($s1)
/* 3209A4 802BFC34 0C00EAFF */ jal disable_npc_shadow
/* 3209A8 802BFC38 AE230000 */ sw $v1, ($s1)
/* 3209AC 802BFC3C 0C038039 */ jal disable_player_shadow
/* 3209B0 802BFC40 00000000 */ nop
/* 3209B4 802BFC44 8E6200B4 */ lw $v0, 0xb4($s3)
/* 3209B8 802BFC48 14400005 */ bnez $v0, .L802BFC60
/* 3209BC 802BFC4C 3C040008 */ lui $a0, 8
/* 3209C0 802BFC50 0C03ADF3 */ jal partner_kill_ability_script
/* 3209C4 802BFC54 00000000 */ nop
/* 3209C8 802BFC58 080AFF2F */ j .L802BFCBC
/* 3209CC 802BFC5C 24020019 */ addiu $v0, $zero, 0x19
.L802BFC60:
/* 3209D0 802BFC60 0C037FDE */ jal func_800DFF78
/* 3209D4 802BFC64 3484000F */ ori $a0, $a0, 0xf
/* 3209D8 802BFC68 C622000C */ lwc1 $f2, 0xc($s1)
/* 3209DC 802BFC6C 44800000 */ mtc1 $zero, $f0
/* 3209E0 802BFC70 00000000 */ nop
/* 3209E4 802BFC74 4602003E */ c.le.s $f0, $f2
/* 3209E8 802BFC78 00000000 */ nop
/* 3209EC 802BFC7C 4500000F */ bc1f .L802BFCBC
/* 3209F0 802BFC80 24020019 */ addiu $v0, $zero, 0x19
/* 3209F4 802BFC84 3C014334 */ lui $at, 0x4334
/* 3209F8 802BFC88 44810000 */ mtc1 $at, $f0
/* 3209FC 802BFC8C 00000000 */ nop
/* 320A00 802BFC90 4600103E */ c.le.s $f2, $f0
/* 320A04 802BFC94 00000000 */ nop
/* 320A08 802BFC98 45020009 */ bc1fl .L802BFCC0
/* 320A0C 802BFC9C AE620074 */ sw $v0, 0x74($s3)
/* 320A10 802BFCA0 4600128D */ trunc.w.s $f10, $f2
/* 320A14 802BFCA4 44025000 */ mfc1 $v0, $f10
/* 320A18 802BFCA8 00000000 */ nop
/* 320A1C 802BFCAC A622008A */ sh $v0, 0x8a($s1)
/* 320A20 802BFCB0 24020001 */ addiu $v0, $zero, 1
/* 320A24 802BFCB4 A6220088 */ sh $v0, 0x88($s1)
/* 320A28 802BFCB8 24020019 */ addiu $v0, $zero, 0x19
.L802BFCBC:
/* 320A2C 802BFCBC AE620074 */ sw $v0, 0x74($s3)
.L802BFCC0:
/* 320A30 802BFCC0 24020001 */ addiu $v0, $zero, 1
/* 320A34 802BFCC4 080AFF60 */ j .L802BFD80
/* 320A38 802BFCC8 AE620070 */ sw $v0, 0x70($s3)
.L802BFCCC:
/* 320A3C 802BFCCC 8E250018 */ lw $a1, 0x18($s1)
/* 320A40 802BFCD0 8E26000C */ lw $a2, 0xc($s1)
/* 320A44 802BFCD4 0C00EA95 */ jal npc_move_heading
/* 320A48 802BFCD8 0220202D */ daddu $a0, $s1, $zero
/* 320A4C 802BFCDC 0C0AF440 */ jal func_802BD100_31DE70
/* 320A50 802BFCE0 00000000 */ nop
/* 320A54 802BFCE4 8E620074 */ lw $v0, 0x74($s3)
/* 320A58 802BFCE8 30420003 */ andi $v0, $v0, 3
/* 320A5C 802BFCEC 14400011 */ bnez $v0, .L802BFD34
/* 320A60 802BFCF0 00000000 */ nop
/* 320A64 802BFCF4 862200A8 */ lh $v0, 0xa8($s1)
/* 320A68 802BFCF8 3C013F00 */ lui $at, 0x3f00
/* 320A6C 802BFCFC 44811000 */ mtc1 $at, $f2
/* 320A70 802BFD00 44820000 */ mtc1 $v0, $f0
/* 320A74 802BFD04 00000000 */ nop
/* 320A78 802BFD08 46800020 */ cvt.s.w $f0, $f0
/* 320A7C 802BFD0C 46020002 */ mul.s $f0, $f0, $f2
/* 320A80 802BFD10 00000000 */ nop
/* 320A84 802BFD14 C6220064 */ lwc1 $f2, 0x64($s1)
/* 320A88 802BFD18 AFA00010 */ sw $zero, 0x10($sp)
/* 320A8C 802BFD1C 46001080 */ add.s $f2, $f2, $f0
/* 320A90 802BFD20 8E250038 */ lw $a1, 0x38($s1)
/* 320A94 802BFD24 8E270040 */ lw $a3, 0x40($s1)
/* 320A98 802BFD28 44061000 */ mfc1 $a2, $f2
/* 320A9C 802BFD2C 0C01C16C */ jal func_800705B0
/* 320AA0 802BFD30 0000202D */ daddu $a0, $zero, $zero
.L802BFD34:
/* 320AA4 802BFD34 8E620074 */ lw $v0, 0x74($s3)
/* 320AA8 802BFD38 2442FFFF */ addiu $v0, $v0, -1
/* 320AAC 802BFD3C 14400010 */ bnez $v0, .L802BFD80
/* 320AB0 802BFD40 AE620074 */ sw $v0, 0x74($s3)
/* 320AB4 802BFD44 8E6200B4 */ lw $v0, 0xb4($s3)
/* 320AB8 802BFD48 14500007 */ bne $v0, $s0, .L802BFD68
/* 320ABC 802BFD4C 00000000 */ nop
/* 320AC0 802BFD50 0C039769 */ jal set_action_state
/* 320AC4 802BFD54 24040021 */ addiu $a0, $zero, 0x21
/* 320AC8 802BFD58 0C03ACC5 */ jal partner_use_ability
/* 320ACC 802BFD5C 00000000 */ nop
/* 320AD0 802BFD60 080AFF61 */ j .L802BFD84
/* 320AD4 802BFD64 24020002 */ addiu $v0, $zero, 2
.L802BFD68:
/* 320AD8 802BFD68 0C038050 */ jal enable_player_static_collisions
/* 320ADC 802BFD6C 00000000 */ nop
/* 320AE0 802BFD70 0C038069 */ jal enable_player_input
/* 320AE4 802BFD74 00000000 */ nop
/* 320AE8 802BFD78 080AFF61 */ j .L802BFD84
/* 320AEC 802BFD7C 24020002 */ addiu $v0, $zero, 2
.L802BFD80:
/* 320AF0 802BFD80 0000102D */ daddu $v0, $zero, $zero
.L802BFD84:
/* 320AF4 802BFD84 8FBF0028 */ lw $ra, 0x28($sp)
/* 320AF8 802BFD88 8FB30024 */ lw $s3, 0x24($sp)
/* 320AFC 802BFD8C 8FB20020 */ lw $s2, 0x20($sp)
/* 320B00 802BFD90 8FB1001C */ lw $s1, 0x1c($sp)
/* 320B04 802BFD94 8FB00018 */ lw $s0, 0x18($sp)
/* 320B08 802BFD98 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 320B0C 802BFD9C 03E00008 */ jr $ra
/* 320B10 802BFDA0 27BD0038 */ addiu $sp, $sp, 0x38
/* 320B14 802BFDA4 00000000 */ nop
/* 320B18 802BFDA8 00000000 */ nop
/* 320B1C 802BFDAC 00000000 */ nop

View File

@ -0,0 +1,78 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_320C50
/* 320C50 802BD100 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 320C54 802BD104 2404FFFC */ addiu $a0, $zero, -4
/* 320C58 802BD108 AFB10014 */ sw $s1, 0x14($sp)
/* 320C5C 802BD10C 3C118011 */ lui $s1, %hi(gPlayerStatus)
/* 320C60 802BD110 2631EFC8 */ addiu $s1, $s1, %lo(gPlayerStatus)
/* 320C64 802BD114 AFBF0018 */ sw $ra, 0x18($sp)
/* 320C68 802BD118 0C00EABB */ jal get_npc_unsafe
/* 320C6C 802BD11C AFB00010 */ sw $s0, 0x10($sp)
/* 320C70 802BD120 8E230000 */ lw $v1, ($s1)
/* 320C74 802BD124 0040802D */ daddu $s0, $v0, $zero
/* 320C78 802BD128 30624000 */ andi $v0, $v1, 0x4000
/* 320C7C 802BD12C 10400010 */ beqz $v0, .L802BD170
/* 320C80 802BD130 3C020004 */ lui $v0, 4
/* 320C84 802BD134 C6220054 */ lwc1 $f2, 0x54($s1)
/* 320C88 802BD138 00621024 */ and $v0, $v1, $v0
/* 320C8C 802BD13C 10400006 */ beqz $v0, .L802BD158
/* 320C90 802BD140 26040038 */ addiu $a0, $s0, 0x38
/* 320C94 802BD144 3C013F00 */ lui $at, 0x3f00
/* 320C98 802BD148 44810000 */ mtc1 $at, $f0
/* 320C9C 802BD14C 00000000 */ nop
/* 320CA0 802BD150 46001082 */ mul.s $f2, $f2, $f0
/* 320CA4 802BD154 00000000 */ nop
.L802BD158:
/* 320CA8 802BD158 44061000 */ mfc1 $a2, $f2
/* 320CAC 802BD15C 8E2700A0 */ lw $a3, 0xa0($s1)
/* 320CB0 802BD160 0C00A7E7 */ jal add_vec2D_polar
/* 320CB4 802BD164 26050040 */ addiu $a1, $s0, 0x40
/* 320CB8 802BD168 C6200080 */ lwc1 $f0, 0x80($s1)
/* 320CBC 802BD16C E600000C */ swc1 $f0, 0xc($s0)
.L802BD170:
/* 320CC0 802BD170 26240028 */ addiu $a0, $s1, 0x28
/* 320CC4 802BD174 3C02802C */ lui $v0, 0x802c
/* 320CC8 802BD178 8C42FF18 */ lw $v0, -0xe8($v0)
/* 320CCC 802BD17C 3C013EAE */ lui $at, 0x3eae
/* 320CD0 802BD180 3421147B */ ori $at, $at, 0x147b
/* 320CD4 802BD184 44810000 */ mtc1 $at, $f0
/* 320CD8 802BD188 C6020038 */ lwc1 $f2, 0x38($s0)
/* 320CDC 802BD18C 3C064000 */ lui $a2, 0x4000
/* 320CE0 802BD190 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 320CE4 802BD194 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 320CE8 802BD198 04420001 */ bltzl $v0, .L802BD1A0
/* 320CEC 802BD19C 00021023 */ negu $v0, $v0
.L802BD1A0:
/* 320CF0 802BD1A0 44822000 */ mtc1 $v0, $f4
/* 320CF4 802BD1A4 00000000 */ nop
/* 320CF8 802BD1A8 46802120 */ cvt.s.w $f4, $f4
/* 320CFC 802BD1AC 00031080 */ sll $v0, $v1, 2
/* 320D00 802BD1B0 46002102 */ mul.s $f4, $f4, $f0
/* 320D04 802BD1B4 00000000 */ nop
/* 320D08 802BD1B8 E6220028 */ swc1 $f2, 0x28($s1)
/* 320D0C 802BD1BC C600003C */ lwc1 $f0, 0x3c($s0)
/* 320D10 802BD1C0 3C014120 */ lui $at, 0x4120
/* 320D14 802BD1C4 44811000 */ mtc1 $at, $f2
/* 320D18 802BD1C8 00431021 */ addu $v0, $v0, $v1
/* 320D1C 802BD1CC 46020000 */ add.s $f0, $f0, $f2
/* 320D20 802BD1D0 00021080 */ sll $v0, $v0, 2
/* 320D24 802BD1D4 00431023 */ subu $v0, $v0, $v1
/* 320D28 802BD1D8 46040000 */ add.s $f0, $f0, $f4
/* 320D2C 802BD1DC 000218C0 */ sll $v1, $v0, 3
/* 320D30 802BD1E0 00431021 */ addu $v0, $v0, $v1
/* 320D34 802BD1E4 E620002C */ swc1 $f0, 0x2c($s1)
/* 320D38 802BD1E8 C6000040 */ lwc1 $f0, 0x40($s0)
/* 320D3C 802BD1EC 000210C0 */ sll $v0, $v0, 3
/* 320D40 802BD1F0 E6200030 */ swc1 $f0, 0x30($s1)
/* 320D44 802BD1F4 3C07800B */ lui $a3, 0x800b
/* 320D48 802BD1F8 00E23821 */ addu $a3, $a3, $v0
/* 320D4C 802BD1FC 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 320D50 802BD200 0C00A7E7 */ jal add_vec2D_polar
/* 320D54 802BD204 26250030 */ addiu $a1, $s1, 0x30
/* 320D58 802BD208 8FBF0018 */ lw $ra, 0x18($sp)
/* 320D5C 802BD20C 8FB10014 */ lw $s1, 0x14($sp)
/* 320D60 802BD210 8FB00010 */ lw $s0, 0x10($sp)
/* 320D64 802BD214 03E00008 */ jr $ra
/* 320D68 802BD218 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,36 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD21C
/* 320D6C 802BD21C C4800038 */ lwc1 $f0, 0x38($a0)
/* 320D70 802BD220 C482003C */ lwc1 $f2, 0x3c($a0)
/* 320D74 802BD224 C4840040 */ lwc1 $f4, 0x40($a0)
/* 320D78 802BD228 24020026 */ addiu $v0, $zero, 0x26
/* 320D7C 802BD22C A48200A8 */ sh $v0, 0xa8($a0)
/* 320D80 802BD230 24020024 */ addiu $v0, $zero, 0x24
/* 320D84 802BD234 A48200A6 */ sh $v0, 0xa6($a0)
/* 320D88 802BD238 3C020001 */ lui $v0, 1
/* 320D8C 802BD23C AC820080 */ sw $v0, 0x80($a0)
/* 320D90 802BD240 24020001 */ addiu $v0, $zero, 1
/* 320D94 802BD244 3C01802C */ lui $at, 0x802c
/* 320D98 802BD248 AC20FF18 */ sw $zero, -0xe8($at)
/* 320D9C 802BD24C 3C01802C */ lui $at, 0x802c
/* 320DA0 802BD250 AC20FF04 */ sw $zero, -0xfc($at)
/* 320DA4 802BD254 3C01802C */ lui $at, 0x802c
/* 320DA8 802BD258 AC20FF08 */ sw $zero, -0xf8($at)
/* 320DAC 802BD25C 3C01802C */ lui $at, 0x802c
/* 320DB0 802BD260 AC20FF0C */ sw $zero, -0xf4($at)
/* 320DB4 802BD264 3C01802C */ lui $at, 0x802c
/* 320DB8 802BD268 AC22FF10 */ sw $v0, -0xf0($at)
/* 320DBC 802BD26C 3C01802C */ lui $at, 0x802c
/* 320DC0 802BD270 AC20FF1C */ sw $zero, -0xe4($at)
/* 320DC4 802BD274 3C01802C */ lui $at, 0x802c
/* 320DC8 802BD278 AC20FF20 */ sw $zero, -0xe0($at)
/* 320DCC 802BD27C 3C01802C */ lui $at, 0x802c
/* 320DD0 802BD280 AC20FF24 */ sw $zero, -0xdc($at)
/* 320DD4 802BD284 3C01802C */ lui $at, 0x802c
/* 320DD8 802BD288 AC20FF28 */ sw $zero, -0xd8($at)
/* 320DDC 802BD28C E4800060 */ swc1 $f0, 0x60($a0)
/* 320DE0 802BD290 E4820064 */ swc1 $f2, 0x64($a0)
/* 320DE4 802BD294 03E00008 */ jr $ra
/* 320DE8 802BD298 E4840068 */ swc1 $f4, 0x68($a0)

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD29C
/* 320DEC 802BD29C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 320DF0 802BD2A0 AFBF0014 */ sw $ra, 0x14($sp)
/* 320DF4 802BD2A4 AFB00010 */ sw $s0, 0x10($sp)
/* 320DF8 802BD2A8 10A00003 */ beqz $a1, .L802BD2B8
/* 320DFC 802BD2AC 8C90014C */ lw $s0, 0x14c($a0)
/* 320E00 802BD2B0 0C03BB31 */ jal func_800EECC4
/* 320E04 802BD2B4 0200202D */ daddu $a0, $s0, $zero
.L802BD2B8:
/* 320E08 802BD2B8 0C03BB3A */ jal func_800EECE8
/* 320E0C 802BD2BC 0200202D */ daddu $a0, $s0, $zero
/* 320E10 802BD2C0 8FBF0014 */ lw $ra, 0x14($sp)
/* 320E14 802BD2C4 8FB00010 */ lw $s0, 0x10($sp)
/* 320E18 802BD2C8 0002102B */ sltu $v0, $zero, $v0
/* 320E1C 802BD2CC 03E00008 */ jr $ra
/* 320E20 802BD2D0 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,251 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD2D4
/* 320E24 802BD2D4 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 320E28 802BD2D8 AFB00018 */ sw $s0, 0x18($sp)
/* 320E2C 802BD2DC 3C108011 */ lui $s0, %hi(gPlayerData)
/* 320E30 802BD2E0 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 320E34 802BD2E4 AFBF0028 */ sw $ra, 0x28($sp)
/* 320E38 802BD2E8 AFB30024 */ sw $s3, 0x24($sp)
/* 320E3C 802BD2EC AFB20020 */ sw $s2, 0x20($sp)
/* 320E40 802BD2F0 AFB1001C */ sw $s1, 0x1c($sp)
/* 320E44 802BD2F4 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 320E48 802BD2F8 8C91014C */ lw $s1, 0x14c($a0)
/* 320E4C 802BD2FC 10A00009 */ beqz $a1, .L802BD324
/* 320E50 802BD300 0220202D */ daddu $a0, $s1, $zero
/* 320E54 802BD304 0C03B4C4 */ jal enable_partner_flying
/* 320E58 802BD308 24050001 */ addiu $a1, $zero, 1
/* 320E5C 802BD30C 3C04802C */ lui $a0, 0x802c
/* 320E60 802BD310 8C84FE7C */ lw $a0, -0x184($a0)
/* 320E64 802BD314 0C00A580 */ jal mem_clear
/* 320E68 802BD318 2405001C */ addiu $a1, $zero, 0x1c
/* 320E6C 802BD31C 3C018011 */ lui $at, 0x8011
/* 320E70 802BD320 AC20C954 */ sw $zero, -0x36ac($at)
.L802BD324:
/* 320E74 802BD324 3C030001 */ lui $v1, 1
/* 320E78 802BD328 8E020314 */ lw $v0, 0x314($s0)
/* 320E7C 802BD32C 3C138011 */ lui $s3, 0x8011
/* 320E80 802BD330 2673C954 */ addiu $s3, $s3, -0x36ac
/* 320E84 802BD334 24420001 */ addiu $v0, $v0, 1
/* 320E88 802BD338 AE020314 */ sw $v0, 0x314($s0)
/* 320E8C 802BD33C 8E220000 */ lw $v0, ($s1)
/* 320E90 802BD340 8E720000 */ lw $s2, ($s3)
/* 320E94 802BD344 00431025 */ or $v0, $v0, $v1
/* 320E98 802BD348 16400007 */ bnez $s2, .L802BD368
/* 320E9C 802BD34C AE220000 */ sw $v0, ($s1)
/* 320EA0 802BD350 0C03B52E */ jal update_player_move_history
/* 320EA4 802BD354 0220202D */ daddu $a0, $s1, $zero
/* 320EA8 802BD358 0C03B574 */ jal func_800ED5D0
/* 320EAC 802BD35C 0220202D */ daddu $a0, $s1, $zero
/* 320EB0 802BD360 080AF596 */ j .L802BD658
/* 320EB4 802BD364 0000102D */ daddu $v0, $zero, $zero
.L802BD368:
/* 320EB8 802BD368 3C10802C */ lui $s0, 0x802c
/* 320EBC 802BD36C 2610FE7C */ addiu $s0, $s0, -0x184
/* 320EC0 802BD370 8E040000 */ lw $a0, ($s0)
/* 320EC4 802BD374 8C830004 */ lw $v1, 4($a0)
/* 320EC8 802BD378 24050001 */ addiu $a1, $zero, 1
/* 320ECC 802BD37C 10650030 */ beq $v1, $a1, .L802BD440
/* 320ED0 802BD380 28620002 */ slti $v0, $v1, 2
/* 320ED4 802BD384 10400005 */ beqz $v0, .L802BD39C
/* 320ED8 802BD388 24020002 */ addiu $v0, $zero, 2
/* 320EDC 802BD38C 10600009 */ beqz $v1, .L802BD3B4
/* 320EE0 802BD390 0000102D */ daddu $v0, $zero, $zero
/* 320EE4 802BD394 080AF596 */ j .L802BD658
/* 320EE8 802BD398 00000000 */ nop
.L802BD39C:
/* 320EEC 802BD39C 1062009A */ beq $v1, $v0, .L802BD608
/* 320EF0 802BD3A0 24020003 */ addiu $v0, $zero, 3
/* 320EF4 802BD3A4 106200A0 */ beq $v1, $v0, .L802BD628
/* 320EF8 802BD3A8 0000102D */ daddu $v0, $zero, $zero
/* 320EFC 802BD3AC 080AF596 */ j .L802BD658
/* 320F00 802BD3B0 00000000 */ nop
.L802BD3B4:
/* 320F04 802BD3B4 AC850004 */ sw $a1, 4($a0)
/* 320F08 802BD3B8 8E220000 */ lw $v0, ($s1)
/* 320F0C 802BD3BC AC820008 */ sw $v0, 8($a0)
/* 320F10 802BD3C0 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 320F14 802BD3C4 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 320F18 802BD3C8 8E460048 */ lw $a2, 0x48($s2)
/* 320F1C 802BD3CC 0C00A7B5 */ jal dist2D
/* 320F20 802BD3D0 8E470050 */ lw $a3, 0x50($s2)
/* 320F24 802BD3D4 8E020000 */ lw $v0, ($s0)
/* 320F28 802BD3D8 46000005 */ abs.s $f0, $f0
/* 320F2C 802BD3DC E440000C */ swc1 $f0, 0xc($v0)
/* 320F30 802BD3E0 C64C0048 */ lwc1 $f12, 0x48($s2)
/* 320F34 802BD3E4 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 320F38 802BD3E8 8E260038 */ lw $a2, 0x38($s1)
/* 320F3C 802BD3EC 0C00A720 */ jal atan2
/* 320F40 802BD3F0 8E270040 */ lw $a3, 0x40($s1)
/* 320F44 802BD3F4 3C040004 */ lui $a0, 4
/* 320F48 802BD3F8 24020078 */ addiu $v0, $zero, 0x78
/* 320F4C 802BD3FC 8E030000 */ lw $v1, ($s0)
/* 320F50 802BD400 3C0140C0 */ lui $at, 0x40c0
/* 320F54 802BD404 44811000 */ mtc1 $at, $f2
/* 320F58 802BD408 3C014248 */ lui $at, 0x4248
/* 320F5C 802BD40C 44812000 */ mtc1 $at, $f4
/* 320F60 802BD410 34840148 */ ori $a0, $a0, 0x148
/* 320F64 802BD414 E4600010 */ swc1 $f0, 0x10($v1)
/* 320F68 802BD418 E4620014 */ swc1 $f2, 0x14($v1)
/* 320F6C 802BD41C E4640018 */ swc1 $f4, 0x18($v1)
/* 320F70 802BD420 AC620000 */ sw $v0, ($v1)
/* 320F74 802BD424 8E220000 */ lw $v0, ($s1)
/* 320F78 802BD428 2403FDFF */ addiu $v1, $zero, -0x201
/* 320F7C 802BD42C 00441025 */ or $v0, $v0, $a0
/* 320F80 802BD430 00431024 */ and $v0, $v0, $v1
/* 320F84 802BD434 AE220000 */ sw $v0, ($s1)
/* 320F88 802BD438 3C10802C */ lui $s0, 0x802c
/* 320F8C 802BD43C 2610FE7C */ addiu $s0, $s0, -0x184
.L802BD440:
/* 320F90 802BD440 8E020000 */ lw $v0, ($s0)
/* 320F94 802BD444 3C0140C9 */ lui $at, 0x40c9
/* 320F98 802BD448 34210FD0 */ ori $at, $at, 0xfd0
/* 320F9C 802BD44C 44810000 */ mtc1 $at, $f0
/* 320FA0 802BD450 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 320FA4 802BD454 46006302 */ mul.s $f12, $f12, $f0
/* 320FA8 802BD458 00000000 */ nop
/* 320FAC 802BD45C 27A50010 */ addiu $a1, $sp, 0x10
/* 320FB0 802BD460 3C0143B4 */ lui $at, 0x43b4
/* 320FB4 802BD464 44810000 */ mtc1 $at, $f0
/* 320FB8 802BD468 27A60014 */ addiu $a2, $sp, 0x14
/* 320FBC 802BD46C 0C00A82D */ jal sin_cos_rad
/* 320FC0 802BD470 46006303 */ div.s $f12, $f12, $f0
/* 320FC4 802BD474 8E020000 */ lw $v0, ($s0)
/* 320FC8 802BD478 C7A20010 */ lwc1 $f2, 0x10($sp)
/* 320FCC 802BD47C C440000C */ lwc1 $f0, 0xc($v0)
/* 320FD0 802BD480 46001082 */ mul.s $f2, $f2, $f0
/* 320FD4 802BD484 00000000 */ nop
/* 320FD8 802BD488 C6400048 */ lwc1 $f0, 0x48($s2)
/* 320FDC 802BD48C 46020000 */ add.s $f0, $f0, $f2
/* 320FE0 802BD490 E6200038 */ swc1 $f0, 0x38($s1)
/* 320FE4 802BD494 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 320FE8 802BD498 C440000C */ lwc1 $f0, 0xc($v0)
/* 320FEC 802BD49C 46001082 */ mul.s $f2, $f2, $f0
/* 320FF0 802BD4A0 00000000 */ nop
/* 320FF4 802BD4A4 C6400050 */ lwc1 $f0, 0x50($s2)
/* 320FF8 802BD4A8 46020001 */ sub.s $f0, $f0, $f2
/* 320FFC 802BD4AC E6200040 */ swc1 $f0, 0x40($s1)
/* 321000 802BD4B0 C4400010 */ lwc1 $f0, 0x10($v0)
/* 321004 802BD4B4 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 321008 802BD4B8 0C00A6C9 */ jal clamp_angle
/* 32100C 802BD4BC 460C0301 */ sub.s $f12, $f0, $f12
/* 321010 802BD4C0 8E100000 */ lw $s0, ($s0)
/* 321014 802BD4C4 3C0141A0 */ lui $at, 0x41a0
/* 321018 802BD4C8 44811000 */ mtc1 $at, $f2
/* 32101C 802BD4CC C604000C */ lwc1 $f4, 0xc($s0)
/* 321020 802BD4D0 4604103C */ c.lt.s $f2, $f4
/* 321024 802BD4D4 00000000 */ nop
/* 321028 802BD4D8 45000005 */ bc1f .L802BD4F0
/* 32102C 802BD4DC E6000010 */ swc1 $f0, 0x10($s0)
/* 321030 802BD4E0 3C013F80 */ lui $at, 0x3f80
/* 321034 802BD4E4 44810000 */ mtc1 $at, $f0
/* 321038 802BD4E8 080AF547 */ j .L802BD51C
/* 32103C 802BD4EC 46002001 */ sub.s $f0, $f4, $f0
.L802BD4F0:
/* 321040 802BD4F0 3C014198 */ lui $at, 0x4198
/* 321044 802BD4F4 44810000 */ mtc1 $at, $f0
/* 321048 802BD4F8 00000000 */ nop
/* 32104C 802BD4FC 4600203C */ c.lt.s $f4, $f0
/* 321050 802BD500 00000000 */ nop
/* 321054 802BD504 45000006 */ bc1f .L802BD520
/* 321058 802BD508 00000000 */ nop
/* 32105C 802BD50C 3C013F80 */ lui $at, 0x3f80
/* 321060 802BD510 44810000 */ mtc1 $at, $f0
/* 321064 802BD514 00000000 */ nop
/* 321068 802BD518 46002000 */ add.s $f0, $f4, $f0
.L802BD51C:
/* 32106C 802BD51C E600000C */ swc1 $f0, 0xc($s0)
.L802BD520:
/* 321070 802BD520 3C10802C */ lui $s0, 0x802c
/* 321074 802BD524 2610FE7C */ addiu $s0, $s0, -0x184
/* 321078 802BD528 8E020000 */ lw $v0, ($s0)
/* 32107C 802BD52C 3C0140C9 */ lui $at, 0x40c9
/* 321080 802BD530 34210FD0 */ ori $at, $at, 0xfd0
/* 321084 802BD534 44810000 */ mtc1 $at, $f0
/* 321088 802BD538 C44C0018 */ lwc1 $f12, 0x18($v0)
/* 32108C 802BD53C 46006302 */ mul.s $f12, $f12, $f0
/* 321090 802BD540 00000000 */ nop
/* 321094 802BD544 3C0143B4 */ lui $at, 0x43b4
/* 321098 802BD548 4481A000 */ mtc1 $at, $f20
/* 32109C 802BD54C 0C00A85B */ jal sin_rad
/* 3210A0 802BD550 46146303 */ div.s $f12, $f12, $f20
/* 3210A4 802BD554 8E020000 */ lw $v0, ($s0)
/* 3210A8 802BD558 3C014040 */ lui $at, 0x4040
/* 3210AC 802BD55C 44812000 */ mtc1 $at, $f4
/* 3210B0 802BD560 C4420018 */ lwc1 $f2, 0x18($v0)
/* 3210B4 802BD564 46041080 */ add.s $f2, $f2, $f4
/* 3210B8 802BD568 3C014316 */ lui $at, 0x4316
/* 3210BC 802BD56C 44813000 */ mtc1 $at, $f6
/* 3210C0 802BD570 00000000 */ nop
/* 3210C4 802BD574 4602303C */ c.lt.s $f6, $f2
/* 3210C8 802BD578 E4420018 */ swc1 $f2, 0x18($v0)
/* 3210CC 802BD57C 46040082 */ mul.s $f2, $f0, $f4
/* 3210D0 802BD580 00000000 */ nop
/* 3210D4 802BD584 45030001 */ bc1tl .L802BD58C
/* 3210D8 802BD588 E4460018 */ swc1 $f6, 0x18($v0)
.L802BD58C:
/* 3210DC 802BD58C C620003C */ lwc1 $f0, 0x3c($s1)
/* 3210E0 802BD590 46020000 */ add.s $f0, $f0, $f2
/* 3210E4 802BD594 8E020000 */ lw $v0, ($s0)
/* 3210E8 802BD598 E620003C */ swc1 $f0, 0x3c($s1)
/* 3210EC 802BD59C C44C0010 */ lwc1 $f12, 0x10($v0)
/* 3210F0 802BD5A0 0C00A6C9 */ jal clamp_angle
/* 3210F4 802BD5A4 460CA301 */ sub.s $f12, $f20, $f12
/* 3210F8 802BD5A8 8E020000 */ lw $v0, ($s0)
/* 3210FC 802BD5AC E6200034 */ swc1 $f0, 0x34($s1)
/* 321100 802BD5B0 C4400014 */ lwc1 $f0, 0x14($v0)
/* 321104 802BD5B4 3C01802C */ lui $at, 0x802c
/* 321108 802BD5B8 D422FEF0 */ ldc1 $f2, -0x110($at)
/* 32110C 802BD5BC 46000021 */ cvt.d.s $f0, $f0
/* 321110 802BD5C0 46220000 */ add.d $f0, $f0, $f2
/* 321114 802BD5C4 3C014220 */ lui $at, 0x4220
/* 321118 802BD5C8 44811000 */ mtc1 $at, $f2
/* 32111C 802BD5CC 46200020 */ cvt.s.d $f0, $f0
/* 321120 802BD5D0 4600103C */ c.lt.s $f2, $f0
/* 321124 802BD5D4 00000000 */ nop
/* 321128 802BD5D8 45000002 */ bc1f .L802BD5E4
/* 32112C 802BD5DC E4400014 */ swc1 $f0, 0x14($v0)
/* 321130 802BD5E0 E4420014 */ swc1 $f2, 0x14($v0)
.L802BD5E4:
/* 321134 802BD5E4 8E030000 */ lw $v1, ($s0)
/* 321138 802BD5E8 8C620000 */ lw $v0, ($v1)
/* 32113C 802BD5EC 2442FFFF */ addiu $v0, $v0, -1
/* 321140 802BD5F0 14400018 */ bnez $v0, .L802BD654
/* 321144 802BD5F4 AC620000 */ sw $v0, ($v1)
/* 321148 802BD5F8 8C620004 */ lw $v0, 4($v1)
/* 32114C 802BD5FC 24420001 */ addiu $v0, $v0, 1
/* 321150 802BD600 080AF595 */ j .L802BD654
/* 321154 802BD604 AC620004 */ sw $v0, 4($v1)
.L802BD608:
/* 321158 802BD608 8C820008 */ lw $v0, 8($a0)
/* 32115C 802BD60C AE220000 */ sw $v0, ($s1)
/* 321160 802BD610 8C820004 */ lw $v0, 4($a0)
/* 321164 802BD614 2403001E */ addiu $v1, $zero, 0x1e
/* 321168 802BD618 AC830000 */ sw $v1, ($a0)
/* 32116C 802BD61C 24420001 */ addiu $v0, $v0, 1
/* 321170 802BD620 080AF595 */ j .L802BD654
/* 321174 802BD624 AC820004 */ sw $v0, 4($a0)
.L802BD628:
/* 321178 802BD628 0C03B52E */ jal update_player_move_history
/* 32117C 802BD62C 0220202D */ daddu $a0, $s1, $zero
/* 321180 802BD630 0C03B574 */ jal func_800ED5D0
/* 321184 802BD634 0220202D */ daddu $a0, $s1, $zero
/* 321188 802BD638 8E030000 */ lw $v1, ($s0)
/* 32118C 802BD63C 8C620000 */ lw $v0, ($v1)
/* 321190 802BD640 2442FFFF */ addiu $v0, $v0, -1
/* 321194 802BD644 14400003 */ bnez $v0, .L802BD654
/* 321198 802BD648 AC620000 */ sw $v0, ($v1)
/* 32119C 802BD64C AC600004 */ sw $zero, 4($v1)
/* 3211A0 802BD650 AE600000 */ sw $zero, ($s3)
.L802BD654:
/* 3211A4 802BD654 0000102D */ daddu $v0, $zero, $zero
.L802BD658:
/* 3211A8 802BD658 8FBF0028 */ lw $ra, 0x28($sp)
/* 3211AC 802BD65C 8FB30024 */ lw $s3, 0x24($sp)
/* 3211B0 802BD660 8FB20020 */ lw $s2, 0x20($sp)
/* 3211B4 802BD664 8FB1001C */ lw $s1, 0x1c($sp)
/* 3211B8 802BD668 8FB00018 */ lw $s0, 0x18($sp)
/* 3211BC 802BD66C D7B40030 */ ldc1 $f20, 0x30($sp)
/* 3211C0 802BD670 03E00008 */ jr $ra
/* 3211C4 802BD674 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD678
/* 3211C8 802BD678 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3211CC 802BD67C 3C058011 */ lui $a1, 0x8011
/* 3211D0 802BD680 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 3211D4 802BD684 AFBF0010 */ sw $ra, 0x10($sp)
/* 3211D8 802BD688 8CA20000 */ lw $v0, ($a1)
/* 3211DC 802BD68C 10400008 */ beqz $v0, .L802BD6B0
/* 3211E0 802BD690 00000000 */ nop
/* 3211E4 802BD694 3C03802C */ lui $v1, 0x802c
/* 3211E8 802BD698 8C63FE7C */ lw $v1, -0x184($v1)
/* 3211EC 802BD69C 8C620008 */ lw $v0, 8($v1)
/* 3211F0 802BD6A0 ACA00000 */ sw $zero, ($a1)
/* 3211F4 802BD6A4 AC820000 */ sw $v0, ($a0)
/* 3211F8 802BD6A8 0C03BD17 */ jal clear_partner_move_history
/* 3211FC 802BD6AC AC600004 */ sw $zero, 4($v1)
.L802BD6B0:
/* 321200 802BD6B0 8FBF0010 */ lw $ra, 0x10($sp)
/* 321204 802BD6B4 03E00008 */ jr $ra
/* 321208 802BD6B8 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,77 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD6BC
/* 32120C 802BD6BC 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 321210 802BD6C0 AFB00010 */ sw $s0, 0x10($sp)
/* 321214 802BD6C4 0080802D */ daddu $s0, $a0, $zero
/* 321218 802BD6C8 AFB10014 */ sw $s1, 0x14($sp)
/* 32121C 802BD6CC 00A0882D */ daddu $s1, $a1, $zero
/* 321220 802BD6D0 F7B40020 */ sdc1 $f20, 0x20($sp)
/* 321224 802BD6D4 4480A000 */ mtc1 $zero, $f20
/* 321228 802BD6D8 3C038011 */ lui $v1, %hi(D_8010EBB0)
/* 32122C 802BD6DC 2463EBB0 */ addiu $v1, $v1, %lo(D_8010EBB0)
/* 321230 802BD6E0 AFBF0018 */ sw $ra, 0x18($sp)
/* 321234 802BD6E4 F7BA0038 */ sdc1 $f26, 0x38($sp)
/* 321238 802BD6E8 F7B80030 */ sdc1 $f24, 0x30($sp)
/* 32123C 802BD6EC F7B60028 */ sdc1 $f22, 0x28($sp)
/* 321240 802BD6F0 84620004 */ lh $v0, 4($v1)
/* 321244 802BD6F4 4600A306 */ mov.s $f12, $f20
/* 321248 802BD6F8 4482C000 */ mtc1 $v0, $f24
/* 32124C 802BD6FC 00000000 */ nop
/* 321250 802BD700 4680C620 */ cvt.s.w $f24, $f24
/* 321254 802BD704 84620006 */ lh $v0, 6($v1)
/* 321258 802BD708 4406C000 */ mfc1 $a2, $f24
/* 32125C 802BD70C 4482D000 */ mtc1 $v0, $f26
/* 321260 802BD710 00000000 */ nop
/* 321264 802BD714 4680D6A0 */ cvt.s.w $f26, $f26
/* 321268 802BD718 4600D587 */ neg.s $f22, $f26
/* 32126C 802BD71C 4407B000 */ mfc1 $a3, $f22
/* 321270 802BD720 0C00A720 */ jal atan2
/* 321274 802BD724 4600A386 */ mov.s $f14, $f20
/* 321278 802BD728 3C01800B */ lui $at, 0x800b
/* 32127C 802BD72C C42C1DEC */ lwc1 $f12, 0x1dec($at)
/* 321280 802BD730 0C00A6C9 */ jal clamp_angle
/* 321284 802BD734 460C0300 */ add.s $f12, $f0, $f12
/* 321288 802BD738 4600A306 */ mov.s $f12, $f20
/* 32128C 802BD73C 4600A386 */ mov.s $f14, $f20
/* 321290 802BD740 4406C000 */ mfc1 $a2, $f24
/* 321294 802BD744 4407B000 */ mfc1 $a3, $f22
/* 321298 802BD748 0C00A7B5 */ jal dist2D
/* 32129C 802BD74C 46000586 */ mov.s $f22, $f0
/* 3212A0 802BD750 3C013FF0 */ lui $at, 0x3ff0
/* 3212A4 802BD754 44811800 */ mtc1 $at, $f3
/* 3212A8 802BD758 44801000 */ mtc1 $zero, $f2
/* 3212AC 802BD75C 46000021 */ cvt.d.s $f0, $f0
/* 3212B0 802BD760 4620103E */ c.le.d $f2, $f0
/* 3212B4 802BD764 00000000 */ nop
/* 3212B8 802BD768 45000012 */ bc1f .L802BD7B4
/* 3212BC 802BD76C E6160000 */ swc1 $f22, ($s0)
/* 3212C0 802BD770 4618C002 */ mul.s $f0, $f24, $f24
/* 3212C4 802BD774 00000000 */ nop
/* 3212C8 802BD778 461AD082 */ mul.s $f2, $f26, $f26
/* 3212CC 802BD77C 00000000 */ nop
/* 3212D0 802BD780 46020000 */ add.s $f0, $f0, $f2
/* 3212D4 802BD784 3C01453D */ lui $at, 0x453d
/* 3212D8 802BD788 34211000 */ ori $at, $at, 0x1000
/* 3212DC 802BD78C 44811000 */ mtc1 $at, $f2
/* 3212E0 802BD790 3C014040 */ lui $at, 0x4040
/* 3212E4 802BD794 4481A000 */ mtc1 $at, $f20
/* 3212E8 802BD798 4600103C */ c.lt.s $f2, $f0
/* 3212EC 802BD79C 00000000 */ nop
/* 3212F0 802BD7A0 45000004 */ bc1f .L802BD7B4
/* 3212F4 802BD7A4 00000000 */ nop
/* 3212F8 802BD7A8 3C0140C0 */ lui $at, 0x40c0
/* 3212FC 802BD7AC 4481A000 */ mtc1 $at, $f20
/* 321300 802BD7B0 00000000 */ nop
.L802BD7B4:
/* 321304 802BD7B4 E6340000 */ swc1 $f20, ($s1)
/* 321308 802BD7B8 8FBF0018 */ lw $ra, 0x18($sp)
/* 32130C 802BD7BC 8FB10014 */ lw $s1, 0x14($sp)
/* 321310 802BD7C0 8FB00010 */ lw $s0, 0x10($sp)
/* 321314 802BD7C4 D7BA0038 */ ldc1 $f26, 0x38($sp)
/* 321318 802BD7C8 D7B80030 */ ldc1 $f24, 0x30($sp)
/* 32131C 802BD7CC D7B60028 */ ldc1 $f22, 0x28($sp)
/* 321320 802BD7D0 D7B40020 */ ldc1 $f20, 0x20($sp)
/* 321324 802BD7D4 03E00008 */ jr $ra
/* 321328 802BD7D8 27BD0040 */ addiu $sp, $sp, 0x40

View File

@ -0,0 +1,120 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD7DC
/* 32132C 802BD7DC 27BDFF98 */ addiu $sp, $sp, -0x68
/* 321330 802BD7E0 AFBF005C */ sw $ra, 0x5c($sp)
/* 321334 802BD7E4 AFB40058 */ sw $s4, 0x58($sp)
/* 321338 802BD7E8 AFB30054 */ sw $s3, 0x54($sp)
/* 32133C 802BD7EC AFB20050 */ sw $s2, 0x50($sp)
/* 321340 802BD7F0 AFB1004C */ sw $s1, 0x4c($sp)
/* 321344 802BD7F4 AFB00048 */ sw $s0, 0x48($sp)
/* 321348 802BD7F8 F7B40060 */ sdc1 $f20, 0x60($sp)
/* 32134C 802BD7FC 0C00EABB */ jal get_npc_unsafe
/* 321350 802BD800 2404FFFC */ addiu $a0, $zero, -4
/* 321354 802BD804 3C108011 */ lui $s0, %hi(gPlayerStatus)
/* 321358 802BD808 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus)
/* 32135C 802BD80C 0040902D */ daddu $s2, $v0, $zero
/* 321360 802BD810 8E030004 */ lw $v1, 4($s0)
/* 321364 802BD814 3C022000 */ lui $v0, 0x2000
/* 321368 802BD818 00621024 */ and $v0, $v1, $v0
/* 32136C 802BD81C 10400007 */ beqz $v0, .L802BD83C
/* 321370 802BD820 0200982D */ daddu $s3, $s0, $zero
/* 321374 802BD824 3C02DFFF */ lui $v0, 0xdfff
/* 321378 802BD828 3442FFFF */ ori $v0, $v0, 0xffff
/* 32137C 802BD82C 00621024 */ and $v0, $v1, $v0
/* 321380 802BD830 AE020004 */ sw $v0, 4($s0)
/* 321384 802BD834 080AF65E */ j .L802BD978
/* 321388 802BD838 24020001 */ addiu $v0, $zero, 1
.L802BD83C:
/* 32138C 802BD83C 0000A02D */ daddu $s4, $zero, $zero
/* 321390 802BD840 27B10028 */ addiu $s1, $sp, 0x28
/* 321394 802BD844 0220202D */ daddu $a0, $s1, $zero
/* 321398 802BD848 27B0002C */ addiu $s0, $sp, 0x2c
/* 32139C 802BD84C 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 3213A0 802BD850 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 3213A4 802BD854 3C064000 */ lui $a2, 0x4000
/* 3213A8 802BD858 3C014180 */ lui $at, 0x4180
/* 3213AC 802BD85C 4481A000 */ mtc1 $at, $f20
/* 3213B0 802BD860 3C0140E0 */ lui $at, 0x40e0
/* 3213B4 802BD864 44811000 */ mtc1 $at, $f2
/* 3213B8 802BD868 00031080 */ sll $v0, $v1, 2
/* 3213BC 802BD86C 00431021 */ addu $v0, $v0, $v1
/* 3213C0 802BD870 00021080 */ sll $v0, $v0, 2
/* 3213C4 802BD874 00431023 */ subu $v0, $v0, $v1
/* 3213C8 802BD878 000218C0 */ sll $v1, $v0, 3
/* 3213CC 802BD87C 00431021 */ addu $v0, $v0, $v1
/* 3213D0 802BD880 000210C0 */ sll $v0, $v0, 3
/* 3213D4 802BD884 3C07800B */ lui $a3, 0x800b
/* 3213D8 802BD888 00E23821 */ addu $a3, $a3, $v0
/* 3213DC 802BD88C 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 3213E0 802BD890 0200282D */ daddu $a1, $s0, $zero
/* 3213E4 802BD894 E7B40034 */ swc1 $f20, 0x34($sp)
/* 3213E8 802BD898 C6400064 */ lwc1 $f0, 0x64($s2)
/* 3213EC 802BD89C C6640028 */ lwc1 $f4, 0x28($s3)
/* 3213F0 802BD8A0 C6660030 */ lwc1 $f6, 0x30($s3)
/* 3213F4 802BD8A4 46020000 */ add.s $f0, $f0, $f2
/* 3213F8 802BD8A8 E7A40028 */ swc1 $f4, 0x28($sp)
/* 3213FC 802BD8AC E7A6002C */ swc1 $f6, 0x2c($sp)
/* 321400 802BD8B0 0C00A7E7 */ jal add_vec2D_polar
/* 321404 802BD8B4 E7A00030 */ swc1 $f0, 0x30($sp)
/* 321408 802BD8B8 0260202D */ daddu $a0, $s3, $zero
/* 32140C 802BD8BC 0220282D */ daddu $a1, $s1, $zero
/* 321410 802BD8C0 27A60030 */ addiu $a2, $sp, 0x30
/* 321414 802BD8C4 0200382D */ daddu $a3, $s0, $zero
/* 321418 802BD8C8 27A20034 */ addiu $v0, $sp, 0x34
/* 32141C 802BD8CC AFA20010 */ sw $v0, 0x10($sp)
/* 321420 802BD8D0 27A20038 */ addiu $v0, $sp, 0x38
/* 321424 802BD8D4 AFA20014 */ sw $v0, 0x14($sp)
/* 321428 802BD8D8 27A2003C */ addiu $v0, $sp, 0x3c
/* 32142C 802BD8DC AFA20018 */ sw $v0, 0x18($sp)
/* 321430 802BD8E0 27A20040 */ addiu $v0, $sp, 0x40
/* 321434 802BD8E4 AFA2001C */ sw $v0, 0x1c($sp)
/* 321438 802BD8E8 27A20044 */ addiu $v0, $sp, 0x44
/* 32143C 802BD8EC 0C03791B */ jal func_800DE46C
/* 321440 802BD8F0 AFA20020 */ sw $v0, 0x20($sp)
/* 321444 802BD8F4 C7A00034 */ lwc1 $f0, 0x34($sp)
/* 321448 802BD8F8 4614003E */ c.le.s $f0, $f20
/* 32144C 802BD8FC 00000000 */ nop
/* 321450 802BD900 4500001C */ bc1f .L802BD974
/* 321454 802BD904 0040802D */ daddu $s0, $v0, $zero
/* 321458 802BD908 0600001A */ bltz $s0, .L802BD974
/* 32145C 802BD90C 32024000 */ andi $v0, $s0, 0x4000
/* 321460 802BD910 10400007 */ beqz $v0, .L802BD930
/* 321464 802BD914 00000000 */ nop
/* 321468 802BD918 0C0441A9 */ jal get_entity_type
/* 32146C 802BD91C 0200202D */ daddu $a0, $s0, $zero
/* 321470 802BD920 2442FFD2 */ addiu $v0, $v0, -0x2e
/* 321474 802BD924 2C420002 */ sltiu $v0, $v0, 2
/* 321478 802BD928 14400013 */ bnez $v0, .L802BD978
/* 32147C 802BD92C 0280102D */ daddu $v0, $s4, $zero
.L802BD930:
/* 321480 802BD930 0C016F6A */ jal get_collider_type_by_id
/* 321484 802BD934 0200202D */ daddu $a0, $s0, $zero
/* 321488 802BD938 305000FF */ andi $s0, $v0, 0xff
/* 32148C 802BD93C 2602FFFF */ addiu $v0, $s0, -1
/* 321490 802BD940 2C420003 */ sltiu $v0, $v0, 3
/* 321494 802BD944 1440000C */ bnez $v0, .L802BD978
/* 321498 802BD948 0280102D */ daddu $v0, $s4, $zero
/* 32149C 802BD94C 24020005 */ addiu $v0, $zero, 5
/* 3214A0 802BD950 12020009 */ beq $s0, $v0, .L802BD978
/* 3214A4 802BD954 0280102D */ daddu $v0, $s4, $zero
/* 3214A8 802BD958 C7A00028 */ lwc1 $f0, 0x28($sp)
/* 3214AC 802BD95C C7A20030 */ lwc1 $f2, 0x30($sp)
/* 3214B0 802BD960 C7A4002C */ lwc1 $f4, 0x2c($sp)
/* 3214B4 802BD964 24140001 */ addiu $s4, $zero, 1
/* 3214B8 802BD968 E6400060 */ swc1 $f0, 0x60($s2)
/* 3214BC 802BD96C E6420064 */ swc1 $f2, 0x64($s2)
/* 3214C0 802BD970 E6440068 */ swc1 $f4, 0x68($s2)
.L802BD974:
/* 3214C4 802BD974 0280102D */ daddu $v0, $s4, $zero
.L802BD978:
/* 3214C8 802BD978 8FBF005C */ lw $ra, 0x5c($sp)
/* 3214CC 802BD97C 8FB40058 */ lw $s4, 0x58($sp)
/* 3214D0 802BD980 8FB30054 */ lw $s3, 0x54($sp)
/* 3214D4 802BD984 8FB20050 */ lw $s2, 0x50($sp)
/* 3214D8 802BD988 8FB1004C */ lw $s1, 0x4c($sp)
/* 3214DC 802BD98C 8FB00048 */ lw $s0, 0x48($sp)
/* 3214E0 802BD990 D7B40060 */ ldc1 $f20, 0x60($sp)
/* 3214E4 802BD994 03E00008 */ jr $ra
/* 3214E8 802BD998 27BD0068 */ addiu $sp, $sp, 0x68

View File

@ -0,0 +1,66 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD99C
/* 3214EC 802BD99C 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 3214F0 802BD9A0 AFB1004C */ sw $s1, 0x4c($sp)
/* 3214F4 802BD9A4 0080882D */ daddu $s1, $a0, $zero
/* 3214F8 802BD9A8 AFB00048 */ sw $s0, 0x48($sp)
/* 3214FC 802BD9AC 3C10802C */ lui $s0, 0x802c
/* 321500 802BD9B0 2610FF24 */ addiu $s0, $s0, -0xdc
/* 321504 802BD9B4 3C048011 */ lui $a0, %hi(gPlayerStatus)
/* 321508 802BD9B8 2484EFC8 */ addiu $a0, $a0, %lo(gPlayerStatus)
/* 32150C 802BD9BC 27A20034 */ addiu $v0, $sp, 0x34
/* 321510 802BD9C0 AFA60034 */ sw $a2, 0x34($sp)
/* 321514 802BD9C4 27A6002C */ addiu $a2, $sp, 0x2c
/* 321518 802BD9C8 27A70030 */ addiu $a3, $sp, 0x30
/* 32151C 802BD9CC AFBF0050 */ sw $ra, 0x50($sp)
/* 321520 802BD9D0 AE000000 */ sw $zero, ($s0)
/* 321524 802BD9D4 C4840028 */ lwc1 $f4, 0x28($a0)
/* 321528 802BD9D8 C480002C */ lwc1 $f0, 0x2c($a0)
/* 32152C 802BD9DC 44854000 */ mtc1 $a1, $f8
/* 321530 802BD9E0 C4820030 */ lwc1 $f2, 0x30($a0)
/* 321534 802BD9E4 46080000 */ add.s $f0, $f0, $f8
/* 321538 802BD9E8 27A50028 */ addiu $a1, $sp, 0x28
/* 32153C 802BD9EC E7A40028 */ swc1 $f4, 0x28($sp)
/* 321540 802BD9F0 E7A20030 */ swc1 $f2, 0x30($sp)
/* 321544 802BD9F4 E7A0002C */ swc1 $f0, 0x2c($sp)
/* 321548 802BD9F8 AFA20010 */ sw $v0, 0x10($sp)
/* 32154C 802BD9FC 27A20038 */ addiu $v0, $sp, 0x38
/* 321550 802BDA00 AFA20014 */ sw $v0, 0x14($sp)
/* 321554 802BDA04 27A2003C */ addiu $v0, $sp, 0x3c
/* 321558 802BDA08 AFA20018 */ sw $v0, 0x18($sp)
/* 32155C 802BDA0C 27A20040 */ addiu $v0, $sp, 0x40
/* 321560 802BDA10 AFA2001C */ sw $v0, 0x1c($sp)
/* 321564 802BDA14 27A20044 */ addiu $v0, $sp, 0x44
/* 321568 802BDA18 0C03791B */ jal func_800DE46C
/* 32156C 802BDA1C AFA20020 */ sw $v0, 0x20($sp)
/* 321570 802BDA20 04420016 */ bltzl $v0, .L802BDA7C
/* 321574 802BDA24 0000102D */ daddu $v0, $zero, $zero
/* 321578 802BDA28 C7A6002C */ lwc1 $f6, 0x2c($sp)
/* 32157C 802BDA2C C6200064 */ lwc1 $f0, 0x64($s1)
/* 321580 802BDA30 46003101 */ sub.s $f4, $f6, $f0
/* 321584 802BDA34 44800000 */ mtc1 $zero, $f0
/* 321588 802BDA38 00000000 */ nop
/* 32158C 802BDA3C 46002032 */ c.eq.s $f4, $f0
/* 321590 802BDA40 00000000 */ nop
/* 321594 802BDA44 4501000D */ bc1t .L802BDA7C
/* 321598 802BDA48 24020001 */ addiu $v0, $zero, 1
/* 32159C 802BDA4C 46002021 */ cvt.d.s $f0, $f4
/* 3215A0 802BDA50 3C014024 */ lui $at, 0x4024
/* 3215A4 802BDA54 44811800 */ mtc1 $at, $f3
/* 3215A8 802BDA58 44801000 */ mtc1 $zero, $f2
/* 3215AC 802BDA5C 46200005 */ abs.d $f0, $f0
/* 3215B0 802BDA60 4622003C */ c.lt.d $f0, $f2
/* 3215B4 802BDA64 00000000 */ nop
/* 3215B8 802BDA68 45020004 */ bc1fl .L802BDA7C
/* 3215BC 802BDA6C 0000102D */ daddu $v0, $zero, $zero
/* 3215C0 802BDA70 4600220D */ trunc.w.s $f8, $f4
/* 3215C4 802BDA74 E6080000 */ swc1 $f8, ($s0)
/* 3215C8 802BDA78 E6260064 */ swc1 $f6, 0x64($s1)
.L802BDA7C:
/* 3215CC 802BDA7C 8FBF0050 */ lw $ra, 0x50($sp)
/* 3215D0 802BDA80 8FB1004C */ lw $s1, 0x4c($sp)
/* 3215D4 802BDA84 8FB00048 */ lw $s0, 0x48($sp)
/* 3215D8 802BDA88 03E00008 */ jr $ra
/* 3215DC 802BDA8C 27BD0058 */ addiu $sp, $sp, 0x58

View File

@ -0,0 +1,224 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDA90
/* 3215E0 802BDA90 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 3215E4 802BDA94 AFB00030 */ sw $s0, 0x30($sp)
/* 3215E8 802BDA98 0080802D */ daddu $s0, $a0, $zero
/* 3215EC 802BDA9C AFBF0034 */ sw $ra, 0x34($sp)
/* 3215F0 802BDAA0 F7B40038 */ sdc1 $f20, 0x38($sp)
/* 3215F4 802BDAA4 C60C000C */ lwc1 $f12, 0xc($s0)
/* 3215F8 802BDAA8 860200A6 */ lh $v0, 0xa6($s0)
/* 3215FC 802BDAAC 3C013F4C */ lui $at, 0x3f4c
/* 321600 802BDAB0 3421CCCD */ ori $at, $at, 0xcccd
/* 321604 802BDAB4 44811000 */ mtc1 $at, $f2
/* 321608 802BDAB8 44820000 */ mtc1 $v0, $f0
/* 32160C 802BDABC 00000000 */ nop
/* 321610 802BDAC0 46800020 */ cvt.s.w $f0, $f0
/* 321614 802BDAC4 46020502 */ mul.s $f20, $f0, $f2
/* 321618 802BDAC8 0C00A6C9 */ jal clamp_angle
/* 32161C 802BDACC 00000000 */ nop
/* 321620 802BDAD0 C6020038 */ lwc1 $f2, 0x38($s0)
/* 321624 802BDAD4 C6040064 */ lwc1 $f4, 0x64($s0)
/* 321628 802BDAD8 C6060040 */ lwc1 $f6, 0x40($s0)
/* 32162C 802BDADC 27A50020 */ addiu $a1, $sp, 0x20
/* 321630 802BDAE0 E7A20020 */ swc1 $f2, 0x20($sp)
/* 321634 802BDAE4 E7A40024 */ swc1 $f4, 0x24($sp)
/* 321638 802BDAE8 E7A60028 */ swc1 $f6, 0x28($sp)
/* 32163C 802BDAEC AFA00010 */ sw $zero, 0x10($sp)
/* 321640 802BDAF0 E7A00014 */ swc1 $f0, 0x14($sp)
/* 321644 802BDAF4 860200A8 */ lh $v0, 0xa8($s0)
/* 321648 802BDAF8 27A60024 */ addiu $a2, $sp, 0x24
/* 32164C 802BDAFC 44820000 */ mtc1 $v0, $f0
/* 321650 802BDB00 00000000 */ nop
/* 321654 802BDB04 46800020 */ cvt.s.w $f0, $f0
/* 321658 802BDB08 E7A00018 */ swc1 $f0, 0x18($sp)
/* 32165C 802BDB0C E7B4001C */ swc1 $f20, 0x1c($sp)
/* 321660 802BDB10 8E040080 */ lw $a0, 0x80($s0)
/* 321664 802BDB14 0C037765 */ jal func_800DDD94
/* 321668 802BDB18 27A70028 */ addiu $a3, $sp, 0x28
/* 32166C 802BDB1C 1040000C */ beqz $v0, .L802BDB50
/* 321670 802BDB20 24039FFF */ addiu $v1, $zero, -0x6001
/* 321674 802BDB24 8E020000 */ lw $v0, ($s0)
/* 321678 802BDB28 3C038011 */ lui $v1, 0x8011
/* 32167C 802BDB2C 9463C97A */ lhu $v1, -0x3686($v1)
/* 321680 802BDB30 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 321684 802BDB34 C7A20028 */ lwc1 $f2, 0x28($sp)
/* 321688 802BDB38 34426000 */ ori $v0, $v0, 0x6000
/* 32168C 802BDB3C AE020000 */ sw $v0, ($s0)
/* 321690 802BDB40 A6030086 */ sh $v1, 0x86($s0)
/* 321694 802BDB44 E6000038 */ swc1 $f0, 0x38($s0)
/* 321698 802BDB48 080AF6D7 */ j .L802BDB5C
/* 32169C 802BDB4C E6020040 */ swc1 $f2, 0x40($s0)
.L802BDB50:
/* 3216A0 802BDB50 8E020000 */ lw $v0, ($s0)
/* 3216A4 802BDB54 00431024 */ and $v0, $v0, $v1
/* 3216A8 802BDB58 AE020000 */ sw $v0, ($s0)
.L802BDB5C:
/* 3216AC 802BDB5C C600000C */ lwc1 $f0, 0xc($s0)
/* 3216B0 802BDB60 3C014234 */ lui $at, 0x4234
/* 3216B4 802BDB64 44816000 */ mtc1 $at, $f12
/* 3216B8 802BDB68 0C00A6C9 */ jal clamp_angle
/* 3216BC 802BDB6C 460C0300 */ add.s $f12, $f0, $f12
/* 3216C0 802BDB70 C6020038 */ lwc1 $f2, 0x38($s0)
/* 3216C4 802BDB74 C6040064 */ lwc1 $f4, 0x64($s0)
/* 3216C8 802BDB78 C6060040 */ lwc1 $f6, 0x40($s0)
/* 3216CC 802BDB7C 27A50020 */ addiu $a1, $sp, 0x20
/* 3216D0 802BDB80 E7A20020 */ swc1 $f2, 0x20($sp)
/* 3216D4 802BDB84 E7A40024 */ swc1 $f4, 0x24($sp)
/* 3216D8 802BDB88 E7A60028 */ swc1 $f6, 0x28($sp)
/* 3216DC 802BDB8C AFA00010 */ sw $zero, 0x10($sp)
/* 3216E0 802BDB90 E7A00014 */ swc1 $f0, 0x14($sp)
/* 3216E4 802BDB94 860200A8 */ lh $v0, 0xa8($s0)
/* 3216E8 802BDB98 27A60024 */ addiu $a2, $sp, 0x24
/* 3216EC 802BDB9C E7B4001C */ swc1 $f20, 0x1c($sp)
/* 3216F0 802BDBA0 44820000 */ mtc1 $v0, $f0
/* 3216F4 802BDBA4 00000000 */ nop
/* 3216F8 802BDBA8 46800020 */ cvt.s.w $f0, $f0
/* 3216FC 802BDBAC E7A00018 */ swc1 $f0, 0x18($sp)
/* 321700 802BDBB0 8E040080 */ lw $a0, 0x80($s0)
/* 321704 802BDBB4 0C0376B9 */ jal func_800DDAE4
/* 321708 802BDBB8 27A70028 */ addiu $a3, $sp, 0x28
/* 32170C 802BDBBC 10400008 */ beqz $v0, .L802BDBE0
/* 321710 802BDBC0 2403DFFF */ addiu $v1, $zero, -0x2001
/* 321714 802BDBC4 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 321718 802BDBC8 8E020000 */ lw $v0, ($s0)
/* 32171C 802BDBCC C7A20028 */ lwc1 $f2, 0x28($sp)
/* 321720 802BDBD0 34422000 */ ori $v0, $v0, 0x2000
/* 321724 802BDBD4 E6000038 */ swc1 $f0, 0x38($s0)
/* 321728 802BDBD8 080AF6FA */ j .L802BDBE8
/* 32172C 802BDBDC E6020040 */ swc1 $f2, 0x40($s0)
.L802BDBE0:
/* 321730 802BDBE0 8E020000 */ lw $v0, ($s0)
/* 321734 802BDBE4 00431024 */ and $v0, $v0, $v1
.L802BDBE8:
/* 321738 802BDBE8 AE020000 */ sw $v0, ($s0)
/* 32173C 802BDBEC C600000C */ lwc1 $f0, 0xc($s0)
/* 321740 802BDBF0 3C014234 */ lui $at, 0x4234
/* 321744 802BDBF4 44816000 */ mtc1 $at, $f12
/* 321748 802BDBF8 0C00A6C9 */ jal clamp_angle
/* 32174C 802BDBFC 460C0301 */ sub.s $f12, $f0, $f12
/* 321750 802BDC00 C6020038 */ lwc1 $f2, 0x38($s0)
/* 321754 802BDC04 C6040064 */ lwc1 $f4, 0x64($s0)
/* 321758 802BDC08 C6060040 */ lwc1 $f6, 0x40($s0)
/* 32175C 802BDC0C 27A50020 */ addiu $a1, $sp, 0x20
/* 321760 802BDC10 E7A20020 */ swc1 $f2, 0x20($sp)
/* 321764 802BDC14 E7A40024 */ swc1 $f4, 0x24($sp)
/* 321768 802BDC18 E7A60028 */ swc1 $f6, 0x28($sp)
/* 32176C 802BDC1C AFA00010 */ sw $zero, 0x10($sp)
/* 321770 802BDC20 E7A00014 */ swc1 $f0, 0x14($sp)
/* 321774 802BDC24 860200A8 */ lh $v0, 0xa8($s0)
/* 321778 802BDC28 27A60024 */ addiu $a2, $sp, 0x24
/* 32177C 802BDC2C E7B4001C */ swc1 $f20, 0x1c($sp)
/* 321780 802BDC30 44820000 */ mtc1 $v0, $f0
/* 321784 802BDC34 00000000 */ nop
/* 321788 802BDC38 46800020 */ cvt.s.w $f0, $f0
/* 32178C 802BDC3C E7A00018 */ swc1 $f0, 0x18($sp)
/* 321790 802BDC40 8E040080 */ lw $a0, 0x80($s0)
/* 321794 802BDC44 0C0376B9 */ jal func_800DDAE4
/* 321798 802BDC48 27A70028 */ addiu $a3, $sp, 0x28
/* 32179C 802BDC4C 10400008 */ beqz $v0, .L802BDC70
/* 3217A0 802BDC50 2403DFFF */ addiu $v1, $zero, -0x2001
/* 3217A4 802BDC54 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 3217A8 802BDC58 8E020000 */ lw $v0, ($s0)
/* 3217AC 802BDC5C C7A20028 */ lwc1 $f2, 0x28($sp)
/* 3217B0 802BDC60 34422000 */ ori $v0, $v0, 0x2000
/* 3217B4 802BDC64 E6000038 */ swc1 $f0, 0x38($s0)
/* 3217B8 802BDC68 080AF71E */ j .L802BDC78
/* 3217BC 802BDC6C E6020040 */ swc1 $f2, 0x40($s0)
.L802BDC70:
/* 3217C0 802BDC70 8E020000 */ lw $v0, ($s0)
/* 3217C4 802BDC74 00431024 */ and $v0, $v0, $v1
.L802BDC78:
/* 3217C8 802BDC78 AE020000 */ sw $v0, ($s0)
/* 3217CC 802BDC7C C60C000C */ lwc1 $f12, 0xc($s0)
/* 3217D0 802BDC80 3C014234 */ lui $at, 0x4234
/* 3217D4 802BDC84 44810000 */ mtc1 $at, $f0
/* 3217D8 802BDC88 00000000 */ nop
/* 3217DC 802BDC8C 46006300 */ add.s $f12, $f12, $f0
/* 3217E0 802BDC90 3C014334 */ lui $at, 0x4334
/* 3217E4 802BDC94 44810000 */ mtc1 $at, $f0
/* 3217E8 802BDC98 0C00A6C9 */ jal clamp_angle
/* 3217EC 802BDC9C 46006300 */ add.s $f12, $f12, $f0
/* 3217F0 802BDCA0 C6020038 */ lwc1 $f2, 0x38($s0)
/* 3217F4 802BDCA4 C6040064 */ lwc1 $f4, 0x64($s0)
/* 3217F8 802BDCA8 C6060040 */ lwc1 $f6, 0x40($s0)
/* 3217FC 802BDCAC 27A50020 */ addiu $a1, $sp, 0x20
/* 321800 802BDCB0 E7A20020 */ swc1 $f2, 0x20($sp)
/* 321804 802BDCB4 E7A40024 */ swc1 $f4, 0x24($sp)
/* 321808 802BDCB8 E7A60028 */ swc1 $f6, 0x28($sp)
/* 32180C 802BDCBC AFA00010 */ sw $zero, 0x10($sp)
/* 321810 802BDCC0 E7A00014 */ swc1 $f0, 0x14($sp)
/* 321814 802BDCC4 860200A8 */ lh $v0, 0xa8($s0)
/* 321818 802BDCC8 27A60024 */ addiu $a2, $sp, 0x24
/* 32181C 802BDCCC E7B4001C */ swc1 $f20, 0x1c($sp)
/* 321820 802BDCD0 44820000 */ mtc1 $v0, $f0
/* 321824 802BDCD4 00000000 */ nop
/* 321828 802BDCD8 46800020 */ cvt.s.w $f0, $f0
/* 32182C 802BDCDC E7A00018 */ swc1 $f0, 0x18($sp)
/* 321830 802BDCE0 8E040080 */ lw $a0, 0x80($s0)
/* 321834 802BDCE4 0C037711 */ jal func_800DDC44
/* 321838 802BDCE8 27A70028 */ addiu $a3, $sp, 0x28
/* 32183C 802BDCEC 10400009 */ beqz $v0, .L802BDD14
/* 321840 802BDCF0 2403DFFF */ addiu $v1, $zero, -0x2001
/* 321844 802BDCF4 8E020000 */ lw $v0, ($s0)
/* 321848 802BDCF8 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 32184C 802BDCFC C7A20028 */ lwc1 $f2, 0x28($sp)
/* 321850 802BDD00 34422000 */ ori $v0, $v0, 0x2000
/* 321854 802BDD04 AE020000 */ sw $v0, ($s0)
/* 321858 802BDD08 E6000038 */ swc1 $f0, 0x38($s0)
/* 32185C 802BDD0C 080AF748 */ j .L802BDD20
/* 321860 802BDD10 E6020040 */ swc1 $f2, 0x40($s0)
.L802BDD14:
/* 321864 802BDD14 8E020000 */ lw $v0, ($s0)
/* 321868 802BDD18 00431024 */ and $v0, $v0, $v1
/* 32186C 802BDD1C AE020000 */ sw $v0, ($s0)
.L802BDD20:
/* 321870 802BDD20 C60C000C */ lwc1 $f12, 0xc($s0)
/* 321874 802BDD24 3C014234 */ lui $at, 0x4234
/* 321878 802BDD28 44810000 */ mtc1 $at, $f0
/* 32187C 802BDD2C 00000000 */ nop
/* 321880 802BDD30 46006301 */ sub.s $f12, $f12, $f0
/* 321884 802BDD34 3C014334 */ lui $at, 0x4334
/* 321888 802BDD38 44810000 */ mtc1 $at, $f0
/* 32188C 802BDD3C 0C00A6C9 */ jal clamp_angle
/* 321890 802BDD40 46006300 */ add.s $f12, $f12, $f0
/* 321894 802BDD44 C6020038 */ lwc1 $f2, 0x38($s0)
/* 321898 802BDD48 C6040064 */ lwc1 $f4, 0x64($s0)
/* 32189C 802BDD4C C6060040 */ lwc1 $f6, 0x40($s0)
/* 3218A0 802BDD50 27A50020 */ addiu $a1, $sp, 0x20
/* 3218A4 802BDD54 E7A20020 */ swc1 $f2, 0x20($sp)
/* 3218A8 802BDD58 E7A40024 */ swc1 $f4, 0x24($sp)
/* 3218AC 802BDD5C E7A60028 */ swc1 $f6, 0x28($sp)
/* 3218B0 802BDD60 AFA00010 */ sw $zero, 0x10($sp)
/* 3218B4 802BDD64 E7A00014 */ swc1 $f0, 0x14($sp)
/* 3218B8 802BDD68 860200A8 */ lh $v0, 0xa8($s0)
/* 3218BC 802BDD6C 27A60024 */ addiu $a2, $sp, 0x24
/* 3218C0 802BDD70 E7B4001C */ swc1 $f20, 0x1c($sp)
/* 3218C4 802BDD74 44820000 */ mtc1 $v0, $f0
/* 3218C8 802BDD78 00000000 */ nop
/* 3218CC 802BDD7C 46800020 */ cvt.s.w $f0, $f0
/* 3218D0 802BDD80 E7A00018 */ swc1 $f0, 0x18($sp)
/* 3218D4 802BDD84 8E040080 */ lw $a0, 0x80($s0)
/* 3218D8 802BDD88 0C037711 */ jal func_800DDC44
/* 3218DC 802BDD8C 27A70028 */ addiu $a3, $sp, 0x28
/* 3218E0 802BDD90 10400009 */ beqz $v0, .L802BDDB8
/* 3218E4 802BDD94 2403DFFF */ addiu $v1, $zero, -0x2001
/* 3218E8 802BDD98 8E020000 */ lw $v0, ($s0)
/* 3218EC 802BDD9C C7A00020 */ lwc1 $f0, 0x20($sp)
/* 3218F0 802BDDA0 C7A20028 */ lwc1 $f2, 0x28($sp)
/* 3218F4 802BDDA4 34422000 */ ori $v0, $v0, 0x2000
/* 3218F8 802BDDA8 AE020000 */ sw $v0, ($s0)
/* 3218FC 802BDDAC E6000038 */ swc1 $f0, 0x38($s0)
/* 321900 802BDDB0 080AF771 */ j .L802BDDC4
/* 321904 802BDDB4 E6020040 */ swc1 $f2, 0x40($s0)
.L802BDDB8:
/* 321908 802BDDB8 8E020000 */ lw $v0, ($s0)
/* 32190C 802BDDBC 00431024 */ and $v0, $v0, $v1
/* 321910 802BDDC0 AE020000 */ sw $v0, ($s0)
.L802BDDC4:
/* 321914 802BDDC4 8FBF0034 */ lw $ra, 0x34($sp)
/* 321918 802BDDC8 8FB00030 */ lw $s0, 0x30($sp)
/* 32191C 802BDDCC D7B40038 */ ldc1 $f20, 0x38($sp)
/* 321920 802BDDD0 03E00008 */ jr $ra
/* 321924 802BDDD4 27BD0040 */ addiu $sp, $sp, 0x40

View File

@ -0,0 +1,588 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDDD8
/* 321928 802BDDD8 27BDFF80 */ addiu $sp, $sp, -0x80
/* 32192C 802BDDDC AFB20060 */ sw $s2, 0x60($sp)
/* 321930 802BDDE0 0080902D */ daddu $s2, $a0, $zero
/* 321934 802BDDE4 27A40028 */ addiu $a0, $sp, 0x28
/* 321938 802BDDE8 F7B40078 */ sdc1 $f20, 0x78($sp)
/* 32193C 802BDDEC 4480A000 */ mtc1 $zero, $f20
/* 321940 802BDDF0 27A5002C */ addiu $a1, $sp, 0x2c
/* 321944 802BDDF4 AFBF0070 */ sw $ra, 0x70($sp)
/* 321948 802BDDF8 AFB5006C */ sw $s5, 0x6c($sp)
/* 32194C 802BDDFC AFB40068 */ sw $s4, 0x68($sp)
/* 321950 802BDE00 AFB30064 */ sw $s3, 0x64($sp)
/* 321954 802BDE04 AFB1005C */ sw $s1, 0x5c($sp)
/* 321958 802BDE08 AFB00058 */ sw $s0, 0x58($sp)
/* 32195C 802BDE0C E7B40028 */ swc1 $f20, 0x28($sp)
/* 321960 802BDE10 0C0AF5AF */ jal func_802BD6BC
/* 321964 802BDE14 E7B4002C */ swc1 $f20, 0x2c($sp)
/* 321968 802BDE18 86440084 */ lh $a0, 0x84($s2)
/* 32196C 802BDE1C 0C016F6A */ jal get_collider_type_by_id
/* 321970 802BDE20 00000000 */ nop
/* 321974 802BDE24 3C148011 */ lui $s4, %hi(gPlayerStatus)
/* 321978 802BDE28 2694EFC8 */ addiu $s4, $s4, %lo(gPlayerStatus)
/* 32197C 802BDE2C 3C158016 */ lui $s5, 0x8016
/* 321980 802BDE30 26B5A550 */ addiu $s5, $s5, -0x5ab0
/* 321984 802BDE34 304200FF */ andi $v0, $v0, 0xff
/* 321988 802BDE38 24030003 */ addiu $v1, $zero, 3
/* 32198C 802BDE3C 14430008 */ bne $v0, $v1, .L802BDE60
/* 321990 802BDE40 00000000 */ nop
/* 321994 802BDE44 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 321998 802BDE48 3C013F00 */ lui $at, 0x3f00
/* 32199C 802BDE4C 44811000 */ mtc1 $at, $f2
/* 3219A0 802BDE50 00000000 */ nop
/* 3219A4 802BDE54 46020002 */ mul.s $f0, $f0, $f2
/* 3219A8 802BDE58 00000000 */ nop
/* 3219AC 802BDE5C E7A0002C */ swc1 $f0, 0x2c($sp)
.L802BDE60:
/* 3219B0 802BDE60 3C01802C */ lui $at, 0x802c
/* 3219B4 802BDE64 C422FF28 */ lwc1 $f2, -0xd8($at)
/* 3219B8 802BDE68 3C0141A0 */ lui $at, 0x41a0
/* 3219BC 802BDE6C 44810000 */ mtc1 $at, $f0
/* 3219C0 802BDE70 00000000 */ nop
/* 3219C4 802BDE74 4602003E */ c.le.s $f0, $f2
/* 3219C8 802BDE78 00000000 */ nop
/* 3219CC 802BDE7C 45000009 */ bc1f .L802BDEA4
/* 3219D0 802BDE80 00000000 */ nop
/* 3219D4 802BDE84 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 3219D8 802BDE88 3C013F4C */ lui $at, 0x3f4c
/* 3219DC 802BDE8C 3421CCCD */ ori $at, $at, 0xcccd
/* 3219E0 802BDE90 44811000 */ mtc1 $at, $f2
/* 3219E4 802BDE94 00000000 */ nop
/* 3219E8 802BDE98 46020002 */ mul.s $f0, $f0, $f2
/* 3219EC 802BDE9C 00000000 */ nop
/* 3219F0 802BDEA0 E7A0002C */ swc1 $f0, 0x2c($sp)
.L802BDEA4:
/* 3219F4 802BDEA4 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 3219F8 802BDEA8 46140032 */ c.eq.s $f0, $f20
/* 3219FC 802BDEAC 00000000 */ nop
/* 321A00 802BDEB0 45010026 */ bc1t .L802BDF4C
/* 321A04 802BDEB4 E6400018 */ swc1 $f0, 0x18($s2)
/* 321A08 802BDEB8 3C02802C */ lui $v0, 0x802c
/* 321A0C 802BDEBC 2442FF1C */ addiu $v0, $v0, -0xe4
/* 321A10 802BDEC0 3C07802C */ lui $a3, 0x802c
/* 321A14 802BDEC4 24E7FF20 */ addiu $a3, $a3, -0xe0
/* 321A18 802BDEC8 8C430000 */ lw $v1, ($v0)
/* 321A1C 802BDECC 8CE40000 */ lw $a0, ($a3)
/* 321A20 802BDED0 24630001 */ addiu $v1, $v1, 1
/* 321A24 802BDED4 AC430000 */ sw $v1, ($v0)
/* 321A28 802BDED8 24820001 */ addiu $v0, $a0, 1
/* 321A2C 802BDEDC 30630007 */ andi $v1, $v1, 7
/* 321A30 802BDEE0 1460001A */ bnez $v1, .L802BDF4C
/* 321A34 802BDEE4 ACE20000 */ sw $v0, ($a3)
/* 321A38 802BDEE8 28420078 */ slti $v0, $v0, 0x78
/* 321A3C 802BDEEC 50400001 */ beql $v0, $zero, .L802BDEF4
/* 321A40 802BDEF0 ACE00000 */ sw $zero, ($a3)
.L802BDEF4:
/* 321A44 802BDEF4 8CE70000 */ lw $a3, ($a3)
/* 321A48 802BDEF8 28E2003C */ slti $v0, $a3, 0x3c
/* 321A4C 802BDEFC 10400005 */ beqz $v0, .L802BDF14
/* 321A50 802BDF00 0000202D */ daddu $a0, $zero, $zero
/* 321A54 802BDF04 4405A000 */ mfc1 $a1, $f20
/* 321A58 802BDF08 3C0642C8 */ lui $a2, 0x42c8
/* 321A5C 802BDF0C 080AF7C9 */ j .L802BDF24
/* 321A60 802BDF10 2402003C */ addiu $v0, $zero, 0x3c
.L802BDF14:
/* 321A64 802BDF14 24E7FFC4 */ addiu $a3, $a3, -0x3c
/* 321A68 802BDF18 3C0542C8 */ lui $a1, 0x42c8
/* 321A6C 802BDF1C 4406A000 */ mfc1 $a2, $f20
/* 321A70 802BDF20 2402003C */ addiu $v0, $zero, 0x3c
.L802BDF24:
/* 321A74 802BDF24 0C00A8ED */ jal update_lerp
/* 321A78 802BDF28 AFA20010 */ sw $v0, 0x10($sp)
/* 321A7C 802BDF2C 4600028D */ trunc.w.s $f10, $f0
/* 321A80 802BDF30 44075000 */ mfc1 $a3, $f10
/* 321A84 802BDF34 24040295 */ addiu $a0, $zero, 0x295
/* 321A88 802BDF38 0000282D */ daddu $a1, $zero, $zero
/* 321A8C 802BDF3C 24060040 */ addiu $a2, $zero, 0x40
/* 321A90 802BDF40 00073C00 */ sll $a3, $a3, 0x10
/* 321A94 802BDF44 0C0526AE */ jal _play_sound
/* 321A98 802BDF48 00073C03 */ sra $a3, $a3, 0x10
.L802BDF4C:
/* 321A9C 802BDF4C C6400038 */ lwc1 $f0, 0x38($s2)
/* 321AA0 802BDF50 C6420064 */ lwc1 $f2, 0x64($s2)
/* 321AA4 802BDF54 C6440040 */ lwc1 $f4, 0x40($s2)
/* 321AA8 802BDF58 864200A6 */ lh $v0, 0xa6($s2)
/* 321AAC 802BDF5C E7A00030 */ swc1 $f0, 0x30($sp)
/* 321AB0 802BDF60 44820000 */ mtc1 $v0, $f0
/* 321AB4 802BDF64 00000000 */ nop
/* 321AB8 802BDF68 46800020 */ cvt.s.w $f0, $f0
/* 321ABC 802BDF6C E7A20034 */ swc1 $f2, 0x34($sp)
/* 321AC0 802BDF70 E7A40038 */ swc1 $f4, 0x38($sp)
/* 321AC4 802BDF74 E7A00010 */ swc1 $f0, 0x10($sp)
/* 321AC8 802BDF78 C640000C */ lwc1 $f0, 0xc($s2)
/* 321ACC 802BDF7C E7A00014 */ swc1 $f0, 0x14($sp)
/* 321AD0 802BDF80 864200A8 */ lh $v0, 0xa8($s2)
/* 321AD4 802BDF84 27A50030 */ addiu $a1, $sp, 0x30
/* 321AD8 802BDF88 44820000 */ mtc1 $v0, $f0
/* 321ADC 802BDF8C 00000000 */ nop
/* 321AE0 802BDF90 46800020 */ cvt.s.w $f0, $f0
/* 321AE4 802BDF94 E7A00018 */ swc1 $f0, 0x18($sp)
/* 321AE8 802BDF98 864200A6 */ lh $v0, 0xa6($s2)
/* 321AEC 802BDF9C 27A60034 */ addiu $a2, $sp, 0x34
/* 321AF0 802BDFA0 44820000 */ mtc1 $v0, $f0
/* 321AF4 802BDFA4 00000000 */ nop
/* 321AF8 802BDFA8 46800020 */ cvt.s.w $f0, $f0
/* 321AFC 802BDFAC E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321B00 802BDFB0 8E440080 */ lw $a0, 0x80($s2)
/* 321B04 802BDFB4 0C0376B9 */ jal func_800DDAE4
/* 321B08 802BDFB8 27A70038 */ addiu $a3, $sp, 0x38
/* 321B0C 802BDFBC 1040000D */ beqz $v0, .L802BDFF4
/* 321B10 802BDFC0 00000000 */ nop
/* 321B14 802BDFC4 3C028011 */ lui $v0, %hi(D_8010EBB0)
/* 321B18 802BDFC8 2442EBB0 */ addiu $v0, $v0, %lo(D_8010EBB0)
/* 321B1C 802BDFCC 8C42000C */ lw $v0, 0xc($v0)
/* 321B20 802BDFD0 30428000 */ andi $v0, $v0, 0x8000
/* 321B24 802BDFD4 10400005 */ beqz $v0, .L802BDFEC
/* 321B28 802BDFD8 26A3000A */ addiu $v1, $s5, 0xa
/* 321B2C 802BDFDC 3C028011 */ lui $v0, 0x8011
/* 321B30 802BDFE0 9442C97A */ lhu $v0, -0x3686($v0)
/* 321B34 802BDFE4 080AF7FD */ j .L802BDFF4
/* 321B38 802BDFE8 A4620000 */ sh $v0, ($v1)
.L802BDFEC:
/* 321B3C 802BDFEC 2402FFFF */ addiu $v0, $zero, -1
/* 321B40 802BDFF0 A4620000 */ sh $v0, ($v1)
.L802BDFF4:
/* 321B44 802BDFF4 C7A2002C */ lwc1 $f2, 0x2c($sp)
/* 321B48 802BDFF8 44800000 */ mtc1 $zero, $f0
/* 321B4C 802BDFFC 00000000 */ nop
/* 321B50 802BE000 46001032 */ c.eq.s $f2, $f0
/* 321B54 802BE004 00000000 */ nop
/* 321B58 802BE008 4501009E */ bc1t .L802BE284
/* 321B5C 802BE00C 27B30030 */ addiu $s3, $sp, 0x30
/* 321B60 802BE010 C7A00028 */ lwc1 $f0, 0x28($sp)
/* 321B64 802BE014 C6420038 */ lwc1 $f2, 0x38($s2)
/* 321B68 802BE018 C6440064 */ lwc1 $f4, 0x64($s2)
/* 321B6C 802BE01C C6460040 */ lwc1 $f6, 0x40($s2)
/* 321B70 802BE020 C6480018 */ lwc1 $f8, 0x18($s2)
/* 321B74 802BE024 E640000C */ swc1 $f0, 0xc($s2)
/* 321B78 802BE028 E7A20030 */ swc1 $f2, 0x30($sp)
/* 321B7C 802BE02C E7A40034 */ swc1 $f4, 0x34($sp)
/* 321B80 802BE030 E7A60038 */ swc1 $f6, 0x38($sp)
/* 321B84 802BE034 E7A80010 */ swc1 $f8, 0x10($sp)
/* 321B88 802BE038 C640000C */ lwc1 $f0, 0xc($s2)
/* 321B8C 802BE03C E7A00014 */ swc1 $f0, 0x14($sp)
/* 321B90 802BE040 864200A8 */ lh $v0, 0xa8($s2)
/* 321B94 802BE044 27A50030 */ addiu $a1, $sp, 0x30
/* 321B98 802BE048 44820000 */ mtc1 $v0, $f0
/* 321B9C 802BE04C 00000000 */ nop
/* 321BA0 802BE050 46800020 */ cvt.s.w $f0, $f0
/* 321BA4 802BE054 E7A00018 */ swc1 $f0, 0x18($sp)
/* 321BA8 802BE058 864200A6 */ lh $v0, 0xa6($s2)
/* 321BAC 802BE05C 27A60034 */ addiu $a2, $sp, 0x34
/* 321BB0 802BE060 44820000 */ mtc1 $v0, $f0
/* 321BB4 802BE064 00000000 */ nop
/* 321BB8 802BE068 46800020 */ cvt.s.w $f0, $f0
/* 321BBC 802BE06C E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321BC0 802BE070 8E440080 */ lw $a0, 0x80($s2)
/* 321BC4 802BE074 0C037765 */ jal func_800DDD94
/* 321BC8 802BE078 27A70038 */ addiu $a3, $sp, 0x38
/* 321BCC 802BE07C 10400017 */ beqz $v0, .L802BE0DC
/* 321BD0 802BE080 00000000 */ nop
/* 321BD4 802BE084 3C02802C */ lui $v0, 0x802c
/* 321BD8 802BE088 8C42FF10 */ lw $v0, -0xf0($v0)
/* 321BDC 802BE08C 10400004 */ beqz $v0, .L802BE0A0
/* 321BE0 802BE090 00000000 */ nop
/* 321BE4 802BE094 3C028011 */ lui $v0, 0x8011
/* 321BE8 802BE098 9442C97A */ lhu $v0, -0x3686($v0)
/* 321BEC 802BE09C A6A20000 */ sh $v0, ($s5)
.L802BE0A0:
/* 321BF0 802BE0A0 C7A00030 */ lwc1 $f0, 0x30($sp)
/* 321BF4 802BE0A4 C6460038 */ lwc1 $f6, 0x38($s2)
/* 321BF8 802BE0A8 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 321BFC 802BE0AC 46060001 */ sub.s $f0, $f0, $f6
/* 321C00 802BE0B0 C6440040 */ lwc1 $f4, 0x40($s2)
/* 321C04 802BE0B4 3C0140A0 */ lui $at, 0x40a0
/* 321C08 802BE0B8 44814000 */ mtc1 $at, $f8
/* 321C0C 802BE0BC 46041081 */ sub.s $f2, $f2, $f4
/* 321C10 802BE0C0 46080003 */ div.s $f0, $f0, $f8
/* 321C14 802BE0C4 46003180 */ add.s $f6, $f6, $f0
/* 321C18 802BE0C8 46081083 */ div.s $f2, $f2, $f8
/* 321C1C 802BE0CC 46022100 */ add.s $f4, $f4, $f2
/* 321C20 802BE0D0 E6460038 */ swc1 $f6, 0x38($s2)
/* 321C24 802BE0D4 080AF840 */ j .L802BE100
/* 321C28 802BE0D8 E6440040 */ swc1 $f4, 0x40($s2)
.L802BE0DC:
/* 321C2C 802BE0DC 8E450018 */ lw $a1, 0x18($s2)
/* 321C30 802BE0E0 8FA60028 */ lw $a2, 0x28($sp)
/* 321C34 802BE0E4 0C00EA95 */ jal npc_move_heading
/* 321C38 802BE0E8 0240202D */ daddu $a0, $s2, $zero
/* 321C3C 802BE0EC 3C02802C */ lui $v0, 0x802c
/* 321C40 802BE0F0 8C42FF10 */ lw $v0, -0xf0($v0)
/* 321C44 802BE0F4 10400002 */ beqz $v0, .L802BE100
/* 321C48 802BE0F8 2402FFFF */ addiu $v0, $zero, -1
/* 321C4C 802BE0FC A6A20000 */ sh $v0, ($s5)
.L802BE100:
/* 321C50 802BE100 C64C000C */ lwc1 $f12, 0xc($s2)
/* 321C54 802BE104 3C0141F0 */ lui $at, 0x41f0
/* 321C58 802BE108 4481A000 */ mtc1 $at, $f20
/* 321C5C 802BE10C 0C00A6C9 */ jal clamp_angle
/* 321C60 802BE110 46146301 */ sub.s $f12, $f12, $f20
/* 321C64 802BE114 27B30030 */ addiu $s3, $sp, 0x30
/* 321C68 802BE118 0260282D */ daddu $a1, $s3, $zero
/* 321C6C 802BE11C C6420038 */ lwc1 $f2, 0x38($s2)
/* 321C70 802BE120 C6440064 */ lwc1 $f4, 0x64($s2)
/* 321C74 802BE124 C6460040 */ lwc1 $f6, 0x40($s2)
/* 321C78 802BE128 C6480018 */ lwc1 $f8, 0x18($s2)
/* 321C7C 802BE12C 27B10034 */ addiu $s1, $sp, 0x34
/* 321C80 802BE130 E7A00028 */ swc1 $f0, 0x28($sp)
/* 321C84 802BE134 E7A20030 */ swc1 $f2, 0x30($sp)
/* 321C88 802BE138 E7A40034 */ swc1 $f4, 0x34($sp)
/* 321C8C 802BE13C E7A60038 */ swc1 $f6, 0x38($sp)
/* 321C90 802BE140 E7A80010 */ swc1 $f8, 0x10($sp)
/* 321C94 802BE144 E7A00014 */ swc1 $f0, 0x14($sp)
/* 321C98 802BE148 864200A8 */ lh $v0, 0xa8($s2)
/* 321C9C 802BE14C 0220302D */ daddu $a2, $s1, $zero
/* 321CA0 802BE150 44820000 */ mtc1 $v0, $f0
/* 321CA4 802BE154 00000000 */ nop
/* 321CA8 802BE158 46800020 */ cvt.s.w $f0, $f0
/* 321CAC 802BE15C E7A00018 */ swc1 $f0, 0x18($sp)
/* 321CB0 802BE160 864200A6 */ lh $v0, 0xa6($s2)
/* 321CB4 802BE164 27B00038 */ addiu $s0, $sp, 0x38
/* 321CB8 802BE168 44820000 */ mtc1 $v0, $f0
/* 321CBC 802BE16C 00000000 */ nop
/* 321CC0 802BE170 46800020 */ cvt.s.w $f0, $f0
/* 321CC4 802BE174 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321CC8 802BE178 8E440080 */ lw $a0, 0x80($s2)
/* 321CCC 802BE17C 0C0376B9 */ jal func_800DDAE4
/* 321CD0 802BE180 0200382D */ daddu $a3, $s0, $zero
/* 321CD4 802BE184 1040000F */ beqz $v0, .L802BE1C4
/* 321CD8 802BE188 00000000 */ nop
/* 321CDC 802BE18C C7A00030 */ lwc1 $f0, 0x30($sp)
/* 321CE0 802BE190 C6460038 */ lwc1 $f6, 0x38($s2)
/* 321CE4 802BE194 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 321CE8 802BE198 46060001 */ sub.s $f0, $f0, $f6
/* 321CEC 802BE19C C6440040 */ lwc1 $f4, 0x40($s2)
/* 321CF0 802BE1A0 3C0140A0 */ lui $at, 0x40a0
/* 321CF4 802BE1A4 44814000 */ mtc1 $at, $f8
/* 321CF8 802BE1A8 46041081 */ sub.s $f2, $f2, $f4
/* 321CFC 802BE1AC 46080003 */ div.s $f0, $f0, $f8
/* 321D00 802BE1B0 46003180 */ add.s $f6, $f6, $f0
/* 321D04 802BE1B4 46081083 */ div.s $f2, $f2, $f8
/* 321D08 802BE1B8 46022100 */ add.s $f4, $f4, $f2
/* 321D0C 802BE1BC E6460038 */ swc1 $f6, 0x38($s2)
/* 321D10 802BE1C0 E6440040 */ swc1 $f4, 0x40($s2)
.L802BE1C4:
/* 321D14 802BE1C4 C64C000C */ lwc1 $f12, 0xc($s2)
/* 321D18 802BE1C8 0C00A6C9 */ jal clamp_angle
/* 321D1C 802BE1CC 46146300 */ add.s $f12, $f12, $f20
/* 321D20 802BE1D0 C6420038 */ lwc1 $f2, 0x38($s2)
/* 321D24 802BE1D4 C6440064 */ lwc1 $f4, 0x64($s2)
/* 321D28 802BE1D8 C6460040 */ lwc1 $f6, 0x40($s2)
/* 321D2C 802BE1DC C6480018 */ lwc1 $f8, 0x18($s2)
/* 321D30 802BE1E0 E7A00028 */ swc1 $f0, 0x28($sp)
/* 321D34 802BE1E4 E7A20030 */ swc1 $f2, 0x30($sp)
/* 321D38 802BE1E8 E7A40034 */ swc1 $f4, 0x34($sp)
/* 321D3C 802BE1EC E7A60038 */ swc1 $f6, 0x38($sp)
/* 321D40 802BE1F0 E7A80010 */ swc1 $f8, 0x10($sp)
/* 321D44 802BE1F4 E7A00014 */ swc1 $f0, 0x14($sp)
/* 321D48 802BE1F8 864200A8 */ lh $v0, 0xa8($s2)
/* 321D4C 802BE1FC 0260282D */ daddu $a1, $s3, $zero
/* 321D50 802BE200 44820000 */ mtc1 $v0, $f0
/* 321D54 802BE204 00000000 */ nop
/* 321D58 802BE208 46800020 */ cvt.s.w $f0, $f0
/* 321D5C 802BE20C E7A00018 */ swc1 $f0, 0x18($sp)
/* 321D60 802BE210 864200A6 */ lh $v0, 0xa6($s2)
/* 321D64 802BE214 0220302D */ daddu $a2, $s1, $zero
/* 321D68 802BE218 44820000 */ mtc1 $v0, $f0
/* 321D6C 802BE21C 00000000 */ nop
/* 321D70 802BE220 46800020 */ cvt.s.w $f0, $f0
/* 321D74 802BE224 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321D78 802BE228 8E440080 */ lw $a0, 0x80($s2)
/* 321D7C 802BE22C 0C0376B9 */ jal func_800DDAE4
/* 321D80 802BE230 0200382D */ daddu $a3, $s0, $zero
/* 321D84 802BE234 1040000F */ beqz $v0, .L802BE274
/* 321D88 802BE238 0240202D */ daddu $a0, $s2, $zero
/* 321D8C 802BE23C C7A00030 */ lwc1 $f0, 0x30($sp)
/* 321D90 802BE240 C6460038 */ lwc1 $f6, 0x38($s2)
/* 321D94 802BE244 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 321D98 802BE248 46060001 */ sub.s $f0, $f0, $f6
/* 321D9C 802BE24C C6440040 */ lwc1 $f4, 0x40($s2)
/* 321DA0 802BE250 3C0140A0 */ lui $at, 0x40a0
/* 321DA4 802BE254 44814000 */ mtc1 $at, $f8
/* 321DA8 802BE258 46041081 */ sub.s $f2, $f2, $f4
/* 321DAC 802BE25C 46080003 */ div.s $f0, $f0, $f8
/* 321DB0 802BE260 46003180 */ add.s $f6, $f6, $f0
/* 321DB4 802BE264 46081083 */ div.s $f2, $f2, $f8
/* 321DB8 802BE268 46022100 */ add.s $f4, $f4, $f2
/* 321DBC 802BE26C E6460038 */ swc1 $f6, 0x38($s2)
/* 321DC0 802BE270 E6440040 */ swc1 $f4, 0x40($s2)
.L802BE274:
/* 321DC4 802BE274 0C00F598 */ jal func_8003D660
/* 321DC8 802BE278 24050001 */ addiu $a1, $zero, 1
/* 321DCC 802BE27C 080AF8F9 */ j .L802BE3E4
/* 321DD0 802BE280 00000000 */ nop
.L802BE284:
/* 321DD4 802BE284 0260282D */ daddu $a1, $s3, $zero
/* 321DD8 802BE288 3C0142B4 */ lui $at, 0x42b4
/* 321DDC 802BE28C 44813000 */ mtc1 $at, $f6
/* 321DE0 802BE290 C6400038 */ lwc1 $f0, 0x38($s2)
/* 321DE4 802BE294 C6420064 */ lwc1 $f2, 0x64($s2)
/* 321DE8 802BE298 C6440040 */ lwc1 $f4, 0x40($s2)
/* 321DEC 802BE29C 3C014080 */ lui $at, 0x4080
/* 321DF0 802BE2A0 4481A000 */ mtc1 $at, $f20
/* 321DF4 802BE2A4 27B10034 */ addiu $s1, $sp, 0x34
/* 321DF8 802BE2A8 E7A60028 */ swc1 $f6, 0x28($sp)
/* 321DFC 802BE2AC E7A00030 */ swc1 $f0, 0x30($sp)
/* 321E00 802BE2B0 E7A20034 */ swc1 $f2, 0x34($sp)
/* 321E04 802BE2B4 E7A40038 */ swc1 $f4, 0x38($sp)
/* 321E08 802BE2B8 E7B40010 */ swc1 $f20, 0x10($sp)
/* 321E0C 802BE2BC E7A60014 */ swc1 $f6, 0x14($sp)
/* 321E10 802BE2C0 864200A8 */ lh $v0, 0xa8($s2)
/* 321E14 802BE2C4 0220302D */ daddu $a2, $s1, $zero
/* 321E18 802BE2C8 44820000 */ mtc1 $v0, $f0
/* 321E1C 802BE2CC 00000000 */ nop
/* 321E20 802BE2D0 46800020 */ cvt.s.w $f0, $f0
/* 321E24 802BE2D4 E7A00018 */ swc1 $f0, 0x18($sp)
/* 321E28 802BE2D8 864200A6 */ lh $v0, 0xa6($s2)
/* 321E2C 802BE2DC 27B00038 */ addiu $s0, $sp, 0x38
/* 321E30 802BE2E0 44820000 */ mtc1 $v0, $f0
/* 321E34 802BE2E4 00000000 */ nop
/* 321E38 802BE2E8 46800020 */ cvt.s.w $f0, $f0
/* 321E3C 802BE2EC E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321E40 802BE2F0 8E440080 */ lw $a0, 0x80($s2)
/* 321E44 802BE2F4 0C0376B9 */ jal func_800DDAE4
/* 321E48 802BE2F8 0200382D */ daddu $a3, $s0, $zero
/* 321E4C 802BE2FC 1040000F */ beqz $v0, .L802BE33C
/* 321E50 802BE300 00000000 */ nop
/* 321E54 802BE304 C7A00030 */ lwc1 $f0, 0x30($sp)
/* 321E58 802BE308 C6460038 */ lwc1 $f6, 0x38($s2)
/* 321E5C 802BE30C C7A20038 */ lwc1 $f2, 0x38($sp)
/* 321E60 802BE310 46060001 */ sub.s $f0, $f0, $f6
/* 321E64 802BE314 C6440040 */ lwc1 $f4, 0x40($s2)
/* 321E68 802BE318 3C0140A0 */ lui $at, 0x40a0
/* 321E6C 802BE31C 44814000 */ mtc1 $at, $f8
/* 321E70 802BE320 46041081 */ sub.s $f2, $f2, $f4
/* 321E74 802BE324 46080003 */ div.s $f0, $f0, $f8
/* 321E78 802BE328 46003180 */ add.s $f6, $f6, $f0
/* 321E7C 802BE32C 46081083 */ div.s $f2, $f2, $f8
/* 321E80 802BE330 46022100 */ add.s $f4, $f4, $f2
/* 321E84 802BE334 E6460038 */ swc1 $f6, 0x38($s2)
/* 321E88 802BE338 E6440040 */ swc1 $f4, 0x40($s2)
.L802BE33C:
/* 321E8C 802BE33C 3C014387 */ lui $at, 0x4387
/* 321E90 802BE340 44813000 */ mtc1 $at, $f6
/* 321E94 802BE344 C6400038 */ lwc1 $f0, 0x38($s2)
/* 321E98 802BE348 C6420064 */ lwc1 $f2, 0x64($s2)
/* 321E9C 802BE34C C6440040 */ lwc1 $f4, 0x40($s2)
/* 321EA0 802BE350 E7A60028 */ swc1 $f6, 0x28($sp)
/* 321EA4 802BE354 E7A00030 */ swc1 $f0, 0x30($sp)
/* 321EA8 802BE358 E7A20034 */ swc1 $f2, 0x34($sp)
/* 321EAC 802BE35C E7A40038 */ swc1 $f4, 0x38($sp)
/* 321EB0 802BE360 E7B40010 */ swc1 $f20, 0x10($sp)
/* 321EB4 802BE364 E7A60014 */ swc1 $f6, 0x14($sp)
/* 321EB8 802BE368 864200A8 */ lh $v0, 0xa8($s2)
/* 321EBC 802BE36C 0260282D */ daddu $a1, $s3, $zero
/* 321EC0 802BE370 44820000 */ mtc1 $v0, $f0
/* 321EC4 802BE374 00000000 */ nop
/* 321EC8 802BE378 46800020 */ cvt.s.w $f0, $f0
/* 321ECC 802BE37C E7A00018 */ swc1 $f0, 0x18($sp)
/* 321ED0 802BE380 864200A6 */ lh $v0, 0xa6($s2)
/* 321ED4 802BE384 0220302D */ daddu $a2, $s1, $zero
/* 321ED8 802BE388 44820000 */ mtc1 $v0, $f0
/* 321EDC 802BE38C 00000000 */ nop
/* 321EE0 802BE390 46800020 */ cvt.s.w $f0, $f0
/* 321EE4 802BE394 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 321EE8 802BE398 8E440080 */ lw $a0, 0x80($s2)
/* 321EEC 802BE39C 0C0376B9 */ jal func_800DDAE4
/* 321EF0 802BE3A0 0200382D */ daddu $a3, $s0, $zero
/* 321EF4 802BE3A4 1040000F */ beqz $v0, .L802BE3E4
/* 321EF8 802BE3A8 00000000 */ nop
/* 321EFC 802BE3AC C7A00030 */ lwc1 $f0, 0x30($sp)
/* 321F00 802BE3B0 C6460038 */ lwc1 $f6, 0x38($s2)
/* 321F04 802BE3B4 C7A20038 */ lwc1 $f2, 0x38($sp)
/* 321F08 802BE3B8 46060001 */ sub.s $f0, $f0, $f6
/* 321F0C 802BE3BC C6440040 */ lwc1 $f4, 0x40($s2)
/* 321F10 802BE3C0 3C0140A0 */ lui $at, 0x40a0
/* 321F14 802BE3C4 44814000 */ mtc1 $at, $f8
/* 321F18 802BE3C8 46041081 */ sub.s $f2, $f2, $f4
/* 321F1C 802BE3CC 46080003 */ div.s $f0, $f0, $f8
/* 321F20 802BE3D0 46003180 */ add.s $f6, $f6, $f0
/* 321F24 802BE3D4 46081083 */ div.s $f2, $f2, $f8
/* 321F28 802BE3D8 46022100 */ add.s $f4, $f4, $f2
/* 321F2C 802BE3DC E6460038 */ swc1 $f6, 0x38($s2)
/* 321F30 802BE3E0 E6440040 */ swc1 $f4, 0x40($s2)
.L802BE3E4:
/* 321F34 802BE3E4 0C0AF6A4 */ jal func_802BDA90
/* 321F38 802BE3E8 0240202D */ daddu $a0, $s2, $zero
/* 321F3C 802BE3EC 27B00030 */ addiu $s0, $sp, 0x30
/* 321F40 802BE3F0 0200202D */ daddu $a0, $s0, $zero
/* 321F44 802BE3F4 27B10038 */ addiu $s1, $sp, 0x38
/* 321F48 802BE3F8 0220282D */ daddu $a1, $s1, $zero
/* 321F4C 802BE3FC 3C014140 */ lui $at, 0x4140
/* 321F50 802BE400 44810000 */ mtc1 $at, $f0
/* 321F54 802BE404 3C064000 */ lui $a2, 0x4000
/* 321F58 802BE408 C6420064 */ lwc1 $f2, 0x64($s2)
/* 321F5C 802BE40C 864200A8 */ lh $v0, 0xa8($s2)
/* 321F60 802BE410 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 321F64 802BE414 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 321F68 802BE418 46000506 */ mov.s $f20, $f0
/* 321F6C 802BE41C C6400014 */ lwc1 $f0, 0x14($s2)
/* 321F70 802BE420 24420002 */ addiu $v0, $v0, 2
/* 321F74 802BE424 46001081 */ sub.s $f2, $f2, $f0
/* 321F78 802BE428 44820000 */ mtc1 $v0, $f0
/* 321F7C 802BE42C 00000000 */ nop
/* 321F80 802BE430 46800020 */ cvt.s.w $f0, $f0
/* 321F84 802BE434 00031080 */ sll $v0, $v1, 2
/* 321F88 802BE438 00431021 */ addu $v0, $v0, $v1
/* 321F8C 802BE43C 00021080 */ sll $v0, $v0, 2
/* 321F90 802BE440 00431023 */ subu $v0, $v0, $v1
/* 321F94 802BE444 000218C0 */ sll $v1, $v0, 3
/* 321F98 802BE448 00431021 */ addu $v0, $v0, $v1
/* 321F9C 802BE44C 000210C0 */ sll $v0, $v0, 3
/* 321FA0 802BE450 E7A0003C */ swc1 $f0, 0x3c($sp)
/* 321FA4 802BE454 E6420064 */ swc1 $f2, 0x64($s2)
/* 321FA8 802BE458 46001006 */ mov.s $f0, $f2
/* 321FAC 802BE45C 3C07800B */ lui $a3, 0x800b
/* 321FB0 802BE460 00E23821 */ addu $a3, $a3, $v0
/* 321FB4 802BE464 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 321FB8 802BE468 C6820028 */ lwc1 $f2, 0x28($s4)
/* 321FBC 802BE46C C6840030 */ lwc1 $f4, 0x30($s4)
/* 321FC0 802BE470 46140000 */ add.s $f0, $f0, $f20
/* 321FC4 802BE474 E7A20030 */ swc1 $f2, 0x30($sp)
/* 321FC8 802BE478 E7A40038 */ swc1 $f4, 0x38($sp)
/* 321FCC 802BE47C 0C00A7E7 */ jal add_vec2D_polar
/* 321FD0 802BE480 E7A00034 */ swc1 $f0, 0x34($sp)
/* 321FD4 802BE484 0280202D */ daddu $a0, $s4, $zero
/* 321FD8 802BE488 0200282D */ daddu $a1, $s0, $zero
/* 321FDC 802BE48C 27A60034 */ addiu $a2, $sp, 0x34
/* 321FE0 802BE490 0220382D */ daddu $a3, $s1, $zero
/* 321FE4 802BE494 27A2003C */ addiu $v0, $sp, 0x3c
/* 321FE8 802BE498 AFA20010 */ sw $v0, 0x10($sp)
/* 321FEC 802BE49C 27A20040 */ addiu $v0, $sp, 0x40
/* 321FF0 802BE4A0 AFA20014 */ sw $v0, 0x14($sp)
/* 321FF4 802BE4A4 27A20044 */ addiu $v0, $sp, 0x44
/* 321FF8 802BE4A8 AFA20018 */ sw $v0, 0x18($sp)
/* 321FFC 802BE4AC 27A20048 */ addiu $v0, $sp, 0x48
/* 322000 802BE4B0 AFA2001C */ sw $v0, 0x1c($sp)
/* 322004 802BE4B4 27A2004C */ addiu $v0, $sp, 0x4c
/* 322008 802BE4B8 0C03791B */ jal func_800DE46C
/* 32200C 802BE4BC AFA20020 */ sw $v0, 0x20($sp)
/* 322010 802BE4C0 0C00A794 */ jal get_player_normal_pitch
/* 322014 802BE4C4 0040802D */ daddu $s0, $v0, $zero
/* 322018 802BE4C8 44801000 */ mtc1 $zero, $f2
/* 32201C 802BE4CC 3C01802C */ lui $at, 0x802c
/* 322020 802BE4D0 E420FF28 */ swc1 $f0, -0xd8($at)
/* 322024 802BE4D4 46020032 */ c.eq.s $f0, $f2
/* 322028 802BE4D8 00000000 */ nop
/* 32202C 802BE4DC 45010003 */ bc1t .L802BE4EC
/* 322030 802BE4E0 00000000 */ nop
/* 322034 802BE4E4 3C014200 */ lui $at, 0x4200
/* 322038 802BE4E8 4481A000 */ mtc1 $at, $f20
.L802BE4EC:
/* 32203C 802BE4EC 4600103C */ c.lt.s $f2, $f0
/* 322040 802BE4F0 00000000 */ nop
/* 322044 802BE4F4 4500001B */ bc1f .L802BE564
/* 322048 802BE4F8 00000000 */ nop
/* 32204C 802BE4FC 06000019 */ bltz $s0, .L802BE564
/* 322050 802BE500 27A50050 */ addiu $a1, $sp, 0x50
/* 322054 802BE504 3C0140C9 */ lui $at, 0x40c9
/* 322058 802BE508 34210FD0 */ ori $at, $at, 0xfd0
/* 32205C 802BE50C 44816000 */ mtc1 $at, $f12
/* 322060 802BE510 00000000 */ nop
/* 322064 802BE514 460C0302 */ mul.s $f12, $f0, $f12
/* 322068 802BE518 00000000 */ nop
/* 32206C 802BE51C 3C0143B4 */ lui $at, 0x43b4
/* 322070 802BE520 44810000 */ mtc1 $at, $f0
/* 322074 802BE524 27A60054 */ addiu $a2, $sp, 0x54
/* 322078 802BE528 0C00A82D */ jal sin_cos_rad
/* 32207C 802BE52C 46006303 */ div.s $f12, $f12, $f0
/* 322080 802BE530 C7A20050 */ lwc1 $f2, 0x50($sp)
/* 322084 802BE534 C7A00054 */ lwc1 $f0, 0x54($sp)
/* 322088 802BE538 C684005C */ lwc1 $f4, 0x5c($s4)
/* 32208C 802BE53C 46001083 */ div.s $f2, $f2, $f0
/* 322090 802BE540 46041082 */ mul.s $f2, $f2, $f4
/* 322094 802BE544 00000000 */ nop
/* 322098 802BE548 C640003C */ lwc1 $f0, 0x3c($s2)
/* 32209C 802BE54C 46000021 */ cvt.d.s $f0, $f0
/* 3220A0 802BE550 460010A1 */ cvt.d.s $f2, $f2
/* 3220A4 802BE554 46201085 */ abs.d $f2, $f2
/* 3220A8 802BE558 46220000 */ add.d $f0, $f0, $f2
/* 3220AC 802BE55C 46200020 */ cvt.s.d $f0, $f0
/* 3220B0 802BE560 E640003C */ swc1 $f0, 0x3c($s2)
.L802BE564:
/* 3220B4 802BE564 C7A0003C */ lwc1 $f0, 0x3c($sp)
/* 3220B8 802BE568 4614003E */ c.le.s $f0, $f20
/* 3220BC 802BE56C 00000000 */ nop
/* 3220C0 802BE570 4500002E */ bc1f .L802BE62C
/* 3220C4 802BE574 00000000 */ nop
/* 3220C8 802BE578 0600002C */ bltz $s0, .L802BE62C
/* 3220CC 802BE57C 0200202D */ daddu $a0, $s0, $zero
/* 3220D0 802BE580 C6400038 */ lwc1 $f0, 0x38($s2)
/* 3220D4 802BE584 4600028D */ trunc.w.s $f10, $f0
/* 3220D8 802BE588 44025000 */ mfc1 $v0, $f10
/* 3220DC 802BE58C 00000000 */ nop
/* 3220E0 802BE590 A6820016 */ sh $v0, 0x16($s4)
/* 3220E4 802BE594 C640003C */ lwc1 $f0, 0x3c($s2)
/* 3220E8 802BE598 4600028D */ trunc.w.s $f10, $f0
/* 3220EC 802BE59C 44025000 */ mfc1 $v0, $f10
/* 3220F0 802BE5A0 00000000 */ nop
/* 3220F4 802BE5A4 A6820018 */ sh $v0, 0x18($s4)
/* 3220F8 802BE5A8 C6400040 */ lwc1 $f0, 0x40($s2)
/* 3220FC 802BE5AC A6A40002 */ sh $a0, 2($s5)
/* 322100 802BE5B0 C7A20034 */ lwc1 $f2, 0x34($sp)
/* 322104 802BE5B4 C7A40030 */ lwc1 $f4, 0x30($sp)
/* 322108 802BE5B8 C7A60038 */ lwc1 $f6, 0x38($sp)
/* 32210C 802BE5BC 4600028D */ trunc.w.s $f10, $f0
/* 322110 802BE5C0 44025000 */ mfc1 $v0, $f10
/* 322114 802BE5C4 00000000 */ nop
/* 322118 802BE5C8 A682001A */ sh $v0, 0x1a($s4)
/* 32211C 802BE5CC A6440084 */ sh $a0, 0x84($s2)
/* 322120 802BE5D0 E6420064 */ swc1 $f2, 0x64($s2)
/* 322124 802BE5D4 E6440060 */ swc1 $f4, 0x60($s2)
/* 322128 802BE5D8 E6460068 */ swc1 $f6, 0x68($s2)
/* 32212C 802BE5DC AE400014 */ sw $zero, 0x14($s2)
/* 322130 802BE5E0 0C016F6A */ jal get_collider_type_by_id
/* 322134 802BE5E4 A68000C0 */ sh $zero, 0xc0($s4)
/* 322138 802BE5E8 304200FF */ andi $v0, $v0, 0xff
/* 32213C 802BE5EC 24030003 */ addiu $v1, $zero, 3
/* 322140 802BE5F0 14430009 */ bne $v0, $v1, .L802BE618
/* 322144 802BE5F4 3C020008 */ lui $v0, 8
/* 322148 802BE5F8 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 32214C 802BE5FC 3C013F00 */ lui $at, 0x3f00
/* 322150 802BE600 44811000 */ mtc1 $at, $f2
/* 322154 802BE604 00000000 */ nop
/* 322158 802BE608 46020002 */ mul.s $f0, $f0, $f2
/* 32215C 802BE60C 00000000 */ nop
/* 322160 802BE610 080AF988 */ j .L802BE620
/* 322164 802BE614 34420006 */ ori $v0, $v0, 6
.L802BE618:
/* 322168 802BE618 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 32216C 802BE61C 34420005 */ ori $v0, $v0, 5
.L802BE620:
/* 322170 802BE620 AE420028 */ sw $v0, 0x28($s2)
/* 322174 802BE624 080AF99E */ j .L802BE678
/* 322178 802BE628 E6400018 */ swc1 $f0, 0x18($s2)
.L802BE62C:
/* 32217C 802BE62C 968200C0 */ lhu $v0, 0xc0($s4)
/* 322180 802BE630 2403FFFF */ addiu $v1, $zero, -1
/* 322184 802BE634 A6A30002 */ sh $v1, 2($s5)
/* 322188 802BE638 24420001 */ addiu $v0, $v0, 1
/* 32218C 802BE63C A68200C0 */ sh $v0, 0xc0($s4)
/* 322190 802BE640 C6400014 */ lwc1 $f0, 0x14($s2)
/* 322194 802BE644 3C01802C */ lui $at, 0x802c
/* 322198 802BE648 D422FEF8 */ ldc1 $f2, -0x108($at)
/* 32219C 802BE64C 46000021 */ cvt.d.s $f0, $f0
/* 3221A0 802BE650 46220000 */ add.d $f0, $f0, $f2
/* 3221A4 802BE654 A6430084 */ sh $v1, 0x84($s2)
/* 3221A8 802BE658 3C014140 */ lui $at, 0x4140
/* 3221AC 802BE65C 44811000 */ mtc1 $at, $f2
/* 3221B0 802BE660 46200020 */ cvt.s.d $f0, $f0
/* 3221B4 802BE664 4600103C */ c.lt.s $f2, $f0
/* 3221B8 802BE668 00000000 */ nop
/* 3221BC 802BE66C 45000002 */ bc1f .L802BE678
/* 3221C0 802BE670 E6400014 */ swc1 $f0, 0x14($s2)
/* 3221C4 802BE674 E6420014 */ swc1 $f2, 0x14($s2)
.L802BE678:
/* 3221C8 802BE678 8FBF0070 */ lw $ra, 0x70($sp)
/* 3221CC 802BE67C 8FB5006C */ lw $s5, 0x6c($sp)
/* 3221D0 802BE680 8FB40068 */ lw $s4, 0x68($sp)
/* 3221D4 802BE684 8FB30064 */ lw $s3, 0x64($sp)
/* 3221D8 802BE688 8FB20060 */ lw $s2, 0x60($sp)
/* 3221DC 802BE68C 8FB1005C */ lw $s1, 0x5c($sp)
/* 3221E0 802BE690 8FB00058 */ lw $s0, 0x58($sp)
/* 3221E4 802BE694 D7B40078 */ ldc1 $f20, 0x78($sp)
/* 3221E8 802BE698 03E00008 */ jr $ra
/* 3221EC 802BE69C 27BD0080 */ addiu $sp, $sp, 0x80

View File

@ -0,0 +1,37 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE6A0
/* 3221F0 802BE6A0 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 3221F4 802BE6A4 0080302D */ daddu $a2, $a0, $zero
/* 3221F8 802BE6A8 3C048011 */ lui $a0, %hi(gPlayerStatus)
/* 3221FC 802BE6AC 2484EFC8 */ addiu $a0, $a0, %lo(gPlayerStatus)
/* 322200 802BE6B0 27A50028 */ addiu $a1, $sp, 0x28
/* 322204 802BE6B4 AFBF0048 */ sw $ra, 0x48($sp)
/* 322208 802BE6B8 848200B0 */ lh $v0, 0xb0($a0)
/* 32220C 802BE6BC C480002C */ lwc1 $f0, 0x2c($a0)
/* 322210 802BE6C0 44821000 */ mtc1 $v0, $f2
/* 322214 802BE6C4 00000000 */ nop
/* 322218 802BE6C8 468010A0 */ cvt.s.w $f2, $f2
/* 32221C 802BE6CC 46020000 */ add.s $f0, $f0, $f2
/* 322220 802BE6D0 27A7002C */ addiu $a3, $sp, 0x2c
/* 322224 802BE6D4 E7A20030 */ swc1 $f2, 0x30($sp)
/* 322228 802BE6D8 E4C00000 */ swc1 $f0, ($a2)
/* 32222C 802BE6DC C4800028 */ lwc1 $f0, 0x28($a0)
/* 322230 802BE6E0 C4820030 */ lwc1 $f2, 0x30($a0)
/* 322234 802BE6E4 27A20030 */ addiu $v0, $sp, 0x30
/* 322238 802BE6E8 E7A00028 */ swc1 $f0, 0x28($sp)
/* 32223C 802BE6EC E7A2002C */ swc1 $f2, 0x2c($sp)
/* 322240 802BE6F0 AFA20010 */ sw $v0, 0x10($sp)
/* 322244 802BE6F4 27A20034 */ addiu $v0, $sp, 0x34
/* 322248 802BE6F8 AFA20014 */ sw $v0, 0x14($sp)
/* 32224C 802BE6FC 27A20038 */ addiu $v0, $sp, 0x38
/* 322250 802BE700 AFA20018 */ sw $v0, 0x18($sp)
/* 322254 802BE704 27A2003C */ addiu $v0, $sp, 0x3c
/* 322258 802BE708 AFA2001C */ sw $v0, 0x1c($sp)
/* 32225C 802BE70C 27A20040 */ addiu $v0, $sp, 0x40
/* 322260 802BE710 0C03791B */ jal func_800DE46C
/* 322264 802BE714 AFA20020 */ sw $v0, 0x20($sp)
/* 322268 802BE718 8FBF0048 */ lw $ra, 0x48($sp)
/* 32226C 802BE71C 03E00008 */ jr $ra
/* 322270 802BE720 27BD0050 */ addiu $sp, $sp, 0x50

View File

@ -0,0 +1,942 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BE724
/* 322274 802BE724 27BDFFA0 */ addiu $sp, $sp, -0x60
/* 322278 802BE728 AFB40040 */ sw $s4, 0x40($sp)
/* 32227C 802BE72C 0080A02D */ daddu $s4, $a0, $zero
/* 322280 802BE730 3C03FFBF */ lui $v1, 0xffbf
/* 322284 802BE734 3463FFFF */ ori $v1, $v1, 0xffff
/* 322288 802BE738 AFB20038 */ sw $s2, 0x38($sp)
/* 32228C 802BE73C 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 322290 802BE740 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 322294 802BE744 AFB50044 */ sw $s5, 0x44($sp)
/* 322298 802BE748 3C158011 */ lui $s5, %hi(D_8010EBB0)
/* 32229C 802BE74C 26B5EBB0 */ addiu $s5, $s5, %lo(D_8010EBB0)
/* 3222A0 802BE750 AFBF0048 */ sw $ra, 0x48($sp)
/* 3222A4 802BE754 AFB3003C */ sw $s3, 0x3c($sp)
/* 3222A8 802BE758 AFB10034 */ sw $s1, 0x34($sp)
/* 3222AC 802BE75C AFB00030 */ sw $s0, 0x30($sp)
/* 3222B0 802BE760 F7B60058 */ sdc1 $f22, 0x58($sp)
/* 3222B4 802BE764 F7B40050 */ sdc1 $f20, 0x50($sp)
/* 3222B8 802BE768 8E420004 */ lw $v0, 4($s2)
/* 3222BC 802BE76C 8E91014C */ lw $s1, 0x14c($s4)
/* 3222C0 802BE770 00431024 */ and $v0, $v0, $v1
/* 3222C4 802BE774 10A00087 */ beqz $a1, .L802BE994
/* 3222C8 802BE778 AE420004 */ sw $v0, 4($s2)
/* 3222CC 802BE77C 0C0AF59E */ jal func_802BD678
/* 3222D0 802BE780 0220202D */ daddu $a0, $s1, $zero
/* 3222D4 802BE784 8E420004 */ lw $v0, 4($s2)
/* 3222D8 802BE788 3C030010 */ lui $v1, 0x10
/* 3222DC 802BE78C 00431024 */ and $v0, $v0, $v1
/* 3222E0 802BE790 1440034C */ bnez $v0, .L802BF4C4
/* 3222E4 802BE794 24020002 */ addiu $v0, $zero, 2
/* 3222E8 802BE798 2403FFBF */ addiu $v1, $zero, -0x41
/* 3222EC 802BE79C 8E220000 */ lw $v0, ($s1)
/* 3222F0 802BE7A0 C6200038 */ lwc1 $f0, 0x38($s1)
/* 3222F4 802BE7A4 C622003C */ lwc1 $f2, 0x3c($s1)
/* 3222F8 802BE7A8 C6240040 */ lwc1 $f4, 0x40($s1)
/* 3222FC 802BE7AC 3C048007 */ lui $a0, %hi(gGameStatusPtr)
/* 322300 802BE7B0 8C84419C */ lw $a0, %lo(gGameStatusPtr)($a0)
/* 322304 802BE7B4 00431024 */ and $v0, $v0, $v1
/* 322308 802BE7B8 AE220000 */ sw $v0, ($s1)
/* 32230C 802BE7BC E6200060 */ swc1 $f0, 0x60($s1)
/* 322310 802BE7C0 E6220064 */ swc1 $f2, 0x64($s1)
/* 322314 802BE7C4 E6240068 */ swc1 $f4, 0x68($s1)
/* 322318 802BE7C8 8082007D */ lb $v0, 0x7d($a0)
/* 32231C 802BE7CC 14400005 */ bnez $v0, .L802BE7E4
/* 322320 802BE7D0 3C030020 */ lui $v1, 0x20
/* 322324 802BE7D4 8E420004 */ lw $v0, 4($s2)
/* 322328 802BE7D8 00431024 */ and $v0, $v0, $v1
/* 32232C 802BE7DC 1040000A */ beqz $v0, .L802BE808
/* 322330 802BE7E0 24020028 */ addiu $v0, $zero, 0x28
.L802BE7E4:
/* 322334 802BE7E4 8E430004 */ lw $v1, 4($s2)
/* 322338 802BE7E8 3C020020 */ lui $v0, 0x20
/* 32233C 802BE7EC 00621024 */ and $v0, $v1, $v0
/* 322340 802BE7F0 10400004 */ beqz $v0, .L802BE804
/* 322344 802BE7F4 3C02FFDF */ lui $v0, 0xffdf
/* 322348 802BE7F8 3442FFFF */ ori $v0, $v0, 0xffff
/* 32234C 802BE7FC 00621024 */ and $v0, $v1, $v0
/* 322350 802BE800 AE420004 */ sw $v0, 4($s2)
.L802BE804:
/* 322354 802BE804 24020064 */ addiu $v0, $zero, 0x64
.L802BE808:
/* 322358 802BE808 3C01802C */ lui $at, 0x802c
/* 32235C 802BE80C AC22FF14 */ sw $v0, -0xec($at)
/* 322360 802BE810 82A20001 */ lb $v0, 1($s5)
/* 322364 802BE814 14400015 */ bnez $v0, .L802BE86C
/* 322368 802BE818 24040021 */ addiu $a0, $zero, 0x21
/* 32236C 802BE81C 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 322370 802BE820 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 322374 802BE824 8042007D */ lb $v0, 0x7d($v0)
/* 322378 802BE828 1440005A */ bnez $v0, .L802BE994
/* 32237C 802BE82C 24020021 */ addiu $v0, $zero, 0x21
/* 322380 802BE830 824300B4 */ lb $v1, 0xb4($s2)
/* 322384 802BE834 10620009 */ beq $v1, $v0, .L802BE85C
/* 322388 802BE838 00000000 */ nop
/* 32238C 802BE83C 10600007 */ beqz $v1, .L802BE85C
/* 322390 802BE840 24020001 */ addiu $v0, $zero, 1
/* 322394 802BE844 10620005 */ beq $v1, $v0, .L802BE85C
/* 322398 802BE848 24020002 */ addiu $v0, $zero, 2
/* 32239C 802BE84C 10620003 */ beq $v1, $v0, .L802BE85C
/* 3223A0 802BE850 24020008 */ addiu $v0, $zero, 8
/* 3223A4 802BE854 1462031B */ bne $v1, $v0, .L802BF4C4
/* 3223A8 802BE858 24020002 */ addiu $v0, $zero, 2
.L802BE85C:
/* 3223AC 802BE85C 8E420000 */ lw $v0, ($s2)
/* 3223B0 802BE860 34420100 */ ori $v0, $v0, 0x100
/* 3223B4 802BE864 080AFA65 */ j .L802BE994
/* 3223B8 802BE868 AE420000 */ sw $v0, ($s2)
.L802BE86C:
/* 3223BC 802BE86C A2A00001 */ sb $zero, 1($s5)
/* 3223C0 802BE870 8E420000 */ lw $v0, ($s2)
/* 3223C4 802BE874 2403FEFF */ addiu $v1, $zero, -0x101
/* 3223C8 802BE878 00431024 */ and $v0, $v0, $v1
/* 3223CC 802BE87C AE420000 */ sw $v0, ($s2)
/* 3223D0 802BE880 8E220000 */ lw $v0, ($s1)
/* 3223D4 802BE884 2410FFB7 */ addiu $s0, $zero, -0x49
/* 3223D8 802BE888 00501024 */ and $v0, $v0, $s0
/* 3223DC 802BE88C 34420100 */ ori $v0, $v0, 0x100
/* 3223E0 802BE890 0C039769 */ jal set_action_state
/* 3223E4 802BE894 AE220000 */ sw $v0, ($s1)
/* 3223E8 802BE898 3C040008 */ lui $a0, 8
/* 3223EC 802BE89C 0C037FDE */ jal func_800DFF78
/* 3223F0 802BE8A0 3484000E */ ori $a0, $a0, 0xe
/* 3223F4 802BE8A4 3C050008 */ lui $a1, 8
/* 3223F8 802BE8A8 34A50005 */ ori $a1, $a1, 5
/* 3223FC 802BE8AC 3C030040 */ lui $v1, 0x40
/* 322400 802BE8B0 34630100 */ ori $v1, $v1, 0x100
/* 322404 802BE8B4 8E220000 */ lw $v0, ($s1)
/* 322408 802BE8B8 3C014040 */ lui $at, 0x4040
/* 32240C 802BE8BC 44812000 */ mtc1 $at, $f4
/* 322410 802BE8C0 00501024 */ and $v0, $v0, $s0
/* 322414 802BE8C4 00431025 */ or $v0, $v0, $v1
/* 322418 802BE8C8 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 32241C 802BE8CC 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 322420 802BE8D0 24130001 */ addiu $s3, $zero, 1
/* 322424 802BE8D4 AE250028 */ sw $a1, 0x28($s1)
/* 322428 802BE8D8 3C01802C */ lui $at, 0x802c
/* 32242C 802BE8DC AC33FF0C */ sw $s3, -0xf4($at)
/* 322430 802BE8E0 AE220000 */ sw $v0, ($s1)
/* 322434 802BE8E4 24020008 */ addiu $v0, $zero, 8
/* 322438 802BE8E8 A2A20003 */ sb $v0, 3($s5)
/* 32243C 802BE8EC A2B30000 */ sb $s3, ($s5)
/* 322440 802BE8F0 A060007D */ sb $zero, 0x7d($v1)
/* 322444 802BE8F4 C6400028 */ lwc1 $f0, 0x28($s2)
/* 322448 802BE8F8 C6220064 */ lwc1 $f2, 0x64($s1)
/* 32244C 802BE8FC 3C040008 */ lui $a0, 8
/* 322450 802BE900 E6200038 */ swc1 $f0, 0x38($s1)
/* 322454 802BE904 E622003C */ swc1 $f2, 0x3c($s1)
/* 322458 802BE908 46001006 */ mov.s $f0, $f2
/* 32245C 802BE90C 3C014120 */ lui $at, 0x4120
/* 322460 802BE910 44811000 */ mtc1 $at, $f2
/* 322464 802BE914 C6460030 */ lwc1 $f6, 0x30($s2)
/* 322468 802BE918 46020000 */ add.s $f0, $f0, $f2
/* 32246C 802BE91C AE250028 */ sw $a1, 0x28($s1)
/* 322470 802BE920 E6260040 */ swc1 $f6, 0x40($s1)
/* 322474 802BE924 E640002C */ swc1 $f0, 0x2c($s2)
/* 322478 802BE928 E6240018 */ swc1 $f4, 0x18($s1)
/* 32247C 802BE92C AE200014 */ sw $zero, 0x14($s1)
/* 322480 802BE930 C6400080 */ lwc1 $f0, 0x80($s2)
/* 322484 802BE934 3484000E */ ori $a0, $a0, 0xe
/* 322488 802BE938 0C037FDE */ jal func_800DFF78
/* 32248C 802BE93C E620000C */ swc1 $f0, 0xc($s1)
/* 322490 802BE940 0C039769 */ jal set_action_state
/* 322494 802BE944 24040021 */ addiu $a0, $zero, 0x21
/* 322498 802BE948 0C038045 */ jal disable_player_static_collisions
/* 32249C 802BE94C 00000000 */ nop
/* 3224A0 802BE950 3C10802C */ lui $s0, 0x802c
/* 3224A4 802BE954 2610FF04 */ addiu $s0, $s0, -0xfc
/* 3224A8 802BE958 8E020000 */ lw $v0, ($s0)
/* 3224AC 802BE95C 3C01802C */ lui $at, 0x802c
/* 3224B0 802BE960 AC33FF08 */ sw $s3, -0xf8($at)
/* 3224B4 802BE964 14400004 */ bnez $v0, .L802BE978
/* 3224B8 802BE968 00000000 */ nop
/* 3224BC 802BE96C 0C03805E */ jal disable_player_input
/* 3224C0 802BE970 00000000 */ nop
/* 3224C4 802BE974 AE130000 */ sw $s3, ($s0)
.L802BE978:
/* 3224C8 802BE978 8E220000 */ lw $v0, ($s1)
/* 3224CC 802BE97C 3C01802C */ lui $at, 0x802c
/* 3224D0 802BE980 AC20FF18 */ sw $zero, -0xe8($at)
/* 3224D4 802BE984 3C01802C */ lui $at, 0x802c
/* 3224D8 802BE988 AC33FF14 */ sw $s3, -0xec($at)
/* 3224DC 802BE98C 34420040 */ ori $v0, $v0, 0x40
/* 3224E0 802BE990 AE220000 */ sw $v0, ($s1)
.L802BE994:
/* 3224E4 802BE994 3C10802C */ lui $s0, 0x802c
/* 3224E8 802BE998 2610FF14 */ addiu $s0, $s0, -0xec
/* 3224EC 802BE99C 8E030000 */ lw $v1, ($s0)
/* 3224F0 802BE9A0 24020028 */ addiu $v0, $zero, 0x28
/* 3224F4 802BE9A4 10620005 */ beq $v1, $v0, .L802BE9BC
/* 3224F8 802BE9A8 24020029 */ addiu $v0, $zero, 0x29
/* 3224FC 802BE9AC 10620019 */ beq $v1, $v0, .L802BEA14
/* 322500 802BE9B0 24020064 */ addiu $v0, $zero, 0x64
/* 322504 802BE9B4 080AFABA */ j .L802BEAE8
/* 322508 802BE9B8 00000000 */ nop
.L802BE9BC:
/* 32250C 802BE9BC 8E430000 */ lw $v1, ($s2)
/* 322510 802BE9C0 30620800 */ andi $v0, $v1, 0x800
/* 322514 802BE9C4 14400004 */ bnez $v0, .L802BE9D8
/* 322518 802BE9C8 2402FEFF */ addiu $v0, $zero, -0x101
/* 32251C 802BE9CC 82420015 */ lb $v0, 0x15($s2)
/* 322520 802BE9D0 10400005 */ beqz $v0, .L802BE9E8
/* 322524 802BE9D4 2402FEFF */ addiu $v0, $zero, -0x101
.L802BE9D8:
/* 322528 802BE9D8 00621024 */ and $v0, $v1, $v0
/* 32252C 802BE9DC AE420000 */ sw $v0, ($s2)
.L802BE9E0:
/* 322530 802BE9E0 080AFD31 */ j .L802BF4C4
/* 322534 802BE9E4 24020002 */ addiu $v0, $zero, 2
.L802BE9E8:
/* 322538 802BE9E8 24020003 */ addiu $v0, $zero, 3
/* 32253C 802BE9EC 0C03805E */ jal disable_player_input
/* 322540 802BE9F0 AE820074 */ sw $v0, 0x74($s4)
/* 322544 802BE9F4 AE820078 */ sw $v0, 0x78($s4)
/* 322548 802BE9F8 8E020000 */ lw $v0, ($s0)
/* 32254C 802BE9FC 24030001 */ addiu $v1, $zero, 1
/* 322550 802BEA00 3C01802C */ lui $at, 0x802c
/* 322554 802BEA04 AC23FF04 */ sw $v1, -0xfc($at)
/* 322558 802BEA08 00431021 */ addu $v0, $v0, $v1
/* 32255C 802BEA0C 080AFAB6 */ j .L802BEAD8
/* 322560 802BEA10 AE020000 */ sw $v0, ($s0)
.L802BEA14:
/* 322564 802BEA14 8E440000 */ lw $a0, ($s2)
/* 322568 802BEA18 30820800 */ andi $v0, $a0, 0x800
/* 32256C 802BEA1C 1040000B */ beqz $v0, .L802BEA4C
/* 322570 802BEA20 2402FEFF */ addiu $v0, $zero, -0x101
/* 322574 802BEA24 3C10802C */ lui $s0, 0x802c
/* 322578 802BEA28 2610FF04 */ addiu $s0, $s0, -0xfc
/* 32257C 802BEA2C 8E030000 */ lw $v1, ($s0)
/* 322580 802BEA30 00821024 */ and $v0, $a0, $v0
/* 322584 802BEA34 1060FFEA */ beqz $v1, .L802BE9E0
/* 322588 802BEA38 AE420000 */ sw $v0, ($s2)
/* 32258C 802BEA3C 0C038069 */ jal enable_player_input
/* 322590 802BEA40 00000000 */ nop
/* 322594 802BEA44 080AFA78 */ j .L802BE9E0
/* 322598 802BEA48 AE000000 */ sw $zero, ($s0)
.L802BEA4C:
/* 32259C 802BEA4C 8E420004 */ lw $v0, 4($s2)
/* 3225A0 802BEA50 3C030010 */ lui $v1, 0x10
/* 3225A4 802BEA54 00431024 */ and $v0, $v0, $v1
/* 3225A8 802BEA58 1040000C */ beqz $v0, .L802BEA8C
/* 3225AC 802BEA5C 00000000 */ nop
/* 3225B0 802BEA60 82430015 */ lb $v1, 0x15($s2)
/* 3225B4 802BEA64 8E820078 */ lw $v0, 0x78($s4)
/* 3225B8 802BEA68 0043102A */ slt $v0, $v0, $v1
/* 3225BC 802BEA6C 1040026C */ beqz $v0, .L802BF420
/* 3225C0 802BEA70 24020002 */ addiu $v0, $zero, 2
/* 3225C4 802BEA74 0C038069 */ jal enable_player_input
/* 3225C8 802BEA78 00000000 */ nop
/* 3225CC 802BEA7C 3C01802C */ lui $at, 0x802c
/* 3225D0 802BEA80 AC20FF04 */ sw $zero, -0xfc($at)
/* 3225D4 802BEA84 080AFD08 */ j .L802BF420
/* 3225D8 802BEA88 24020002 */ addiu $v0, $zero, 2
.L802BEA8C:
/* 3225DC 802BEA8C 8E820074 */ lw $v0, 0x74($s4)
/* 3225E0 802BEA90 14400010 */ bnez $v0, .L802BEAD4
/* 3225E4 802BEA94 2442FFFF */ addiu $v0, $v0, -1
/* 3225E8 802BEA98 82430015 */ lb $v1, 0x15($s2)
/* 3225EC 802BEA9C 8E820078 */ lw $v0, 0x78($s4)
/* 3225F0 802BEAA0 0043102A */ slt $v0, $v0, $v1
/* 3225F4 802BEAA4 10400009 */ beqz $v0, .L802BEACC
/* 3225F8 802BEAA8 24020064 */ addiu $v0, $zero, 0x64
/* 3225FC 802BEAAC 0C038069 */ jal enable_player_input
/* 322600 802BEAB0 00000000 */ nop
/* 322604 802BEAB4 24020002 */ addiu $v0, $zero, 2
/* 322608 802BEAB8 8E430000 */ lw $v1, ($s2)
/* 32260C 802BEABC 3C01802C */ lui $at, 0x802c
/* 322610 802BEAC0 AC20FF04 */ sw $zero, -0xfc($at)
/* 322614 802BEAC4 080AFD0A */ j .L802BF428
/* 322618 802BEAC8 2404FEFF */ addiu $a0, $zero, -0x101
.L802BEACC:
/* 32261C 802BEACC 080AFAB6 */ j .L802BEAD8
/* 322620 802BEAD0 AE020000 */ sw $v0, ($s0)
.L802BEAD4:
/* 322624 802BEAD4 AE820074 */ sw $v0, 0x74($s4)
.L802BEAD8:
/* 322628 802BEAD8 3C10802C */ lui $s0, 0x802c
/* 32262C 802BEADC 2610FF14 */ addiu $s0, $s0, -0xec
/* 322630 802BEAE0 8E030000 */ lw $v1, ($s0)
/* 322634 802BEAE4 24020064 */ addiu $v0, $zero, 0x64
.L802BEAE8:
/* 322638 802BEAE8 1062001E */ beq $v1, $v0, .L802BEB64
/* 32263C 802BEAEC 28620065 */ slti $v0, $v1, 0x65
/* 322640 802BEAF0 10400010 */ beqz $v0, .L802BEB34
/* 322644 802BEAF4 24020003 */ addiu $v0, $zero, 3
/* 322648 802BEAF8 10620165 */ beq $v1, $v0, .L802BF090
/* 32264C 802BEAFC 28620004 */ slti $v0, $v1, 4
/* 322650 802BEB00 10400005 */ beqz $v0, .L802BEB18
/* 322654 802BEB04 24020001 */ addiu $v0, $zero, 1
/* 322658 802BEB08 10620129 */ beq $v1, $v0, .L802BEFB0
/* 32265C 802BEB0C 00000000 */ nop
/* 322660 802BEB10 080AFCD7 */ j .L802BF35C
/* 322664 802BEB14 00000000 */ nop
.L802BEB18:
/* 322668 802BEB18 24020004 */ addiu $v0, $zero, 4
/* 32266C 802BEB1C 106201B6 */ beq $v1, $v0, .L802BF1F8
/* 322670 802BEB20 24020005 */ addiu $v0, $zero, 5
/* 322674 802BEB24 106201BB */ beq $v1, $v0, .L802BF214
/* 322678 802BEB28 0240202D */ daddu $a0, $s2, $zero
/* 32267C 802BEB2C 080AFCD7 */ j .L802BF35C
/* 322680 802BEB30 00000000 */ nop
.L802BEB34:
/* 322684 802BEB34 24020066 */ addiu $v0, $zero, 0x66
/* 322688 802BEB38 1062006F */ beq $v1, $v0, .L802BECF8
/* 32268C 802BEB3C 0062102A */ slt $v0, $v1, $v0
/* 322690 802BEB40 14400067 */ bnez $v0, .L802BECE0
/* 322694 802BEB44 24042081 */ addiu $a0, $zero, 0x2081
/* 322698 802BEB48 24020067 */ addiu $v0, $zero, 0x67
/* 32269C 802BEB4C 1062006F */ beq $v1, $v0, .L802BED0C
/* 3226A0 802BEB50 24020068 */ addiu $v0, $zero, 0x68
/* 3226A4 802BEB54 106200FC */ beq $v1, $v0, .L802BEF48
/* 3226A8 802BEB58 00000000 */ nop
/* 3226AC 802BEB5C 080AFCD7 */ j .L802BF35C
/* 3226B0 802BEB60 00000000 */ nop
.L802BEB64:
/* 3226B4 802BEB64 0C038045 */ jal disable_player_static_collisions
/* 3226B8 802BEB68 24100001 */ addiu $s0, $zero, 1
/* 3226BC 802BEB6C 3C13802C */ lui $s3, 0x802c
/* 3226C0 802BEB70 2673FF04 */ addiu $s3, $s3, -0xfc
/* 3226C4 802BEB74 8E620000 */ lw $v0, ($s3)
/* 3226C8 802BEB78 3C01802C */ lui $at, 0x802c
/* 3226CC 802BEB7C AC30FF08 */ sw $s0, -0xf8($at)
/* 3226D0 802BEB80 14400005 */ bnez $v0, .L802BEB98
/* 3226D4 802BEB84 3C050040 */ lui $a1, 0x40
/* 3226D8 802BEB88 0C03805E */ jal disable_player_input
/* 3226DC 802BEB8C 00000000 */ nop
/* 3226E0 802BEB90 AE700000 */ sw $s0, ($s3)
/* 3226E4 802BEB94 3C050040 */ lui $a1, 0x40
.L802BEB98:
/* 3226E8 802BEB98 34A50100 */ ori $a1, $a1, 0x100
/* 3226EC 802BEB9C 24040021 */ addiu $a0, $zero, 0x21
/* 3226F0 802BEBA0 2403FFF7 */ addiu $v1, $zero, -9
/* 3226F4 802BEBA4 4480A000 */ mtc1 $zero, $f20
/* 3226F8 802BEBA8 8E220000 */ lw $v0, ($s1)
/* 3226FC 802BEBAC 3C0142B4 */ lui $at, 0x42b4
/* 322700 802BEBB0 4481B000 */ mtc1 $at, $f22
/* 322704 802BEBB4 00431024 */ and $v0, $v0, $v1
/* 322708 802BEBB8 00451025 */ or $v0, $v0, $a1
/* 32270C 802BEBBC 0C039769 */ jal set_action_state
/* 322710 802BEBC0 AE220000 */ sw $v0, ($s1)
/* 322714 802BEBC4 3C01802C */ lui $at, 0x802c
/* 322718 802BEBC8 AC30FF0C */ sw $s0, -0xf4($at)
/* 32271C 802BEBCC 0C03BD38 */ jal func_800EF4E0
/* 322720 802BEBD0 0000802D */ daddu $s0, $zero, $zero
/* 322724 802BEBD4 C6400028 */ lwc1 $f0, 0x28($s2)
/* 322728 802BEBD8 E6200060 */ swc1 $f0, 0x60($s1)
/* 32272C 802BEBDC C640002C */ lwc1 $f0, 0x2c($s2)
/* 322730 802BEBE0 E6200064 */ swc1 $f0, 0x64($s1)
/* 322734 802BEBE4 C6400030 */ lwc1 $f0, 0x30($s2)
/* 322738 802BEBE8 E6200068 */ swc1 $f0, 0x68($s1)
.L802BEBEC:
/* 32273C 802BEBEC 3C040001 */ lui $a0, 1
/* 322740 802BEBF0 27A50020 */ addiu $a1, $sp, 0x20
/* 322744 802BEBF4 C6200060 */ lwc1 $f0, 0x60($s1)
/* 322748 802BEBF8 C6220064 */ lwc1 $f2, 0x64($s1)
/* 32274C 802BEBFC C6240068 */ lwc1 $f4, 0x68($s1)
/* 322750 802BEC00 C6260018 */ lwc1 $f6, 0x18($s1)
/* 322754 802BEC04 27A60024 */ addiu $a2, $sp, 0x24
/* 322758 802BEC08 E7A00020 */ swc1 $f0, 0x20($sp)
/* 32275C 802BEC0C E7A20024 */ swc1 $f2, 0x24($sp)
/* 322760 802BEC10 E7A40028 */ swc1 $f4, 0x28($sp)
/* 322764 802BEC14 E7A60010 */ swc1 $f6, 0x10($sp)
/* 322768 802BEC18 E7B40014 */ swc1 $f20, 0x14($sp)
/* 32276C 802BEC1C 862200A8 */ lh $v0, 0xa8($s1)
/* 322770 802BEC20 27A70028 */ addiu $a3, $sp, 0x28
/* 322774 802BEC24 44820000 */ mtc1 $v0, $f0
/* 322778 802BEC28 00000000 */ nop
/* 32277C 802BEC2C 46800020 */ cvt.s.w $f0, $f0
/* 322780 802BEC30 E7A00018 */ swc1 $f0, 0x18($sp)
/* 322784 802BEC34 862200A6 */ lh $v0, 0xa6($s1)
/* 322788 802BEC38 26100001 */ addiu $s0, $s0, 1
/* 32278C 802BEC3C 44820000 */ mtc1 $v0, $f0
/* 322790 802BEC40 00000000 */ nop
/* 322794 802BEC44 46800020 */ cvt.s.w $f0, $f0
/* 322798 802BEC48 0C037711 */ jal func_800DDC44
/* 32279C 802BEC4C E7A0001C */ swc1 $f0, 0x1c($sp)
/* 3227A0 802BEC50 2A020004 */ slti $v0, $s0, 4
/* 3227A4 802BEC54 C7A00020 */ lwc1 $f0, 0x20($sp)
/* 3227A8 802BEC58 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 3227AC 802BEC5C C7A40028 */ lwc1 $f4, 0x28($sp)
/* 3227B0 802BEC60 4616A500 */ add.s $f20, $f20, $f22
/* 3227B4 802BEC64 E6200060 */ swc1 $f0, 0x60($s1)
/* 3227B8 802BEC68 E6220064 */ swc1 $f2, 0x64($s1)
/* 3227BC 802BEC6C 1440FFDF */ bnez $v0, .L802BEBEC
/* 3227C0 802BEC70 E6240068 */ swc1 $f4, 0x68($s1)
/* 3227C4 802BEC74 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 3227C8 802BEC78 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 3227CC 802BEC7C 44060000 */ mfc1 $a2, $f0
/* 3227D0 802BEC80 44072000 */ mfc1 $a3, $f4
/* 3227D4 802BEC84 0C00A720 */ jal atan2
/* 3227D8 802BEC88 00000000 */ nop
/* 3227DC 802BEC8C 3C030008 */ lui $v1, 8
/* 3227E0 802BEC90 34630005 */ ori $v1, $v1, 5
/* 3227E4 802BEC94 3C040001 */ lui $a0, 1
/* 3227E8 802BEC98 34840006 */ ori $a0, $a0, 6
/* 3227EC 802BEC9C E620000C */ swc1 $f0, 0xc($s1)
/* 3227F0 802BECA0 3C014100 */ lui $at, 0x4100
/* 3227F4 802BECA4 44810000 */ mtc1 $at, $f0
/* 3227F8 802BECA8 3C013FB3 */ lui $at, 0x3fb3
/* 3227FC 802BECAC 34213333 */ ori $at, $at, 0x3333
/* 322800 802BECB0 44811000 */ mtc1 $at, $f2
/* 322804 802BECB4 2402000C */ addiu $v0, $zero, 0xc
/* 322808 802BECB8 A622008E */ sh $v0, 0x8e($s1)
/* 32280C 802BECBC AE230028 */ sw $v1, 0x28($s1)
/* 322810 802BECC0 E620001C */ swc1 $f0, 0x1c($s1)
/* 322814 802BECC4 0C037FBF */ jal func_800DFEFC
/* 322818 802BECC8 E6220014 */ swc1 $f2, 0x14($s1)
/* 32281C 802BECCC 24020065 */ addiu $v0, $zero, 0x65
/* 322820 802BECD0 3C01802C */ lui $at, 0x802c
/* 322824 802BECD4 AC22FF14 */ sw $v0, -0xec($at)
/* 322828 802BECD8 080AFCD7 */ j .L802BF35C
/* 32282C 802BECDC 00000000 */ nop
.L802BECE0:
/* 322830 802BECE0 0000282D */ daddu $a1, $zero, $zero
/* 322834 802BECE4 0C052742 */ jal play_sound_at_npc
/* 322838 802BECE8 2406FFFC */ addiu $a2, $zero, -4
/* 32283C 802BECEC 3C040001 */ lui $a0, 1
/* 322840 802BECF0 0C037FBF */ jal func_800DFEFC
/* 322844 802BECF4 34840007 */ ori $a0, $a0, 7
.L802BECF8:
/* 322848 802BECF8 3C03802C */ lui $v1, 0x802c
/* 32284C 802BECFC 2463FF14 */ addiu $v1, $v1, -0xec
/* 322850 802BED00 8C620000 */ lw $v0, ($v1)
/* 322854 802BED04 24420001 */ addiu $v0, $v0, 1
/* 322858 802BED08 AC620000 */ sw $v0, ($v1)
.L802BED0C:
/* 32285C 802BED0C 8E420000 */ lw $v0, ($s2)
/* 322860 802BED10 30420800 */ andi $v0, $v0, 0x800
/* 322864 802BED14 1440017A */ bnez $v0, .L802BF300
/* 322868 802BED18 2402000A */ addiu $v0, $zero, 0xa
/* 32286C 802BED1C C6200060 */ lwc1 $f0, 0x60($s1)
/* 322870 802BED20 C62A0038 */ lwc1 $f10, 0x38($s1)
/* 322874 802BED24 8622008E */ lh $v0, 0x8e($s1)
/* 322878 802BED28 460A0001 */ sub.s $f0, $f0, $f10
/* 32287C 802BED2C C6280040 */ lwc1 $f8, 0x40($s1)
/* 322880 802BED30 44821000 */ mtc1 $v0, $f2
/* 322884 802BED34 00000000 */ nop
/* 322888 802BED38 468010A0 */ cvt.s.w $f2, $f2
/* 32288C 802BED3C 46020003 */ div.s $f0, $f0, $f2
/* 322890 802BED40 46005280 */ add.s $f10, $f10, $f0
/* 322894 802BED44 C6200068 */ lwc1 $f0, 0x68($s1)
/* 322898 802BED48 C626003C */ lwc1 $f6, 0x3c($s1)
/* 32289C 802BED4C 46080001 */ sub.s $f0, $f0, $f8
/* 3228A0 802BED50 C6220064 */ lwc1 $f2, 0x64($s1)
/* 3228A4 802BED54 46061081 */ sub.s $f2, $f2, $f6
/* 3228A8 802BED58 44822000 */ mtc1 $v0, $f4
/* 3228AC 802BED5C 00000000 */ nop
/* 3228B0 802BED60 46802120 */ cvt.s.w $f4, $f4
/* 3228B4 802BED64 46040003 */ div.s $f0, $f0, $f4
/* 3228B8 802BED68 46004200 */ add.s $f8, $f8, $f0
/* 3228BC 802BED6C 46002006 */ mov.s $f0, $f4
/* 3228C0 802BED70 46001083 */ div.s $f2, $f2, $f0
/* 3228C4 802BED74 46023180 */ add.s $f6, $f6, $f2
/* 3228C8 802BED78 C622001C */ lwc1 $f2, 0x1c($s1)
/* 3228CC 802BED7C E62A0038 */ swc1 $f10, 0x38($s1)
/* 3228D0 802BED80 E6280040 */ swc1 $f8, 0x40($s1)
/* 3228D4 802BED84 E626003C */ swc1 $f6, 0x3c($s1)
/* 3228D8 802BED88 864200B0 */ lh $v0, 0xb0($s2)
/* 3228DC 802BED8C C640002C */ lwc1 $f0, 0x2c($s2)
/* 3228E0 802BED90 44828000 */ mtc1 $v0, $f16
/* 3228E4 802BED94 00000000 */ nop
/* 3228E8 802BED98 46808420 */ cvt.s.w $f16, $f16
/* 3228EC 802BED9C 00021040 */ sll $v0, $v0, 1
/* 3228F0 802BEDA0 44058000 */ mfc1 $a1, $f16
/* 3228F4 802BEDA4 44828000 */ mtc1 $v0, $f16
/* 3228F8 802BEDA8 00000000 */ nop
/* 3228FC 802BEDAC 46808420 */ cvt.s.w $f16, $f16
/* 322900 802BEDB0 46020000 */ add.s $f0, $f0, $f2
/* 322904 802BEDB4 44068000 */ mfc1 $a2, $f16
/* 322908 802BEDB8 0220202D */ daddu $a0, $s1, $zero
/* 32290C 802BEDBC 0C0AF667 */ jal func_802BD99C
/* 322910 802BEDC0 E640002C */ swc1 $f0, 0x2c($s2)
/* 322914 802BEDC4 C640002C */ lwc1 $f0, 0x2c($s2)
/* 322918 802BEDC8 3C01802C */ lui $at, 0x802c
/* 32291C 802BEDCC C422FF24 */ lwc1 $f2, -0xdc($at)
/* 322920 802BEDD0 468010A0 */ cvt.s.w $f2, $f2
/* 322924 802BEDD4 46020000 */ add.s $f0, $f0, $f2
/* 322928 802BEDD8 26300038 */ addiu $s0, $s1, 0x38
/* 32292C 802BEDDC E640002C */ swc1 $f0, 0x2c($s2)
/* 322930 802BEDE0 C624003C */ lwc1 $f4, 0x3c($s1)
/* 322934 802BEDE4 C6200014 */ lwc1 $f0, 0x14($s1)
/* 322938 802BEDE8 46022100 */ add.s $f4, $f4, $f2
/* 32293C 802BEDEC C622001C */ lwc1 $f2, 0x1c($s1)
/* 322940 802BEDF0 4480A000 */ mtc1 $zero, $f20
/* 322944 802BEDF4 46001081 */ sub.s $f2, $f2, $f0
/* 322948 802BEDF8 26330040 */ addiu $s3, $s1, 0x40
/* 32294C 802BEDFC E624003C */ swc1 $f4, 0x3c($s1)
/* 322950 802BEE00 4614103E */ c.le.s $f2, $f20
/* 322954 802BEE04 00000000 */ nop
/* 322958 802BEE08 45000004 */ bc1f .L802BEE1C
/* 32295C 802BEE0C E622001C */ swc1 $f2, 0x1c($s1)
/* 322960 802BEE10 3C040001 */ lui $a0, 1
/* 322964 802BEE14 0C037FBF */ jal func_800DFEFC
/* 322968 802BEE18 34840008 */ ori $a0, $a0, 8
.L802BEE1C:
/* 32296C 802BEE1C 9622008E */ lhu $v0, 0x8e($s1)
/* 322970 802BEE20 2442FFFF */ addiu $v0, $v0, -1
/* 322974 802BEE24 A622008E */ sh $v0, 0x8e($s1)
/* 322978 802BEE28 00021400 */ sll $v0, $v0, 0x10
/* 32297C 802BEE2C 00021C03 */ sra $v1, $v0, 0x10
/* 322980 802BEE30 18600015 */ blez $v1, .L802BEE88
/* 322984 802BEE34 24020001 */ addiu $v0, $zero, 1
/* 322988 802BEE38 14620148 */ bne $v1, $v0, .L802BF35C
/* 32298C 802BEE3C 00000000 */ nop
/* 322990 802BEE40 0200202D */ daddu $a0, $s0, $zero
/* 322994 802BEE44 3C028007 */ lui $v0, %hi(gCurrentCameraID)
/* 322998 802BEE48 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0)
/* 32299C 802BEE4C 3C06C000 */ lui $a2, 0xc000
/* 3229A0 802BEE50 00021880 */ sll $v1, $v0, 2
/* 3229A4 802BEE54 00621821 */ addu $v1, $v1, $v0
/* 3229A8 802BEE58 00031880 */ sll $v1, $v1, 2
/* 3229AC 802BEE5C 00621823 */ subu $v1, $v1, $v0
/* 3229B0 802BEE60 000310C0 */ sll $v0, $v1, 3
/* 3229B4 802BEE64 00621821 */ addu $v1, $v1, $v0
/* 3229B8 802BEE68 000318C0 */ sll $v1, $v1, 3
/* 3229BC 802BEE6C 3C07800B */ lui $a3, 0x800b
/* 3229C0 802BEE70 00E33821 */ addu $a3, $a3, $v1
/* 3229C4 802BEE74 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 3229C8 802BEE78 0C00A7E7 */ jal add_vec2D_polar
/* 3229CC 802BEE7C 0260282D */ daddu $a1, $s3, $zero
/* 3229D0 802BEE80 080AFCD7 */ j .L802BF35C
/* 3229D4 802BEE84 00000000 */ nop
.L802BEE88:
/* 3229D8 802BEE88 C622003C */ lwc1 $f2, 0x3c($s1)
/* 3229DC 802BEE8C 3C014120 */ lui $at, 0x4120
/* 3229E0 802BEE90 44810000 */ mtc1 $at, $f0
/* 3229E4 802BEE94 00000000 */ nop
/* 3229E8 802BEE98 46001080 */ add.s $f2, $f2, $f0
/* 3229EC 802BEE9C C640005C */ lwc1 $f0, 0x5c($s2)
/* 3229F0 802BEEA0 24040021 */ addiu $a0, $zero, 0x21
/* 3229F4 802BEEA4 E642002C */ swc1 $f2, 0x2c($s2)
/* 3229F8 802BEEA8 E6200018 */ swc1 $f0, 0x18($s1)
/* 3229FC 802BEEAC E6340014 */ swc1 $f20, 0x14($s1)
/* 322A00 802BEEB0 C6400080 */ lwc1 $f0, 0x80($s2)
/* 322A04 802BEEB4 24020003 */ addiu $v0, $zero, 3
/* 322A08 802BEEB8 A622008E */ sh $v0, 0x8e($s1)
/* 322A0C 802BEEBC 0C039769 */ jal set_action_state
/* 322A10 802BEEC0 E620000C */ swc1 $f0, 0xc($s1)
/* 322A14 802BEEC4 3C040008 */ lui $a0, 8
/* 322A18 802BEEC8 0C037FDE */ jal func_800DFF78
/* 322A1C 802BEECC 3484000E */ ori $a0, $a0, 0xe
/* 322A20 802BEED0 0C038039 */ jal disable_player_shadow
/* 322A24 802BEED4 00000000 */ nop
/* 322A28 802BEED8 24020008 */ addiu $v0, $zero, 8
/* 322A2C 802BEEDC A2A20003 */ sb $v0, 3($s5)
/* 322A30 802BEEE0 24020001 */ addiu $v0, $zero, 1
/* 322A34 802BEEE4 3C014000 */ lui $at, 0x4000
/* 322A38 802BEEE8 44816000 */ mtc1 $at, $f12
/* 322A3C 802BEEEC 2403FEFF */ addiu $v1, $zero, -0x101
/* 322A40 802BEEF0 A2A20000 */ sb $v0, ($s5)
/* 322A44 802BEEF4 8E420000 */ lw $v0, ($s2)
/* 322A48 802BEEF8 3C048007 */ lui $a0, %hi(gGameStatusPtr)
/* 322A4C 802BEEFC 8C84419C */ lw $a0, %lo(gGameStatusPtr)($a0)
/* 322A50 802BEF00 00431024 */ and $v0, $v0, $v1
/* 322A54 802BEF04 AE420000 */ sw $v0, ($s2)
/* 322A58 802BEF08 24020002 */ addiu $v0, $zero, 2
/* 322A5C 802BEF0C A080007D */ sb $zero, 0x7d($a0)
/* 322A60 802BEF10 3C01802C */ lui $at, 0x802c
/* 322A64 802BEF14 AC20FF18 */ sw $zero, -0xe8($at)
/* 322A68 802BEF18 3C01802C */ lui $at, 0x802c
/* 322A6C 802BEF1C AC22FF0C */ sw $v0, -0xf4($at)
/* 322A70 802BEF20 0C0AFED1 */ jal func_802BFB44
/* 322A74 802BEF24 00000000 */ nop
/* 322A78 802BEF28 24020068 */ addiu $v0, $zero, 0x68
/* 322A7C 802BEF2C 3C01802C */ lui $at, 0x802c
/* 322A80 802BEF30 AC22FF14 */ sw $v0, -0xec($at)
/* 322A84 802BEF34 8E420004 */ lw $v0, 4($s2)
/* 322A88 802BEF38 3C030040 */ lui $v1, 0x40
/* 322A8C 802BEF3C 00431025 */ or $v0, $v0, $v1
/* 322A90 802BEF40 080AFCD7 */ j .L802BF35C
/* 322A94 802BEF44 AE420004 */ sw $v0, 4($s2)
.L802BEF48:
/* 322A98 802BEF48 8E420000 */ lw $v0, ($s2)
/* 322A9C 802BEF4C 30420800 */ andi $v0, $v0, 0x800
/* 322AA0 802BEF50 10400003 */ beqz $v0, .L802BEF60
/* 322AA4 802BEF54 2402000A */ addiu $v0, $zero, 0xa
/* 322AA8 802BEF58 080AFCD7 */ j .L802BF35C
/* 322AAC 802BEF5C AE020000 */ sw $v0, ($s0)
.L802BEF60:
/* 322AB0 802BEF60 9622008E */ lhu $v0, 0x8e($s1)
/* 322AB4 802BEF64 2442FFFF */ addiu $v0, $v0, -1
/* 322AB8 802BEF68 A622008E */ sh $v0, 0x8e($s1)
/* 322ABC 802BEF6C 00021400 */ sll $v0, $v0, 0x10
/* 322AC0 802BEF70 1040000B */ beqz $v0, .L802BEFA0
/* 322AC4 802BEF74 24030001 */ addiu $v1, $zero, 1
/* 322AC8 802BEF78 8EA2000C */ lw $v0, 0xc($s5)
/* 322ACC 802BEF7C 30424004 */ andi $v0, $v0, 0x4004
/* 322AD0 802BEF80 104000F6 */ beqz $v0, .L802BF35C
/* 322AD4 802BEF84 00000000 */ nop
/* 322AD8 802BEF88 0C0AF5F7 */ jal func_802BD7DC
/* 322ADC 802BEF8C 00000000 */ nop
/* 322AE0 802BEF90 104000F2 */ beqz $v0, .L802BF35C
/* 322AE4 802BEF94 24020003 */ addiu $v0, $zero, 3
/* 322AE8 802BEF98 080AFCD7 */ j .L802BF35C
/* 322AEC 802BEF9C AE020000 */ sw $v0, ($s0)
.L802BEFA0:
/* 322AF0 802BEFA0 8E220000 */ lw $v0, ($s1)
/* 322AF4 802BEFA4 AE030000 */ sw $v1, ($s0)
/* 322AF8 802BEFA8 34420040 */ ori $v0, $v0, 0x40
/* 322AFC 802BEFAC AE220000 */ sw $v0, ($s1)
.L802BEFB0:
/* 322B00 802BEFB0 0C0AF776 */ jal func_802BDDD8
/* 322B04 802BEFB4 0220202D */ daddu $a0, $s1, $zero
/* 322B08 802BEFB8 3C030040 */ lui $v1, 0x40
/* 322B0C 802BEFBC 3C04802C */ lui $a0, 0x802c
/* 322B10 802BEFC0 2484FF18 */ addiu $a0, $a0, -0xe8
/* 322B14 802BEFC4 8E420004 */ lw $v0, 4($s2)
/* 322B18 802BEFC8 3C014000 */ lui $at, 0x4000
/* 322B1C 802BEFCC 44811000 */ mtc1 $at, $f2
/* 322B20 802BEFD0 00431025 */ or $v0, $v0, $v1
/* 322B24 802BEFD4 AE420004 */ sw $v0, 4($s2)
/* 322B28 802BEFD8 8C830000 */ lw $v1, ($a0)
/* 322B2C 802BEFDC C6200064 */ lwc1 $f0, 0x64($s1)
/* 322B30 802BEFE0 24620001 */ addiu $v0, $v1, 1
/* 322B34 802BEFE4 46020000 */ add.s $f0, $f0, $f2
/* 322B38 802BEFE8 AC820000 */ sw $v0, ($a0)
/* 322B3C 802BEFEC 2842000A */ slti $v0, $v0, 0xa
/* 322B40 802BEFF0 14400003 */ bnez $v0, .L802BF000
/* 322B44 802BEFF4 E620003C */ swc1 $f0, 0x3c($s1)
/* 322B48 802BEFF8 2462FFEF */ addiu $v0, $v1, -0x11
/* 322B4C 802BEFFC AC820000 */ sw $v0, ($a0)
.L802BF000:
/* 322B50 802BF000 82A20014 */ lb $v0, 0x14($s5)
/* 322B54 802BF004 14400003 */ bnez $v0, .L802BF014
/* 322B58 802BF008 00000000 */ nop
/* 322B5C 802BF00C C620000C */ lwc1 $f0, 0xc($s1)
/* 322B60 802BF010 E6400080 */ swc1 $f0, 0x80($s2)
.L802BF014:
/* 322B64 802BF014 8E420000 */ lw $v0, ($s2)
/* 322B68 802BF018 30420800 */ andi $v0, $v0, 0x800
/* 322B6C 802BF01C 144000B8 */ bnez $v0, .L802BF300
/* 322B70 802BF020 2402000A */ addiu $v0, $zero, 0xa
/* 322B74 802BF024 8EA2000C */ lw $v0, 0xc($s5)
/* 322B78 802BF028 30424004 */ andi $v0, $v0, 0x4004
/* 322B7C 802BF02C 104000CB */ beqz $v0, .L802BF35C
/* 322B80 802BF030 00000000 */ nop
/* 322B84 802BF034 0C0AF5F7 */ jal func_802BD7DC
/* 322B88 802BF038 00000000 */ nop
/* 322B8C 802BF03C 10400005 */ beqz $v0, .L802BF054
/* 322B90 802BF040 24020003 */ addiu $v0, $zero, 3
/* 322B94 802BF044 3C01802C */ lui $at, 0x802c
/* 322B98 802BF048 AC22FF14 */ sw $v0, -0xec($at)
/* 322B9C 802BF04C 080AFCD7 */ j .L802BF35C
/* 322BA0 802BF050 00000000 */ nop
.L802BF054:
/* 322BA4 802BF054 8E420004 */ lw $v0, 4($s2)
/* 322BA8 802BF058 3C034000 */ lui $v1, 0x4000
/* 322BAC 802BF05C 00431024 */ and $v0, $v0, $v1
/* 322BB0 802BF060 14400006 */ bnez $v0, .L802BF07C
/* 322BB4 802BF064 3C03BFFF */ lui $v1, 0xbfff
/* 322BB8 802BF068 2404021D */ addiu $a0, $zero, 0x21d
/* 322BBC 802BF06C 0000282D */ daddu $a1, $zero, $zero
/* 322BC0 802BF070 0C052742 */ jal play_sound_at_npc
/* 322BC4 802BF074 2406FFFC */ addiu $a2, $zero, -4
/* 322BC8 802BF078 3C03BFFF */ lui $v1, 0xbfff
.L802BF07C:
/* 322BCC 802BF07C 8E420004 */ lw $v0, 4($s2)
/* 322BD0 802BF080 3463FFFF */ ori $v1, $v1, 0xffff
/* 322BD4 802BF084 00431024 */ and $v0, $v0, $v1
/* 322BD8 802BF088 080AFCD7 */ j .L802BF35C
/* 322BDC 802BF08C AE420004 */ sw $v0, 4($s2)
.L802BF090:
/* 322BE0 802BF090 8E220000 */ lw $v0, ($s1)
/* 322BE4 802BF094 2403FFBF */ addiu $v1, $zero, -0x41
/* 322BE8 802BF098 00431024 */ and $v0, $v0, $v1
/* 322BEC 802BF09C AE220000 */ sw $v0, ($s1)
/* 322BF0 802BF0A0 8E420000 */ lw $v0, ($s2)
/* 322BF4 802BF0A4 34420100 */ ori $v0, $v0, 0x100
/* 322BF8 802BF0A8 0C0AF5F7 */ jal func_802BD7DC
/* 322BFC 802BF0AC AE420000 */ sw $v0, ($s2)
/* 322C00 802BF0B0 3C02800B */ lui $v0, %hi(gCameras)
/* 322C04 802BF0B4 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 322C08 802BF0B8 C64200A8 */ lwc1 $f2, 0xa8($s2)
/* 322C0C 802BF0BC 3C0142B4 */ lui $at, 0x42b4
/* 322C10 802BF0C0 44813000 */ mtc1 $at, $f6
/* 322C14 802BF0C4 C444006C */ lwc1 $f4, 0x6c($v0)
/* 322C18 802BF0C8 4602303E */ c.le.s $f6, $f2
/* 322C1C 802BF0CC 00000000 */ nop
/* 322C20 802BF0D0 4500000E */ bc1f .L802BF10C
/* 322C24 802BF0D4 00000000 */ nop
/* 322C28 802BF0D8 3C014387 */ lui $at, 0x4387
/* 322C2C 802BF0DC 44810000 */ mtc1 $at, $f0
/* 322C30 802BF0E0 00000000 */ nop
/* 322C34 802BF0E4 4600103C */ c.lt.s $f2, $f0
/* 322C38 802BF0E8 00000000 */ nop
/* 322C3C 802BF0EC 45000007 */ bc1f .L802BF10C
/* 322C40 802BF0F0 00000000 */ nop
/* 322C44 802BF0F4 3C014334 */ lui $at, 0x4334
/* 322C48 802BF0F8 44810000 */ mtc1 $at, $f0
/* 322C4C 802BF0FC 00000000 */ nop
/* 322C50 802BF100 46002000 */ add.s $f0, $f4, $f0
/* 322C54 802BF104 080AFC4A */ j .L802BF128
/* 322C58 802BF108 46060501 */ sub.s $f20, $f0, $f6
.L802BF10C:
/* 322C5C 802BF10C 44800000 */ mtc1 $zero, $f0
/* 322C60 802BF110 00000000 */ nop
/* 322C64 802BF114 46002000 */ add.s $f0, $f4, $f0
/* 322C68 802BF118 3C0142B4 */ lui $at, 0x42b4
/* 322C6C 802BF11C 44811000 */ mtc1 $at, $f2
/* 322C70 802BF120 00000000 */ nop
/* 322C74 802BF124 46020501 */ sub.s $f20, $f0, $f2
.L802BF128:
/* 322C78 802BF128 E634000C */ swc1 $f20, 0xc($s1)
/* 322C7C 802BF12C C64C0028 */ lwc1 $f12, 0x28($s2)
/* 322C80 802BF130 C64E0030 */ lwc1 $f14, 0x30($s2)
/* 322C84 802BF134 8E260060 */ lw $a2, 0x60($s1)
/* 322C88 802BF138 0C00A7B5 */ jal dist2D
/* 322C8C 802BF13C 8E270068 */ lw $a3, 0x68($s1)
/* 322C90 802BF140 C64C0028 */ lwc1 $f12, 0x28($s2)
/* 322C94 802BF144 C64E0030 */ lwc1 $f14, 0x30($s2)
/* 322C98 802BF148 8E260060 */ lw $a2, 0x60($s1)
/* 322C9C 802BF14C 8E270068 */ lw $a3, 0x68($s1)
/* 322CA0 802BF150 0C00A720 */ jal atan2
/* 322CA4 802BF154 E7A0002C */ swc1 $f0, 0x2c($sp)
/* 322CA8 802BF158 C6240064 */ lwc1 $f4, 0x64($s1)
/* 322CAC 802BF15C C622003C */ lwc1 $f2, 0x3c($s1)
/* 322CB0 802BF160 E620000C */ swc1 $f0, 0xc($s1)
/* 322CB4 802BF164 3C013F99 */ lui $at, 0x3f99
/* 322CB8 802BF168 3421999A */ ori $at, $at, 0x999a
/* 322CBC 802BF16C 44810000 */ mtc1 $at, $f0
/* 322CC0 802BF170 2402000E */ addiu $v0, $zero, 0xe
/* 322CC4 802BF174 A622008E */ sh $v0, 0x8e($s1)
/* 322CC8 802BF178 4604103C */ c.lt.s $f2, $f4
/* 322CCC 802BF17C 00000000 */ nop
/* 322CD0 802BF180 45000009 */ bc1f .L802BF1A8
/* 322CD4 802BF184 E6200014 */ swc1 $f0, 0x14($s1)
/* 322CD8 802BF188 46022001 */ sub.s $f0, $f4, $f2
/* 322CDC 802BF18C 3C014160 */ lui $at, 0x4160
/* 322CE0 802BF190 44811000 */ mtc1 $at, $f2
/* 322CE4 802BF194 3C0140C0 */ lui $at, 0x40c0
/* 322CE8 802BF198 44812000 */ mtc1 $at, $f4
/* 322CEC 802BF19C 46020003 */ div.s $f0, $f0, $f2
/* 322CF0 802BF1A0 080AFC6D */ j .L802BF1B4
/* 322CF4 802BF1A4 46040000 */ add.s $f0, $f0, $f4
.L802BF1A8:
/* 322CF8 802BF1A8 3C0140C0 */ lui $at, 0x40c0
/* 322CFC 802BF1AC 44810000 */ mtc1 $at, $f0
/* 322D00 802BF1B0 00000000 */ nop
.L802BF1B4:
/* 322D04 802BF1B4 E620001C */ swc1 $f0, 0x1c($s1)
/* 322D08 802BF1B8 3C040001 */ lui $a0, 1
/* 322D0C 802BF1BC 34840006 */ ori $a0, $a0, 6
/* 322D10 802BF1C0 8622008E */ lh $v0, 0x8e($s1)
/* 322D14 802BF1C4 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 322D18 802BF1C8 44821000 */ mtc1 $v0, $f2
/* 322D1C 802BF1CC 00000000 */ nop
/* 322D20 802BF1D0 468010A0 */ cvt.s.w $f2, $f2
/* 322D24 802BF1D4 46020003 */ div.s $f0, $f0, $f2
/* 322D28 802BF1D8 0C037FBF */ jal func_800DFEFC
/* 322D2C 802BF1DC E6200018 */ swc1 $f0, 0x18($s1)
/* 322D30 802BF1E0 3C03802C */ lui $v1, 0x802c
/* 322D34 802BF1E4 2463FF14 */ addiu $v1, $v1, -0xec
/* 322D38 802BF1E8 8C620000 */ lw $v0, ($v1)
/* 322D3C 802BF1EC 24420001 */ addiu $v0, $v0, 1
/* 322D40 802BF1F0 080AFCD7 */ j .L802BF35C
/* 322D44 802BF1F4 AC620000 */ sw $v0, ($v1)
.L802BF1F8:
/* 322D48 802BF1F8 3C040001 */ lui $a0, 1
/* 322D4C 802BF1FC 0C037FBF */ jal func_800DFEFC
/* 322D50 802BF200 34840007 */ ori $a0, $a0, 7
/* 322D54 802BF204 8E020000 */ lw $v0, ($s0)
/* 322D58 802BF208 24420001 */ addiu $v0, $v0, 1
/* 322D5C 802BF20C AE020000 */ sw $v0, ($s0)
/* 322D60 802BF210 0240202D */ daddu $a0, $s2, $zero
.L802BF214:
/* 322D64 802BF214 3C08800B */ lui $t0, %hi(gCameras)
/* 322D68 802BF218 25081D80 */ addiu $t0, $t0, %lo(gCameras)
/* 322D6C 802BF21C 27A50020 */ addiu $a1, $sp, 0x20
/* 322D70 802BF220 27B40024 */ addiu $s4, $sp, 0x24
/* 322D74 802BF224 0280302D */ daddu $a2, $s4, $zero
/* 322D78 802BF228 27A70028 */ addiu $a3, $sp, 0x28
/* 322D7C 802BF22C 26500028 */ addiu $s0, $s2, 0x28
/* 322D80 802BF230 95020002 */ lhu $v0, 2($t0)
/* 322D84 802BF234 26530030 */ addiu $s3, $s2, 0x30
/* 322D88 802BF238 34420001 */ ori $v0, $v0, 1
/* 322D8C 802BF23C A5020002 */ sh $v0, 2($t0)
/* 322D90 802BF240 C640002C */ lwc1 $f0, 0x2c($s2)
/* 322D94 802BF244 C622001C */ lwc1 $f2, 0x1c($s1)
/* 322D98 802BF248 864200B0 */ lh $v0, 0xb0($s2)
/* 322D9C 802BF24C C6480028 */ lwc1 $f8, 0x28($s2)
/* 322DA0 802BF250 46020000 */ add.s $f0, $f0, $f2
/* 322DA4 802BF254 3C013F00 */ lui $at, 0x3f00
/* 322DA8 802BF258 44811000 */ mtc1 $at, $f2
/* 322DAC 802BF25C 44826000 */ mtc1 $v0, $f12
/* 322DB0 802BF260 00000000 */ nop
/* 322DB4 802BF264 46806320 */ cvt.s.w $f12, $f12
/* 322DB8 802BF268 46026302 */ mul.s $f12, $f12, $f2
/* 322DBC 802BF26C 00000000 */ nop
/* 322DC0 802BF270 C64A0030 */ lwc1 $f10, 0x30($s2)
/* 322DC4 802BF274 0040182D */ daddu $v1, $v0, $zero
/* 322DC8 802BF278 E640002C */ swc1 $f0, 0x2c($s2)
/* 322DCC 802BF27C 44830000 */ mtc1 $v1, $f0
/* 322DD0 802BF280 00000000 */ nop
/* 322DD4 802BF284 46800020 */ cvt.s.w $f0, $f0
/* 322DD8 802BF288 46020002 */ mul.s $f0, $f0, $f2
/* 322DDC 802BF28C 00000000 */ nop
/* 322DE0 802BF290 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 322DE4 802BF294 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 322DE8 802BF298 C644002C */ lwc1 $f4, 0x2c($s2)
/* 322DEC 802BF29C 3C0142B4 */ lui $at, 0x42b4
/* 322DF0 802BF2A0 44811000 */ mtc1 $at, $f2
/* 322DF4 802BF2A4 00031080 */ sll $v0, $v1, 2
/* 322DF8 802BF2A8 00431021 */ addu $v0, $v0, $v1
/* 322DFC 802BF2AC 00021080 */ sll $v0, $v0, 2
/* 322E00 802BF2B0 00431023 */ subu $v0, $v0, $v1
/* 322E04 802BF2B4 000218C0 */ sll $v1, $v0, 3
/* 322E08 802BF2B8 00431021 */ addu $v0, $v0, $v1
/* 322E0C 802BF2BC 000210C0 */ sll $v0, $v0, 3
/* 322E10 802BF2C0 00481021 */ addu $v0, $v0, $t0
/* 322E14 802BF2C4 C446006C */ lwc1 $f6, 0x6c($v0)
/* 322E18 802BF2C8 46002100 */ add.s $f4, $f4, $f0
/* 322E1C 802BF2CC C64000A8 */ lwc1 $f0, 0xa8($s2)
/* 322E20 802BF2D0 27A2002C */ addiu $v0, $sp, 0x2c
/* 322E24 802BF2D4 E7A80020 */ swc1 $f8, 0x20($sp)
/* 322E28 802BF2D8 46020001 */ sub.s $f0, $f0, $f2
/* 322E2C 802BF2DC E7AA0028 */ swc1 $f10, 0x28($sp)
/* 322E30 802BF2E0 E7AC002C */ swc1 $f12, 0x2c($sp)
/* 322E34 802BF2E4 46060500 */ add.s $f20, $f0, $f6
/* 322E38 802BF2E8 E7A40024 */ swc1 $f4, 0x24($sp)
/* 322E3C 802BF2EC AFA20010 */ sw $v0, 0x10($sp)
/* 322E40 802BF2F0 0C0379F9 */ jal collision_check_above
/* 322E44 802BF2F4 E7B40014 */ swc1 $f20, 0x14($sp)
/* 322E48 802BF2F8 04400005 */ bltz $v0, .L802BF310
/* 322E4C 802BF2FC 2402000A */ addiu $v0, $zero, 0xa
.L802BF300:
/* 322E50 802BF300 3C01802C */ lui $at, 0x802c
/* 322E54 802BF304 AC22FF14 */ sw $v0, -0xec($at)
/* 322E58 802BF308 080AFCD7 */ j .L802BF35C
/* 322E5C 802BF30C 00000000 */ nop
.L802BF310:
/* 322E60 802BF310 0200202D */ daddu $a0, $s0, $zero
/* 322E64 802BF314 C620001C */ lwc1 $f0, 0x1c($s1)
/* 322E68 802BF318 C6220014 */ lwc1 $f2, 0x14($s1)
/* 322E6C 802BF31C 8E260018 */ lw $a2, 0x18($s1)
/* 322E70 802BF320 46020001 */ sub.s $f0, $f0, $f2
/* 322E74 802BF324 8E27000C */ lw $a3, 0xc($s1)
/* 322E78 802BF328 0260282D */ daddu $a1, $s3, $zero
/* 322E7C 802BF32C 0C00A7E7 */ jal add_vec2D_polar
/* 322E80 802BF330 E620001C */ swc1 $f0, 0x1c($s1)
/* 322E84 802BF334 0C0392B6 */ jal func_800E4AD8
/* 322E88 802BF338 0000202D */ daddu $a0, $zero, $zero
/* 322E8C 802BF33C 0C0AF9A8 */ jal func_802BE6A0
/* 322E90 802BF340 0280202D */ daddu $a0, $s4, $zero
/* 322E94 802BF344 04400005 */ bltz $v0, .L802BF35C
/* 322E98 802BF348 2402000A */ addiu $v0, $zero, 0xa
/* 322E9C 802BF34C C7A00024 */ lwc1 $f0, 0x24($sp)
/* 322EA0 802BF350 3C01802C */ lui $at, 0x802c
/* 322EA4 802BF354 AC22FF14 */ sw $v0, -0xec($at)
/* 322EA8 802BF358 E640002C */ swc1 $f0, 0x2c($s2)
.L802BF35C:
/* 322EAC 802BF35C C6400028 */ lwc1 $f0, 0x28($s2)
/* 322EB0 802BF360 3C02800B */ lui $v0, %hi(gCameras)
/* 322EB4 802BF364 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 322EB8 802BF368 E4400060 */ swc1 $f0, 0x60($v0)
/* 322EBC 802BF36C C6400030 */ lwc1 $f0, 0x30($s2)
/* 322EC0 802BF370 C6220064 */ lwc1 $f2, 0x64($s1)
/* 322EC4 802BF374 3C10802C */ lui $s0, 0x802c
/* 322EC8 802BF378 2610FF14 */ addiu $s0, $s0, -0xec
/* 322ECC 802BF37C E4400068 */ swc1 $f0, 0x68($v0)
/* 322ED0 802BF380 E4420064 */ swc1 $f2, 0x64($v0)
/* 322ED4 802BF384 8E030000 */ lw $v1, ($s0)
/* 322ED8 802BF388 2402000A */ addiu $v0, $zero, 0xa
/* 322EDC 802BF38C 14620030 */ bne $v1, $v0, .L802BF450
/* 322EE0 802BF390 2402000B */ addiu $v0, $zero, 0xb
/* 322EE4 802BF394 3C02FFBF */ lui $v0, 0xffbf
/* 322EE8 802BF398 3442FFB7 */ ori $v0, $v0, 0xffb7
/* 322EEC 802BF39C 8E230000 */ lw $v1, ($s1)
/* 322EF0 802BF3A0 3C05802C */ lui $a1, 0x802c
/* 322EF4 802BF3A4 24A5FF08 */ addiu $a1, $a1, -0xf8
/* 322EF8 802BF3A8 3C01802C */ lui $at, 0x802c
/* 322EFC 802BF3AC AC20FF0C */ sw $zero, -0xf4($at)
/* 322F00 802BF3B0 8CA40000 */ lw $a0, ($a1)
/* 322F04 802BF3B4 00621824 */ and $v1, $v1, $v0
/* 322F08 802BF3B8 10800003 */ beqz $a0, .L802BF3C8
/* 322F0C 802BF3BC AE230000 */ sw $v1, ($s1)
/* 322F10 802BF3C0 0C038050 */ jal enable_player_static_collisions
/* 322F14 802BF3C4 ACA00000 */ sw $zero, ($a1)
.L802BF3C8:
/* 322F18 802BF3C8 0C03802C */ jal enable_player_shadow
/* 322F1C 802BF3CC 00000000 */ nop
/* 322F20 802BF3D0 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 322F24 802BF3D4 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 322F28 802BF3D8 A040007D */ sb $zero, 0x7d($v0)
/* 322F2C 802BF3DC 8E420000 */ lw $v0, ($s2)
/* 322F30 802BF3E0 30420800 */ andi $v0, $v0, 0x800
/* 322F34 802BF3E4 10400013 */ beqz $v0, .L802BF434
/* 322F38 802BF3E8 00000000 */ nop
/* 322F3C 802BF3EC 3C03802C */ lui $v1, 0x802c
/* 322F40 802BF3F0 2463FF04 */ addiu $v1, $v1, -0xfc
/* 322F44 802BF3F4 8C620000 */ lw $v0, ($v1)
/* 322F48 802BF3F8 A2A00003 */ sb $zero, 3($s5)
/* 322F4C 802BF3FC 10400003 */ beqz $v0, .L802BF40C
/* 322F50 802BF400 A2A00000 */ sb $zero, ($s5)
/* 322F54 802BF404 0C038069 */ jal enable_player_input
/* 322F58 802BF408 AC600000 */ sw $zero, ($v1)
.L802BF40C:
/* 322F5C 802BF40C 0C03BD17 */ jal clear_partner_move_history
/* 322F60 802BF410 0220202D */ daddu $a0, $s1, $zero
/* 322F64 802BF414 0C039769 */ jal set_action_state
/* 322F68 802BF418 24040015 */ addiu $a0, $zero, 0x15
/* 322F6C 802BF41C 24020001 */ addiu $v0, $zero, 1
.L802BF420:
/* 322F70 802BF420 8E430000 */ lw $v1, ($s2)
/* 322F74 802BF424 2404FEFF */ addiu $a0, $zero, -0x101
.L802BF428:
/* 322F78 802BF428 00641824 */ and $v1, $v1, $a0
/* 322F7C 802BF42C 080AFD31 */ j .L802BF4C4
/* 322F80 802BF430 AE430000 */ sw $v1, ($s2)
.L802BF434:
/* 322F84 802BF434 0C039769 */ jal set_action_state
/* 322F88 802BF438 24040008 */ addiu $a0, $zero, 8
/* 322F8C 802BF43C 0C038C1B */ jal gravity_use_fall_parms
/* 322F90 802BF440 00000000 */ nop
/* 322F94 802BF444 2402000B */ addiu $v0, $zero, 0xb
/* 322F98 802BF448 080AFD30 */ j .L802BF4C0
/* 322F9C 802BF44C AE020000 */ sw $v0, ($s0)
.L802BF450:
/* 322FA0 802BF450 1462001C */ bne $v1, $v0, .L802BF4C4
/* 322FA4 802BF454 0000102D */ daddu $v0, $zero, $zero
/* 322FA8 802BF458 3C03FFBF */ lui $v1, 0xffbf
/* 322FAC 802BF45C 3463FFB7 */ ori $v1, $v1, 0xffb7
/* 322FB0 802BF460 2404FEFF */ addiu $a0, $zero, -0x101
/* 322FB4 802BF464 8E220000 */ lw $v0, ($s1)
/* 322FB8 802BF468 3C05802C */ lui $a1, 0x802c
/* 322FBC 802BF46C 24A5FF04 */ addiu $a1, $a1, -0xfc
/* 322FC0 802BF470 00431024 */ and $v0, $v0, $v1
/* 322FC4 802BF474 AE220000 */ sw $v0, ($s1)
/* 322FC8 802BF478 A2A00003 */ sb $zero, 3($s5)
/* 322FCC 802BF47C A2A00000 */ sb $zero, ($s5)
/* 322FD0 802BF480 8E420000 */ lw $v0, ($s2)
/* 322FD4 802BF484 8CA30000 */ lw $v1, ($a1)
/* 322FD8 802BF488 00441024 */ and $v0, $v0, $a0
/* 322FDC 802BF48C 10600003 */ beqz $v1, .L802BF49C
/* 322FE0 802BF490 AE420000 */ sw $v0, ($s2)
/* 322FE4 802BF494 0C038069 */ jal enable_player_input
/* 322FE8 802BF498 ACA00000 */ sw $zero, ($a1)
.L802BF49C:
/* 322FEC 802BF49C 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 322FF0 802BF4A0 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 322FF4 802BF4A4 0220202D */ daddu $a0, $s1, $zero
/* 322FF8 802BF4A8 0C03BD17 */ jal clear_partner_move_history
/* 322FFC 802BF4AC A040007D */ sb $zero, 0x7d($v0)
/* 323000 802BF4B0 0C03BCF5 */ jal func_800EF3D4
/* 323004 802BF4B4 24040002 */ addiu $a0, $zero, 2
/* 323008 802BF4B8 080AFD31 */ j .L802BF4C4
/* 32300C 802BF4BC 24020001 */ addiu $v0, $zero, 1
.L802BF4C0:
/* 323010 802BF4C0 0000102D */ daddu $v0, $zero, $zero
.L802BF4C4:
/* 323014 802BF4C4 8FBF0048 */ lw $ra, 0x48($sp)
/* 323018 802BF4C8 8FB50044 */ lw $s5, 0x44($sp)
/* 32301C 802BF4CC 8FB40040 */ lw $s4, 0x40($sp)
/* 323020 802BF4D0 8FB3003C */ lw $s3, 0x3c($sp)
/* 323024 802BF4D4 8FB20038 */ lw $s2, 0x38($sp)
/* 323028 802BF4D8 8FB10034 */ lw $s1, 0x34($sp)
/* 32302C 802BF4DC 8FB00030 */ lw $s0, 0x30($sp)
/* 323030 802BF4E0 D7B60058 */ ldc1 $f22, 0x58($sp)
/* 323034 802BF4E4 D7B40050 */ ldc1 $f20, 0x50($sp)
/* 323038 802BF4E8 03E00008 */ jr $ra
/* 32303C 802BF4EC 27BD0060 */ addiu $sp, $sp, 0x60

View File

@ -0,0 +1,352 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BF4F0
/* 323040 802BF4F0 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 323044 802BF4F4 AFB20038 */ sw $s2, 0x38($sp)
/* 323048 802BF4F8 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 32304C 802BF4FC 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 323050 802BF500 AFB3003C */ sw $s3, 0x3c($sp)
/* 323054 802BF504 3C138011 */ lui $s3, %hi(D_8010EBB0)
/* 323058 802BF508 2673EBB0 */ addiu $s3, $s3, %lo(D_8010EBB0)
/* 32305C 802BF50C AFBF0040 */ sw $ra, 0x40($sp)
/* 323060 802BF510 AFB10034 */ sw $s1, 0x34($sp)
/* 323064 802BF514 AFB00030 */ sw $s0, 0x30($sp)
/* 323068 802BF518 10A00014 */ beqz $a1, .L802BF56C
/* 32306C 802BF51C 8C90014C */ lw $s0, 0x14c($a0)
/* 323070 802BF520 3C02802C */ lui $v0, 0x802c
/* 323074 802BF524 8C42FF0C */ lw $v0, -0xf4($v0)
/* 323078 802BF528 14400002 */ bnez $v0, .L802BF534
/* 32307C 802BF52C 0000182D */ daddu $v1, $zero, $zero
/* 323080 802BF530 24030003 */ addiu $v1, $zero, 3
.L802BF534:
/* 323084 802BF534 3C01802C */ lui $at, 0x802c
/* 323088 802BF538 AC23FF00 */ sw $v1, -0x100($at)
/* 32308C 802BF53C 0C03BA65 */ jal func_800EE994
/* 323090 802BF540 0200202D */ daddu $a0, $s0, $zero
/* 323094 802BF544 0C0AF5F7 */ jal func_802BD7DC
/* 323098 802BF548 00000000 */ nop
/* 32309C 802BF54C 3C02FFBF */ lui $v0, 0xffbf
/* 3230A0 802BF550 3442FFFF */ ori $v0, $v0, 0xffff
/* 3230A4 802BF554 8E430004 */ lw $v1, 4($s2)
/* 3230A8 802BF558 8E440000 */ lw $a0, ($s2)
/* 3230AC 802BF55C 00621824 */ and $v1, $v1, $v0
/* 3230B0 802BF560 34840100 */ ori $a0, $a0, 0x100
/* 3230B4 802BF564 AE430004 */ sw $v1, 4($s2)
/* 3230B8 802BF568 AE440000 */ sw $a0, ($s2)
.L802BF56C:
/* 3230BC 802BF56C 3C11802C */ lui $s1, 0x802c
/* 3230C0 802BF570 2631FF00 */ addiu $s1, $s1, -0x100
/* 3230C4 802BF574 8E230000 */ lw $v1, ($s1)
/* 3230C8 802BF578 24020001 */ addiu $v0, $zero, 1
/* 3230CC 802BF57C 1062005F */ beq $v1, $v0, .L802BF6FC
/* 3230D0 802BF580 28620002 */ slti $v0, $v1, 2
/* 3230D4 802BF584 10400005 */ beqz $v0, .L802BF59C
/* 3230D8 802BF588 24020002 */ addiu $v0, $zero, 2
/* 3230DC 802BF58C 10600007 */ beqz $v1, .L802BF5AC
/* 3230E0 802BF590 00000000 */ nop
/* 3230E4 802BF594 080AFE0E */ j .L802BF838
/* 3230E8 802BF598 00000000 */ nop
.L802BF59C:
/* 3230EC 802BF59C 1062005D */ beq $v1, $v0, .L802BF714
/* 3230F0 802BF5A0 00000000 */ nop
/* 3230F4 802BF5A4 080AFE0E */ j .L802BF838
/* 3230F8 802BF5A8 00000000 */ nop
.L802BF5AC:
/* 3230FC 802BF5AC 0C0AF5F7 */ jal func_802BD7DC
/* 323100 802BF5B0 00000000 */ nop
/* 323104 802BF5B4 3C02800B */ lui $v0, %hi(gCameras)
/* 323108 802BF5B8 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 32310C 802BF5BC C64200A8 */ lwc1 $f2, 0xa8($s2)
/* 323110 802BF5C0 3C0142B4 */ lui $at, 0x42b4
/* 323114 802BF5C4 44813000 */ mtc1 $at, $f6
/* 323118 802BF5C8 C444006C */ lwc1 $f4, 0x6c($v0)
/* 32311C 802BF5CC 4602303E */ c.le.s $f6, $f2
/* 323120 802BF5D0 00000000 */ nop
/* 323124 802BF5D4 4500000E */ bc1f .L802BF610
/* 323128 802BF5D8 00000000 */ nop
/* 32312C 802BF5DC 3C014387 */ lui $at, 0x4387
/* 323130 802BF5E0 44810000 */ mtc1 $at, $f0
/* 323134 802BF5E4 00000000 */ nop
/* 323138 802BF5E8 4600103C */ c.lt.s $f2, $f0
/* 32313C 802BF5EC 00000000 */ nop
/* 323140 802BF5F0 45000007 */ bc1f .L802BF610
/* 323144 802BF5F4 00000000 */ nop
/* 323148 802BF5F8 3C014334 */ lui $at, 0x4334
/* 32314C 802BF5FC 44810000 */ mtc1 $at, $f0
/* 323150 802BF600 00000000 */ nop
/* 323154 802BF604 46002000 */ add.s $f0, $f4, $f0
/* 323158 802BF608 080AFD8B */ j .L802BF62C
/* 32315C 802BF60C 46060001 */ sub.s $f0, $f0, $f6
.L802BF610:
/* 323160 802BF610 44800000 */ mtc1 $zero, $f0
/* 323164 802BF614 00000000 */ nop
/* 323168 802BF618 46002000 */ add.s $f0, $f4, $f0
/* 32316C 802BF61C 3C0142B4 */ lui $at, 0x42b4
/* 323170 802BF620 44811000 */ mtc1 $at, $f2
/* 323174 802BF624 00000000 */ nop
/* 323178 802BF628 46020001 */ sub.s $f0, $f0, $f2
.L802BF62C:
/* 32317C 802BF62C E600000C */ swc1 $f0, 0xc($s0)
/* 323180 802BF630 C64C0028 */ lwc1 $f12, 0x28($s2)
/* 323184 802BF634 C64E0030 */ lwc1 $f14, 0x30($s2)
/* 323188 802BF638 8E060060 */ lw $a2, 0x60($s0)
/* 32318C 802BF63C 0C00A7B5 */ jal dist2D
/* 323190 802BF640 8E070068 */ lw $a3, 0x68($s0)
/* 323194 802BF644 E7A0002C */ swc1 $f0, 0x2c($sp)
/* 323198 802BF648 C6000064 */ lwc1 $f0, 0x64($s0)
/* 32319C 802BF64C C602003C */ lwc1 $f2, 0x3c($s0)
/* 3231A0 802BF650 2402000E */ addiu $v0, $zero, 0xe
/* 3231A4 802BF654 4600103C */ c.lt.s $f2, $f0
/* 3231A8 802BF658 00000000 */ nop
/* 3231AC 802BF65C 45000009 */ bc1f .L802BF684
/* 3231B0 802BF660 A602008E */ sh $v0, 0x8e($s0)
/* 3231B4 802BF664 46020001 */ sub.s $f0, $f0, $f2
/* 3231B8 802BF668 3C014160 */ lui $at, 0x4160
/* 3231BC 802BF66C 44811000 */ mtc1 $at, $f2
/* 3231C0 802BF670 3C0140C0 */ lui $at, 0x40c0
/* 3231C4 802BF674 44812000 */ mtc1 $at, $f4
/* 3231C8 802BF678 46020003 */ div.s $f0, $f0, $f2
/* 3231CC 802BF67C 080AFDA4 */ j .L802BF690
/* 3231D0 802BF680 46040000 */ add.s $f0, $f0, $f4
.L802BF684:
/* 3231D4 802BF684 3C0140C0 */ lui $at, 0x40c0
/* 3231D8 802BF688 44810000 */ mtc1 $at, $f0
/* 3231DC 802BF68C 00000000 */ nop
.L802BF690:
/* 3231E0 802BF690 E600001C */ swc1 $f0, 0x1c($s0)
/* 3231E4 802BF694 3C013F99 */ lui $at, 0x3f99
/* 3231E8 802BF698 3421999A */ ori $at, $at, 0x999a
/* 3231EC 802BF69C 44810000 */ mtc1 $at, $f0
/* 3231F0 802BF6A0 8E060060 */ lw $a2, 0x60($s0)
/* 3231F4 802BF6A4 8E070068 */ lw $a3, 0x68($s0)
/* 3231F8 802BF6A8 8602008E */ lh $v0, 0x8e($s0)
/* 3231FC 802BF6AC E6000014 */ swc1 $f0, 0x14($s0)
/* 323200 802BF6B0 C7A0002C */ lwc1 $f0, 0x2c($sp)
/* 323204 802BF6B4 44821000 */ mtc1 $v0, $f2
/* 323208 802BF6B8 00000000 */ nop
/* 32320C 802BF6BC 468010A0 */ cvt.s.w $f2, $f2
/* 323210 802BF6C0 46020003 */ div.s $f0, $f0, $f2
/* 323214 802BF6C4 E6000018 */ swc1 $f0, 0x18($s0)
/* 323218 802BF6C8 C64C0028 */ lwc1 $f12, 0x28($s2)
/* 32321C 802BF6CC 0C00A720 */ jal atan2
/* 323220 802BF6D0 C64E0030 */ lwc1 $f14, 0x30($s2)
/* 323224 802BF6D4 3C040001 */ lui $a0, 1
/* 323228 802BF6D8 34840006 */ ori $a0, $a0, 6
/* 32322C 802BF6DC 0C037FBF */ jal func_800DFEFC
/* 323230 802BF6E0 E600000C */ swc1 $f0, 0xc($s0)
/* 323234 802BF6E4 3C03802C */ lui $v1, 0x802c
/* 323238 802BF6E8 2463FF00 */ addiu $v1, $v1, -0x100
/* 32323C 802BF6EC 8C620000 */ lw $v0, ($v1)
/* 323240 802BF6F0 24420001 */ addiu $v0, $v0, 1
/* 323244 802BF6F4 080AFE0E */ j .L802BF838
/* 323248 802BF6F8 AC620000 */ sw $v0, ($v1)
.L802BF6FC:
/* 32324C 802BF6FC 3C040001 */ lui $a0, 1
/* 323250 802BF700 0C037FBF */ jal func_800DFEFC
/* 323254 802BF704 34840007 */ ori $a0, $a0, 7
/* 323258 802BF708 8E220000 */ lw $v0, ($s1)
/* 32325C 802BF70C 24420001 */ addiu $v0, $v0, 1
/* 323260 802BF710 AE220000 */ sw $v0, ($s1)
.L802BF714:
/* 323264 802BF714 C640002C */ lwc1 $f0, 0x2c($s2)
/* 323268 802BF718 C602001C */ lwc1 $f2, 0x1c($s0)
/* 32326C 802BF71C 46020000 */ add.s $f0, $f0, $f2
/* 323270 802BF720 26440028 */ addiu $a0, $s2, 0x28
/* 323274 802BF724 E640002C */ swc1 $f0, 0x2c($s2)
/* 323278 802BF728 C600001C */ lwc1 $f0, 0x1c($s0)
/* 32327C 802BF72C C6020014 */ lwc1 $f2, 0x14($s0)
/* 323280 802BF730 8E060018 */ lw $a2, 0x18($s0)
/* 323284 802BF734 46020001 */ sub.s $f0, $f0, $f2
/* 323288 802BF738 8E07000C */ lw $a3, 0xc($s0)
/* 32328C 802BF73C 26450030 */ addiu $a1, $s2, 0x30
/* 323290 802BF740 0C00A7E7 */ jal add_vec2D_polar
/* 323294 802BF744 E600001C */ swc1 $f0, 0x1c($s0)
/* 323298 802BF748 0C0392B6 */ jal func_800E4AD8
/* 32329C 802BF74C 0000202D */ daddu $a0, $zero, $zero
/* 3232A0 802BF750 C602001C */ lwc1 $f2, 0x1c($s0)
/* 3232A4 802BF754 44800000 */ mtc1 $zero, $f0
/* 3232A8 802BF758 00000000 */ nop
/* 3232AC 802BF75C 4600103E */ c.le.s $f2, $f0
/* 3232B0 802BF760 00000000 */ nop
/* 3232B4 802BF764 45000011 */ bc1f .L802BF7AC
/* 3232B8 802BF768 0000202D */ daddu $a0, $zero, $zero
/* 3232BC 802BF76C 8E420000 */ lw $v0, ($s2)
/* 3232C0 802BF770 34420004 */ ori $v0, $v0, 4
/* 3232C4 802BF774 AE420000 */ sw $v0, ($s2)
/* 3232C8 802BF778 C600001C */ lwc1 $f0, 0x1c($s0)
/* 3232CC 802BF77C 3C01C024 */ lui $at, 0xc024
/* 3232D0 802BF780 44811800 */ mtc1 $at, $f3
/* 3232D4 802BF784 44801000 */ mtc1 $zero, $f2
/* 3232D8 802BF788 46000021 */ cvt.d.s $f0, $f0
/* 3232DC 802BF78C 4622003C */ c.lt.d $f0, $f2
/* 3232E0 802BF790 00000000 */ nop
/* 3232E4 802BF794 45000005 */ bc1f .L802BF7AC
/* 3232E8 802BF798 00000000 */ nop
/* 3232EC 802BF79C 3C01C120 */ lui $at, 0xc120
/* 3232F0 802BF7A0 44810000 */ mtc1 $at, $f0
/* 3232F4 802BF7A4 00000000 */ nop
/* 3232F8 802BF7A8 E600001C */ swc1 $f0, 0x1c($s0)
.L802BF7AC:
/* 3232FC 802BF7AC C6420028 */ lwc1 $f2, 0x28($s2)
/* 323300 802BF7B0 864200B0 */ lh $v0, 0xb0($s2)
/* 323304 802BF7B4 C6400030 */ lwc1 $f0, 0x30($s2)
/* 323308 802BF7B8 27A50020 */ addiu $a1, $sp, 0x20
/* 32330C 802BF7BC E7A00028 */ swc1 $f0, 0x28($sp)
/* 323310 802BF7C0 44820000 */ mtc1 $v0, $f0
/* 323314 802BF7C4 00000000 */ nop
/* 323318 802BF7C8 46800020 */ cvt.s.w $f0, $f0
/* 32331C 802BF7CC E7A20020 */ swc1 $f2, 0x20($sp)
/* 323320 802BF7D0 C642002C */ lwc1 $f2, 0x2c($s2)
/* 323324 802BF7D4 864200B0 */ lh $v0, 0xb0($s2)
/* 323328 802BF7D8 46001080 */ add.s $f2, $f2, $f0
/* 32332C 802BF7DC 44820000 */ mtc1 $v0, $f0
/* 323330 802BF7E0 00000000 */ nop
/* 323334 802BF7E4 46800020 */ cvt.s.w $f0, $f0
/* 323338 802BF7E8 27A2002C */ addiu $v0, $sp, 0x2c
/* 32333C 802BF7EC E7A0002C */ swc1 $f0, 0x2c($sp)
/* 323340 802BF7F0 E7A20024 */ swc1 $f2, 0x24($sp)
/* 323344 802BF7F4 AFA20010 */ sw $v0, 0x10($sp)
/* 323348 802BF7F8 C600000C */ lwc1 $f0, 0xc($s0)
/* 32334C 802BF7FC 27A60024 */ addiu $a2, $sp, 0x24
/* 323350 802BF800 E7A00014 */ swc1 $f0, 0x14($sp)
/* 323354 802BF804 860200A6 */ lh $v0, 0xa6($s0)
/* 323358 802BF808 27A70028 */ addiu $a3, $sp, 0x28
/* 32335C 802BF80C 44820000 */ mtc1 $v0, $f0
/* 323360 802BF810 00000000 */ nop
/* 323364 802BF814 46800020 */ cvt.s.w $f0, $f0
/* 323368 802BF818 0C0371DE */ jal func_800DC778
/* 32336C 802BF81C E7A00018 */ swc1 $f0, 0x18($sp)
/* 323370 802BF820 10400005 */ beqz $v0, .L802BF838
/* 323374 802BF824 24020003 */ addiu $v0, $zero, 3
/* 323378 802BF828 C7A00024 */ lwc1 $f0, 0x24($sp)
/* 32337C 802BF82C 3C01802C */ lui $at, 0x802c
/* 323380 802BF830 AC22FF00 */ sw $v0, -0x100($at)
/* 323384 802BF834 E640002C */ swc1 $f0, 0x2c($s2)
.L802BF838:
/* 323388 802BF838 3C02800B */ lui $v0, %hi(gCameras)
/* 32338C 802BF83C 24421D80 */ addiu $v0, $v0, %lo(gCameras)
/* 323390 802BF840 C6400028 */ lwc1 $f0, 0x28($s2)
/* 323394 802BF844 C642002C */ lwc1 $f2, 0x2c($s2)
/* 323398 802BF848 C6440030 */ lwc1 $f4, 0x30($s2)
/* 32339C 802BF84C 3C11802C */ lui $s1, 0x802c
/* 3233A0 802BF850 2631FF00 */ addiu $s1, $s1, -0x100
/* 3233A4 802BF854 E4400060 */ swc1 $f0, 0x60($v0)
/* 3233A8 802BF858 E4420064 */ swc1 $f2, 0x64($v0)
/* 3233AC 802BF85C E4440068 */ swc1 $f4, 0x68($v0)
/* 3233B0 802BF860 8E230000 */ lw $v1, ($s1)
/* 3233B4 802BF864 24020004 */ addiu $v0, $zero, 4
/* 3233B8 802BF868 10620041 */ beq $v1, $v0, .L802BF970
/* 3233BC 802BF86C 28620005 */ slti $v0, $v1, 5
/* 3233C0 802BF870 10400005 */ beqz $v0, .L802BF888
/* 3233C4 802BF874 24020003 */ addiu $v0, $zero, 3
/* 3233C8 802BF878 10620008 */ beq $v1, $v0, .L802BF89C
/* 3233CC 802BF87C 0000102D */ daddu $v0, $zero, $zero
/* 3233D0 802BF880 080AFE79 */ j .L802BF9E4
/* 3233D4 802BF884 00000000 */ nop
.L802BF888:
/* 3233D8 802BF888 24020005 */ addiu $v0, $zero, 5
/* 3233DC 802BF88C 1062004F */ beq $v1, $v0, .L802BF9CC
/* 3233E0 802BF890 00000000 */ nop
/* 3233E4 802BF894 080AFE79 */ j .L802BF9E4
/* 3233E8 802BF898 0000102D */ daddu $v0, $zero, $zero
.L802BF89C:
/* 3233EC 802BF89C 2402FFB7 */ addiu $v0, $zero, -0x49
/* 3233F0 802BF8A0 3C05802C */ lui $a1, 0x802c
/* 3233F4 802BF8A4 24A5FF08 */ addiu $a1, $a1, -0xf8
/* 3233F8 802BF8A8 8E030000 */ lw $v1, ($s0)
/* 3233FC 802BF8AC 8CA40000 */ lw $a0, ($a1)
/* 323400 802BF8B0 00621824 */ and $v1, $v1, $v0
/* 323404 802BF8B4 10800003 */ beqz $a0, .L802BF8C4
/* 323408 802BF8B8 AE030000 */ sw $v1, ($s0)
/* 32340C 802BF8BC 0C038050 */ jal enable_player_static_collisions
/* 323410 802BF8C0 ACA00000 */ sw $zero, ($a1)
.L802BF8C4:
/* 323414 802BF8C4 0C03802C */ jal enable_player_shadow
/* 323418 802BF8C8 00000000 */ nop
/* 32341C 802BF8CC 8E420000 */ lw $v0, ($s2)
/* 323420 802BF8D0 30420800 */ andi $v0, $v0, 0x800
/* 323424 802BF8D4 10400014 */ beqz $v0, .L802BF928
/* 323428 802BF8D8 00000000 */ nop
/* 32342C 802BF8DC 3C03802C */ lui $v1, 0x802c
/* 323430 802BF8E0 2463FF04 */ addiu $v1, $v1, -0xfc
/* 323434 802BF8E4 8C620000 */ lw $v0, ($v1)
/* 323438 802BF8E8 A2600003 */ sb $zero, 3($s3)
/* 32343C 802BF8EC 10400003 */ beqz $v0, .L802BF8FC
/* 323440 802BF8F0 A2600000 */ sb $zero, ($s3)
/* 323444 802BF8F4 0C038069 */ jal enable_player_input
/* 323448 802BF8F8 AC600000 */ sw $zero, ($v1)
.L802BF8FC:
/* 32344C 802BF8FC 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 323450 802BF900 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 323454 802BF904 A040007D */ sb $zero, 0x7d($v0)
/* 323458 802BF908 3C01802C */ lui $at, 0x802c
/* 32345C 802BF90C AC20FF0C */ sw $zero, -0xf4($at)
/* 323460 802BF910 0C03BD17 */ jal clear_partner_move_history
/* 323464 802BF914 0200202D */ daddu $a0, $s0, $zero
/* 323468 802BF918 0C039769 */ jal set_action_state
/* 32346C 802BF91C 24040015 */ addiu $a0, $zero, 0x15
/* 323470 802BF920 080AFE79 */ j .L802BF9E4
/* 323474 802BF924 24020001 */ addiu $v0, $zero, 1
.L802BF928:
/* 323478 802BF928 3C02802C */ lui $v0, 0x802c
/* 32347C 802BF92C 8C42FF0C */ lw $v0, -0xf4($v0)
/* 323480 802BF930 14400005 */ bnez $v0, .L802BF948
/* 323484 802BF934 00000000 */ nop
/* 323488 802BF938 0C0391D1 */ jal func_800E4744
/* 32348C 802BF93C 00000000 */ nop
/* 323490 802BF940 080AFE56 */ j .L802BF958
/* 323494 802BF944 00000000 */ nop
.L802BF948:
/* 323498 802BF948 0C039769 */ jal set_action_state
/* 32349C 802BF94C 24040008 */ addiu $a0, $zero, 8
/* 3234A0 802BF950 0C038C1B */ jal gravity_use_fall_parms
/* 3234A4 802BF954 00000000 */ nop
.L802BF958:
/* 3234A8 802BF958 3C03802C */ lui $v1, 0x802c
/* 3234AC 802BF95C 2463FF00 */ addiu $v1, $v1, -0x100
/* 3234B0 802BF960 8C620000 */ lw $v0, ($v1)
/* 3234B4 802BF964 24420001 */ addiu $v0, $v0, 1
/* 3234B8 802BF968 080AFE78 */ j .L802BF9E0
/* 3234BC 802BF96C AC620000 */ sw $v0, ($v1)
.L802BF970:
/* 3234C0 802BF970 2402FEFF */ addiu $v0, $zero, -0x101
/* 3234C4 802BF974 3C05802C */ lui $a1, 0x802c
/* 3234C8 802BF978 24A5FF04 */ addiu $a1, $a1, -0xfc
/* 3234CC 802BF97C A2600003 */ sb $zero, 3($s3)
/* 3234D0 802BF980 A2600000 */ sb $zero, ($s3)
/* 3234D4 802BF984 8E430000 */ lw $v1, ($s2)
/* 3234D8 802BF988 8CA40000 */ lw $a0, ($a1)
/* 3234DC 802BF98C 00621824 */ and $v1, $v1, $v0
/* 3234E0 802BF990 10800003 */ beqz $a0, .L802BF9A0
/* 3234E4 802BF994 AE430000 */ sw $v1, ($s2)
/* 3234E8 802BF998 0C038069 */ jal enable_player_input
/* 3234EC 802BF99C ACA00000 */ sw $zero, ($a1)
.L802BF9A0:
/* 3234F0 802BF9A0 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 3234F4 802BF9A4 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 3234F8 802BF9A8 A040007D */ sb $zero, 0x7d($v0)
/* 3234FC 802BF9AC 3C01802C */ lui $at, 0x802c
/* 323500 802BF9B0 AC20FF0C */ sw $zero, -0xf4($at)
/* 323504 802BF9B4 0C03BD17 */ jal clear_partner_move_history
/* 323508 802BF9B8 0200202D */ daddu $a0, $s0, $zero
/* 32350C 802BF9BC 8E220000 */ lw $v0, ($s1)
/* 323510 802BF9C0 24420001 */ addiu $v0, $v0, 1
/* 323514 802BF9C4 080AFE78 */ j .L802BF9E0
/* 323518 802BF9C8 AE220000 */ sw $v0, ($s1)
.L802BF9CC:
/* 32351C 802BF9CC 0C03BA6E */ jal func_800EE9B8
/* 323520 802BF9D0 0200202D */ daddu $a0, $s0, $zero
/* 323524 802BF9D4 0040182D */ daddu $v1, $v0, $zero
/* 323528 802BF9D8 14600002 */ bnez $v1, .L802BF9E4
/* 32352C 802BF9DC 24020001 */ addiu $v0, $zero, 1
.L802BF9E0:
/* 323530 802BF9E0 0000102D */ daddu $v0, $zero, $zero
.L802BF9E4:
/* 323534 802BF9E4 8FBF0040 */ lw $ra, 0x40($sp)
/* 323538 802BF9E8 8FB3003C */ lw $s3, 0x3c($sp)
/* 32353C 802BF9EC 8FB20038 */ lw $s2, 0x38($sp)
/* 323540 802BF9F0 8FB10034 */ lw $s1, 0x34($sp)
/* 323544 802BF9F4 8FB00030 */ lw $s0, 0x30($sp)
/* 323548 802BF9F8 03E00008 */ jr $ra
/* 32354C 802BF9FC 27BD0048 */ addiu $sp, $sp, 0x48

View File

@ -0,0 +1,48 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFA00
/* 323550 802BFA00 3C02802C */ lui $v0, 0x802c
/* 323554 802BFA04 8C42FF0C */ lw $v0, -0xf4($v0)
/* 323558 802BFA08 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 32355C 802BFA0C AFB00010 */ sw $s0, 0x10($sp)
/* 323560 802BFA10 0080802D */ daddu $s0, $a0, $zero
/* 323564 802BFA14 AFB10014 */ sw $s1, 0x14($sp)
/* 323568 802BFA18 3C118011 */ lui $s1, %hi(D_8010EBB0)
/* 32356C 802BFA1C 2631EBB0 */ addiu $s1, $s1, %lo(D_8010EBB0)
/* 323570 802BFA20 10400018 */ beqz $v0, .L802BFA84
/* 323574 802BFA24 AFBF0018 */ sw $ra, 0x18($sp)
/* 323578 802BFA28 26230018 */ addiu $v1, $s1, 0x18
/* 32357C 802BFA2C 0200102D */ daddu $v0, $s0, $zero
/* 323580 802BFA30 26040340 */ addiu $a0, $s0, 0x340
.L802BFA34:
/* 323584 802BFA34 8C450000 */ lw $a1, ($v0)
/* 323588 802BFA38 8C460004 */ lw $a2, 4($v0)
/* 32358C 802BFA3C 8C470008 */ lw $a3, 8($v0)
/* 323590 802BFA40 8C48000C */ lw $t0, 0xc($v0)
/* 323594 802BFA44 AC650000 */ sw $a1, ($v1)
/* 323598 802BFA48 AC660004 */ sw $a2, 4($v1)
/* 32359C 802BFA4C AC670008 */ sw $a3, 8($v1)
/* 3235A0 802BFA50 AC68000C */ sw $t0, 0xc($v1)
/* 3235A4 802BFA54 24420010 */ addiu $v0, $v0, 0x10
/* 3235A8 802BFA58 1444FFF6 */ bne $v0, $a0, .L802BFA34
/* 3235AC 802BFA5C 24630010 */ addiu $v1, $v1, 0x10
/* 3235B0 802BFA60 24020001 */ addiu $v0, $zero, 1
/* 3235B4 802BFA64 0C038050 */ jal enable_player_static_collisions
/* 3235B8 802BFA68 A2220001 */ sb $v0, 1($s1)
/* 3235BC 802BFA6C 0C038069 */ jal enable_player_input
/* 3235C0 802BFA70 00000000 */ nop
/* 3235C4 802BFA74 0C039769 */ jal set_action_state
/* 3235C8 802BFA78 0000202D */ daddu $a0, $zero, $zero
/* 3235CC 802BFA7C 0C03BD17 */ jal clear_partner_move_history
/* 3235D0 802BFA80 0200202D */ daddu $a0, $s0, $zero
.L802BFA84:
/* 3235D4 802BFA84 24020008 */ addiu $v0, $zero, 8
/* 3235D8 802BFA88 A2220003 */ sb $v0, 3($s1)
/* 3235DC 802BFA8C 8FBF0018 */ lw $ra, 0x18($sp)
/* 3235E0 802BFA90 8FB10014 */ lw $s1, 0x14($sp)
/* 3235E4 802BFA94 8FB00010 */ lw $s0, 0x10($sp)
/* 3235E8 802BFA98 3C01802C */ lui $at, 0x802c
/* 3235EC 802BFA9C AC20FF18 */ sw $zero, -0xe8($at)
/* 3235F0 802BFAA0 03E00008 */ jr $ra
/* 3235F4 802BFAA4 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,45 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFAA8
/* 3235F8 802BFAA8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 3235FC 802BFAAC AFB00010 */ sw $s0, 0x10($sp)
/* 323600 802BFAB0 3C108011 */ lui $s0, %hi(D_8010EBB0)
/* 323604 802BFAB4 2610EBB0 */ addiu $s0, $s0, %lo(D_8010EBB0)
/* 323608 802BFAB8 AFBF0014 */ sw $ra, 0x14($sp)
/* 32360C 802BFABC 82020001 */ lb $v0, 1($s0)
/* 323610 802BFAC0 1040001C */ beqz $v0, .L802BFB34
/* 323614 802BFAC4 00000000 */ nop
/* 323618 802BFAC8 3C02802C */ lui $v0, 0x802c
/* 32361C 802BFACC 8C42FF0C */ lw $v0, -0xf4($v0)
/* 323620 802BFAD0 10400018 */ beqz $v0, .L802BFB34
/* 323624 802BFAD4 26020018 */ addiu $v0, $s0, 0x18
/* 323628 802BFAD8 26030358 */ addiu $v1, $s0, 0x358
.L802BFADC:
/* 32362C 802BFADC 8C450000 */ lw $a1, ($v0)
/* 323630 802BFAE0 8C460004 */ lw $a2, 4($v0)
/* 323634 802BFAE4 8C470008 */ lw $a3, 8($v0)
/* 323638 802BFAE8 8C48000C */ lw $t0, 0xc($v0)
/* 32363C 802BFAEC AC850000 */ sw $a1, ($a0)
/* 323640 802BFAF0 AC860004 */ sw $a2, 4($a0)
/* 323644 802BFAF4 AC870008 */ sw $a3, 8($a0)
/* 323648 802BFAF8 AC88000C */ sw $t0, 0xc($a0)
/* 32364C 802BFAFC 24420010 */ addiu $v0, $v0, 0x10
/* 323650 802BFB00 1443FFF6 */ bne $v0, $v1, .L802BFADC
/* 323654 802BFB04 24840010 */ addiu $a0, $a0, 0x10
/* 323658 802BFB08 24020001 */ addiu $v0, $zero, 1
/* 32365C 802BFB0C 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 323660 802BFB10 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 323664 802BFB14 24040021 */ addiu $a0, $zero, 0x21
/* 323668 802BFB18 0C039769 */ jal set_action_state
/* 32366C 802BFB1C A062007D */ sb $v0, 0x7d($v1)
/* 323670 802BFB20 A2000003 */ sb $zero, 3($s0)
/* 323674 802BFB24 0C03805E */ jal disable_player_input
/* 323678 802BFB28 A2000000 */ sb $zero, ($s0)
/* 32367C 802BFB2C 0C03ACC5 */ jal partner_use_ability
/* 323680 802BFB30 00000000 */ nop
.L802BFB34:
/* 323684 802BFB34 8FBF0014 */ lw $ra, 0x14($sp)
/* 323688 802BFB38 8FB00010 */ lw $s0, 0x10($sp)
/* 32368C 802BFB3C 03E00008 */ jr $ra
/* 323690 802BFB40 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,27 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFB44
/* 323694 802BFB44 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 323698 802BFB48 3C058011 */ lui $a1, %hi(gPlayerStatus)
/* 32369C 802BFB4C 24A5EFC8 */ addiu $a1, $a1, %lo(gPlayerStatus)
/* 3236A0 802BFB50 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 3236A4 802BFB54 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 3236A8 802BFB58 44066000 */ mfc1 $a2, $f12
/* 3236AC 802BFB5C 24A40028 */ addiu $a0, $a1, 0x28
/* 3236B0 802BFB60 AFBF0010 */ sw $ra, 0x10($sp)
/* 3236B4 802BFB64 00031080 */ sll $v0, $v1, 2
/* 3236B8 802BFB68 00431021 */ addu $v0, $v0, $v1
/* 3236BC 802BFB6C 00021080 */ sll $v0, $v0, 2
/* 3236C0 802BFB70 00431023 */ subu $v0, $v0, $v1
/* 3236C4 802BFB74 000218C0 */ sll $v1, $v0, 3
/* 3236C8 802BFB78 00431021 */ addu $v0, $v0, $v1
/* 3236CC 802BFB7C 000210C0 */ sll $v0, $v0, 3
/* 3236D0 802BFB80 3C07800B */ lui $a3, 0x800b
/* 3236D4 802BFB84 00E23821 */ addu $a3, $a3, $v0
/* 3236D8 802BFB88 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 3236DC 802BFB8C 0C00A7E7 */ jal add_vec2D_polar
/* 3236E0 802BFB90 24A50030 */ addiu $a1, $a1, 0x30
/* 3236E4 802BFB94 8FBF0010 */ lw $ra, 0x10($sp)
/* 3236E8 802BFB98 03E00008 */ jr $ra
/* 3236EC 802BFB9C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,190 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BFBA0
/* 3236F0 802BFBA0 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 3236F4 802BFBA4 AFB3001C */ sw $s3, 0x1c($sp)
/* 3236F8 802BFBA8 0080982D */ daddu $s3, $a0, $zero
/* 3236FC 802BFBAC AFB00010 */ sw $s0, 0x10($sp)
/* 323700 802BFBB0 00A0802D */ daddu $s0, $a1, $zero
/* 323704 802BFBB4 2404FFFC */ addiu $a0, $zero, -4
/* 323708 802BFBB8 AFBF0024 */ sw $ra, 0x24($sp)
/* 32370C 802BFBBC AFB40020 */ sw $s4, 0x20($sp)
/* 323710 802BFBC0 AFB20018 */ sw $s2, 0x18($sp)
/* 323714 802BFBC4 0C00EABB */ jal get_npc_unsafe
/* 323718 802BFBC8 AFB10014 */ sw $s1, 0x14($sp)
/* 32371C 802BFBCC 3C148011 */ lui $s4, %hi(D_8010EBB0)
/* 323720 802BFBD0 2694EBB0 */ addiu $s4, $s4, %lo(D_8010EBB0)
/* 323724 802BFBD4 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 323728 802BFBD8 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 32372C 802BFBDC 12000002 */ beqz $s0, .L802BFBE8
/* 323730 802BFBE0 0040882D */ daddu $s1, $v0, $zero
/* 323734 802BFBE4 AE600070 */ sw $zero, 0x70($s3)
.L802BFBE8:
/* 323738 802BFBE8 8E700070 */ lw $s0, 0x70($s3)
/* 32373C 802BFBEC 12000005 */ beqz $s0, .L802BFC04
/* 323740 802BFBF0 24020001 */ addiu $v0, $zero, 1
/* 323744 802BFBF4 1202006A */ beq $s0, $v0, .L802BFDA0
/* 323748 802BFBF8 0000102D */ daddu $v0, $zero, $zero
/* 32374C 802BFBFC 080AFF8D */ j .L802BFE34
/* 323750 802BFC00 00000000 */ nop
.L802BFC04:
/* 323754 802BFC04 8E6200B4 */ lw $v0, 0xb4($s3)
/* 323758 802BFC08 1440000F */ bnez $v0, .L802BFC48
/* 32375C 802BFC0C 00000000 */ nop
/* 323760 802BFC10 C6400028 */ lwc1 $f0, 0x28($s2)
/* 323764 802BFC14 3C014120 */ lui $at, 0x4120
/* 323768 802BFC18 44811000 */ mtc1 $at, $f2
/* 32376C 802BFC1C E6200038 */ swc1 $f0, 0x38($s1)
/* 323770 802BFC20 E6200060 */ swc1 $f0, 0x60($s1)
/* 323774 802BFC24 C620003C */ lwc1 $f0, 0x3c($s1)
/* 323778 802BFC28 C6440030 */ lwc1 $f4, 0x30($s2)
/* 32377C 802BFC2C 46020000 */ add.s $f0, $f0, $f2
/* 323780 802BFC30 E6240040 */ swc1 $f4, 0x40($s1)
/* 323784 802BFC34 E6240068 */ swc1 $f4, 0x68($s1)
/* 323788 802BFC38 0C03ADF3 */ jal partner_kill_ability_script
/* 32378C 802BFC3C E640002C */ swc1 $f0, 0x2c($s2)
/* 323790 802BFC40 080AFF25 */ j .L802BFC94
/* 323794 802BFC44 00000000 */ nop
.L802BFC48:
/* 323798 802BFC48 0C039769 */ jal set_action_state
/* 32379C 802BFC4C 24040021 */ addiu $a0, $zero, 0x21
/* 3237A0 802BFC50 0C038045 */ jal disable_player_static_collisions
/* 3237A4 802BFC54 00000000 */ nop
/* 3237A8 802BFC58 0C03805E */ jal disable_player_input
/* 3237AC 802BFC5C 00000000 */ nop
/* 3237B0 802BFC60 C6400028 */ lwc1 $f0, 0x28($s2)
/* 3237B4 802BFC64 3C014120 */ lui $at, 0x4120
/* 3237B8 802BFC68 44811000 */ mtc1 $at, $f2
/* 3237BC 802BFC6C E6200038 */ swc1 $f0, 0x38($s1)
/* 3237C0 802BFC70 E6200060 */ swc1 $f0, 0x60($s1)
/* 3237C4 802BFC74 C640002C */ lwc1 $f0, 0x2c($s2)
/* 3237C8 802BFC78 E620003C */ swc1 $f0, 0x3c($s1)
/* 3237CC 802BFC7C E6200064 */ swc1 $f0, 0x64($s1)
/* 3237D0 802BFC80 C6440030 */ lwc1 $f4, 0x30($s2)
/* 3237D4 802BFC84 46020000 */ add.s $f0, $f0, $f2
/* 3237D8 802BFC88 E6240040 */ swc1 $f4, 0x40($s1)
/* 3237DC 802BFC8C E6240068 */ swc1 $f4, 0x68($s1)
/* 3237E0 802BFC90 E640002C */ swc1 $f0, 0x2c($s2)
.L802BFC94:
/* 3237E4 802BFC94 C6660088 */ lwc1 $f6, 0x88($s3)
/* 3237E8 802BFC98 468031A0 */ cvt.s.w $f6, $f6
/* 3237EC 802BFC9C 44063000 */ mfc1 $a2, $f6
/* 3237F0 802BFCA0 C6660090 */ lwc1 $f6, 0x90($s3)
/* 3237F4 802BFCA4 468031A0 */ cvt.s.w $f6, $f6
/* 3237F8 802BFCA8 8E620094 */ lw $v0, 0x94($s3)
/* 3237FC 802BFCAC 44073000 */ mfc1 $a3, $f6
/* 323800 802BFCB0 AE620074 */ sw $v0, 0x74($s3)
/* 323804 802BFCB4 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 323808 802BFCB8 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 32380C 802BFCBC 0C00A720 */ jal atan2
/* 323810 802BFCC0 26700098 */ addiu $s0, $s3, 0x98
/* 323814 802BFCC4 46000086 */ mov.s $f2, $f0
/* 323818 802BFCC8 E622000C */ swc1 $f2, 0xc($s1)
/* 32381C 802BFCCC 8E6200B4 */ lw $v0, 0xb4($s3)
/* 323820 802BFCD0 10400014 */ beqz $v0, .L802BFD24
/* 323824 802BFCD4 24040295 */ addiu $a0, $zero, 0x295
/* 323828 802BFCD8 44800000 */ mtc1 $zero, $f0
/* 32382C 802BFCDC 00000000 */ nop
/* 323830 802BFCE0 4602003E */ c.le.s $f0, $f2
/* 323834 802BFCE4 00000000 */ nop
/* 323838 802BFCE8 4500000F */ bc1f .L802BFD28
/* 32383C 802BFCEC 0000282D */ daddu $a1, $zero, $zero
/* 323840 802BFCF0 3C014334 */ lui $at, 0x4334
/* 323844 802BFCF4 44810000 */ mtc1 $at, $f0
/* 323848 802BFCF8 00000000 */ nop
/* 32384C 802BFCFC 4600103E */ c.le.s $f2, $f0
/* 323850 802BFD00 00000000 */ nop
/* 323854 802BFD04 45000008 */ bc1f .L802BFD28
/* 323858 802BFD08 00000000 */ nop
/* 32385C 802BFD0C 4600118D */ trunc.w.s $f6, $f2
/* 323860 802BFD10 44023000 */ mfc1 $v0, $f6
/* 323864 802BFD14 00000000 */ nop
/* 323868 802BFD18 A622008A */ sh $v0, 0x8a($s1)
/* 32386C 802BFD1C 24020001 */ addiu $v0, $zero, 1
/* 323870 802BFD20 A6220088 */ sh $v0, 0x88($s1)
.L802BFD24:
/* 323874 802BFD24 0000282D */ daddu $a1, $zero, $zero
.L802BFD28:
/* 323878 802BFD28 0C052742 */ jal play_sound_at_npc
/* 32387C 802BFD2C 2406FFFC */ addiu $a2, $zero, -4
/* 323880 802BFD30 3C020008 */ lui $v0, 8
/* 323884 802BFD34 3C014000 */ lui $at, 0x4000
/* 323888 802BFD38 44816000 */ mtc1 $at, $f12
/* 32388C 802BFD3C 3442000E */ ori $v0, $v0, 0xe
/* 323890 802BFD40 AE4200B8 */ sw $v0, 0xb8($s2)
/* 323894 802BFD44 8E420000 */ lw $v0, ($s2)
/* 323898 802BFD48 3C031000 */ lui $v1, 0x1000
/* 32389C 802BFD4C A64000BC */ sh $zero, 0xbc($s2)
/* 3238A0 802BFD50 00431025 */ or $v0, $v0, $v1
/* 3238A4 802BFD54 0C0AFED1 */ jal func_802BFB44
/* 3238A8 802BFD58 AE420000 */ sw $v0, ($s2)
/* 3238AC 802BFD5C 3C038007 */ lui $v1, %hi(gGameStatusPtr)
/* 3238B0 802BFD60 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1)
/* 3238B4 802BFD64 24020001 */ addiu $v0, $zero, 1
/* 3238B8 802BFD68 A062007D */ sb $v0, 0x7d($v1)
/* 3238BC 802BFD6C 8E220000 */ lw $v0, ($s1)
/* 3238C0 802BFD70 34420100 */ ori $v0, $v0, 0x100
/* 3238C4 802BFD74 AE220000 */ sw $v0, ($s1)
/* 3238C8 802BFD78 C6000000 */ lwc1 $f0, ($s0)
/* 3238CC 802BFD7C 24020001 */ addiu $v0, $zero, 1
/* 3238D0 802BFD80 AE200014 */ sw $zero, 0x14($s1)
/* 3238D4 802BFD84 3C01802C */ lui $at, 0x802c
/* 3238D8 802BFD88 AC20FF10 */ sw $zero, -0xf0($at)
/* 3238DC 802BFD8C 3C01802C */ lui $at, 0x802c
/* 3238E0 802BFD90 AC20FF18 */ sw $zero, -0xe8($at)
/* 3238E4 802BFD94 E6200018 */ swc1 $f0, 0x18($s1)
/* 3238E8 802BFD98 080AFF8C */ j .L802BFE30
/* 3238EC 802BFD9C AE620070 */ sw $v0, 0x70($s3)
.L802BFDA0:
/* 3238F0 802BFDA0 8E250018 */ lw $a1, 0x18($s1)
/* 3238F4 802BFDA4 8E26000C */ lw $a2, 0xc($s1)
/* 3238F8 802BFDA8 0C00EA95 */ jal npc_move_heading
/* 3238FC 802BFDAC 0220202D */ daddu $a0, $s1, $zero
/* 323900 802BFDB0 C6200038 */ lwc1 $f0, 0x38($s1)
/* 323904 802BFDB4 3C014120 */ lui $at, 0x4120
/* 323908 802BFDB8 44811000 */ mtc1 $at, $f2
/* 32390C 802BFDBC E6400028 */ swc1 $f0, 0x28($s2)
/* 323910 802BFDC0 C620003C */ lwc1 $f0, 0x3c($s1)
/* 323914 802BFDC4 46020000 */ add.s $f0, $f0, $f2
/* 323918 802BFDC8 3C014000 */ lui $at, 0x4000
/* 32391C 802BFDCC 44816000 */ mtc1 $at, $f12
/* 323920 802BFDD0 E640002C */ swc1 $f0, 0x2c($s2)
/* 323924 802BFDD4 C6200040 */ lwc1 $f0, 0x40($s1)
/* 323928 802BFDD8 E6400030 */ swc1 $f0, 0x30($s2)
/* 32392C 802BFDDC C620000C */ lwc1 $f0, 0xc($s1)
/* 323930 802BFDE0 0C0AFED1 */ jal func_802BFB44
/* 323934 802BFDE4 E6400080 */ swc1 $f0, 0x80($s2)
/* 323938 802BFDE8 8E620074 */ lw $v0, 0x74($s3)
/* 32393C 802BFDEC 2442FFFF */ addiu $v0, $v0, -1
/* 323940 802BFDF0 1440000F */ bnez $v0, .L802BFE30
/* 323944 802BFDF4 AE620074 */ sw $v0, 0x74($s3)
/* 323948 802BFDF8 8E6200B4 */ lw $v0, 0xb4($s3)
/* 32394C 802BFDFC 1040000A */ beqz $v0, .L802BFE28
/* 323950 802BFE00 24040021 */ addiu $a0, $zero, 0x21
/* 323954 802BFE04 0C039769 */ jal set_action_state
/* 323958 802BFE08 A2900001 */ sb $s0, 1($s4)
/* 32395C 802BFE0C A2800003 */ sb $zero, 3($s4)
/* 323960 802BFE10 0C03ACC5 */ jal partner_use_ability
/* 323964 802BFE14 A2800000 */ sb $zero, ($s4)
/* 323968 802BFE18 0C038050 */ jal enable_player_static_collisions
/* 32396C 802BFE1C 00000000 */ nop
/* 323970 802BFE20 0C038069 */ jal enable_player_input
/* 323974 802BFE24 00000000 */ nop
.L802BFE28:
/* 323978 802BFE28 080AFF8D */ j .L802BFE34
/* 32397C 802BFE2C 24020002 */ addiu $v0, $zero, 2
.L802BFE30:
/* 323980 802BFE30 0000102D */ daddu $v0, $zero, $zero
.L802BFE34:
/* 323984 802BFE34 8FBF0024 */ lw $ra, 0x24($sp)
/* 323988 802BFE38 8FB40020 */ lw $s4, 0x20($sp)
/* 32398C 802BFE3C 8FB3001C */ lw $s3, 0x1c($sp)
/* 323990 802BFE40 8FB20018 */ lw $s2, 0x18($sp)
/* 323994 802BFE44 8FB10014 */ lw $s1, 0x14($sp)
/* 323998 802BFE48 8FB00010 */ lw $s0, 0x10($sp)
/* 32399C 802BFE4C 03E00008 */ jr $ra
/* 3239A0 802BFE50 27BD0028 */ addiu $sp, $sp, 0x28
/* 3239A4 802BFE54 00000000 */ nop
/* 3239A8 802BFE58 00000000 */ nop
/* 3239AC 802BFE5C 00000000 */ nop

View File

@ -0,0 +1,16 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_323A50
/* 323A50 802BD100 2402001A */ addiu $v0, $zero, 0x1a
/* 323A54 802BD104 A48200A8 */ sh $v0, 0xa8($a0)
/* 323A58 802BD108 24020018 */ addiu $v0, $zero, 0x18
/* 323A5C 802BD10C A48200A6 */ sh $v0, 0xa6($a0)
/* 323A60 802BD110 24020011 */ addiu $v0, $zero, 0x11
/* 323A64 802BD114 A08200AA */ sb $v0, 0xaa($a0)
/* 323A68 802BD118 3C01802C */ lui $at, 0x802c
/* 323A6C 802BD11C AC20E0C4 */ sw $zero, -0x1f3c($at)
/* 323A70 802BD120 3C01802C */ lui $at, 0x802c
/* 323A74 802BD124 AC20E0C0 */ sw $zero, -0x1f40($at)
/* 323A78 802BD128 03E00008 */ jr $ra
/* 323A7C 802BD12C 00000000 */ nop

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD130
/* 323A80 802BD130 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 323A84 802BD134 AFBF0014 */ sw $ra, 0x14($sp)
/* 323A88 802BD138 AFB00010 */ sw $s0, 0x10($sp)
/* 323A8C 802BD13C 10A00003 */ beqz $a1, .L802BD14C
/* 323A90 802BD140 8C90014C */ lw $s0, 0x14c($a0)
/* 323A94 802BD144 0C03BB31 */ jal func_800EECC4
/* 323A98 802BD148 0200202D */ daddu $a0, $s0, $zero
.L802BD14C:
/* 323A9C 802BD14C 0C03BB3A */ jal func_800EECE8
/* 323AA0 802BD150 0200202D */ daddu $a0, $s0, $zero
/* 323AA4 802BD154 8FBF0014 */ lw $ra, 0x14($sp)
/* 323AA8 802BD158 8FB00010 */ lw $s0, 0x10($sp)
/* 323AAC 802BD15C 0002102B */ sltu $v0, $zero, $v0
/* 323AB0 802BD160 03E00008 */ jr $ra
/* 323AB4 802BD164 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,247 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD168
/* 323AB8 802BD168 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 323ABC 802BD16C AFB00018 */ sw $s0, 0x18($sp)
/* 323AC0 802BD170 3C108011 */ lui $s0, %hi(gPlayerData)
/* 323AC4 802BD174 2610F290 */ addiu $s0, $s0, %lo(gPlayerData)
/* 323AC8 802BD178 AFBF0028 */ sw $ra, 0x28($sp)
/* 323ACC 802BD17C AFB30024 */ sw $s3, 0x24($sp)
/* 323AD0 802BD180 AFB20020 */ sw $s2, 0x20($sp)
/* 323AD4 802BD184 AFB1001C */ sw $s1, 0x1c($sp)
/* 323AD8 802BD188 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 323ADC 802BD18C 8C91014C */ lw $s1, 0x14c($a0)
/* 323AE0 802BD190 10A00009 */ beqz $a1, .L802BD1B8
/* 323AE4 802BD194 0220202D */ daddu $a0, $s1, $zero
/* 323AE8 802BD198 0C03B4C4 */ jal enable_partner_flying
/* 323AEC 802BD19C 24050001 */ addiu $a1, $zero, 1
/* 323AF0 802BD1A0 3C04802C */ lui $a0, 0x802c
/* 323AF4 802BD1A4 8C84DFFC */ lw $a0, -0x2004($a0)
/* 323AF8 802BD1A8 0C00A580 */ jal mem_clear
/* 323AFC 802BD1AC 2405001C */ addiu $a1, $zero, 0x1c
/* 323B00 802BD1B0 3C018011 */ lui $at, 0x8011
/* 323B04 802BD1B4 AC20C954 */ sw $zero, -0x36ac($at)
.L802BD1B8:
/* 323B08 802BD1B8 3C138011 */ lui $s3, 0x8011
/* 323B0C 802BD1BC 2673C954 */ addiu $s3, $s3, -0x36ac
/* 323B10 802BD1C0 8E020318 */ lw $v0, 0x318($s0)
/* 323B14 802BD1C4 8E720000 */ lw $s2, ($s3)
/* 323B18 802BD1C8 24420001 */ addiu $v0, $v0, 1
/* 323B1C 802BD1CC 16400007 */ bnez $s2, .L802BD1EC
/* 323B20 802BD1D0 AE020318 */ sw $v0, 0x318($s0)
/* 323B24 802BD1D4 0C03B52E */ jal update_player_move_history
/* 323B28 802BD1D8 0220202D */ daddu $a0, $s1, $zero
/* 323B2C 802BD1DC 0C03B574 */ jal func_800ED5D0
/* 323B30 802BD1E0 0220202D */ daddu $a0, $s1, $zero
/* 323B34 802BD1E4 080AF537 */ j .L802BD4DC
/* 323B38 802BD1E8 0000102D */ daddu $v0, $zero, $zero
.L802BD1EC:
/* 323B3C 802BD1EC 3C10802C */ lui $s0, 0x802c
/* 323B40 802BD1F0 2610DFFC */ addiu $s0, $s0, -0x2004
/* 323B44 802BD1F4 8E040000 */ lw $a0, ($s0)
/* 323B48 802BD1F8 8C830004 */ lw $v1, 4($a0)
/* 323B4C 802BD1FC 24050001 */ addiu $a1, $zero, 1
/* 323B50 802BD200 10650030 */ beq $v1, $a1, .L802BD2C4
/* 323B54 802BD204 28620002 */ slti $v0, $v1, 2
/* 323B58 802BD208 10400005 */ beqz $v0, .L802BD220
/* 323B5C 802BD20C 24020002 */ addiu $v0, $zero, 2
/* 323B60 802BD210 10600009 */ beqz $v1, .L802BD238
/* 323B64 802BD214 0000102D */ daddu $v0, $zero, $zero
/* 323B68 802BD218 080AF537 */ j .L802BD4DC
/* 323B6C 802BD21C 00000000 */ nop
.L802BD220:
/* 323B70 802BD220 1062009A */ beq $v1, $v0, .L802BD48C
/* 323B74 802BD224 24020003 */ addiu $v0, $zero, 3
/* 323B78 802BD228 106200A0 */ beq $v1, $v0, .L802BD4AC
/* 323B7C 802BD22C 0000102D */ daddu $v0, $zero, $zero
/* 323B80 802BD230 080AF537 */ j .L802BD4DC
/* 323B84 802BD234 00000000 */ nop
.L802BD238:
/* 323B88 802BD238 AC850004 */ sw $a1, 4($a0)
/* 323B8C 802BD23C 8E220000 */ lw $v0, ($s1)
/* 323B90 802BD240 AC820008 */ sw $v0, 8($a0)
/* 323B94 802BD244 C62C0038 */ lwc1 $f12, 0x38($s1)
/* 323B98 802BD248 C62E0040 */ lwc1 $f14, 0x40($s1)
/* 323B9C 802BD24C 8E460048 */ lw $a2, 0x48($s2)
/* 323BA0 802BD250 0C00A7B5 */ jal dist2D
/* 323BA4 802BD254 8E470050 */ lw $a3, 0x50($s2)
/* 323BA8 802BD258 8E020000 */ lw $v0, ($s0)
/* 323BAC 802BD25C 46000005 */ abs.s $f0, $f0
/* 323BB0 802BD260 E440000C */ swc1 $f0, 0xc($v0)
/* 323BB4 802BD264 C64C0048 */ lwc1 $f12, 0x48($s2)
/* 323BB8 802BD268 C64E0050 */ lwc1 $f14, 0x50($s2)
/* 323BBC 802BD26C 8E260038 */ lw $a2, 0x38($s1)
/* 323BC0 802BD270 0C00A720 */ jal atan2
/* 323BC4 802BD274 8E270040 */ lw $a3, 0x40($s1)
/* 323BC8 802BD278 3C040004 */ lui $a0, 4
/* 323BCC 802BD27C 24020078 */ addiu $v0, $zero, 0x78
/* 323BD0 802BD280 8E030000 */ lw $v1, ($s0)
/* 323BD4 802BD284 3C0140C0 */ lui $at, 0x40c0
/* 323BD8 802BD288 44811000 */ mtc1 $at, $f2
/* 323BDC 802BD28C 3C014248 */ lui $at, 0x4248
/* 323BE0 802BD290 44812000 */ mtc1 $at, $f4
/* 323BE4 802BD294 34840148 */ ori $a0, $a0, 0x148
/* 323BE8 802BD298 E4600010 */ swc1 $f0, 0x10($v1)
/* 323BEC 802BD29C E4620014 */ swc1 $f2, 0x14($v1)
/* 323BF0 802BD2A0 E4640018 */ swc1 $f4, 0x18($v1)
/* 323BF4 802BD2A4 AC620000 */ sw $v0, ($v1)
/* 323BF8 802BD2A8 8E220000 */ lw $v0, ($s1)
/* 323BFC 802BD2AC 2403FDFF */ addiu $v1, $zero, -0x201
/* 323C00 802BD2B0 00441025 */ or $v0, $v0, $a0
/* 323C04 802BD2B4 00431024 */ and $v0, $v0, $v1
/* 323C08 802BD2B8 AE220000 */ sw $v0, ($s1)
/* 323C0C 802BD2BC 3C10802C */ lui $s0, 0x802c
/* 323C10 802BD2C0 2610DFFC */ addiu $s0, $s0, -0x2004
.L802BD2C4:
/* 323C14 802BD2C4 8E020000 */ lw $v0, ($s0)
/* 323C18 802BD2C8 3C0140C9 */ lui $at, 0x40c9
/* 323C1C 802BD2CC 34210FD0 */ ori $at, $at, 0xfd0
/* 323C20 802BD2D0 44810000 */ mtc1 $at, $f0
/* 323C24 802BD2D4 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 323C28 802BD2D8 46006302 */ mul.s $f12, $f12, $f0
/* 323C2C 802BD2DC 00000000 */ nop
/* 323C30 802BD2E0 27A50010 */ addiu $a1, $sp, 0x10
/* 323C34 802BD2E4 3C0143B4 */ lui $at, 0x43b4
/* 323C38 802BD2E8 44810000 */ mtc1 $at, $f0
/* 323C3C 802BD2EC 27A60014 */ addiu $a2, $sp, 0x14
/* 323C40 802BD2F0 0C00A82D */ jal sin_cos_rad
/* 323C44 802BD2F4 46006303 */ div.s $f12, $f12, $f0
/* 323C48 802BD2F8 8E020000 */ lw $v0, ($s0)
/* 323C4C 802BD2FC C7A20010 */ lwc1 $f2, 0x10($sp)
/* 323C50 802BD300 C440000C */ lwc1 $f0, 0xc($v0)
/* 323C54 802BD304 46001082 */ mul.s $f2, $f2, $f0
/* 323C58 802BD308 00000000 */ nop
/* 323C5C 802BD30C C6400048 */ lwc1 $f0, 0x48($s2)
/* 323C60 802BD310 46020000 */ add.s $f0, $f0, $f2
/* 323C64 802BD314 E6200038 */ swc1 $f0, 0x38($s1)
/* 323C68 802BD318 C7A20014 */ lwc1 $f2, 0x14($sp)
/* 323C6C 802BD31C C440000C */ lwc1 $f0, 0xc($v0)
/* 323C70 802BD320 46001082 */ mul.s $f2, $f2, $f0
/* 323C74 802BD324 00000000 */ nop
/* 323C78 802BD328 C6400050 */ lwc1 $f0, 0x50($s2)
/* 323C7C 802BD32C 46020001 */ sub.s $f0, $f0, $f2
/* 323C80 802BD330 E6200040 */ swc1 $f0, 0x40($s1)
/* 323C84 802BD334 C4400010 */ lwc1 $f0, 0x10($v0)
/* 323C88 802BD338 C44C0014 */ lwc1 $f12, 0x14($v0)
/* 323C8C 802BD33C 0C00A6C9 */ jal clamp_angle
/* 323C90 802BD340 460C0301 */ sub.s $f12, $f0, $f12
/* 323C94 802BD344 8E100000 */ lw $s0, ($s0)
/* 323C98 802BD348 3C0141A0 */ lui $at, 0x41a0
/* 323C9C 802BD34C 44811000 */ mtc1 $at, $f2
/* 323CA0 802BD350 C604000C */ lwc1 $f4, 0xc($s0)
/* 323CA4 802BD354 4604103C */ c.lt.s $f2, $f4
/* 323CA8 802BD358 00000000 */ nop
/* 323CAC 802BD35C 45000005 */ bc1f .L802BD374
/* 323CB0 802BD360 E6000010 */ swc1 $f0, 0x10($s0)
/* 323CB4 802BD364 3C013F80 */ lui $at, 0x3f80
/* 323CB8 802BD368 44810000 */ mtc1 $at, $f0
/* 323CBC 802BD36C 080AF4E8 */ j .L802BD3A0
/* 323CC0 802BD370 46002001 */ sub.s $f0, $f4, $f0
.L802BD374:
/* 323CC4 802BD374 3C014198 */ lui $at, 0x4198
/* 323CC8 802BD378 44810000 */ mtc1 $at, $f0
/* 323CCC 802BD37C 00000000 */ nop
/* 323CD0 802BD380 4600203C */ c.lt.s $f4, $f0
/* 323CD4 802BD384 00000000 */ nop
/* 323CD8 802BD388 45000006 */ bc1f .L802BD3A4
/* 323CDC 802BD38C 00000000 */ nop
/* 323CE0 802BD390 3C013F80 */ lui $at, 0x3f80
/* 323CE4 802BD394 44810000 */ mtc1 $at, $f0
/* 323CE8 802BD398 00000000 */ nop
/* 323CEC 802BD39C 46002000 */ add.s $f0, $f4, $f0
.L802BD3A0:
/* 323CF0 802BD3A0 E600000C */ swc1 $f0, 0xc($s0)
.L802BD3A4:
/* 323CF4 802BD3A4 3C10802C */ lui $s0, 0x802c
/* 323CF8 802BD3A8 2610DFFC */ addiu $s0, $s0, -0x2004
/* 323CFC 802BD3AC 8E020000 */ lw $v0, ($s0)
/* 323D00 802BD3B0 3C0140C9 */ lui $at, 0x40c9
/* 323D04 802BD3B4 34210FD0 */ ori $at, $at, 0xfd0
/* 323D08 802BD3B8 44810000 */ mtc1 $at, $f0
/* 323D0C 802BD3BC C44C0018 */ lwc1 $f12, 0x18($v0)
/* 323D10 802BD3C0 46006302 */ mul.s $f12, $f12, $f0
/* 323D14 802BD3C4 00000000 */ nop
/* 323D18 802BD3C8 3C0143B4 */ lui $at, 0x43b4
/* 323D1C 802BD3CC 4481A000 */ mtc1 $at, $f20
/* 323D20 802BD3D0 0C00A85B */ jal sin_rad
/* 323D24 802BD3D4 46146303 */ div.s $f12, $f12, $f20
/* 323D28 802BD3D8 8E020000 */ lw $v0, ($s0)
/* 323D2C 802BD3DC 3C014040 */ lui $at, 0x4040
/* 323D30 802BD3E0 44812000 */ mtc1 $at, $f4
/* 323D34 802BD3E4 C4420018 */ lwc1 $f2, 0x18($v0)
/* 323D38 802BD3E8 46041080 */ add.s $f2, $f2, $f4
/* 323D3C 802BD3EC 3C014316 */ lui $at, 0x4316
/* 323D40 802BD3F0 44813000 */ mtc1 $at, $f6
/* 323D44 802BD3F4 00000000 */ nop
/* 323D48 802BD3F8 4602303C */ c.lt.s $f6, $f2
/* 323D4C 802BD3FC E4420018 */ swc1 $f2, 0x18($v0)
/* 323D50 802BD400 46040082 */ mul.s $f2, $f0, $f4
/* 323D54 802BD404 00000000 */ nop
/* 323D58 802BD408 45030001 */ bc1tl .L802BD410
/* 323D5C 802BD40C E4460018 */ swc1 $f6, 0x18($v0)
.L802BD410:
/* 323D60 802BD410 C620003C */ lwc1 $f0, 0x3c($s1)
/* 323D64 802BD414 46020000 */ add.s $f0, $f0, $f2
/* 323D68 802BD418 8E020000 */ lw $v0, ($s0)
/* 323D6C 802BD41C E620003C */ swc1 $f0, 0x3c($s1)
/* 323D70 802BD420 C44C0010 */ lwc1 $f12, 0x10($v0)
/* 323D74 802BD424 0C00A6C9 */ jal clamp_angle
/* 323D78 802BD428 460CA301 */ sub.s $f12, $f20, $f12
/* 323D7C 802BD42C 8E020000 */ lw $v0, ($s0)
/* 323D80 802BD430 E6200034 */ swc1 $f0, 0x34($s1)
/* 323D84 802BD434 C4400014 */ lwc1 $f0, 0x14($v0)
/* 323D88 802BD438 3C01802C */ lui $at, 0x802c
/* 323D8C 802BD43C D422E060 */ ldc1 $f2, -0x1fa0($at)
/* 323D90 802BD440 46000021 */ cvt.d.s $f0, $f0
/* 323D94 802BD444 46220000 */ add.d $f0, $f0, $f2
/* 323D98 802BD448 3C014220 */ lui $at, 0x4220
/* 323D9C 802BD44C 44811000 */ mtc1 $at, $f2
/* 323DA0 802BD450 46200020 */ cvt.s.d $f0, $f0
/* 323DA4 802BD454 4600103C */ c.lt.s $f2, $f0
/* 323DA8 802BD458 00000000 */ nop
/* 323DAC 802BD45C 45000002 */ bc1f .L802BD468
/* 323DB0 802BD460 E4400014 */ swc1 $f0, 0x14($v0)
/* 323DB4 802BD464 E4420014 */ swc1 $f2, 0x14($v0)
.L802BD468:
/* 323DB8 802BD468 8E030000 */ lw $v1, ($s0)
/* 323DBC 802BD46C 8C620000 */ lw $v0, ($v1)
/* 323DC0 802BD470 2442FFFF */ addiu $v0, $v0, -1
/* 323DC4 802BD474 14400018 */ bnez $v0, .L802BD4D8
/* 323DC8 802BD478 AC620000 */ sw $v0, ($v1)
/* 323DCC 802BD47C 8C620004 */ lw $v0, 4($v1)
/* 323DD0 802BD480 24420001 */ addiu $v0, $v0, 1
/* 323DD4 802BD484 080AF536 */ j .L802BD4D8
/* 323DD8 802BD488 AC620004 */ sw $v0, 4($v1)
.L802BD48C:
/* 323DDC 802BD48C 8C820008 */ lw $v0, 8($a0)
/* 323DE0 802BD490 AE220000 */ sw $v0, ($s1)
/* 323DE4 802BD494 8C820004 */ lw $v0, 4($a0)
/* 323DE8 802BD498 2403001E */ addiu $v1, $zero, 0x1e
/* 323DEC 802BD49C AC830000 */ sw $v1, ($a0)
/* 323DF0 802BD4A0 24420001 */ addiu $v0, $v0, 1
/* 323DF4 802BD4A4 080AF536 */ j .L802BD4D8
/* 323DF8 802BD4A8 AC820004 */ sw $v0, 4($a0)
.L802BD4AC:
/* 323DFC 802BD4AC 0C03B52E */ jal update_player_move_history
/* 323E00 802BD4B0 0220202D */ daddu $a0, $s1, $zero
/* 323E04 802BD4B4 0C03B574 */ jal func_800ED5D0
/* 323E08 802BD4B8 0220202D */ daddu $a0, $s1, $zero
/* 323E0C 802BD4BC 8E030000 */ lw $v1, ($s0)
/* 323E10 802BD4C0 8C620000 */ lw $v0, ($v1)
/* 323E14 802BD4C4 2442FFFF */ addiu $v0, $v0, -1
/* 323E18 802BD4C8 14400003 */ bnez $v0, .L802BD4D8
/* 323E1C 802BD4CC AC620000 */ sw $v0, ($v1)
/* 323E20 802BD4D0 AC600004 */ sw $zero, 4($v1)
/* 323E24 802BD4D4 AE600000 */ sw $zero, ($s3)
.L802BD4D8:
/* 323E28 802BD4D8 0000102D */ daddu $v0, $zero, $zero
.L802BD4DC:
/* 323E2C 802BD4DC 8FBF0028 */ lw $ra, 0x28($sp)
/* 323E30 802BD4E0 8FB30024 */ lw $s3, 0x24($sp)
/* 323E34 802BD4E4 8FB20020 */ lw $s2, 0x20($sp)
/* 323E38 802BD4E8 8FB1001C */ lw $s1, 0x1c($sp)
/* 323E3C 802BD4EC 8FB00018 */ lw $s0, 0x18($sp)
/* 323E40 802BD4F0 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 323E44 802BD4F4 03E00008 */ jr $ra
/* 323E48 802BD4F8 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,22 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD4FC
/* 323E4C 802BD4FC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 323E50 802BD500 3C058011 */ lui $a1, 0x8011
/* 323E54 802BD504 24A5C954 */ addiu $a1, $a1, -0x36ac
/* 323E58 802BD508 AFBF0010 */ sw $ra, 0x10($sp)
/* 323E5C 802BD50C 8CA20000 */ lw $v0, ($a1)
/* 323E60 802BD510 10400008 */ beqz $v0, .L802BD534
/* 323E64 802BD514 00000000 */ nop
/* 323E68 802BD518 3C03802C */ lui $v1, 0x802c
/* 323E6C 802BD51C 8C63DFFC */ lw $v1, -0x2004($v1)
/* 323E70 802BD520 8C620008 */ lw $v0, 8($v1)
/* 323E74 802BD524 ACA00000 */ sw $zero, ($a1)
/* 323E78 802BD528 AC820000 */ sw $v0, ($a0)
/* 323E7C 802BD52C 0C03BD17 */ jal clear_partner_move_history
/* 323E80 802BD530 AC600004 */ sw $zero, 4($v1)
.L802BD534:
/* 323E84 802BD534 8FBF0010 */ lw $ra, 0x10($sp)
/* 323E88 802BD538 03E00008 */ jr $ra
/* 323E8C 802BD53C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,91 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD540
/* 323E90 802BD540 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* 323E94 802BD544 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* 323E98 802BD548 27BDFFB0 */ addiu $sp, $sp, -0x50
/* 323E9C 802BD54C AFB20038 */ sw $s2, 0x38($sp)
/* 323EA0 802BD550 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 323EA4 802BD554 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 323EA8 802BD558 AFBF003C */ sw $ra, 0x3c($sp)
/* 323EAC 802BD55C AFB10034 */ sw $s1, 0x34($sp)
/* 323EB0 802BD560 AFB00030 */ sw $s0, 0x30($sp)
/* 323EB4 802BD564 F7B60048 */ sdc1 $f22, 0x48($sp)
/* 323EB8 802BD568 F7B40040 */ sdc1 $f20, 0x40($sp)
/* 323EBC 802BD56C 84430086 */ lh $v1, 0x86($v0)
/* 323EC0 802BD570 24020010 */ addiu $v0, $zero, 0x10
/* 323EC4 802BD574 5462003F */ bnel $v1, $v0, .L802BD674
/* 323EC8 802BD578 2402FFFF */ addiu $v0, $zero, -1
/* 323ECC 802BD57C C640001C */ lwc1 $f0, 0x1c($s2)
/* 323ED0 802BD580 44801000 */ mtc1 $zero, $f2
/* 323ED4 802BD584 00000000 */ nop
/* 323ED8 802BD588 46020032 */ c.eq.s $f0, $f2
/* 323EDC 802BD58C 00000000 */ nop
/* 323EE0 802BD590 45000006 */ bc1f .L802BD5AC
/* 323EE4 802BD594 00000000 */ nop
/* 323EE8 802BD598 C6400024 */ lwc1 $f0, 0x24($s2)
/* 323EEC 802BD59C 46020032 */ c.eq.s $f0, $f2
/* 323EF0 802BD5A0 00000000 */ nop
/* 323EF4 802BD5A4 45010033 */ bc1t .L802BD674
/* 323EF8 802BD5A8 2402FFFF */ addiu $v0, $zero, -1
.L802BD5AC:
/* 323EFC 802BD5AC 8E46001C */ lw $a2, 0x1c($s2)
/* 323F00 802BD5B0 44806000 */ mtc1 $zero, $f12
/* 323F04 802BD5B4 8E470024 */ lw $a3, 0x24($s2)
/* 323F08 802BD5B8 0C00A720 */ jal atan2
/* 323F0C 802BD5BC 46006386 */ mov.s $f14, $f12
/* 323F10 802BD5C0 864200B0 */ lh $v0, 0xb0($s2)
/* 323F14 802BD5C4 3C013F00 */ lui $at, 0x3f00
/* 323F18 802BD5C8 4481A000 */ mtc1 $at, $f20
/* 323F1C 802BD5CC 44821000 */ mtc1 $v0, $f2
/* 323F20 802BD5D0 00000000 */ nop
/* 323F24 802BD5D4 468010A0 */ cvt.s.w $f2, $f2
/* 323F28 802BD5D8 46141082 */ mul.s $f2, $f2, $f20
/* 323F2C 802BD5DC 00000000 */ nop
/* 323F30 802BD5E0 46000586 */ mov.s $f22, $f0
/* 323F34 802BD5E4 3C014334 */ lui $at, 0x4334
/* 323F38 802BD5E8 44816000 */ mtc1 $at, $f12
/* 323F3C 802BD5EC C6460028 */ lwc1 $f6, 0x28($s2)
/* 323F40 802BD5F0 460CB300 */ add.s $f12, $f22, $f12
/* 323F44 802BD5F4 C640002C */ lwc1 $f0, 0x2c($s2)
/* 323F48 802BD5F8 C6440030 */ lwc1 $f4, 0x30($s2)
/* 323F4C 802BD5FC 46020000 */ add.s $f0, $f0, $f2
/* 323F50 802BD600 E7A60020 */ swc1 $f6, 0x20($sp)
/* 323F54 802BD604 E7A40024 */ swc1 $f4, 0x24($sp)
/* 323F58 802BD608 0C00A6C9 */ jal clamp_angle
/* 323F5C 802BD60C E7A00028 */ swc1 $f0, 0x28($sp)
/* 323F60 802BD610 864200B2 */ lh $v0, 0xb2($s2)
/* 323F64 802BD614 44821000 */ mtc1 $v0, $f2
/* 323F68 802BD618 00000000 */ nop
/* 323F6C 802BD61C 468010A0 */ cvt.s.w $f2, $f2
/* 323F70 802BD620 46141082 */ mul.s $f2, $f2, $f20
/* 323F74 802BD624 00000000 */ nop
/* 323F78 802BD628 27B00020 */ addiu $s0, $sp, 0x20
/* 323F7C 802BD62C 0200202D */ daddu $a0, $s0, $zero
/* 323F80 802BD630 27B10024 */ addiu $s1, $sp, 0x24
/* 323F84 802BD634 44070000 */ mfc1 $a3, $f0
/* 323F88 802BD638 44061000 */ mfc1 $a2, $f2
/* 323F8C 802BD63C 0C00A7E7 */ jal add_vec2D_polar
/* 323F90 802BD640 0220282D */ daddu $a1, $s1, $zero
/* 323F94 802BD644 0000202D */ daddu $a0, $zero, $zero
/* 323F98 802BD648 0240282D */ daddu $a1, $s2, $zero
/* 323F9C 802BD64C 0200302D */ daddu $a2, $s0, $zero
/* 323FA0 802BD650 84A200B2 */ lh $v0, 0xb2($a1)
/* 323FA4 802BD654 27A70028 */ addiu $a3, $sp, 0x28
/* 323FA8 802BD658 AFB10010 */ sw $s1, 0x10($sp)
/* 323FAC 802BD65C E7B60018 */ swc1 $f22, 0x18($sp)
/* 323FB0 802BD660 44820000 */ mtc1 $v0, $f0
/* 323FB4 802BD664 00000000 */ nop
/* 323FB8 802BD668 46800020 */ cvt.s.w $f0, $f0
/* 323FBC 802BD66C 0C037B01 */ jal do_lateral_collision
/* 323FC0 802BD670 E7A00014 */ swc1 $f0, 0x14($sp)
.L802BD674:
/* 323FC4 802BD674 8FBF003C */ lw $ra, 0x3c($sp)
/* 323FC8 802BD678 8FB20038 */ lw $s2, 0x38($sp)
/* 323FCC 802BD67C 8FB10034 */ lw $s1, 0x34($sp)
/* 323FD0 802BD680 8FB00030 */ lw $s0, 0x30($sp)
/* 323FD4 802BD684 D7B60048 */ ldc1 $f22, 0x48($sp)
/* 323FD8 802BD688 D7B40040 */ ldc1 $f20, 0x40($sp)
/* 323FDC 802BD68C 03E00008 */ jr $ra
/* 323FE0 802BD690 27BD0050 */ addiu $sp, $sp, 0x50

View File

@ -0,0 +1,497 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD694
/* 323FE4 802BD694 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 323FE8 802BD698 AFB40030 */ sw $s4, 0x30($sp)
/* 323FEC 802BD69C 0080A02D */ daddu $s4, $a0, $zero
/* 323FF0 802BD6A0 AFB3002C */ sw $s3, 0x2c($sp)
/* 323FF4 802BD6A4 3C138011 */ lui $s3, %hi(gPlayerStatus)
/* 323FF8 802BD6A8 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus)
/* 323FFC 802BD6AC AFB50034 */ sw $s5, 0x34($sp)
/* 324000 802BD6B0 3C158011 */ lui $s5, %hi(D_8010EBB0)
/* 324004 802BD6B4 26B5EBB0 */ addiu $s5, $s5, %lo(D_8010EBB0)
/* 324008 802BD6B8 AFB10024 */ sw $s1, 0x24($sp)
/* 32400C 802BD6BC 3C118016 */ lui $s1, 0x8016
/* 324010 802BD6C0 2631A550 */ addiu $s1, $s1, -0x5ab0
/* 324014 802BD6C4 AFBF0038 */ sw $ra, 0x38($sp)
/* 324018 802BD6C8 AFB20028 */ sw $s2, 0x28($sp)
/* 32401C 802BD6CC AFB00020 */ sw $s0, 0x20($sp)
/* 324020 802BD6D0 F7B40040 */ sdc1 $f20, 0x40($sp)
/* 324024 802BD6D4 10A0001C */ beqz $a1, .L802BD748
/* 324028 802BD6D8 8E92014C */ lw $s2, 0x14c($s4)
/* 32402C 802BD6DC 0C0AF53F */ jal func_802BD4FC
/* 324030 802BD6E0 0240202D */ daddu $a0, $s2, $zero
/* 324034 802BD6E4 8E620004 */ lw $v0, 4($s3)
/* 324038 802BD6E8 3C030010 */ lui $v1, 0x10
/* 32403C 802BD6EC 00431024 */ and $v0, $v0, $v1
/* 324040 802BD6F0 144001B5 */ bnez $v0, .L802BDDC8
/* 324044 802BD6F4 24020002 */ addiu $v0, $zero, 2
/* 324048 802BD6F8 0C03A94B */ jal func_800EA52C
/* 32404C 802BD6FC 24040009 */ addiu $a0, $zero, 9
/* 324050 802BD700 1040001C */ beqz $v0, .L802BD774
/* 324054 802BD704 3C020020 */ lui $v0, 0x20
/* 324058 802BD708 8E630004 */ lw $v1, 4($s3)
/* 32405C 802BD70C 00621024 */ and $v0, $v1, $v0
/* 324060 802BD710 1040000B */ beqz $v0, .L802BD740
/* 324064 802BD714 3C02FFDF */ lui $v0, 0xffdf
/* 324068 802BD718 3442FFFF */ ori $v0, $v0, 0xffff
/* 32406C 802BD71C 00621024 */ and $v0, $v1, $v0
/* 324070 802BD720 0C03805E */ jal disable_player_input
/* 324074 802BD724 AE620004 */ sw $v0, 4($s3)
/* 324078 802BD728 AE820078 */ sw $v0, 0x78($s4)
/* 32407C 802BD72C 24020001 */ addiu $v0, $zero, 1
/* 324080 802BD730 3C01802C */ lui $at, 0x802c
/* 324084 802BD734 AC22E0C4 */ sw $v0, -0x1f3c($at)
/* 324088 802BD738 080AF5D1 */ j .L802BD744
/* 32408C 802BD73C 24020014 */ addiu $v0, $zero, 0x14
.L802BD740:
/* 324090 802BD740 24020028 */ addiu $v0, $zero, 0x28
.L802BD744:
/* 324094 802BD744 AE820070 */ sw $v0, 0x70($s4)
.L802BD748:
/* 324098 802BD748 8E830070 */ lw $v1, 0x70($s4)
/* 32409C 802BD74C 24020028 */ addiu $v0, $zero, 0x28
/* 3240A0 802BD750 10620005 */ beq $v1, $v0, .L802BD768
/* 3240A4 802BD754 24020029 */ addiu $v0, $zero, 0x29
/* 3240A8 802BD758 10620015 */ beq $v1, $v0, .L802BD7B0
/* 3240AC 802BD75C 00000000 */ nop
/* 3240B0 802BD760 080AF61B */ j .L802BD86C
/* 3240B4 802BD764 00000000 */ nop
.L802BD768:
/* 3240B8 802BD768 82620015 */ lb $v0, 0x15($s3)
/* 3240BC 802BD76C 10400003 */ beqz $v0, .L802BD77C
/* 3240C0 802BD770 00000000 */ nop
.L802BD774:
/* 3240C4 802BD774 080AF772 */ j .L802BDDC8
/* 3240C8 802BD778 24020002 */ addiu $v0, $zero, 2
.L802BD77C:
/* 3240CC 802BD77C 8E620000 */ lw $v0, ($s3)
/* 3240D0 802BD780 34420100 */ ori $v0, $v0, 0x100
/* 3240D4 802BD784 AE620000 */ sw $v0, ($s3)
/* 3240D8 802BD788 24020003 */ addiu $v0, $zero, 3
/* 3240DC 802BD78C 0C03805E */ jal disable_player_input
/* 3240E0 802BD790 AE820074 */ sw $v0, 0x74($s4)
/* 3240E4 802BD794 AE820078 */ sw $v0, 0x78($s4)
/* 3240E8 802BD798 8E820070 */ lw $v0, 0x70($s4)
/* 3240EC 802BD79C 24030001 */ addiu $v1, $zero, 1
/* 3240F0 802BD7A0 3C01802C */ lui $at, 0x802c
/* 3240F4 802BD7A4 AC23E0C4 */ sw $v1, -0x1f3c($at)
/* 3240F8 802BD7A8 080AF61A */ j .L802BD868
/* 3240FC 802BD7AC 00431021 */ addu $v0, $v0, $v1
.L802BD7B0:
/* 324100 802BD7B0 0C03A94B */ jal func_800EA52C
/* 324104 802BD7B4 24040009 */ addiu $a0, $zero, 9
/* 324108 802BD7B8 10400005 */ beqz $v0, .L802BD7D0
/* 32410C 802BD7BC 00000000 */ nop
/* 324110 802BD7C0 0C011052 */ jal func_80044148
/* 324114 802BD7C4 00000000 */ nop
/* 324118 802BD7C8 10400010 */ beqz $v0, .L802BD80C
/* 32411C 802BD7CC 00000000 */ nop
.L802BD7D0:
/* 324120 802BD7D0 82630015 */ lb $v1, 0x15($s3)
/* 324124 802BD7D4 8E820078 */ lw $v0, 0x78($s4)
/* 324128 802BD7D8 0043102A */ slt $v0, $v0, $v1
/* 32412C 802BD7DC 1040000B */ beqz $v0, .L802BD80C
/* 324130 802BD7E0 00000000 */ nop
/* 324134 802BD7E4 3C10802C */ lui $s0, 0x802c
/* 324138 802BD7E8 2610E0C4 */ addiu $s0, $s0, -0x1f3c
/* 32413C 802BD7EC 8E020000 */ lw $v0, ($s0)
/* 324140 802BD7F0 10400006 */ beqz $v0, .L802BD80C
/* 324144 802BD7F4 00000000 */ nop
/* 324148 802BD7F8 0C038069 */ jal enable_player_input
/* 32414C 802BD7FC 00000000 */ nop
/* 324150 802BD800 24020002 */ addiu $v0, $zero, 2
/* 324154 802BD804 080AF615 */ j .L802BD854
/* 324158 802BD808 AE000000 */ sw $zero, ($s0)
.L802BD80C:
/* 32415C 802BD80C 8E820074 */ lw $v0, 0x74($s4)
/* 324160 802BD810 2442FFFF */ addiu $v0, $v0, -1
/* 324164 802BD814 14400015 */ bnez $v0, .L802BD86C
/* 324168 802BD818 AE820074 */ sw $v0, 0x74($s4)
/* 32416C 802BD81C 82630015 */ lb $v1, 0x15($s3)
/* 324170 802BD820 8E820078 */ lw $v0, 0x78($s4)
/* 324174 802BD824 0043102A */ slt $v0, $v0, $v1
/* 324178 802BD828 1040000F */ beqz $v0, .L802BD868
/* 32417C 802BD82C 24020014 */ addiu $v0, $zero, 0x14
/* 324180 802BD830 3C10802C */ lui $s0, 0x802c
/* 324184 802BD834 2610E0C4 */ addiu $s0, $s0, -0x1f3c
/* 324188 802BD838 8E020000 */ lw $v0, ($s0)
/* 32418C 802BD83C 10400005 */ beqz $v0, .L802BD854
/* 324190 802BD840 24020002 */ addiu $v0, $zero, 2
/* 324194 802BD844 0C038069 */ jal enable_player_input
/* 324198 802BD848 00000000 */ nop
/* 32419C 802BD84C AE000000 */ sw $zero, ($s0)
/* 3241A0 802BD850 24020002 */ addiu $v0, $zero, 2
.L802BD854:
/* 3241A4 802BD854 8E630000 */ lw $v1, ($s3)
/* 3241A8 802BD858 2404FEFF */ addiu $a0, $zero, -0x101
/* 3241AC 802BD85C 00641824 */ and $v1, $v1, $a0
/* 3241B0 802BD860 080AF772 */ j .L802BDDC8
/* 3241B4 802BD864 AE630000 */ sw $v1, ($s3)
.L802BD868:
/* 3241B8 802BD868 AE820070 */ sw $v0, 0x70($s4)
.L802BD86C:
/* 3241BC 802BD86C 8E820070 */ lw $v0, 0x70($s4)
/* 3241C0 802BD870 2443FFFF */ addiu $v1, $v0, -1
/* 3241C4 802BD874 2C620015 */ sltiu $v0, $v1, 0x15
/* 3241C8 802BD878 10400152 */ beqz $v0, .L802BDDC4
/* 3241CC 802BD87C 00031080 */ sll $v0, $v1, 2
/* 3241D0 802BD880 3C01802C */ lui $at, 0x802c
/* 3241D4 802BD884 00220821 */ addu $at, $at, $v0
/* 3241D8 802BD888 8C22E068 */ lw $v0, -0x1f98($at)
/* 3241DC 802BD88C 00400008 */ jr $v0
/* 3241E0 802BD890 00000000 */ nop
/* 3241E4 802BD894 8E640000 */ lw $a0, ($s3)
/* 3241E8 802BD898 30820800 */ andi $v0, $a0, 0x800
/* 3241EC 802BD89C 1040000B */ beqz $v0, .L802BD8CC
/* 3241F0 802BD8A0 2402FEFF */ addiu $v0, $zero, -0x101
/* 3241F4 802BD8A4 3C10802C */ lui $s0, 0x802c
/* 3241F8 802BD8A8 2610E0C4 */ addiu $s0, $s0, -0x1f3c
/* 3241FC 802BD8AC 8E030000 */ lw $v1, ($s0)
/* 324200 802BD8B0 00821024 */ and $v0, $a0, $v0
/* 324204 802BD8B4 1060FFAF */ beqz $v1, .L802BD774
/* 324208 802BD8B8 AE620000 */ sw $v0, ($s3)
/* 32420C 802BD8BC 0C038069 */ jal enable_player_input
/* 324210 802BD8C0 00000000 */ nop
/* 324214 802BD8C4 080AF5DD */ j .L802BD774
/* 324218 802BD8C8 AE000000 */ sw $zero, ($s0)
.L802BD8CC:
/* 32421C 802BD8CC 8E820078 */ lw $v0, 0x78($s4)
/* 324220 802BD8D0 10400003 */ beqz $v0, .L802BD8E0
/* 324224 802BD8D4 24020001 */ addiu $v0, $zero, 1
/* 324228 802BD8D8 3C01802C */ lui $at, 0x802c
/* 32422C 802BD8DC AC22E0C4 */ sw $v0, -0x1f3c($at)
.L802BD8E0:
/* 324230 802BD8E0 24040001 */ addiu $a0, $zero, 1
/* 324234 802BD8E4 8E420000 */ lw $v0, ($s2)
/* 324238 802BD8E8 2403F5FF */ addiu $v1, $zero, -0xa01
/* 32423C 802BD8EC 3C01802C */ lui $at, 0x802c
/* 324240 802BD8F0 AC24E0C0 */ sw $a0, -0x1f40($at)
/* 324244 802BD8F4 00431024 */ and $v0, $v0, $v1
/* 324248 802BD8F8 AE420000 */ sw $v0, ($s2)
/* 32424C 802BD8FC A2A40000 */ sb $a0, ($s5)
/* 324250 802BD900 8E620000 */ lw $v0, ($s3)
/* 324254 802BD904 24030009 */ addiu $v1, $zero, 9
/* 324258 802BD908 A2A30003 */ sb $v1, 3($s5)
/* 32425C 802BD90C 34428000 */ ori $v0, $v0, 0x8000
/* 324260 802BD910 0C03BD38 */ jal func_800EF4E0
/* 324264 802BD914 AE620000 */ sw $v0, ($s3)
/* 324268 802BD918 C6600028 */ lwc1 $f0, 0x28($s3)
/* 32426C 802BD91C 26510060 */ addiu $s1, $s2, 0x60
/* 324270 802BD920 E6400060 */ swc1 $f0, 0x60($s2)
/* 324274 802BD924 866200B0 */ lh $v0, 0xb0($s3)
/* 324278 802BD928 3C013F00 */ lui $at, 0x3f00
/* 32427C 802BD92C 4481A000 */ mtc1 $at, $f20
/* 324280 802BD930 44820000 */ mtc1 $v0, $f0
/* 324284 802BD934 00000000 */ nop
/* 324288 802BD938 46800020 */ cvt.s.w $f0, $f0
/* 32428C 802BD93C 46140002 */ mul.s $f0, $f0, $f20
/* 324290 802BD940 00000000 */ nop
/* 324294 802BD944 0220202D */ daddu $a0, $s1, $zero
/* 324298 802BD948 26500068 */ addiu $s0, $s2, 0x68
/* 32429C 802BD94C C662002C */ lwc1 $f2, 0x2c($s3)
/* 3242A0 802BD950 3C06C000 */ lui $a2, 0xc000
/* 3242A4 802BD954 46001080 */ add.s $f2, $f2, $f0
/* 3242A8 802BD958 3C038007 */ lui $v1, %hi(gCurrentCameraID)
/* 3242AC 802BD95C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1)
/* 3242B0 802BD960 3C020005 */ lui $v0, 5
/* 3242B4 802BD964 E6420064 */ swc1 $f2, 0x64($s2)
/* 3242B8 802BD968 C6600030 */ lwc1 $f0, 0x30($s3)
/* 3242BC 802BD96C 34420002 */ ori $v0, $v0, 2
/* 3242C0 802BD970 AE420028 */ sw $v0, 0x28($s2)
/* 3242C4 802BD974 00031080 */ sll $v0, $v1, 2
/* 3242C8 802BD978 00431021 */ addu $v0, $v0, $v1
/* 3242CC 802BD97C 00021080 */ sll $v0, $v0, 2
/* 3242D0 802BD980 00431023 */ subu $v0, $v0, $v1
/* 3242D4 802BD984 000218C0 */ sll $v1, $v0, 3
/* 3242D8 802BD988 00431021 */ addu $v0, $v0, $v1
/* 3242DC 802BD98C E6400068 */ swc1 $f0, 0x68($s2)
/* 3242E0 802BD990 C6600080 */ lwc1 $f0, 0x80($s3)
/* 3242E4 802BD994 000210C0 */ sll $v0, $v0, 3
/* 3242E8 802BD998 E640000C */ swc1 $f0, 0xc($s2)
/* 3242EC 802BD99C 3C07800B */ lui $a3, 0x800b
/* 3242F0 802BD9A0 00E23821 */ addu $a3, $a3, $v0
/* 3242F4 802BD9A4 8CE71DEC */ lw $a3, 0x1dec($a3)
/* 3242F8 802BD9A8 0C00A7E7 */ jal add_vec2D_polar
/* 3242FC 802BD9AC 0200282D */ daddu $a1, $s0, $zero
/* 324300 802BD9B0 866200B2 */ lh $v0, 0xb2($s3)
/* 324304 802BD9B4 44820000 */ mtc1 $v0, $f0
/* 324308 802BD9B8 00000000 */ nop
/* 32430C 802BD9BC 46800020 */ cvt.s.w $f0, $f0
/* 324310 802BD9C0 46140002 */ mul.s $f0, $f0, $f20
/* 324314 802BD9C4 00000000 */ nop
/* 324318 802BD9C8 0220202D */ daddu $a0, $s1, $zero
/* 32431C 802BD9CC 8E47000C */ lw $a3, 0xc($s2)
/* 324320 802BD9D0 44060000 */ mfc1 $a2, $f0
/* 324324 802BD9D4 0C00A7E7 */ jal add_vec2D_polar
/* 324328 802BD9D8 0200282D */ daddu $a1, $s0, $zero
/* 32432C 802BD9DC C64C0038 */ lwc1 $f12, 0x38($s2)
/* 324330 802BD9E0 C64E0040 */ lwc1 $f14, 0x40($s2)
/* 324334 802BD9E4 24020005 */ addiu $v0, $zero, 5
/* 324338 802BD9E8 A642008E */ sh $v0, 0x8e($s2)
/* 32433C 802BD9EC 8E660028 */ lw $a2, 0x28($s3)
/* 324340 802BD9F0 0C00A720 */ jal atan2
/* 324344 802BD9F4 8E670030 */ lw $a3, 0x30($s3)
/* 324348 802BD9F8 24040021 */ addiu $a0, $zero, 0x21
/* 32434C 802BD9FC 0C039769 */ jal set_action_state
/* 324350 802BDA00 E640000C */ swc1 $f0, 0xc($s2)
/* 324354 802BDA04 3C040001 */ lui $a0, 1
/* 324358 802BDA08 0C037FBF */ jal func_800DFEFC
/* 32435C 802BDA0C 34840002 */ ori $a0, $a0, 2
/* 324360 802BDA10 8E820070 */ lw $v0, 0x70($s4)
/* 324364 802BDA14 24420001 */ addiu $v0, $v0, 1
/* 324368 802BDA18 080AF771 */ j .L802BDDC4
/* 32436C 802BDA1C AE820070 */ sw $v0, 0x70($s4)
/* 324370 802BDA20 86220002 */ lh $v0, 2($s1)
/* 324374 802BDA24 04400092 */ bltz $v0, .L802BDC70
/* 324378 802BDA28 3C030010 */ lui $v1, 0x10
/* 32437C 802BDA2C 8E620004 */ lw $v0, 4($s3)
/* 324380 802BDA30 00431024 */ and $v0, $v0, $v1
/* 324384 802BDA34 1440008E */ bnez $v0, .L802BDC70
/* 324388 802BDA38 00000000 */ nop
/* 32438C 802BDA3C C6600028 */ lwc1 $f0, 0x28($s3)
/* 324390 802BDA40 E6400060 */ swc1 $f0, 0x60($s2)
/* 324394 802BDA44 866200B0 */ lh $v0, 0xb0($s3)
/* 324398 802BDA48 3C013F00 */ lui $at, 0x3f00
/* 32439C 802BDA4C 44811000 */ mtc1 $at, $f2
/* 3243A0 802BDA50 44820000 */ mtc1 $v0, $f0
/* 3243A4 802BDA54 00000000 */ nop
/* 3243A8 802BDA58 46800020 */ cvt.s.w $f0, $f0
/* 3243AC 802BDA5C 46020002 */ mul.s $f0, $f0, $f2
/* 3243B0 802BDA60 00000000 */ nop
/* 3243B4 802BDA64 C64A0038 */ lwc1 $f10, 0x38($s2)
/* 3243B8 802BDA68 C648003C */ lwc1 $f8, 0x3c($s2)
/* 3243BC 802BDA6C C6420060 */ lwc1 $f2, 0x60($s2)
/* 3243C0 802BDA70 C6460040 */ lwc1 $f6, 0x40($s2)
/* 3243C4 802BDA74 460A1081 */ sub.s $f2, $f2, $f10
/* 3243C8 802BDA78 C664002C */ lwc1 $f4, 0x2c($s3)
/* 3243CC 802BDA7C 8642008E */ lh $v0, 0x8e($s2)
/* 3243D0 802BDA80 46002100 */ add.s $f4, $f4, $f0
/* 3243D4 802BDA84 44820000 */ mtc1 $v0, $f0
/* 3243D8 802BDA88 00000000 */ nop
/* 3243DC 802BDA8C 46800020 */ cvt.s.w $f0, $f0
/* 3243E0 802BDA90 46001083 */ div.s $f2, $f2, $f0
/* 3243E4 802BDA94 46025280 */ add.s $f10, $f10, $f2
/* 3243E8 802BDA98 E6440064 */ swc1 $f4, 0x64($s2)
/* 3243EC 802BDA9C 46002006 */ mov.s $f0, $f4
/* 3243F0 802BDAA0 C6620030 */ lwc1 $f2, 0x30($s3)
/* 3243F4 802BDAA4 46080001 */ sub.s $f0, $f0, $f8
/* 3243F8 802BDAA8 E6420068 */ swc1 $f2, 0x68($s2)
/* 3243FC 802BDAAC 46061081 */ sub.s $f2, $f2, $f6
/* 324400 802BDAB0 44822000 */ mtc1 $v0, $f4
/* 324404 802BDAB4 00000000 */ nop
/* 324408 802BDAB8 46802120 */ cvt.s.w $f4, $f4
/* 32440C 802BDABC 46040003 */ div.s $f0, $f0, $f4
/* 324410 802BDAC0 46004200 */ add.s $f8, $f8, $f0
/* 324414 802BDAC4 46002006 */ mov.s $f0, $f4
/* 324418 802BDAC8 9642008E */ lhu $v0, 0x8e($s2)
/* 32441C 802BDACC 46001083 */ div.s $f2, $f2, $f0
/* 324420 802BDAD0 46023180 */ add.s $f6, $f6, $f2
/* 324424 802BDAD4 E64A0038 */ swc1 $f10, 0x38($s2)
/* 324428 802BDAD8 E648003C */ swc1 $f8, 0x3c($s2)
/* 32442C 802BDADC E6460040 */ swc1 $f6, 0x40($s2)
/* 324430 802BDAE0 C6640028 */ lwc1 $f4, 0x28($s3)
/* 324434 802BDAE4 46005006 */ mov.s $f0, $f10
/* 324438 802BDAE8 460A2101 */ sub.s $f4, $f4, $f10
/* 32443C 802BDAEC C662002C */ lwc1 $f2, 0x2c($s3)
/* 324440 802BDAF0 46004006 */ mov.s $f0, $f8
/* 324444 802BDAF4 46081081 */ sub.s $f2, $f2, $f8
/* 324448 802BDAF8 C6600030 */ lwc1 $f0, 0x30($s3)
/* 32444C 802BDAFC 2442FFFF */ addiu $v0, $v0, -1
/* 324450 802BDB00 A642008E */ sh $v0, 0x8e($s2)
/* 324454 802BDB04 00021400 */ sll $v0, $v0, 0x10
/* 324458 802BDB08 46060001 */ sub.s $f0, $f0, $f6
/* 32445C 802BDB0C 4600240D */ trunc.w.s $f16, $f4
/* 324460 802BDB10 3C01802C */ lui $at, 0x802c
/* 324464 802BDB14 E430E0E4 */ swc1 $f16, -0x1f1c($at)
/* 324468 802BDB18 4600140D */ trunc.w.s $f16, $f2
/* 32446C 802BDB1C 3C01802C */ lui $at, 0x802c
/* 324470 802BDB20 E430E0E8 */ swc1 $f16, -0x1f18($at)
/* 324474 802BDB24 4600040D */ trunc.w.s $f16, $f0
/* 324478 802BDB28 3C01802C */ lui $at, 0x802c
/* 32447C 802BDB2C E430E0EC */ swc1 $f16, -0x1f14($at)
/* 324480 802BDB30 144000A5 */ bnez $v0, .L802BDDC8
/* 324484 802BDB34 0000102D */ daddu $v0, $zero, $zero
/* 324488 802BDB38 0240202D */ daddu $a0, $s2, $zero
/* 32448C 802BDB3C C6600080 */ lwc1 $f0, 0x80($s3)
/* 324490 802BDB40 24050007 */ addiu $a1, $zero, 7
/* 324494 802BDB44 E480000C */ swc1 $f0, 0xc($a0)
/* 324498 802BDB48 9266000E */ lbu $a2, 0xe($s3)
/* 32449C 802BDB4C 0000382D */ daddu $a3, $zero, $zero
/* 3244A0 802BDB50 AFA00010 */ sw $zero, 0x10($sp)
/* 3244A4 802BDB54 AFA00014 */ sw $zero, 0x14($sp)
/* 3244A8 802BDB58 0C00F589 */ jal func_8003D624
/* 3244AC 802BDB5C AFA00018 */ sw $zero, 0x18($sp)
/* 3244B0 802BDB60 3C040001 */ lui $a0, 1
/* 3244B4 802BDB64 0C037FDE */ jal func_800DFF78
/* 3244B8 802BDB68 34840014 */ ori $a0, $a0, 0x14
/* 3244BC 802BDB6C 2404200E */ addiu $a0, $zero, 0x200e
/* 3244C0 802BDB70 0000282D */ daddu $a1, $zero, $zero
/* 3244C4 802BDB74 0C052742 */ jal play_sound_at_npc
/* 3244C8 802BDB78 2406FFFC */ addiu $a2, $zero, -4
/* 3244CC 802BDB7C 24020001 */ addiu $v0, $zero, 1
/* 3244D0 802BDB80 080AF771 */ j .L802BDDC4
/* 3244D4 802BDB84 AE820070 */ sw $v0, 0x70($s4)
/* 3244D8 802BDB88 86220002 */ lh $v0, 2($s1)
/* 3244DC 802BDB8C 04400038 */ bltz $v0, .L802BDC70
/* 3244E0 802BDB90 00000000 */ nop
/* 3244E4 802BDB94 9262000E */ lbu $v0, 0xe($s3)
/* 3244E8 802BDB98 2442FFF8 */ addiu $v0, $v0, -8
/* 3244EC 802BDB9C A262000E */ sb $v0, 0xe($s3)
/* 3244F0 802BDBA0 304200FF */ andi $v0, $v0, 0xff
/* 3244F4 802BDBA4 2C420081 */ sltiu $v0, $v0, 0x81
/* 3244F8 802BDBA8 1040000E */ beqz $v0, .L802BDBE4
/* 3244FC 802BDBAC 24020080 */ addiu $v0, $zero, 0x80
/* 324500 802BDBB0 A262000E */ sb $v0, 0xe($s3)
/* 324504 802BDBB4 24020016 */ addiu $v0, $zero, 0x16
/* 324508 802BDBB8 A24200AA */ sb $v0, 0xaa($s2)
/* 32450C 802BDBBC 8E820070 */ lw $v0, 0x70($s4)
/* 324510 802BDBC0 24420001 */ addiu $v0, $v0, 1
/* 324514 802BDBC4 AE820070 */ sw $v0, 0x70($s4)
/* 324518 802BDBC8 8E620000 */ lw $v0, ($s3)
/* 32451C 802BDBCC 2403FEFF */ addiu $v1, $zero, -0x101
/* 324520 802BDBD0 00431024 */ and $v0, $v0, $v1
/* 324524 802BDBD4 AE620000 */ sw $v0, ($s3)
/* 324528 802BDBD8 8E420000 */ lw $v0, ($s2)
/* 32452C 802BDBDC 34420040 */ ori $v0, $v0, 0x40
/* 324530 802BDBE0 AE420000 */ sw $v0, ($s2)
.L802BDBE4:
/* 324534 802BDBE4 0C044181 */ jal get_shadow_by_index
/* 324538 802BDBE8 8E440078 */ lw $a0, 0x78($s2)
/* 32453C 802BDBEC 0240202D */ daddu $a0, $s2, $zero
/* 324540 802BDBF0 9263000E */ lbu $v1, 0xe($s3)
/* 324544 802BDBF4 24050007 */ addiu $a1, $zero, 7
/* 324548 802BDBF8 00031842 */ srl $v1, $v1, 1
/* 32454C 802BDBFC A0430005 */ sb $v1, 5($v0)
/* 324550 802BDC00 9266000E */ lbu $a2, 0xe($s3)
/* 324554 802BDC04 0000382D */ daddu $a3, $zero, $zero
/* 324558 802BDC08 AFA00010 */ sw $zero, 0x10($sp)
/* 32455C 802BDC0C AFA00014 */ sw $zero, 0x14($sp)
/* 324560 802BDC10 0C00F589 */ jal func_8003D624
/* 324564 802BDC14 AFA00018 */ sw $zero, 0x18($sp)
/* 324568 802BDC18 C6600028 */ lwc1 $f0, 0x28($s3)
/* 32456C 802BDC1C 3C01802C */ lui $at, 0x802c
/* 324570 802BDC20 C422E0E4 */ lwc1 $f2, -0x1f1c($at)
/* 324574 802BDC24 468010A0 */ cvt.s.w $f2, $f2
/* 324578 802BDC28 46020001 */ sub.s $f0, $f0, $f2
/* 32457C 802BDC2C E6400038 */ swc1 $f0, 0x38($s2)
/* 324580 802BDC30 C660002C */ lwc1 $f0, 0x2c($s3)
/* 324584 802BDC34 3C01802C */ lui $at, 0x802c
/* 324588 802BDC38 C422E0E8 */ lwc1 $f2, -0x1f18($at)
/* 32458C 802BDC3C 468010A0 */ cvt.s.w $f2, $f2
/* 324590 802BDC40 46020001 */ sub.s $f0, $f0, $f2
/* 324594 802BDC44 E640003C */ swc1 $f0, 0x3c($s2)
/* 324598 802BDC48 C6600030 */ lwc1 $f0, 0x30($s3)
/* 32459C 802BDC4C 3C01802C */ lui $at, 0x802c
/* 3245A0 802BDC50 C422E0EC */ lwc1 $f2, -0x1f14($at)
/* 3245A4 802BDC54 468010A0 */ cvt.s.w $f2, $f2
/* 3245A8 802BDC58 46020001 */ sub.s $f0, $f0, $f2
/* 3245AC 802BDC5C 080AF771 */ j .L802BDDC4
/* 3245B0 802BDC60 E6400040 */ swc1 $f0, 0x40($s2)
/* 3245B4 802BDC64 86220002 */ lh $v0, 2($s1)
/* 3245B8 802BDC68 04410005 */ bgez $v0, .L802BDC80
/* 3245BC 802BDC6C 00000000 */ nop
.L802BDC70:
/* 3245C0 802BDC70 0C0AF77C */ jal func_802BDDF0
/* 3245C4 802BDC74 0240202D */ daddu $a0, $s2, $zero
/* 3245C8 802BDC78 080AF772 */ j .L802BDDC8
/* 3245CC 802BDC7C 24020002 */ addiu $v0, $zero, 2
.L802BDC80:
/* 3245D0 802BDC80 C6600028 */ lwc1 $f0, 0x28($s3)
/* 3245D4 802BDC84 3C01802C */ lui $at, 0x802c
/* 3245D8 802BDC88 C422E0E4 */ lwc1 $f2, -0x1f1c($at)
/* 3245DC 802BDC8C 468010A0 */ cvt.s.w $f2, $f2
/* 3245E0 802BDC90 46020001 */ sub.s $f0, $f0, $f2
/* 3245E4 802BDC94 E6400038 */ swc1 $f0, 0x38($s2)
/* 3245E8 802BDC98 C660002C */ lwc1 $f0, 0x2c($s3)
/* 3245EC 802BDC9C 3C01802C */ lui $at, 0x802c
/* 3245F0 802BDCA0 C422E0E8 */ lwc1 $f2, -0x1f18($at)
/* 3245F4 802BDCA4 468010A0 */ cvt.s.w $f2, $f2
/* 3245F8 802BDCA8 46020001 */ sub.s $f0, $f0, $f2
/* 3245FC 802BDCAC E640003C */ swc1 $f0, 0x3c($s2)
/* 324600 802BDCB0 C6600030 */ lwc1 $f0, 0x30($s3)
/* 324604 802BDCB4 3C01802C */ lui $at, 0x802c
/* 324608 802BDCB8 C422E0EC */ lwc1 $f2, -0x1f14($at)
/* 32460C 802BDCBC 468010A0 */ cvt.s.w $f2, $f2
/* 324610 802BDCC0 46020001 */ sub.s $f0, $f0, $f2
/* 324614 802BDCC4 44806000 */ mtc1 $zero, $f12
/* 324618 802BDCC8 E6400040 */ swc1 $f0, 0x40($s2)
/* 32461C 802BDCCC 86A20004 */ lh $v0, 4($s5)
/* 324620 802BDCD0 86A30006 */ lh $v1, 6($s5)
/* 324624 802BDCD4 44828000 */ mtc1 $v0, $f16
/* 324628 802BDCD8 00000000 */ nop
/* 32462C 802BDCDC 46808420 */ cvt.s.w $f16, $f16
/* 324630 802BDCE0 44068000 */ mfc1 $a2, $f16
/* 324634 802BDCE4 44838000 */ mtc1 $v1, $f16
/* 324638 802BDCE8 00000000 */ nop
/* 32463C 802BDCEC 46808420 */ cvt.s.w $f16, $f16
/* 324640 802BDCF0 44078000 */ mfc1 $a3, $f16
/* 324644 802BDCF4 0C00A7B5 */ jal dist2D
/* 324648 802BDCF8 46006386 */ mov.s $f14, $f12
/* 32464C 802BDCFC 86220002 */ lh $v0, 2($s1)
/* 324650 802BDD00 04400010 */ bltz $v0, .L802BDD44
/* 324654 802BDD04 46000086 */ mov.s $f2, $f0
/* 324658 802BDD08 3C014120 */ lui $at, 0x4120
/* 32465C 802BDD0C 44810000 */ mtc1 $at, $f0
/* 324660 802BDD10 00000000 */ nop
/* 324664 802BDD14 4602003C */ c.lt.s $f0, $f2
/* 324668 802BDD18 00000000 */ nop
/* 32466C 802BDD1C 45010009 */ bc1t .L802BDD44
/* 324670 802BDD20 00000000 */ nop
/* 324674 802BDD24 8EA2000C */ lw $v0, 0xc($s5)
/* 324678 802BDD28 30424004 */ andi $v0, $v0, 0x4004
/* 32467C 802BDD2C 14400005 */ bnez $v0, .L802BDD44
/* 324680 802BDD30 00000000 */ nop
/* 324684 802BDD34 8E620000 */ lw $v0, ($s3)
/* 324688 802BDD38 30420800 */ andi $v0, $v0, 0x800
/* 32468C 802BDD3C 10400022 */ beqz $v0, .L802BDDC8
/* 324690 802BDD40 0000102D */ daddu $v0, $zero, $zero
.L802BDD44:
/* 324694 802BDD44 0C0AF550 */ jal func_802BD540
/* 324698 802BDD48 00000000 */ nop
/* 32469C 802BDD4C 0441001E */ bgez $v0, .L802BDDC8
/* 3246A0 802BDD50 0000102D */ daddu $v0, $zero, $zero
/* 3246A4 802BDD54 8E820070 */ lw $v0, 0x70($s4)
/* 3246A8 802BDD58 24030003 */ addiu $v1, $zero, 3
/* 3246AC 802BDD5C AE830074 */ sw $v1, 0x74($s4)
/* 3246B0 802BDD60 24420001 */ addiu $v0, $v0, 1
/* 3246B4 802BDD64 AE820070 */ sw $v0, 0x70($s4)
/* 3246B8 802BDD68 82620015 */ lb $v0, 0x15($s3)
/* 3246BC 802BDD6C 080AF771 */ j .L802BDDC4
/* 3246C0 802BDD70 AE820078 */ sw $v0, 0x78($s4)
/* 3246C4 802BDD74 8E820074 */ lw $v0, 0x74($s4)
/* 3246C8 802BDD78 14400008 */ bnez $v0, .L802BDD9C
/* 3246CC 802BDD7C 2442FFFF */ addiu $v0, $v0, -1
/* 3246D0 802BDD80 82630015 */ lb $v1, 0x15($s3)
/* 3246D4 802BDD84 8E820078 */ lw $v0, 0x78($s4)
/* 3246D8 802BDD88 0043102A */ slt $v0, $v0, $v1
/* 3246DC 802BDD8C 10400005 */ beqz $v0, .L802BDDA4
/* 3246E0 802BDD90 24020002 */ addiu $v0, $zero, 2
/* 3246E4 802BDD94 080AF771 */ j .L802BDDC4
/* 3246E8 802BDD98 AE820070 */ sw $v0, 0x70($s4)
.L802BDD9C:
/* 3246EC 802BDD9C 080AF771 */ j .L802BDDC4
/* 3246F0 802BDDA0 AE820074 */ sw $v0, 0x74($s4)
.L802BDDA4:
/* 3246F4 802BDDA4 2404200F */ addiu $a0, $zero, 0x200f
/* 3246F8 802BDDA8 0000282D */ daddu $a1, $zero, $zero
/* 3246FC 802BDDAC 0C052742 */ jal play_sound_at_npc
/* 324700 802BDDB0 2406FFFC */ addiu $a2, $zero, -4
/* 324704 802BDDB4 0C0AF77C */ jal func_802BDDF0
/* 324708 802BDDB8 0240202D */ daddu $a0, $s2, $zero
/* 32470C 802BDDBC 080AF772 */ j .L802BDDC8
/* 324710 802BDDC0 24020001 */ addiu $v0, $zero, 1
.L802BDDC4:
/* 324714 802BDDC4 0000102D */ daddu $v0, $zero, $zero
.L802BDDC8:
/* 324718 802BDDC8 8FBF0038 */ lw $ra, 0x38($sp)
/* 32471C 802BDDCC 8FB50034 */ lw $s5, 0x34($sp)
/* 324720 802BDDD0 8FB40030 */ lw $s4, 0x30($sp)
/* 324724 802BDDD4 8FB3002C */ lw $s3, 0x2c($sp)
/* 324728 802BDDD8 8FB20028 */ lw $s2, 0x28($sp)
/* 32472C 802BDDDC 8FB10024 */ lw $s1, 0x24($sp)
/* 324730 802BDDE0 8FB00020 */ lw $s0, 0x20($sp)
/* 324734 802BDDE4 D7B40040 */ ldc1 $f20, 0x40($sp)
/* 324738 802BDDE8 03E00008 */ jr $ra
/* 32473C 802BDDEC 27BD0048 */ addiu $sp, $sp, 0x48

View File

@ -0,0 +1,76 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDDF0
/* 324740 802BDDF0 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 324744 802BDDF4 AFB10024 */ sw $s1, 0x24($sp)
/* 324748 802BDDF8 0080882D */ daddu $s1, $a0, $zero
/* 32474C 802BDDFC AFB00020 */ sw $s0, 0x20($sp)
/* 324750 802BDE00 3C108011 */ lui $s0, %hi(gPlayerStatus)
/* 324754 802BDE04 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus)
/* 324758 802BDE08 240200FF */ addiu $v0, $zero, 0xff
/* 32475C 802BDE0C 0000282D */ daddu $a1, $zero, $zero
/* 324760 802BDE10 00A0302D */ daddu $a2, $a1, $zero
/* 324764 802BDE14 00A0382D */ daddu $a3, $a1, $zero
/* 324768 802BDE18 AFBF0034 */ sw $ra, 0x34($sp)
/* 32476C 802BDE1C AFB40030 */ sw $s4, 0x30($sp)
/* 324770 802BDE20 AFB3002C */ sw $s3, 0x2c($sp)
/* 324774 802BDE24 AFB20028 */ sw $s2, 0x28($sp)
/* 324778 802BDE28 A202000E */ sb $v0, 0xe($s0)
/* 32477C 802BDE2C AFA00010 */ sw $zero, 0x10($sp)
/* 324780 802BDE30 AFA00014 */ sw $zero, 0x14($sp)
/* 324784 802BDE34 0C00F589 */ jal func_8003D624
/* 324788 802BDE38 AFA00018 */ sw $zero, 0x18($sp)
/* 32478C 802BDE3C 8E240078 */ lw $a0, 0x78($s1)
/* 324790 802BDE40 24020011 */ addiu $v0, $zero, 0x11
/* 324794 802BDE44 0C044181 */ jal get_shadow_by_index
/* 324798 802BDE48 A22200AA */ sb $v0, 0xaa($s1)
/* 32479C 802BDE4C 9203000E */ lbu $v1, 0xe($s0)
/* 3247A0 802BDE50 3C12802C */ lui $s2, 0x802c
/* 3247A4 802BDE54 2652E0C4 */ addiu $s2, $s2, -0x1f3c
/* 3247A8 802BDE58 00031842 */ srl $v1, $v1, 1
/* 3247AC 802BDE5C A0430005 */ sb $v1, 5($v0)
/* 3247B0 802BDE60 8E420000 */ lw $v0, ($s2)
/* 3247B4 802BDE64 3C138011 */ lui $s3, %hi(D_8010EBB0)
/* 3247B8 802BDE68 2673EBB0 */ addiu $s3, $s3, %lo(D_8010EBB0)
/* 3247BC 802BDE6C 10400003 */ beqz $v0, .L802BDE7C
/* 3247C0 802BDE70 0200A02D */ daddu $s4, $s0, $zero
/* 3247C4 802BDE74 0C038069 */ jal enable_player_input
/* 3247C8 802BDE78 00000000 */ nop
.L802BDE7C:
/* 3247CC 802BDE7C 3C03FFFF */ lui $v1, 0xffff
/* 3247D0 802BDE80 8E020000 */ lw $v0, ($s0)
/* 3247D4 802BDE84 34637FFD */ ori $v1, $v1, 0x7ffd
/* 3247D8 802BDE88 00431024 */ and $v0, $v0, $v1
/* 3247DC 802BDE8C AE020000 */ sw $v0, ($s0)
/* 3247E0 802BDE90 8E220000 */ lw $v0, ($s1)
/* 3247E4 802BDE94 2403FFBD */ addiu $v1, $zero, -0x43
/* 3247E8 802BDE98 00431024 */ and $v0, $v0, $v1
/* 3247EC 802BDE9C AE220000 */ sw $v0, ($s1)
/* 3247F0 802BDEA0 8E020000 */ lw $v0, ($s0)
/* 3247F4 802BDEA4 0000202D */ daddu $a0, $zero, $zero
/* 3247F8 802BDEA8 30420800 */ andi $v0, $v0, 0x800
/* 3247FC 802BDEAC 10400002 */ beqz $v0, .L802BDEB8
/* 324800 802BDEB0 AE400000 */ sw $zero, ($s2)
/* 324804 802BDEB4 24040017 */ addiu $a0, $zero, 0x17
.L802BDEB8:
/* 324808 802BDEB8 0C039769 */ jal set_action_state
/* 32480C 802BDEBC 00000000 */ nop
/* 324810 802BDEC0 0220202D */ daddu $a0, $s1, $zero
/* 324814 802BDEC4 A2600000 */ sb $zero, ($s3)
/* 324818 802BDEC8 A2600003 */ sb $zero, 3($s3)
/* 32481C 802BDECC 8E820000 */ lw $v0, ($s4)
/* 324820 802BDED0 2403FEFF */ addiu $v1, $zero, -0x101
/* 324824 802BDED4 00431024 */ and $v0, $v0, $v1
/* 324828 802BDED8 0C03BD17 */ jal clear_partner_move_history
/* 32482C 802BDEDC AE820000 */ sw $v0, ($s4)
/* 324830 802BDEE0 8FBF0034 */ lw $ra, 0x34($sp)
/* 324834 802BDEE4 8FB40030 */ lw $s4, 0x30($sp)
/* 324838 802BDEE8 8FB3002C */ lw $s3, 0x2c($sp)
/* 32483C 802BDEEC 8FB20028 */ lw $s2, 0x28($sp)
/* 324840 802BDEF0 8FB10024 */ lw $s1, 0x24($sp)
/* 324844 802BDEF4 8FB00020 */ lw $s0, 0x20($sp)
/* 324848 802BDEF8 3C01802C */ lui $at, 0x802c
/* 32484C 802BDEFC AC20E0C0 */ sw $zero, -0x1f40($at)
/* 324850 802BDF00 03E00008 */ jr $ra
/* 324854 802BDF04 27BD0038 */ addiu $sp, $sp, 0x38

View File

@ -0,0 +1,29 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDF08
/* 324858 802BDF08 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 32485C 802BDF0C AFBF0014 */ sw $ra, 0x14($sp)
/* 324860 802BDF10 AFB00010 */ sw $s0, 0x10($sp)
/* 324864 802BDF14 10A0000C */ beqz $a1, .L802BDF48
/* 324868 802BDF18 8C90014C */ lw $s0, 0x14c($a0)
/* 32486C 802BDF1C 0C03BA65 */ jal func_800EE994
/* 324870 802BDF20 0200202D */ daddu $a0, $s0, $zero
/* 324874 802BDF24 3C02802C */ lui $v0, 0x802c
/* 324878 802BDF28 8C42E0C0 */ lw $v0, -0x1f40($v0)
/* 32487C 802BDF2C 10400004 */ beqz $v0, .L802BDF40
/* 324880 802BDF30 2404200F */ addiu $a0, $zero, 0x200f
/* 324884 802BDF34 0000282D */ daddu $a1, $zero, $zero
/* 324888 802BDF38 0C052742 */ jal play_sound_at_npc
/* 32488C 802BDF3C 2406FFFC */ addiu $a2, $zero, -4
.L802BDF40:
/* 324890 802BDF40 0C0AF77C */ jal func_802BDDF0
/* 324894 802BDF44 0200202D */ daddu $a0, $s0, $zero
.L802BDF48:
/* 324898 802BDF48 0C03BA6E */ jal func_800EE9B8
/* 32489C 802BDF4C 0200202D */ daddu $a0, $s0, $zero
/* 3248A0 802BDF50 8FBF0014 */ lw $ra, 0x14($sp)
/* 3248A4 802BDF54 8FB00010 */ lw $s0, 0x10($sp)
/* 3248A8 802BDF58 0002102B */ sltu $v0, $zero, $v0
/* 3248AC 802BDF5C 03E00008 */ jr $ra
/* 3248B0 802BDF60 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -0,0 +1,36 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BDF64
/* 3248B4 802BDF64 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 3248B8 802BDF68 AFB00010 */ sw $s0, 0x10($sp)
/* 3248BC 802BDF6C AFB20018 */ sw $s2, 0x18($sp)
/* 3248C0 802BDF70 3C12802C */ lui $s2, 0x802c
/* 3248C4 802BDF74 2652E0C0 */ addiu $s2, $s2, -0x1f40
/* 3248C8 802BDF78 AFBF001C */ sw $ra, 0x1c($sp)
/* 3248CC 802BDF7C AFB10014 */ sw $s1, 0x14($sp)
/* 3248D0 802BDF80 8E420000 */ lw $v0, ($s2)
/* 3248D4 802BDF84 3C118011 */ lui $s1, %hi(D_8010EBB0)
/* 3248D8 802BDF88 2631EBB0 */ addiu $s1, $s1, %lo(D_8010EBB0)
/* 3248DC 802BDF8C 1040000E */ beqz $v0, .L802BDFC8
/* 3248E0 802BDF90 0080802D */ daddu $s0, $a0, $zero
/* 3248E4 802BDF94 0C038069 */ jal enable_player_input
/* 3248E8 802BDF98 00000000 */ nop
/* 3248EC 802BDF9C 0C039769 */ jal set_action_state
/* 3248F0 802BDFA0 0000202D */ daddu $a0, $zero, $zero
/* 3248F4 802BDFA4 0C03BD17 */ jal clear_partner_move_history
/* 3248F8 802BDFA8 0200202D */ daddu $a0, $s0, $zero
/* 3248FC 802BDFAC A2200000 */ sb $zero, ($s1)
/* 324900 802BDFB0 A2200003 */ sb $zero, 3($s1)
/* 324904 802BDFB4 AE400000 */ sw $zero, ($s2)
/* 324908 802BDFB8 8E020000 */ lw $v0, ($s0)
/* 32490C 802BDFBC 2403FFFD */ addiu $v1, $zero, -3
/* 324910 802BDFC0 00431024 */ and $v0, $v0, $v1
/* 324914 802BDFC4 AE020000 */ sw $v0, ($s0)
.L802BDFC8:
/* 324918 802BDFC8 8FBF001C */ lw $ra, 0x1c($sp)
/* 32491C 802BDFCC 8FB20018 */ lw $s2, 0x18($sp)
/* 324920 802BDFD0 8FB10014 */ lw $s1, 0x14($sp)
/* 324924 802BDFD4 8FB00010 */ lw $s0, 0x10($sp)
/* 324928 802BDFD8 03E00008 */ jr $ra
/* 32492C 802BDFDC 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -0,0 +1,9 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD100_324A10
/* 324A10 802BD100 24020018 */ addiu $v0, $zero, 0x18
/* 324A14 802BD104 A48200A8 */ sh $v0, 0xa8($a0)
/* 324A18 802BD108 24020014 */ addiu $v0, $zero, 0x14
/* 324A1C 802BD10C 03E00008 */ jr $ra
/* 324A20 802BD110 A48200A6 */ sh $v0, 0xa6($a0)

View File

@ -0,0 +1,19 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802BD114
/* 324A24 802BD114 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 324A28 802BD118 AFBF0014 */ sw $ra, 0x14($sp)
/* 324A2C 802BD11C AFB00010 */ sw $s0, 0x10($sp)
/* 324A30 802BD120 10A00003 */ beqz $a1, .L802BD130
/* 324A34 802BD124 8C90014C */ lw $s0, 0x14c($a0)
/* 324A38 802BD128 0C03BB31 */ jal func_800EECC4
/* 324A3C 802BD12C 0200202D */ daddu $a0, $s0, $zero
.L802BD130:
/* 324A40 802BD130 0C03BB3A */ jal func_800EECE8
/* 324A44 802BD134 0200202D */ daddu $a0, $s0, $zero
/* 324A48 802BD138 8FBF0014 */ lw $ra, 0x14($sp)
/* 324A4C 802BD13C 8FB00010 */ lw $s0, 0x10($sp)
/* 324A50 802BD140 0002102B */ sltu $v0, $zero, $v0
/* 324A54 802BD144 03E00008 */ jr $ra
/* 324A58 802BD148 27BD0018 */ addiu $sp, $sp, 0x18

Some files were not shown because too many files have changed in this diff Show More