some funcs in code_105f90

This commit is contained in:
dark-samus 2020-11-21 02:40:54 -05:00
parent 87ec701223
commit 03c4960eda
21 changed files with 144 additions and 323 deletions

View File

@ -1,13 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E4AEC
/* 10636C 802E4AEC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106370 802E4AF0 3C050A00 */ lui $a1, 0xa00
/* 106374 802E4AF4 24A50808 */ addiu $a1, $a1, 0x808
/* 106378 802E4AF8 AFBF0010 */ sw $ra, 0x10($sp)
/* 10637C 802E4AFC 0C0B91CC */ jal func_802E4730
/* 106380 802E4B00 00000000 */ nop
/* 106384 802E4B04 8FBF0010 */ lw $ra, 0x10($sp)
/* 106388 802E4B08 03E00008 */ jr $ra
/* 10638C 802E4B0C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,24 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E4B10
/* 106390 802E4B10 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106394 802E4B14 AFB00010 */ sw $s0, 0x10($sp)
/* 106398 802E4B18 0080802D */ daddu $s0, $a0, $zero
/* 10639C 802E4B1C AFBF0014 */ sw $ra, 0x14($sp)
/* 1063A0 802E4B20 8E020040 */ lw $v0, 0x40($s0)
/* 1063A4 802E4B24 0C04417A */ jal get_entity_by_index
/* 1063A8 802E4B28 90440000 */ lbu $a0, ($v0)
/* 1063AC 802E4B2C C4400048 */ lwc1 $f0, 0x48($v0)
/* 1063B0 802E4B30 3C014160 */ lui $at, 0x4160
/* 1063B4 802E4B34 44811000 */ mtc1 $at, $f2
/* 1063B8 802E4B38 E6000048 */ swc1 $f0, 0x48($s0)
/* 1063BC 802E4B3C C440004C */ lwc1 $f0, 0x4c($v0)
/* 1063C0 802E4B40 46020000 */ add.s $f0, $f0, $f2
/* 1063C4 802E4B44 E600004C */ swc1 $f0, 0x4c($s0)
/* 1063C8 802E4B48 C4400050 */ lwc1 $f0, 0x50($v0)
/* 1063CC 802E4B4C E6000050 */ swc1 $f0, 0x50($s0)
/* 1063D0 802E4B50 8FBF0014 */ lw $ra, 0x14($sp)
/* 1063D4 802E4B54 8FB00010 */ lw $s0, 0x10($sp)
/* 1063D8 802E4B58 03E00008 */ jr $ra
/* 1063DC 802E4B5C 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,50 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E4B60
/* 1063E0 802E4B60 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1063E4 802E4B64 AFB10014 */ sw $s1, 0x14($sp)
/* 1063E8 802E4B68 0080882D */ daddu $s1, $a0, $zero
/* 1063EC 802E4B6C 3C02802E */ lui $v0, 0x802e
/* 1063F0 802E4B70 24424AEC */ addiu $v0, $v0, 0x4aec
/* 1063F4 802E4B74 AFBF0018 */ sw $ra, 0x18($sp)
/* 1063F8 802E4B78 AFB00010 */ sw $s0, 0x10($sp)
/* 1063FC 802E4B7C AE22003C */ sw $v0, 0x3c($s1)
/* 106400 802E4B80 240200FF */ addiu $v0, $zero, 0xff
/* 106404 802E4B84 A222000B */ sb $v0, 0xb($s1)
/* 106408 802E4B88 8E220000 */ lw $v0, ($s1)
/* 10640C 802E4B8C 8E300040 */ lw $s0, 0x40($s1)
/* 106410 802E4B90 34422000 */ ori $v0, $v0, 0x2000
/* 106414 802E4B94 AE220000 */ sw $v0, ($s1)
/* 106418 802E4B98 0C04417A */ jal get_entity_by_index
/* 10641C 802E4B9C 92040000 */ lbu $a0, ($s0)
/* 106420 802E4BA0 92020009 */ lbu $v0, 9($s0)
/* 106424 802E4BA4 54400009 */ bnel $v0, $zero, .L802E4BCC
/* 106428 802E4BA8 A2000001 */ sb $zero, 1($s0)
/* 10642C 802E4BAC 3C013F80 */ lui $at, 0x3f80
/* 106430 802E4BB0 44810000 */ mtc1 $at, $f0
/* 106434 802E4BB4 24020001 */ addiu $v0, $zero, 1
/* 106438 802E4BB8 A2020009 */ sb $v0, 9($s0)
/* 10643C 802E4BBC 24020002 */ addiu $v0, $zero, 2
/* 106440 802E4BC0 A2020001 */ sb $v0, 1($s0)
/* 106444 802E4BC4 080B92F4 */ j .L802E4BD0
/* 106448 802E4BC8 E6200054 */ swc1 $f0, 0x54($s1)
.L802E4BCC:
/* 10644C 802E4BCC AE200054 */ sw $zero, 0x54($s1)
.L802E4BD0:
/* 106450 802E4BD0 AE00000C */ sw $zero, 0xc($s0)
/* 106454 802E4BD4 AE000010 */ sw $zero, 0x10($s0)
/* 106458 802E4BD8 C6200054 */ lwc1 $f0, 0x54($s1)
/* 10645C 802E4BDC 0220202D */ daddu $a0, $s1, $zero
/* 106460 802E4BE0 AC800060 */ sw $zero, 0x60($a0)
/* 106464 802E4BE4 AC800064 */ sw $zero, 0x64($a0)
/* 106468 802E4BE8 AC800068 */ sw $zero, 0x68($a0)
/* 10646C 802E4BEC 46000086 */ mov.s $f2, $f0
/* 106470 802E4BF0 E4800058 */ swc1 $f0, 0x58($a0)
/* 106474 802E4BF4 0C0B92C4 */ jal func_802E4B10
/* 106478 802E4BF8 E482005C */ swc1 $f2, 0x5c($a0)
/* 10647C 802E4BFC 8FBF0018 */ lw $ra, 0x18($sp)
/* 106480 802E4C00 8FB10014 */ lw $s1, 0x14($sp)
/* 106484 802E4C04 8FB00010 */ lw $s0, 0x10($sp)
/* 106488 802E4C08 03E00008 */ jr $ra
/* 10648C 802E4C0C 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,13 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E4DE0
/* 106660 802E4DE0 8C820040 */ lw $v0, 0x40($a0)
/* 106664 802E4DE4 3C013F80 */ lui $at, 0x3f80
/* 106668 802E4DE8 44810000 */ mtc1 $at, $f0
/* 10666C 802E4DEC A0400001 */ sb $zero, 1($v0)
/* 106670 802E4DF0 E4800054 */ swc1 $f0, 0x54($a0)
/* 106674 802E4DF4 E4800058 */ swc1 $f0, 0x58($a0)
/* 106678 802E4DF8 E480005C */ swc1 $f0, 0x5c($a0)
/* 10667C 802E4DFC 03E00008 */ jr $ra
/* 106680 802E4E00 AC800068 */ sw $zero, 0x68($a0)

View File

@ -1,11 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E5308
/* 106B88 802E5308 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106B8C 802E530C AFBF0010 */ sw $ra, 0x10($sp)
/* 106B90 802E5310 0C0B8D94 */ jal func_802E3650
/* 106B94 802E5314 00000000 */ nop
/* 106B98 802E5318 8FBF0010 */ lw $ra, 0x10($sp)
/* 106B9C 802E531C 03E00008 */ jr $ra
/* 106BA0 802E5320 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,11 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E540C
/* 106C8C 802E540C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106C90 802E5410 AFBF0010 */ sw $ra, 0x10($sp)
/* 106C94 802E5414 0C0B92C4 */ jal func_802E4B10
/* 106C98 802E5418 00000000 */ nop
/* 106C9C 802E541C 8FBF0010 */ lw $ra, 0x10($sp)
/* 106CA0 802E5420 03E00008 */ jr $ra
/* 106CA4 802E5424 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,17 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E5428
/* 106CA8 802E5428 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106CAC 802E542C AFB00010 */ sw $s0, 0x10($sp)
/* 106CB0 802E5430 AFBF0014 */ sw $ra, 0x14($sp)
/* 106CB4 802E5434 0C0B92D8 */ jal func_802E4B60
/* 106CB8 802E5438 0080802D */ daddu $s0, $a0, $zero
/* 106CBC 802E543C 3C05802F */ lui $a1, 0x802f
/* 106CC0 802E5440 24A5A728 */ addiu $a1, $a1, -0x58d8
/* 106CC4 802E5444 0C0442F3 */ jal func_80110BCC
/* 106CC8 802E5448 0200202D */ daddu $a0, $s0, $zero
/* 106CCC 802E544C 8FBF0014 */ lw $ra, 0x14($sp)
/* 106CD0 802E5450 8FB00010 */ lw $s0, 0x10($sp)
/* 106CD4 802E5454 03E00008 */ jr $ra
/* 106CD8 802E5458 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,16 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E545C
/* 106CDC 802E545C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106CE0 802E5460 AFB00010 */ sw $s0, 0x10($sp)
/* 106CE4 802E5464 0080802D */ daddu $s0, $a0, $zero
/* 106CE8 802E5468 AFBF0014 */ sw $ra, 0x14($sp)
/* 106CEC 802E546C 0C0B9304 */ jal func_802E4C10
/* 106CF0 802E5470 0000282D */ daddu $a1, $zero, $zero
/* 106CF4 802E5474 0C0B94C9 */ jal func_802E5324
/* 106CF8 802E5478 0200202D */ daddu $a0, $s0, $zero
/* 106CFC 802E547C 8FBF0014 */ lw $ra, 0x14($sp)
/* 106D00 802E5480 8FB00010 */ lw $s0, 0x10($sp)
/* 106D04 802E5484 03E00008 */ jr $ra
/* 106D08 802E5488 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,11 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E548C
/* 106D0C 802E548C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106D10 802E5490 AFBF0010 */ sw $ra, 0x10($sp)
/* 106D14 802E5494 0C0B9381 */ jal func_802E4E04
/* 106D18 802E5498 0000282D */ daddu $a1, $zero, $zero
/* 106D1C 802E549C 8FBF0010 */ lw $ra, 0x10($sp)
/* 106D20 802E54A0 03E00008 */ jr $ra
/* 106D24 802E54A4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,13 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E54A8
/* 106D28 802E54A8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106D2C 802E54AC 3C05802F */ lui $a1, 0x802f
/* 106D30 802E54B0 24A5A760 */ addiu $a1, $a1, -0x58a0
/* 106D34 802E54B4 AFBF0010 */ sw $ra, 0x10($sp)
/* 106D38 802E54B8 0C0442F3 */ jal func_80110BCC
/* 106D3C 802E54BC 00000000 */ nop
/* 106D40 802E54C0 8FBF0010 */ lw $ra, 0x10($sp)
/* 106D44 802E54C4 03E00008 */ jr $ra
/* 106D48 802E54C8 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,42 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E54CC
/* 106D4C 802E54CC 3C028011 */ lui $v0, %hi(gPlayerData+0x1C)
/* 106D50 802E54D0 9042F2AC */ lbu $v0, %lo(gPlayerData+0x1C)($v0)
/* 106D54 802E54D4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106D58 802E54D8 AFB00010 */ sw $s0, 0x10($sp)
/* 106D5C 802E54DC 0080802D */ daddu $s0, $a0, $zero
/* 106D60 802E54E0 14400018 */ bnez $v0, .L802E5544
/* 106D64 802E54E4 AFBF0014 */ sw $ra, 0x14($sp)
/* 106D68 802E54E8 3C04F840 */ lui $a0, 0xf840
/* 106D6C 802E54EC 0C05152F */ jal get_global_flag
/* 106D70 802E54F0 34845BE0 */ ori $a0, $a0, 0x5be0
/* 106D74 802E54F4 14400013 */ bnez $v0, .L802E5544
/* 106D78 802E54F8 3C04001D */ lui $a0, 0x1d
/* 106D7C 802E54FC 34840001 */ ori $a0, $a0, 1
/* 106D80 802E5500 3C05802F */ lui $a1, 0x802f
/* 106D84 802E5504 24A5B3C0 */ addiu $a1, $a1, -0x4c40
/* 106D88 802E5508 0C049640 */ jal load_string
/* 106D8C 802E550C ACA00000 */ sw $zero, ($a1)
/* 106D90 802E5510 0C009C22 */ jal func_80027088
/* 106D94 802E5514 24040001 */ addiu $a0, $zero, 1
/* 106D98 802E5518 3C03800A */ lui $v1, %hi(D_8009A650)
/* 106D9C 802E551C 2463A650 */ addiu $v1, $v1, %lo(D_8009A650)
/* 106DA0 802E5520 8C620000 */ lw $v0, ($v1)
/* 106DA4 802E5524 34420040 */ ori $v0, $v0, 0x40
/* 106DA8 802E5528 0C03805E */ jal disable_player_input
/* 106DAC 802E552C AC620000 */ sw $v0, ($v1)
/* 106DB0 802E5530 3C04F840 */ lui $a0, 0xf840
/* 106DB4 802E5534 0C051514 */ jal set_global_flag
/* 106DB8 802E5538 34845BE0 */ ori $a0, $a0, 0x5be0
/* 106DBC 802E553C 080B9553 */ j .L802E554C
/* 106DC0 802E5540 00000000 */ nop
.L802E5544:
/* 106DC4 802E5544 0C043F5A */ jal func_8010FD68
/* 106DC8 802E5548 0200202D */ daddu $a0, $s0, $zero
.L802E554C:
/* 106DCC 802E554C 8FBF0014 */ lw $ra, 0x14($sp)
/* 106DD0 802E5550 8FB00010 */ lw $s0, 0x10($sp)
/* 106DD4 802E5554 03E00008 */ jr $ra
/* 106DD8 802E5558 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,24 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E555C
/* 106DDC 802E555C 3C02802F */ lui $v0, 0x802f
/* 106DE0 802E5560 8C42B3C0 */ lw $v0, -0x4c40($v0)
/* 106DE4 802E5564 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106DE8 802E5568 1040000C */ beqz $v0, .L802E559C
/* 106DEC 802E556C AFBF0010 */ sw $ra, 0x10($sp)
/* 106DF0 802E5570 0C043F5A */ jal func_8010FD68
/* 106DF4 802E5574 00000000 */ nop
/* 106DF8 802E5578 0C009C22 */ jal func_80027088
/* 106DFC 802E557C 0000202D */ daddu $a0, $zero, $zero
/* 106E00 802E5580 3C02800A */ lui $v0, %hi(D_8009A650)
/* 106E04 802E5584 2442A650 */ addiu $v0, $v0, %lo(D_8009A650)
/* 106E08 802E5588 8C430000 */ lw $v1, ($v0)
/* 106E0C 802E558C 2404FFBF */ addiu $a0, $zero, -0x41
/* 106E10 802E5590 00641824 */ and $v1, $v1, $a0
/* 106E14 802E5594 0C038069 */ jal enable_player_input
/* 106E18 802E5598 AC430000 */ sw $v1, ($v0)
.L802E559C:
/* 106E1C 802E559C 8FBF0010 */ lw $ra, 0x10($sp)
/* 106E20 802E55A0 03E00008 */ jr $ra
/* 106E24 802E55A4 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,46 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E55A8
/* 106E28 802E55A8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 106E2C 802E55AC AFB00018 */ sw $s0, 0x18($sp)
/* 106E30 802E55B0 0080802D */ daddu $s0, $a0, $zero
/* 106E34 802E55B4 AFB1001C */ sw $s1, 0x1c($sp)
/* 106E38 802E55B8 AFB20020 */ sw $s2, 0x20($sp)
/* 106E3C 802E55BC 3C128016 */ lui $s2, 0x8016
/* 106E40 802E55C0 8E52C7D0 */ lw $s2, -0x3830($s2)
/* 106E44 802E55C4 AFBF0024 */ sw $ra, 0x24($sp)
/* 106E48 802E55C8 0C0B8DB9 */ jal entity_init_Hammer23Block_normal
/* 106E4C 802E55CC 00A0882D */ daddu $s1, $a1, $zero
/* 106E50 802E55D0 0220202D */ daddu $a0, $s1, $zero
/* 106E54 802E55D4 C6000048 */ lwc1 $f0, 0x48($s0)
/* 106E58 802E55D8 C602004C */ lwc1 $f2, 0x4c($s0)
/* 106E5C 802E55DC C6040050 */ lwc1 $f4, 0x50($s0)
/* 106E60 802E55E0 3C028000 */ lui $v0, 0x8000
/* 106E64 802E55E4 AFA00010 */ sw $zero, 0x10($sp)
/* 106E68 802E55E8 4600018D */ trunc.w.s $f6, $f0
/* 106E6C 802E55EC 44053000 */ mfc1 $a1, $f6
/* 106E70 802E55F0 4600118D */ trunc.w.s $f6, $f2
/* 106E74 802E55F4 44063000 */ mfc1 $a2, $f6
/* 106E78 802E55F8 4600218D */ trunc.w.s $f6, $f4
/* 106E7C 802E55FC 44073000 */ mfc1 $a3, $f6
/* 106E80 802E5600 0C044631 */ jal create_entity
/* 106E84 802E5604 AFA20014 */ sw $v0, 0x14($sp)
/* 106E88 802E5608 0C04417A */ jal get_entity_by_index
/* 106E8C 802E560C 0040202D */ daddu $a0, $v0, $zero
/* 106E90 802E5610 8C430040 */ lw $v1, 0x40($v0)
/* 106E94 802E5614 92020004 */ lbu $v0, 4($s0)
/* 106E98 802E5618 16400003 */ bnez $s2, .L802E5628
/* 106E9C 802E561C A0620000 */ sb $v0, ($v1)
/* 106EA0 802E5620 080B958B */ j .L802E562C
/* 106EA4 802E5624 24020003 */ addiu $v0, $zero, 3
.L802E5628:
/* 106EA8 802E5628 24020006 */ addiu $v0, $zero, 6
.L802E562C:
/* 106EAC 802E562C A062000A */ sb $v0, 0xa($v1)
/* 106EB0 802E5630 8FBF0024 */ lw $ra, 0x24($sp)
/* 106EB4 802E5634 8FB20020 */ lw $s2, 0x20($sp)
/* 106EB8 802E5638 8FB1001C */ lw $s1, 0x1c($sp)
/* 106EBC 802E563C 8FB00018 */ lw $s0, 0x18($sp)
/* 106EC0 802E5640 03E00008 */ jr $ra
/* 106EC4 802E5644 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,14 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E5648
/* 106EC8 802E5648 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 106ECC 802E564C 3C05802F */ lui $a1, 0x802f
/* 106ED0 802E5650 24A5A7BC */ addiu $a1, $a1, -0x5844
/* 106ED4 802E5654 AFBF0010 */ sw $ra, 0x10($sp)
/* 106ED8 802E5658 0C0B956A */ jal func_802E55A8
/* 106EDC 802E565C 00000000 */ nop
/* 106EE0 802E5660 8FBF0010 */ lw $ra, 0x10($sp)
/* 106EE4 802E5664 03E00008 */ jr $ra
/* 106EE8 802E5668 27BD0018 */ addiu $sp, $sp, 0x18
/* 106EEC 802E566C 00000000 */ nop

View File

@ -1588,7 +1588,7 @@ typedef struct {
// BEGIN ENTITY-SPECIFIC STRUCTS
// from code_104940_len_dc0
// from code_104940_len_dc0, size unknown
// appears to belong to the hammer blocks(?)
typedef struct struct802E3650 {
/* 0x00 */ char unk_00[3];

View File

@ -24,7 +24,7 @@ f32 integrate_gravity(void);
u32 get_entity_type(s32 arg0);
Entity* get_entity_by_index(s32 index);
s32 create_entity(void*, s32, s32, s32, s32, s32);
s32 create_entity(StaticEntityData*, s32, s32, s32, s32, s32);
UNK_TYPE func_80072230(s32, f32, f32, f32, f32, s32);

View File

@ -252,6 +252,8 @@ extern UNK_TYPE D_802EA63C;
extern UNK_TYPE D_802EA660;
extern s16 D_8015C7D2;
extern UNK_TYPE D_0A000808;
// Scripts
extern Bytecode* SCRIPT_NpcDefeat;
extern Bytecode* ShakeCam1;

View File

@ -123,7 +123,7 @@ void func_802E3898(Entity* entity) {
}
extern s32 D_802E9E54;
extern s32 D_802EA07C;
extern StaticEntityData D_802EA07C;
void func_802E38D8(Entity* entity) {
struct802E3650* temp = (struct802E3650*)entity->dataBuf;

View File

@ -1,43 +1,166 @@
#include "common.h"
typedef struct struct802E4B10 {
/* 0x00 */ u8 unk_00;
/* 0x01 */ u8 unk_01;
/* 0x02 */ char unk_02[7];
/* 0x09 */ u8 unk_09;
/* 0x0A */ u8 unk_0A;
/* 0x0B */ char unk_0B; // padding?
/* 0x0C */ s32 unk_0C;
/* 0x10 */ s32 unk_10;
} struct802E4B10;
INCLUDE_ASM(s32, "code_105f90", func_802E4710);
INCLUDE_ASM(s32, "code_105f90", func_802E4730);
INCLUDE_ASM(s32, "code_105f90", func_802E4AEC);
void func_802E4AEC(s32 entityIndex) {
func_802E4730(entityIndex, &D_0A000808);
}
INCLUDE_ASM(s32, "code_105f90", func_802E4B10);
void func_802E4B10(Entity* entity) {
f32 temp_f0;
Entity* entityTemp;
struct802E4B10* temp = entity->dataBuf;
INCLUDE_ASM(s32, "code_105f90", func_802E4B60);
entityTemp = get_entity_by_index(temp->unk_00);
entity->position.x = entityTemp->position.x;
entity->position.y = entityTemp->position.y + 14.0f;
entity->position.z = entityTemp->position.z;
}
void func_802E4B60(Entity* entity) {
struct802E4B10* temp_s0;
Entity* someEntity;
entity->unk_3C = func_802E4AEC;
entity->alpha = 0xFF;
temp_s0 = entity->dataBuf;
entity->flags |= 0x2000;
someEntity = get_entity_by_index(temp_s0->unk_00);
if (temp_s0->unk_09 == 0) {
temp_s0->unk_09 = 1;
temp_s0->unk_01 = 2;
entity->scale.x = 1.0f;
} else {
temp_s0->unk_01 = 0;
entity->scale.x = 0.0f;
}
temp_s0->unk_0C = 0;
temp_s0->unk_10 = 0;
entity->rotation.x = 0.0f;
entity->rotation.y = 0.0f;
entity->rotation.z = 0.0f;
entity->scale.y = entity->scale.x;
entity->scale.z = entity->scale.x;
func_802E4B10(entity);
}
INCLUDE_ASM(s32, "code_105f90", func_802E4C10);
INCLUDE_ASM(s32, "code_105f90", func_802E4DE0);
void func_802E4DE0(Entity* entity) {
struct802E4B10* temp = entity->dataBuf;
temp->unk_01 = 0;
entity->scale.x = 1.0f;
entity->scale.y = 1.0f;
entity->scale.z = 1.0f;
entity->rotation.z = 0.0f;
}
INCLUDE_ASM(s32, "code_105f90", func_802E4E04);
INCLUDE_ASM(s32, "code_105f90", func_802E5308);
void func_802E5308(Entity* entity) {
func_802E3650(entity);
}
INCLUDE_ASM(s32, "code_105f90", func_802E5324);
INCLUDE_ASM(s32, "code_105f90", func_802E540C);
void func_802E540C(Entity* entity) {
func_802E4B10(entity);
}
INCLUDE_ASM(s32, "code_105f90", func_802E5428);
extern UNK_TYPE D_802EA728;
INCLUDE_ASM(s32, "code_105f90", func_802E545C);
void func_802E5428(Entity* entity) {
func_802E4B60(entity);
func_80110BCC(entity, &D_802EA728);
}
INCLUDE_ASM(s32, "code_105f90", func_802E548C);
void func_802E545C(Entity* entity) {
func_802E4C10(entity, 0);
func_802E5324(entity);
}
INCLUDE_ASM(s32, "code_105f90", func_802E54A8);
void func_802E548C(Entity* entity) {
func_802E4E04(entity, 0);
}
INCLUDE_ASM(s32, "code_105f90", func_802E54CC);
extern UNK_TYPE D_802EA760;
INCLUDE_ASM(s32, "code_105f90", func_802E555C);
void func_802E54A8(Entity* entity) {
func_80110BCC(entity, &D_802EA760);
}
INCLUDE_ASM(s32, "code_105f90", func_802E55A8);
extern UNK_TYPE D_802EB3C0;
INCLUDE_ASM(s32, "code_105f90", func_802E5648);
void func_802E54CC(Entity* entity) {
if ((gPlayerData.partners[2].enabled == 0) && (get_global_flag(0xF8405BE0) == 0)) {
UNK_TYPE* ptr = &D_802EB3C0;
*ptr = 0;
load_string(0x1D0001, ptr);
func_80027088(1);
D_8009A650[0] |= 0x40;
disable_player_input();
set_global_flag(0xF8405BE0);
return;
}
func_8010FD68(entity);
}
void func_802E555C(Entity* entity) {
if (D_802EB3C0) {
func_8010FD68(entity);
func_80027088(0);
D_8009A650[0] &= ~0x40;
enable_player_input();
}
}
typedef struct struct802E55A8 {
/* 0x00 */ u8 unk_00;
/* 0x01 */ char unk_01[9];
/* 0x0A */ u8 unk_0A;
} struct802E55A8;
s8 func_802E55A8(Entity* entity, StaticEntityData* data) {
s32 temp_s2;
Entity* someEntity;
struct802E55A8* temp_v1;
s8 phi_v0;
temp_s2 = D_8015C7D0;
entity_init_Hammer23Block_normal(entity);
someEntity = get_entity_by_index(create_entity(data, entity->position.x, entity->position.y, entity->position.z, 0.0f, 0x80000000));
temp_v1 = someEntity->dataBuf;
temp_v1->unk_00 = entity->listIndex;
if (temp_s2 == 0) {
temp_v1->unk_0A = 3;
} else {
temp_v1->unk_0A = 6;
}
}
StaticEntityData D_802EA7BC;
void func_802E5648(Entity* entity) {
func_802E55A8(entity, &D_802EA7BC);
}
// FILE SPLIT
INCLUDE_ASM(s32, "code_105f90", func_802E5670);
INCLUDE_ASM(s32, "code_105f90", func_802E5690);

View File

@ -100,7 +100,7 @@ INCLUDE_ASM(s32, "code_a5dd0_len_114e0", func_80111790);
INCLUDE_ASM(s32, "code_a5dd0_len_114e0", func_801117DC);
INCLUDE_ASM(s32, "code_a5dd0_len_114e0", create_entity, void* arg0, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5);
INCLUDE_ASM(s32, "code_a5dd0_len_114e0", create_entity, StaticEntityData* data, s32 x, s32 y, s32 z, s32 arg4, s32 flags);
INCLUDE_ASM(s32, "code_a5dd0_len_114e0", create_shadow_from_data);

View File

@ -366,6 +366,7 @@ D_802EA63C = 0x802EA63C;
D_802EA660 = 0x802EA660;
D_8015C7D2 = 0x8015C7D2;
D_0A000808 = 0x0A000808;
D_0A0031E0 = 0x0A0031E0;
D_0A001508 = 0x0A001508;
D_0A0031B0 = 0x0A0031B0;