mirror of
https://github.com/n64decomp/mk64
synced 2026-07-06 20:32:45 -04:00
+10
-10
@@ -76,22 +76,22 @@ glabel D_80164B08
|
||||
glabel D_80164B0C
|
||||
.skip 4
|
||||
|
||||
glabel D_80164B10
|
||||
glabel gPlayerRedEffect
|
||||
.skip 16
|
||||
|
||||
glabel D_80164B20
|
||||
glabel gPlayerGreenEffect
|
||||
.skip 16
|
||||
|
||||
glabel D_80164B30
|
||||
glabel gPlayerBlueEffect
|
||||
.skip 16
|
||||
|
||||
glabel D_80164B40
|
||||
glabel gPlayerCyanEffect
|
||||
.skip 16
|
||||
|
||||
glabel D_80164B50
|
||||
glabel gPlayerMagentaEffect
|
||||
.skip 16
|
||||
|
||||
glabel D_80164B60
|
||||
glabel gPlayerYellowEffect
|
||||
.skip 32
|
||||
|
||||
glabel D_80164B80
|
||||
@@ -175,7 +175,7 @@ glabel D_80165420
|
||||
glabel D_80165440
|
||||
.skip 32
|
||||
|
||||
glabel D_80165460
|
||||
glabel gIsPlayerTripleAButtonCombo
|
||||
.skip 32
|
||||
|
||||
glabel D_80165480
|
||||
@@ -590,9 +590,9 @@ glabel D_80165A90
|
||||
.skip 392
|
||||
|
||||
# object list begin
|
||||
# D_80165C18 should be of size 123,200 (0xE0 * 0x226)
|
||||
# gObjectList should be of size 123,200 (0xE0 * 0x226)
|
||||
# D_80165CBC, D_80165CBE, and D_80165CED are all fake variables
|
||||
glabel D_80165C18
|
||||
glabel gObjectList
|
||||
.skip 164
|
||||
|
||||
glabel D_80165CBC
|
||||
@@ -1711,7 +1711,7 @@ glabel gNumD_8018E768Entries
|
||||
glabel D_8018E768
|
||||
.skip 64
|
||||
|
||||
glabel D_8018E7A8
|
||||
glabel gCycleFlashMenu
|
||||
.skip 4
|
||||
|
||||
glabel D_8018E7AC
|
||||
|
||||
@@ -34,7 +34,7 @@ glabel func_80007D04
|
||||
/* 008984 80007D84 3421FFFF */ ori $at, (0xFFDFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 008988 80007D88 03216024 */ and $t4, $t9, $at
|
||||
/* 00898C 80007D8C ACAC00BC */ sw $t4, 0xbc($a1)
|
||||
/* 008990 80007D90 0C00C3F2 */ jal func_80030FC8
|
||||
/* 008990 80007D90 0C00C3F2 */ jal player_speed
|
||||
/* 008994 80007D94 AFA70030 */ sw $a3, 0x30($sp)
|
||||
/* 008998 80007D98 8FA70030 */ lw $a3, 0x30($sp)
|
||||
/* 00899C 80007D9C 3C018016 */ lui $at, %hi(D_801634C0) # 0x8016
|
||||
@@ -49,7 +49,7 @@ glabel func_80007D04
|
||||
/* 0089BC 80007DBC 00C02025 */ move $a0, $a2
|
||||
/* 0089C0 80007DC0 01E1C025 */ or $t8, $t7, $at
|
||||
/* 0089C4 80007DC4 ACD800BC */ sw $t8, 0xbc($a2)
|
||||
/* 0089C8 80007DC8 0C00C3F2 */ jal func_80030FC8
|
||||
/* 0089C8 80007DC8 0C00C3F2 */ jal player_speed
|
||||
/* 0089CC 80007DCC AFA70030 */ sw $a3, 0x30($sp)
|
||||
/* 0089D0 80007DD0 8FA70030 */ lw $a3, 0x30($sp)
|
||||
/* 0089D4 80007DD4 3C018016 */ lui $at, %hi(D_801634C0) # 0x8016
|
||||
@@ -111,7 +111,7 @@ glabel func_80007D04
|
||||
/* 008A98 80007E98 00C02025 */ move $a0, $a2
|
||||
/* 008A9C 80007E9C 0301C825 */ or $t9, $t8, $at
|
||||
/* 008AA0 80007EA0 ACD900BC */ sw $t9, 0xbc($a2)
|
||||
/* 008AA4 80007EA4 0C00C3F2 */ jal func_80030FC8
|
||||
/* 008AA4 80007EA4 0C00C3F2 */ jal player_speed
|
||||
/* 008AA8 80007EA8 AFA70030 */ sw $a3, 0x30($sp)
|
||||
/* 008AAC 80007EAC 8FA70030 */ lw $a3, 0x30($sp)
|
||||
/* 008AB0 80007EB0 3C018016 */ lui $at, %hi(D_801634C0) # 0x8016
|
||||
@@ -131,7 +131,7 @@ glabel func_80007D04
|
||||
/* 008AE4 80007EE4 0301C824 */ and $t9, $t8, $at
|
||||
/* 008AE8 80007EE8 ACD900BC */ sw $t9, 0xbc($a2)
|
||||
/* 008AEC 80007EEC AFA70030 */ sw $a3, 0x30($sp)
|
||||
/* 008AF0 80007EF0 0C00C3F2 */ jal func_80030FC8
|
||||
/* 008AF0 80007EF0 0C00C3F2 */ jal player_speed
|
||||
/* 008AF4 80007EF4 00C02025 */ move $a0, $a2
|
||||
/* 008AF8 80007EF8 8FA70030 */ lw $a3, 0x30($sp)
|
||||
/* 008AFC 80007EFC 3C018016 */ lui $at, %hi(D_801634C0) # 0x8016
|
||||
@@ -153,7 +153,7 @@ glabel func_80007D04
|
||||
/* 008B38 80007F38 3421FFFF */ ori $at, (0xFFDFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 008B3C 80007F3C 01C17824 */ and $t7, $t6, $at
|
||||
/* 008B40 80007F40 ACCF00BC */ sw $t7, 0xbc($a2)
|
||||
/* 008B44 80007F44 0C00C3F2 */ jal func_80030FC8
|
||||
/* 008B44 80007F44 0C00C3F2 */ jal player_speed
|
||||
/* 008B48 80007F48 AFA2001C */ sw $v0, 0x1c($sp)
|
||||
/* 008B4C 80007F4C 8FA2001C */ lw $v0, 0x1c($sp)
|
||||
/* 008B50 80007F50 3C018016 */ lui $at, %hi(D_801634C0) # 0x8016
|
||||
|
||||
@@ -105,7 +105,7 @@ glabel func_80008424
|
||||
/* 009180 80008580 0061C024 */ and $t8, $v1, $at
|
||||
/* 009184 80008584 45000005 */ bc1f .L8000859C
|
||||
/* 009188 80008588 00E02025 */ move $a0, $a3
|
||||
/* 00918C 8000858C 0C00C3F2 */ jal func_80030FC8
|
||||
/* 00918C 8000858C 0C00C3F2 */ jal player_speed
|
||||
/* 009190 80008590 ACF800BC */ sw $t8, 0xbc($a3)
|
||||
/* 009194 80008594 100000CD */ b .L800088CC
|
||||
/* 009198 80008598 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
@@ -126,7 +126,7 @@ glabel func_80008424
|
||||
/* 0091D0 800085D0 3421FFFF */ ori $at, (0xFFDFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 0091D4 800085D4 00615024 */ and $t2, $v1, $at
|
||||
/* 0091D8 800085D8 ACEA00BC */ sw $t2, 0xbc($a3)
|
||||
/* 0091DC 800085DC 0C00C3F2 */ jal func_80030FC8
|
||||
/* 0091DC 800085DC 0C00C3F2 */ jal player_speed
|
||||
/* 0091E0 800085E0 00E02025 */ move $a0, $a3
|
||||
/* 0091E4 800085E4 100000B9 */ b .L800088CC
|
||||
/* 0091E8 800085E8 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
@@ -162,7 +162,7 @@ glabel func_80008424
|
||||
/* 009258 80008658 3C010020 */ lui $at, 0x20
|
||||
/* 00925C 8000865C 00E02025 */ move $a0, $a3
|
||||
/* 009260 80008660 01E1C025 */ or $t8, $t7, $at
|
||||
/* 009264 80008664 0C00C3F2 */ jal func_80030FC8
|
||||
/* 009264 80008664 0C00C3F2 */ jal player_speed
|
||||
/* 009268 80008668 ACF800BC */ sw $t8, 0xbc($a3)
|
||||
/* 00926C 8000866C 10000097 */ b .L800088CC
|
||||
/* 009270 80008670 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
@@ -202,7 +202,7 @@ glabel func_80008424
|
||||
/* 0092E8 800086E8 AFA70040 */ sw $a3, 0x40($sp)
|
||||
/* 0092EC 800086EC AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 0092F0 800086F0 AFA50028 */ sw $a1, 0x28($sp)
|
||||
/* 0092F4 800086F4 0C00C3F2 */ jal func_80030FC8
|
||||
/* 0092F4 800086F4 0C00C3F2 */ jal player_speed
|
||||
/* 0092F8 800086F8 00E02025 */ move $a0, $a3
|
||||
/* 0092FC 800086FC 8FA50028 */ lw $a1, 0x28($sp)
|
||||
/* 009300 80008700 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
@@ -219,7 +219,7 @@ glabel func_80008424
|
||||
/* 009328 80008728 E7A20034 */ swc1 $f2, 0x34($sp)
|
||||
/* 00932C 8000872C AFA70040 */ sw $a3, 0x40($sp)
|
||||
/* 009330 80008730 AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 009334 80008734 0C00C3F2 */ jal func_80030FC8
|
||||
/* 009334 80008734 0C00C3F2 */ jal player_speed
|
||||
/* 009338 80008738 AFA50028 */ sw $a1, 0x28($sp)
|
||||
/* 00933C 8000873C 8FA50028 */ lw $a1, 0x28($sp)
|
||||
/* 009340 80008740 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
@@ -263,7 +263,7 @@ glabel func_80008424
|
||||
/* 0093CC 800087CC 24010014 */ li $at, 20
|
||||
/* 0093D0 800087D0 11A10005 */ beq $t5, $at, .L800087E8
|
||||
/* 0093D4 800087D4 00000000 */ nop
|
||||
/* 0093D8 800087D8 0C00C3F2 */ jal func_80030FC8
|
||||
/* 0093D8 800087D8 0C00C3F2 */ jal player_speed
|
||||
/* 0093DC 800087DC 00E02025 */ move $a0, $a3
|
||||
/* 0093E0 800087E0 1000003A */ b .L800088CC
|
||||
/* 0093E4 800087E4 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
@@ -293,7 +293,7 @@ glabel func_80008424
|
||||
/* 00943C 8000883C 3C010020 */ lui $at, 0x20
|
||||
/* 009440 80008840 00E02025 */ move $a0, $a3
|
||||
/* 009444 80008844 0301C825 */ or $t9, $t8, $at
|
||||
/* 009448 80008848 0C00C3F2 */ jal func_80030FC8
|
||||
/* 009448 80008848 0C00C3F2 */ jal player_speed
|
||||
/* 00944C 8000884C ACF900BC */ sw $t9, 0xbc($a3)
|
||||
/* 009450 80008850 1000001E */ b .L800088CC
|
||||
/* 009454 80008854 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
|
||||
@@ -255,8 +255,8 @@ glabel func_800088D8
|
||||
.L80008C88:
|
||||
/* 009888 80008C88 5420FFF3 */ bnel $at, $zero, .L80008C58
|
||||
/* 00988C 80008C8C 948F0000 */ lhu $t7, ($a0)
|
||||
/* 009890 80008C90 3C098019 */ lui $t1, %hi(D_8018EDF3) # $t1, 0x8019
|
||||
/* 009894 80008C94 8129EDF3 */ lb $t1, %lo(D_8018EDF3)($t1)
|
||||
/* 009890 80008C90 3C098019 */ lui $t1, %hi(gPlayerCount) # $t1, 0x8019
|
||||
/* 009894 80008C94 8129EDF3 */ lb $t1, %lo(gPlayerCount)($t1)
|
||||
/* 009898 80008C98 3C188016 */ lui $t8, %hi(gGPCurrentRaceRankByPlayerId)
|
||||
/* 00989C 80008C9C 00002025 */ move $a0, $zero
|
||||
/* 0098A0 80008CA0 19200010 */ blez $t1, .L80008CE4
|
||||
|
||||
@@ -336,8 +336,8 @@ glabel func_8000929C
|
||||
/* 00A360 80009760 3C068016 */ lui $a2, %hi(D_80163448) # $a2, 0x8016
|
||||
/* 00A364 80009764 15A00013 */ bnez $t5, .L800097B4
|
||||
/* 00A368 80009768 3C038016 */ lui $v1, %hi(D_80162FCE) # $v1, 0x8016
|
||||
/* 00A36C 8000976C 3C0E8019 */ lui $t6, %hi(D_8018EDF3) # $t6, 0x8019
|
||||
/* 00A370 80009770 81CEEDF3 */ lb $t6, %lo(D_8018EDF3)($t6)
|
||||
/* 00A36C 8000976C 3C0E8019 */ lui $t6, %hi(gPlayerCount) # $t6, 0x8019
|
||||
/* 00A370 80009770 81CEEDF3 */ lb $t6, %lo(gPlayerCount)($t6)
|
||||
/* 00A374 80009774 24010002 */ li $at, 2
|
||||
/* 00A378 80009778 15C1000E */ bne $t6, $at, .L800097B4
|
||||
/* 00A37C 8000977C 00000000 */ nop
|
||||
|
||||
@@ -20,8 +20,8 @@ glabel func_800099EC
|
||||
/* 00A634 80009A34 AFA5004C */ sw $a1, 0x4c($sp)
|
||||
/* 00A638 80009A38 14200027 */ bnez $at, .L80009AD8
|
||||
/* 00A63C 80009A3C AFAE0040 */ sw $t6, 0x40($sp)
|
||||
/* 00A640 80009A40 3C048019 */ lui $a0, %hi(D_8018EDF3) # $a0, 0x8019
|
||||
/* 00A644 80009A44 8084EDF3 */ lb $a0, %lo(D_8018EDF3)($a0)
|
||||
/* 00A640 80009A40 3C048019 */ lui $a0, %hi(gPlayerCount) # $a0, 0x8019
|
||||
/* 00A644 80009A44 8084EDF3 */ lb $a0, %lo(gPlayerCount)($a0)
|
||||
/* 00A648 80009A48 00008025 */ move $s0, $zero
|
||||
/* 00A64C 80009A4C 0014A880 */ sll $s5, $s4, 2
|
||||
/* 00A650 80009A50 18800021 */ blez $a0, .L80009AD8
|
||||
@@ -51,8 +51,8 @@ glabel func_800099EC
|
||||
/* 00A6AC 80009AAC 0C0324B3 */ jal func_800C92CC
|
||||
/* 00A6B0 80009AB0 328400FF */ andi $a0, $s4, 0xff
|
||||
/* 00A6B4 80009AB4 A6E00000 */ sh $zero, ($s7)
|
||||
/* 00A6B8 80009AB8 3C048019 */ lui $a0, %hi(D_8018EDF3) # $a0, 0x8019
|
||||
/* 00A6BC 80009ABC 8084EDF3 */ lb $a0, %lo(D_8018EDF3)($a0)
|
||||
/* 00A6B8 80009AB8 3C048019 */ lui $a0, %hi(gPlayerCount) # $a0, 0x8019
|
||||
/* 00A6BC 80009ABC 8084EDF3 */ lb $a0, %lo(gPlayerCount)($a0)
|
||||
/* 00A6C0 80009AC0 26100001 */ addiu $s0, $s0, 1
|
||||
.L80009AC4:
|
||||
/* 00A6C4 80009AC4 0204082A */ slt $at, $s0, $a0
|
||||
|
||||
@@ -441,7 +441,7 @@ glabel func_80009B60
|
||||
/* 00AD5C 8000A15C AD4E00BC */ sw $t6, 0xbc($t2)
|
||||
/* 00AD60 8000A160 8DEF3378 */ lw $t7, %lo(D_80163378)($t7)
|
||||
/* 00AD64 8000A164 8FB80030 */ lw $t8, 0x30($sp)
|
||||
/* 00AD68 8000A168 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 00AD68 8000A168 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 00AD6C 8000A16C 31EC0001 */ andi $t4, $t7, 1
|
||||
/* 00AD70 8000A170 1198000C */ beq $t4, $t8, .L8000A1A4
|
||||
/* 00AD74 8000A174 01402025 */ move $a0, $t2
|
||||
@@ -457,7 +457,7 @@ glabel func_80009B60
|
||||
/* 00AD9C 8000A19C 100003E5 */ b .L8000B134
|
||||
/* 00ADA0 8000A1A0 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
.L8000A1A4:
|
||||
/* 00ADA4 8000A1A4 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 00ADA4 8000A1A4 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 00ADA8 8000A1A8 18400016 */ blez $v0, .L8000A204
|
||||
/* 00ADAC 8000A1AC 28410003 */ slti $at, $v0, 3
|
||||
/* 00ADB0 8000A1B0 10200014 */ beqz $at, .L8000A204
|
||||
|
||||
@@ -123,8 +123,8 @@ glabel func_8000DF8C
|
||||
/* 00ECEC 8000E0EC 10000037 */ b .L8000E1CC
|
||||
/* 00ECF0 8000E0F0 AFAF004C */ sw $t7, 0x4c($sp)
|
||||
.L8000E0F4:
|
||||
/* 00ECF4 8000E0F4 3C038019 */ lui $v1, %hi(D_8018EDF3) # $v1, 0x8019
|
||||
/* 00ECF8 8000E0F8 8063EDF3 */ lb $v1, %lo(D_8018EDF3)($v1)
|
||||
/* 00ECF4 8000E0F4 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
||||
/* 00ECF8 8000E0F8 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
||||
/* 00ECFC 8000E0FC 00002025 */ move $a0, $zero
|
||||
/* 00ED00 8000E100 3C0141C8 */ li $at, 0x41C80000 # 25.000000
|
||||
/* 00ED04 8000E104 58600032 */ blezl $v1, .L8000E1D0
|
||||
@@ -163,17 +163,17 @@ glabel func_8000DF8C
|
||||
/* 00ED84 8000E184 14EB0007 */ bne $a3, $t3, .L8000E1A4
|
||||
/* 00ED88 8000E188 00008825 */ move $s1, $zero
|
||||
/* 00ED8C 8000E18C 8C4C000C */ lw $t4, 0xc($v0)
|
||||
/* 00ED90 8000E190 3C038019 */ lui $v1, %hi(D_8018EDF3) # $v1, 0x8019
|
||||
/* 00ED90 8000E190 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
||||
/* 00ED94 8000E194 01886825 */ or $t5, $t4, $t0
|
||||
/* 00ED98 8000E198 AC4D000C */ sw $t5, 0xc($v0)
|
||||
/* 00ED9C 8000E19C 10000006 */ b .L8000E1B8
|
||||
/* 00EDA0 8000E1A0 8063EDF3 */ lb $v1, %lo(D_8018EDF3)($v1)
|
||||
/* 00EDA0 8000E1A0 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
||||
.L8000E1A4:
|
||||
/* 00EDA4 8000E1A4 8C4E000C */ lw $t6, 0xc($v0)
|
||||
/* 00EDA8 8000E1A8 3C038019 */ lui $v1, %hi(D_8018EDF3) # $v1, 0x8019
|
||||
/* 00EDA8 8000E1A8 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
||||
/* 00EDAC 8000E1AC 01C57825 */ or $t7, $t6, $a1
|
||||
/* 00EDB0 8000E1B0 AC4F000C */ sw $t7, 0xc($v0)
|
||||
/* 00EDB4 8000E1B4 8063EDF3 */ lb $v1, %lo(D_8018EDF3)($v1)
|
||||
/* 00EDB4 8000E1B4 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
||||
.L8000E1B8:
|
||||
/* 00EDB8 8000E1B8 0083082A */ slt $at, $a0, $v1
|
||||
.L8000E1BC:
|
||||
|
||||
@@ -23,8 +23,8 @@ glabel func_8000F124
|
||||
/* 00FD74 8000F174 26313348 */ addiu $s1, %lo(D_80163348) # addiu $s1, $s1, 0x3348
|
||||
/* 00FD78 8000F178 15E0004A */ bnez $t7, .L8000F2A4
|
||||
/* 00FD7C 8000F17C 00008025 */ move $s0, $zero
|
||||
/* 00FD80 8000F180 3C128019 */ lui $s2, %hi(D_8018EDF3) # $s2, 0x8019
|
||||
/* 00FD84 8000F184 2652EDF3 */ addiu $s2, %lo(D_8018EDF3) # addiu $s2, $s2, -0x120d
|
||||
/* 00FD80 8000F180 3C128019 */ lui $s2, %hi(gPlayerCount) # $s2, 0x8019
|
||||
/* 00FD84 8000F184 2652EDF3 */ addiu $s2, %lo(gPlayerCount) # addiu $s2, $s2, -0x120d
|
||||
.L8000F188:
|
||||
/* 00FD88 8000F188 0C0ADF8D */ jal random_int
|
||||
/* 00FD8C 8000F18C 24040008 */ li $a0, 8
|
||||
|
||||
@@ -188,13 +188,13 @@ glabel func_8001A588
|
||||
/* 01B414 8001A814 00000000 */ nop
|
||||
/* 01B418 8001A818 8D020000 */ lw $v0, ($t0)
|
||||
/* 01B41C 8001A81C 24010104 */ li $at, 260
|
||||
/* 01B420 8001A820 3C0D8019 */ lui $t5, %hi(D_8018EDF3) # $t5, 0x8019
|
||||
/* 01B420 8001A820 3C0D8019 */ lui $t5, %hi(gPlayerCount) # $t5, 0x8019
|
||||
/* 01B424 8001A824 10410003 */ beq $v0, $at, .L8001A834
|
||||
/* 01B428 8001A828 24010105 */ li $at, 261
|
||||
/* 01B42C 8001A82C 1441004D */ bne $v0, $at, .L8001A964
|
||||
/* 01B430 8001A830 00000000 */ nop
|
||||
.L8001A834:
|
||||
/* 01B434 8001A834 81ADEDF3 */ lb $t5, %lo(D_8018EDF3)($t5)
|
||||
/* 01B434 8001A834 81ADEDF3 */ lb $t5, %lo(gPlayerCount)($t5)
|
||||
/* 01B438 8001A838 24010002 */ li $at, 2
|
||||
/* 01B43C 8001A83C 00001825 */ move $v1, $zero
|
||||
/* 01B440 8001A840 15A1000A */ bne $t5, $at, .L8001A86C
|
||||
|
||||
@@ -96,7 +96,7 @@ glabel L8001ACAC
|
||||
/* 01B928 8001AD28 00032400 */ sll $a0, $v1, 0x10
|
||||
/* 01B92C 8001AD2C 00046403 */ sra $t4, $a0, 0x10
|
||||
/* 01B930 8001AD30 01802025 */ move $a0, $t4
|
||||
/* 01B934 8001AD34 0C01EBDE */ jal func_8007AF78
|
||||
/* 01B934 8001AD34 0C01EBDE */ jal gen_random_item_cpu
|
||||
/* 01B938 8001AD38 85A50002 */ lh $a1, 2($t5)
|
||||
/* 01B93C 8001AD3C 8FA40030 */ lw $a0, 0x30($sp)
|
||||
/* 01B940 8001AD40 02002825 */ move $a1, $s0
|
||||
@@ -201,7 +201,7 @@ glabel L8001AD64
|
||||
.L8001AEB4:
|
||||
/* 01BAB4 8001AEB4 1505001D */ bne $t0, $a1, .L8001AF2C
|
||||
/* 01BAB8 8001AEB8 00000000 */ nop
|
||||
/* 01BABC 8001AEBC 0C0ACB5C */ jal func_802B2D70
|
||||
/* 01BABC 8001AEBC 0C0ACB5C */ jal use_banana_item
|
||||
/* 01BAC0 8001AEC0 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01BAC4 8001AEC4 A6020002 */ sh $v0, 2($s0)
|
||||
/* 01BAC8 8001AEC8 86030002 */ lh $v1, 2($s0)
|
||||
@@ -351,7 +351,7 @@ glabel L8001AFD8
|
||||
/* 01BCE4 8001B0E4 10000353 */ b .L8001BE34
|
||||
/* 01BCE8 8001B0E8 86020004 */ lh $v0, 4($s0)
|
||||
glabel L8001B0EC
|
||||
/* 01BCEC 8001B0EC 0C0ACB5C */ jal func_802B2D70
|
||||
/* 01BCEC 8001B0EC 0C0ACB5C */ jal use_banana_item
|
||||
/* 01BCF0 8001B0F0 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01BCF4 8001B0F4 8FAA0030 */ lw $t2, 0x30($sp)
|
||||
/* 01BCF8 8001B0F8 A6020002 */ sh $v0, 2($s0)
|
||||
@@ -608,7 +608,7 @@ glabel L8001B4AC
|
||||
/* 01C0B4 8001B4B4 29C10050 */ slti $at, $t6, 0x50
|
||||
/* 01C0B8 8001B4B8 50200019 */ beql $at, $zero, .L8001B520
|
||||
/* 01C0BC 8001B4BC A6000000 */ sh $zero, ($s0)
|
||||
/* 01C0C0 8001B4C0 0C0AC727 */ jal func_802B1C9C
|
||||
/* 01C0C0 8001B4C0 0C0AC727 */ jal use_green_shell_item
|
||||
/* 01C0C4 8001B4C4 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01C0C8 8001B4C8 A6020002 */ sh $v0, 2($s0)
|
||||
/* 01C0CC 8001B4CC 86030002 */ lh $v1, 2($s0)
|
||||
@@ -715,7 +715,7 @@ glabel L8001B630
|
||||
/* 01C238 8001B638 29610050 */ slti $at, $t3, 0x50
|
||||
/* 01C23C 8001B63C 50200019 */ beql $at, $zero, .L8001B6A4
|
||||
/* 01C240 8001B640 A6000000 */ sh $zero, ($s0)
|
||||
/* 01C244 8001B644 0C0AC792 */ jal func_802B1E48
|
||||
/* 01C244 8001B644 0C0AC792 */ jal use_red_shell_item
|
||||
/* 01C248 8001B648 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01C24C 8001B64C A6020002 */ sh $v0, 2($s0)
|
||||
/* 01C250 8001B650 86030002 */ lh $v1, 2($s0)
|
||||
@@ -824,7 +824,7 @@ glabel L8001B7BC
|
||||
/* 01C3C4 8001B7C4 29A10050 */ slti $at, $t5, 0x50
|
||||
/* 01C3C8 8001B7C8 50200019 */ beql $at, $zero, .L8001B830
|
||||
/* 01C3CC 8001B7CC A6000000 */ sh $zero, ($s0)
|
||||
/* 01C3D0 8001B7D0 0C0AC5FD */ jal func_802B17F4
|
||||
/* 01C3D0 8001B7D0 0C0AC5FD */ jal use_banana_bunch_item
|
||||
/* 01C3D4 8001B7D4 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01C3D8 8001B7D8 A6020002 */ sh $v0, 2($s0)
|
||||
/* 01C3DC 8001B7DC 86030002 */ lh $v1, 2($s0)
|
||||
@@ -1000,7 +1000,7 @@ glabel L8001B9D0
|
||||
/* 01C630 8001BA30 10000100 */ b .L8001BE34
|
||||
/* 01C634 8001BA34 86020004 */ lh $v0, 4($s0)
|
||||
glabel L8001BA38
|
||||
/* 01C638 8001BA38 0C0ACB10 */ jal func_802B2C40
|
||||
/* 01C638 8001BA38 0C0ACB10 */ jal use_fake_itembox_item
|
||||
/* 01C63C 8001BA3C 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01C640 8001BA40 A6020002 */ sh $v0, 2($s0)
|
||||
/* 01C644 8001BA44 86030002 */ lh $v1, 2($s0)
|
||||
@@ -1134,7 +1134,7 @@ glabel L8001BB30
|
||||
/* 01C820 8001BC20 10000084 */ b .L8001BE34
|
||||
/* 01C824 8001BC24 86020004 */ lh $v0, 4($s0)
|
||||
glabel L8001BC28
|
||||
/* 01C828 8001BC28 0C0ACBAF */ jal func_802B2EBC
|
||||
/* 01C828 8001BC28 0C0ACBAF */ jal use_thunder_item
|
||||
/* 01C82C 8001BC2C 8FA4002C */ lw $a0, 0x2c($sp)
|
||||
/* 01C830 8001BC30 8FAA0030 */ lw $t2, 0x30($sp)
|
||||
/* 01C834 8001BC34 0C032B18 */ jal func_800CAC60
|
||||
|
||||
@@ -245,8 +245,8 @@ glabel func_8005CB60
|
||||
/* 05DAF0 8005CEF0 8602003C */ lh $v0, 0x3c($s0)
|
||||
/* 05DAF4 8005CEF4 0C01E415 */ jal func_80079054
|
||||
/* 05DAF8 8005CEF8 00E02025 */ move $a0, $a3
|
||||
/* 05DAFC 8005CEFC 3C0A8019 */ lui $t2, %hi(D_8018EDF3) # $t2, 0x8019
|
||||
/* 05DB00 8005CF00 814AEDF3 */ lb $t2, %lo(D_8018EDF3)($t2)
|
||||
/* 05DAFC 8005CEFC 3C0A8019 */ lui $t2, %hi(gPlayerCount) # $t2, 0x8019
|
||||
/* 05DB00 8005CF00 814AEDF3 */ lb $t2, %lo(gPlayerCount)($t2)
|
||||
/* 05DB04 8005CF04 24060001 */ li $a2, 1
|
||||
/* 05DB08 8005CF08 3C018019 */ lui $at, %hi(D_8018D20C) # $at, 0x8019
|
||||
/* 05DB0C 8005CF0C 14CA005D */ bne $a2, $t2, .L8005D084
|
||||
|
||||
@@ -280,11 +280,11 @@ glabel func_8006AFD0
|
||||
/* 06BF90 8006B390 46044181 */ sub.s $f6, $f8, $f4
|
||||
/* 06BF94 8006B394 4600348D */ trunc.w.s $f18, $f6
|
||||
/* 06BF98 8006B398 440E9000 */ mfc1 $t6, $f18
|
||||
/* 06BF9C 8006B39C 0C008784 */ jal func_80021E10
|
||||
/* 06BF9C 8006B39C 0C008784 */ jal mtxf_translate_rotate
|
||||
/* 06BFA0 8006B3A0 A7AE0130 */ sh $t6, 0x130($sp)
|
||||
/* 06BFA4 8006B3A4 27B00140 */ addiu $s0, $sp, 0x140
|
||||
/* 06BFA8 8006B3A8 4405A000 */ mfc1 $a1, $f20
|
||||
/* 06BFAC 8006B3AC 0C0087E1 */ jal func_80021F84
|
||||
/* 06BFAC 8006B3AC 0C0087E1 */ jal mtxf_scale2
|
||||
/* 06BFB0 8006B3B0 02002025 */ move $a0, $s0
|
||||
/* 06BFB4 8006B3B4 3C198016 */ lui $t9, %hi(gMatrixEffectCount) # $t9, 0x8016
|
||||
/* 06BFB8 8006B3B8 87394AF0 */ lh $t9, %lo(gMatrixEffectCount)($t9)
|
||||
@@ -294,7 +294,7 @@ glabel func_8006AFD0
|
||||
/* 06BFC8 8006B3C8 3401FAC0 */ li $at, 64192
|
||||
/* 06BFCC 8006B3CC 01F82021 */ addu $a0, $t7, $t8
|
||||
/* 06BFD0 8006B3D0 00812021 */ addu $a0, $a0, $at
|
||||
/* 06BFD4 8006B3D4 0C008860 */ jal func_80022180
|
||||
/* 06BFD4 8006B3D4 0C008860 */ jal convert_to_fixed_point_matrix
|
||||
/* 06BFD8 8006B3D8 02002825 */ move $a1, $s0
|
||||
/* 06BFDC 8006B3DC 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 06BFE0 8006B3E0 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
@@ -411,7 +411,7 @@ glabel func_8006AFD0
|
||||
/* 06C19C 8006B59C AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 06C1A0 8006B5A0 8C620000 */ lw $v0, ($v1)
|
||||
/* 06C1A4 8006B5A4 3C19F550 */ lui $t9, 0xf550
|
||||
/* 06C1A8 8006B5A8 3C1F0D01 */ lui $ra, %hi(D_0D008C78) # $ra, 0xd01
|
||||
/* 06C1A8 8006B5A8 3C1F0D01 */ lui $ra, %hi(common_square_plain_render) # $ra, 0xd01
|
||||
/* 06C1AC 8006B5AC 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 06C1B0 8006B5B0 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 06C1B4 8006B5B4 AC580004 */ sw $t8, 4($v0)
|
||||
@@ -454,16 +454,16 @@ glabel func_8006AFD0
|
||||
/* 06C248 8006B648 AC580000 */ sw $t8, ($v0)
|
||||
/* 06C24C 8006B64C AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 06C250 8006B650 8C620000 */ lw $v0, ($v1)
|
||||
/* 06C254 8006B654 3C18800E */ lui $t8, %hi(D_800E5250) # $t8, 0x800e
|
||||
/* 06C254 8006B654 3C18800E */ lui $t8, %hi(gBalloonVertexPlane1) # $t8, 0x800e
|
||||
/* 06C258 8006B658 3C190400 */ lui $t9, (0x0400103F >> 16) # lui $t9, 0x400
|
||||
/* 06C25C 8006B65C 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 06C260 8006B660 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 06C264 8006B664 3739103F */ ori $t9, (0x0400103F & 0xFFFF) # ori $t9, $t9, 0x103f
|
||||
/* 06C268 8006B668 27185250 */ addiu $t8, %lo(D_800E5250) # addiu $t8, $t8, 0x5250
|
||||
/* 06C268 8006B668 27185250 */ addiu $t8, %lo(gBalloonVertexPlane1) # addiu $t8, $t8, 0x5250
|
||||
/* 06C26C 8006B66C AC580004 */ sw $t8, 4($v0)
|
||||
/* 06C270 8006B670 AC590000 */ sw $t9, ($v0)
|
||||
/* 06C274 8006B674 8C620000 */ lw $v0, ($v1)
|
||||
/* 06C278 8006B678 27FF8C78 */ addiu $ra, %lo(D_0D008C78) # addiu $ra, $ra, -0x7388
|
||||
/* 06C278 8006B678 27FF8C78 */ addiu $ra, %lo(common_square_plain_render) # addiu $ra, $ra, -0x7388
|
||||
/* 06C27C 8006B67C 3C19FD50 */ lui $t9, 0xfd50
|
||||
/* 06C280 8006B680 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 06C284 8006B684 AC6F0000 */ sw $t7, ($v1)
|
||||
@@ -523,12 +523,12 @@ glabel func_8006AFD0
|
||||
/* 06C35C 8006B75C AC580000 */ sw $t8, ($v0)
|
||||
/* 06C360 8006B760 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 06C364 8006B764 8C620000 */ lw $v0, ($v1)
|
||||
/* 06C368 8006B768 3C18800E */ lui $t8, %hi(D_800E5290) # $t8, 0x800e
|
||||
/* 06C368 8006B768 3C18800E */ lui $t8, %hi(gBalloonVertexPlane2) # $t8, 0x800e
|
||||
/* 06C36C 8006B76C 3C190400 */ lui $t9, (0x0400103F >> 16) # lui $t9, 0x400
|
||||
/* 06C370 8006B770 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 06C374 8006B774 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 06C378 8006B778 3739103F */ ori $t9, (0x0400103F & 0xFFFF) # ori $t9, $t9, 0x103f
|
||||
/* 06C37C 8006B77C 27185290 */ addiu $t8, %lo(D_800E5290) # addiu $t8, $t8, 0x5290
|
||||
/* 06C37C 8006B77C 27185290 */ addiu $t8, %lo(gBalloonVertexPlane2) # addiu $t8, $t8, 0x5290
|
||||
/* 06C380 8006B780 AC580004 */ sw $t8, 4($v0)
|
||||
/* 06C384 8006B784 AC590000 */ sw $t9, ($v0)
|
||||
/* 06C388 8006B788 8C620000 */ lw $v0, ($v1)
|
||||
|
||||
@@ -568,14 +568,14 @@ glabel L8006F734
|
||||
/* 070368 8006F768 3C048019 */ lui $a0, %hi(D_8018D2E0) # $a0, 0x8019
|
||||
/* 07036C 8006F76C 2484D2E0 */ addiu $a0, %lo(D_8018D2E0) # addiu $a0, $a0, -0x2d20
|
||||
/* 070370 8006F770 11200006 */ beqz $t1, .L8006F78C
|
||||
/* 070374 8006F774 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 070374 8006F774 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 070378 8006F778 3C0A8019 */ lui $t2, %hi(D_8018D2B0) # $t2, 0x8019
|
||||
/* 07037C 8006F77C 854AD2B0 */ lh $t2, %lo(D_8018D2B0)($t2)
|
||||
/* 070380 8006F780 848B0000 */ lh $t3, ($a0)
|
||||
/* 070384 8006F784 014B6023 */ subu $t4, $t2, $t3
|
||||
/* 070388 8006F788 A48C0000 */ sh $t4, ($a0)
|
||||
.L8006F78C:
|
||||
/* 07038C 8006F78C 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 07038C 8006F78C 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 070390 8006F790 24010004 */ li $at, 4
|
||||
/* 070394 8006F794 14410005 */ bne $v0, $at, .L8006F7AC
|
||||
/* 070398 8006F798 240D00A0 */ li $t5, 160
|
||||
|
||||
@@ -23,9 +23,9 @@ glabel func_8006F8CC
|
||||
/* 070520 8006F920 24C657F0 */ addiu $a2, %lo(D_801657F0) # addiu $a2, $a2, 0x57f0
|
||||
/* 070524 8006F924 A0C00000 */ sb $zero, ($a2)
|
||||
/* 070528 8006F928 A1030000 */ sb $v1, ($t0)
|
||||
/* 07052C 8006F92C 3C048019 */ lui $a0, %hi(D_8018EDF3) # $a0, 0x8019
|
||||
/* 07052C 8006F92C 3C048019 */ lui $a0, %hi(gPlayerCount) # $a0, 0x8019
|
||||
/* 070530 8006F930 A04F0000 */ sb $t7, ($v0)
|
||||
/* 070534 8006F934 8084EDF3 */ lb $a0, %lo(D_8018EDF3)($a0)
|
||||
/* 070534 8006F934 8084EDF3 */ lb $a0, %lo(gPlayerCount)($a0)
|
||||
/* 070538 8006F938 24010004 */ li $at, 4
|
||||
/* 07053C 8006F93C 3C18800E */ lui $t8, %hi(gModeSelection) # $t8, 0x800e
|
||||
/* 070540 8006F940 14810012 */ bne $a0, $at, .L8006F98C
|
||||
|
||||
@@ -68,8 +68,8 @@ glabel func_8006FA94
|
||||
/* 07079C 8006FB9C AC600008 */ sw $zero, 8($v1)
|
||||
/* 0707A0 8006FBA0 AC600004 */ sw $zero, 4($v1)
|
||||
/* 0707A4 8006FBA4 AC600000 */ sw $zero, ($v1)
|
||||
/* 0707A8 8006FBA8 3C1F8019 */ lui $ra, %hi(D_8018EDF3) # $ra, 0x8019
|
||||
/* 0707AC 8006FBAC 83FFEDF3 */ lb $ra, %lo(D_8018EDF3)($ra)
|
||||
/* 0707A8 8006FBA8 3C1F8019 */ lui $ra, %hi(gPlayerCount) # $ra, 0x8019
|
||||
/* 0707AC 8006FBAC 83FFEDF3 */ lb $ra, %lo(gPlayerCount)($ra)
|
||||
/* 0707B0 8006FBB0 3C018016 */ lui $at, %hi(D_801658BC) # $at, 0x8016
|
||||
/* 0707B4 8006FBB4 A02E58BC */ sb $t6, %lo(D_801658BC)($at)
|
||||
/* 0707B8 8006FBB8 24010001 */ li $at, 1
|
||||
|
||||
@@ -109,10 +109,10 @@ glabel L80070848
|
||||
/* 0714D0 800708D0 26313EA0 */ addiu $s1, %lo(D_80183EA0) # addiu $s1, $s1, 0x3ea0
|
||||
/* 0714D4 800708D4 19C0002A */ blez $t6, .L80070980
|
||||
/* 0714D8 800708D8 00009825 */ move $s3, $zero
|
||||
/* 0714DC 800708DC 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 0714DC 800708DC 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 0714E0 800708E0 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 0714E4 800708E4 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 0714E8 800708E8 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 0714E8 800708E8 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 0714EC 800708EC 00009025 */ move $s2, $zero
|
||||
/* 0714F0 800708F0 241600E0 */ li $s6, 224
|
||||
.L800708F4:
|
||||
@@ -155,8 +155,8 @@ glabel L80070848
|
||||
/* 071580 80070980 3C108018 */ lui $s0, %hi(D_80183F28) # $s0, 0x8018
|
||||
/* 071584 80070984 8E103F28 */ lw $s0, %lo(D_80183F28)($s0)
|
||||
/* 071588 80070988 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 07158C 8007098C 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 071590 80070990 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 07158C 8007098C 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 071590 80070990 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 071594 80070994 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 071598 80070998 241600E0 */ li $s6, 224
|
||||
/* 07159C 8007099C 00002825 */ move $a1, $zero
|
||||
@@ -222,7 +222,7 @@ glabel L80070848
|
||||
/* 071684 80070A84 2631C0B0 */ addiu $s1, %lo(D_8018C0B0) # addiu $s1, $s1, -0x3f50
|
||||
/* 071688 80070A88 2610C030 */ addiu $s0, %lo(D_8018C030) # addiu $s0, $s0, -0x3fd0
|
||||
.L80070A8C:
|
||||
/* 07168C 80070A8C 0C01C7DB */ jal func_80071F6C
|
||||
/* 07168C 80070A8C 0C01C7DB */ jal delete_object
|
||||
/* 071690 80070A90 02002025 */ move $a0, $s0
|
||||
/* 071694 80070A94 26100004 */ addiu $s0, $s0, 4
|
||||
/* 071698 80070A98 1611FFFC */ bne $s0, $s1, .L80070A8C
|
||||
@@ -244,12 +244,12 @@ glabel L80070AA8
|
||||
/* 0716D4 80070AD4 24C67DB8 */ addiu $a2, %lo(d_course_banshee_boardwalk_bat) # addiu $a2, $a2, 0x7db8
|
||||
/* 0716D8 80070AD8 24A57BB8 */ addiu $a1, %lo(d_course_banshee_boardwalk_bat_tlut) # addiu $a1, $a1, 0x7bb8
|
||||
/* 0716DC 80070ADC 24070020 */ li $a3, 32
|
||||
/* 0716E0 80070AE0 0C01CD11 */ jal func_80073444
|
||||
/* 0716E0 80070AE0 0C01CD11 */ jal init_texture_object
|
||||
/* 0716E4 80070AE4 02002025 */ move $a0, $s0
|
||||
/* 0716E8 80070AE8 241600E0 */ li $s6, 224
|
||||
/* 0716EC 80070AEC 02160019 */ multu $s0, $s6
|
||||
/* 0716F0 80070AF0 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 0716F4 80070AF4 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 0716F0 80070AF0 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 0716F4 80070AF4 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 0716F8 80070AF8 340D8000 */ li $t5, 32768
|
||||
/* 0716FC 80070AFC 8E240004 */ lw $a0, 4($s1)
|
||||
/* 071700 80070B00 00002825 */ move $a1, $zero
|
||||
@@ -285,12 +285,12 @@ glabel L80070B30
|
||||
/* 071770 80070B70 26523F28 */ addiu $s2, %lo(D_80183F28) # addiu $s2, $s2, 0x3f28
|
||||
/* 071774 80070B74 3C11800E */ lui $s1, %hi(D_800E5E14) # $s1, 0x800e
|
||||
/* 071778 80070B78 3C03800E */ lui $v1, %hi(D_800E5E8C) # $v1, 0x800e
|
||||
/* 07177C 80070B7C 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 07177C 80070B7C 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 071780 80070B80 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 071784 80070B84 3C13800E */ lui $s3, %hi(D_800E5EE6) # $s3, 0x800e
|
||||
/* 071788 80070B88 26735EE6 */ addiu $s3, %lo(D_800E5EE6) # addiu $s3, $s3, 0x5ee6
|
||||
/* 07178C 80070B8C 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 071790 80070B90 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 071790 80070B90 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 071794 80070B94 24635E8C */ addiu $v1, %lo(D_800E5E8C) # addiu $v1, $v1, 0x5e8c
|
||||
/* 071798 80070B98 26315E14 */ addiu $s1, %lo(D_800E5E14) # addiu $s1, $s1, 0x5e14
|
||||
/* 07179C 80070B9C 241600E0 */ li $s6, 224
|
||||
@@ -363,12 +363,12 @@ glabel L80070C60
|
||||
/* 07189C 80070C9C 26313EA0 */ addiu $s1, %lo(D_80183EA0) # addiu $s1, $s1, 0x3ea0
|
||||
/* 0718A0 80070CA0 3C128018 */ lui $s2, %hi(D_80183F28) # $s2, 0x8018
|
||||
/* 0718A4 80070CA4 3C03800E */ lui $v1, %hi(D_800E5EE8) # $v1, 0x800e
|
||||
/* 0718A8 80070CA8 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 0718A8 80070CA8 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 0718AC 80070CAC 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 0718B0 80070CB0 3C13800E */ lui $s3, %hi(D_800E5F80) # $s3, 0x800e
|
||||
/* 0718B4 80070CB4 26735F80 */ addiu $s3, %lo(D_800E5F80) # addiu $s3, $s3, 0x5f80
|
||||
/* 0718B8 80070CB8 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 0718BC 80070CBC 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 0718BC 80070CBC 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 0718C0 80070CC0 24635EE8 */ addiu $v1, %lo(D_800E5EE8) # addiu $v1, $v1, 0x5ee8
|
||||
/* 0718C4 80070CC4 26523F28 */ addiu $s2, %lo(D_80183F28) # addiu $s2, $s2, 0x3f28
|
||||
/* 0718C8 80070CC8 241600E0 */ li $s6, 224
|
||||
@@ -448,12 +448,12 @@ glabel L80070DD8
|
||||
/* 0719E8 80070DE8 11C1002B */ beq $t6, $at, .L80070E98
|
||||
/* 0719EC 80070DEC 26313EA0 */ addiu $s1, %lo(D_80183EA0) # addiu $s1, $s1, 0x3ea0
|
||||
/* 0719F0 80070DF0 3C03800E */ lui $v1, %hi(D_800E5F80) # $v1, 0x800e
|
||||
/* 0719F4 80070DF4 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 0719F4 80070DF4 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 0719F8 80070DF8 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 0719FC 80070DFC 3C12800E */ lui $s2, %hi(D_800E5FD0) # $s2, 0x800e
|
||||
/* 071A00 80070E00 26525FD0 */ addiu $s2, %lo(D_800E5FD0) # addiu $s2, $s2, 0x5fd0
|
||||
/* 071A04 80070E04 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 071A08 80070E08 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 071A08 80070E08 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 071A0C 80070E0C 24635F80 */ addiu $v1, %lo(D_800E5F80) # addiu $v1, $v1, 0x5f80
|
||||
/* 071A10 80070E10 241600E0 */ li $s6, 224
|
||||
.L80070E14:
|
||||
@@ -491,11 +491,11 @@ glabel L80070DD8
|
||||
/* 071A90 80070E90 1472FFE0 */ bne $v1, $s2, .L80070E14
|
||||
/* 071A94 80070E94 E44A0024 */ swc1 $f10, 0x24($v0)
|
||||
.L80070E98:
|
||||
/* 071A98 80070E98 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 071A98 80070E98 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 071A9C 80070E9C 3C128018 */ lui $s2, %hi(D_80183F28) # $s2, 0x8018
|
||||
/* 071AA0 80070EA0 3C138018 */ lui $s3, %hi(D_80183F50) # $s3, 0x8018
|
||||
/* 071AA4 80070EA4 3C118018 */ lui $s1, %hi(D_80183F3C) # $s1, 0x8018
|
||||
/* 071AA8 80070EA8 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 071AA8 80070EA8 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 071AAC 80070EAC 241600E0 */ li $s6, 224
|
||||
/* 071AB0 80070EB0 26313F3C */ addiu $s1, %lo(D_80183F3C) # addiu $s1, $s1, 0x3f3c
|
||||
/* 071AB4 80070EB4 26733F50 */ addiu $s3, %lo(D_80183F50) # addiu $s3, $s3, 0x3f50
|
||||
@@ -603,10 +603,10 @@ glabel L80071024
|
||||
/* 071C24 80071024 3C0C800E */ lui $t4, %hi(gGamestate) # $t4, 0x800e
|
||||
/* 071C28 80071028 8D8CC50C */ lw $t4, %lo(gGamestate)($t4)
|
||||
/* 071C2C 8007102C 24010009 */ li $at, 9
|
||||
/* 071C30 80071030 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 071C30 80071030 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 071C34 80071034 118100F2 */ beq $t4, $at, .L80071400
|
||||
/* 071C38 80071038 3C118018 */ lui $s1, %hi(D_80183EA0) # $s1, 0x8018
|
||||
/* 071C3C 8007103C 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 071C3C 8007103C 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 071C40 80071040 24030001 */ li $v1, 1
|
||||
/* 071C44 80071044 26313EA0 */ addiu $s1, %lo(D_80183EA0) # addiu $s1, $s1, 0x3ea0
|
||||
/* 071C48 80071048 10620006 */ beq $v1, $v0, .L80071064
|
||||
@@ -719,12 +719,12 @@ glabel L80071024
|
||||
/* 071DCC 800711CC 26310004 */ addiu $s1, $s1, 4
|
||||
/* 071DD0 800711D0 3C118019 */ lui $s1, %hi(D_8018C1B0) # $s1, 0x8019
|
||||
/* 071DD4 800711D4 3C12800E */ lui $s2, %hi(D_800E6360) # $s2, 0x800e
|
||||
/* 071DD8 800711D8 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 071DD8 800711D8 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 071DDC 800711DC 3C148019 */ lui $s4, %hi(D_8018D01C) # $s4, 0x8019
|
||||
/* 071DE0 800711E0 3C13800E */ lui $s3, %hi(D_800E641A) # $s3, 0x800e
|
||||
/* 071DE4 800711E4 2673641A */ addiu $s3, %lo(D_800E641A) # addiu $s3, $s3, 0x641a
|
||||
/* 071DE8 800711E8 2694D01C */ addiu $s4, %lo(D_8018D01C) # addiu $s4, $s4, -0x2fe4
|
||||
/* 071DEC 800711EC 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 071DEC 800711EC 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 071DF0 800711F0 26526360 */ addiu $s2, %lo(D_800E6360) # addiu $s2, $s2, 0x6360
|
||||
/* 071DF4 800711F4 2631C1B0 */ addiu $s1, %lo(D_8018C1B0) # addiu $s1, $s1, -0x3e50
|
||||
/* 071DF8 800711F8 241600E0 */ li $s6, 224
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
glabel func_80071428
|
||||
glabel init_hud_one_player
|
||||
/* 072028 80071428 3C018019 */ lui $at, %hi(D_8018D140) # $at, 0x8019
|
||||
/* 07202C 8007142C AC20D140 */ sw $zero, %lo(D_8018D140)($at)
|
||||
/* 072030 80071430 3C018019 */ lui $at, %hi(D_8018D150) # $at, 0x8019
|
||||
@@ -81,7 +81,7 @@ glabel func_80071428
|
||||
/* 072164 80071564 A5000046 */ sh $zero, 0x46($t0)
|
||||
/* 072168 80071568 A5000048 */ sh $zero, 0x48($t0)
|
||||
/* 07216C 8007156C A518006A */ sh $t8, 0x6a($t0)
|
||||
/* 072170 80071570 0C01BB9F */ jal func_8006EE7C
|
||||
/* 072170 80071570 0C01BB9F */ jal init_item_window
|
||||
/* 072174 80071574 8C843E88 */ lw $a0, %lo(gItemWindowObjectByPlayerId)($a0)
|
||||
/* 072178 80071578 3C01420C */ li $at, 0x420C0000 # 35.000000
|
||||
/* 07217C 8007157C 44810000 */ mtc1 $at, $f0
|
||||
+7
-7
@@ -1,4 +1,4 @@
|
||||
glabel func_80071C28
|
||||
glabel init_hud_three_four_player
|
||||
/* 072828 80071C28 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 07282C 80071C2C AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 072830 80071C30 3C048018 */ lui $a0, %hi(D_80183DA0) # $a0, 0x8018
|
||||
@@ -141,20 +141,20 @@ glabel func_80071C28
|
||||
/* 072A50 80071E50 A60E00EE */ sh $t6, 0xee($s0)
|
||||
/* 072A54 80071E54 A60F0172 */ sh $t7, 0x172($s0)
|
||||
/* 072A58 80071E58 A61801F6 */ sh $t8, 0x1f6($s0)
|
||||
/* 072A5C 80071E5C 0C01BB9F */ jal func_8006EE7C
|
||||
/* 072A5C 80071E5C 0C01BB9F */ jal init_item_window
|
||||
/* 072A60 80071E60 8C843E88 */ lw $a0, %lo(gItemWindowObjectByPlayerId)($a0)
|
||||
/* 072A64 80071E64 3C048018 */ lui $a0, %hi(gItemWindowObjectByPlayerId + 4) # $a0, 0x8018
|
||||
/* 072A68 80071E68 0C01BB9F */ jal func_8006EE7C
|
||||
/* 072A68 80071E68 0C01BB9F */ jal init_item_window
|
||||
/* 072A6C 80071E6C 8C843E8C */ lw $a0, %lo(gItemWindowObjectByPlayerId + 4)($a0)
|
||||
/* 072A70 80071E70 3C048018 */ lui $a0, %hi(gItemWindowObjectByPlayerId + 8) # $a0, 0x8018
|
||||
/* 072A74 80071E74 0C01BB9F */ jal func_8006EE7C
|
||||
/* 072A74 80071E74 0C01BB9F */ jal init_item_window
|
||||
/* 072A78 80071E78 8C843E90 */ lw $a0, %lo(gItemWindowObjectByPlayerId + 8)($a0)
|
||||
/* 072A7C 80071E7C 3C048018 */ lui $a0, %hi(gItemWindowObjectByPlayerId + 12) # $a0, 0x8018
|
||||
/* 072A80 80071E80 0C01BB9F */ jal func_8006EE7C
|
||||
/* 072A80 80071E80 0C01BB9F */ jal init_item_window
|
||||
/* 072A84 80071E84 8C843E94 */ lw $a0, %lo(gItemWindowObjectByPlayerId + 12)($a0)
|
||||
/* 072A88 80071E88 3C013FC0 */ li $at, 0x3FC00000 # 1.500000
|
||||
/* 072A8C 80071E8C 44813000 */ mtc1 $at, $f6
|
||||
/* 072A90 80071E90 3C198019 */ lui $t9, %hi(D_8018EDF3) # $t9, 0x8019
|
||||
/* 072A90 80071E90 3C198019 */ lui $t9, %hi(gPlayerCount) # $t9, 0x8019
|
||||
/* 072A94 80071E94 3C018019 */ lui $at, %hi(D_8018D158) # $at, 0x8019
|
||||
/* 072A98 80071E98 E606018C */ swc1 $f6, 0x18c($s0)
|
||||
/* 072A9C 80071E9C C600018C */ lwc1 $f0, 0x18c($s0)
|
||||
@@ -163,7 +163,7 @@ glabel func_80071C28
|
||||
/* 072AA8 80071EA8 E6000108 */ swc1 $f0, 0x108($s0)
|
||||
/* 072AAC 80071EAC E6000084 */ swc1 $f0, 0x84($s0)
|
||||
/* 072AB0 80071EB0 E6000000 */ swc1 $f0, ($s0)
|
||||
/* 072AB4 80071EB4 8339EDF3 */ lb $t9, %lo(D_8018EDF3)($t9)
|
||||
/* 072AB4 80071EB4 8339EDF3 */ lb $t9, %lo(gPlayerCount)($t9)
|
||||
/* 072AB8 80071EB8 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 072ABC 80071EBC 2418001E */ li $t8, 30
|
||||
/* 072AC0 80071EC0 AC39D158 */ sw $t9, %lo(D_8018D158)($at)
|
||||
@@ -11,8 +11,8 @@ glabel func_80073570
|
||||
.L80073594:
|
||||
/* 074194 80073594 0324C823 */ subu $t9, $t9, $a0
|
||||
/* 074198 80073598 0019C940 */ sll $t9, $t9, 5
|
||||
/* 07419C 8007359C 3C098016 */ lui $t1, %hi(D_80165C18) # $t1, 0x8016
|
||||
/* 0741A0 800735A0 25295C18 */ addiu $t1, %lo(D_80165C18) # addiu $t1, $t1, 0x5c18
|
||||
/* 07419C 8007359C 3C098016 */ lui $t1, %hi(gObjectList) # $t1, 0x8016
|
||||
/* 0741A0 800735A0 25295C18 */ addiu $t1, %lo(gObjectList) # addiu $t1, $t1, 0x5c18
|
||||
/* 0741A4 800735A4 272800A6 */ addiu $t0, $t9, 0xa6
|
||||
/* 0741A8 800735A8 01091021 */ addu $v0, $t0, $t1
|
||||
/* 0741AC 800735AC 844A0000 */ lh $t2, ($v0)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_8007634C
|
||||
/* 076F4C 8007634C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 076F50 80076350 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 076F54 80076354 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 076F58 80076358 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 076F54 80076354 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 076F58 80076358 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 076F5C 8007635C 000E7140 */ sll $t6, $t6, 5
|
||||
/* 076F60 80076360 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 076F64 80076364 3C030D03 */ lui $v1, %hi(D_0D02BC58) # $v1, 0xd03
|
||||
|
||||
@@ -2,9 +2,9 @@ glabel func_80077BCC
|
||||
/* 0787CC 80077BCC 000470C0 */ sll $t6, $a0, 3
|
||||
/* 0787D0 80077BD0 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0787D4 80077BD4 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 0787D8 80077BD8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 0787D8 80077BD8 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 0787DC 80077BDC AFB0001C */ sw $s0, 0x1c($sp)
|
||||
/* 0787E0 80077BE0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 0787E0 80077BE0 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 0787E4 80077BE4 000E7140 */ sll $t6, $t6, 5
|
||||
/* 0787E8 80077BE8 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 0787EC 80077BEC 860200AE */ lh $v0, 0xae($s0)
|
||||
|
||||
@@ -12,10 +12,10 @@ glabel func_80077D5C
|
||||
/* 078984 80077D84 00047880 */ sll $t7, $a0, 2
|
||||
/* 078988 80077D88 3C188019 */ lui $t8, %hi(D_8018CC80) # $t8, 0x8019
|
||||
/* 07898C 80077D8C 2718CC80 */ addiu $t8, %lo(D_8018CC80) # addiu $t8, $t8, -0x3380
|
||||
/* 078990 80077D90 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016
|
||||
/* 078990 80077D90 3C088016 */ lui $t0, %hi(gObjectList) # $t0, 0x8016
|
||||
/* 078994 80077D94 3C038019 */ lui $v1, %hi(D_8018D17C) # $v1, 0x8019
|
||||
/* 078998 80077D98 2463D17C */ addiu $v1, %lo(D_8018D17C) # addiu $v1, $v1, -0x2e84
|
||||
/* 07899C 80077D9C 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18
|
||||
/* 07899C 80077D9C 25085C18 */ addiu $t0, %lo(gObjectList) # addiu $t0, $t0, 0x5c18
|
||||
/* 0789A0 80077DA0 01F83821 */ addu $a3, $t7, $t8
|
||||
/* 0789A4 80077DA4 8442D17C */ lh $v0, %lo(D_8018D17C)($v0)
|
||||
/* 0789A8 80077DA8 240900E0 */ li $t1, 224
|
||||
|
||||
@@ -20,7 +20,7 @@ glabel func_8007B040
|
||||
/* 07BC88 8007B088 00A22821 */ addu $a1, $a1, $v0
|
||||
/* 07BC8C 8007B08C 00822021 */ addu $a0, $a0, $v0
|
||||
/* 07BC90 8007B090 84844392 */ lh $a0, %lo(D_80164392)($a0) # 0x4392($a0)
|
||||
/* 07BC94 8007B094 0C01EBD0 */ jal func_8007AF40
|
||||
/* 07BC94 8007B094 0C01EBD0 */ jal gen_random_item_human
|
||||
/* 07BC98 8007B098 84A543BA */ lh $a1, %lo(D_801643BA)($a1) # 0x43ba($a1)
|
||||
/* 07BC9C 8007B09C 10000006 */ b .L8007B0B8
|
||||
/* 07BCA0 8007B0A0 00401825 */ move $v1, $v0
|
||||
@@ -33,9 +33,9 @@ glabel func_8007B040
|
||||
.L8007B0B8:
|
||||
/* 07BCB8 8007B0B8 8FAF0078 */ lw $t7, 0x78($sp)
|
||||
/* 07BCBC 8007B0BC 240D00E0 */ li $t5, 224
|
||||
/* 07BCC0 8007B0C0 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016
|
||||
/* 07BCC0 8007B0C0 3C0C8016 */ lui $t4, %hi(gObjectList) # $t4, 0x8016
|
||||
/* 07BCC4 8007B0C4 01ED0019 */ multu $t7, $t5
|
||||
/* 07BCC8 8007B0C8 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BCC8 8007B0C8 258C5C18 */ addiu $t4, %lo(gObjectList) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BCCC 8007B0CC 240B0001 */ li $t3, 1
|
||||
/* 07BCD0 8007B0D0 0000C012 */ mflo $t8
|
||||
/* 07BCD4 8007B0D4 01983821 */ addu $a3, $t4, $t8
|
||||
@@ -48,8 +48,8 @@ glabel func_8007B040
|
||||
/* 07BCEC 8007B0EC 00001825 */ move $v1, $zero
|
||||
/* 07BCF0 8007B0F0 19000019 */ blez $t0, .L8007B158
|
||||
/* 07BCF4 8007B0F4 3C048018 */ lui $a0, %hi(gItemWindowObjectByPlayerId) # $a0, 0x8018
|
||||
/* 07BCF8 8007B0F8 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016
|
||||
/* 07BCFC 8007B0FC 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BCF8 8007B0F8 3C0C8016 */ lui $t4, %hi(gObjectList) # $t4, 0x8016
|
||||
/* 07BCFC 8007B0FC 258C5C18 */ addiu $t4, %lo(gObjectList) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BD00 8007B100 24843E88 */ addiu $a0, %lo(gItemWindowObjectByPlayerId) # addiu $a0, $a0, 0x3e88
|
||||
/* 07BD04 8007B104 240D00E0 */ li $t5, 224
|
||||
/* 07BD08 8007B108 27AA0040 */ addiu $t2, $sp, 0x40
|
||||
@@ -88,8 +88,8 @@ glabel func_8007B040
|
||||
/* 07BD7C 8007B17C 012B7021 */ addu $t6, $t1, $t3
|
||||
/* 07BD80 8007B180 8DC30000 */ lw $v1, ($t6)
|
||||
/* 07BD84 8007B184 27AA0040 */ addiu $t2, $sp, 0x40
|
||||
/* 07BD88 8007B188 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016
|
||||
/* 07BD8C 8007B18C 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BD88 8007B188 3C0C8016 */ lui $t4, %hi(gObjectList) # $t4, 0x8016
|
||||
/* 07BD8C 8007B18C 258C5C18 */ addiu $t4, %lo(gObjectList) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BD90 8007B190 014B7821 */ addu $t7, $t2, $t3
|
||||
/* 07BD94 8007B194 85E80002 */ lh $t0, 2($t7)
|
||||
/* 07BD98 8007B198 0003C0C0 */ sll $t8, $v1, 3
|
||||
@@ -117,9 +117,9 @@ glabel func_8007B040
|
||||
/* 07BDF0 8007B1F0 AFA40064 */ sw $a0, 0x64($sp)
|
||||
/* 07BDF4 8007B1F4 8FA40064 */ lw $a0, 0x64($sp)
|
||||
/* 07BDF8 8007B1F8 240D00E0 */ li $t5, 224
|
||||
/* 07BDFC 8007B1FC 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016
|
||||
/* 07BDFC 8007B1FC 3C0C8016 */ lui $t4, %hi(gObjectList) # $t4, 0x8016
|
||||
/* 07BE00 8007B200 008D0019 */ multu $a0, $t5
|
||||
/* 07BE04 8007B204 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BE04 8007B204 258C5C18 */ addiu $t4, %lo(gObjectList) # addiu $t4, $t4, 0x5c18
|
||||
/* 07BE08 8007B208 8FB80038 */ lw $t8, 0x38($sp)
|
||||
/* 07BE0C 8007B20C 24050002 */ li $a1, 2
|
||||
/* 07BE10 8007B210 00007812 */ mflo $t7
|
||||
|
||||
@@ -5,8 +5,8 @@ glabel func_8007B254
|
||||
/* 07BE60 8007B260 0C01C90A */ jal func_80072428
|
||||
/* 07BE64 8007B264 AFA50024 */ sw $a1, 0x24($sp)
|
||||
/* 07BE68 8007B268 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* 07BE6C 8007B26C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 07BE70 8007B270 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 07BE6C 8007B26C 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 07BE70 8007B270 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 07BE74 8007B274 000470C0 */ sll $t6, $a0, 3
|
||||
/* 07BE78 8007B278 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 07BE7C 8007B27C 000E7140 */ sll $t6, $t6, 5
|
||||
|
||||
@@ -58,8 +58,8 @@ glabel func_8007B34C
|
||||
/* 07BFDC 8007B3DC 0010C0C0 */ sll $t8, $s0, 3
|
||||
.L8007B3E0:
|
||||
/* 07BFE0 8007B3E0 0310C023 */ subu $t8, $t8, $s0
|
||||
/* 07BFE4 8007B3E4 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016
|
||||
/* 07BFE8 8007B3E8 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18
|
||||
/* 07BFE4 8007B3E4 3C198016 */ lui $t9, %hi(gObjectList) # $t9, 0x8016
|
||||
/* 07BFE8 8007B3E8 27395C18 */ addiu $t9, %lo(gObjectList) # addiu $t9, $t9, 0x5c18
|
||||
/* 07BFEC 8007B3EC 0018C140 */ sll $t8, $t8, 5
|
||||
/* 07BFF0 8007B3F0 03194021 */ addu $t0, $t8, $t9
|
||||
/* 07BFF4 8007B3F4 AFA8002C */ sw $t0, 0x2c($sp)
|
||||
@@ -464,7 +464,7 @@ glabel L8007B998
|
||||
/* 07C5B0 8007B9B0 8FAA002C */ lw $t2, 0x2c($sp)
|
||||
/* 07C5B4 8007B9B4 54400006 */ bnel $v0, $zero, .L8007B9D0
|
||||
/* 07C5B8 8007B9B8 2449FFFF */ addiu $t1, $v0, -1
|
||||
/* 07C5BC 8007B9BC 0C01EB27 */ jal func_8007AC9C
|
||||
/* 07C5BC 8007B9BC 0C01EB27 */ jal consume_item
|
||||
/* 07C5C0 8007B9C0 8FA40048 */ lw $a0, 0x48($sp)
|
||||
/* 07C5C4 8007B9C4 10000004 */ b .L8007B9D8
|
||||
/* 07C5C8 8007B9C8 8FAB002C */ lw $t3, 0x2c($sp)
|
||||
@@ -507,7 +507,7 @@ glabel L8007B998
|
||||
/* 07C648 8007BA48 8FA8002C */ lw $t0, 0x2c($sp)
|
||||
.L8007BA4C:
|
||||
/* 07C64C 8007BA4C 02002025 */ move $a0, $s0
|
||||
/* 07C650 8007BA50 0C01CA74 */ jal func_800729D0
|
||||
/* 07C650 8007BA50 0C01CA74 */ jal set_type_object
|
||||
/* 07C654 8007BA54 870500A2 */ lh $a1, 0xa2($t8)
|
||||
/* 07C658 8007BA58 8FA8002C */ lw $t0, 0x2c($sp)
|
||||
/* 07C65C 8007BA5C 24190003 */ li $t9, 3
|
||||
@@ -554,7 +554,7 @@ glabel L8007B998
|
||||
/* 07C6F0 8007BAF0 244BFFFF */ addiu $t3, $v0, -1
|
||||
/* 07C6F4 8007BAF4 A5EB00A2 */ sh $t3, 0xa2($t7)
|
||||
/* 07C6F8 8007BAF8 85E500A2 */ lh $a1, 0xa2($t7)
|
||||
/* 07C6FC 8007BAFC 0C01CA74 */ jal func_800729D0
|
||||
/* 07C6FC 8007BAFC 0C01CA74 */ jal set_type_object
|
||||
/* 07C700 8007BB00 02002025 */ move $a0, $s0
|
||||
/* 07C704 8007BB04 8FB8002C */ lw $t8, 0x2c($sp)
|
||||
/* 07C708 8007BB08 240C0003 */ li $t4, 3
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
glabel func_8007C360
|
||||
/* 07CF60 8007C360 000470C0 */ sll $t6, $a0, 3
|
||||
/* 07CF64 8007C364 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 07CF68 8007C368 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 07CF68 8007C368 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 07CF6C 8007C36C 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 07CF70 8007C370 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 07CF70 8007C370 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 07CF74 8007C374 000E7140 */ sll $t6, $t6, 5
|
||||
/* 07CF78 8007C378 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 07CF7C 8007C37C 01CF3021 */ addu $a2, $t6, $t7
|
||||
@@ -30,7 +30,7 @@ glabel func_8007C360
|
||||
/* 07CFCC 8007C3CC 01403825 */ move $a3, $t2
|
||||
/* 07CFD0 8007C3D0 24050080 */ li $a1, 128
|
||||
/* 07CFD4 8007C3D4 AFA60020 */ sw $a2, 0x20($sp)
|
||||
/* 07CFD8 8007C3D8 0C01C87A */ jal func_800721E8
|
||||
/* 07CFD8 8007C3D8 0C01C87A */ jal set_object_flag_unk_054_false
|
||||
/* 07CFDC 8007C3DC AFAA001C */ sw $t2, 0x1c($sp)
|
||||
/* 07CFE0 8007C3E0 8FA60020 */ lw $a2, 0x20($sp)
|
||||
/* 07CFE4 8007C3E4 8FA7001C */ lw $a3, 0x1c($sp)
|
||||
@@ -38,7 +38,7 @@ glabel func_8007C360
|
||||
/* 07CFEC 8007C3EC A0C700D2 */ sb $a3, 0xd2($a2)
|
||||
.L8007C3F0:
|
||||
/* 07CFF0 8007C3F0 AFA60020 */ sw $a2, 0x20($sp)
|
||||
/* 07CFF4 8007C3F4 0C01C870 */ jal func_800721C0
|
||||
/* 07CFF4 8007C3F4 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 07CFF8 8007C3F8 AFA7001C */ sw $a3, 0x1c($sp)
|
||||
/* 07CFFC 8007C3FC 8FA7001C */ lw $a3, 0x1c($sp)
|
||||
/* 07D000 8007C400 8FA60020 */ lw $a2, 0x20($sp)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_8007C4A4
|
||||
/* 07D0A4 8007C4A4 000470C0 */ sll $t6, $a0, 3
|
||||
/* 07D0A8 8007C4A8 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 07D0AC 8007C4AC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 07D0B0 8007C4B0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 07D0AC 8007C4AC 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 07D0B0 8007C4B0 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 07D0B4 8007C4B4 000E7140 */ sll $t6, $t6, 5
|
||||
/* 07D0B8 8007C4B8 01CF1821 */ addu $v1, $t6, $t7
|
||||
/* 07D0BC 8007C4BC 946200C0 */ lhu $v0, 0xc0($v1)
|
||||
@@ -24,7 +24,7 @@ glabel func_8007C4A4
|
||||
/* 07D0F8 8007C4F8 01003025 */ move $a2, $t0
|
||||
/* 07D0FC 8007C4FC 24050080 */ li $a1, 128
|
||||
/* 07D100 8007C500 AFA30020 */ sw $v1, 0x20($sp)
|
||||
/* 07D104 8007C504 0C01C87A */ jal func_800721E8
|
||||
/* 07D104 8007C504 0C01C87A */ jal set_object_flag_unk_054_false
|
||||
/* 07D108 8007C508 AFA8001C */ sw $t0, 0x1c($sp)
|
||||
/* 07D10C 8007C50C 8FA30020 */ lw $v1, 0x20($sp)
|
||||
/* 07D110 8007C510 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
@@ -33,7 +33,7 @@ glabel func_8007C4A4
|
||||
.L8007C51C:
|
||||
/* 07D11C 8007C51C 24050080 */ li $a1, 128
|
||||
/* 07D120 8007C520 AFA30020 */ sw $v1, 0x20($sp)
|
||||
/* 07D124 8007C524 0C01C870 */ jal func_800721C0
|
||||
/* 07D124 8007C524 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 07D128 8007C528 AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 07D12C 8007C52C 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
/* 07D130 8007C530 8FA30020 */ lw $v1, 0x20($sp)
|
||||
|
||||
@@ -10,14 +10,14 @@ glabel func_8007C7B4
|
||||
/* 07D3D4 8007C7D4 AFB60030 */ sw $s6, 0x30($sp)
|
||||
/* 07D3D8 8007C7D8 01CF9821 */ addu $s3, $t6, $t7
|
||||
/* 07D3DC 8007C7DC 3C12800E */ lui $s2, %hi(D_800E5D9C) # $s2, 0x800e
|
||||
/* 07D3E0 8007C7E0 3C178016 */ lui $s7, %hi(D_80165C18) # $s7, 0x8016
|
||||
/* 07D3E0 8007C7E0 3C178016 */ lui $s7, %hi(gObjectList) # $s7, 0x8016
|
||||
/* 07D3E4 8007C7E4 00A0B025 */ move $s6, $a1
|
||||
/* 07D3E8 8007C7E8 AFBF003C */ sw $ra, 0x3c($sp)
|
||||
/* 07D3EC 8007C7EC AFB5002C */ sw $s5, 0x2c($sp)
|
||||
/* 07D3F0 8007C7F0 AFB40028 */ sw $s4, 0x28($sp)
|
||||
/* 07D3F4 8007C7F4 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 07D3F8 8007C7F8 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 07D3FC 8007C7FC 26F75C18 */ addiu $s7, %lo(D_80165C18) # addiu $s7, $s7, 0x5c18
|
||||
/* 07D3FC 8007C7FC 26F75C18 */ addiu $s7, %lo(gObjectList) # addiu $s7, $s7, 0x5c18
|
||||
/* 07D400 8007C800 26525D9C */ addiu $s2, %lo(D_800E5D9C) # addiu $s2, $s2, 0x5d9c
|
||||
/* 07D404 8007C804 AFB30040 */ sw $s3, 0x40($sp)
|
||||
/* 07D408 8007C808 241E00E0 */ li $fp, 224
|
||||
|
||||
@@ -10,8 +10,8 @@ glabel func_8007C91C
|
||||
/* 07D53C 8007C93C 00025880 */ sll $t3, $v0, 2
|
||||
/* 07D540 8007C940 00AB2021 */ addu $a0, $a1, $t3
|
||||
/* 07D544 8007C944 8C830000 */ lw $v1, ($a0)
|
||||
/* 07D548 8007C948 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016
|
||||
/* 07D54C 8007C94C 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18
|
||||
/* 07D548 8007C948 3C088016 */ lui $t0, %hi(gObjectList) # $t0, 0x8016
|
||||
/* 07D54C 8007C94C 25085C18 */ addiu $t0, %lo(gObjectList) # addiu $t0, $t0, 0x5c18
|
||||
/* 07D550 8007C950 3C018019 */ lui $at, %hi(D_8018CFF0) # 0x8019
|
||||
/* 07D554 8007C954 0000C012 */ mflo $t8
|
||||
/* 07D558 8007C958 01183021 */ addu $a2, $t0, $t8
|
||||
|
||||
@@ -31,9 +31,9 @@ glabel func_8007D070
|
||||
/* 07DCE4 8007D0E4 00000000 */ nop
|
||||
/* 07DCE8 8007D0E8 8F39C1D8 */ lw $t9, %lo(D_8018C1D8)($t9)
|
||||
/* 07DCEC 8007D0EC 241700E0 */ li $s7, 224
|
||||
/* 07DCF0 8007D0F0 3C168016 */ lui $s6, %hi(D_80165C18) # $s6, 0x8016
|
||||
/* 07DCF0 8007D0F0 3C168016 */ lui $s6, %hi(gObjectList) # $s6, 0x8016
|
||||
/* 07DCF4 8007D0F4 03370019 */ multu $t9, $s7
|
||||
/* 07DCF8 8007D0F8 26D65C18 */ addiu $s6, %lo(D_80165C18) # addiu $s6, $s6, 0x5c18
|
||||
/* 07DCF8 8007D0F8 26D65C18 */ addiu $s6, %lo(gObjectList) # addiu $s6, $s6, 0x5c18
|
||||
/* 07DCFC 8007D0FC 3C048019 */ lui $a0, %hi(D_8018C1B0) # $a0, 0x8019
|
||||
/* 07DD00 8007D100 2484C1B0 */ addiu $a0, %lo(D_8018C1B0) # addiu $a0, $a0, -0x3e50
|
||||
/* 07DD04 8007D104 2403001E */ li $v1, 30
|
||||
@@ -124,14 +124,14 @@ glabel func_8007D070
|
||||
/* 07DE50 8007D250 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 07DE54 8007D254 E6080018 */ swc1 $f8, 0x18($s0)
|
||||
.L8007D258:
|
||||
/* 07DE58 8007D258 3C168016 */ lui $s6, %hi(D_80165C18) # $s6, 0x8016
|
||||
/* 07DE58 8007D258 3C168016 */ lui $s6, %hi(gObjectList) # $s6, 0x8016
|
||||
/* 07DE5C 8007D25C 3C1E8019 */ lui $fp, %hi(D_8018CF1C) # $fp, 0x8019
|
||||
/* 07DE60 8007D260 3C128019 */ lui $s2, %hi(D_8018C1B0) # $s2, 0x8019
|
||||
/* 07DE64 8007D264 3C15800E */ lui $s5, %hi(D_800E4470) # $s5, 0x800e
|
||||
/* 07DE68 8007D268 3C148019 */ lui $s4, %hi(D_8018C228) # $s4, 0x8019
|
||||
/* 07DE6C 8007D26C 3C13800E */ lui $s3, %hi(D_800E44B0) # $s3, 0x800e
|
||||
/* 07DE70 8007D270 27DECF1C */ addiu $fp, %lo(D_8018CF1C) # addiu $fp, $fp, -0x30e4
|
||||
/* 07DE74 8007D274 26D65C18 */ addiu $s6, %lo(D_80165C18) # addiu $s6, $s6, 0x5c18
|
||||
/* 07DE74 8007D274 26D65C18 */ addiu $s6, %lo(gObjectList) # addiu $s6, $s6, 0x5c18
|
||||
/* 07DE78 8007D278 241700E0 */ li $s7, 224
|
||||
/* 07DE7C 8007D27C 267344B0 */ addiu $s3, %lo(D_800E44B0) # addiu $s3, $s3, 0x44b0
|
||||
/* 07DE80 8007D280 2694C228 */ addiu $s4, %lo(D_8018C228) # addiu $s4, $s4, -0x3dd8
|
||||
@@ -169,7 +169,7 @@ glabel func_8007D070
|
||||
/* 07DEFC 8007D2FC 0C01F108 */ jal func_8007C420
|
||||
/* 07DF00 8007D300 8CC6CF14 */ lw $a2, %lo(D_8018CF14)($a2)
|
||||
/* 07DF04 8007D304 02202025 */ move $a0, $s1
|
||||
/* 07DF08 8007D308 0C01C88F */ jal func_8007223C
|
||||
/* 07DF08 8007D308 0C01C88F */ jal is_obj_index_flag_unk_054_active
|
||||
/* 07DF0C 8007D30C 24050080 */ li $a1, 128
|
||||
/* 07DF10 8007D310 50400004 */ beql $v0, $zero, .L8007D324
|
||||
/* 07DF14 8007D314 AE150074 */ sw $s5, 0x74($s0)
|
||||
|
||||
@@ -36,8 +36,8 @@ glabel func_8007DB44
|
||||
/* 07E7C4 8007DBC4 02002025 */ move $a0, $s0
|
||||
/* 07E7C8 8007DBC8 241600E0 */ li $s6, 224
|
||||
/* 07E7CC 8007DBCC 02160019 */ multu $s0, $s6
|
||||
/* 07E7D0 8007DBD0 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 07E7D4 8007DBD4 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 07E7D0 8007DBD0 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 07E7D4 8007DBD4 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 07E7D8 8007DBD8 24090400 */ li $t1, 1024
|
||||
/* 07E7DC 8007DBDC 240AFFFF */ li $t2, -1
|
||||
/* 07E7E0 8007DBE0 AFAA0018 */ sw $t2, 0x18($sp)
|
||||
@@ -88,7 +88,7 @@ glabel func_8007DB44
|
||||
/* 07E88C 8007DC8C 863900A6 */ lh $t9, 0xa6($s1)
|
||||
/* 07E890 8007DC90 57200004 */ bnel $t9, $zero, .L8007DCA4
|
||||
/* 07E894 8007DC94 86690000 */ lh $t1, ($s3)
|
||||
/* 07E898 8007DC98 0C01C840 */ jal func_80072100
|
||||
/* 07E898 8007DC98 0C01C840 */ jal delete_object_wrapper
|
||||
/* 07E89C 8007DC9C 02402025 */ move $a0, $s2
|
||||
/* 07E8A0 8007DCA0 86690000 */ lh $t1, ($s3)
|
||||
.L8007DCA4:
|
||||
@@ -141,7 +141,7 @@ glabel func_8007DB44
|
||||
/* 07E94C 8007DD4C 862900A6 */ lh $t1, 0xa6($s1)
|
||||
/* 07E950 8007DD50 55200004 */ bnel $t1, $zero, .L8007DD64
|
||||
/* 07E954 8007DD54 866A0000 */ lh $t2, ($s3)
|
||||
/* 07E958 8007DD58 0C01C840 */ jal func_80072100
|
||||
/* 07E958 8007DD58 0C01C840 */ jal delete_object_wrapper
|
||||
/* 07E95C 8007DD5C 02402025 */ move $a0, $s2
|
||||
/* 07E960 8007DD60 866A0000 */ lh $t2, ($s3)
|
||||
.L8007DD64:
|
||||
|
||||
@@ -10,9 +10,9 @@ glabel func_8007E00C
|
||||
/* 07EC0C 8007E00C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 07EC10 8007E010 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 07EC14 8007E014 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 07EC18 8007E018 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 07EC18 8007E018 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 07EC1C 8007E01C AFB00028 */ sw $s0, 0x28($sp)
|
||||
/* 07EC20 8007E020 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 07EC20 8007E020 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 07EC24 8007E024 000E7140 */ sll $t6, $t6, 5
|
||||
/* 07EC28 8007E028 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 07EC2C 8007E02C 961800A6 */ lhu $t8, 0xa6($s0)
|
||||
|
||||
@@ -15,8 +15,8 @@ glabel D_800EF080
|
||||
glabel func_8007FB48
|
||||
/* 080748 8007FB48 000478C0 */ sll $t7, $a0, 3
|
||||
/* 08074C 8007FB4C 01E47823 */ subu $t7, $t7, $a0
|
||||
/* 080750 8007FB50 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016
|
||||
/* 080754 8007FB54 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18
|
||||
/* 080750 8007FB50 3C188016 */ lui $t8, %hi(gObjectList) # $t8, 0x8016
|
||||
/* 080754 8007FB54 27185C18 */ addiu $t8, %lo(gObjectList) # addiu $t8, $t8, 0x5c18
|
||||
/* 080758 8007FB58 000F7940 */ sll $t7, $t7, 5
|
||||
/* 08075C 8007FB5C 01F81821 */ addu $v1, $t7, $t8
|
||||
/* 080760 8007FB60 807900D1 */ lb $t9, 0xd1($v1)
|
||||
|
||||
@@ -10,12 +10,12 @@ glabel func_80080078
|
||||
/* 080C98 80080098 AFAE0010 */ sw $t6, 0x10($sp)
|
||||
/* 080C9C 8008009C 24C67138 */ addiu $a2, %lo(d_course_bowsers_castle_thwomp_faces) # addiu $a2, $a2, 0x7138
|
||||
/* 080CA0 800800A0 24A56F38 */ addiu $a1, %lo(d_course_bowsers_castle_thwomp_tlut) # addiu $a1, $a1, 0x6f38
|
||||
/* 080CA4 800800A4 0C01CD11 */ jal func_80073444
|
||||
/* 080CA4 800800A4 0C01CD11 */ jal init_texture_object
|
||||
/* 080CA8 800800A8 24070010 */ li $a3, 16
|
||||
/* 080CAC 800800AC 001178C0 */ sll $t7, $s1, 3
|
||||
/* 080CB0 800800B0 01F17823 */ subu $t7, $t7, $s1
|
||||
/* 080CB4 800800B4 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016
|
||||
/* 080CB8 800800B8 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18
|
||||
/* 080CB4 800800B4 3C188016 */ lui $t8, %hi(gObjectList) # $t8, 0x8016
|
||||
/* 080CB8 800800B8 27185C18 */ addiu $t8, %lo(gObjectList) # addiu $t8, $t8, 0x5c18
|
||||
/* 080CBC 800800BC 000F7940 */ sll $t7, $t7, 5
|
||||
/* 080CC0 800800C0 3C013F80 */ li $at, 0x3F800000 # 1.000000
|
||||
/* 080CC4 800800C4 44812000 */ mtc1 $at, $f4
|
||||
@@ -28,7 +28,7 @@ glabel func_80080078
|
||||
/* 080CE0 800800E0 A60800C8 */ sh $t0, 0xc8($s0)
|
||||
/* 080CE4 800800E4 34A50220 */ ori $a1, (0x04000220 & 0xFFFF) # ori $a1, $a1, 0x220
|
||||
/* 080CE8 800800E8 02202025 */ move $a0, $s1
|
||||
/* 080CEC 800800EC 0C01C870 */ jal func_800721C0
|
||||
/* 080CEC 800800EC 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 080CF0 800800F0 E6040000 */ swc1 $f4, ($s0)
|
||||
/* 080CF4 800800F4 24090002 */ li $t1, 2
|
||||
/* 080CF8 800800F8 240A0008 */ li $t2, 8
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_800808CC
|
||||
/* 0814CC 800808CC 000478C0 */ sll $t7, $a0, 3
|
||||
/* 0814D0 800808D0 01E47823 */ subu $t7, $t7, $a0
|
||||
/* 0814D4 800808D4 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016
|
||||
/* 0814D8 800808D8 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18
|
||||
/* 0814D4 800808D4 3C188016 */ lui $t8, %hi(gObjectList) # $t8, 0x8016
|
||||
/* 0814D8 800808D8 27185C18 */ addiu $t8, %lo(gObjectList) # addiu $t8, $t8, 0x5c18
|
||||
/* 0814DC 800808DC 000F7940 */ sll $t7, $t7, 5
|
||||
/* 0814E0 800808E0 01F84021 */ addu $t0, $t7, $t8
|
||||
/* 0814E4 800808E4 850300A6 */ lh $v1, 0xa6($t0)
|
||||
|
||||
@@ -23,8 +23,8 @@ glabel func_80080E8C
|
||||
/* 081AB8 80080EB8 8FB90044 */ lw $t9, 0x44($sp)
|
||||
/* 081ABC 80080EBC 01C70019 */ multu $t6, $a3
|
||||
/* 081AC0 80080EC0 8FA40048 */ lw $a0, 0x48($sp)
|
||||
/* 081AC4 80080EC4 3C058016 */ lui $a1, %hi(D_80165C18) # $a1, 0x8016
|
||||
/* 081AC8 80080EC8 24A55C18 */ addiu $a1, %lo(D_80165C18) # addiu $a1, $a1, 0x5c18
|
||||
/* 081AC4 80080EC4 3C058016 */ lui $a1, %hi(gObjectList) # $a1, 0x8016
|
||||
/* 081AC8 80080EC8 24A55C18 */ addiu $a1, %lo(gObjectList) # addiu $a1, $a1, 0x5c18
|
||||
/* 081ACC 80080ECC 24180002 */ li $t8, 2
|
||||
/* 081AD0 80080ED0 3C0B800E */ lui $t3, %hi(D_800E594C) # $t3, 0x800e
|
||||
/* 081AD4 80080ED4 00044840 */ sll $t1, $a0, 1
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_80081790
|
||||
/* 082390 80081790 000470C0 */ sll $t6, $a0, 3
|
||||
/* 082394 80081794 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 082398 80081798 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 08239C 8008179C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 082398 80081798 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 08239C 8008179C 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 0823A0 800817A0 000E7140 */ sll $t6, $t6, 5
|
||||
/* 0823A4 800817A4 01CF1021 */ addu $v0, $t6, $t7
|
||||
/* 0823A8 800817A8 844300A6 */ lh $v1, 0xa6($v0)
|
||||
|
||||
@@ -11,9 +11,9 @@ glabel func_80081AFC
|
||||
/* 0826FC 80081AFC 000470C0 */ sll $t6, $a0, 3
|
||||
/* 082700 80081B00 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 082704 80081B04 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 082708 80081B08 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 082708 80081B08 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 08270C 80081B0C AFB0001C */ sw $s0, 0x1c($sp)
|
||||
/* 082710 80081B10 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 082710 80081B10 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 082714 80081B14 000E7140 */ sll $t6, $t6, 5
|
||||
/* 082718 80081B18 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 08271C 80081B1C 860300A6 */ lh $v1, 0xa6($s0)
|
||||
@@ -54,7 +54,7 @@ glabel L80081B80
|
||||
/* 08279C 80081B9C 0C01C922 */ jal func_80072488
|
||||
/* 0827A0 80081BA0 02202025 */ move $a0, $s1
|
||||
/* 0827A4 80081BA4 02202025 */ move $a0, $s1
|
||||
/* 0827A8 80081BA8 0C01C870 */ jal func_800721C0
|
||||
/* 0827A8 80081BA8 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 0827AC 80081BAC 24050200 */ li $a1, 512
|
||||
/* 0827B0 80081BB0 10000002 */ b .L80081BBC
|
||||
/* 0827B4 80081BB4 00000000 */ nop
|
||||
@@ -122,7 +122,7 @@ glabel L80081C44
|
||||
/* 08288C 80081C8C 24050200 */ li $a1, 512
|
||||
/* 082890 80081C90 5580001F */ bnel $t4, $zero, .L80081D10
|
||||
/* 082894 80081C94 28610002 */ slti $at, $v1, 2
|
||||
/* 082898 80081C98 0C01C87A */ jal func_800721E8
|
||||
/* 082898 80081C98 0C01C87A */ jal set_object_flag_unk_054_false
|
||||
/* 08289C 80081C9C AFA60034 */ sw $a2, 0x34($sp)
|
||||
/* 0828A0 80081CA0 0C01C90A */ jal func_80072428
|
||||
/* 0828A4 80081CA4 02202025 */ move $a0, $s1
|
||||
|
||||
@@ -9,11 +9,11 @@ glabel func_80081FF4
|
||||
/* 082C10 80082010 2404001E */ li $a0, 30
|
||||
/* 082C14 80082014 8FAE0038 */ lw $t6, 0x38($sp)
|
||||
/* 082C18 80082018 8FA3003C */ lw $v1, 0x3c($sp)
|
||||
/* 082C1C 8008201C 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016
|
||||
/* 082C1C 8008201C 3C188016 */ lui $t8, %hi(gObjectList) # $t8, 0x8016
|
||||
/* 082C20 80082020 000E78C0 */ sll $t7, $t6, 3
|
||||
/* 082C24 80082024 01EE7823 */ subu $t7, $t7, $t6
|
||||
/* 082C28 80082028 000F7940 */ sll $t7, $t7, 5
|
||||
/* 082C2C 8008202C 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18
|
||||
/* 082C2C 8008202C 27185C18 */ addiu $t8, %lo(gObjectList) # addiu $t8, $t8, 0x5c18
|
||||
/* 082C30 80082030 01F83821 */ addu $a3, $t7, $t8
|
||||
/* 082C34 80082034 24590005 */ addiu $t9, $v0, 5
|
||||
/* 082C38 80082038 24010001 */ li $at, 1
|
||||
|
||||
@@ -27,9 +27,9 @@ glabel func_8008241C
|
||||
/* 08301C 8008241C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 083020 80082420 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 083024 80082424 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 083028 80082428 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 083028 80082428 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 08302C 8008242C AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 083030 80082430 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 083030 80082430 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 083034 80082434 000E7140 */ sll $t6, $t6, 5
|
||||
/* 083038 80082438 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 08303C 8008243C 3C180601 */ lui $t8, %hi(d_course_koopa_troopa_beach_unk4) # $t8, 0x601
|
||||
@@ -211,7 +211,7 @@ glabel func_8008241C
|
||||
/* 0832E4 800826E4 01CD7021 */ addu $t6, $t6, $t5
|
||||
/* 0832E8 800826E8 8DCE633C */ lw $t6, %lo(D_800E633C)($t6)
|
||||
/* 0832EC 800826EC 24050800 */ li $a1, 2048
|
||||
/* 0832F0 800826F0 0C01C870 */ jal func_800721C0
|
||||
/* 0832F0 800826F0 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 0832F4 800826F4 AE0E0080 */ sw $t6, 0x80($s0)
|
||||
/* 0832F8 800826F8 0C01C922 */ jal func_80072488
|
||||
/* 0832FC 800826FC 02202025 */ move $a0, $s1
|
||||
|
||||
@@ -10,7 +10,7 @@ glabel func_80082870
|
||||
/* 083490 80082890 AFB3002C */ sw $s3, 0x2c($sp)
|
||||
/* 083494 80082894 3C128018 */ lui $s2, %hi(D_80183E40) # $s2, 0x8018
|
||||
/* 083498 80082898 3C148018 */ lui $s4, %hi(D_80183F28) # $s4, 0x8018
|
||||
/* 08349C 8008289C 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 08349C 8008289C 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 0834A0 800828A0 3C171901 */ lui $s7, (0x19017043 >> 16) # lui $s7, 0x1901
|
||||
/* 0834A4 800828A4 3C1E8016 */ lui $fp, %hi(D_80165A90) # $fp, 0x8016
|
||||
/* 0834A8 800828A8 4480A000 */ mtc1 $zero, $f20
|
||||
@@ -19,7 +19,7 @@ glabel func_80082870
|
||||
/* 0834B4 800828B4 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 0834B8 800828B8 27DE5A90 */ addiu $fp, %lo(D_80165A90) # addiu $fp, $fp, 0x5a90
|
||||
/* 0834BC 800828BC 36F77043 */ ori $s7, (0x19017043 & 0xFFFF) # ori $s7, $s7, 0x7043
|
||||
/* 0834C0 800828C0 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 0834C0 800828C0 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 0834C4 800828C4 26943F28 */ addiu $s4, %lo(D_80183F28) # addiu $s4, $s4, 0x3f28
|
||||
/* 0834C8 800828C8 26523E40 */ addiu $s2, %lo(D_80183E40) # addiu $s2, $s2, 0x3e40
|
||||
/* 0834CC 800828CC 00009825 */ move $s3, $zero
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_80082B34
|
||||
/* 083734 80082B34 000470C0 */ sll $t6, $a0, 3
|
||||
/* 083738 80082B38 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 08373C 80082B3C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 083740 80082B40 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 08373C 80082B3C 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 083740 80082B40 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 083744 80082B44 000E7140 */ sll $t6, $t6, 5
|
||||
/* 083748 80082B48 01CF4021 */ addu $t0, $t6, $t7
|
||||
/* 08374C 80082B4C 850300A6 */ lh $v1, 0xa6($t0)
|
||||
|
||||
@@ -8,8 +8,8 @@ glabel D_800EF1BC
|
||||
glabel func_80082F1C
|
||||
/* 083B1C 80082F1C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 083B20 80082F20 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 083B24 80082F24 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 083B28 80082F28 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 083B24 80082F24 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 083B28 80082F28 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 083B2C 80082F2C 000E7140 */ sll $t6, $t6, 5
|
||||
/* 083B30 80082F30 01CF1021 */ addu $v0, $t6, $t7
|
||||
/* 083B34 80082F34 3C180601 */ lui $t8, %hi(d_course_yoshi_valley_unk5) # $t8, 0x601
|
||||
|
||||
@@ -13,9 +13,9 @@ glabel func_80084430
|
||||
/* 085030 80084430 000470C0 */ sll $t6, $a0, 3
|
||||
/* 085034 80084434 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 085038 80084438 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 08503C 8008443C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 08503C 8008443C 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 085040 80084440 AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 085044 80084444 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 085044 80084444 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 085048 80084448 000E7140 */ sll $t6, $t6, 5
|
||||
/* 08504C 8008444C 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 085050 80084450 3C180601 */ lui $t8, %hi(d_course_sherbet_land_unk_data1) # $t8, 0x601
|
||||
@@ -63,7 +63,7 @@ glabel func_80084430
|
||||
/* 0850F8 800844F8 3C050400 */ lui $a1, (0x04000800 >> 16) # lui $a1, 0x400
|
||||
/* 0850FC 800844FC 34A50800 */ ori $a1, (0x04000800 & 0xFFFF) # ori $a1, $a1, 0x800
|
||||
/* 085100 80084500 02202025 */ move $a0, $s1
|
||||
/* 085104 80084504 0C01C870 */ jal func_800721C0
|
||||
/* 085104 80084504 0C01C870 */ jal set_object_flag_unk_054_true
|
||||
/* 085108 80084508 AE0B0080 */ sw $t3, 0x80($s0)
|
||||
/* 08510C 8008450C 3C040601 */ lui $a0, %hi(d_course_sherbet_land_unk_data11) # $a0, 0x601
|
||||
/* 085110 80084510 24849AC8 */ addiu $a0, %lo(d_course_sherbet_land_unk_data11) # addiu $a0, $a0, -0x6538
|
||||
|
||||
@@ -2,8 +2,8 @@ glabel func_8008502C
|
||||
/* 085C2C 8008502C 000470C0 */ sll $t6, $a0, 3
|
||||
/* 085C30 80085030 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 085C34 80085034 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 085C38 80085038 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 085C3C 8008503C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 085C38 80085038 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 085C3C 8008503C 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 085C40 80085040 000E7140 */ sll $t6, $t6, 5
|
||||
/* 085C44 80085044 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 085C48 80085048 AFA5001C */ sw $a1, 0x1c($sp)
|
||||
|
||||
@@ -30,7 +30,7 @@ glabel func_80086074
|
||||
/* 086CE4 800860E4 012A2821 */ addu $a1, $t1, $t2
|
||||
/* 086CE8 800860E8 AFAD0010 */ sw $t5, 0x10($sp)
|
||||
/* 086CEC 800860EC 8FA40020 */ lw $a0, 0x20($sp)
|
||||
/* 086CF0 800860F0 0C01CD11 */ jal func_80073444
|
||||
/* 086CF0 800860F0 0C01CD11 */ jal init_texture_object
|
||||
/* 086CF4 800860F4 24070040 */ li $a3, 64
|
||||
/* 086CF8 800860F8 0C0216ED */ jal func_80085BB4
|
||||
/* 086CFC 800860FC 8FA40020 */ lw $a0, 0x20($sp)
|
||||
|
||||
@@ -12,16 +12,16 @@ glabel func_8008629C
|
||||
/* 086EC4 800862C4 001070C0 */ sll $t6, $s0, 3
|
||||
/* 086EC8 800862C8 000470C0 */ sll $t6, $a0, 3
|
||||
/* 086ECC 800862CC 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 086ED0 800862D0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 086ED4 800862D4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 086ED0 800862D0 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 086ED4 800862D4 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 086ED8 800862D8 000E7140 */ sll $t6, $t6, 5
|
||||
/* 086EDC 800862DC 10000022 */ b .L80086368
|
||||
/* 086EE0 800862E0 01CF1021 */ addu $v0, $t6, $t7
|
||||
.L800862E4:
|
||||
/* 086EE4 800862E4 0010C0C0 */ sll $t8, $s0, 3
|
||||
/* 086EE8 800862E8 0310C023 */ subu $t8, $t8, $s0
|
||||
/* 086EEC 800862EC 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016
|
||||
/* 086EF0 800862F0 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18
|
||||
/* 086EEC 800862EC 3C198016 */ lui $t9, %hi(gObjectList) # $t9, 0x8016
|
||||
/* 086EF0 800862F0 27395C18 */ addiu $t9, %lo(gObjectList) # addiu $t9, $t9, 0x5c18
|
||||
/* 086EF4 800862F4 0018C140 */ sll $t8, $t8, 5
|
||||
/* 086EF8 800862F8 3C080B00 */ lui $t0, %hi(D_0B0075F0) # $t0, 0xb00
|
||||
/* 086EFC 800862FC 250875F0 */ addiu $t0, %lo(D_0B0075F0) # addiu $t0, $t0, 0x75f0
|
||||
@@ -32,8 +32,8 @@ glabel func_8008629C
|
||||
/* 086F10 80086310 AC49004C */ sw $t1, 0x4c($v0)
|
||||
.L80086314:
|
||||
/* 086F14 80086314 01505023 */ subu $t2, $t2, $s0
|
||||
/* 086F18 80086318 3C0B8016 */ lui $t3, %hi(D_80165C18) # $t3, 0x8016
|
||||
/* 086F1C 8008631C 256B5C18 */ addiu $t3, %lo(D_80165C18) # addiu $t3, $t3, 0x5c18
|
||||
/* 086F18 80086318 3C0B8016 */ lui $t3, %hi(gObjectList) # $t3, 0x8016
|
||||
/* 086F1C 8008631C 256B5C18 */ addiu $t3, %lo(gObjectList) # addiu $t3, $t3, 0x5c18
|
||||
/* 086F20 80086320 000A5140 */ sll $t2, $t2, 5
|
||||
/* 086F24 80086324 3C0C0B01 */ lui $t4, %hi(D_0B008040) # $t4, 0xb01
|
||||
/* 086F28 80086328 258C8040 */ addiu $t4, %lo(D_0B008040) # addiu $t4, $t4, -0x7fc0
|
||||
@@ -44,8 +44,8 @@ glabel func_8008629C
|
||||
/* 086F3C 8008633C AC4D004C */ sw $t5, 0x4c($v0)
|
||||
.L80086340:
|
||||
/* 086F40 80086340 01D07023 */ subu $t6, $t6, $s0
|
||||
/* 086F44 80086344 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 086F48 80086348 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 086F44 80086344 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 086F48 80086348 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 086F4C 8008634C 000E7140 */ sll $t6, $t6, 5
|
||||
/* 086F50 80086350 01CF1021 */ addu $v0, $t6, $t7
|
||||
/* 086F54 80086354 3C180B01 */ lui $t8, %hi(D_0B008A90) # $t8, 0xb01
|
||||
|
||||
@@ -34,8 +34,8 @@ glabel func_80086604
|
||||
/* 087280 80086680 A2790000 */ sb $t9, ($s3)
|
||||
.L80086684:
|
||||
/* 087284 80086684 3C118018 */ lui $s1, %hi(D_80183EA0) # $s1, 0x8018
|
||||
/* 087288 80086688 3C138016 */ lui $s3, %hi(D_80165C18) # $s3, 0x8016
|
||||
/* 08728C 8008668C 26735C18 */ addiu $s3, %lo(D_80165C18) # addiu $s3, $s3, 0x5c18
|
||||
/* 087288 80086688 3C138016 */ lui $s3, %hi(gObjectList) # $s3, 0x8016
|
||||
/* 08728C 8008668C 26735C18 */ addiu $s3, %lo(gObjectList) # addiu $s3, $s3, 0x5c18
|
||||
/* 087290 80086690 26313EA0 */ addiu $s1, %lo(D_80183EA0) # addiu $s1, $s1, 0x3ea0
|
||||
/* 087294 80086694 00009025 */ move $s2, $zero
|
||||
/* 087298 80086698 24150003 */ li $s5, 3
|
||||
|
||||
@@ -13,9 +13,9 @@ glabel func_80086940
|
||||
/* 087540 80086940 000470C0 */ sll $t6, $a0, 3
|
||||
/* 087544 80086944 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 087548 80086948 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 08754C 8008694C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 08754C 8008694C 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 087550 80086950 AFB00014 */ sw $s0, 0x14($sp)
|
||||
/* 087554 80086954 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 087554 80086954 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 087558 80086958 000E7140 */ sll $t6, $t6, 5
|
||||
/* 08755C 8008695C 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 087560 80086960 961800AE */ lhu $t8, 0xae($s0)
|
||||
|
||||
@@ -326,12 +326,12 @@ glabel L8009D280
|
||||
/* 09DE84 8009D284 A420C5A0 */ sh $zero, %lo(gCurrentCourseId)($at)
|
||||
/* 09DE88 8009D288 3C02800F */ lui $v0, %hi(gCharacterSelections) # $v0, 0x800f
|
||||
/* 09DE8C 8009D28C 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09DE90 8009D290 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09DE90 8009D290 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09DE94 8009D294 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09DE98 8009D298 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09DE9C 8009D29C 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09DEA0 8009D2A0 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09DEA4 8009D2A4 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09DEA4 8009D2A4 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09DEA8 8009D2A8 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09DEAC 8009D2AC 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09DEB0 8009D2B0 ADA00000 */ sw $zero, ($t5)
|
||||
@@ -346,12 +346,12 @@ glabel L8009D2C8
|
||||
/* 09DED0 8009D2D0 24060002 */ li $a2, 2
|
||||
/* 09DED4 8009D2D4 3C02800F */ lui $v0, %hi(gCharacterSelections) # $v0, 0x800f
|
||||
/* 09DED8 8009D2D8 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09DEDC 8009D2DC 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09DEDC 8009D2DC 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09DEE0 8009D2E0 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09DEE4 8009D2E4 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09DEE8 8009D2E8 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09DEEC 8009D2EC 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09DEF0 8009D2F0 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09DEF0 8009D2F0 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09DEF4 8009D2F4 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09DEF8 8009D2F8 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09DEFC 8009D2FC ADA50000 */ sw $a1, ($t5)
|
||||
@@ -367,12 +367,12 @@ glabel L8009D318
|
||||
/* 09DF20 8009D320 A438C5A0 */ sh $t8, %lo(gCurrentCourseId)($at)
|
||||
/* 09DF24 8009D324 3C02800F */ lui $v0, %hi(gCharacterSelections) # $v0, 0x800f
|
||||
/* 09DF28 8009D328 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09DF2C 8009D32C 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09DF2C 8009D32C 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09DF30 8009D330 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09DF34 8009D334 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09DF38 8009D338 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09DF3C 8009D33C 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09DF40 8009D340 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09DF40 8009D340 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09DF44 8009D344 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09DF48 8009D348 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09DF4C 8009D34C ADA00000 */ sw $zero, ($t5)
|
||||
@@ -389,12 +389,12 @@ glabel L8009D364
|
||||
/* 09DF74 8009D374 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09DF78 8009D378 24070003 */ li $a3, 3
|
||||
/* 09DF7C 8009D37C 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09DF80 8009D380 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09DF80 8009D380 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09DF84 8009D384 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09DF88 8009D388 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09DF8C 8009D38C 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09DF90 8009D390 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09DF94 8009D394 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09DF94 8009D394 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09DF98 8009D398 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09DF9C 8009D39C 24060002 */ li $a2, 2
|
||||
/* 09DFA0 8009D3A0 240E0007 */ li $t6, 7
|
||||
@@ -412,12 +412,12 @@ glabel L8009D3C4
|
||||
/* 09DFCC 8009D3CC A426C5A0 */ sh $a2, %lo(gCurrentCourseId)($at)
|
||||
/* 09DFD0 8009D3D0 3C02800F */ lui $v0, %hi(gCharacterSelections) # $v0, 0x800f
|
||||
/* 09DFD4 8009D3D4 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09DFD8 8009D3D8 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09DFD8 8009D3D8 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09DFDC 8009D3DC 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09DFE0 8009D3E0 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09DFE4 8009D3E4 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09DFE8 8009D3E8 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09DFEC 8009D3EC 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09DFEC 8009D3EC 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09DFF0 8009D3F0 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09DFF4 8009D3F4 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09DFF8 8009D3F8 240F0007 */ li $t7, 7
|
||||
@@ -434,12 +434,12 @@ glabel L8009D414
|
||||
/* 09E020 8009D420 3C02800F */ lui $v0, %hi(gCharacterSelections) # $v0, 0x800f
|
||||
/* 09E024 8009D424 244286A8 */ addiu $v0, %lo(gCharacterSelections) # addiu $v0, $v0, -0x7958
|
||||
/* 09E028 8009D428 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09E02C 8009D42C 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09E02C 8009D42C 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09E030 8009D430 3C0C800E */ lui $t4, %hi(gModeSelection) # $t4, 0x800e
|
||||
/* 09E034 8009D434 3C0D800E */ lui $t5, %hi(gScreenModeSelection) # $t5, 0x800e
|
||||
/* 09E038 8009D438 25ADC530 */ addiu $t5, %lo(gScreenModeSelection) # addiu $t5, $t5, -0x3ad0
|
||||
/* 09E03C 8009D43C 258CC53C */ addiu $t4, %lo(gModeSelection) # addiu $t4, $t4, -0x3ac4
|
||||
/* 09E040 8009D440 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09E040 8009D440 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09E044 8009D444 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09E048 8009D448 24060002 */ li $a2, 2
|
||||
/* 09E04C 8009D44C 24070003 */ li $a3, 3
|
||||
@@ -605,10 +605,10 @@ glabel L8009D50C
|
||||
/* 09E28C 8009D68C 3C0A800E */ lui $t2, %hi(gPlayerCountSelection1) # $t2, 0x800e
|
||||
/* 09E290 8009D690 254AC538 */ addiu $t2, %lo(gPlayerCountSelection1) # addiu $t2, $t2, -0x3ac8
|
||||
/* 09E294 8009D694 8D4E0000 */ lw $t6, ($t2)
|
||||
/* 09E298 8009D698 3C0B8019 */ lui $t3, %hi(D_8018EDF3) # $t3, 0x8019
|
||||
/* 09E298 8009D698 3C0B8019 */ lui $t3, %hi(gPlayerCount) # $t3, 0x8019
|
||||
/* 09E29C 8009D69C AD870000 */ sw $a3, ($t4)
|
||||
/* 09E2A0 8009D6A0 14AE0010 */ bne $a1, $t6, .L8009D6E4
|
||||
/* 09E2A4 8009D6A4 256BEDF3 */ addiu $t3, %lo(D_8018EDF3) # addiu $t3, $t3, -0x120d
|
||||
/* 09E2A4 8009D6A4 256BEDF3 */ addiu $t3, %lo(gPlayerCount) # addiu $t3, $t3, -0x120d
|
||||
/* 09E2A8 8009D6A8 A1660000 */ sb $a2, ($t3)
|
||||
/* 09E2AC 8009D6AC 816F0000 */ lb $t7, ($t3)
|
||||
/* 09E2B0 8009D6B0 ADA50000 */ sw $a1, ($t5)
|
||||
|
||||
@@ -673,7 +673,7 @@ glabel L8009FD90
|
||||
/* 0A09EC 8009FDEC AFAA0010 */ sw $t2, 0x10($sp)
|
||||
/* 0A09F0 8009FDF0 24E70039 */ addiu $a3, $a3, 0x39
|
||||
/* 0A09F4 8009FDF4 00592821 */ addu $a1, $v0, $t9
|
||||
/* 0A09F8 8009FDF8 0C025673 */ jal func_800959CC
|
||||
/* 0A09F8 8009FDF8 0C025673 */ jal draw_flash_select_case_fast
|
||||
/* 0A09FC 8009FDFC 00603025 */ move $a2, $v1
|
||||
/* 0A0A00 8009FE00 AE020000 */ sw $v0, ($s0)
|
||||
/* 0A0A04 8009FE04 8E23001C */ lw $v1, 0x1c($s1)
|
||||
@@ -695,7 +695,7 @@ glabel L8009FD90
|
||||
/* 0A0A40 8009FE40 AFAD0018 */ sw $t5, 0x18($sp)
|
||||
/* 0A0A44 8009FE44 AFAC0014 */ sw $t4, 0x14($sp)
|
||||
/* 0A0A48 8009FE48 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A0A4C 8009FE4C 0C026306 */ jal func_80098C18
|
||||
/* 0A0A4C 8009FE4C 0C026306 */ jal draw_box_fill
|
||||
/* 0A0A50 8009FE50 00482821 */ addu $a1, $v0, $t0
|
||||
/* 0A0A54 8009FE54 AE020000 */ sw $v0, ($s0)
|
||||
/* 0A0A58 8009FE58 8E23001C */ lw $v1, 0x1c($s1)
|
||||
@@ -718,8 +718,8 @@ glabel L8009FD90
|
||||
/* 0A0A94 8009FE94 1000028B */ b .L800A08C4
|
||||
/* 0A0A98 8009FE98 AE020000 */ sw $v0, ($s0)
|
||||
glabel L8009FE9C
|
||||
/* 0A0A9C 8009FE9C 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0A0AA0 8009FEA0 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0A0A9C 8009FE9C 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0A0AA0 8009FEA0 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0A0AA4 8009FEA4 3C03800F */ lui $v1, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0A0AA8 8009FEA8 3C06800F */ lui $a2, %hi((D_800E86B0 - 3)) # 0x800f
|
||||
/* 0A0AAC 8009FEAC 00621821 */ addu $v1, $v1, $v0
|
||||
@@ -830,7 +830,7 @@ glabel L8009FF90
|
||||
/* 0A0C30 800A0030 AFB80018 */ sw $t8, 0x18($sp)
|
||||
/* 0A0C34 800A0034 AFAF0014 */ sw $t7, 0x14($sp)
|
||||
/* 0A0C38 800A0038 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A0C3C 800A003C 0C026306 */ jal func_80098C18
|
||||
/* 0A0C3C 800A003C 0C026306 */ jal draw_box_fill
|
||||
/* 0A0C40 800A0040 24A7003F */ addiu $a3, $a1, 0x3f
|
||||
/* 0A0C44 800A0044 1000001A */ b .L800A00B0
|
||||
/* 0A0C48 800A0048 AE020000 */ sw $v0, ($s0)
|
||||
@@ -842,7 +842,7 @@ glabel L8009FF90
|
||||
/* 0A0C5C 800A005C AFAA0010 */ sw $t2, 0x10($sp)
|
||||
/* 0A0C60 800A0060 00603025 */ move $a2, $v1
|
||||
/* 0A0C64 800A0064 00402825 */ move $a1, $v0
|
||||
/* 0A0C68 800A0068 0C025668 */ jal func_800959A0
|
||||
/* 0A0C68 800A0068 0C025668 */ jal draw_flash_select_case_slow
|
||||
/* 0A0C6C 800A006C 2447003F */ addiu $a3, $v0, 0x3f
|
||||
/* 0A0C70 800A0070 1000000F */ b .L800A00B0
|
||||
/* 0A0C74 800A0074 AE020000 */ sw $v0, ($s0)
|
||||
@@ -858,7 +858,7 @@ glabel L8009FF90
|
||||
/* 0A0C98 800A0098 AFAF0020 */ sw $t7, 0x20($sp)
|
||||
/* 0A0C9C 800A009C AFAE001C */ sw $t6, 0x1c($sp)
|
||||
/* 0A0CA0 800A00A0 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A0CA4 800A00A4 0C026306 */ jal func_80098C18
|
||||
/* 0A0CA4 800A00A4 0C026306 */ jal draw_box_fill
|
||||
/* 0A0CA8 800A00A8 24A7003F */ addiu $a3, $a1, 0x3f
|
||||
/* 0A0CAC 800A00AC AE020000 */ sw $v0, ($s0)
|
||||
.L800A00B0:
|
||||
@@ -1076,7 +1076,7 @@ glabel L800A037C
|
||||
/* 0A0FA4 800A03A4 AFAF0018 */ sw $t7, 0x18($sp)
|
||||
/* 0A0FA8 800A03A8 AFAE0014 */ sw $t6, 0x14($sp)
|
||||
/* 0A0FAC 800A03AC 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A0FB0 800A03B0 0C026306 */ jal func_80098C18
|
||||
/* 0A0FB0 800A03B0 0C026306 */ jal draw_box_fill
|
||||
/* 0A0FB4 800A03B4 24A7003F */ addiu $a3, $a1, 0x3f
|
||||
/* 0A0FB8 800A03B8 AE020000 */ sw $v0, ($s0)
|
||||
/* 0A0FBC 800A03BC 3C09800E */ lui $t1, %hi(gCCSelection) # $t1, 0x800e
|
||||
@@ -1135,7 +1135,7 @@ glabel L800A0428
|
||||
/* 0A1084 800A0484 AFAF0018 */ sw $t7, 0x18($sp)
|
||||
/* 0A1088 800A0488 AFAE0014 */ sw $t6, 0x14($sp)
|
||||
/* 0A108C 800A048C 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A1090 800A0490 0C026306 */ jal func_80098C18
|
||||
/* 0A1090 800A0490 0C026306 */ jal draw_box_fill
|
||||
/* 0A1094 800A0494 24A7003F */ addiu $a3, $a1, 0x3f
|
||||
/* 0A1098 800A0498 1000001A */ b .L800A0504
|
||||
/* 0A109C 800A049C AE020000 */ sw $v0, ($s0)
|
||||
@@ -1147,7 +1147,7 @@ glabel L800A0428
|
||||
/* 0A10B0 800A04B0 AFA90010 */ sw $t1, 0x10($sp)
|
||||
/* 0A10B4 800A04B4 00603025 */ move $a2, $v1
|
||||
/* 0A10B8 800A04B8 00402825 */ move $a1, $v0
|
||||
/* 0A10BC 800A04BC 0C025668 */ jal func_800959A0
|
||||
/* 0A10BC 800A04BC 0C025668 */ jal draw_flash_select_case_slow
|
||||
/* 0A10C0 800A04C0 2447003F */ addiu $a3, $v0, 0x3f
|
||||
/* 0A10C4 800A04C4 1000000F */ b .L800A0504
|
||||
/* 0A10C8 800A04C8 AE020000 */ sw $v0, ($s0)
|
||||
@@ -1164,7 +1164,7 @@ glabel L800A0428
|
||||
/* 0A10EC 800A04EC AFAE0020 */ sw $t6, 0x20($sp)
|
||||
/* 0A10F0 800A04F0 AFAD001C */ sw $t5, 0x1c($sp)
|
||||
/* 0A10F4 800A04F4 8E040000 */ lw $a0, ($s0)
|
||||
/* 0A10F8 800A04F8 0C026306 */ jal func_80098C18
|
||||
/* 0A10F8 800A04F8 0C026306 */ jal draw_box_fill
|
||||
/* 0A10FC 800A04FC 24A7003F */ addiu $a3, $a1, 0x3f
|
||||
/* 0A1100 800A0500 AE020000 */ sw $v0, ($s0)
|
||||
.L800A0504:
|
||||
|
||||
@@ -36,7 +36,7 @@ glabel func_800A10CC
|
||||
/* 0A1D34 800A1134 24070122 */ li $a3, 290
|
||||
/* 0A1D38 800A1138 AFA00014 */ sw $zero, 0x14($sp)
|
||||
/* 0A1D3C 800A113C AFA00018 */ sw $zero, 0x18($sp)
|
||||
/* 0A1D40 800A1140 0C026306 */ jal func_80098C18
|
||||
/* 0A1D40 800A1140 0C026306 */ jal draw_box_fill
|
||||
/* 0A1D44 800A1144 AFA0001C */ sw $zero, 0x1c($sp)
|
||||
/* 0A1D48 800A1148 AE220000 */ sw $v0, ($s1)
|
||||
/* 0A1D4C 800A114C 8E130004 */ lw $s3, 4($s0)
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
glabel func_800A3A10
|
||||
/* 0A4610 800A3A10 27BDFFF8 */ addiu $sp, $sp, -8
|
||||
/* 0A4614 800A3A14 AFB00004 */ sw $s0, 4($sp)
|
||||
/* 0A4618 800A3A18 3C108019 */ lui $s0, %hi(D_8018EDF3) # $s0, 0x8019
|
||||
/* 0A4618 800A3A18 3C108019 */ lui $s0, %hi(gPlayerCount) # $s0, 0x8019
|
||||
/* 0A461C 800A3A1C 3C0D8016 */ lui $t5, %hi(D_80164478) # $t5, 0x8016
|
||||
/* 0A4620 800A3A20 3C0B8019 */ lui $t3, %hi(gGPPointsByCharacterId) # $t3, 0x8019
|
||||
/* 0A4624 800A3A24 256BD9C8 */ addiu $t3, %lo(gGPPointsByCharacterId) # addiu $t3, $t3, -0x2638
|
||||
/* 0A4628 800A3A28 25AD4478 */ addiu $t5, %lo(D_80164478) # addiu $t5, $t5, 0x4478
|
||||
/* 0A462C 800A3A2C 2610EDF3 */ addiu $s0, %lo(D_8018EDF3) # addiu $s0, $s0, -0x120d
|
||||
/* 0A462C 800A3A2C 2610EDF3 */ addiu $s0, %lo(gPlayerCount) # addiu $s0, $s0, -0x120d
|
||||
/* 0A4630 800A3A30 00001025 */ move $v0, $zero
|
||||
/* 0A4634 800A3A34 00801825 */ move $v1, $a0
|
||||
/* 0A4638 800A3A38 240C0008 */ li $t4, 8
|
||||
|
||||
@@ -77,7 +77,7 @@ glabel func_800A8564
|
||||
/* 0A9270 800A8670 AFAB0010 */ sw $t3, 0x10($sp)
|
||||
/* 0A9274 800A8674 24E7001E */ addiu $a3, $a3, 0x1e
|
||||
/* 0A9278 800A8678 8C840298 */ lw $a0, %lo(gDisplayListHead)($a0)
|
||||
/* 0A927C 800A867C 0C025668 */ jal func_800959A0
|
||||
/* 0A927C 800A867C 0C025668 */ jal draw_flash_select_case_slow
|
||||
/* 0A9280 800A8680 01032821 */ addu $a1, $t0, $v1
|
||||
/* 0A9284 800A8684 3C018015 */ lui $at, %hi(gDisplayListHead) # $at, 0x8015
|
||||
/* 0A9288 800A8688 10000013 */ b .L800A86D8
|
||||
@@ -97,7 +97,7 @@ glabel func_800A8564
|
||||
/* 0A92BC 800A86BC AFAC0010 */ sw $t4, 0x10($sp)
|
||||
/* 0A92C0 800A86C0 24E7001E */ addiu $a3, $a3, 0x1e
|
||||
/* 0A92C4 800A86C4 8C840298 */ lw $a0, %lo(gDisplayListHead)($a0)
|
||||
/* 0A92C8 800A86C8 0C026306 */ jal func_80098C18
|
||||
/* 0A92C8 800A86C8 0C026306 */ jal draw_box_fill
|
||||
/* 0A92CC 800A86CC 01032821 */ addu $a1, $t0, $v1
|
||||
/* 0A92D0 800A86D0 3C018015 */ lui $at, %hi(gDisplayListHead) # $at, 0x8015
|
||||
/* 0A92D4 800A86D4 AC220298 */ sw $v0, %lo(gDisplayListHead)($at)
|
||||
|
||||
@@ -270,10 +270,10 @@ glabel L800AC7CC
|
||||
/* 0AD414 800AC814 00002825 */ move $a1, $zero
|
||||
/* 0AD418 800AC818 15A10053 */ bne $t5, $at, .L800AC968
|
||||
/* 0AD41C 800AC81C 3C028019 */ lui $v0, %hi(gCharacterIdByGPOverallRank) # $v0, 0x8019
|
||||
/* 0AD420 800AC820 3C038019 */ lui $v1, %hi(D_8018EDF3) # $v1, 0x8019
|
||||
/* 0AD420 800AC820 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
||||
/* 0AD424 800AC824 3C048016 */ lui $a0, %hi(D_80164478) # $a0, 0x8016
|
||||
/* 0AD428 800AC828 24844478 */ addiu $a0, %lo(D_80164478) # addiu $a0, $a0, 0x4478
|
||||
/* 0AD42C 800AC82C 8063EDF3 */ lb $v1, %lo(D_8018EDF3)($v1)
|
||||
/* 0AD42C 800AC82C 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
||||
/* 0AD430 800AC830 2442D9D0 */ addiu $v0, %lo(gCharacterIdByGPOverallRank) # addiu $v0, $v0, -0x2630
|
||||
/* 0AD434 800AC834 24060008 */ li $a2, 8
|
||||
.L800AC838:
|
||||
|
||||
@@ -39,8 +39,8 @@ glabel L800ACF94
|
||||
/* 0ADBB0 800ACFB0 10000077 */ b .L800AD190
|
||||
/* 0ADBB4 800ACFB4 AE190010 */ sw $t9, 0x10($s0)
|
||||
glabel L800ACFB8
|
||||
/* 0ADBB8 800ACFB8 3C098019 */ lui $t1, %hi(D_8018EDF3) # $t1, 0x8019
|
||||
/* 0ADBBC 800ACFBC 812AEDF3 */ lb $t2, %lo(D_8018EDF3)($t1)
|
||||
/* 0ADBB8 800ACFB8 3C098019 */ lui $t1, %hi(gPlayerCount) # $t1, 0x8019
|
||||
/* 0ADBBC 800ACFBC 812AEDF3 */ lb $t2, %lo(gPlayerCount)($t1)
|
||||
/* 0ADBC0 800ACFC0 000660C0 */ sll $t4, $a2, 3
|
||||
/* 0ADBC4 800ACFC4 3C0F800E */ lui $t7, %hi(D_800E7300) # $t7, 0x800e
|
||||
/* 0ADBC8 800ACFC8 000A5940 */ sll $t3, $t2, 5
|
||||
|
||||
@@ -32,7 +32,7 @@ glabel func_800B559C
|
||||
/* 0B6210 800B5610 24140018 */ li $s4, 24
|
||||
/* 0B6214 800B5614 24100003 */ li $s0, 3
|
||||
.L800B5618:
|
||||
/* 0B6218 800B5618 0C02D21D */ jal func_800B4874
|
||||
/* 0B6218 800B5618 0C02D21D */ jal checksum_time_trial_records
|
||||
/* 0B621C 800B561C 02202025 */ move $a0, $s1
|
||||
/* 0B6220 800B5620 06210003 */ bgez $s1, .L800B5630
|
||||
/* 0B6224 800B5624 00114083 */ sra $t0, $s1, 2
|
||||
|
||||
@@ -3,8 +3,8 @@ glabel func_8004E6C4
|
||||
/* 04F2C8 8004E6C8 3C028018 */ lui $v0, %hi(gItemWindowObjectByPlayerId) # 0x8018
|
||||
/* 04F2CC 8004E6CC 004F1021 */ addu $v0, $v0, $t7
|
||||
/* 04F2D0 8004E6D0 8C423E88 */ lw $v0, %lo(gItemWindowObjectByPlayerId)($v0) # 0x3e88($v0)
|
||||
/* 04F2D4 8004E6D4 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016
|
||||
/* 04F2D8 8004E6D8 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18
|
||||
/* 04F2D4 8004E6D4 3C198016 */ lui $t9, %hi(gObjectList) # $t9, 0x8016
|
||||
/* 04F2D8 8004E6D8 27395C18 */ addiu $t9, %lo(gObjectList) # addiu $t9, $t9, 0x5c18
|
||||
/* 04F2DC 8004E6DC 0002C0C0 */ sll $t8, $v0, 3
|
||||
/* 04F2E0 8004E6E0 0302C023 */ subu $t8, $t8, $v0
|
||||
/* 04F2E4 8004E6E4 0018C140 */ sll $t8, $t8, 5
|
||||
|
||||
@@ -117,11 +117,11 @@ glabel func_80050E34
|
||||
/* 051BEC 80050FEC AFAD00D4 */ sw $t5, 0xd4($sp)
|
||||
/* 051BF0 80050FF0 2484DAD8 */ addiu $a0, %lo(gTexturePortraitQuestionMark) # addiu $a0, $a0, -0x2528
|
||||
/* 051BF4 80050FF4 24050020 */ li $a1, 32
|
||||
/* 051BF8 80050FF8 0C0114A9 */ jal func_800452A4
|
||||
/* 051BF8 80050FF8 0C0114A9 */ jal rsp_load_texture
|
||||
/* 051BFC 80050FFC 24060020 */ li $a2, 32
|
||||
/* 051C00 80051000 8FAD00D4 */ lw $t5, 0xd4($sp)
|
||||
/* 051C04 80051004 3C0E8016 */ lui $t6, %hi(D_80165C18) # $t6, 0x8016
|
||||
/* 051C08 80051008 25CE5C18 */ addiu $t6, %lo(D_80165C18) # addiu $t6, $t6, 0x5c18
|
||||
/* 051C04 80051004 3C0E8016 */ lui $t6, %hi(gObjectList) # $t6, 0x8016
|
||||
/* 051C08 80051008 25CE5C18 */ addiu $t6, %lo(gObjectList) # addiu $t6, $t6, 0x5c18
|
||||
/* 051C0C 8005100C 000DC8C0 */ sll $t9, $t5, 3
|
||||
/* 051C10 80051010 032DC823 */ subu $t9, $t9, $t5
|
||||
/* 051C14 80051014 0019C940 */ sll $t9, $t9, 5
|
||||
@@ -145,7 +145,7 @@ glabel func_80050E34
|
||||
/* 051C5C 8005105C 46123100 */ add.s $f4, $f6, $f18
|
||||
/* 051C60 80051060 E62A0004 */ swc1 $f10, 4($s1)
|
||||
/* 051C64 80051064 E628000C */ swc1 $f8, 0xc($s1)
|
||||
/* 051C68 80051068 0C010B80 */ jal func_80042E00
|
||||
/* 051C68 80051068 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 051C6C 8005106C E6240008 */ swc1 $f4, 8($s1)
|
||||
/* 051C70 80051070 8E020000 */ lw $v0, ($s0)
|
||||
/* 051C74 80051074 3C0E0D00 */ lui $t6, %hi(D_0D0069E0) # $t6, 0xd00
|
||||
@@ -222,8 +222,8 @@ glabel func_80050E34
|
||||
/* 051D8C 8005118C 0019C940 */ sll $t9, $t9, 5
|
||||
/* 051D90 80051190 000D70C0 */ sll $t6, $t5, 3
|
||||
/* 051D94 80051194 01CD7023 */ subu $t6, $t6, $t5
|
||||
/* 051D98 80051198 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 051D9C 8005119C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 051D98 80051198 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 051D9C 8005119C 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 051DA0 800511A0 000E7140 */ sll $t6, $t6, 5
|
||||
/* 051DA4 800511A4 24180080 */ li $t8, 128
|
||||
/* 051DA8 800511A8 AFB80010 */ sw $t8, 0x10($sp)
|
||||
@@ -240,11 +240,11 @@ glabel func_80050E34
|
||||
/* 051DD4 800511D4 10000008 */ b .L800511F8
|
||||
/* 051DD8 800511D8 8FAA003C */ lw $t2, 0x3c($sp)
|
||||
.L800511DC:
|
||||
/* 051DDC 800511DC 3C0E8016 */ lui $t6, %hi(D_80165C18) # $t6, 0x8016
|
||||
/* 051DE0 800511E0 25CE5C18 */ addiu $t6, %lo(D_80165C18) # addiu $t6, $t6, 0x5c18
|
||||
/* 051DDC 800511DC 3C0E8016 */ lui $t6, %hi(gObjectList) # $t6, 0x8016
|
||||
/* 051DE0 800511E0 25CE5C18 */ addiu $t6, %lo(gObjectList) # addiu $t6, $t6, 0x5c18
|
||||
/* 051DE4 800511E4 032E8821 */ addu $s1, $t9, $t6
|
||||
/* 051DE8 800511E8 862400A0 */ lh $a0, 0xa0($s1)
|
||||
/* 051DEC 800511EC 0C012CAF */ jal func_8004B2BC
|
||||
/* 051DEC 800511EC 0C012CAF */ jal set_transparency
|
||||
/* 051DF0 800511F0 AFAA003C */ sw $t2, 0x3c($sp)
|
||||
/* 051DF4 800511F4 8FAA003C */ lw $t2, 0x3c($sp)
|
||||
.L800511F8:
|
||||
@@ -252,7 +252,7 @@ glabel func_80050E34
|
||||
/* 051DFC 800511FC 008A2021 */ addu $a0, $a0, $t2
|
||||
/* 051E00 80051200 8C84459C */ lw $a0, %lo(gPortraitTextures)($a0)
|
||||
/* 051E04 80051204 24050020 */ li $a1, 32
|
||||
/* 051E08 80051208 0C0114A9 */ jal func_800452A4
|
||||
/* 051E08 80051208 0C0114A9 */ jal rsp_load_texture
|
||||
/* 051E0C 8005120C 24060020 */ li $a2, 32
|
||||
/* 051E10 80051210 8FAF00D0 */ lw $t7, 0xd0($sp)
|
||||
/* 051E14 80051214 8FB900C4 */ lw $t9, 0xc4($sp)
|
||||
@@ -275,7 +275,7 @@ glabel func_80050E34
|
||||
/* 051E58 80051258 46088280 */ add.s $f10, $f16, $f8
|
||||
/* 051E5C 8005125C E6320004 */ swc1 $f18, 4($s1)
|
||||
/* 051E60 80051260 E626000C */ swc1 $f6, 0xc($s1)
|
||||
/* 051E64 80051264 0C010B80 */ jal func_80042E00
|
||||
/* 051E64 80051264 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 051E68 80051268 E62A0008 */ swc1 $f10, 8($s1)
|
||||
/* 051E6C 8005126C 8FB800B8 */ lw $t8, 0xb8($sp)
|
||||
/* 051E70 80051270 3C0E0600 */ lui $t6, 0x600
|
||||
@@ -347,7 +347,7 @@ glabel func_80050E34
|
||||
/* 051F70 80051370 2739A058 */ addiu $t9, %lo(gTextureHudTypeCRankTinyFont) # addiu $t9, $t9, -0x5fa8
|
||||
/* 051F74 80051374 000E7980 */ sll $t7, $t6, 6
|
||||
/* 051F78 80051378 25F80040 */ addiu $t8, $t7, 0x40
|
||||
/* 051F7C 8005137C 0C0114A9 */ jal func_800452A4
|
||||
/* 051F7C 8005137C 0C0114A9 */ jal rsp_load_texture
|
||||
/* 051F80 80051380 03192021 */ addu $a0, $t8, $t9
|
||||
/* 051F84 80051384 8FAE00B8 */ lw $t6, 0xb8($sp)
|
||||
/* 051F88 80051388 8FA400D0 */ lw $a0, 0xd0($sp)
|
||||
@@ -415,7 +415,7 @@ glabel func_80050E34
|
||||
/* 052078 80051478 24060020 */ li $a2, 32
|
||||
/* 05207C 8005147C 8FA4003C */ lw $a0, 0x3c($sp)
|
||||
/* 052080 80051480 8FA50038 */ lw $a1, 0x38($sp)
|
||||
/* 052084 80051484 0C010B80 */ jal func_80042E00
|
||||
/* 052084 80051484 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 052088 80051488 8E260000 */ lw $a2, ($s1)
|
||||
/* 05208C 8005148C 8E020000 */ lw $v0, ($s0)
|
||||
/* 052090 80051490 3C0E0600 */ lui $t6, 0x600
|
||||
|
||||
@@ -2,9 +2,9 @@ glabel func_800519D4
|
||||
/* 0525D4 800519D4 000470C0 */ sll $t6, $a0, 3
|
||||
/* 0525D8 800519D8 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0525DC 800519DC 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 0525E0 800519E0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 0525E0 800519E0 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 0525E4 800519E4 AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 0525E8 800519E8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 0525E8 800519E8 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 0525EC 800519EC 000E7140 */ sll $t6, $t6, 5
|
||||
/* 0525F0 800519F0 01CF8021 */ addu $s0, $t6, $t7
|
||||
/* 0525F4 800519F4 8E180054 */ lw $t8, 0x54($s0)
|
||||
@@ -44,8 +44,8 @@ glabel func_800519D4
|
||||
/* 052678 80051A78 ACA90000 */ sw $t1, ($a1)
|
||||
/* 05267C 80051A7C AC4A0000 */ sw $t2, ($v0)
|
||||
/* 052680 80051A80 8E0B0074 */ lw $t3, 0x74($s0)
|
||||
/* 052684 80051A84 3C0E0D00 */ lui $t6, %hi(D_0D006940) # $t6, 0xd00
|
||||
/* 052688 80051A88 25CE6940 */ addiu $t6, %lo(D_0D006940) # addiu $t6, $t6, 0x6940
|
||||
/* 052684 80051A84 3C0E0D00 */ lui $t6, %hi(common_rectangle_display) # $t6, 0xd00
|
||||
/* 052688 80051A88 25CE6940 */ addiu $t6, %lo(common_rectangle_display) # addiu $t6, $t6, 0x6940
|
||||
/* 05268C 80051A8C AC4B0004 */ sw $t3, 4($v0)
|
||||
/* 052690 80051A90 8CA20000 */ lw $v0, ($a1)
|
||||
/* 052694 80051A94 3C0D0600 */ lui $t5, 0x600
|
||||
|
||||
@@ -41,8 +41,8 @@ glabel func_80051ABC
|
||||
/* 052758 80051B58 19400038 */ blez $t2, .L80051C3C
|
||||
/* 05275C 80051B5C 3C0C8019 */ lui $t4, %hi(D_8018CC80) # $t4, 0x8019
|
||||
/* 052760 80051B60 258CCC80 */ addiu $t4, %lo(D_8018CC80) # addiu $t4, $t4, -0x3380
|
||||
/* 052764 80051B64 3C128016 */ lui $s2, %hi(D_80165C18) # $s2, 0x8016
|
||||
/* 052768 80051B68 26525C18 */ addiu $s2, %lo(D_80165C18) # addiu $s2, $s2, 0x5c18
|
||||
/* 052764 80051B64 3C128016 */ lui $s2, %hi(gObjectList) # $s2, 0x8016
|
||||
/* 052768 80051B68 26525C18 */ addiu $s2, %lo(gObjectList) # addiu $s2, $s2, 0x5c18
|
||||
/* 05276C 80051B6C 016C8821 */ addu $s1, $t3, $t4
|
||||
/* 052770 80051B70 241300E0 */ li $s3, 224
|
||||
/* 052774 80051B74 8E240000 */ lw $a0, ($s1)
|
||||
@@ -77,8 +77,8 @@ glabel func_80051ABC
|
||||
/* 0527E0 80051BE0 19000016 */ blez $t0, .L80051C3C
|
||||
/* 0527E4 80051BE4 3C0A8019 */ lui $t2, %hi(D_8018CC80) # $t2, 0x8019
|
||||
/* 0527E8 80051BE8 254ACC80 */ addiu $t2, %lo(D_8018CC80) # addiu $t2, $t2, -0x3380
|
||||
/* 0527EC 80051BEC 3C128016 */ lui $s2, %hi(D_80165C18) # $s2, 0x8016
|
||||
/* 0527F0 80051BF0 26525C18 */ addiu $s2, %lo(D_80165C18) # addiu $s2, $s2, 0x5c18
|
||||
/* 0527EC 80051BEC 3C128016 */ lui $s2, %hi(gObjectList) # $s2, 0x8016
|
||||
/* 0527F0 80051BF0 26525C18 */ addiu $s2, %lo(gObjectList) # addiu $s2, $s2, 0x5c18
|
||||
/* 0527F4 80051BF4 012A8821 */ addu $s1, $t1, $t2
|
||||
/* 0527F8 80051BF8 241300E0 */ li $s3, 224
|
||||
/* 0527FC 80051BFC 8E240000 */ lw $a0, ($s1)
|
||||
|
||||
@@ -87,8 +87,8 @@ glabel func_80051C60
|
||||
/* 05299C 80051D9C 19C0003E */ blez $t6, .L80051E98
|
||||
/* 0529A0 80051DA0 3C188019 */ lui $t8, %hi(D_8018CC80) # $t8, 0x8019
|
||||
/* 0529A4 80051DA4 2718CC80 */ addiu $t8, %lo(D_8018CC80) # addiu $t8, $t8, -0x3380
|
||||
/* 0529A8 80051DA8 3C128016 */ lui $s2, %hi(D_80165C18) # $s2, 0x8016
|
||||
/* 0529AC 80051DAC 26525C18 */ addiu $s2, %lo(D_80165C18) # addiu $s2, $s2, 0x5c18
|
||||
/* 0529A8 80051DA8 3C128016 */ lui $s2, %hi(gObjectList) # $s2, 0x8016
|
||||
/* 0529AC 80051DAC 26525C18 */ addiu $s2, %lo(gObjectList) # addiu $s2, $s2, 0x5c18
|
||||
/* 0529B0 80051DB0 01F88821 */ addu $s1, $t7, $t8
|
||||
/* 0529B4 80051DB4 241300E0 */ li $s3, 224
|
||||
/* 0529B8 80051DB8 8E240000 */ lw $a0, ($s1)
|
||||
@@ -126,8 +126,8 @@ glabel func_80051C60
|
||||
/* 052A2C 80051E2C 19A0001A */ blez $t5, .L80051E98
|
||||
/* 052A30 80051E30 3C0F8019 */ lui $t7, %hi(D_8018CC80) # $t7, 0x8019
|
||||
/* 052A34 80051E34 25EFCC80 */ addiu $t7, %lo(D_8018CC80) # addiu $t7, $t7, -0x3380
|
||||
/* 052A38 80051E38 3C128016 */ lui $s2, %hi(D_80165C18) # $s2, 0x8016
|
||||
/* 052A3C 80051E3C 26525C18 */ addiu $s2, %lo(D_80165C18) # addiu $s2, $s2, 0x5c18
|
||||
/* 052A38 80051E38 3C128016 */ lui $s2, %hi(gObjectList) # $s2, 0x8016
|
||||
/* 052A3C 80051E3C 26525C18 */ addiu $s2, %lo(gObjectList) # addiu $s2, $s2, 0x5c18
|
||||
/* 052A40 80051E40 01CF8821 */ addu $s1, $t6, $t7
|
||||
/* 052A44 80051E44 241300E0 */ li $s3, 224
|
||||
/* 052A48 80051E48 8E240000 */ lw $a0, ($s1)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_8005217C
|
||||
/* 052D7C 8005217C 3C078018 */ lui $a3, %hi(D_80183F28) # $a3, 0x8018
|
||||
/* 052D80 80052180 8CE73F28 */ lw $a3, %lo(D_80183F28)($a3)
|
||||
/* 052D84 80052184 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
|
||||
/* 052D88 80052188 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
|
||||
/* 052D84 80052184 3C0F8016 */ lui $t7, %hi(gObjectList) # $t7, 0x8016
|
||||
/* 052D88 80052188 25EF5C18 */ addiu $t7, %lo(gObjectList) # addiu $t7, $t7, 0x5c18
|
||||
/* 052D8C 8005218C 000770C0 */ sll $t6, $a3, 3
|
||||
/* 052D90 80052190 01C77023 */ subu $t6, $t6, $a3
|
||||
/* 052D94 80052194 000E7140 */ sll $t6, $t6, 5
|
||||
@@ -16,7 +16,7 @@ glabel func_8005217C
|
||||
/* 052DB4 800521B4 00E02025 */ move $a0, $a3
|
||||
/* 052DB8 800521B8 24050010 */ li $a1, 16
|
||||
/* 052DBC 800521BC AFA30018 */ sw $v1, 0x18($sp)
|
||||
/* 052DC0 800521C0 0C01C88F */ jal func_8007223C
|
||||
/* 052DC0 800521C0 0C01C88F */ jal is_obj_index_flag_unk_054_active
|
||||
/* 052DC4 800521C4 AFA70050 */ sw $a3, 0x50($sp)
|
||||
/* 052DC8 800521C8 8FA30018 */ lw $v1, 0x18($sp)
|
||||
/* 052DCC 800521CC 10400076 */ beqz $v0, .L800523A8
|
||||
@@ -24,7 +24,7 @@ glabel func_8005217C
|
||||
/* 052DD4 800521D4 24640004 */ addiu $a0, $v1, 4
|
||||
/* 052DD8 800521D8 246500BE */ addiu $a1, $v1, 0xbe
|
||||
/* 052DDC 800521DC 8C660000 */ lw $a2, ($v1)
|
||||
/* 052DE0 800521E0 0C010B80 */ jal func_80042E00
|
||||
/* 052DE0 800521E0 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 052DE4 800521E4 AFA70050 */ sw $a3, 0x50($sp)
|
||||
/* 052DE8 800521E8 0C014830 */ jal func_800520C0
|
||||
/* 052DEC 800521EC 8FA40050 */ lw $a0, 0x50($sp)
|
||||
|
||||
@@ -6,12 +6,12 @@ glabel func_80052590
|
||||
/* 0531A0 800525A0 AFBE0040 */ sw $fp, 0x40($sp)
|
||||
/* 0531A4 800525A4 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 0531A8 800525A8 0002C0C0 */ sll $t8, $v0, 3
|
||||
/* 0531AC 800525AC 3C1E8016 */ lui $fp, %hi(D_80165C18) # $fp, 0x8016
|
||||
/* 0531AC 800525AC 3C1E8016 */ lui $fp, %hi(gObjectList) # $fp, 0x8016
|
||||
/* 0531B0 800525B0 000E70C0 */ sll $t6, $t6, 3
|
||||
/* 0531B4 800525B4 3C0F800E */ lui $t7, %hi(camera1) # $t7, 0x800e
|
||||
/* 0531B8 800525B8 0302C023 */ subu $t8, $t8, $v0
|
||||
/* 0531BC 800525BC 8DEFDB40 */ lw $t7, %lo(camera1)($t7)
|
||||
/* 0531C0 800525C0 27DE5C18 */ addiu $fp, %lo(D_80165C18) # addiu $fp, $fp, 0x5c18
|
||||
/* 0531C0 800525C0 27DE5C18 */ addiu $fp, %lo(gObjectList) # addiu $fp, $fp, 0x5c18
|
||||
/* 0531C4 800525C4 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 0531C8 800525C8 01C47023 */ subu $t6, $t6, $a0
|
||||
/* 0531CC 800525CC 0018C140 */ sll $t8, $t8, 5
|
||||
|
||||
@@ -97,8 +97,8 @@ glabel func_800528EC
|
||||
/* 053668 80052A68 3C138019 */ lui $s3, %hi(D_8018C3F0) # $s3, 0x8019
|
||||
/* 05366C 80052A6C 3C1E8019 */ lui $fp, %hi(D_8018C5F0) # $fp, 0x8019
|
||||
/* 053670 80052A70 3C170400 */ lui $s7, (0x04000C2F >> 16) # lui $s7, 0x400
|
||||
/* 053674 80052A74 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 053678 80052A78 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 053674 80052A74 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 053678 80052A78 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 05367C 80052A7C 36F70C2F */ ori $s7, (0x04000C2F & 0xFFFF) # ori $s7, $s7, 0xc2f
|
||||
/* 053680 80052A80 27DEC5F0 */ addiu $fp, %lo(D_8018C5F0) # addiu $fp, $fp, -0x3a10
|
||||
/* 053684 80052A84 2673C3F0 */ addiu $s3, %lo(D_8018C3F0) # addiu $s3, $s3, -0x3c10
|
||||
@@ -121,7 +121,7 @@ glabel func_800528EC
|
||||
/* 0536C4 80052AC4 24640004 */ addiu $a0, $v1, 4
|
||||
/* 0536C8 80052AC8 5B00000F */ blezl $t8, .L80052B08
|
||||
/* 0536CC 80052ACC 26730004 */ addiu $s3, $s3, 4
|
||||
/* 0536D0 80052AD0 0C010B80 */ jal func_80042E00
|
||||
/* 0536D0 80052AD0 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 0536D4 80052AD4 8C660000 */ lw $a2, ($v1)
|
||||
/* 0536D8 80052AD8 8E420000 */ lw $v0, ($s2)
|
||||
/* 0536DC 80052ADC 3C0F0600 */ lui $t7, 0x600
|
||||
@@ -142,8 +142,8 @@ glabel func_800528EC
|
||||
/* 053714 80052B14 8E420000 */ lw $v0, ($s2)
|
||||
.L80052B18:
|
||||
/* 053718 80052B18 3C170400 */ lui $s7, (0x04000C2F >> 16) # lui $s7, 0x400
|
||||
/* 05371C 80052B1C 3C158016 */ lui $s5, %hi(D_80165C18) # $s5, 0x8016
|
||||
/* 053720 80052B20 26B55C18 */ addiu $s5, %lo(D_80165C18) # addiu $s5, $s5, 0x5c18
|
||||
/* 05371C 80052B1C 3C158016 */ lui $s5, %hi(gObjectList) # $s5, 0x8016
|
||||
/* 053720 80052B20 26B55C18 */ addiu $s5, %lo(gObjectList) # addiu $s5, $s5, 0x5c18
|
||||
/* 053724 80052B24 36F70C2F */ ori $s7, (0x04000C2F & 0xFFFF) # ori $s7, $s7, 0xc2f
|
||||
/* 053728 80052B28 27DED120 */ addiu $fp, $fp, %lo(gMatrixHudCount) # -0x2ee0
|
||||
/* 05372C 80052B2C 241600E0 */ li $s6, 224
|
||||
@@ -172,7 +172,7 @@ glabel func_800528EC
|
||||
/* 053784 80052B84 3C110D00 */ lui $s1, %hi(D_0D006930) # $s1, 0xd00
|
||||
/* 053788 80052B88 26316930 */ addiu $s1, %lo(D_0D006930) # addiu $s1, $s1, 0x6930
|
||||
/* 05378C 80052B8C 26105BD0 */ addiu $s0, %lo(D_0D005BD0) # addiu $s0, $s0, 0x5bd0
|
||||
/* 053790 80052B90 0C010B80 */ jal func_80042E00
|
||||
/* 053790 80052B90 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 053794 80052B94 8C660000 */ lw $a2, ($v1)
|
||||
/* 053798 80052B98 8E420000 */ lw $v0, ($s2)
|
||||
/* 05379C 80052B9C 3C0F0600 */ lui $t7, 0x600
|
||||
|
||||
@@ -37,8 +37,8 @@ glabel func_80052E30
|
||||
/* 053ABC 80052EBC A5000000 */ sh $zero, ($t0)
|
||||
/* 053AC0 80052EC0 A5000002 */ sh $zero, 2($t0)
|
||||
/* 053AC4 80052EC4 A5000004 */ sh $zero, 4($t0)
|
||||
/* 053AC8 80052EC8 3C0D8019 */ lui $t5, %hi(D_8018EDF3) # $t5, 0x8019
|
||||
/* 053ACC 80052ECC 81ADEDF3 */ lb $t5, %lo(D_8018EDF3)($t5)
|
||||
/* 053AC8 80052EC8 3C0D8019 */ lui $t5, %hi(gPlayerCount) # $t5, 0x8019
|
||||
/* 053ACC 80052ECC 81ADEDF3 */ lb $t5, %lo(gPlayerCount)($t5)
|
||||
/* 053AD0 80052ED0 3C11800E */ lui $s1, %hi(gPlayerCountSelection1) # $s1, 0x800e
|
||||
/* 053AD4 80052ED4 24010001 */ li $at, 1
|
||||
/* 053AD8 80052ED8 15A1000C */ bne $t5, $at, .L80052F0C
|
||||
|
||||
@@ -32,7 +32,7 @@ glabel func_80053870
|
||||
/* 0544E8 800538E8 8E110000 */ lw $s1, ($s0)
|
||||
.L800538EC:
|
||||
/* 0544EC 800538EC 02602825 */ move $a1, $s3
|
||||
/* 0544F0 800538F0 0C01C87A */ jal func_800721E8
|
||||
/* 0544F0 800538F0 0C01C87A */ jal set_object_flag_unk_054_false
|
||||
/* 0544F4 800538F4 02202025 */ move $a0, $s1
|
||||
/* 0544F8 800538F8 02202025 */ move $a0, $s1
|
||||
/* 0544FC 800538FC 0C01C8B3 */ jal func_800722CC
|
||||
@@ -55,12 +55,12 @@ glabel func_80053870
|
||||
/* 05453C 8005393C 26103EA0 */ addiu $s0, %lo(D_80183EA0) # addiu $s0, $s0, 0x3ea0
|
||||
/* 054540 80053940 19C00037 */ blez $t6, .L80053A20
|
||||
/* 054544 80053944 241E00E0 */ li $fp, 224
|
||||
/* 054548 80053948 3C178016 */ lui $s7, %hi(D_80165C18) # $s7, 0x8016
|
||||
/* 054548 80053948 3C178016 */ lui $s7, %hi(gObjectList) # $s7, 0x8016
|
||||
/* 05454C 8005394C 3C148019 */ lui $s4, %hi(D_8018CF68) # $s4, 0x8019
|
||||
/* 054550 80053950 3C13800E */ lui $s3, %hi(gGamestate) # $s3, 0x800e
|
||||
/* 054554 80053954 2673C50C */ addiu $s3, %lo(gGamestate) # addiu $s3, $s3, -0x3af4
|
||||
/* 054558 80053958 2694CF68 */ addiu $s4, %lo(D_8018CF68) # addiu $s4, $s4, -0x3098
|
||||
/* 05455C 8005395C 26F75C18 */ addiu $s7, %lo(D_80165C18) # addiu $s7, $s7, 0x5c18
|
||||
/* 05455C 8005395C 26F75C18 */ addiu $s7, %lo(gObjectList) # addiu $s7, $s7, 0x5c18
|
||||
/* 054560 80053960 24120009 */ li $s2, 9
|
||||
/* 054564 80053964 8E110000 */ lw $s1, ($s0)
|
||||
.L80053968:
|
||||
@@ -169,13 +169,13 @@ glabel func_80053870
|
||||
/* 0546F0 80053AF0 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 0546F4 80053AF4 8E420000 */ lw $v0, ($s2)
|
||||
/* 0546F8 80053AF8 3C0D0002 */ lui $t5, (0x00020204 >> 16) # lui $t5, 2
|
||||
/* 0546FC 80053AFC 3C178016 */ lui $s7, %hi(D_80165C18) # $s7, 0x8016
|
||||
/* 0546FC 80053AFC 3C178016 */ lui $s7, %hi(gObjectList) # $s7, 0x8016
|
||||
/* 054700 80053B00 24580008 */ addiu $t8, $v0, 8
|
||||
/* 054704 80053B04 AE580000 */ sw $t8, ($s2)
|
||||
/* 054708 80053B08 35AD0204 */ ori $t5, (0x00020204 & 0xFFFF) # ori $t5, $t5, 0x204
|
||||
/* 05470C 80053B0C 3C19B700 */ lui $t9, 0xb700
|
||||
/* 054710 80053B10 3C040600 */ lui $a0, %hi(d_course_bowsers_castle_thwomp_side) # $a0, 0x600
|
||||
/* 054714 80053B14 26F75C18 */ addiu $s7, %lo(D_80165C18) # addiu $s7, $s7, 0x5c18
|
||||
/* 054714 80053B14 26F75C18 */ addiu $s7, %lo(gObjectList) # addiu $s7, $s7, 0x5c18
|
||||
/* 054718 80053B18 241E00E0 */ li $fp, 224
|
||||
/* 05471C 80053B1C 24846738 */ addiu $a0, %lo(d_course_bowsers_castle_thwomp_side) # addiu $a0, $a0, 0x6738
|
||||
/* 054720 80053B20 24050020 */ li $a1, 32
|
||||
@@ -212,7 +212,7 @@ glabel func_80053870
|
||||
/* 054798 80053B98 26736930 */ addiu $s3, %lo(D_0D006930) # addiu $s3, $s3, 0x6930
|
||||
/* 05479C 80053B9C 8E060000 */ lw $a2, ($s0)
|
||||
/* 0547A0 80053BA0 26315C00 */ addiu $s1, %lo(D_0D005C00) # addiu $s1, $s1, 0x5c00
|
||||
/* 0547A4 80053BA4 0C010B80 */ jal func_80042E00
|
||||
/* 0547A4 80053BA4 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 0547A8 80053BA8 AFA70044 */ sw $a3, 0x44($sp)
|
||||
/* 0547AC 80053BAC 8E420000 */ lw $v0, ($s2)
|
||||
/* 0547B0 80053BB0 8FA70044 */ lw $a3, 0x44($sp)
|
||||
|
||||
@@ -38,9 +38,9 @@ glabel func_80054BE8
|
||||
/* 055878 80054C78 3C018018 */ lui $at, %hi(D_80183E80) # $at, 0x8018
|
||||
/* 05587C 80054C7C 3C108019 */ lui $s0, %hi(D_8018C630) # $s0, 0x8019
|
||||
/* 055880 80054C80 3C148019 */ lui $s4, %hi(D_8018C830) # $s4, 0x8019
|
||||
/* 055884 80054C84 3C128016 */ lui $s2, %hi(D_80165C18) # $s2, 0x8016
|
||||
/* 055884 80054C84 3C128016 */ lui $s2, %hi(gObjectList) # $s2, 0x8016
|
||||
/* 055888 80054C88 A4203E80 */ sh $zero, %lo(D_80183E80)($at)
|
||||
/* 05588C 80054C8C 26525C18 */ addiu $s2, %lo(D_80165C18) # addiu $s2, $s2, 0x5c18
|
||||
/* 05588C 80054C8C 26525C18 */ addiu $s2, %lo(gObjectList) # addiu $s2, $s2, 0x5c18
|
||||
/* 055890 80054C90 2694C830 */ addiu $s4, %lo(D_8018C830) # addiu $s4, $s4, -0x37d0
|
||||
/* 055894 80054C94 2610C630 */ addiu $s0, %lo(D_8018C630) # addiu $s0, $s0, -0x39d0
|
||||
/* 055898 80054C98 241300E0 */ li $s3, 224
|
||||
|
||||
@@ -28,7 +28,7 @@ glabel func_800562E4
|
||||
/* 056F4C 8005634C 3C063E4C */ lui $a2, (0x3E4CCCCD >> 16) # lui $a2, 0x3e4c
|
||||
/* 056F50 80056350 34C6CCCD */ ori $a2, (0x3E4CCCCD & 0xFFFF) # ori $a2, $a2, 0xcccd
|
||||
/* 056F54 80056354 24A53E80 */ addiu $a1, %lo(D_80183E80) # addiu $a1, $a1, 0x3e80
|
||||
/* 056F58 80056358 0C010B80 */ jal func_80042E00
|
||||
/* 056F58 80056358 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 056F5C 8005635C 24843E40 */ addiu $a0, %lo(D_80183E40) # addiu $a0, $a0, 0x3e40
|
||||
/* 056F60 80056360 8FAC001C */ lw $t4, 0x1c($sp)
|
||||
/* 056F64 80056364 3C0E0D03 */ lui $t6, %hi(D_0D02AC58) # $t6, 0xd03
|
||||
@@ -50,8 +50,8 @@ glabel func_800562E4
|
||||
/* 056FA4 800563A4 AC580000 */ sw $t8, ($v0)
|
||||
/* 056FA8 800563A8 AC590004 */ sw $t9, 4($v0)
|
||||
/* 056FAC 800563AC 8CA20000 */ lw $v0, ($a1)
|
||||
/* 056FB0 800563B0 3C0C0D00 */ lui $t4, %hi(D_0D006940) # $t4, 0xd00
|
||||
/* 056FB4 800563B4 258C6940 */ addiu $t4, %lo(D_0D006940) # addiu $t4, $t4, 0x6940
|
||||
/* 056FB0 800563B0 3C0C0D00 */ lui $t4, %hi(common_rectangle_display) # $t4, 0xd00
|
||||
/* 056FB4 800563B4 258C6940 */ addiu $t4, %lo(common_rectangle_display) # addiu $t4, $t4, 0x6940
|
||||
/* 056FB8 800563B8 244A0008 */ addiu $t2, $v0, 8
|
||||
/* 056FBC 800563BC ACAA0000 */ sw $t2, ($a1)
|
||||
/* 056FC0 800563C0 3C0B0600 */ lui $t3, 0x600
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
glabel func_800563DC
|
||||
/* 056FDC 800563DC 0004C8C0 */ sll $t9, $a0, 3
|
||||
/* 056FE0 800563E0 0324C823 */ subu $t9, $t9, $a0
|
||||
/* 056FE4 800563E4 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016
|
||||
/* 056FE8 800563E8 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18
|
||||
/* 056FE4 800563E4 3C088016 */ lui $t0, %hi(gObjectList) # $t0, 0x8016
|
||||
/* 056FE8 800563E8 25085C18 */ addiu $t0, %lo(gObjectList) # addiu $t0, $t0, 0x5c18
|
||||
/* 056FEC 800563EC 0019C940 */ sll $t9, $t9, 5
|
||||
/* 056FF0 800563F0 03281021 */ addu $v0, $t9, $t0
|
||||
/* 056FF4 800563F4 C4440008 */ lwc1 $f4, 8($v0)
|
||||
@@ -49,7 +49,7 @@ glabel func_800563DC
|
||||
/* 057098 80056498 A6290004 */ sh $t1, 4($s1)
|
||||
/* 05709C 8005649C 34C6CCCD */ ori $a2, (0x3E4CCCCD & 0xFFFF) # ori $a2, $a2, 0xcccd
|
||||
/* 0570A0 800564A0 02602025 */ move $a0, $s3
|
||||
/* 0570A4 800564A4 0C010B80 */ jal func_80042E00
|
||||
/* 0570A4 800564A4 0C010B80 */ jal rsp_set_matrix_transformation
|
||||
/* 0570A8 800564A8 02202825 */ move $a1, $s1
|
||||
/* 0570AC 800564AC 3C148015 */ lui $s4, %hi(gDisplayListHead) # $s4, 0x8015
|
||||
/* 0570B0 800564B0 26940298 */ addiu $s4, %lo(gDisplayListHead) # addiu $s4, $s4, 0x298
|
||||
@@ -77,7 +77,7 @@ glabel func_800563DC
|
||||
/* 057108 80056508 24C65AE0 */ addiu $a2, %lo(D_0D005AE0) # addiu $a2, $a2, 0x5ae0
|
||||
/* 05710C 8005650C 01AE2821 */ addu $a1, $t5, $t6
|
||||
/* 057110 80056510 2484A858 */ addiu $a0, %lo(D_0D02A858) # addiu $a0, $a0, -0x57a8
|
||||
/* 057114 80056514 0C011C9C */ jal func_80047270
|
||||
/* 057114 80056514 0C011C9C */ jal draw_rectangle_texture_overlap
|
||||
/* 057118 80056518 24070020 */ li $a3, 32
|
||||
/* 05711C 8005651C 8E820000 */ lw $v0, ($s4)
|
||||
/* 057120 80056520 3C108019 */ lui $s0, %hi(D_8018D400) # $s0, 0x8019
|
||||
|
||||
@@ -37,7 +37,7 @@ glabel main_menu_act
|
||||
/* 0B363C 800B2A3C 3C088019 */ lui $t0, %hi(gMainMenuSelectionDepth) # $t0, 0x8019
|
||||
/* 0B3640 800B2A40 2508EDED */ addiu $t0, %lo(gMainMenuSelectionDepth) # addiu $t0, $t0, -0x1213
|
||||
/* 0B3644 800B2A44 910C0000 */ lbu $t4, ($t0)
|
||||
/* 0B3648 800B2A48 3C188019 */ lui $t8, %hi(D_8018EDF3) # 0x8019
|
||||
/* 0B3648 800B2A48 3C188019 */ lui $t8, %hi(gPlayerCount) # 0x8019
|
||||
/* 0B364C 800B2A4C 2D810009 */ sltiu $at, $t4, 9
|
||||
/* 0B3650 800B2A50 10200293 */ beqz $at, .L800B34A0
|
||||
/* 0B3654 800B2A54 000C6080 */ sll $t4, $t4, 2
|
||||
@@ -47,8 +47,8 @@ glabel main_menu_act
|
||||
/* 0B3664 800B2A64 01800008 */ jr $t4
|
||||
/* 0B3668 800B2A68 00000000 */ nop
|
||||
glabel L800B2A6C # case 0
|
||||
/* 0B366C 800B2A6C 3C0D8019 */ lui $t5, %hi(D_8018EDF3) # $t5, 0x8019
|
||||
/* 0B3670 800B2A70 81ADEDF3 */ lb $t5, %lo(D_8018EDF3)($t5)
|
||||
/* 0B366C 800B2A6C 3C0D8019 */ lui $t5, %hi(gPlayerCount) # $t5, 0x8019
|
||||
/* 0B3670 800B2A70 81ADEDF3 */ lb $t5, %lo(gPlayerCount)($t5)
|
||||
/* 0B3674 800B2A74 3C0F800F */ lui $t7, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3678 800B2A78 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B367C 800B2A7C 01ED7821 */ addu $t7, $t7, $t5
|
||||
@@ -65,13 +65,13 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B36A4 800B2AA4 30690100 */ andi $t1, $v1, 0x100
|
||||
/* 0B36A8 800B2AA8 11200010 */ beqz $t1, .L800B2AEC
|
||||
/* 0B36AC 800B2AAC 00603025 */ move $a2, $v1
|
||||
/* 0B36B0 800B2AB0 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B36B4 800B2AB4 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B36B0 800B2AB0 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B36B4 800B2AB4 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B36B8 800B2AB8 28410004 */ slti $at, $v0, 4
|
||||
/* 0B36BC 800B2ABC 1020000B */ beqz $at, .L800B2AEC
|
||||
/* 0B36C0 800B2AC0 244A0001 */ addiu $t2, $v0, 1
|
||||
/* 0B36C4 800B2AC4 3C018019 */ lui $at, %hi(D_8018EDF3) # $at, 0x8019
|
||||
/* 0B36C8 800B2AC8 A02AEDF3 */ sb $t2, %lo(D_8018EDF3)($at)
|
||||
/* 0B36C4 800B2AC4 3C018019 */ lui $at, %hi(gPlayerCount) # $at, 0x8019
|
||||
/* 0B36C8 800B2AC8 A02AEDF3 */ sb $t2, %lo(gPlayerCount)($at)
|
||||
/* 0B36CC 800B2ACC 0C02D12B */ jal func_800B44AC
|
||||
/* 0B36D0 800B2AD0 AFA3001C */ sw $v1, 0x1c($sp)
|
||||
/* 0B36D4 800B2AD4 3C044900 */ lui $a0, (0x49008000 >> 16) # lui $a0, 0x4900
|
||||
@@ -81,24 +81,24 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B36E4 800B2AE4 2508EDED */ addiu $t0, %lo(gMainMenuSelectionDepth) # addiu $t0, $t0, -0x1213
|
||||
/* 0B36E8 800B2AE8 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
.L800B2AEC:
|
||||
/* 0B36EC 800B2AEC 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B36EC 800B2AEC 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B36F0 800B2AF0 30CB0200 */ andi $t3, $a2, 0x200
|
||||
/* 0B36F4 800B2AF4 11600010 */ beqz $t3, .L800B2B38
|
||||
/* 0B36F8 800B2AF8 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B36F8 800B2AF8 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B36FC 800B2AFC 28410002 */ slti $at, $v0, 2
|
||||
/* 0B3700 800B2B00 1420000D */ bnez $at, .L800B2B38
|
||||
/* 0B3704 800B2B04 244CFFFF */ addiu $t4, $v0, -1
|
||||
/* 0B3708 800B2B08 3C018019 */ lui $at, %hi(D_8018EDF3) # $at, 0x8019
|
||||
/* 0B370C 800B2B0C A02CEDF3 */ sb $t4, %lo(D_8018EDF3)($at)
|
||||
/* 0B3708 800B2B08 3C018019 */ lui $at, %hi(gPlayerCount) # $at, 0x8019
|
||||
/* 0B370C 800B2B0C A02CEDF3 */ sb $t4, %lo(gPlayerCount)($at)
|
||||
/* 0B3710 800B2B10 0C02D12B */ jal func_800B44AC
|
||||
/* 0B3714 800B2B14 AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 0B3718 800B2B18 3C044900 */ lui $a0, (0x49008000 >> 16) # lui $a0, 0x4900
|
||||
/* 0B371C 800B2B1C 0C032384 */ jal play_sound2
|
||||
/* 0B3720 800B2B20 34848000 */ ori $a0, (0x49008000 & 0xFFFF) # ori $a0, $a0, 0x8000
|
||||
/* 0B3724 800B2B24 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3724 800B2B24 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3728 800B2B28 3C088019 */ lui $t0, %hi(gMainMenuSelectionDepth) # $t0, 0x8019
|
||||
/* 0B372C 800B2B2C 2508EDED */ addiu $t0, %lo(gMainMenuSelectionDepth) # addiu $t0, $t0, -0x1213
|
||||
/* 0B3730 800B2B30 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3730 800B2B30 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3734 800B2B34 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
.L800B2B38:
|
||||
/* 0B3738 800B2B38 3C04800E */ lui $a0, %hi(gPlayerCountSelection1) # $a0, 0x800e
|
||||
@@ -142,8 +142,8 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B37BC 800B2BBC AC27EDE0 */ sw $a3, %lo(D_8018EDE0)($at)
|
||||
/* 0B37C0 800B2BC0 0C032384 */ jal play_sound2
|
||||
/* 0B37C4 800B2BC4 34848002 */ ori $a0, (0x49008002 & 0xFFFF) # ori $a0, $a0, 0x8002
|
||||
/* 0B37C8 800B2BC8 3C0F8019 */ lui $t7, %hi(D_8018EDF3) # $t7, 0x8019
|
||||
/* 0B37CC 800B2BCC 81EFEDF3 */ lb $t7, %lo(D_8018EDF3)($t7)
|
||||
/* 0B37C8 800B2BC8 3C0F8019 */ lui $t7, %hi(gPlayerCount) # $t7, 0x8019
|
||||
/* 0B37CC 800B2BCC 81EFEDF3 */ lb $t7, %lo(gPlayerCount)($t7)
|
||||
/* 0B37D0 800B2BD0 3C18800F */ lui $t8, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B37D4 800B2BD4 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B37D8 800B2BD8 030FC021 */ addu $t8, $t8, $t7
|
||||
@@ -165,8 +165,8 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B3814 800B2C14 3C044900 */ lui $a0, (0x49008001 >> 16) # lui $a0, 0x4900
|
||||
/* 0B3818 800B2C18 0C032384 */ jal play_sound2
|
||||
/* 0B381C 800B2C1C 34848001 */ ori $a0, (0x49008001 & 0xFFFF) # ori $a0, $a0, 0x8001
|
||||
/* 0B3820 800B2C20 3C0C8019 */ lui $t4, %hi(D_8018EDF3) # $t4, 0x8019
|
||||
/* 0B3824 800B2C24 818CEDF3 */ lb $t4, %lo(D_8018EDF3)($t4)
|
||||
/* 0B3820 800B2C20 3C0C8019 */ lui $t4, %hi(gPlayerCount) # $t4, 0x8019
|
||||
/* 0B3824 800B2C24 818CEDF3 */ lb $t4, %lo(gPlayerCount)($t4)
|
||||
/* 0B3828 800B2C28 3C0F800F */ lui $t7, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B382C 800B2C2C 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3830 800B2C30 01EC7821 */ addu $t7, $t7, $t4
|
||||
@@ -187,8 +187,8 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B3868 800B2C68 3C044900 */ lui $a0, (0x49009010 >> 16) # lui $a0, 0x4900
|
||||
/* 0B386C 800B2C6C 0C032384 */ jal play_sound2
|
||||
/* 0B3870 800B2C70 34849010 */ ori $a0, (0x49009010 & 0xFFFF) # ori $a0, $a0, 0x9010
|
||||
/* 0B3874 800B2C74 3C098019 */ lui $t1, %hi(D_8018EDF3) # $t1, 0x8019
|
||||
/* 0B3878 800B2C78 8129EDF3 */ lb $t1, %lo(D_8018EDF3)($t1)
|
||||
/* 0B3874 800B2C74 3C098019 */ lui $t1, %hi(gPlayerCount) # $t1, 0x8019
|
||||
/* 0B3878 800B2C78 8129EDF3 */ lb $t1, %lo(gPlayerCount)($t1)
|
||||
/* 0B387C 800B2C7C 3C0B800F */ lui $t3, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3880 800B2C80 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3884 800B2C84 01695821 */ addu $t3, $t3, $t1
|
||||
@@ -210,8 +210,8 @@ glabel L800B2AA4 # case 3
|
||||
/* 0B38C0 800B2CC0 3C044900 */ lui $a0, (0x49009011 >> 16) # lui $a0, 0x4900
|
||||
/* 0B38C4 800B2CC4 0C032384 */ jal play_sound2
|
||||
/* 0B38C8 800B2CC8 34849011 */ ori $a0, (0x49009011 & 0xFFFF) # ori $a0, $a0, 0x9011
|
||||
/* 0B38CC 800B2CCC 3C0E8019 */ lui $t6, %hi(D_8018EDF3) # $t6, 0x8019
|
||||
/* 0B38D0 800B2CD0 81CEEDF3 */ lb $t6, %lo(D_8018EDF3)($t6)
|
||||
/* 0B38CC 800B2CCC 3C0E8019 */ lui $t6, %hi(gPlayerCount) # $t6, 0x8019
|
||||
/* 0B38D0 800B2CD0 81CEEDF3 */ lb $t6, %lo(gPlayerCount)($t6)
|
||||
/* 0B38D4 800B2CD4 3C09800F */ lui $t1, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B38D8 800B2CD8 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B38DC 800B2CDC 012E4821 */ addu $t1, $t1, $t6
|
||||
@@ -240,8 +240,8 @@ glabel L800B2D30 # case 4
|
||||
/* 0B3930 800B2D30 306E0400 */ andi $t6, $v1, 0x400
|
||||
/* 0B3934 800B2D34 11C00017 */ beqz $t6, .L800B2D94
|
||||
/* 0B3938 800B2D38 00603025 */ move $a2, $v1
|
||||
/* 0B393C 800B2D3C 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3940 800B2D40 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B393C 800B2D3C 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3940 800B2D40 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3944 800B2D44 3C09800F */ lui $t1, %hi(D_800E86AC) # $t1, 0x800f
|
||||
/* 0B3948 800B2D48 252986AC */ addiu $t1, %lo(D_800E86AC) # addiu $t1, $t1, -0x7954
|
||||
/* 0B394C 800B2D4C 3C19800F */ lui $t9, %hi((D_800F2B58 + 7)) # 0x800f
|
||||
@@ -266,8 +266,8 @@ glabel L800B2D30 # case 4
|
||||
/* 0B3994 800B2D94 30CA0800 */ andi $t2, $a2, 0x800
|
||||
.L800B2D98:
|
||||
/* 0B3998 800B2D98 11400011 */ beqz $t2, .L800B2DE0
|
||||
/* 0B399C 800B2D9C 3C0F8019 */ lui $t7, %hi(D_8018EDF3) # $t7, 0x8019
|
||||
/* 0B39A0 800B2DA0 81EFEDF3 */ lb $t7, %lo(D_8018EDF3)($t7)
|
||||
/* 0B399C 800B2D9C 3C0F8019 */ lui $t7, %hi(gPlayerCount) # $t7, 0x8019
|
||||
/* 0B39A0 800B2DA0 81EFEDF3 */ lb $t7, %lo(gPlayerCount)($t7)
|
||||
/* 0B39A4 800B2DA4 3C0C800F */ lui $t4, %hi(D_800E86AC) # $t4, 0x800f
|
||||
/* 0B39A8 800B2DA8 258C86AC */ addiu $t4, %lo(D_800E86AC) # addiu $t4, $t4, -0x7954
|
||||
/* 0B39AC 800B2DAC 01EC1821 */ addu $v1, $t7, $t4
|
||||
@@ -286,15 +286,15 @@ glabel L800B2D30 # case 4
|
||||
.L800B2DE0:
|
||||
/* 0B39E0 800B2DE0 30D84000 */ andi $t8, $a2, 0x4000
|
||||
/* 0B39E4 800B2DE4 13000015 */ beqz $t8, .L800B2E3C
|
||||
/* 0B39E8 800B2DE8 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B39E8 800B2DE8 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B39EC 800B2DEC 24040003 */ li $a0, 3
|
||||
/* 0B39F0 800B2DF0 0C02D12B */ jal func_800B44AC
|
||||
/* 0B39F4 800B2DF4 A1040000 */ sb $a0, ($t0)
|
||||
/* 0B39F8 800B2DF8 3C044900 */ lui $a0, (0x49008002 >> 16) # lui $a0, 0x4900
|
||||
/* 0B39FC 800B2DFC 0C032384 */ jal play_sound2
|
||||
/* 0B3A00 800B2E00 34848002 */ ori $a0, (0x49008002 & 0xFFFF) # ori $a0, $a0, 0x8002
|
||||
/* 0B3A04 800B2E04 3C0E8019 */ lui $t6, %hi(D_8018EDF3) # $t6, 0x8019
|
||||
/* 0B3A08 800B2E08 81CEEDF3 */ lb $t6, %lo(D_8018EDF3)($t6)
|
||||
/* 0B3A04 800B2E04 3C0E8019 */ lui $t6, %hi(gPlayerCount) # $t6, 0x8019
|
||||
/* 0B3A08 800B2E08 81CEEDF3 */ lb $t6, %lo(gPlayerCount)($t6)
|
||||
/* 0B3A0C 800B2E0C 3C19800F */ lui $t9, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3A10 800B2E10 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3A14 800B2E14 032EC821 */ addu $t9, $t9, $t6
|
||||
@@ -308,7 +308,7 @@ glabel L800B2D30 # case 4
|
||||
/* 0B3A34 800B2E34 100001A6 */ b .L800B34D0
|
||||
/* 0B3A38 800B2E38 8C632B70 */ lw $v1, %lo(gGameModeFromNumPlayersAndRowSelection)($v1) # 0x2b70($v1)
|
||||
.L800B2E3C:
|
||||
/* 0B3A3C 800B2E3C 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3A3C 800B2E3C 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3A40 800B2E40 3C04800F */ lui $a0, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3A44 800B2E44 30CF8000 */ andi $t7, $a2, 0x8000
|
||||
/* 0B3A48 800B2E48 00822021 */ addu $a0, $a0, $v0
|
||||
@@ -365,8 +365,8 @@ glabel L800B2D30 # case 4
|
||||
.L800B2F04:
|
||||
/* 0B3B04 800B2F04 0C02D12B */ jal func_800B44AC
|
||||
/* 0B3B08 800B2F08 00000000 */ nop
|
||||
/* 0B3B0C 800B2F0C 3C0F8019 */ lui $t7, %hi(D_8018EDF3) # $t7, 0x8019
|
||||
/* 0B3B10 800B2F10 81EFEDF3 */ lb $t7, %lo(D_8018EDF3)($t7)
|
||||
/* 0B3B0C 800B2F0C 3C0F8019 */ lui $t7, %hi(gPlayerCount) # $t7, 0x8019
|
||||
/* 0B3B10 800B2F10 81EFEDF3 */ lb $t7, %lo(gPlayerCount)($t7)
|
||||
/* 0B3B14 800B2F14 3C0D800F */ lui $t5, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3B18 800B2F18 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3B1C 800B2F1C 01AF6821 */ addu $t5, $t5, $t7
|
||||
@@ -397,7 +397,7 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3B78 800B2F78 3C0A8019 */ lui $t2, %hi(gMenuTimingCounter) # $t2, 0x8019
|
||||
/* 0B3B7C 800B2F7C 8D4AEE00 */ lw $t2, %lo(gMenuTimingCounter)($t2)
|
||||
/* 0B3B80 800B2F80 3C018019 */ lui $at, %hi(gMenuTimingCounter) # $at, 0x8019
|
||||
/* 0B3B84 800B2F84 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3B84 800B2F84 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3B88 800B2F88 254F0001 */ addiu $t7, $t2, 1
|
||||
/* 0B3B8C 800B2F8C AC2FEE00 */ sw $t7, %lo(gMenuTimingCounter)($at)
|
||||
/* 0B3B90 800B2F90 24010064 */ li $at, 100
|
||||
@@ -408,7 +408,7 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3BA4 800B2FA4 15A00016 */ bnez $t5, .L800B3000
|
||||
/* 0B3BA8 800B2FA8 00000000 */ nop
|
||||
.L800B2FAC:
|
||||
/* 0B3BAC 800B2FAC 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3BAC 800B2FAC 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3BB0 800B2FB0 3C18800F */ lui $t8, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3BB4 800B2FB4 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3BB8 800B2FB8 0302C021 */ addu $t8, $t8, $v0
|
||||
@@ -431,8 +431,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3BF8 800B2FF8 AFA6001C */ sw $a2, 0x1c($sp)
|
||||
/* 0B3BFC 800B2FFC 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
.L800B3000:
|
||||
/* 0B3C00 800B3000 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3C04 800B3004 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3C00 800B3000 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3C04 800B3004 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3C08 800B3008 3C0B800F */ lui $t3, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3C0C 800B300C 3C0F800F */ lui $t7, %hi(D_800E86B0) # $t7, 0x800f
|
||||
/* 0B3C10 800B3010 01625821 */ addu $t3, $t3, $v0
|
||||
@@ -469,8 +469,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3C88 800B3088 8FA50028 */ lw $a1, 0x28($sp)
|
||||
/* 0B3C8C 800B308C 10400011 */ beqz $v0, .L800B30D4
|
||||
/* 0B3C90 800B3090 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
/* 0B3C94 800B3094 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3C98 800B3098 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3C94 800B3094 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3C98 800B3098 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3C9C 800B309C 3C04800F */ lui $a0, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3CA0 800B30A0 3C09800F */ lui $t1, %hi((D_800F2B60 + 0xD)) # 0x800f
|
||||
/* 0B3CA4 800B30A4 00822021 */ addu $a0, $a0, $v0
|
||||
@@ -486,8 +486,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3CCC 800B30CC 10000010 */ b .L800B3110
|
||||
/* 0B3CD0 800B30D0 24030001 */ li $v1, 1
|
||||
.L800B30D4:
|
||||
/* 0B3CD4 800B30D4 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3CD8 800B30D8 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3CD4 800B30D4 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3CD8 800B30D8 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3CDC 800B30DC 3C04800F */ lui $a0, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3CE0 800B30E0 3C0F800F */ lui $t7, %hi((D_800F2B60 + 1)) # 0x800f
|
||||
/* 0B3CE4 800B30E4 00822021 */ addu $a0, $a0, $v0
|
||||
@@ -519,8 +519,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3D48 800B3148 34848000 */ ori $a0, (0x49008000 & 0xFFFF) # ori $a0, $a0, 0x8000
|
||||
/* 0B3D4C 800B314C 8FA6001C */ lw $a2, 0x1c($sp)
|
||||
.L800B3150:
|
||||
/* 0B3D50 800B3150 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3D54 800B3154 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3D50 800B3150 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3D54 800B3154 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3D58 800B3158 3C04800F */ lui $a0, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3D5C 800B315C 3C05800F */ lui $a1, %hi((D_800E86B0 - 3)) # 0x800f
|
||||
/* 0B3D60 800B3160 00822021 */ addu $a0, $a0, $v0
|
||||
@@ -540,8 +540,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3D98 800B3198 3C044900 */ lui $a0, (0x49008002 >> 16) # lui $a0, 0x4900
|
||||
/* 0B3D9C 800B319C 0C032384 */ jal play_sound2
|
||||
/* 0B3DA0 800B31A0 34848002 */ ori $a0, (0x49008002 & 0xFFFF) # ori $a0, $a0, 0x8002
|
||||
/* 0B3DA4 800B31A4 3C0D8019 */ lui $t5, %hi(D_8018EDF3) # $t5, 0x8019
|
||||
/* 0B3DA8 800B31A8 81ADEDF3 */ lb $t5, %lo(D_8018EDF3)($t5)
|
||||
/* 0B3DA4 800B31A4 3C0D8019 */ lui $t5, %hi(gPlayerCount) # $t5, 0x8019
|
||||
/* 0B3DA8 800B31A8 81ADEDF3 */ lb $t5, %lo(gPlayerCount)($t5)
|
||||
/* 0B3DAC 800B31AC 3C0C800F */ lui $t4, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3DB0 800B31B0 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3DB4 800B31B4 018D6021 */ addu $t4, $t4, $t5
|
||||
@@ -560,8 +560,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3DE4 800B31E4 0002C880 */ sll $t9, $v0, 2
|
||||
/* 0B3DE8 800B31E8 0C02D12B */ jal func_800B44AC
|
||||
/* 0B3DEC 800B31EC AFA50028 */ sw $a1, 0x28($sp)
|
||||
/* 0B3DF0 800B31F0 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3DF4 800B31F4 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3DF0 800B31F0 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3DF4 800B31F4 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3DF8 800B31F8 24070001 */ li $a3, 1
|
||||
/* 0B3DFC 800B31FC 8FA50028 */ lw $a1, 0x28($sp)
|
||||
/* 0B3E00 800B3200 14E2000E */ bne $a3, $v0, .L800B323C
|
||||
@@ -590,8 +590,8 @@ glabel L800B2F70 # case 5, 8
|
||||
/* 0B3E54 800B3254 3C018019 */ lui $at, %hi(gMenuTimingCounter) # $at, 0x8019
|
||||
/* 0B3E58 800B3258 AC20EE00 */ sw $zero, %lo(gMenuTimingCounter)($at)
|
||||
.L800B325C:
|
||||
/* 0B3E5C 800B325C 3C0F8019 */ lui $t7, %hi(D_8018EDF3) # $t7, 0x8019
|
||||
/* 0B3E60 800B3260 81EFEDF3 */ lb $t7, %lo(D_8018EDF3)($t7)
|
||||
/* 0B3E5C 800B325C 3C0F8019 */ lui $t7, %hi(gPlayerCount) # $t7, 0x8019
|
||||
/* 0B3E60 800B3260 81EFEDF3 */ lb $t7, %lo(gPlayerCount)($t7)
|
||||
/* 0B3E64 800B3264 3C0C800F */ lui $t4, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3E68 800B3268 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3E6C 800B326C 018F6021 */ addu $t4, $t4, $t7
|
||||
@@ -641,8 +641,8 @@ glabel L800B32B4 # case 6, 7
|
||||
.L800B330C:
|
||||
/* 0B3F0C 800B330C 11A00032 */ beqz $t5, .L800B33D8
|
||||
/* 0B3F10 800B3310 30D98000 */ andi $t9, $a2, 0x8000
|
||||
/* 0B3F14 800B3314 3C028019 */ lui $v0, %hi(D_8018EDF3) # $v0, 0x8019
|
||||
/* 0B3F18 800B3318 8042EDF3 */ lb $v0, %lo(D_8018EDF3)($v0)
|
||||
/* 0B3F14 800B3314 3C028019 */ lui $v0, %hi(gPlayerCount) # $v0, 0x8019
|
||||
/* 0B3F18 800B3318 8042EDF3 */ lb $v0, %lo(gPlayerCount)($v0)
|
||||
/* 0B3F1C 800B331C 3C0E800F */ lui $t6, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3F20 800B3320 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3F24 800B3324 01C27021 */ addu $t6, $t6, $v0
|
||||
@@ -677,8 +677,8 @@ glabel L800B32B4 # case 6, 7
|
||||
/* 0B3F8C 800B338C 3C044900 */ lui $a0, (0x49008002 >> 16) # lui $a0, 0x4900
|
||||
/* 0B3F90 800B3390 0C032384 */ jal play_sound2
|
||||
/* 0B3F94 800B3394 34848002 */ ori $a0, (0x49008002 & 0xFFFF) # ori $a0, $a0, 0x8002
|
||||
/* 0B3F98 800B3398 3C0F8019 */ lui $t7, %hi(D_8018EDF3) # $t7, 0x8019
|
||||
/* 0B3F9C 800B339C 81EFEDF3 */ lb $t7, %lo(D_8018EDF3)($t7)
|
||||
/* 0B3F98 800B3398 3C0F8019 */ lui $t7, %hi(gPlayerCount) # $t7, 0x8019
|
||||
/* 0B3F9C 800B339C 81EFEDF3 */ lb $t7, %lo(gPlayerCount)($t7)
|
||||
/* 0B3FA0 800B33A0 3C0D800F */ lui $t5, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B3FA4 800B33A4 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B3FA8 800B33A8 01AF6821 */ addu $t5, $t5, $t7
|
||||
@@ -695,7 +695,7 @@ glabel L800B32B4 # case 6, 7
|
||||
/* 0B3FD4 800B33D4 8C632B70 */ lw $v1, %lo(gGameModeFromNumPlayersAndRowSelection)($v1) # 0x2b70($v1)
|
||||
.L800B33D8:
|
||||
/* 0B3FD8 800B33D8 13200016 */ beqz $t9, .L800B3434
|
||||
/* 0B3FDC 800B33DC 3C0C8019 */ lui $t4, %hi(D_8018EDF3) # $t4, 0x8019
|
||||
/* 0B3FDC 800B33DC 3C0C8019 */ lui $t4, %hi(gPlayerCount) # $t4, 0x8019
|
||||
/* 0B3FE0 800B33E0 0C027870 */ jal func_8009E1C0
|
||||
/* 0B3FE4 800B33E4 00000000 */ nop
|
||||
/* 0B3FE8 800B33E8 3C044900 */ lui $a0, (0x49008016 >> 16) # lui $a0, 0x4900
|
||||
@@ -703,8 +703,8 @@ glabel L800B32B4 # case 6, 7
|
||||
/* 0B3FF0 800B33F0 34848016 */ ori $a0, (0x49008016 & 0xFFFF) # ori $a0, $a0, 0x8016
|
||||
/* 0B3FF4 800B33F4 0C02CA32 */ jal func_800B28C8
|
||||
/* 0B3FF8 800B33F8 00000000 */ nop
|
||||
/* 0B3FFC 800B33FC 3C098019 */ lui $t1, %hi(D_8018EDF3) # $t1, 0x8019
|
||||
/* 0B4000 800B3400 8129EDF3 */ lb $t1, %lo(D_8018EDF3)($t1)
|
||||
/* 0B3FFC 800B33FC 3C098019 */ lui $t1, %hi(gPlayerCount) # $t1, 0x8019
|
||||
/* 0B4000 800B3400 8129EDF3 */ lb $t1, %lo(gPlayerCount)($t1)
|
||||
/* 0B4004 800B3404 3C0A800F */ lui $t2, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B4008 800B3408 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B400C 800B340C 01495021 */ addu $t2, $t2, $t1
|
||||
@@ -718,7 +718,7 @@ glabel L800B32B4 # case 6, 7
|
||||
/* 0B402C 800B342C 10000028 */ b .L800B34D0
|
||||
/* 0B4030 800B3430 8C632B70 */ lw $v1, %lo(gGameModeFromNumPlayersAndRowSelection)($v1) # 0x2b70($v1)
|
||||
.L800B3434:
|
||||
/* 0B4034 800B3434 818CEDF3 */ lb $t4, %lo(D_8018EDF3)($t4)
|
||||
/* 0B4034 800B3434 818CEDF3 */ lb $t4, %lo(gPlayerCount)($t4)
|
||||
/* 0B4038 800B3438 3C18800F */ lui $t8, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B403C 800B343C 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B4040 800B3440 030CC021 */ addu $t8, $t8, $t4
|
||||
@@ -732,8 +732,8 @@ glabel L800B32B4 # case 6, 7
|
||||
/* 0B4060 800B3460 1000001B */ b .L800B34D0
|
||||
/* 0B4064 800B3464 8C632B70 */ lw $v1, %lo(gGameModeFromNumPlayersAndRowSelection)($v1) # 0x2b70($v1)
|
||||
glabel L800B3468 # case 1, 2
|
||||
/* 0B4068 800B3468 3C0A8019 */ lui $t2, %hi(D_8018EDF3) # $t2, 0x8019
|
||||
/* 0B406C 800B346C 814AEDF3 */ lb $t2, %lo(D_8018EDF3)($t2)
|
||||
/* 0B4068 800B3468 3C0A8019 */ lui $t2, %hi(gPlayerCount) # $t2, 0x8019
|
||||
/* 0B406C 800B346C 814AEDF3 */ lb $t2, %lo(gPlayerCount)($t2)
|
||||
/* 0B4070 800B3470 3C0F800F */ lui $t7, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B4074 800B3474 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B4078 800B3478 01EA7821 */ addu $t7, $t7, $t2
|
||||
@@ -747,7 +747,7 @@ glabel L800B3468 # case 1, 2
|
||||
/* 0B4098 800B3498 1000000D */ b .L800B34D0
|
||||
/* 0B409C 800B349C 8C632B70 */ lw $v1, %lo(gGameModeFromNumPlayersAndRowSelection)($v1) # 0x2b70($v1)
|
||||
.L800B34A0: # default
|
||||
/* 0B40A0 800B34A0 8318EDF3 */ lb $t8, %lo(D_8018EDF3)($t8) # -0x120d($t8)
|
||||
/* 0B40A0 800B34A0 8318EDF3 */ lb $t8, %lo(gPlayerCount)($t8) # -0x120d($t8)
|
||||
/* 0B40A4 800B34A4 3C19800F */ lui $t9, %hi((D_800E86AC - 1)) # 0x800f
|
||||
/* 0B40A8 800B34A8 3C03800F */ lui $v1, %hi(gGameModeFromNumPlayersAndRowSelection) # 0x800f
|
||||
/* 0B40AC 800B34AC 0338C821 */ addu $t9, $t9, $t8
|
||||
|
||||
@@ -159,13 +159,13 @@ vertex 9, 0, -9, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex -9, 0, -9, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex -9, 0, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
|
||||
glabel D_800E5250 # compiler gen
|
||||
glabel gBalloonVertexPlane1 # compiler gen
|
||||
vertex 9, 18, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex 9, 9, -6, 4032, 1984, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex -9, 9, -6, 0, 1984, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex -9, 18, -6, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
|
||||
glabel D_800E5290 # compiler gen
|
||||
glabel gBalloonVertexPlane2 # compiler gen
|
||||
vertex 9, 9, -6, 4032, 0, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex 9, 0, -6, 4032, 1792, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
vertex -9, 0, -6, 0, 1792, 0xFF, 0xFF, 0xFF, 0xFF
|
||||
|
||||
@@ -17,6 +17,9 @@ typedef unsigned int u32;
|
||||
typedef signed long long int s64;
|
||||
typedef unsigned long long int u64;
|
||||
|
||||
typedef signed int bool;
|
||||
typedef signed char bool8;
|
||||
|
||||
typedef volatile u8 vu8;
|
||||
typedef volatile u16 vu16;
|
||||
typedef volatile u32 vu32;
|
||||
|
||||
+11
-11
@@ -245,14 +245,14 @@ struct UnkPlayerInner {
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ u16 unk_000; // playerType?
|
||||
/* 0x0000 */ u16 type; // playerType?
|
||||
/* 0x0002 */ u16 unk_002;
|
||||
/* 0x0004 */ s16 currentRank;
|
||||
/* 0x0006 */ u16 unk_006;
|
||||
/* 0x0008 */ s16 lapCount;
|
||||
/* 0x000A */ char unk_00A[0x2];
|
||||
/* 0x000C */ s32 statusEffects; // Bitflag.
|
||||
/* 0x0010 */ s16 unk_010;
|
||||
/* 0x0010 */ s16 currentItemCopy; // Has no effect on what item the players has, It is just a synced copy
|
||||
/* 0x0012 */ s16 unk_012;
|
||||
/* 0x0014 */ Vec3f pos;
|
||||
/* 0x0020 */ f32 rotX;
|
||||
@@ -260,7 +260,7 @@ typedef struct {
|
||||
/* 0x0028 */ f32 rotZ;
|
||||
/* 0x002C */ Vec3s unk_02C;
|
||||
/* 0x0032 */ char unk_032[0x2];
|
||||
/* 0x0034 */ Vec3f unk_034;
|
||||
/* 0x0034 */ Vec3f velocity;
|
||||
/* 0x0040 */ s16 unk_040;
|
||||
/* 0x0042 */ s16 unk_042;
|
||||
/* 0x0044 */ s16 unk_044;
|
||||
@@ -283,7 +283,7 @@ typedef struct {
|
||||
/* 0x0090 */ f32 unk_090;
|
||||
/* 0x0094 */ f32 unk_094;
|
||||
/* 0x0098 */ f32 unk_098;
|
||||
/* 0x009C */ f32 unk_09C;
|
||||
/* 0x009C */ f32 currentSpeed;
|
||||
/* 0x00A0 */ f32 unk_0A0;
|
||||
/* 0x00A4 */ f32 unk_0A4;
|
||||
/* 0x00A8 */ s16 unk_0A8;
|
||||
@@ -295,10 +295,10 @@ typedef struct {
|
||||
/* 0x00B4 */ u16 unk_0B4;
|
||||
/* 0x00B6 */ u16 unk_0B6;
|
||||
/* 0x00B8 */ f32 unk_0B8;
|
||||
/* 0x00BC */ u32 unk_0BC;
|
||||
/* 0x00BC */ u32 effects;
|
||||
/* 0x00C0 */ s16 unk_0C0;
|
||||
/* 0x00C2 */ s16 unk_0C2;
|
||||
/* 0x00C4 */ s16 unk_0C4;
|
||||
/* 0x00C4 */ s16 slopeAccel;
|
||||
/* 0x00C6 */ s16 unk_0C6;
|
||||
/* 0x00C8 */ s16 unk_0C8;
|
||||
/* 0x00CA */ s16 unk_0CA;
|
||||
@@ -323,7 +323,7 @@ typedef struct {
|
||||
/* 0x010E */ char unk_10E[0x2];
|
||||
/* 0x0110 */ Collision unk_110;
|
||||
/* 0x0150 */ Mat3 unk_150;
|
||||
/* 0x0174 */ Mat3 unk_174;
|
||||
/* 0x0174 */ Mat3 orientationMatrix;
|
||||
/* 0x0198 */ KartBoundingBoxCorner boundingBoxCorners[4];
|
||||
/* 0x01F8 */ f32 unk_1F8;
|
||||
/* 0x01FC */ f32 unk_1FC;
|
||||
@@ -333,12 +333,12 @@ typedef struct {
|
||||
/* 0x0208 */ f32 unk_208;
|
||||
/* 0x020C */ f32 unk_20C;
|
||||
/* 0x0210 */ f32 unk_210;
|
||||
/* 0x0214 */ f32 unk_214;
|
||||
/* 0x0214 */ f32 topSpeed;
|
||||
/* 0x0218 */ f32 unk_218;
|
||||
/* 0x021C */ f32 unk_21C;
|
||||
/* 0x0220 */ s16 nearestWaypointId; // ??
|
||||
/* 0x0222 */ s16 unk_222;
|
||||
/* 0x0224 */ f32 unk_224;
|
||||
/* 0x0224 */ f32 size;
|
||||
/* 0x0228 */ s16 unk_228;
|
||||
/* 0x022A */ s16 unk_22A;
|
||||
/* 0x022C */ f32 unk_22C;
|
||||
@@ -349,8 +349,8 @@ typedef struct {
|
||||
/* 0x023A */ s16 unk_23A;
|
||||
/* 0x023C */ f32 unk_23C;
|
||||
/* 0x0240 */ s32 unk_240;
|
||||
/* 0x0244 */ u16 unk_244[4]; // [0] Active texture group
|
||||
/* 0x024C */ u16 unk_24C[4];
|
||||
/* 0x0244 */ u16 animFrameSelector[4]; // [0] Active texture group
|
||||
/* 0x024C */ u16 animGroupSelector[4];
|
||||
/* 0x0254 */ u16 characterId;
|
||||
/* 0x0256 */ u16 unk_256;
|
||||
/* 0x0258 */ UnkPlayerStruct258 unk_258[40];
|
||||
|
||||
@@ -73,6 +73,7 @@
|
||||
* Racing terms:
|
||||
* Staging means aligning a racecar to the starting line.
|
||||
* Start sequence means waiting for the light to turn green.
|
||||
* Used in the Player struct's 'type' member: player->type
|
||||
*/
|
||||
|
||||
#define PLAYER_INACTIVE 0 // 0x0000
|
||||
@@ -302,4 +303,28 @@
|
||||
*/
|
||||
#define MAX_TIME 0x927C0
|
||||
|
||||
/**
|
||||
* @brief effect of player's
|
||||
* for statusEffect
|
||||
*/
|
||||
#define BOOST_EFFECT 0x200 // being boosted by trigger a mushroom or star
|
||||
#define BOO_EFFECT 0x800 // being a boo
|
||||
#define STAR_EFFECT 0x2000 // being a star
|
||||
#define HOLD_BANANA_EFFECT 0x40000 // holding a banana
|
||||
#define HIT_ROTATING_EFFECT 0x4000 // hitting a rotating object
|
||||
#define HIT_BY_ITEM_EFFECT 0x1000000 // being hit by an item
|
||||
#define REVERSE_EFFECT 0x400000 // being in the wrong direction
|
||||
#define LIGHTNING_EFFECT 0x40000000 // being hit by lightning
|
||||
|
||||
|
||||
/**
|
||||
* @brief shell state
|
||||
*
|
||||
*/
|
||||
#define SPAWN_FIRST_SHELL 0
|
||||
#define SPAWN_SECOND_SHELL 1
|
||||
#define SPAWN_THIRD_SHELL 2
|
||||
|
||||
#define GPACK_RGB888(r, g, b) (((r) << 16) | ((g) << 8) | (b))
|
||||
|
||||
#endif // DEFINES_H
|
||||
|
||||
@@ -24,12 +24,12 @@ extern f32 D_800E2528[8];
|
||||
extern f32 D_800E2548[8];
|
||||
extern f32 *D_800E2568[5];
|
||||
|
||||
extern f32 D_800E257C[8];
|
||||
extern f32 D_800E259C[8];
|
||||
extern f32 D_800E25BC[8];
|
||||
extern f32 D_800E25DC[8];
|
||||
extern f32 D_800E25FC[8];
|
||||
extern f32 *D_800E261C[5];
|
||||
extern f32 gTopSpeed50cc[8];
|
||||
extern f32 gTopSpeed100cc[8];
|
||||
extern f32 gTopSpeed150cc[8];
|
||||
extern f32 gTopSpeedExtra[8];
|
||||
extern f32 gTopSpeedBattle[8];
|
||||
extern f32 *gTopSpeedTable[5];
|
||||
|
||||
extern f32 gKartFrictionTable[8];
|
||||
extern f32 gKartGravityTable[8];
|
||||
@@ -119,7 +119,7 @@ extern f32 gKartHandlingTable[8];
|
||||
extern f32 gKartTable800E3650[8];
|
||||
extern f32 gKartTurnSpeedReductionTable0[8];
|
||||
extern f32 gKartTurnSpeedReductionTable1[8];
|
||||
extern f32 gKartTable800E36B0[8];
|
||||
extern f32 gKartTripleABoost[8];
|
||||
extern f32 gKartHopInitialVelocityTable[8];
|
||||
extern f32 gKartHopJerkTable[8];
|
||||
extern f32 D_800E3710[8];
|
||||
|
||||
+85
-9
@@ -32,19 +32,19 @@ typedef struct
|
||||
/* 0x68 */ u8 *tlutList; // I feel like this should actually be `u8 (*tlutList)[512]`, but that causes mismatches
|
||||
/* 0x6C */ u8 *textureList;
|
||||
/* 0x70 */ Gfx *unk_070;
|
||||
/* 0x74 */ Vtx *unk_074; // For at least 1 object type this is meant to be a Vtx*. See func_800555BC
|
||||
/* 0x74 */ Vtx *vertex;
|
||||
/* 0x78 */ s8 unk_078[0x04];
|
||||
/* 0x7C */ Vec4s *unk_07C;
|
||||
/* 0x80 */ Vec4s *unk_080; // unk_080[][4]?
|
||||
/* 0x84 */ s16 unk_084[0xA];
|
||||
/* 0x98 */ u16 unk_098;
|
||||
/* 0x98 */ u16 timer;
|
||||
/* 0x9A */ u16 unk_09A;
|
||||
/* 0x9C */ s16 unk_09C;
|
||||
/* 0x9E */ s16 unk_09E;
|
||||
/* 0xA0 */ s16 unk_0A0;
|
||||
/* 0xA2 */ s16 unk_0A2;
|
||||
/* 0xA4 */ s16 unk_0A4;
|
||||
/* 0xA6 */ s16 unk_0A6; // Usually a state tracker
|
||||
/* 0xA4 */ s16 type;
|
||||
/* 0xA6 */ s16 state;
|
||||
/* 0xA8 */ s16 unk_0A8;
|
||||
/* 0xAA */ s16 unk_0AA;
|
||||
/* 0xAC */ s16 unk_0AC;
|
||||
@@ -64,7 +64,7 @@ typedef struct
|
||||
/* 0xCF */ s8 unk_0CF;
|
||||
/* 0xD0 */ s8 unk_0D0;
|
||||
/* 0xD1 */ s8 unk_0D1;
|
||||
/* 0xD2 */ s8 unk_0D2;
|
||||
/* 0xD2 */ s8 itemDisplay;
|
||||
/* 0xD3 */ s8 unk_0D3;
|
||||
/* 0xD4 */ s8 unk_0D4;
|
||||
/* 0xD5 */ u8 unk_0D5;
|
||||
@@ -78,17 +78,93 @@ typedef struct
|
||||
/* 0xDD */ u8 unk_0DD;
|
||||
/* 0xDE */ s8 unk_0DE;
|
||||
/* 0xDF */ u8 unk_0DF;
|
||||
} struct_80165C18_entry; // size = 0xE0
|
||||
} Objects; // size = 0xE0
|
||||
|
||||
// This is the object list
|
||||
extern struct_80165C18_entry D_80165C18[];
|
||||
extern Objects gObjectList[];
|
||||
|
||||
// This are other lists of indices in D_80165C18.
|
||||
typedef struct
|
||||
{
|
||||
/* 0x00 */ f32 sizeScaling;
|
||||
/* 0x04 */ Vec3f pos;
|
||||
/* 0x10 */ Vec3f unk_010;
|
||||
/* 0x1C */ Vec3f unk_01C;
|
||||
/* 0x28 */ Vec3f unk_028;
|
||||
/* 0x34 */ f32 unk_034;
|
||||
/* 0x38 */ Vec3f unk_038;
|
||||
/* 0x44 */ f32 unk_044;
|
||||
/* 0x48 */ s32 unk_048;
|
||||
/* 0x4C */ s32 unk_04C;
|
||||
/* 0x50 */ s32 unk_050;
|
||||
/* 0x54 */ s32 unk_054;
|
||||
/* 0x58 */ s32 unk_058;
|
||||
/* 0x5C */ s32 unk_05C;
|
||||
/* 0x60 */ u8 *activeTLUT;
|
||||
/* 0x64 */ u8 *activeTexture;
|
||||
/**
|
||||
* "list" is something of a misnomer for the names here
|
||||
* they can be pointers to just 1 tlut/texture, but it is common for one or the other
|
||||
* to be a pointer to an array of tluts/textures.
|
||||
**/
|
||||
/* 0x68 */ u8 *tlutList; // I feel like this should actually be `u8 (*tlutList)[512]`, but that causes mismatches
|
||||
/* 0x6C */ u8 *textureList;
|
||||
/* 0x70 */ Gfx *unk_070;
|
||||
/* 0x74 */ Vtx *vertex;
|
||||
/* 0x78 */ s8 unk_078[0x04];
|
||||
/* 0x7C */ Vec4s *unk_07C;
|
||||
/* 0x80 */ Vec4s *unk_080; // unk_080[][4]?
|
||||
/* 0x84 */ s16 unk_084[0xA];
|
||||
/* 0x98 */ u16 goldenMushroomTimer;
|
||||
/* 0x9A */ u16 unk_09A;
|
||||
/* 0x9C */ s16 unk_09C;
|
||||
/* 0x9E */ s16 unk_09E;
|
||||
/* 0xA0 */ s16 unk_0A0;
|
||||
/* 0xA2 */ s16 unk_0A2;
|
||||
/* 0xA4 */ s16 currentItem;
|
||||
/* 0xA6 */ s16 itemDisplayState; // Usually a state tracker
|
||||
/* 0xA8 */ s16 unk_0A8;
|
||||
/* 0xAA */ s16 unk_0AA;
|
||||
/* 0xAC */ s16 unk_0AC;
|
||||
/* 0xAE */ s16 unk_0AE;
|
||||
/* 0xB0 */ s16 unk_0B0;
|
||||
/* 0xB2 */ Vec3su unk_0B2; // rotation, I think
|
||||
/* 0xB8 */ Vec3su unk_0B8;
|
||||
/* 0xBE */ Vec3su unk_0BE;
|
||||
/* 0xC4 */ u16 unk_0C4;
|
||||
/* 0xC6 */ u16 unk_0C6;
|
||||
/* 0xC8 */ u16 unk_0C8;
|
||||
/* 0xCA */ s8 unk_0CA;
|
||||
/* 0xCB */ s8 unk_0CB;
|
||||
/* 0xCC */ s8 unk_0CC;
|
||||
/* 0xCD */ s8 unk_0CD;
|
||||
/* 0xCE */ s8 unk_0CE;
|
||||
/* 0xCF */ s8 unk_0CF;
|
||||
/* 0xD0 */ s8 unk_0D0;
|
||||
/* 0xD1 */ s8 unk_0D1;
|
||||
/* 0xD2 */ s8 itemDisplay;
|
||||
/* 0xD3 */ s8 unk_0D3;
|
||||
/* 0xD4 */ s8 unk_0D4;
|
||||
/* 0xD5 */ u8 unk_0D5;
|
||||
/* 0xD6 */ u8 unk_0D6;
|
||||
/* 0xD7 */ u8 unk_0D7;
|
||||
/* 0xD8 */ u8 unk_0D8;
|
||||
/* 0xD9 */ u8 textureWidth;
|
||||
/* 0xDA */ u8 textureHeight;
|
||||
/* 0xDB */ u8 unk_0DB;
|
||||
/* 0xDC */ u8 unk_0DC;
|
||||
/* 0xDD */ u8 unk_0DD;
|
||||
/* 0xDE */ s8 unk_0DE;
|
||||
/* 0xDF */ u8 unk_0DF;
|
||||
} ItemWindowObjects; // size = 0xE0
|
||||
|
||||
// This are other lists of indices in gObjectList.
|
||||
/**
|
||||
* Lakitu?
|
||||
**/
|
||||
extern s32 D_80183DB8[];
|
||||
|
||||
#define DELETED_OBJECT_ID -1
|
||||
|
||||
// Appears to be a list of object list indices for the Item Window part of the HUD
|
||||
extern s32 gItemWindowObjectByPlayerId[];
|
||||
|
||||
@@ -105,7 +181,7 @@ extern s32 D_8018D3C0;
|
||||
extern Collision D_8018C0B0[];
|
||||
|
||||
/**
|
||||
* D_80183EA0, D_80183F28, D_8018BFA8, and D_8018C030 are all lists of indices in D_80165C18.
|
||||
* D_80183EA0, D_80183F28, D_8018BFA8, and D_8018C030 are all lists of indices in gObjectList.
|
||||
* func_80070190 initializes them in such a way that the indicies in each list are not adjacent.
|
||||
* First D_80183EA0 gets an unused index, then D_80183F28, then D_8018BFA8, then D_8018C030, and then it loops.
|
||||
*
|
||||
|
||||
+2
-1
@@ -12,7 +12,8 @@ typedef struct {
|
||||
u8 records[6][3];
|
||||
// It's unknown what these bytes are used for
|
||||
// Byte 1 might be an indicator that there is a ghost available for that course
|
||||
u8 unknownBytes[6];
|
||||
u8 unknownBytes[5];
|
||||
u8 checksum;
|
||||
} CourseTimeTrialRecords; // size = 0x18
|
||||
|
||||
typedef struct {
|
||||
|
||||
+2
-2
@@ -75,7 +75,7 @@ extern s16 D_80165300[];
|
||||
extern s32 D_80165400[];
|
||||
extern s32 D_80165420[];
|
||||
extern s32 D_80165440[];
|
||||
extern s32 D_80165460[];
|
||||
extern bool gIsPlayerTripleAButtonCombo[];
|
||||
extern s32 D_80165480[];
|
||||
extern s32 D_801654A0[];
|
||||
extern s32 D_801654C0[];
|
||||
@@ -96,7 +96,7 @@ extern s16 D_8016557E;
|
||||
extern s16 D_80165580;
|
||||
extern s16 D_80165582;
|
||||
|
||||
extern s8 D_801657E8;
|
||||
extern bool8 D_801657E8;
|
||||
|
||||
extern s8 D_801658FE;
|
||||
|
||||
|
||||
+36
-36
@@ -644,7 +644,7 @@ void func_800C2474(void) {
|
||||
temp_a2 = &gPlayers[var_v0];
|
||||
temp_a2->boundingBoxCorners[2].surfaceType = 0;
|
||||
temp_a2->boundingBoxCorners[3].surfaceType = 0;
|
||||
temp_a2->unk_0BC = 0;
|
||||
temp_a2->effects = 0;
|
||||
temp_a2->unk_20C = 0.0f;
|
||||
temp_a2->unk_0C0 = 0;
|
||||
temp_a2->unk_098 = 0.0f;
|
||||
@@ -669,7 +669,7 @@ void func_800C2474(void) {
|
||||
D_800EA06C[var_v0_2].unk0C = 0;
|
||||
temp_t7 = &gPlayers[var_v0_2];
|
||||
var_v0_2 = temp_t8;
|
||||
temp_t7->unk_0BC = 0;
|
||||
temp_t7->effects = 0;
|
||||
} while (temp_at != 0);
|
||||
var_v0_3 = 0;
|
||||
do {
|
||||
@@ -2702,7 +2702,7 @@ void func_800C6108(u8 playerId) {
|
||||
} else {
|
||||
D_800E9E54[playerId] = (f32) -temp_v1->unk_0C0;
|
||||
}
|
||||
if ((temp_v1->unk_0BC & 0x10) == 0x10) {
|
||||
if ((temp_v1->effects & 0x10) == 0x10) {
|
||||
D_800E9EB4[playerId] = D_800E9E64[playerId] + D_800E9DE4[playerId];
|
||||
} else {
|
||||
D_800E9EB4[playerId] = D_800E9E64[playerId] + D_800E9DE4[playerId] - (D_800E9E54[playerId] / 12000.0f);
|
||||
@@ -2934,7 +2934,7 @@ void func_800C683C(u8 arg0) {
|
||||
void func_800C70A8(u8 playerId) {
|
||||
if (D_800EA0EC[playerId] == 0) {
|
||||
D_800E9E74[playerId] = 0;
|
||||
if ((D_800E9E54[playerId] > 3500.0f) || ((gPlayers[playerId].unk_0BC & 0x10) == 0x10)) {
|
||||
if ((D_800E9E54[playerId] > 3500.0f) || ((gPlayers[playerId].effects & 0x10) == 0x10)) {
|
||||
D_800E9E74[playerId] = 1;
|
||||
switch (gPlayers[playerId].boundingBoxCorners[2].surfaceType) { /* switch 1 */
|
||||
case 2: /* switch 1 */
|
||||
@@ -2966,7 +2966,7 @@ void func_800C70A8(u8 playerId) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ((gPlayers[playerId].unk_0BC & 0x10) == 0x10) {
|
||||
if ((gPlayers[playerId].effects & 0x10) == 0x10) {
|
||||
D_800E9E74[playerId] = 2;
|
||||
switch (gPlayers[playerId].boundingBoxCorners[2].surfaceType) { /* switch 2 */
|
||||
case 2: /* switch 2 */
|
||||
@@ -3118,13 +3118,13 @@ void func_800C70A8(u8 playerId) {
|
||||
D_800E9E74[playerId] = 0x0000001B;
|
||||
break;
|
||||
}
|
||||
if (((gPlayers[playerId].unk_094 < 0.5f) || ((gPlayers[playerId].unk_0BC & 8) == 8)) && (D_800E9E74[playerId] != 0x0000001C)) {
|
||||
if (((gPlayers[playerId].unk_094 < 0.5f) || ((gPlayers[playerId].effects & 8) == 8)) && (D_800E9E74[playerId] != 0x0000001C)) {
|
||||
D_800E9E74[playerId] = 0;
|
||||
}
|
||||
if ((((gPlayers[playerId].unk_0BC & 0x4000) == 0x4000) && ((gPlayers[playerId].unk_000 & 0x2000) != 0x2000)) || ((gPlayers[playerId].unk_0BC & 0x800) == 0x800) || ((gPlayers[playerId].unk_0BC & 0x80) == 0x80) || ((gPlayers[playerId].unk_0BC & 0x40) == 0x40) || ((gPlayers[playerId].unk_044 & 0x4000) == 0x4000)) {
|
||||
if ((((gPlayers[playerId].effects & 0x4000) == 0x4000) && ((gPlayers[playerId].type & 0x2000) != 0x2000)) || ((gPlayers[playerId].effects & 0x800) == 0x800) || ((gPlayers[playerId].effects & 0x80) == 0x80) || ((gPlayers[playerId].effects & 0x40) == 0x40) || ((gPlayers[playerId].unk_044 & 0x4000) == 0x4000)) {
|
||||
D_800E9E74[playerId] = 0x00000012;
|
||||
}
|
||||
if ((((gPlayers[playerId].unk_0BC & 0x20) == 0x20) && ((gPlayers[playerId].unk_000 & 0x2000) != 0x2000)) || ((gPlayers[playerId].unk_0BC & 0x800) == 0x800)) {
|
||||
if ((((gPlayers[playerId].effects & 0x20) == 0x20) && ((gPlayers[playerId].type & 0x2000) != 0x2000)) || ((gPlayers[playerId].effects & 0x800) == 0x800)) {
|
||||
D_800E9E74[playerId] = 0x00000013;
|
||||
}
|
||||
if (gPlayers[playerId].unk_20C != 0.0f) {
|
||||
@@ -3498,16 +3498,16 @@ void func_800C847C(u8 playerId) {
|
||||
func_800C97C4(playerId);
|
||||
D_800E9F74[playerId] = 1;
|
||||
func_800C94A4(playerId);
|
||||
if (( (gCurrentCourseId == 1)
|
||||
|| (gCurrentCourseId == 2)
|
||||
|| (gCurrentCourseId == 3)
|
||||
|| (gCurrentCourseId == 4)
|
||||
|| (gCurrentCourseId == 5)
|
||||
|| (gCurrentCourseId == 6)
|
||||
|| (gCurrentCourseId == 7)
|
||||
|| (gCurrentCourseId == 0x000C)
|
||||
|| (gCurrentCourseId == 0x0012)
|
||||
|| (gCurrentCourseId == 0x0013)) && (D_800EA0EC[playerId] == 0)) {
|
||||
if (( (gCurrentCourseId == COURSE_CHOCO_MOUNTAIN)
|
||||
|| (gCurrentCourseId == COURSE_BOWSER_CASTLE)
|
||||
|| (gCurrentCourseId == COURSE_BANSHEE_BOARDWALK)
|
||||
|| (gCurrentCourseId == COURSE_YOSHI_VALLEY)
|
||||
|| (gCurrentCourseId == COURSE_FRAPPE_SNOWLAND)
|
||||
|| (gCurrentCourseId == COURSE_KOOPA_BEACH)
|
||||
|| (gCurrentCourseId == COURSE_ROYAL_RACEWAY)
|
||||
|| (gCurrentCourseId == COURSE_SHERBET_LAND)
|
||||
|| (gCurrentCourseId == COURSE_DK_JUNGLE)
|
||||
|| (gCurrentCourseId == COURSE_BIG_DONUT)) && (D_800EA0EC[playerId] == 0)) {
|
||||
play_sound((gPlayers[playerId].characterId * 0x10) + 0x29008005, D_800E9F7C[playerId].pos, playerId, D_800EA1D4, D_800EA1D4, (u8 *) &D_800E9F7C[playerId].unk_14);
|
||||
}
|
||||
}
|
||||
@@ -3517,7 +3517,7 @@ void func_800C847C(u8 playerId) {
|
||||
D_800E9F74[playerId] = 2;
|
||||
func_800C94A4(playerId);
|
||||
D_800E9F74[playerId] = 0;
|
||||
if ((gCurrentCourseId == 6) && (D_800EA0EC[playerId] == 0)) {
|
||||
if ((gCurrentCourseId == COURSE_KOOPA_BEACH) && (D_800EA0EC[playerId] == 0)) {
|
||||
play_sound((gPlayers[playerId].characterId * 0x10) + 0x29008008, D_800E9F7C[playerId].pos, playerId, D_800EA1D4, D_800EA1D4, (u8 *) &D_800E9F7C[playerId].unk_14);
|
||||
}
|
||||
}
|
||||
@@ -3525,13 +3525,13 @@ void func_800C847C(u8 playerId) {
|
||||
}
|
||||
|
||||
void func_800C86D8(u8 playerId) {
|
||||
if (((gPlayers[playerId].unk_0BC & 0x40000000) != 0x40000000) && (D_800E9F24[playerId] == 1)) {
|
||||
if (((gPlayers[playerId].effects & 0x40000000) != 0x40000000) && (D_800E9F24[playerId] == 1)) {
|
||||
func_800C90F4(playerId, (gPlayers[playerId].characterId * 0x10) + 0x29008008);
|
||||
}
|
||||
}
|
||||
|
||||
void func_800C8770(u8 playerId) {
|
||||
if ((gPlayers[playerId].unk_0BC & 0x40000000) == 0x40000000) {
|
||||
if ((gPlayers[playerId].effects & 0x40000000) == 0x40000000) {
|
||||
D_800E9F24[playerId] = 1;
|
||||
if (D_800E9F2C[playerId] < 0xFA) {
|
||||
D_800E9F2C[playerId]++;
|
||||
@@ -3565,14 +3565,14 @@ void func_800C8770(u8 playerId) {
|
||||
// Checks the same field for all players before doing something?
|
||||
void func_800C8920(void) {
|
||||
if (((u8) D_800EA168 != 0)
|
||||
&& ((gPlayers[0].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[1].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[2].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[3].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[4].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[5].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[6].unk_0BC & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[7].unk_0BC & 0x40000000) != 0x40000000)) {
|
||||
&& ((gPlayers[0].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[1].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[2].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[3].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[4].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[5].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[6].effects & 0x40000000) != 0x40000000)
|
||||
&& ((gPlayers[7].effects & 0x40000000) != 0x40000000)) {
|
||||
func_800CAC08();
|
||||
}
|
||||
}
|
||||
@@ -3601,7 +3601,7 @@ void func_800C89E4(void) {
|
||||
}
|
||||
|
||||
void func_800C8AE4(void) {
|
||||
if (gCurrentCourseId == 8) {
|
||||
if (gCurrentCourseId == COURSE_LUIGI_RACEWAY) {
|
||||
if (D_800EA184 != 0) {
|
||||
if ((u8) D_800EA16C == 0) {
|
||||
// Has to be this way, can't be D_800EA184++
|
||||
@@ -3679,11 +3679,11 @@ void func_800C8CCC() {
|
||||
|
||||
void play_sound2(s32 soundBits) {
|
||||
|
||||
if ((soundBits == SOUND_ACTION_REV_ENGINE) && (gCurrentCourseId == 0x12)) {
|
||||
if ((soundBits == SOUND_ACTION_REV_ENGINE) && (gCurrentCourseId == COURSE_DK_JUNGLE)) {
|
||||
soundBits = 0x49008027;
|
||||
}
|
||||
|
||||
if ((soundBits == SOUND_ACTION_REV_ENGINE_2) && (gCurrentCourseId == 0x12)) {
|
||||
if ((soundBits == SOUND_ACTION_REV_ENGINE_2) && (gCurrentCourseId == COURSE_DK_JUNGLE)) {
|
||||
soundBits = 0x49008028;
|
||||
}
|
||||
play_sound(soundBits, D_800EA1C8, 4, D_800EA1D4, D_800EA1D4, &D_800EA1DC);
|
||||
@@ -3741,7 +3741,7 @@ void func_800C90F4(u8 playerId, u32 arg1) {
|
||||
if (((arg1 & ~0xF0) == 0x29008003) || ((arg1 & ~0xF0) == 0x29008004) || ((arg1 & ~0xF0) == 0x29008005)) {
|
||||
D_800EA180 = 1;
|
||||
}
|
||||
if (((gPlayers[playerId].unk_0BC & 0x40000000) == 0x40000000) && ((s32) D_800E9F2C[playerId] >= 0x1F)) {
|
||||
if (((gPlayers[playerId].effects & 0x40000000) == 0x40000000) && ((s32) D_800E9F2C[playerId] >= 0x1F)) {
|
||||
play_sound(arg1, D_800E9F7C[playerId].pos, playerId, &D_800EA150, D_800EA1D4, (u8 *) &D_800E9F7C[playerId].unk_14);
|
||||
} else {
|
||||
play_sound(arg1, D_800E9F7C[playerId].pos, playerId, D_800EA1D4, D_800EA1D4, (u8 *) &D_800E9F7C[playerId].unk_14);
|
||||
@@ -3765,10 +3765,10 @@ void func_800C92CC(u8 playerId, u32 soundBits) {
|
||||
|
||||
if ((D_800EA108 == 0) && (D_800EA0F0 == 0) && ((s32) D_800EA1C0 < 2)) {
|
||||
for (var_s0 = 0; var_s0 < D_800EA1C0 + 1; var_s0++) {
|
||||
temp_v0 = func_800C1C88(playerId, gPlayers[playerId].pos, gPlayers[playerId].unk_034, D_800EA1C8, (u8) var_s0, soundBits);
|
||||
temp_v0 = func_800C1C88(playerId, gPlayers[playerId].pos, gPlayers[playerId].velocity, D_800EA1C8, (u8) var_s0, soundBits);
|
||||
if (temp_v0 != NULL) {
|
||||
temp_v0->unk34 = 170.0f;
|
||||
if (((gPlayers[playerId].unk_0BC & 0x40000000) == 0x40000000) && ((s32) D_800E9F2C[playerId] >= 0x1F)) {
|
||||
if (((gPlayers[playerId].effects & 0x40000000) == 0x40000000) && ((s32) D_800E9F2C[playerId] >= 0x1F)) {
|
||||
play_sound((gPlayers[playerId].characterId * 0x10) + soundBits, temp_v0->unk18, var_s0, &D_800EA150, D_800EA1D4, &D_800EA06C[playerId].unk0C);
|
||||
} else {
|
||||
play_sound((gPlayers[playerId].characterId * 0x10) + soundBits, temp_v0->unk18, var_s0, &temp_v0->unk2C, D_800EA1D4, &D_800EA06C[playerId].unk0C);
|
||||
@@ -3946,7 +3946,7 @@ void func_800C9A88(u8 playerId) {
|
||||
if (D_800EA1C0 < 2) {
|
||||
for (var_s0 = 0; var_s0 < D_800EA1C0 + 1; var_s0++) {
|
||||
soundBits = gPlayers[playerId].characterId + 0x31028000;
|
||||
temp_v0_6 = func_800C1C88(playerId, gPlayers[playerId].pos, gPlayers[playerId].unk_034, &gPlayers[playerId].unk_098, var_s0, soundBits);
|
||||
temp_v0_6 = func_800C1C88(playerId, gPlayers[playerId].pos, gPlayers[playerId].velocity, &gPlayers[playerId].unk_098, var_s0, soundBits);
|
||||
if (temp_v0_6 != NULL) {
|
||||
temp_v0_6->unk34 = 40.0f;
|
||||
play_sound(soundBits, temp_v0_6->unk18, var_s0, &temp_v0_6->unk2C, &D_800EA06C[playerId].unk00[2], &D_800EA06C[playerId].unk0C);
|
||||
|
||||
+41
-43
@@ -226,7 +226,7 @@ void func_8001CA78(UNUSED Player *player, Camera *camera, Vec3f arg2, f32 *arg3,
|
||||
arg2[0] = camera->lookAt[0];
|
||||
arg2[1] = camera->lookAt[1];
|
||||
arg2[2] = camera->lookAt[2];
|
||||
func_802B6540(sp74, 0, 1, 0, -0x00008000);
|
||||
calculate_orientation_matrix(sp74, 0, 1, 0, -0x00008000);
|
||||
mtxf_translate_vec3f_mat3(sp5C, sp74);
|
||||
if (gCurrentCourseId == COURSE_TOADS_TURNPIKE) {
|
||||
var_f14 = sp5C[0];
|
||||
@@ -330,7 +330,7 @@ void func_8001CCEC(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
move_f32_towards(&D_80164AA0[index], 10, 0.02f);
|
||||
break;
|
||||
default:
|
||||
if (gCurrentCourseId == 4) {
|
||||
if (gCurrentCourseId == COURSE_YOSHI_VALLEY) {
|
||||
move_f32_towards(&D_80164A90[index], 50, 0.04f);
|
||||
move_f32_towards(&D_80164AA0[index], 35, 0.04f);
|
||||
} else {
|
||||
@@ -352,10 +352,10 @@ void func_8001CCEC(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[0] = camera->lookAt[0];
|
||||
arg2[1] = camera->lookAt[1];
|
||||
arg2[2] = camera->lookAt[2];
|
||||
if ((player->unk_0BC & 0x01000000) == 0x01000000) {
|
||||
if ((player->effects & 0x01000000) == 0x01000000) {
|
||||
sp84[2] /= 3.0f;
|
||||
}
|
||||
func_802B6540(sp9C, 0, 1, 0, arg7);
|
||||
calculate_orientation_matrix(sp9C, 0, 1, 0, arg7);
|
||||
mtxf_translate_vec3f_mat3(sp84, sp9C);
|
||||
|
||||
x = player->pos[0] + sp84[0];
|
||||
@@ -365,7 +365,7 @@ void func_8001CCEC(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[0] += (x - camera->lookAt[0]) * D_80164A78[index];
|
||||
arg2[2] += ((z - camera->lookAt[2]) * D_80164A78[index]);
|
||||
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->unk_0BC & 2) == 2)) {
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->effects & 2) == 2)) {
|
||||
arg2[1] += ((y - camera->lookAt[1]) * 0.02);
|
||||
} else {
|
||||
arg2[1] += ((y - camera->lookAt[1]) * 0.5);
|
||||
@@ -373,7 +373,7 @@ void func_8001CCEC(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
mtxf_translate_vec3f_mat3(sp90, sp9C);
|
||||
x = player->pos[0] + sp90[0];
|
||||
z = player->pos[2] + sp90[2];
|
||||
if ((player->unk_0BC & 0x01000000) != 0x01000000) {
|
||||
if ((player->effects & 0x01000000) != 0x01000000) {
|
||||
var_f0 = player->pos[1] + sp90[1];
|
||||
// permute
|
||||
y = var_f0;
|
||||
@@ -384,7 +384,7 @@ void func_8001CCEC(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
*arg3 = camera->pos[0] + ((x - camera->pos[0]) * D_80164A78[index]);
|
||||
*arg5 = camera->pos[2] + ((z - camera->pos[2]) * D_80164A78[index]);
|
||||
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->unk_0BC & 2) == 2)) {
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->effects & 2) == 2)) {
|
||||
*arg4 = camera->pos[1] + (((y - camera->pos[1]) * 0.01));
|
||||
} else {
|
||||
*arg4 = camera->pos[1] + (((y - camera->pos[1]) * 0.15));
|
||||
@@ -423,7 +423,7 @@ void func_8001D53C(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[0] = camera->lookAt[0];
|
||||
arg2[1] = camera->lookAt[1];
|
||||
arg2[2] = camera->lookAt[2];
|
||||
func_802B6540(sp74, 0.0f, 1.0f, 0.0f, arg6);
|
||||
calculate_orientation_matrix(sp74, 0.0f, 1.0f, 0.0f, arg6);
|
||||
mtxf_translate_vec3f_mat3(sp5C, sp74);
|
||||
stackPadding0 = player->pos[0] + sp5C[0];
|
||||
stackPadding2 = player->pos[2] + sp5C[2];
|
||||
@@ -466,7 +466,7 @@ void func_8001D794(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[1] = camera->lookAt[1];
|
||||
arg2[2] = camera->lookAt[2];
|
||||
|
||||
func_802B6540(sp6C, 0, 1, 0, arg6);
|
||||
calculate_orientation_matrix(sp6C, 0, 1, 0, arg6);
|
||||
mtxf_translate_vec3f_mat3(sp54, sp6C);
|
||||
|
||||
test1 = player->pos[0] + sp54[0];
|
||||
@@ -569,10 +569,10 @@ void func_8001D944(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[0] = camera->lookAt[0];
|
||||
arg2[1] = camera->lookAt[1];
|
||||
arg2[2] = camera->lookAt[2];
|
||||
if ((player->unk_0BC & 0x01000000) == 0x01000000) {
|
||||
if ((player->effects & 0x01000000) == 0x01000000) {
|
||||
sp84[2] /= 3.0f;
|
||||
}
|
||||
func_802B6540(sp9C, 0, 1, 0, arg7);
|
||||
calculate_orientation_matrix(sp9C, 0, 1, 0, arg7);
|
||||
mtxf_translate_vec3f_mat3(sp84, sp9C);
|
||||
|
||||
x = player->pos[0] + sp84[0];
|
||||
@@ -582,7 +582,7 @@ void func_8001D944(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
arg2[0] += (x - camera->lookAt[0]) * D_80164A78[index];
|
||||
arg2[2] += ((z - camera->lookAt[2]) * D_80164A78[index]);
|
||||
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->unk_0BC & 2) == 2)) {
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->effects & 2) == 2)) {
|
||||
arg2[1] += ((y - camera->lookAt[1]) * 0.02);
|
||||
} else {
|
||||
arg2[1] += ((y - camera->lookAt[1]) * 0.5);
|
||||
@@ -590,7 +590,7 @@ void func_8001D944(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
mtxf_translate_vec3f_mat3(sp90, sp9C);
|
||||
x = player->pos[0] + sp90[0];
|
||||
z = player->pos[2] + sp90[2];
|
||||
if ((player->unk_0BC & 0x01000000) != 0x01000000) {
|
||||
if ((player->effects & 0x01000000) != 0x01000000) {
|
||||
var_f0 = player->pos[1] + sp90[1];
|
||||
// permute
|
||||
y = var_f0;
|
||||
@@ -601,7 +601,7 @@ void func_8001D944(Player *player, Camera *camera, Vec3f arg2, f32 *arg3, f32 *a
|
||||
*arg3 = camera->pos[0] + ((x - camera->pos[0]) * D_80164A78[index]);
|
||||
*arg5 = camera->pos[2] + ((z - camera->pos[2]) * D_80164A78[index]);
|
||||
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->unk_0BC & 2) == 2)) {
|
||||
if ((((player->unk_094 / 18) * 216) <= 5.0f) && ((player->effects & 2) == 2)) {
|
||||
*arg4 = camera->pos[1] + (((y - camera->pos[1]) * 0.01));
|
||||
} else {
|
||||
*arg4 = camera->pos[1] + (((y - camera->pos[1]) * 0.15));
|
||||
@@ -691,21 +691,21 @@ void func_8001E45C(Camera *camera, Player *player, s8 arg2) {
|
||||
UNUSED s16 pad6;
|
||||
s16 temp;
|
||||
|
||||
if ((player->unk_0BC & 0x10) == 0x10) {
|
||||
if ((player->effects & 0x10) == 0x10) {
|
||||
var_a3 = 100;
|
||||
if (player->unk_078 == 0) {
|
||||
camera->unk_B0 = 0;
|
||||
} else {
|
||||
if (player->unk_078 < 0) {
|
||||
var_a3 = 0xA5 - (player->unk_078 / 2);
|
||||
if ((player->unk_0BC & 0x20000000) == 0x20000000) {
|
||||
if ((player->effects & 0x20000000) == 0x20000000) {
|
||||
move_s16_towards(&camera->unk_B0, -0x0B60, 0.1f);
|
||||
} else {
|
||||
move_s16_towards(&camera->unk_B0, -0x0888, 0.1f);
|
||||
}
|
||||
} else {
|
||||
var_a3 = (player->unk_078 / 2) + 0xA5;
|
||||
if ((player->unk_0BC & 0x20000000) == 0x20000000) {
|
||||
if ((player->effects & 0x20000000) == 0x20000000) {
|
||||
move_s16_towards(&camera->unk_B0, 0x0B60, 0.1f);
|
||||
} else {
|
||||
move_s16_towards(&camera->unk_B0, 0x0888, 0.1f);
|
||||
@@ -716,7 +716,7 @@ void func_8001E45C(Camera *camera, Player *player, s8 arg2) {
|
||||
move_s16_towards(&camera->unk_B0, 0, 0.05f);
|
||||
var_a3 = ((s16) camera->unk_2C / 182) - ((s16) player->unk_02C[1] / 182);
|
||||
if (player->unk_078 == 0) {
|
||||
if ((player->unk_0BC & 0x20) == 0x20) {
|
||||
if ((player->effects & 0x20) == 0x20) {
|
||||
var_a3 = 0x02D8;
|
||||
} else {
|
||||
var_a3 = 0x01F4;
|
||||
@@ -733,10 +733,10 @@ void func_8001E45C(Camera *camera, Player *player, s8 arg2) {
|
||||
var_a3 = (player->unk_078 / 2) + 0xA5;
|
||||
}
|
||||
}
|
||||
if (((player->unk_0BC & 0x80) == 0x80) || ((player->unk_0BC & 0x40) == 0x40) ||
|
||||
((player->unk_0BC & 0x4000) == 0x4000) || ((player->unk_0BC & 0x80000) == 0x80000) ||
|
||||
((player->unk_0BC & 0x800000) == 0x800000) || (((player->unk_0BC & 0x20) == 0x20) && (player->unk_078 != 0)) ||
|
||||
(player->unk_110.unk3C[0] <= 0.0f) || (player->unk_110.unk3C[1] <= 0.0f) || ((player->unk_0BC & 0x20000) == 0x20000)) {
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40) ||
|
||||
((player->effects & 0x4000) == 0x4000) || ((player->effects & 0x80000) == 0x80000) ||
|
||||
((player->effects & 0x800000) == 0x800000) || (((player->effects & 0x20) == 0x20) && (player->unk_078 != 0)) ||
|
||||
(player->unk_110.unk3C[0] <= 0.0f) || (player->unk_110.unk3C[1] <= 0.0f) || ((player->effects & 0x20000) == 0x20000)) {
|
||||
func_8001CCEC(player, camera, sp64, &sp84, &sp80, &sp7C, &sp58, (s32) camera->unk_2C, (s32) arg2);
|
||||
} else {
|
||||
func_800224F0(&camera->unk_2C, (s16) (player->unk_02C[1] + camera->unk_B0), var_a3);
|
||||
@@ -812,16 +812,14 @@ void func_8001EA0C(Camera *camera, Player *player, s8 arg2) {
|
||||
UNUSED s16 pad6;
|
||||
s16 temp;
|
||||
|
||||
//temp_v0 = player->unk_0BC;
|
||||
if ((player->unk_0BC & 0x10) == 0x10) {
|
||||
//temp_v1 = player->unk_078;
|
||||
if ((player->effects & 0x10) == 0x10) {
|
||||
var_a3 = 100;
|
||||
if (player->unk_078 == 0) {
|
||||
camera->unk_B0 = 0;
|
||||
} else {
|
||||
if (player->unk_078 < 0) {
|
||||
var_a3 = 0xA5 - (player->unk_078 / 2);
|
||||
if ((player->unk_0BC & 0x20000000) == 0x20000000) {
|
||||
if ((player->effects & 0x20000000) == 0x20000000) {
|
||||
//sp4E = temp_a3;
|
||||
move_s16_towards(&camera->unk_B0, -0x0B60, 0.1f);
|
||||
} else {
|
||||
@@ -830,7 +828,7 @@ void func_8001EA0C(Camera *camera, Player *player, s8 arg2) {
|
||||
}
|
||||
} else {
|
||||
var_a3 = (player->unk_078 / 2) + 0xA5;
|
||||
if ((player->unk_0BC & 0x20000000) == 0x20000000) {
|
||||
if ((player->effects & 0x20000000) == 0x20000000) {
|
||||
//sp4E = temp_a3_2;
|
||||
move_s16_towards(&camera->unk_B0, 0x0B60, 0.1f);
|
||||
} else {
|
||||
@@ -845,7 +843,7 @@ void func_8001EA0C(Camera *camera, Player *player, s8 arg2) {
|
||||
//temp_v1_2 = player->unk_078;
|
||||
var_a3 = ((s16) camera->unk_2C / 182) - ((s16) player->unk_02C[1] / 182);
|
||||
if (player->unk_078 == 0) {
|
||||
if ((player->unk_0BC & 0x20) == 0x20) {
|
||||
if ((player->effects & 0x20) == 0x20) {
|
||||
var_a3 = 0x02D8;
|
||||
} else {
|
||||
var_a3 = 0x01F4;
|
||||
@@ -862,10 +860,10 @@ void func_8001EA0C(Camera *camera, Player *player, s8 arg2) {
|
||||
var_a3 = (player->unk_078 / 2) + 0xA5;
|
||||
}
|
||||
}
|
||||
if (((player->unk_0BC & 0x80) == 0x80) || ((player->unk_0BC & 0x40) == 0x40) ||
|
||||
((player->unk_0BC & 0x4000) == 0x4000) || ((player->unk_0BC & 0x80000) == 0x80000) ||
|
||||
((player->unk_0BC & 0x800000) == 0x800000) || (((player->unk_0BC & 0x20) == 0x20) && (player->unk_078 != 0)) ||
|
||||
(player->unk_110.unk3C[0] <= 0.0f) || (player->unk_110.unk3C[1] <= 0.0f) || ((player->unk_0BC & 0x20000) == 0x20000)) {
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40) ||
|
||||
((player->effects & 0x4000) == 0x4000) || ((player->effects & 0x80000) == 0x80000) ||
|
||||
((player->effects & 0x800000) == 0x800000) || (((player->effects & 0x20) == 0x20) && (player->unk_078 != 0)) ||
|
||||
(player->unk_110.unk3C[0] <= 0.0f) || (player->unk_110.unk3C[1] <= 0.0f) || ((player->effects & 0x20000) == 0x20000)) {
|
||||
func_8001D944(player, camera, sp64, &sp84, &sp80, &sp7C, &sp58, (s32) camera->unk_2C, (s32) arg2);
|
||||
} else {
|
||||
func_800224F0(&camera->unk_2C, (s16) (player->unk_02C[1] + camera->unk_B0), var_a3);
|
||||
@@ -910,7 +908,7 @@ void func_8001EE98(Player *player, Camera *camera, s8 index) {
|
||||
switch (gModeSelection) {
|
||||
case GRAND_PRIX:
|
||||
|
||||
if (((player->unk_000 & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1)) { D_80152300[cameraIndex] = 3;
|
||||
if (((player->type & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1)) { D_80152300[cameraIndex] = 3;
|
||||
// --> --> Scroll right --> bit more --> ^ Required for matching
|
||||
} else if (gIsGamePaused == 1) {
|
||||
func_8001A0A4(&D_80152300[cameraIndex], camera, player, index, cameraIndex);
|
||||
@@ -939,7 +937,7 @@ void func_8001EE98(Player *player, Camera *camera, s8 index) {
|
||||
}
|
||||
break;
|
||||
case TIME_TRIALS:
|
||||
if (((gPlayerOne->unk_000 & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1)) {
|
||||
if (((gPlayerOne->type & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1)) {
|
||||
D_80152300[0] = 3;
|
||||
D_80152300[1] = 3;
|
||||
D_80152300[2] = 3;
|
||||
@@ -954,7 +952,7 @@ void func_8001EE98(Player *player, Camera *camera, s8 index) {
|
||||
}
|
||||
break;
|
||||
case VERSUS:
|
||||
if (((player->unk_000 & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1) || (D_8015F894 == 2)) {
|
||||
if (((player->type & PLAYER_CINEMATIC_MODE) == PLAYER_CINEMATIC_MODE) || (gDemoMode == 1) || (D_8015F894 == 2)) {
|
||||
D_80152300[cameraIndex] = 3;
|
||||
} else {
|
||||
if (gIsGamePaused == 1) {
|
||||
@@ -1017,16 +1015,16 @@ void func_8001F394(Player *player, f32 *arg1) {
|
||||
if (player->statusEffects & 0x40000) {
|
||||
D_80164A08[playerIndex] = 1;
|
||||
}
|
||||
if ((player->unk_0BC & 0x2000) == 0x2000) {
|
||||
if ((player->effects & 0x2000) == 0x2000) {
|
||||
D_80164A08[playerIndex] = 2;
|
||||
}
|
||||
if ((player->unk_0BC & 0x100000) == 0x100000) {
|
||||
if ((player->effects & 0x100000) == 0x100000) {
|
||||
D_80164A08[playerIndex] = 3;
|
||||
}
|
||||
if ((player->statusEffects & 0x100) == 0x100) {
|
||||
D_80164A08[playerIndex] = 4;
|
||||
}
|
||||
if (((player->unk_0BC & 0x80) == 0x80) || ((player->unk_0BC & 0x40) == 0x40)) {
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40)) {
|
||||
D_80164A08[playerIndex] = 5;
|
||||
}
|
||||
D_80164498[playerIndex] = 0.0f;
|
||||
@@ -1045,7 +1043,7 @@ void func_8001F394(Player *player, f32 *arg1) {
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if ((player->unk_0BC & 0x2000) == 0x2000) {
|
||||
if ((player->effects & 0x2000) == 0x2000) {
|
||||
if (player->boostTimer != 0) {
|
||||
move_f32_towards(&D_80164498[playerIndex], 8.0f, 0.2f);
|
||||
}
|
||||
@@ -1059,7 +1057,7 @@ void func_8001F394(Player *player, f32 *arg1) {
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (((player->unk_0BC & 0x100000) == 0x100000) && ((player->unk_0BC & 8) == 8)) {
|
||||
if (((player->effects & 0x100000) == 0x100000) && ((player->effects & 8) == 8)) {
|
||||
move_f32_towards(&D_80164498[playerIndex], 20.0f, 0.1f);
|
||||
} else {
|
||||
if (D_80164498[playerIndex] > 1.0f) {
|
||||
@@ -1083,7 +1081,7 @@ void func_8001F394(Player *player, f32 *arg1) {
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (((player->unk_0BC & 0x80) == 0x80) || ((player->unk_0BC & 0x40) == 0x40)) {
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40)) {
|
||||
move_f32_towards(&D_80164498[playerIndex], 18.0f, 0.2f);
|
||||
} else {
|
||||
if (D_80164498[playerIndex] > 1.0f) {
|
||||
@@ -1128,10 +1126,10 @@ void func_8001F87C(s32 cameraId) {
|
||||
s32 id = cameraId;
|
||||
|
||||
if(gPlayerOne){}
|
||||
if (gActiveScreenMode == 0) {
|
||||
if (gActiveScreenMode == SCREEN_MODE_1P) {
|
||||
if (gModeSelection == 0) {
|
||||
for (playerIndex = 0; playerIndex < 8; playerIndex++) {
|
||||
if ((gPlayerOne[playerIndex].unk_000 & 0x200) || (gPlayerOne[playerIndex].unk_000 & 0x80)) break;
|
||||
if ((gPlayerOne[playerIndex].type & 0x200) || (gPlayerOne[playerIndex].type & 0x80)) break;
|
||||
if (playerIndex == 7) {
|
||||
D_80164A2C += 1;
|
||||
}
|
||||
|
||||
+2
-2
@@ -163,7 +163,7 @@ void setup_race(void) {
|
||||
struct Controller *controller;
|
||||
int i;
|
||||
|
||||
gPlayerCountSelection1 = D_8018EDF3;
|
||||
gPlayerCountSelection1 = gPlayerCount;
|
||||
if (gGamestate != RACING) {
|
||||
gIsMirrorMode = 0;
|
||||
}
|
||||
@@ -189,7 +189,7 @@ void setup_race(void) {
|
||||
func_802969F8();
|
||||
func_80005310();
|
||||
func_8003D080();
|
||||
func_8006E9C0();
|
||||
init_object_list();
|
||||
D_800DC510 = 0;
|
||||
gNumSpawnedShells = 0;
|
||||
D_800DC5B8 = 0;
|
||||
|
||||
+2
-2
@@ -34,7 +34,7 @@ void func_80004740(Mtx *dest, Mat4 src) {
|
||||
#endif
|
||||
}
|
||||
|
||||
void func_800048D8(Mat4 dest, Vec3f b, Vec3s c) {
|
||||
void mtxf_translate_rotate2(Mat4 dest, Vec3f b, Vec3s c) {
|
||||
register f32 sx = sins(c[0]);
|
||||
register f32 cx = coss(c[0]);
|
||||
|
||||
@@ -93,7 +93,7 @@ void func_80004A1C(animation_type_1 *arg0, s16 *arg1, animation_type_3_triplet a
|
||||
sp8C[someIndex] = arg1[arg2[someIndex].some_offset + some_offset];
|
||||
}
|
||||
|
||||
func_800048D8(sp4C, sp94, sp8C);
|
||||
mtxf_translate_rotate2(sp4C, sp94, sp8C);
|
||||
func_80004740(&gGfxPool->mtxHud[gMatrixHudCount], sp4C);
|
||||
D_80162D7A += 1;
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL2(&gGfxPool->mtxHud[gMatrixHudCount++]), G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
|
||||
|
||||
+1
-1
@@ -191,7 +191,7 @@ struct stru_80004EAC {
|
||||
/* Function Prototypes */
|
||||
|
||||
void func_80004740(Mtx *dest, Mat4 src);
|
||||
void func_800048D8(Mat4 dest, Vec3f b, Vec3s c);
|
||||
void mtxf_translate_rotate2(Mat4 dest, Vec3f b, Vec3s c);
|
||||
s16 func_80004EAC(void*, s16);
|
||||
void func_80004A1C(animation_type_1*, s16*, animation_type_3_triplet, s32);
|
||||
void func_80004C30(u32*, animation_type_2*, s16);
|
||||
|
||||
+162
-162
@@ -447,7 +447,7 @@ s32 func_800061DC(Vec3f arg0, f32 arg1, s32 arg2) {
|
||||
var_v0 = 2;
|
||||
break;
|
||||
case SCREEN_MODE_3P_4P_SPLITSCREEN:
|
||||
var_v0 = D_8018EDF3;
|
||||
var_v0 = gPlayerCount;
|
||||
break;
|
||||
default:
|
||||
var_v0 = 1;
|
||||
@@ -456,8 +456,8 @@ s32 func_800061DC(Vec3f arg0, f32 arg1, s32 arg2) {
|
||||
var_v1 = arg2;
|
||||
if (!gDemoMode) {
|
||||
var_a0 = gPlayerOne;
|
||||
for(var_a1 = 0; var_a1 < D_8018EDF3; var_a1++, var_a0++) {
|
||||
if (((var_a0->unk_000 & 0x4000) != 0) && ((var_a0->unk_000 & 0x1000) == 0)) {
|
||||
for(var_a1 = 0; var_a1 < gPlayerCount; var_a1++, var_a0++) {
|
||||
if (((var_a0->type & 0x4000) != 0) && ((var_a0->type & 0x1000) == 0)) {
|
||||
temp_f12 = var_a0->pos[0];
|
||||
temp_f14 = var_a0->pos[2];
|
||||
if (((temp_f12 - arg1) < temp_f0) && (temp_f0 < (temp_f12 + arg1)) && ((temp_f14 - arg1) < temp_f2) && (temp_f2 < (temp_f14 + arg1))) {
|
||||
@@ -515,13 +515,13 @@ void func_800065D0(s32 arg0, Player *player) {
|
||||
*(&D_80163270 + temp_v0) = 1;
|
||||
temp_a3 = &gPlayers[arg0];
|
||||
*temp_v1 = 5;
|
||||
temp_a3->unk_0BC |= 0x400000;
|
||||
temp_a3->effects |= 0x400000;
|
||||
}
|
||||
} else if ((var_t1 < 0x2D) || (var_t1 >= 0x13C)) {
|
||||
*(&D_80163270 + temp_v0) = 0;
|
||||
*(&D_80163258 + temp_v0) = 0;
|
||||
temp_a3_2 = &gPlayers[arg0];
|
||||
temp_a3_2->unk_0BC &= 0xFFBFFFFF;
|
||||
temp_a3_2->effects &= 0xFFBFFFFF;
|
||||
}
|
||||
*temp_a2 = temp_a1;
|
||||
}
|
||||
@@ -536,7 +536,7 @@ void set_places(void) {
|
||||
s32 a_really_cool_variable_name;
|
||||
s32 stackPadding1;
|
||||
s32 var_t4;
|
||||
s32 var_t3;
|
||||
s32 playerId;
|
||||
s32 temp_a0;
|
||||
s32 var_t1_3;
|
||||
|
||||
@@ -549,72 +549,72 @@ void set_places(void) {
|
||||
var_t4 = 8;
|
||||
break;
|
||||
case VERSUS:
|
||||
var_t4 = D_8018EDF3;
|
||||
var_t4 = gPlayerCount;
|
||||
break;
|
||||
}
|
||||
|
||||
if (D_8016348C == 0) {
|
||||
for (var_t3 = 0; var_t3 < var_t4; var_t3++) {
|
||||
temp_a0 = gGPCurrentRacePlayerIdByRank[var_t3];
|
||||
sp80[var_t3] = temp_a0;
|
||||
gCourseCompletionPercentByRank[var_t3] = gCourseCompletionPercentByPlayerId[temp_a0];
|
||||
for (playerId = 0; playerId < var_t4; playerId++) {
|
||||
temp_a0 = gGPCurrentRacePlayerIdByRank[playerId];
|
||||
sp80[playerId] = temp_a0;
|
||||
gCourseCompletionPercentByRank[playerId] = gCourseCompletionPercentByPlayerId[temp_a0];
|
||||
}
|
||||
} else {
|
||||
for (var_t3 = 0; var_t3 < var_t4; var_t3++) {
|
||||
temp_a0 = gGPCurrentRacePlayerIdByRank[var_t3];
|
||||
sp80[var_t3] = temp_a0;
|
||||
gCourseCompletionPercentByRank[var_t3] = -gTimePlayerLastTouchedFinishLine[temp_a0];
|
||||
for (playerId = 0; playerId < var_t4; playerId++) {
|
||||
temp_a0 = gGPCurrentRacePlayerIdByRank[playerId];
|
||||
sp80[playerId] = temp_a0;
|
||||
gCourseCompletionPercentByRank[playerId] = -gTimePlayerLastTouchedFinishLine[temp_a0];
|
||||
}
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < var_t4 - 1; var_t3++) {
|
||||
if ((gPlayers[gGPCurrentRacePlayerIdByRank[var_t3]].unk_000 & 0x800)) continue;
|
||||
for (playerId = 0; playerId < var_t4 - 1; playerId++) {
|
||||
if ((gPlayers[gGPCurrentRacePlayerIdByRank[playerId]].type & 0x800)) continue;
|
||||
|
||||
for (var_t1_3 = var_t3 + 1; var_t1_3 < var_t4; var_t1_3++) {
|
||||
if (gCourseCompletionPercentByRank[var_t3] < gCourseCompletionPercentByRank[var_t1_3]) {
|
||||
if (!(gPlayers[gGPCurrentRacePlayerIdByRank[var_t1_3]].unk_000 & 0x800)) {
|
||||
temp_s2 = sp80[var_t3];
|
||||
sp80[var_t3] = sp80[var_t1_3];
|
||||
for (var_t1_3 = playerId + 1; var_t1_3 < var_t4; var_t1_3++) {
|
||||
if (gCourseCompletionPercentByRank[playerId] < gCourseCompletionPercentByRank[var_t1_3]) {
|
||||
if (!(gPlayers[gGPCurrentRacePlayerIdByRank[var_t1_3]].type & 0x800)) {
|
||||
temp_s2 = sp80[playerId];
|
||||
sp80[playerId] = sp80[var_t1_3];
|
||||
sp80[var_t1_3] = temp_s2;
|
||||
temp_f0 = gCourseCompletionPercentByRank[var_t3];
|
||||
gCourseCompletionPercentByRank[var_t3] = gCourseCompletionPercentByRank[var_t1_3];
|
||||
temp_f0 = gCourseCompletionPercentByRank[playerId];
|
||||
gCourseCompletionPercentByRank[playerId] = gCourseCompletionPercentByRank[var_t1_3];
|
||||
gCourseCompletionPercentByRank[var_t1_3] = temp_f0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < 8; var_t3++) {
|
||||
D_801643E0[var_t3] = gGPCurrentRaceRankByPlayerId[var_t3];
|
||||
for (playerId = 0; playerId < 8; playerId++) {
|
||||
D_801643E0[playerId] = gGPCurrentRaceRankByPlayerId[playerId];
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < var_t4; var_t3++) {
|
||||
gGPCurrentRacePlayerIdByRank[var_t3] = sp80[var_t3];
|
||||
gGPCurrentRaceRankByPlayerId[sp80[var_t3]] = var_t3;
|
||||
for (playerId = 0; playerId < var_t4; playerId++) {
|
||||
gGPCurrentRacePlayerIdByRank[playerId] = sp80[playerId];
|
||||
gGPCurrentRaceRankByPlayerId[sp80[playerId]] = playerId;
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < var_t4; var_t3++) {
|
||||
a_really_cool_variable_name = D_80164378[var_t3];
|
||||
sp80[var_t3] = a_really_cool_variable_name;
|
||||
gCourseCompletionPercentByRank[var_t3] = gCourseCompletionPercentByPlayerId[a_really_cool_variable_name];
|
||||
for (playerId = 0; playerId < var_t4; playerId++) {
|
||||
a_really_cool_variable_name = D_80164378[playerId];
|
||||
sp80[playerId] = a_really_cool_variable_name;
|
||||
gCourseCompletionPercentByRank[playerId] = gCourseCompletionPercentByPlayerId[a_really_cool_variable_name];
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < var_t4 - 1; var_t3++) {
|
||||
for (var_t1_3 = var_t3 + 1; var_t1_3 < var_t4; var_t1_3++) {
|
||||
if (gCourseCompletionPercentByRank[var_t3] < gCourseCompletionPercentByRank[var_t1_3]) {
|
||||
temp_s2 = sp80[var_t3];
|
||||
sp80[var_t3] = sp80[var_t1_3];
|
||||
for (playerId = 0; playerId < var_t4 - 1; playerId++) {
|
||||
for (var_t1_3 = playerId + 1; var_t1_3 < var_t4; var_t1_3++) {
|
||||
if (gCourseCompletionPercentByRank[playerId] < gCourseCompletionPercentByRank[var_t1_3]) {
|
||||
temp_s2 = sp80[playerId];
|
||||
sp80[playerId] = sp80[var_t1_3];
|
||||
sp80[var_t1_3] = temp_s2;
|
||||
temp_f0 = gCourseCompletionPercentByRank[var_t3];
|
||||
gCourseCompletionPercentByRank[var_t3] = gCourseCompletionPercentByRank[var_t1_3];
|
||||
temp_f0 = gCourseCompletionPercentByRank[playerId];
|
||||
gCourseCompletionPercentByRank[playerId] = gCourseCompletionPercentByRank[var_t1_3];
|
||||
gCourseCompletionPercentByRank[var_t1_3] = temp_f0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (var_t3 = 0; var_t3 < var_t4; var_t3++) {
|
||||
D_80164408[sp80[var_t3]] = var_t3;
|
||||
D_80164378[var_t3] = sp80[var_t3];
|
||||
for (playerId = 0; playerId < var_t4; playerId++) {
|
||||
D_80164408[sp80[playerId]] = playerId;
|
||||
D_80164378[playerId] = sp80[playerId];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -637,7 +637,7 @@ void func_800070F4(void) {
|
||||
var_a2 = 8;
|
||||
break;
|
||||
case VERSUS:
|
||||
var_a2 = D_8018EDF3;
|
||||
var_a2 = gPlayerCount;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -695,7 +695,7 @@ void func_800074D4(void) {
|
||||
var_v0 = 0;
|
||||
for (var_a3 = 0; var_a3 < this_loops_upper_bound_is_brough_to_you_by_the_number_eight; var_a3++) {
|
||||
var_a0_2 = &gPlayers[var_a3];
|
||||
if (var_a0_2->unk_000 & 0x800) {
|
||||
if (var_a0_2->type & 0x800) {
|
||||
sp68[var_v0] = var_a3;
|
||||
gCourseCompletionPercentByRank[var_v0] = -gTimePlayerLastTouchedFinishLine[var_a3];
|
||||
var_v0++;
|
||||
@@ -705,7 +705,7 @@ void func_800074D4(void) {
|
||||
temp_t1 = var_v0;
|
||||
for (var_a3 = 0; var_a3 < this_loops_upper_bound_is_brough_to_you_by_the_number_eight; var_a3++) {
|
||||
var_a0_2 = &gPlayers[var_a3];
|
||||
if (!(var_a0_2->unk_000 & 0x800)) {
|
||||
if (!(var_a0_2->type & 0x800)) {
|
||||
sp68[var_v0] = var_a3;
|
||||
gCourseCompletionPercentByRank[var_v0] = gCourseCompletionPercentByPlayerId[var_a3];
|
||||
var_v0++;
|
||||
@@ -790,8 +790,8 @@ void func_80007D04(s32 playerId, Player *player) {
|
||||
temp_t2 = D_80164450[playerId];
|
||||
if (gGPCurrentRaceRankByPlayerId[playerId] < 2) {
|
||||
if (((s16) (temp_t2 - temp_t1) >= 0x191) && ((s16)gGPCurrentRaceRankByPlayerId[temp_v1] >= 6)) {
|
||||
player->unk_0BC &= ~0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects &= ~0x200000;
|
||||
player_speed(player);
|
||||
var_t5 = 4;
|
||||
var_at = &D_801634C0 + (playerId * 2);
|
||||
} else {
|
||||
@@ -825,22 +825,22 @@ void func_80007D04(s32 playerId, Player *player) {
|
||||
break;
|
||||
}
|
||||
if (temp_t2 < temp_t1) {
|
||||
player->unk_0BC |= 0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects |= 0x200000;
|
||||
player_speed(player);
|
||||
*(&D_801634C0 + (playerId * 2)) = 1;
|
||||
} else {
|
||||
temp_v0 = playerId * 2;
|
||||
if (temp_t2 < (temp_t1 + var_v0 + 0x32)) {
|
||||
player->unk_0BC &= ~0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects &= ~0x200000;
|
||||
player_speed(player);
|
||||
*(&D_801634C0 + (playerId * 2)) = 3;
|
||||
} else if (*(&D_801631E0 + temp_v0) == 0) {
|
||||
player->unk_0BC &= ~0x200000;
|
||||
player->effects &= ~0x200000;
|
||||
sp1C = temp_v0;
|
||||
func_80030FC8(player);
|
||||
player_speed(player);
|
||||
*(&D_801634C0 + temp_v0) = 2;
|
||||
} else {
|
||||
player->unk_0BC &= ~0x200000;
|
||||
player->effects &= ~0x200000;
|
||||
sp1C = temp_v0;
|
||||
func_80031F48(player, 1.0f);
|
||||
var_t5 = -1;
|
||||
@@ -850,8 +850,8 @@ void func_80007D04(s32 playerId, Player *player) {
|
||||
}
|
||||
*var_at = var_t5;
|
||||
} else {
|
||||
player->unk_0BC |= 0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects |= 0x200000;
|
||||
player_speed(player);
|
||||
*(&D_801634C0 + (playerId * 2)) = 3;
|
||||
}
|
||||
}
|
||||
@@ -992,7 +992,7 @@ void func_80008424(s32 arg0, f32 arg1, Player *player) {
|
||||
s32 var_a1;
|
||||
u16 temp_v0_4;
|
||||
|
||||
temp_v1 = player->unk_0BC;
|
||||
temp_v1 = player->effects;
|
||||
var_f12 = arg1;
|
||||
temp_f2 = player->unk_094;
|
||||
if (!(temp_v1 & 0x80) && !(temp_v1 & 0x40) && ((temp_v1 << 0xE) >= 0) && (temp_v0 = player->statusEffects, ((temp_v0 << 9) >= 0)) && ((temp_v0 << 7) >= 0) && !(temp_v0 & 2) && !(temp_v0 & 4)) {
|
||||
@@ -1003,9 +1003,9 @@ void func_80008424(s32 arg0, f32 arg1, Player *player) {
|
||||
temp_t5 = arg0 * 2;
|
||||
if ((*(&D_801634D8 + temp_t5) == (s16) 1) && !(temp_v1 & 0x80000200)) {
|
||||
func_80031F48(player, 10.0f);
|
||||
if ((f64) player->unk_09C == 0.0) {
|
||||
player->unk_034[0] = 0.0f;
|
||||
player->unk_034[2] = 0.0f;
|
||||
if ((f64) player->currentSpeed == 0.0) {
|
||||
player->velocity[0] = 0.0f;
|
||||
player->velocity[2] = 0.0f;
|
||||
}
|
||||
} else {
|
||||
temp_v0_2 = gCCSelection;
|
||||
@@ -1022,48 +1022,48 @@ void func_80008424(s32 arg0, f32 arg1, Player *player) {
|
||||
break;
|
||||
}
|
||||
if (temp_f2 < var_f0) {
|
||||
player->unk_0BC = temp_v1 & 0xFFDFFFFF;
|
||||
func_80030FC8(player);
|
||||
player->effects = temp_v1 & 0xFFDFFFFF;
|
||||
player_speed(player);
|
||||
return;
|
||||
}
|
||||
if (player->unk_000 & 0x800) {
|
||||
if (player->type & PLAYER_CINEMATIC_MODE) {
|
||||
if (temp_f2 < var_f12) {
|
||||
player->unk_0BC = temp_v1 & 0xFFDFFFFF;
|
||||
func_80030FC8(player);
|
||||
player->effects = temp_v1 & 0xFFDFFFFF;
|
||||
player_speed(player);
|
||||
return;
|
||||
}
|
||||
player->unk_0BC = temp_v1 & 0xFFDFFFFF;
|
||||
player->effects = temp_v1 & 0xFFDFFFFF;
|
||||
func_80031F48(player, 1.0f);
|
||||
return;
|
||||
}
|
||||
if ((*(&D_801631E0 + temp_t5) == (u16) 1) && (*(&D_80163330 + temp_t5) != (u16) 1)) {
|
||||
temp_v0_3 = arg0 * 4;
|
||||
if (func_800088D8(var_f12, arg0, *(&D_80164392 + temp_v0_3), *(&D_8016440A + temp_v0_3), player) == 1) {
|
||||
player->unk_0BC |= 0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects |= 0x200000;
|
||||
player_speed(player);
|
||||
return;
|
||||
}
|
||||
player->unk_0BC &= 0xFFDFFFFF;
|
||||
player->effects &= 0xFFDFFFFF;
|
||||
func_80031F48(player, 1.0f);
|
||||
return;
|
||||
}
|
||||
temp_v0_4 = *(&D_80163350 + temp_t5);
|
||||
switch (temp_v0_4) { /* switch 1; irregular */
|
||||
case 1: /* switch 1 */
|
||||
player->unk_0BC = temp_v1 & 0xFFDFFFFF;
|
||||
player->effects = temp_v1 & 0xFFDFFFFF;
|
||||
sp34 = temp_f2;
|
||||
sp1C = temp_t5;
|
||||
sp28 = 1;
|
||||
func_80030FC8(player);
|
||||
player_speed(player);
|
||||
var_a1 = 1;
|
||||
var_f12 = arg1;
|
||||
break;
|
||||
case 3: /* switch 1 */
|
||||
player->unk_0BC = temp_v1 | 0x200000;
|
||||
player->effects = temp_v1 | 0x200000;
|
||||
sp34 = temp_f2;
|
||||
sp1C = temp_t5;
|
||||
sp28 = 1;
|
||||
func_80030FC8(player);
|
||||
player_speed(player);
|
||||
var_a1 = 1;
|
||||
var_f12 = arg1;
|
||||
break;
|
||||
@@ -1080,7 +1080,7 @@ void func_80008424(s32 arg0, f32 arg1, Player *player) {
|
||||
if (var_a1 != 1) {
|
||||
if (temp_f2 < var_f12) {
|
||||
if ((gDemoMode) && (gCurrentCourseId != 0x0014)) {
|
||||
func_80030FC8(player);
|
||||
player_speed(player);
|
||||
return;
|
||||
}
|
||||
temp_v0_5 = arg0 * 4;
|
||||
@@ -1089,15 +1089,15 @@ void func_80008424(s32 arg0, f32 arg1, Player *player) {
|
||||
return;
|
||||
}
|
||||
if (func_800088D8(var_f12, arg0, *(&D_80164392 + temp_v0_5), *(&D_8016440A + temp_v0_5), player) == 1) {
|
||||
player->unk_0BC |= 0x200000;
|
||||
func_80030FC8(player);
|
||||
player->effects |= 0x200000;
|
||||
player_speed(player);
|
||||
return;
|
||||
}
|
||||
player->unk_0BC &= 0xFFDFFFFF;
|
||||
player->effects &= 0xFFDFFFFF;
|
||||
func_80031F48(player, 1.0f);
|
||||
return;
|
||||
}
|
||||
player->unk_0BC &= 0xFFDFFFFF;
|
||||
player->effects &= 0xFFDFFFFF;
|
||||
if (var_f12 > 1.0f) {
|
||||
func_80031F48(player, 2.0f);
|
||||
return;
|
||||
@@ -1123,7 +1123,7 @@ extern ? D_80164376;
|
||||
extern s16 D_80164386;
|
||||
extern ? D_801643BA;
|
||||
extern ? D_80164538;
|
||||
extern s8 D_8018EDF3;
|
||||
extern s8 gPlayerCount;
|
||||
static ? D_800DCAF4; /* unable to generate initializer */
|
||||
static ? D_800DCB34; /* unable to generate initializer */
|
||||
static ? *D_800DCBB4[0x15] = {
|
||||
@@ -1206,7 +1206,7 @@ s32 func_800088D8(s32 arg0, s16 arg1, s16 arg2) {
|
||||
return 1;
|
||||
}
|
||||
temp_t1 = &gPlayers[arg0];
|
||||
if ((temp_t1->unk_000 & 0x4000) != 0) {
|
||||
if ((temp_t1->type & 0x4000) != 0) {
|
||||
return 1;
|
||||
}
|
||||
temp_t2 = var_a1 * 8;
|
||||
@@ -1268,7 +1268,7 @@ s32 func_800088D8(s32 arg0, s16 arg1, s16 arg2) {
|
||||
var_v0 += 1;
|
||||
}
|
||||
} while ((u32) var_a0_3 < (u32) &D_80163348);
|
||||
temp_t1_2 = D_8018EDF3;
|
||||
temp_t1_2 = gPlayerCount;
|
||||
var_a0_4 = 0;
|
||||
var_v1 = gGPCurrentRaceRankByPlayerId;
|
||||
if (temp_t1_2 > 0) {
|
||||
@@ -1441,7 +1441,7 @@ extern ? D_801642DE;
|
||||
extern ? D_801643B0;
|
||||
extern s32 D_80164408;
|
||||
extern s32 D_8016440C;
|
||||
extern s8 D_8018EDF3;
|
||||
extern s8 gPlayerCount;
|
||||
s16 gCurrentCourseId; /* unable to generate initializer */
|
||||
|
||||
void func_8000929C(s32 playerId, Player *player) {
|
||||
@@ -1503,7 +1503,7 @@ void func_8000929C(s32 playerId, Player *player) {
|
||||
var_t0 = 0;
|
||||
if (temp_v0 == 0x000B) {
|
||||
D_801634EC = 0;
|
||||
if ((player->unk_0BC & 0x200) != 0) {
|
||||
if ((player->effects & 0x200) != 0) {
|
||||
D_801634EC = 1;
|
||||
}
|
||||
if (gIsMirrorMode != 0) {
|
||||
@@ -1567,7 +1567,7 @@ block_25:
|
||||
func_80008F38(playerId);
|
||||
func_80011AE4(playerId);
|
||||
*(&D_801642DE + (playerId * 0x10)) = 0;
|
||||
if ((D_8016348C == 0) && ((player->unk_000 & 0x800) == 0)) {
|
||||
if ((D_8016348C == 0) && ((player->type & PLAYER_CINEMATIC_MODE) == 0)) {
|
||||
sp30 = var_a3;
|
||||
sp34 = var_t0;
|
||||
temp_f0_3 = func_80009258(playerId, sp38, sp44, (u16 *) var_a3);
|
||||
@@ -1588,13 +1588,13 @@ block_25:
|
||||
}
|
||||
}
|
||||
*(&D_80163450 + (playerId * 4)) = sp44;
|
||||
if ((gCurrentCourseId == 4) && (D_801630E2 == 1) && ((func_80009000(playerId), temp_v0_4 = player->unk_000, ((temp_v0_4 & 0x4000) == 0)) || ((temp_v0_4 & 0x1000) != 0))) {
|
||||
if ((gCurrentCourseId == 4) && (D_801630E2 == 1) && ((func_80009000(playerId), temp_v0_4 = player->type, ((temp_v0_4 & 0x4000) == 0)) || ((temp_v0_4 & 0x1000) != 0))) {
|
||||
func_800090F0(playerId, player);
|
||||
}
|
||||
temp_v0_5 = player->unk_000;
|
||||
temp_v0_5 = player->type;
|
||||
if (((temp_v0_5 & 0x4000) != 0) && ((temp_v0_5 & 0x1000) == 0)) {
|
||||
func_800065D0(playerId, player, &D_80163448);
|
||||
if ((gModeSelection == GRAND_PRIX) && (D_8018EDF3 == 2) && (playerId == 0)) {
|
||||
if ((gModeSelection == GRAND_PRIX) && (gPlayerCount == 2) && (playerId == 0)) {
|
||||
if (D_80164408 < D_8016440C) {
|
||||
D_80163478 = 0;
|
||||
} else {
|
||||
@@ -1613,7 +1613,7 @@ void func_800097E0(void) {
|
||||
func_8000EF20();
|
||||
D_8016337C++;
|
||||
|
||||
if (gCurrentCourseId == 20) {
|
||||
if (gCurrentCourseId == COURSE_AWARD_CEREMONY) {
|
||||
for (i = 0; i < 7; i++) {
|
||||
func_8000DF8C(i);
|
||||
}
|
||||
@@ -1661,14 +1661,14 @@ void func_800098FC(u8 arg0, Player *player) {
|
||||
|
||||
temp_v1 = arg0 * 2;
|
||||
temp_a2 = temp_v1 + &D_80163398;
|
||||
if ((*temp_a2 >= 0xB) && ((temp_v0 = player->unk_0BC, ((temp_v0 & 0x80) != 0)) || ((temp_v0 & 0x40) != 0) || (temp_v0 & 0x20000))) {
|
||||
if ((*temp_a2 >= 0xB) && ((temp_v0 = player->effects, ((temp_v0 & 0x80) != 0)) || ((temp_v0 & 0x40) != 0) || (temp_v0 & 0x20000))) {
|
||||
sp1C = temp_v1;
|
||||
sp18 = temp_a2;
|
||||
func_800C92CC(arg0, 0x2900800A, temp_a2, player);
|
||||
*temp_a2 = 0;
|
||||
}
|
||||
temp_a2_2 = temp_v1 + &D_801633B0;
|
||||
if ((*temp_a2_2 >= 0xB) && ((temp_v0_2 = player->statusEffects, ((temp_v0_2 << 9) < 0)) || ((temp_v0_2 << 7) < 0) || ((temp_v0_2 & 2) != 0) || ((temp_v0_2 & 4) != 0) || (player->unk_0BC & 0x04000000))) {
|
||||
if ((*temp_a2_2 >= 0xB) && ((temp_v0_2 = player->statusEffects, ((temp_v0_2 << 9) < 0)) || ((temp_v0_2 << 7) < 0) || ((temp_v0_2 & 2) != 0) || ((temp_v0_2 & 4) != 0) || (player->effects & 0x04000000))) {
|
||||
sp18 = temp_a2_2;
|
||||
func_800C92CC(arg0, 0x2900800B, temp_a2_2, player);
|
||||
*temp_a2_2 = 0;
|
||||
@@ -1707,7 +1707,7 @@ void func_800099EC(s32 arg0, ? arg1) {
|
||||
temp_s7 = temp_t6 + &D_801633C8;
|
||||
sp40 = temp_t6;
|
||||
if (*temp_s7 >= 0x65) {
|
||||
temp_a0 = D_8018EDF3;
|
||||
temp_a0 = gPlayerCount;
|
||||
phi_s0 = 0;
|
||||
phi_a0 = temp_a0;
|
||||
if (temp_a0 > ZERO_PLAYERS_SELECTED) {
|
||||
@@ -1719,7 +1719,7 @@ void func_800099EC(s32 arg0, ? arg1) {
|
||||
if ((temp_v0 < temp_v1) && (temp_v0 == *(&D_801643E0 + phi_s1)) && (temp_v1 == *(&D_801643E0 + (arg0 * 4)))) {
|
||||
func_800C92CC(arg0 & 0xFF, 0x2900800D);
|
||||
*temp_s7 = 0;
|
||||
phi_a0 = D_8018EDF3;
|
||||
phi_a0 = gPlayerCount;
|
||||
}
|
||||
temp_s0 = phi_s0 + 1;
|
||||
phi_s2 += 4;
|
||||
@@ -1918,7 +1918,7 @@ void func_80009B60(s32 playerId) {
|
||||
}
|
||||
temp_v1 = &gPlayers[playerId];
|
||||
temp_a2 = playerId * 2;
|
||||
if (!(temp_v1->unk_000 & 0x8000)) {
|
||||
if (!(temp_v1->type & 0x8000)) {
|
||||
D_80164450[playerId] = -0x00000014;
|
||||
gCourseCompletionPercentByPlayerId[playerId] = -1000.0f;
|
||||
gLapCompletionPercentByPlayerId[playerId] = -1000.0f;
|
||||
@@ -1964,15 +1964,15 @@ void func_80009B60(s32 playerId) {
|
||||
func_80014CC0(playerId, sp40);
|
||||
break;
|
||||
}
|
||||
if (sp40->unk_000 & 0x800) {
|
||||
sp40->unk_0BC &= 0xFFBFFFFF;
|
||||
if (sp40->type & 0x800) {
|
||||
sp40->effects &= 0xFFBFFFFF;
|
||||
sp40->unk_044 &= 0xFFFE;
|
||||
}
|
||||
func_8000929C(playerId, sp40);
|
||||
if ((gCurrentCourseId != 0x0014) && ((*(&D_80163240 + sp34) == 1) || (playerId == 0))) {
|
||||
set_places();
|
||||
}
|
||||
if (sp40->unk_000 & 0x1000) {
|
||||
if (sp40->type & 0x1000) {
|
||||
if ((D_801630E2 == 1) && (gCurrentCourseId != 0x0014)) {
|
||||
func_80011E38(playerId);
|
||||
}
|
||||
@@ -1994,11 +1994,11 @@ void func_80009B60(s32 playerId) {
|
||||
}
|
||||
temp_a1 = sp34 + &D_801631E0;
|
||||
*temp_a1 = 0;
|
||||
if ((sp40->unk_0BC & 0x1000) && (gCurrentCourseId != 0x0014)) {
|
||||
if ((sp40->effects & 0x1000) && (gCurrentCourseId != 0x0014)) {
|
||||
*temp_a1 = 1;
|
||||
}
|
||||
temp_v0_6 = gCurrentCourseId;
|
||||
if ((D_801646CC == 1) || (sp40->unk_000 & 0x800) || (temp_v0_6 == 0x0014)) {
|
||||
if ((D_801646CC == 1) || (sp40->type & 0x800) || (temp_v0_6 == 0x0014)) {
|
||||
if (temp_v0_6 != 0x000A) {
|
||||
*(&D_801634FC + (playerId * 0x10)) = 0.0f;
|
||||
}
|
||||
@@ -2049,13 +2049,13 @@ block_63:
|
||||
}
|
||||
if (var_a0 == 1) {
|
||||
*(&D_801630E8 + sp34) = 0;
|
||||
sp40->unk_0BC &= ~0x10;
|
||||
sp40->effects &= ~0x10;
|
||||
if ((D_80163378 & 1) != sp30) {
|
||||
func_8003680C(sp40, 0);
|
||||
func_80008424(playerId, *(&D_80163210 + sp38), sp40);
|
||||
return;
|
||||
}
|
||||
temp_v0_9 = D_8018EDF3;
|
||||
temp_v0_9 = gPlayerCount;
|
||||
if ((temp_v0_9 > 0) && (temp_v0_9 < 3) && (*(&D_80163330 + sp34) == 1) && ((s32) *(&D_8016334C + sp34) < *(gGPCurrentRaceRankByPlayerId + sp38))) {
|
||||
var_t0 = sp38 + &D_80163210;
|
||||
*var_t0 = 0x41055555;
|
||||
@@ -2076,7 +2076,7 @@ block_63:
|
||||
func_800131DC(playerId);
|
||||
func_8000D3B8(playerId);
|
||||
func_8000D438(playerId, D_801630E0);
|
||||
temp_v0_10 = sp40->unk_0BC;
|
||||
temp_v0_10 = sp40->effects;
|
||||
temp_f0 = D_80162FA0.unk0 - sp40->pos[0];
|
||||
var_t0_2 = var_t0;
|
||||
temp_f2 = D_80162FA0.unk8 - sp40->pos[2];
|
||||
@@ -2105,7 +2105,7 @@ block_63:
|
||||
sp2C = temp_t8;
|
||||
var_v0 = *temp_t8;
|
||||
if ((var_v0 == (s16) 1U) || (var_v0 == -1)) {
|
||||
sp40->unk_0BC |= 0x10;
|
||||
sp40->effects |= 0x10;
|
||||
var_v0 = (s16) *sp2C;
|
||||
}
|
||||
if (var_v0 != 0) {
|
||||
@@ -2138,13 +2138,13 @@ block_63:
|
||||
case -1: /* switch 2 */
|
||||
if (var_v1 >= 6) {
|
||||
*sp2C = 0;
|
||||
sp40->unk_0BC &= ~0x10;
|
||||
sp40->effects &= ~0x10;
|
||||
}
|
||||
break;
|
||||
case 1: /* switch 2 */
|
||||
if (var_v1 < -5) {
|
||||
*sp2C = 0;
|
||||
sp40->unk_0BC &= ~0x10;
|
||||
sp40->effects &= ~0x10;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -2245,9 +2245,9 @@ block_63:
|
||||
}
|
||||
if ((*(&D_801632E8 + sp34) == 2) && ((temp_f0_4 = *temp_t0_2, (temp_f0_4 > 0.9f)) || (temp_f0_4 < -0.9f))) {
|
||||
*sp2C = 0;
|
||||
sp40->unk_0BC &= ~0x10;
|
||||
sp40->effects &= ~0x10;
|
||||
}
|
||||
temp_v0_18 = sp40->unk_0BC;
|
||||
temp_v0_18 = sp40->effects;
|
||||
if (temp_v0_18 & 2) {
|
||||
temp_v0_19 = (s16) *sp2C;
|
||||
var_a1_2 = -0x0035;
|
||||
@@ -2274,7 +2274,7 @@ block_63:
|
||||
sp20 = temp_t0_2;
|
||||
func_8003680C((bitwise Player *) 182.0f, (s16) sp40, (Player *) var_a1_2, var_a2, sp40);
|
||||
*var_v0_2 = var_a1_2;
|
||||
if (((bitwise s32) *sp28 == 1) || (temp_v0_20 = (s16) *sp2C, (temp_v0_20 == 1)) || (temp_v0_20 == -1) || (sp40->unk_0BC & 0x1000000C)) {
|
||||
if (((bitwise s32) *sp28 == 1) || (temp_v0_20 = (s16) *sp2C, (temp_v0_20 == 1)) || (temp_v0_20 == -1) || (sp40->effects & 0x1000000C)) {
|
||||
sp20 = temp_t0_2;
|
||||
var_v1_3 = sp38 + &D_80163028;
|
||||
*var_v1_3 = *segmented_to_virtual_dupe_2((gCurrentCourseId * 0x10) + (gCCSelection * 4) + &D_0D009418);
|
||||
@@ -2297,7 +2297,7 @@ block_63:
|
||||
*var_v1_3 = 0x40555555;
|
||||
}
|
||||
D_8016320C = *var_v1_3;
|
||||
sp40->unk_0BC &= 0xFFDFFFFF;
|
||||
sp40->effects &= 0xFFDFFFFF;
|
||||
*(&D_80163210 + sp38) = D_8016320C;
|
||||
func_800131DC(playerId);
|
||||
func_80008424(playerId, D_8016320C, sp40);
|
||||
@@ -2374,7 +2374,7 @@ void func_8000B140(s32 playerId) {
|
||||
u16 temp_v0_2;
|
||||
|
||||
temp_v1 = &gPlayers[playerId];
|
||||
temp_a1 = temp_v1->unk_0BC;
|
||||
temp_a1 = temp_v1->effects;
|
||||
if (((temp_a1 & 0x10) == 0) && (temp_t5 = playerId * 2, temp_v0 = *(&D_801630E8 + temp_t5), sp5C = temp_t5, (temp_v0 != 1)) && (temp_v0 != -1) && (temp_t8 = &D_80163068[playerId], sp54 = temp_t8, sp58 = playerId * 4, temp_f0 = *temp_t8, !(temp_f0 < -1.0f)) && !(temp_f0 > 1.0f) && (temp_v0_2 = temp_v1->characterId, (temp_v0_2 != 5)) && (temp_v0_2 != 7) && (temp_v0_2 != 4) && ((temp_a1 & 0x200) == 0)) {
|
||||
var_t1 = (s16) gNearestWaypointByPlayerId[playerId];
|
||||
var_a1 = &sp9C;
|
||||
@@ -2400,7 +2400,7 @@ void func_8000B140(s32 playerId) {
|
||||
loop_15:
|
||||
if (var_t0 != playerId) {
|
||||
temp_v0_4 = &gPlayers[var_t0];
|
||||
if ((temp_v0_4->unk_000 & 0x8000) != 0) {
|
||||
if ((temp_v0_4->type & 0x8000) != 0) {
|
||||
temp_f2 = ((temp_v1->unk_094 / 18.0f) * 216.0f) - 5.0f;
|
||||
temp_v1_2 = (s16) gNearestWaypointByPlayerId[var_t0];
|
||||
temp_f0_2 = (temp_v0_4->unk_094 / 18.0f) * 216.0f;
|
||||
@@ -2576,7 +2576,7 @@ void func_8000B95C(s32 playerId, u16 wayPointIndex, s32 pathIndex) {
|
||||
UNUSED Vec3f pad;
|
||||
D_80163068[playerId] = 0.0f;
|
||||
if ((s32) D_800DCA4C[gCurrentCourseId] >= 0) {
|
||||
if ((gPlayers[playerId].unk_000 & 0x8000) != 0) {
|
||||
if ((gPlayers[playerId].type & 0x8000) != 0) {
|
||||
D_80163068[playerId] = func_8000B874(gPlayers[playerId].pos[0], gPlayers[playerId].pos[2], wayPointIndex, pathIndex);
|
||||
}
|
||||
}
|
||||
@@ -2969,7 +2969,7 @@ s16 func_8000CD24(f32 posX, f32 posY, f32 posZ, s16 wayPointIndex, Player *playe
|
||||
struct TrackWayPoint *temp_v1_4;
|
||||
u16 temp_v0;
|
||||
|
||||
temp_v0 = player->unk_000;
|
||||
temp_v0 = player->type;
|
||||
var_f24 = posZ;
|
||||
var_f20 = posX;
|
||||
var_f22 = posY;
|
||||
@@ -3650,20 +3650,20 @@ void func_8000DF8C(s32 arg0) {
|
||||
temp_f12 = var_f24 - gPlayerFour->pos[2];
|
||||
if (((temp_f0 * temp_f0) + (temp_f2 * temp_f2) + (temp_f12 * temp_f12)) < 25.0f) {
|
||||
sp7E = 4;
|
||||
gPlayerFour->statusEffects |= 0x400000;
|
||||
gPlayerFour->unk_000 &= ~0x2000;
|
||||
gPlayerFour->statusEffects |= REVERSE_EFFECT;
|
||||
gPlayerFour->type &= ~0x2000;
|
||||
var_s1 = 0;
|
||||
sp4C = 4;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
var_v1 = D_8018EDF3;
|
||||
var_v1 = gPlayerCount;
|
||||
var_a0 = 0;
|
||||
if (var_v1 > 0) {
|
||||
var_v0 = gPlayers;
|
||||
do {
|
||||
var_a0 += 1;
|
||||
if (!(var_v0->unk_0BC & 0x80000000)) {
|
||||
if (!(var_v0->effects & 0x80000000)) {
|
||||
temp_f0_2 = var_f22 - var_v0->pos[0];
|
||||
temp_f2_2 = var_f20 - var_v0->pos[1];
|
||||
temp_f12_2 = var_f24 - var_v0->pos[2];
|
||||
@@ -3671,11 +3671,11 @@ void func_8000DF8C(s32 arg0) {
|
||||
sp7E = 4;
|
||||
var_s1 = 0;
|
||||
if (gCurrentCourseId == 5) {
|
||||
var_v0->statusEffects |= 0x01000000;
|
||||
var_v0->statusEffects |= HIT_BY_ITEM_EFFECT;
|
||||
} else {
|
||||
var_v0->statusEffects |= 0x400000;
|
||||
var_v0->statusEffects |= REVERSE_EFFECT;
|
||||
}
|
||||
var_v1 = D_8018EDF3;
|
||||
var_v1 = gPlayerCount;
|
||||
}
|
||||
}
|
||||
var_v0 += 0xDD8;
|
||||
@@ -4044,7 +4044,7 @@ void func_8000F124(void) {
|
||||
if (gModeSelection == GRAND_PRIX) {
|
||||
do {
|
||||
loop_5:
|
||||
temp_a2 = D_8018EDF3;
|
||||
temp_a2 = gPlayerCount;
|
||||
*phi_s1 = random_int(8);
|
||||
phi_a1_2 = 0;
|
||||
phi_a1_5 = 0;
|
||||
@@ -5422,7 +5422,7 @@ void func_80011B14(s32 playerId, Player *player) {
|
||||
case 2:
|
||||
sp1C = temp_v1;
|
||||
func_8002AA50(player, temp_a2, temp_a3);
|
||||
player->unk_0BC &= ~0x10;
|
||||
player->effects &= ~0x10;
|
||||
*(&D_801630E8 + temp_v1) = 0;
|
||||
return;
|
||||
case 3:
|
||||
@@ -5450,7 +5450,7 @@ void func_80011B14(s32 playerId, Player *player) {
|
||||
*(&D_801633F8 + temp_v1) = 1;
|
||||
*(&D_801631E0 + temp_v1) = 0;
|
||||
temp_v0 = &gPlayers[playerId];
|
||||
temp_v0->unk_0BC &= ~0x1000;
|
||||
temp_v0->effects &= ~0x1000;
|
||||
return;
|
||||
case 10:
|
||||
*(&D_801633F8 + temp_v1) = 0;
|
||||
@@ -5553,7 +5553,7 @@ void func_80011EC0(s32 arg0, Player *player, s32 arg2, s32 arg3) {
|
||||
if ((temp_f0 > -0.8) && (temp_f0 < 0.5)) {
|
||||
sp1C = temp_a2;
|
||||
func_8002AA50(player, temp_a2, arg2);
|
||||
player->unk_0BC |= 0x10;
|
||||
player->effects |= 0x10;
|
||||
*temp_a2 = 1;
|
||||
return;
|
||||
}
|
||||
@@ -5567,7 +5567,7 @@ void func_80011EC0(s32 arg0, Player *player, s32 arg2, s32 arg3) {
|
||||
if ((temp_f0_2 > -0.5) && (temp_f0_2 < 0.8)) {
|
||||
sp1C = temp_a2;
|
||||
func_8002AA50(player, temp_a2, arg2);
|
||||
player->unk_0BC |= 0x10;
|
||||
player->effects |= 0x10;
|
||||
*temp_a2 = -1;
|
||||
return;
|
||||
}
|
||||
@@ -5645,7 +5645,7 @@ void func_80012220(VehicleStuff *vehicle) {
|
||||
vehicle->velocity[2] = vehicle->position[2] - origZPos;
|
||||
}
|
||||
|
||||
void func_800122D8(void) {
|
||||
void init_course_vehicles(void) {
|
||||
s16 trainCarYRot;
|
||||
UNUSED Vec3f pad;
|
||||
TrainCarStuff *tempLocomotive;
|
||||
@@ -5933,7 +5933,7 @@ void func_80012DC0(s32 playerId, Player *player) {
|
||||
s32 passengerCarIndex;
|
||||
|
||||
if (D_801631E0[playerId] != 1) {
|
||||
if (!(player->unk_0BC & 0x01000000)) {
|
||||
if (!(player->effects & 0x01000000)) {
|
||||
playerPosX = player->pos[0];
|
||||
playerPosZ = player->pos[2];
|
||||
for (trainIndex = 0; trainIndex < NUM_TRAINS; trainIndex++) {
|
||||
@@ -5943,12 +5943,12 @@ void func_80012DC0(s32 playerId, Player *player) {
|
||||
if ((x_dist > -100.0) && (x_dist < 100.0)) {
|
||||
if ((z_dist > -100.0) && (z_dist < 100.0)) {
|
||||
if (func_80006018(trainCar->position[0], trainCar->position[2], trainCar->velocity[0], trainCar->velocity[2], 60.0f, 20.0f, playerPosX, playerPosZ) == 1) {
|
||||
player->statusEffects |= 0x400000;
|
||||
player->statusEffects |= REVERSE_EFFECT;
|
||||
}
|
||||
trainCar = &sTrains[trainIndex].tender;
|
||||
if (trainCar->isActive == 1) {
|
||||
if (func_80006018(trainCar->position[0], trainCar->position[2], trainCar->velocity[0], trainCar->velocity[2], 30.0f, 20.0f, playerPosX, playerPosZ) == 1) {
|
||||
player->statusEffects |= 0x400000;
|
||||
player->statusEffects |= REVERSE_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5962,7 +5962,7 @@ void func_80012DC0(s32 playerId, Player *player) {
|
||||
if ((x_dist > -100.0) && (x_dist < 100.0)) {
|
||||
if ((z_dist > -100.0) && (z_dist < 100.0)) {
|
||||
if (func_80006018(trainCar->position[0], trainCar->position[2], trainCar->velocity[0], trainCar->velocity[2], 30.0f, 20.0f, playerPosX, playerPosZ) == 1) {
|
||||
player->statusEffects |= 0x400000;
|
||||
player->statusEffects |= REVERSE_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6040,7 +6040,7 @@ void func_800131DC(s32 playerId) {
|
||||
}
|
||||
|
||||
extern s16 D_801630FC;
|
||||
extern s8 D_8018EDF3;
|
||||
extern s8 gPlayerCount;
|
||||
void func_800132F4(void) {
|
||||
PaddleWheelBoatStuff *var_a1;
|
||||
s32 i;
|
||||
@@ -6059,7 +6059,7 @@ void func_800132F4(void) {
|
||||
var_a1->wayPointIndex = i * 0xB4;
|
||||
var_a1->actorIndex = -1;
|
||||
|
||||
if (D_8018EDF3 >= 3) {
|
||||
if (gPlayerCount >= 3) {
|
||||
var_a1->isActive = 0;
|
||||
} else {
|
||||
var_a1->isActive = 1;
|
||||
@@ -6213,7 +6213,7 @@ void func_80013854(Player *player) {
|
||||
f32 playerZ;
|
||||
f32 playerY;
|
||||
|
||||
if (!((player->unk_0BC & 0x01000000)) && (!(player->unk_0BC & 0x02000000))) {
|
||||
if (!((player->effects & 0x01000000)) && (!(player->effects & 0x02000000))) {
|
||||
playerX = player->pos[0];
|
||||
playerY = player->pos[1];
|
||||
playerZ = player->pos[2];
|
||||
@@ -6423,7 +6423,7 @@ void func_80013F7C(s32 playerId, Player *player, VehicleStuff *vehicle, f32 arg3
|
||||
|
||||
temp_s7 = playerId * 2;
|
||||
var_s0 = vehicle;
|
||||
if (((*(&D_801631E0 + temp_s7) != 1) || ((temp_v0 = player->unk_000, ((temp_v0 & 0x4000) != 0)) && !(temp_v0 & 0x1000))) && ((player->unk_0BC << 7) >= 0)) {
|
||||
if (((*(&D_801631E0 + temp_s7) != 1) || ((temp_v0 = player->type, ((temp_v0 & 0x4000) != 0)) && !(temp_v0 & 0x1000))) && ((player->effects << 7) >= 0)) {
|
||||
spC4 = player->pos[0];
|
||||
var_fp = 0;
|
||||
spC0 = player->pos[1];
|
||||
@@ -6440,11 +6440,11 @@ void func_80013F7C(s32 playerId, Player *player, VehicleStuff *vehicle, f32 arg3
|
||||
if ((temp_f0 > -20.0) && (temp_f0 < 20.0)) {
|
||||
temp_f0_2 = (f64) temp_f24;
|
||||
if ((temp_f0_2 > -100.0) && (temp_f0_2 < 100.0) && (func_80006018(temp_f12, temp_f14, var_s0->velocity[0], var_s0->velocity[2], arg3, arg4, spC4, spBC) == (s32) 1U)) {
|
||||
player->statusEffects |= 0x400000;
|
||||
player->statusEffects |= REVERSE_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
temp_v0_2 = player->unk_000;
|
||||
temp_v0_2 = player->type;
|
||||
if ((temp_v0_2 & 0x4000) && !(temp_v0_2 & 0x1000)) {
|
||||
temp_s2 = 1 << playerId;
|
||||
if ((temp_f20 > -300.0) && (temp_f20 < 300.0) && (temp_f0_3 = (f64) temp_f22, (temp_f0_3 > -20.0)) && (temp_f0_3 < 20.0) && (temp_f0_4 = (f64) temp_f24, (temp_f0_4 > -300.0)) && (temp_f0_4 < 300.0)) {
|
||||
@@ -6999,7 +6999,7 @@ void func_80015390(Camera *camera, UNUSED Player *player, UNUSED s32 arg2) {
|
||||
} else {
|
||||
var_a2 = 0xA0 + (temp_s1->unk_078 / 16);
|
||||
}
|
||||
if (!((temp_s1->unk_0BC & 0x80) || (temp_s1->unk_0BC & 0x40))) {
|
||||
if (!((temp_s1->effects & 0x80) || (temp_s1->effects & 0x40))) {
|
||||
func_800224F0(&camera->unk_2C, temp_s1->unk_02C[1], var_a2);
|
||||
}
|
||||
func_8001D794(temp_s1, camera, sp64, &sp84, &sp80, &sp7C, camera->unk_2C);
|
||||
@@ -9089,7 +9089,7 @@ void func_8001A220(s32 arg0, s32 arg1) {
|
||||
}
|
||||
|
||||
s32 func_8001A310(s32 arg0, s32 arg1) {
|
||||
if ((gCurrentCourseId == 2) && (arg1 != 0) && (arg0 >= 0xE7) && (arg0 < 0x1C2)) {
|
||||
if ((gCurrentCourseId == COURSE_BOWSER_CASTLE) && (arg1 != 0) && (arg0 >= 0xE7) && (arg0 < 0x1C2)) {
|
||||
arg1 = 0;
|
||||
}
|
||||
return arg1;
|
||||
@@ -9151,7 +9151,7 @@ void func_8001A450(s32 playerId, s32 arg1, s32 arg2) {
|
||||
s16 temp_v0;
|
||||
s16 temp_v1;
|
||||
|
||||
if (!(*(&gPlayers->unk_0BC + (playerId * 0xDD8)) & 0x1000000C) && ((temp_a2 = (arg1 * 2) + &D_80164680, temp_v1 = *temp_a2, sp18 = temp_a2, sp24 = (s32) temp_v1, temp_v0 = func_8001A310(gNearestWaypointByCameraId[arg1], (s32) (temp_v1 + 1) % 10, temp_a2, playerId), (temp_v0 != temp_v1)) || (arg2 != playerId))) {
|
||||
if (!(*(&gPlayers->effects + (playerId * 0xDD8)) & 0x1000000C) && ((temp_a2 = (arg1 * 2) + &D_80164680, temp_v1 = *temp_a2, sp18 = temp_a2, sp24 = (s32) temp_v1, temp_v0 = func_8001A310(gNearestWaypointByCameraId[arg1], (s32) (temp_v1 + 1) % 10, temp_a2, playerId), (temp_v0 != temp_v1)) || (arg2 != playerId))) {
|
||||
*temp_a2 = temp_v0;
|
||||
func_80019890(arg2, arg1, temp_a2, playerId);
|
||||
}
|
||||
@@ -9277,7 +9277,7 @@ void func_8001A588(u16 *arg0, Camera *camera, Player *arg2, s8 arg3, s32 arg4) {
|
||||
}
|
||||
if ((gModeSelection != TIME_TRIALS) && (arg4 == 1) && ((temp_v0_5 = D_801646C8, (temp_v0_5 == 0x00000104)) || (temp_v0_5 == 0x00000105))) {
|
||||
var_v1 = 0;
|
||||
if (D_8018EDF3 == 2) {
|
||||
if (gPlayerCount == 2) {
|
||||
func_8001A518((s32) var_s0, gGPCurrentRaceRankByPlayerId[var_s0], 1, arg4);
|
||||
} else {
|
||||
sp44 = (s32) var_s0;
|
||||
@@ -9510,14 +9510,14 @@ void func_8001AC10(s32 playerId) {
|
||||
|
||||
temp_t9 = &gPlayerOne[playerId];
|
||||
sp2C = temp_t9;
|
||||
if ((gModeSelection != (s32) 1) && (D_801646CC != (u16) 1) && !(temp_t9->unk_000 & 0x800)) {
|
||||
if ((gModeSelection != (s32) 1) && (D_801646CC != (u16) 1) && !(temp_t9->type & 0x800)) {
|
||||
temp_s0 = (playerId * 0x10) + &D_801642D8;
|
||||
temp_a1 = temp_s0->unk0;
|
||||
switch (temp_a1) { /* switch 1 */
|
||||
case 0: /* switch 1 */
|
||||
temp_s0->ffff = -1;
|
||||
if ((((playerId * 0x14) + 0x64) < D_80164450[playerId]) && (temp_s0->timer >= 0x259) && (temp_s0->laps < 3) && (temp_v1 = gLapCountByPlayerId[playerId], ((temp_v1 < 3) != 0))) {
|
||||
func_8001AB74(playerId, temp_s0, func_8007AF78((s32) (s16) temp_v1, gGPCurrentRaceRankByPlayerId[playerId].unk2));
|
||||
func_8001AB74(playerId, temp_s0, gen_random_item_cpu((s32) (s16) temp_v1, gGPCurrentRaceRankByPlayerId[playerId].unk2));
|
||||
} else {
|
||||
func_8001ABE0(playerId, (s32) temp_s0);
|
||||
}
|
||||
@@ -9544,7 +9544,7 @@ void func_8001AC10(s32 playerId) {
|
||||
break;
|
||||
}
|
||||
} else if (temp_a1 == 1) {
|
||||
temp_s0->ffff = func_802B2D70(sp2C);
|
||||
temp_s0->ffff = use_banana_item(sp2C);
|
||||
temp_v1_3 = temp_s0->ffff;
|
||||
if ((temp_v1_3 >= 0) && (temp_v1_3 < 0x64)) {
|
||||
sp2C->statusEffects |= 0x40000;
|
||||
@@ -9589,7 +9589,7 @@ void func_8001AC10(s32 playerId) {
|
||||
temp_s0->unk0 = 0;
|
||||
break;
|
||||
case 34: /* switch 1 */
|
||||
temp_s0->ffff = func_802B2D70(sp2C);
|
||||
temp_s0->ffff = use_banana_item(sp2C);
|
||||
temp_v1_4 = temp_s0->ffff;
|
||||
if ((temp_v1_4 >= 0) && (temp_v1_4 < 0x64)) {
|
||||
temp_a3_3 = &gActorList[temp_v1_4];
|
||||
@@ -9605,7 +9605,7 @@ void func_8001AC10(s32 playerId) {
|
||||
temp_a3_3->velocity[2] = (f32) ((f64) ((f32) temp_v0_2->wayPointZ - sp2C->pos[2]) / 20.0);
|
||||
temp_a3_3->pos[1] = sp2C->pos[1];
|
||||
func_800C92CC(playerId & 0xFF, 0x29008009, temp_a2 * 2, temp_a3_3);
|
||||
func_800C98B8(sp2C->pos, sp2C->unk_034, 0x19018014U);
|
||||
func_800C98B8(sp2C->pos, sp2C->velocity, 0x19018014U);
|
||||
} else {
|
||||
temp_s0->timer = 0;
|
||||
temp_s0->unk0 = 0;
|
||||
@@ -9647,7 +9647,7 @@ void func_8001AC10(s32 playerId) {
|
||||
break;
|
||||
case 4: /* switch 1 */
|
||||
if ((s32) gNumActors < 0x50) {
|
||||
temp_s0->ffff = func_802B1C9C(sp2C);
|
||||
temp_s0->ffff = use_green_shell_item(sp2C);
|
||||
temp_v1_5 = temp_s0->ffff;
|
||||
if ((temp_v1_5 >= 0) && (temp_v1_5 < 0x64)) {
|
||||
temp_s0->unk0 = 5;
|
||||
@@ -9685,7 +9685,7 @@ block_71:
|
||||
break;
|
||||
case 7: /* switch 1 */
|
||||
if ((s32) gNumActors < 0x50) {
|
||||
temp_s0->ffff = func_802B1E48(sp2C);
|
||||
temp_s0->ffff = use_red_shell_item(sp2C);
|
||||
temp_v1_6 = temp_s0->ffff;
|
||||
if ((temp_v1_6 >= 0) && (temp_v1_6 < 0x64)) {
|
||||
temp_s0->unk0 = 8;
|
||||
@@ -9723,7 +9723,7 @@ block_92:
|
||||
break;
|
||||
case 10: /* switch 1 */
|
||||
if ((s32) gNumActors < 0x50) {
|
||||
temp_s0->ffff = func_802B17F4(sp2C);
|
||||
temp_s0->ffff = use_banana_bunch_item(sp2C);
|
||||
temp_v1_7 = temp_s0->ffff;
|
||||
if ((temp_v1_7 >= 0) && (temp_v1_7 < 0x64)) {
|
||||
temp_s0->unk0 = 0x000B;
|
||||
@@ -9814,7 +9814,7 @@ block_146:
|
||||
}
|
||||
break;
|
||||
case 13: /* switch 1 */
|
||||
temp_s0->ffff = func_802B2C40(sp2C);
|
||||
temp_s0->ffff = use_fake_itembox_item(sp2C);
|
||||
temp_v1_9 = temp_s0->ffff;
|
||||
if ((temp_v1_9 >= 0) && (temp_v1_9 < 0x64)) {
|
||||
temp_s0->unk0 = 0x000E;
|
||||
@@ -9852,7 +9852,7 @@ block_146:
|
||||
temp_s0->unk0 = 0;
|
||||
break;
|
||||
case 22: /* switch 1 */
|
||||
func_802B2EBC(sp2C);
|
||||
use_thunder_item(sp2C);
|
||||
func_800CAC60(playerId & 0xFF);
|
||||
func_8009E5BC();
|
||||
temp_s0->timer = 0;
|
||||
@@ -9873,7 +9873,7 @@ block_146:
|
||||
temp_s0->laps += 1;
|
||||
break;
|
||||
case 26: /* switch 1 */
|
||||
if (!(sp2C->unk_0BC & 0x200)) {
|
||||
if (!(sp2C->effects & 0x200)) {
|
||||
temp_s0->unk0 = 0;
|
||||
}
|
||||
temp_s0->timer = 0;
|
||||
@@ -9885,7 +9885,7 @@ block_146:
|
||||
temp_s0->laps += 1;
|
||||
break;
|
||||
case 28: /* switch 1 */
|
||||
if (!(sp2C->unk_0BC & 0x80000000)) {
|
||||
if (!(sp2C->effects & 0x80000000)) {
|
||||
temp_s0->unk0 = 0;
|
||||
}
|
||||
temp_s0->timer = 0;
|
||||
@@ -9928,7 +9928,7 @@ block_146:
|
||||
if (temp_s0->timer < 0x2710) {
|
||||
temp_s0->timer += 1;
|
||||
}
|
||||
if (sp2C->unk_0BC & 0x80002200) {
|
||||
if (sp2C->effects & 0x80002200) {
|
||||
temp_s0->timer = 0;
|
||||
}
|
||||
}
|
||||
@@ -9947,7 +9947,7 @@ void func_8001BE78(void) {
|
||||
func_8000F628();
|
||||
for (i = 0; i < 4; i++) {
|
||||
temp_s1 = &gPlayerOne[i];
|
||||
temp_s1->unk_000 &= 0xDFFF;
|
||||
temp_s1->type &= 0xDFFF;
|
||||
gPathIndexByPlayerId[i] = i;
|
||||
D_801634F8[i].unkC = 0.0f;
|
||||
D_801634F8[i].unk4 = 0.0f;
|
||||
@@ -10052,7 +10052,7 @@ loop_8:
|
||||
if ((var_s1 != 3) || (D_8016347C != 0)) {
|
||||
temp_s0 = &gPlayerOne[var_s1];
|
||||
func_80009B60(var_s1);
|
||||
temp_v1 = temp_s0->unk_000;
|
||||
temp_v1 = temp_s0->type;
|
||||
temp_v0 = var_s1 * 4;
|
||||
if ((temp_v1 & 0x2000) == 0) {
|
||||
temp_f0 = *(&D_80163418 + temp_v0) - temp_s0->pos[0];
|
||||
@@ -10060,22 +10060,22 @@ loop_8:
|
||||
if ((f64) ((temp_f0 * temp_f0) + (temp_f2 * temp_f2)) < 1.0) {
|
||||
if (var_s1 != 3) {
|
||||
if (D_8016347C == 0) {
|
||||
temp_s0->unk_000 = temp_v1 | 0x2000;
|
||||
temp_s0->type = temp_v1 | 0x2000;
|
||||
} else {
|
||||
temp_s0->unk_000 = temp_v1 & 0xDFFF;
|
||||
temp_s0->type = temp_v1 & 0xDFFF;
|
||||
}
|
||||
if (((gPlayerOne->unk_000 & 0x2000) != 0) && ((gPlayerTwo->unk_000 & 0x2000) != 0) && ((gPlayerThree->unk_000 & 0x2000) != 0)) {
|
||||
if (((gPlayerOne->type & 0x2000) != 0) && ((gPlayerTwo->type & 0x2000) != 0) && ((gPlayerThree->type & 0x2000) != 0)) {
|
||||
D_8016347C = 1;
|
||||
D_80163480 = 0;
|
||||
}
|
||||
} else if (D_8016347E == 0) {
|
||||
if ((temp_s0->unk_0BC & 0x01000000) == 0) {
|
||||
temp_s0->unk_000 = temp_v1 | 0x2000;
|
||||
if ((temp_s0->effects & 0x01000000) == 0) {
|
||||
temp_s0->type = temp_v1 | 0x2000;
|
||||
}
|
||||
D_8016347E = 1;
|
||||
D_80163484 = 0;
|
||||
} else if ((temp_s0->unk_0BC & 0x01000000) == 0) {
|
||||
temp_s0->unk_000 = temp_v1 | 0x2000;
|
||||
} else if ((temp_s0->effects & 0x01000000) == 0) {
|
||||
temp_s0->type = temp_v1 | 0x2000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -111,7 +111,7 @@ void func_80011AB8(s32);
|
||||
void func_80011AE4(s32);
|
||||
|
||||
void func_80012220(VehicleStuff*);
|
||||
void func_800122D8(void);
|
||||
void init_course_vehicles(void);
|
||||
void func_80012A48(TrainCarStuff*, s16);
|
||||
void func_80012AC0(void);
|
||||
void func_80012DC0(s32, Player*);
|
||||
|
||||
+239
-245
@@ -57,15 +57,15 @@ void func_8001F9E4(Player *player, Camera *camera, s8 arg2) {
|
||||
player->unk_002 &= ~(2 << (arg2 * 4));
|
||||
player->unk_002 &= ~(8 << (arg2 * 4));
|
||||
|
||||
if (func_8001FB0C(player, camera, (f32) (D_80165578 + sp30), (f32) (D_8016557A + sp2C)) == 1) {
|
||||
if (check_player_camera_collision(player, camera, (f32) (D_80165578 + sp30), (f32) (D_8016557A + sp2C)) == 1) {
|
||||
player->unk_002 |= 2 << (arg2 * 4);
|
||||
}
|
||||
if (func_8001FB0C(player, camera, (f32) D_80165580, (f32) D_80165582) == 1) {
|
||||
if (check_player_camera_collision(player, camera, (f32) D_80165580, (f32) D_80165582) == 1) {
|
||||
player->unk_002 |= 8 << (arg2 * 4);
|
||||
}
|
||||
}
|
||||
|
||||
u16 func_8001FB0C(Player *player, Camera *camera, f32 arg2, f32 arg3) {
|
||||
u16 check_player_camera_collision(Player *player, Camera *camera, f32 arg2, f32 arg3) {
|
||||
UNUSED f32 pad[6];
|
||||
f32 sp64;
|
||||
f32 sp60;
|
||||
@@ -139,7 +139,7 @@ u16 func_8001FD78(Player *player, f32 posX, UNUSED f32 arg2, f32 posZ) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
void func_80020000(Player *player, Camera *camera, s8 arg2, s8 arg3) {
|
||||
void func_80020000(Player *player, Camera *camera, s8 playerId, s8 arg3) {
|
||||
s32 pad[4];
|
||||
s32 sp4C;
|
||||
s32 sp48;
|
||||
@@ -147,15 +147,15 @@ void func_80020000(Player *player, Camera *camera, s8 arg2, s8 arg3) {
|
||||
s32 temp_v0;
|
||||
s32 temp_v0_2;
|
||||
|
||||
if ((player->unk_000 & 0x8000) == 0x8000) {
|
||||
if ((player->type & PLAYER_EXISTS) == PLAYER_EXISTS) {
|
||||
func_8001F9E4(player, camera, arg3);
|
||||
temp_v0 = 2 << (arg3 << 2);
|
||||
if (temp_v0 == (player->unk_002 & temp_v0)) {
|
||||
if (!(player->unk_000 & 0x2000)) {
|
||||
func_8002934C(player, camera, arg3, arg2);
|
||||
if (!(player->type & PLAYER_START_SEQUENCE)) {
|
||||
func_8002934C(player, camera, arg3, playerId);
|
||||
} else {
|
||||
func_8002934C(player, camera, arg3, arg2);
|
||||
player->unk_0C4 = 0;
|
||||
func_8002934C(player, camera, arg3, playerId);
|
||||
player->slopeAccel = 0;
|
||||
player->unk_206 = 0;
|
||||
player->unk_050[arg3] = 0;
|
||||
}
|
||||
@@ -163,48 +163,48 @@ void func_80020000(Player *player, Camera *camera, s8 arg2, s8 arg3) {
|
||||
func_8001F980(&sp4C, &sp48);
|
||||
temp_v0_2 = 1 << (arg3 << 2);
|
||||
if ((temp_v0 == (player->unk_002 & temp_v0)) && (temp_v0_2 == (player->unk_002 & temp_v0_2))) {
|
||||
if ((func_8001FB0C(player, camera, D_80165570 + sp4C, D_80165572 + sp48) == 1) & 0xFFFF) {
|
||||
D_80164AB0[D_800DDB58] = (s16) arg2;
|
||||
if ((check_player_camera_collision(player, camera, D_80165570 + sp4C, D_80165572 + sp48) == 1) & 0xFFFF) {
|
||||
D_80164AB0[D_800DDB58] = (s16) playerId;
|
||||
D_80164AC0[D_800DDB58] = (s16) arg3;
|
||||
D_80164AD0[D_800DDB58] = player;
|
||||
D_800DDB58 += 1;
|
||||
D_80165190[arg3][arg2] = 0;
|
||||
D_801650D0[arg3][arg2] = player->unk_244[arg3];
|
||||
D_80165110[arg3][arg2] = player->unk_24C[arg3];
|
||||
D_80165150[arg3][arg2] = player->unk_0A8;
|
||||
D_801651D0[arg3][arg2] += 1;
|
||||
if (D_801651D0[arg3][arg2] == 2) {
|
||||
D_801651D0[arg3][arg2] = 0;
|
||||
D_80165190[arg3][playerId] = 0;
|
||||
D_801650D0[arg3][playerId] = player->animFrameSelector[arg3];
|
||||
D_80165110[arg3][playerId] = player->animGroupSelector[arg3];
|
||||
D_80165150[arg3][playerId] = player->unk_0A8;
|
||||
D_801651D0[arg3][playerId] += 1;
|
||||
if (D_801651D0[arg3][playerId] == 2) {
|
||||
D_801651D0[arg3][playerId] = 0;
|
||||
}
|
||||
} else {
|
||||
if ((func_8001FB0C(player, camera, D_80165574 + sp4C, D_80165576) == 1) & 0xFFFF) {
|
||||
if ((sRenderingFramebuffer == D_800DDB50[arg2]) || ((D_801650D0[arg3][arg2] - player->unk_244[arg3]) > 0x13) || ((D_801650D0[arg3][arg2] - player->unk_244[arg3]) < -0x13) || (D_80165190[arg3][arg2] == (s16) 1U)) {
|
||||
D_80164AB0[D_800DDB58] = (s16) arg2;
|
||||
if ((check_player_camera_collision(player, camera, D_80165574 + sp4C, D_80165576) == 1) & 0xFFFF) {
|
||||
if ((sRenderingFramebuffer == D_800DDB50[playerId]) || ((D_801650D0[arg3][playerId] - player->animFrameSelector[arg3]) > 0x13) || ((D_801650D0[arg3][playerId] - player->animFrameSelector[arg3]) < -0x13) || (D_80165190[arg3][playerId] == (s16) 1U)) {
|
||||
D_80164AB0[D_800DDB58] = (s16) playerId;
|
||||
D_80164AC0[D_800DDB58] = (s16) arg3;
|
||||
D_80164AD0[D_800DDB58] = player;
|
||||
D_800DDB58 += 1;
|
||||
D_801650D0[arg3][arg2] = player->unk_244[arg3];
|
||||
D_80165110[arg3][arg2] = player->unk_24C[arg3];
|
||||
D_80165150[arg3][arg2] = player->unk_0A8;
|
||||
D_80165190[arg3][arg2] = 0;
|
||||
D_801651D0[arg3][arg2] += 1;
|
||||
if (D_801651D0[arg3][arg2] == 2) {
|
||||
D_801651D0[arg3][arg2] = 0;
|
||||
D_801650D0[arg3][playerId] = player->animFrameSelector[arg3];
|
||||
D_80165110[arg3][playerId] = player->animGroupSelector[arg3];
|
||||
D_80165150[arg3][playerId] = player->unk_0A8;
|
||||
D_80165190[arg3][playerId] = 0;
|
||||
D_801651D0[arg3][playerId] += 1;
|
||||
if (D_801651D0[arg3][playerId] == 2) {
|
||||
D_801651D0[arg3][playerId] = 0;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (((D_801650D0[arg3][arg2] - player->unk_244[arg3]) > 0x13) || ((D_801650D0[arg3][arg2] - player->unk_244[arg3]) < -0x13) || (D_80165190[arg3][arg2] == (s16) 1U)) {
|
||||
D_80164AB0[D_800DDB58] = (s16) arg2;
|
||||
if (((D_801650D0[arg3][playerId] - player->animFrameSelector[arg3]) > 0x13) || ((D_801650D0[arg3][playerId] - player->animFrameSelector[arg3]) < -0x13) || (D_80165190[arg3][playerId] == (s16) 1U)) {
|
||||
D_80164AB0[D_800DDB58] = (s16) playerId;
|
||||
D_80164AC0[D_800DDB58] = (s16) arg3;
|
||||
D_80164AD0[D_800DDB58] = player;
|
||||
D_800DDB58 += 1;
|
||||
D_801650D0[arg3][arg2] = (s16) player->unk_244[arg3];
|
||||
D_80165110[arg3][arg2] = player->unk_24C[arg3];
|
||||
D_80165150[arg3][arg2] = player->unk_0A8;
|
||||
D_80165190[arg3][arg2] = 0;
|
||||
D_801651D0[arg3][arg2] += 1;
|
||||
if (D_801651D0[arg3][arg2] == 2) {
|
||||
D_801651D0[arg3][arg2] = 0;
|
||||
D_801650D0[arg3][playerId] = (s16) player->animFrameSelector[arg3];
|
||||
D_80165110[arg3][playerId] = player->animGroupSelector[arg3];
|
||||
D_80165150[arg3][playerId] = player->unk_0A8;
|
||||
D_80165190[arg3][playerId] = 0;
|
||||
D_801651D0[arg3][playerId] += 1;
|
||||
if (D_801651D0[arg3][playerId] == 2) {
|
||||
D_801651D0[arg3][playerId] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -307,8 +307,8 @@ void func_80020F1C(void) {
|
||||
|
||||
void func_80021244(Player *player, s8 arg1, s8 arg2) {
|
||||
|
||||
if (((player->unk_000 & PLAYER_EXISTS) == PLAYER_EXISTS)
|
||||
&& ((player->unk_000 & 0x40) == 0)) {
|
||||
if (((player->type & PLAYER_EXISTS) == PLAYER_EXISTS)
|
||||
&& ((player->type & 0x40) == 0)) {
|
||||
if ((player->unk_002 & 2 << (arg2 * 4)) == 2 << (arg2 * 4)) {
|
||||
func_800267AC(player, arg1, arg2);
|
||||
}
|
||||
@@ -375,7 +375,7 @@ Vtx *D_800DDBB4[] = {
|
||||
D_800E4DC0, D_800E4EC0, D_800E4FD0, D_800E50D0
|
||||
};
|
||||
|
||||
f32 D_800DDBD4[] = {
|
||||
f32 gCharacterSize[] = {
|
||||
0.75f, 0.75f, 0.75f, 0.75f,
|
||||
0.75f, 0.75f, 0.75f, 0.75f
|
||||
};
|
||||
@@ -629,37 +629,31 @@ void func_80021DA8(void) {
|
||||
func_8006E940(gPlayerFour, 3, 3);
|
||||
}
|
||||
|
||||
void func_80021E10(Mat4 arg0, Vec3f arg1, Vec3s arg2) {
|
||||
void mtxf_translate_rotate(Mat4 dest, Vec3f pos, Vec3s orientation) {
|
||||
UNUSED f32 pad[3];
|
||||
f32 sin1;
|
||||
f32 cos1;
|
||||
f32 sin2;
|
||||
f32 cos2;
|
||||
f32 sin3;
|
||||
f32 cos3;
|
||||
f32 sinX = sins(orientation[0]);
|
||||
f32 cosX = coss(orientation[0]);
|
||||
f32 sinY = sins(orientation[1]);
|
||||
f32 cosY = coss(orientation[1]);
|
||||
f32 sinZ = sins(orientation[2]);
|
||||
f32 cosZ = coss(orientation[2]);
|
||||
|
||||
sin1 = sins(arg2[0]);
|
||||
cos1 = coss(arg2[0]);
|
||||
sin2 = sins(arg2[1]);
|
||||
cos2 = coss(arg2[1]);
|
||||
sin3 = sins(arg2[2]);
|
||||
cos3 = coss(arg2[2]);
|
||||
arg0[0][0] = (cos2 * cos3) + ((sin1 * sin2) * sin3);
|
||||
arg0[1][0] = (-cos2 * sin3) + ((sin1 * sin2) * cos3);
|
||||
arg0[2][0] = cos1 * sin2;
|
||||
arg0[3][0] = arg1[0];
|
||||
arg0[0][1] = cos1 * sin3;
|
||||
arg0[1][1] = cos1 * cos3;
|
||||
arg0[2][1] = -sin1;
|
||||
arg0[3][1] = arg1[1];
|
||||
arg0[0][2] = (-sin2 * cos3) + ((sin1 * cos2) * sin3);
|
||||
arg0[1][2] = (sin2 * sin3) + ((sin1 * cos2) * cos3);
|
||||
arg0[2][2] = cos1 * cos2;
|
||||
arg0[3][2] = arg1[2];
|
||||
arg0[0][3] = 0.0f;
|
||||
arg0[1][3] = 0.0f;
|
||||
arg0[2][3] = 0.0f;
|
||||
arg0[3][3] = 1.0f;
|
||||
dest[0][0] = (cosY * cosZ) + ((sinX * sinY) * sinZ);
|
||||
dest[1][0] = (-cosY * sinZ) + ((sinX * sinY) * cosZ);
|
||||
dest[2][0] = cosX * sinY;
|
||||
dest[3][0] = pos[0];
|
||||
dest[0][1] = cosX * sinZ;
|
||||
dest[1][1] = cosX * cosZ;
|
||||
dest[2][1] = -sinX;
|
||||
dest[3][1] = pos[1];
|
||||
dest[0][2] = (-sinY * cosZ) + ((sinX * cosY) * sinZ);
|
||||
dest[1][2] = (sinY * sinZ) + ((sinX * cosY) * cosZ);
|
||||
dest[2][2] = cosX * cosY;
|
||||
dest[3][2] = pos[2];
|
||||
dest[0][3] = 0.0f;
|
||||
dest[1][3] = 0.0f;
|
||||
dest[2][3] = 0.0f;
|
||||
dest[3][3] = 1.0f;
|
||||
}
|
||||
|
||||
UNUSED void func_80021F50(Mat4 arg0, Vec3f arg1) {
|
||||
@@ -668,16 +662,16 @@ UNUSED void func_80021F50(Mat4 arg0, Vec3f arg1) {
|
||||
arg0[3][2] += arg1[2];
|
||||
}
|
||||
|
||||
void func_80021F84(Mat4 arg0, f32 arg1) {
|
||||
arg0[0][0] *= arg1;
|
||||
arg0[1][0] *= arg1;
|
||||
arg0[2][0] *= arg1;
|
||||
arg0[0][1] *= arg1;
|
||||
arg0[1][1] *= arg1;
|
||||
arg0[2][1] *= arg1;
|
||||
arg0[0][2] *= arg1;
|
||||
arg0[1][2] *= arg1;
|
||||
arg0[2][2] *= arg1;
|
||||
void mtxf_scale2(Mat4 arg0, f32 scale) {
|
||||
arg0[0][0] *= scale;
|
||||
arg0[1][0] *= scale;
|
||||
arg0[2][0] *= scale;
|
||||
arg0[0][1] *= scale;
|
||||
arg0[1][1] *= scale;
|
||||
arg0[2][1] *= scale;
|
||||
arg0[0][2] *= scale;
|
||||
arg0[1][2] *= scale;
|
||||
arg0[2][2] *= scale;
|
||||
}
|
||||
|
||||
UNUSED void func_80021FF8(Mtx *arg0, Mat4 arg1) {
|
||||
@@ -700,24 +694,24 @@ UNUSED void func_80021FF8(Mtx *arg0, Mat4 arg1) {
|
||||
arg0->m[3][3] = arg1[3][3] * someMultiplier;
|
||||
}
|
||||
|
||||
void func_80022180(Mtx *arg0, Mat4 arg1) {
|
||||
void convert_to_fixed_point_matrix(Mtx *fixedPointMatrix, Mat4 arg1) {
|
||||
f32 someMultiplier = 65536.0f;
|
||||
arg0->m[0][0] = ((s32) (arg1[0][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[0][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[0][1] = ((s32) (arg1[0][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[0][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[0][2] = ((s32) (arg1[1][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[1][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[0][3] = ((s32) (arg1[1][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[1][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[1][0] = ((s32) (arg1[2][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[2][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[1][1] = ((s32) (arg1[2][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[2][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[1][2] = ((s32) (arg1[3][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[3][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[1][3] = ((s32) (arg1[3][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[3][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
arg0->m[2][0] = ((s32) (arg1[0][0] * someMultiplier) << 0x10) | ((s32) (arg1[0][1] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[2][1] = ((s32) (arg1[0][2] * someMultiplier) << 0x10) | ((s32) (arg1[0][3] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[2][2] = ((s32) (arg1[1][0] * someMultiplier) << 0x10) | ((s32) (arg1[1][1] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[2][3] = ((s32) (arg1[1][2] * someMultiplier) << 0x10) | ((s32) (arg1[1][3] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[3][0] = ((s32) (arg1[2][0] * someMultiplier) << 0x10) | ((s32) (arg1[2][1] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[3][1] = ((s32) (arg1[2][2] * someMultiplier) << 0x10) | ((s32) (arg1[2][3] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[3][2] = ((s32) (arg1[3][0] * someMultiplier) << 0x10) | ((s32) (arg1[3][1] * someMultiplier) & 0xFFFF);
|
||||
arg0->m[3][3] = ((s32) (arg1[3][2] * someMultiplier) << 0x10) | ((s32) (arg1[3][3] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[0][0] = ((s32) (arg1[0][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[0][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[0][1] = ((s32) (arg1[0][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[0][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[0][2] = ((s32) (arg1[1][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[1][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[0][3] = ((s32) (arg1[1][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[1][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[1][0] = ((s32) (arg1[2][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[2][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[1][1] = ((s32) (arg1[2][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[2][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[1][2] = ((s32) (arg1[3][0] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[3][1] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[1][3] = ((s32) (arg1[3][2] * someMultiplier) & 0xFFFF0000) | (((s32) (arg1[3][3] * someMultiplier) >> 0x10) & 0xFFFF);
|
||||
fixedPointMatrix->m[2][0] = ((s32) (arg1[0][0] * someMultiplier) << 0x10) | ((s32) (arg1[0][1] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[2][1] = ((s32) (arg1[0][2] * someMultiplier) << 0x10) | ((s32) (arg1[0][3] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[2][2] = ((s32) (arg1[1][0] * someMultiplier) << 0x10) | ((s32) (arg1[1][1] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[2][3] = ((s32) (arg1[1][2] * someMultiplier) << 0x10) | ((s32) (arg1[1][3] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[3][0] = ((s32) (arg1[2][0] * someMultiplier) << 0x10) | ((s32) (arg1[2][1] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[3][1] = ((s32) (arg1[2][2] * someMultiplier) << 0x10) | ((s32) (arg1[2][3] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[3][2] = ((s32) (arg1[3][0] * someMultiplier) << 0x10) | ((s32) (arg1[3][1] * someMultiplier) & 0xFFFF);
|
||||
fixedPointMatrix->m[3][3] = ((s32) (arg1[3][2] * someMultiplier) << 0x10) | ((s32) (arg1[3][3] * someMultiplier) & 0xFFFF);
|
||||
}
|
||||
|
||||
s32 func_800224F0(s16 *arg0, s16 arg1, s16 arg2) {
|
||||
@@ -810,10 +804,10 @@ void func_8002276C(void) {
|
||||
break;
|
||||
case TIME_TRIALS: /* switch 1 */
|
||||
func_80022A98(gPlayerOne, 0);
|
||||
if ((gPlayerTwo->unk_000 & 0x100) == 0x100) {
|
||||
if ((gPlayerTwo->type & 0x100) == 0x100) {
|
||||
func_80022A98(gPlayerTwo, 1);
|
||||
}
|
||||
if ((gPlayerThree->unk_000 & 0x100) == 0x100) {
|
||||
if ((gPlayerThree->type & 0x100) == 0x100) {
|
||||
func_80022A98(gPlayerThree, 2);
|
||||
}
|
||||
break;
|
||||
@@ -867,14 +861,14 @@ void func_8002276C(void) {
|
||||
}
|
||||
|
||||
void func_80022A98(Player* player, s8 arg1) {
|
||||
if ((player->unk_000 & PLAYER_EXISTS) == PLAYER_EXISTS) {
|
||||
if ((player->type & PLAYER_EXISTS) == PLAYER_EXISTS) {
|
||||
func_80026A48(player, arg1);
|
||||
func_800235AC(player, arg1);
|
||||
if (((player->unk_0BC & 0x04000000) == 0x04000000) || ((player->unk_0BC & 0x08000000) == 0x08000000)) {
|
||||
if ((player->unk_0BC & 0x04000000) == 0x04000000) {
|
||||
if (((player->effects & 0x04000000) == 0x04000000) || ((player->effects & 0x08000000) == 0x08000000)) {
|
||||
if ((player->effects & 0x04000000) == 0x04000000) {
|
||||
func_80022B50(player, arg1);
|
||||
}
|
||||
if ((player->unk_0BC & 0x08000000) == 0x08000000) {
|
||||
if ((player->effects & 0x08000000) == 0x08000000) {
|
||||
func_80022BC4(player, arg1);
|
||||
}
|
||||
} else {
|
||||
@@ -913,7 +907,7 @@ void func_80022BC4(Player *player, UNUSED s8 arg1) {
|
||||
temp_f0 *= 0.8;
|
||||
temp_v0 = 0;
|
||||
if (temp_f0 <= 0.1) {
|
||||
player->unk_0BC &= 0xF7FFFFFF;
|
||||
player->effects &= 0xF7FFFFFF;
|
||||
temp_f0 = 0.0f;
|
||||
}
|
||||
}
|
||||
@@ -984,70 +978,70 @@ void func_80022E84(Player *player, s8 arg1, UNUSED s8 arg2, s8 arg3) {
|
||||
/**
|
||||
* Sets player shading/colour.
|
||||
*/
|
||||
void func_80022F14(UNUSED Player *player, s8 arg1, s32 arg2, f32 arg3) {
|
||||
D_80164B10[arg1] = (s16) ((f32)D_80164B10[arg1] - ((D_80164B10[arg1] - ((arg2 >> 16) & 0xFF)) * arg3));
|
||||
void change_player_color_effect_rgb(UNUSED Player *player, s8 arg1, s32 arg2, f32 arg3) {
|
||||
gPlayerRedEffect[arg1] = (s16) ((f32)gPlayerRedEffect[arg1] - ((gPlayerRedEffect[arg1] - ((arg2 >> 16) & 0xFF)) * arg3));
|
||||
|
||||
D_80164B20[arg1] = (s16) ((f32)D_80164B20[arg1] - ((D_80164B20[arg1] - ((arg2 >> 8) & 0xFF)) * arg3));
|
||||
gPlayerGreenEffect[arg1] = (s16) ((f32)gPlayerGreenEffect[arg1] - ((gPlayerGreenEffect[arg1] - ((arg2 >> 8) & 0xFF)) * arg3));
|
||||
|
||||
D_80164B30[arg1] = (s16) ((f32)D_80164B30[arg1] - ((D_80164B30[arg1] - (arg2 & 0xFF)) * arg3));
|
||||
gPlayerBlueEffect[arg1] = (s16) ((f32)gPlayerBlueEffect[arg1] - ((gPlayerBlueEffect[arg1] - (arg2 & 0xFF)) * arg3));
|
||||
}
|
||||
|
||||
void func_80023038(UNUSED Player *player, s8 arg1, s32 arg2, f32 arg3) {
|
||||
move_u16_towards(&D_80164B40[arg1], (arg2 >> 16) & 0xFF, arg3);
|
||||
move_u16_towards(&D_80164B50[arg1], (arg2 >> 8) & 0xFF, arg3);
|
||||
move_u16_towards(&D_80164B60[arg1], arg2 & 0xFF, arg3);
|
||||
void change_player_color_effect_cmy(UNUSED Player *player, s8 arg1, s32 arg2, f32 arg3) {
|
||||
move_u16_towards(&gPlayerCyanEffect[arg1], (arg2 >> 16) & 0xFF, arg3);
|
||||
move_u16_towards(&gPlayerMagentaEffect[arg1], (arg2 >> 8) & 0xFF, arg3);
|
||||
move_u16_towards(&gPlayerYellowEffect[arg1], arg2 & 0xFF, arg3);
|
||||
}
|
||||
|
||||
/**
|
||||
* Activates in the tunnel to shade the player a bit darker
|
||||
* Sort of an atmospheric effect.
|
||||
*/
|
||||
s32 func_800230E4(Player *player, s8 arg1) {
|
||||
bool is_player_under_light_luigi_raceway(Player *player, s8 arg1) {
|
||||
switch (gCurrentCourseId) {
|
||||
case 8:
|
||||
case COURSE_LUIGI_RACEWAY:
|
||||
if (((gNearestWaypointByPlayerId[arg1] >= 0x14F) && (gNearestWaypointByPlayerId[arg1] < 0x158))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x15E) && (gNearestWaypointByPlayerId[arg1] < 0x164))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x169) && (gNearestWaypointByPlayerId[arg1] < 0x170))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x174) && (gNearestWaypointByPlayerId[arg1] < 0x17A))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x17E) && (gNearestWaypointByPlayerId[arg1] < 0x184))) {
|
||||
func_80022F14(player, arg1, 0x1C0000, 0.3f);
|
||||
func_80023038(player, arg1, 0xE0, 0.3f);
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x17E) && (gNearestWaypointByPlayerId[arg1] < 0x184))) { // under a light in the tunnel
|
||||
change_player_color_effect_rgb(player, arg1, GPACK_RGB888(0x1C, 0x00, 0x00), 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xE0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
return 0;
|
||||
return FALSE;
|
||||
|
||||
default:
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
void func_800231D8(Player *player, s8 arg1) {
|
||||
switch(gCurrentCourseId) {
|
||||
case 2:
|
||||
case COURSE_BOWSER_CASTLE:
|
||||
if (((gNearestWaypointByPlayerId[arg1] >= 0x15) && (gNearestWaypointByPlayerId[arg1] < 0x2A))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x14D) && (gNearestWaypointByPlayerId[arg1] < 0x15C))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x1D1) && (gNearestWaypointByPlayerId[arg1] < 0x1E4))
|
||||
|| (player->unk_110.unk3C[2] >= 500.0f)) {
|
||||
func_80022F14(player, arg1, 0x340000, 0.3f);
|
||||
func_80023038(player, arg1, 0x4040, 0.3f);
|
||||
|| (player->unk_110.unk3C[2] >= 500.0f)) { // over lava
|
||||
change_player_color_effect_rgb(player, arg1, GPACK_RGB888(0x34, 0x00, 0x00), 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0x004040, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
} else if (((gNearestWaypointByPlayerId[arg1] >= 0xF1) && (gNearestWaypointByPlayerId[arg1] < 0xF5))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0xFB) && (gNearestWaypointByPlayerId[arg1] < 0xFF))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x105) && (gNearestWaypointByPlayerId[arg1] < 0x109))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x10F) && (gNearestWaypointByPlayerId[arg1] < 0x113))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x145) && (gNearestWaypointByPlayerId[arg1] < 0x14A))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x15E) && (gNearestWaypointByPlayerId[arg1] < 0x163))) {
|
||||
func_80022F14(player, arg1, 0x1C0000, 0.3f);
|
||||
func_80023038(player, arg1, 0xE0, 0.3f);
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x15E) && (gNearestWaypointByPlayerId[arg1] < 0x163))) { // under a lamp
|
||||
change_player_color_effect_rgb(player, arg1, 0x1C0000, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xE0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
} else {
|
||||
func_80022F14(player, arg1, 0, 0.3f);
|
||||
func_80023038(player, arg1, 0, 0.3f);
|
||||
} else { // normal color
|
||||
change_player_color_effect_rgb(player, arg1, 0, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
case COURSE_BANSHEE_BOARDWALK:
|
||||
if (((gNearestWaypointByPlayerId[arg1] >= 0xD) && (gNearestWaypointByPlayerId[arg1] < 0x15))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x29) && (gNearestWaypointByPlayerId[arg1] < 0x39))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x46) && (gNearestWaypointByPlayerId[arg1] < 0x4E))
|
||||
@@ -1065,19 +1059,19 @@ void func_800231D8(Player *player, s8 arg1) {
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x230) && (gNearestWaypointByPlayerId[arg1] < 0x23A))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x24C) && (gNearestWaypointByPlayerId[arg1] < 0x256))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x288) && (gNearestWaypointByPlayerId[arg1] < 0x269))
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x274) && (gNearestWaypointByPlayerId[arg1] < 0x27E))) {
|
||||
func_80022F14(player, arg1, 0x1C0000, 0.3f);
|
||||
func_80023038(player, arg1, 0xE0, 0.3f);
|
||||
|| ((gNearestWaypointByPlayerId[arg1] >= 0x274) && (gNearestWaypointByPlayerId[arg1] < 0x27E))) { // under a lamp
|
||||
change_player_color_effect_rgb(player, arg1, 0x1C0000, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0x0000E0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
} else {
|
||||
func_80022F14(player, arg1, 0, 0.3f);
|
||||
func_80023038(player, arg1, 0, 0.3f);
|
||||
} else { // normal color
|
||||
change_player_color_effect_rgb(player, arg1, 0, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
func_80022F14(player, arg1, 0, 0.3f);
|
||||
func_80023038(player, arg1, 0, 0.3f);
|
||||
default: // normal color
|
||||
change_player_color_effect_rgb(player, arg1, 0, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
break;
|
||||
}
|
||||
@@ -1086,54 +1080,54 @@ void func_800231D8(Player *player, s8 arg1) {
|
||||
void func_800235AC(Player *player, s8 arg1) {
|
||||
s32 temp;
|
||||
|
||||
if (((player->unk_000 & 0x100) == 0x100) && (player == gPlayerThree)) {
|
||||
func_80022F14(player, arg1, 0x1C0000, 0.3f);
|
||||
func_80023038(player, arg1, 0xE0, 0.3f);
|
||||
if (((player->type & 0x100) == 0x100) && (player == gPlayerThree)) {
|
||||
change_player_color_effect_rgb(player, arg1, 0x1C0000, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xE0, 0.3f);
|
||||
D_80164B80[arg1] = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
if (((player->unk_0CA & 0x10) == 0x10) && ((player->unk_0CA & 4) == 4)) {
|
||||
func_80022F14(player, arg1, 0x646464, 0.5f);
|
||||
func_80023038(player, arg1, 0xFF0000, 0.1f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x646464, 0.5f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xFF0000, 0.1f);
|
||||
return;
|
||||
}
|
||||
if ((player->unk_0CA & 4) == 4) {
|
||||
func_80022F14(player, arg1, 0, 1.0f);
|
||||
func_80023038(player, arg1, 0, 1.0f);
|
||||
change_player_color_effect_rgb(player, arg1, 0, 1.0f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 1.0f);
|
||||
return;
|
||||
}
|
||||
if ((player->unk_0CA & 0x10) == 0x10) {
|
||||
func_80022F14(player, arg1, 0x646464, 0.5f);
|
||||
func_80023038(player, arg1, 0xFF0000, 0.1f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x646464, 0.5f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xFF0000, 0.1f);
|
||||
return;
|
||||
}
|
||||
if ((player->unk_0CA & 0x20) == 0x20) {
|
||||
func_80022F14(player, arg1, 0, 0.1f);
|
||||
func_80023038(player, arg1, 0, 0.1f);
|
||||
change_player_color_effect_rgb(player, arg1, 0, 0.1f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.1f);
|
||||
return;
|
||||
}
|
||||
|
||||
if (((player->unk_0BC & 0x40000000) == 0x40000000) && ((s32) player->unk_0B0 < 0x78)) {
|
||||
if (((player->effects & LIGHTNING_EFFECT) == LIGHTNING_EFFECT) && ((s32) player->unk_0B0 < 0x78)) {
|
||||
D_80164B80[arg1] += 5;
|
||||
if (D_80164B80[arg1] >= 0x1E) {
|
||||
D_80164B80[arg1] = 0;
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0) && (D_80164B80[arg1] < 0xB)) {
|
||||
func_80022F14(player, arg1, 0x808080, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x808080, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0xB) && (D_80164B80[arg1] < 0x15)) {
|
||||
func_80022F14(player, arg1, 0x70, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x70, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0x15) && (D_80164B80[arg1] < 0x1F)) {
|
||||
func_80022F14(player, arg1, 0x8F8F00, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x8F8F00, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if ((player->unk_0BC & 0x200) != 0) {
|
||||
if ((player->effects & 0x200) != 0) {
|
||||
temp = (s32)gCourseTimer - D_8018D930[arg1];
|
||||
if (temp <= 8) {
|
||||
|
||||
@@ -1146,42 +1140,42 @@ void func_800235AC(Player *player, s8 arg1) {
|
||||
D_80164B80[arg1] = 0;
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0) && (D_80164B80[arg1] <= 10)) {
|
||||
func_80022F14(player, arg1, 0x70, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x70, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0xB) && (D_80164B80[arg1] <= 20)) {
|
||||
func_80022F14(player, arg1, 0x707000, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x707000, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
if ((D_80164B80[arg1] >= 0x15) && (D_80164B80[arg1] <= 30)) {
|
||||
func_80022F14(player, arg1, 0x700000, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x700000, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
if (D_80164B80[arg1] >= 0x1F) {
|
||||
func_80022F14(player, arg1, 0x7000, 0.8f);
|
||||
func_80023038(player, arg1, 0, 0.8f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x7000, 0.8f);
|
||||
change_player_color_effect_cmy(player, arg1, 0, 0.8f);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (func_800230E4(player, arg1) != 1) {
|
||||
if (is_player_under_light_luigi_raceway(player, arg1) != TRUE) {
|
||||
if (((player->boundingBoxCorners[3].unk_14 & 1) == 1)
|
||||
|| ((player->boundingBoxCorners[3].unk_14 & 2) == 2)
|
||||
|| ((player->boundingBoxCorners[0].unk_14 & 3) == 3)) {
|
||||
func_80022F14(player, arg1, 0, 0.3f);
|
||||
func_80023038(player, arg1, 0x6F6F6F, 0.3f);
|
||||
change_player_color_effect_rgb(player, arg1, 0x000000, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0x6F6F6F, 0.3f);
|
||||
return;
|
||||
}
|
||||
func_800231D8(player, arg1);
|
||||
if ((player->unk_0CA & 0x1000) == 0x1000) {
|
||||
func_80022F14(player, arg1, 0, 0.3f);
|
||||
func_80023038(player, arg1, 0xF0F0F0, 0.3f);
|
||||
change_player_color_effect_rgb(player, arg1, 0, 0.3f);
|
||||
change_player_color_effect_cmy(player, arg1, 0xF0F0F0, 0.3f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_80023BF0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
if (((player->unk_0BC & 0x4000000) == 0x4000000) || ((player->unk_0BC & 0x8000000) == 0x8000000)) {
|
||||
if (((player->effects & 0x4000000) == 0x4000000) || ((player->effects & 0x8000000) == 0x8000000)) {
|
||||
func_80022CA8(player, arg1, arg2, arg3);
|
||||
} else {
|
||||
func_80022E84(player, arg1, arg2, arg3);
|
||||
@@ -1210,15 +1204,15 @@ void func_80023C84(Player *player, s8 arg1, s8 arg2) {
|
||||
spB0 = -coss(temp_t9 << 7) * 2;
|
||||
spAC = -sins(temp_t9 << 7) * 2;
|
||||
|
||||
if (((player->unk_0BC & 0x01000000) == 0x01000000)
|
||||
|| ((player->unk_0BC & 0x400) == 0x400)
|
||||
|| ((player->unk_0BC & 0x80000) == 0x80000)
|
||||
|| ((player->unk_0BC & 0x800000) == 0x800000)
|
||||
|| ((player->unk_0BC & 0x400) == 0x400)
|
||||
if (((player->effects & 0x01000000) == 0x01000000)
|
||||
|| ((player->effects & 0x400) == 0x400)
|
||||
|| ((player->effects & 0x80000) == 0x80000)
|
||||
|| ((player->effects & 0x800000) == 0x800000)
|
||||
|| ((player->effects & 0x400) == 0x400)
|
||||
|| ((player->unk_0CA & 2) == 2)
|
||||
|| ((player->unk_0BC & 0x02000000) == 0x02000000)
|
||||
|| ((player->unk_0BC & 0x10000) == 0x10000)
|
||||
|| ((player->unk_0BC & 8) == 8)) {
|
||||
|| ((player->effects & 0x02000000) == 0x02000000)
|
||||
|| ((player->effects & 0x10000) == 0x10000)
|
||||
|| ((player->effects & 8) == 8)) {
|
||||
|
||||
var_f2 = (f32) (1.0 - ((f64) player->unk_110.unk3C[2] * 0.02));
|
||||
if (var_f2 < 0.0f) {var_f2 = 0.0f;}
|
||||
@@ -1230,20 +1224,20 @@ void func_80023C84(Player *player, s8 arg1, s8 arg2) {
|
||||
spCC[0] = player->pos[0] + ((spB0 * sins(spC0)) + (spAC * coss(spC0)));
|
||||
spCC[1] = player->unk_074 + 1.0f;
|
||||
spCC[2] = player->pos[2] + ((spB0 * coss(spC0)) - (spAC * sins(spC0)));
|
||||
func_80042A20(sp118, spB4, spCC, (spC0 + player->unk_042), D_800DDBD4[player->characterId] * player->unk_224
|
||||
set_transform_matrix(sp118, spB4, spCC, (spC0 + player->unk_042), gCharacterSize[player->characterId] * player->size
|
||||
* var_f2);
|
||||
} else {
|
||||
spC4[0] = player->unk_0C4;
|
||||
spC4[0] = player->slopeAccel;
|
||||
spC4[1] = spC0;
|
||||
spC4[2] = player->unk_206 * 2;
|
||||
|
||||
spCC[0] = player->pos[0] + ((spB0 * sins(spC0)) + (spAC * coss(spC0)));
|
||||
spCC[1] = player->unk_074 + 1.0f;
|
||||
spCC[2] = player->pos[2] + ((spB0 * coss(spC0)) - (spAC * sins(spC0)));
|
||||
func_80021E10(sp118, spCC, spC4);
|
||||
func_80021F84(sp118, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
mtxf_translate_rotate(sp118, spCC, spC4);
|
||||
mtxf_scale2(sp118, gCharacterSize[player->characterId] * player->size);
|
||||
}
|
||||
func_80022180(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)], sp118);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)], sp118);
|
||||
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008D58);
|
||||
@@ -1253,13 +1247,13 @@ void func_80023C84(Player *player, s8 arg1, s8 arg2) {
|
||||
func_8004B414(0, 0, 0, 0xFF);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_CLD_SURF, G_RM_ZB_CLD_SURF2);
|
||||
gSPVertex(gDisplayListHead++, &D_800E51D0[0], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, (D_8018D474 + SOME_TEXTURE_POINTER_MATH), G_IM_FMT_I, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR
|
||||
| G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
func_8004B414(0, 0, 0, 0xFF);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_CLD_SURF, G_RM_ZB_CLD_SURF2);
|
||||
gSPVertex(gDisplayListHead++, &D_800E51D0[4], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPVertex(gDisplayListHead++, &D_800E5210[0], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
}
|
||||
|
||||
@@ -1288,11 +1282,11 @@ void func_80024374(Player *player, s8 arg1, s8 arg2) {
|
||||
|
||||
spCC[0] = player->pos[0] + ((spB0 * sins(spC0)) + (spAC * coss(spC0)));
|
||||
spCC[2] = player->pos[2] + ((spB0 * coss(spC0)) - (spAC * sins(spC0)));
|
||||
spCC[1] = D_80165C18[D_80183EA0[arg1]].pos[1] + sp94[arg1];
|
||||
spCC[1] = gObjectList[D_80183EA0[arg1]].pos[1] + sp94[arg1];
|
||||
|
||||
func_80021E10(sp118, spCC, spC4);
|
||||
func_80021F84(sp118, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
func_80022180(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)], sp118);
|
||||
mtxf_translate_rotate(sp118, spCC, spC4);
|
||||
mtxf_scale2(sp118, gCharacterSize[player->characterId] * player->size);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)], sp118);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxShadow[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008D58);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_NONE);
|
||||
@@ -1301,17 +1295,17 @@ void func_80024374(Player *player, s8 arg1, s8 arg2) {
|
||||
func_8004B414(0, 0, 0, 0x000000D0);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_CLD_SURF, G_RM_ZB_CLD_SURF2);
|
||||
gSPVertex(gDisplayListHead++, &D_800E51D0[0], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, (D_8018D474 + SOME_TEXTURE_POINTER_MATH), G_IM_FMT_I, G_IM_SIZ_8b, 64, 32, 0,
|
||||
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
func_8004B414(0, 0, 0, 0x000000D0);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_CLD_SURF, G_RM_ZB_CLD_SURF2);
|
||||
gSPVertex(gDisplayListHead++, &D_800E5210[0], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
}
|
||||
|
||||
void func_800248D0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
void player_render(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
s32 pad;
|
||||
Mat4 sp1A4;
|
||||
s32 pad2[17];
|
||||
@@ -1334,14 +1328,14 @@ void func_800248D0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
} else {
|
||||
thing = (u16)(player->unk_048[arg2] + player->unk_02C[1] + player->unk_0C0);
|
||||
temp_v1 = player->unk_0CC[arg2] * sins(thing);
|
||||
if ((player->unk_0BC & 8) == 8) {
|
||||
if ((player->effects & 8) == 8) {
|
||||
sp14C[0] = cameras[arg2].rot[0] - 0x4000;
|
||||
} else {
|
||||
sp14C[0] = -temp_v1 * 0.8;
|
||||
}
|
||||
sp14C[1] = player->unk_048[arg2];
|
||||
sp14C[2] = player->unk_050[arg2];
|
||||
if (((s32)player->unk_0BC & 0x04000000) == 0x04000000) {
|
||||
if (((s32)player->effects & 0x04000000) == 0x04000000) {
|
||||
func_80062B18(&sp148, &sp144, &sp140, 0.0f, 8.0f, 0.0f, -player->unk_048[arg2], player->unk_050[arg2]);
|
||||
sp154[1] = (player->pos[1] - player->boundingBoxSize) + player->unk_108;
|
||||
sp154[0] = player->pos[0] + sp148;
|
||||
@@ -1353,7 +1347,7 @@ void func_800248D0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
sp154[2] = player->pos[2] + sp140;
|
||||
}
|
||||
}
|
||||
D_80164B04 = &D_802F1F80[D_801651D0[arg2][arg1]][arg2][arg1 << 7];
|
||||
D_80164B04 = &D_802F1F80[D_801651D0[arg2][arg1]][arg2][arg1 * 0x80];
|
||||
if ((arg2 == 0) || (arg2 == 1)) {
|
||||
D_80164B08 = &D_802BFB80[D_801651D0[arg2][arg1]][arg2][arg1].pixel_index_array[0];
|
||||
D_80164B0C = &D_802BFB80[D_801651D0[arg2][arg1]][arg2][arg1].pixel_index_array[0x7C0];
|
||||
@@ -1361,52 +1355,52 @@ void func_800248D0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
D_80164B08 = &D_802BFB80[D_801651D0[arg2][arg1]][arg2 - 1][arg1 - 4].pixel_index_array[0];
|
||||
D_80164B0C = &D_802BFB80[D_801651D0[arg2][arg1]][arg2 - 1][arg1 - 4].pixel_index_array[0x7C0];
|
||||
}
|
||||
func_80021E10(sp1A4, sp154, sp14C);
|
||||
func_80021F84(sp1A4, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
func_80022180(&gGfxPool->mtxKart[arg1 + (arg2 * 8)], sp1A4);
|
||||
if ((player->unk_0BC & 0x80000000) == 0x80000000) {
|
||||
mtxf_translate_rotate(sp1A4, sp154, sp14C);
|
||||
mtxf_scale2(sp1A4, gCharacterSize[player->characterId] * player->size);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxKart[arg1 + (arg2 * 8)], sp1A4);
|
||||
if ((player->effects & 0x80000000) == 0x80000000) {
|
||||
if (arg2 == arg1) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxKart[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, D_80164B04);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614(D_80164B10[arg1], D_80164B20[arg1], D_80164B30[arg1], D_80164B40[arg1], D_80164B50[arg1], D_80164B60[arg1], (s32) player->unk_0C6);
|
||||
func_8004B614(gPlayerRedEffect[arg1], gPlayerGreenEffect[arg1], gPlayerBlueEffect[arg1], gPlayerCyanEffect[arg1], gPlayerMagentaEffect[arg1], gPlayerYellowEffect[arg1], (s32) player->unk_0C6);
|
||||
gDPSetRenderMode(gDisplayListHead++, AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c1(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA), AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c2(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA));
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxKart[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, D_80164B04);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614(D_80164B10[arg1], D_80164B20[arg1], D_80164B30[arg1], D_80164B40[arg1], D_80164B50[arg1], D_80164B60[arg1], D_8018D970[arg1]);
|
||||
func_8004B614(gPlayerRedEffect[arg1], gPlayerGreenEffect[arg1], gPlayerBlueEffect[arg1], gPlayerCyanEffect[arg1], gPlayerMagentaEffect[arg1], gPlayerYellowEffect[arg1], D_8018D970[arg1]);
|
||||
gDPSetRenderMode(gDisplayListHead++, AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c1(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA), AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c2(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA));
|
||||
}
|
||||
} else if (((player->unk_0CA & 4) == 4) || (player->statusEffects & 0x08000000) || (player->statusEffects & 0x04000000)) {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxKart[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, D_80164B04);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614(D_80164B10[arg1], D_80164B20[arg1], D_80164B30[arg1], D_80164B40[arg1], D_80164B50[arg1], D_80164B60[arg1], (s32) player->unk_0C6);
|
||||
func_8004B614(gPlayerRedEffect[arg1], gPlayerGreenEffect[arg1], gPlayerBlueEffect[arg1], gPlayerCyanEffect[arg1], gPlayerMagentaEffect[arg1], gPlayerYellowEffect[arg1], (s32) player->unk_0C6);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_DITHER);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_XLU_SURF, G_RM_ZB_XLU_SURF2);
|
||||
} else {
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxKart[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, D_80164B04);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614(D_80164B10[arg1], D_80164B20[arg1], D_80164B30[arg1], D_80164B40[arg1], D_80164B50[arg1], D_80164B60[arg1], (s32) player->unk_0C6);
|
||||
func_8004B614(gPlayerRedEffect[arg1], gPlayerGreenEffect[arg1], gPlayerBlueEffect[arg1], gPlayerCyanEffect[arg1], gPlayerMagentaEffect[arg1], gPlayerYellowEffect[arg1], (s32) player->unk_0C6);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_AA_ZB_TEX_EDGE, G_RM_AA_ZB_TEX_EDGE2);
|
||||
}
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B08, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B0C, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3 + 4], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_NONE);
|
||||
}
|
||||
|
||||
void func_800256F4(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
void ghost_render(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
s32 pad;
|
||||
Mat4 sp12C;
|
||||
s32 pad2[17];
|
||||
@@ -1433,7 +1427,7 @@ void func_800256F4(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
spDC[1] = (player->pos[1] - player->boundingBoxSize) + (spCC - 2.0);
|
||||
spDC[0] = player->pos[0] + spD0;
|
||||
spDC[2] = player->pos[2] + spC8;
|
||||
D_80164B04 = &D_802F1F80[D_801651D0[arg2][arg1]][arg2][arg1 << 7];
|
||||
D_80164B04 = &D_802F1F80[D_801651D0[arg2][arg1]][arg2][arg1 * 0x80];
|
||||
if ((arg2 == 0) || (arg2 == 1)) {
|
||||
D_80164B08 = &D_802BFB80[D_801651D0[arg2][arg1]][arg2][arg1].pixel_index_array[0];
|
||||
D_80164B0C = &D_802BFB80[D_801651D0[arg2][arg1]][arg2][arg1].pixel_index_array[0x7C0];
|
||||
@@ -1441,21 +1435,21 @@ void func_800256F4(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
D_80164B08 = &D_802BFB80[D_801651D0[arg2][arg1]][arg2 - 1][arg1 - 4].pixel_index_array[0];
|
||||
D_80164B0C = &D_802BFB80[D_801651D0[arg2][arg1]][arg2 - 1][arg1 - 4].pixel_index_array[0x7C0];
|
||||
}
|
||||
func_80021E10(sp12C, spDC, spD4);
|
||||
func_80021F84(sp12C, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
func_80022180(&gGfxPool->mtxKart[arg1 + (arg2 * 8)], sp12C);
|
||||
mtxf_translate_rotate(sp12C, spDC, spD4);
|
||||
mtxf_scale2(sp12C, gCharacterSize[player->characterId] * player->size);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxKart[arg1 + (arg2 * 8)], sp12C);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxKart[arg1 + (arg2 * 8)]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, D_80164B04);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614(D_80164B10[arg1], D_80164B20[arg1], D_80164B30[arg1], D_80164B40[arg1], D_80164B50[arg1], D_80164B60[arg1], spC2);
|
||||
func_8004B614(gPlayerRedEffect[arg1], gPlayerGreenEffect[arg1], gPlayerBlueEffect[arg1], gPlayerCyanEffect[arg1], gPlayerMagentaEffect[arg1], gPlayerYellowEffect[arg1], spC2);
|
||||
gDPSetRenderMode(gDisplayListHead++, AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c1(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA), AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c2(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA));
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B08, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B0C, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3 + 4], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
gDPSetAlphaCompare(gDisplayListHead++, G_AC_NONE);
|
||||
}
|
||||
@@ -1471,54 +1465,54 @@ void func_80025DE8(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
sp94[0] = -0x00B6;
|
||||
sp94[1] = player->unk_048[arg2];
|
||||
sp94[2] = player->unk_050[arg2];
|
||||
func_80021E10(spA8, sp9C, sp94);
|
||||
func_80021F84(spA8, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
func_80022180(&gGfxPool->mtxEffect[gMatrixEffectCount], spA8);
|
||||
mtxf_translate_rotate(spA8, sp9C, sp94);
|
||||
mtxf_scale2(spA8, gCharacterSize[player->characterId] * player->size);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxEffect[gMatrixEffectCount], spA8);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxEffect[gMatrixEffectCount]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008D10);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614((s32) D_80164B10[arg1], (s32) D_80164B20[arg1], (s32) D_80164B30[arg1], (s32) D_80164B40[arg1], (s32) D_80164B50[arg1], (s32) D_80164B60[arg1], 0x00000040);
|
||||
func_8004B614((s32) gPlayerRedEffect[arg1], (s32) gPlayerGreenEffect[arg1], (s32) gPlayerBlueEffect[arg1], (s32) gPlayerCyanEffect[arg1], (s32) gPlayerMagentaEffect[arg1], (s32) gPlayerYellowEffect[arg1], 0x00000040);
|
||||
gDPSetRenderMode(gDisplayListHead++, AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c1(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA), AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_WRAP | ZMODE_XLU | CVG_X_ALPHA | FORCE_BL | GBL_c2(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA));
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B08, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B0C, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3 + 4], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
gMatrixEffectCount += 1;
|
||||
}
|
||||
|
||||
void func_800262E0(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
void player_ice_reflection_render(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
Mat4 spA8;
|
||||
Vec3f sp9C;
|
||||
Vec3s sp94;
|
||||
|
||||
sp94[0] = 0;
|
||||
sp94[1] = player->unk_048[arg2];
|
||||
sp94[2] = player->unk_050[arg2] + 0x8000;
|
||||
sp94[2] = player->unk_050[arg2] + 0x8000; // invert Y
|
||||
sp9C[0] = player->pos[0];
|
||||
sp9C[1] = player->unk_074 + (4.0f * player->unk_224);
|
||||
sp9C[1] = player->unk_074 + (4.0f * player->size);
|
||||
sp9C[2] = player->pos[2];
|
||||
if (!(player->unk_002 & (4 << (arg2 * 4)))) {
|
||||
arg3 = 8;
|
||||
} else {
|
||||
arg3 = 0;
|
||||
}
|
||||
func_80021E10(spA8, sp9C, sp94);
|
||||
func_80021F84(spA8, D_800DDBD4[player->characterId] * player->unk_224);
|
||||
func_80022180(&gGfxPool->mtxEffect[gMatrixEffectCount], spA8);
|
||||
mtxf_translate_rotate(spA8, sp9C, sp94);
|
||||
mtxf_scale2(spA8, gCharacterSize[player->characterId] * player->size);
|
||||
convert_to_fixed_point_matrix(&gGfxPool->mtxEffect[gMatrixEffectCount], spA8);
|
||||
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxEffect[gMatrixEffectCount]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008CD8);
|
||||
gSPDisplayList(gDisplayListHead++, common_setting_render_character);
|
||||
gDPSetTextureLUT(gDisplayListHead++, G_TT_RGBA16);
|
||||
func_8004B614((s32) D_80164B10[arg1], (s32) D_80164B20[arg1], (s32) D_80164B30[arg1], (s32) D_80164B40[arg1], (s32) D_80164B50[arg1], (s32) D_80164B60[arg1], (s16) player->unk_0C6 / 2);
|
||||
func_8004B614((s32) gPlayerRedEffect[arg1], (s32) gPlayerGreenEffect[arg1], (s32) gPlayerBlueEffect[arg1], (s32) gPlayerCyanEffect[arg1], (s32) gPlayerMagentaEffect[arg1], (s32) gPlayerYellowEffect[arg1], (s16) player->unk_0C6 / 2);
|
||||
gDPSetRenderMode(gDisplayListHead++, G_RM_ZB_XLU_SURF, G_RM_ZB_XLU_SURF2);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B08, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, D_80164B0C, G_IM_FMT_CI, G_IM_SIZ_8b, 64, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPVertex(gDisplayListHead++, &D_800DDBB4[arg1][arg3 + 4], 4, 0);
|
||||
gSPDisplayList(gDisplayListHead++, D_0D008C78);
|
||||
gSPDisplayList(gDisplayListHead++, common_square_plain_render);
|
||||
gSPTexture(gDisplayListHead++, 1, 1, 0, G_TX_RENDERTILE, G_OFF);
|
||||
gMatrixEffectCount += 1;
|
||||
}
|
||||
@@ -1538,7 +1532,7 @@ void func_800267AC(Player *player, s8 arg1, s8 arg2) {
|
||||
func_80023BF0(player, arg1, arg2, var_v1);
|
||||
temp_t1 = 8 << (arg2 * 4);
|
||||
if ((temp_t1 == (player->unk_002 & temp_t1)) && (player->unk_110.unk3C[2] <= 50.0f) && (player->unk_0F8 != 9)) {
|
||||
if ((player->unk_0BC & 0x80000000) == 0x80000000) {
|
||||
if ((player->effects & 0x80000000) == 0x80000000) {
|
||||
if (arg1 == arg2) {
|
||||
func_80023C84(player, arg1, arg2);
|
||||
}
|
||||
@@ -1546,14 +1540,14 @@ void func_800267AC(Player *player, s8 arg1, s8 arg2) {
|
||||
func_80023C84(player, arg1, arg2);
|
||||
}
|
||||
}
|
||||
if ((player->unk_000 & 0x100) != 0x100) {
|
||||
func_800248D0(player, arg1, arg2, var_v1);
|
||||
if ((player->type & PLAYER_INVISIBLE_OR_BOMB) != PLAYER_INVISIBLE_OR_BOMB) {
|
||||
player_render(player, arg1, arg2, var_v1);
|
||||
} else {
|
||||
func_800256F4(player, arg1, arg2, var_v1);
|
||||
ghost_render(player, arg1, arg2, var_v1);
|
||||
}
|
||||
osRecvMesg(&gDmaMesgQueue, &sp34, OS_MESG_BLOCK);
|
||||
if ((temp_t1 == (player->unk_002 & temp_t1)) && (player->unk_0F8 == 9) && ((player->unk_0CA & 1) != 1) && (player->unk_110.unk3C[2] <= 30.0f)) {
|
||||
func_800262E0(player, arg1, arg2, var_v1);
|
||||
player_ice_reflection_render(player, arg1, arg2, var_v1);
|
||||
}
|
||||
if (player->boostPower >= 2.0f) {
|
||||
func_80025DE8(player, arg1, arg2, var_v1);
|
||||
@@ -1563,7 +1557,7 @@ void func_800267AC(Player *player, s8 arg1, s8 arg2) {
|
||||
void func_80026A48(Player *player, s8 arg1) {
|
||||
f32 temp_f0;
|
||||
|
||||
if (((player->unk_0BC & 0x4000) == 0x4000) && ((player->unk_000 & 0x2000) == 0)) {
|
||||
if (((player->effects & 0x4000) == 0x4000) && ((player->type & PLAYER_START_SEQUENCE) == 0)) {
|
||||
player->unk_240 += D_800DDE74[8];
|
||||
if (player->unk_240 >= 0x400) {
|
||||
player->unk_240 = 0;
|
||||
@@ -1599,12 +1593,12 @@ void func_80026B4C(Player *player, s8 arg1, s8 arg2, s8 arg3) {
|
||||
s32 temp_v0;
|
||||
s32 temp_v1;
|
||||
|
||||
temp_v1 = player->unk_0BC;
|
||||
temp_v1 = player->effects;
|
||||
temp_v0 = arg1 * 2;
|
||||
temp_t0 = *(D_801650D0 + ((arg2 * 0x10) + temp_v0));
|
||||
temp_t1 = *(D_80165110 + ((arg2 * 0x10) + temp_v0));
|
||||
temp_t2 = player->unk242;
|
||||
if (((temp_v1 & 0x4000) == 0x4000) && !(player->unk_000 & 0x2000)) {
|
||||
if (((temp_v1 & 0x4000) == 0x4000) && !(player->type & PLAYER_STAGING)) {
|
||||
if (((temp_v1 & 0x80) != 0x80) && ((temp_v1 & 0x40) != 0x40) && ((temp_v1 & 0x20000) != 0x20000) && ((temp_v1 & 0x80000) != 0x80000) && ((temp_v1 & 0x800000) != 0x800000) && !(player->unk_044 & 0x800)) {
|
||||
if (temp_t0 < 0x15) {
|
||||
func_80027C74(player, (s32) D_800DDE34[player->characterId][temp_t1][temp_t0][temp_t2 >> 8], (arg3 << 0xE) + (arg2 << 0xC) + (arg1 << 9) + 0x180 + D_802F1F80, 0x0080U);
|
||||
|
||||
+18
-18
@@ -11,7 +11,7 @@
|
||||
|
||||
void func_8001F980(s32*, s32*);
|
||||
void func_8001F9E4(Player*, Camera*, s8);
|
||||
u16 func_8001FB0C(Player*, Camera*, f32, f32);
|
||||
u16 check_player_camera_collision(Player*, Camera*, f32, f32);
|
||||
u16 func_8001FD78(Player*, f32, f32, f32);
|
||||
void func_80020000(Player*, Camera*, s8, s8);
|
||||
void func_80020524(void);
|
||||
@@ -27,11 +27,11 @@ void func_80021B0C(void);
|
||||
void func_80021C78(void);
|
||||
void func_80021D40(void);
|
||||
void func_80021DA8(void);
|
||||
void func_80021E10(Mat4, Vec3f, Vec3s);
|
||||
void mtxf_translate_rotate(Mat4, Vec3f, Vec3s);
|
||||
void func_80021F50(Mat4, Vec3f);
|
||||
void func_80021F84(Mat4, f32);
|
||||
void mtxf_scale2(Mat4, f32);
|
||||
void func_80021FF8(Mtx*, Mat4);
|
||||
void func_80022180(Mtx*, Mat4);
|
||||
void convert_to_fixed_point_matrix(Mtx*, Mat4);
|
||||
s32 func_800224F0(s16*, s16, s16);
|
||||
void move_s32_towards(s32*, s32, f32);
|
||||
void move_f32_towards(f32*, f32, f32);
|
||||
@@ -46,18 +46,18 @@ void func_80022CA8(Player*, s8, s8, s8);
|
||||
void func_80022D60(Player*, s8, s8, s8);
|
||||
void func_80022DB4(Player*, s8);
|
||||
void func_80022E84(Player*, s8, s8, s8);
|
||||
void func_80022F14(Player*, s8, s32, f32);
|
||||
void func_80023038(Player*, s8, s32, f32);
|
||||
s32 func_800230E4(Player*, s8);
|
||||
void change_player_color_effect_rgb(Player*, s8, s32, f32);
|
||||
void change_player_color_effect_cmy(Player*, s8, s32, f32);
|
||||
s32 is_player_under_light_luigi_raceway(Player*, s8);
|
||||
void func_800231D8(Player*, s8);
|
||||
void func_800235AC(Player*, s8);
|
||||
void func_80023BF0(Player*, s8, s8, s8);
|
||||
void func_80023C84(Player*, s8, s8);
|
||||
void func_80024374(Player*, s8, s8);
|
||||
void func_800248D0(Player*, s8, s8, s8);
|
||||
void func_800256F4(Player*, s8, s8, s8);
|
||||
void player_render(Player*, s8, s8, s8);
|
||||
void ghost_render(Player*, s8, s8, s8);
|
||||
void func_80025DE8(Player*, s8, s8, s8);
|
||||
void func_800262E0(Player*, s8, s8, s8);
|
||||
void player_ice_reflection_render(Player*, s8, s8, s8);
|
||||
void func_800267AC(Player*, s8, s8);
|
||||
void func_80026A48(Player*, s8);
|
||||
void func_80026B4C(Player*, s8, s8, s8);
|
||||
@@ -77,24 +77,24 @@ extern s16 D_80164AB0[];
|
||||
extern s16 D_80164ABE[];
|
||||
extern s16 D_80164AC0[];
|
||||
extern Player *D_80164AD0[];
|
||||
extern u16 D_80164B10[];
|
||||
extern u16 D_80164B20[];
|
||||
extern u16 D_80164B30[];
|
||||
extern u16 D_80164B40[];
|
||||
extern u16 D_80164B50[];
|
||||
extern u16 D_80164B60[];
|
||||
extern u16 gPlayerRedEffect[];
|
||||
extern u16 gPlayerGreenEffect[];
|
||||
extern u16 gPlayerBlueEffect[];
|
||||
extern u16 gPlayerCyanEffect[];
|
||||
extern u16 gPlayerMagentaEffect[];
|
||||
extern u16 gPlayerYellowEffect[];
|
||||
extern s32 D_80164B80[];
|
||||
|
||||
extern u8 *D_8018D474;
|
||||
extern s32 D_8018D930[];
|
||||
|
||||
extern Gfx D_0D008C78[];
|
||||
extern Gfx common_square_plain_render[];
|
||||
extern Gfx D_0D008D58[];
|
||||
|
||||
extern s32 D_800DDB58;
|
||||
extern void *D_800DDB5C[];
|
||||
extern Vtx *D_800DDBB4[];
|
||||
extern f32 D_800DDBD4[];
|
||||
extern f32 gCharacterSize[];
|
||||
extern s32 D_800DDE74[];
|
||||
extern Vtx D_800E51D0[];
|
||||
extern Vtx D_800E5210[];
|
||||
|
||||
+51
-51
@@ -18,20 +18,20 @@ UNUSED void func_8003DC50(Player *player, Vec3f arg1) {
|
||||
if (player->unk_230 <= player->unk_23C) {
|
||||
if (player->unk_110.unk48[1] >= 0.1736) {
|
||||
arg1[0] = (player->unk_206 / 182) * 0x78;
|
||||
arg1[2] = -(player->unk_0C4 / 182) * 0x78;
|
||||
arg1[2] = -(player->slopeAccel / 182) * 0x78;
|
||||
} else {
|
||||
arg1[0] = thing1;
|
||||
arg1[2] = thing2;
|
||||
}
|
||||
} else if (player->unk_110.unk48[1] >= 0.1736) {
|
||||
arg1[0] = (player->unk_206 / 182) * 0x78;
|
||||
arg1[2] = -(player->unk_0C4 / 182) * 0x78;
|
||||
arg1[2] = -(player->slopeAccel / 182) * 0x78;
|
||||
} else {
|
||||
arg1[0] = thing1;
|
||||
arg1[2] = thing2;
|
||||
}
|
||||
arg1[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg1, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg1, player->orientationMatrix);
|
||||
}
|
||||
|
||||
UNUSED void func_8003DE4C(Player *player, Vec3f arg1) {
|
||||
@@ -42,20 +42,20 @@ UNUSED void func_8003DE4C(Player *player, Vec3f arg1) {
|
||||
if (player->unk_230 <= player->unk_23C) {
|
||||
if (player->unk_110.unk54[1] >= 0.1736) {
|
||||
arg1[0] = (player->unk_206 / 182) * 0x78;
|
||||
arg1[2] = -(player->unk_0C4 / 182) * 0x78;
|
||||
arg1[2] = -(player->slopeAccel / 182) * 0x78;
|
||||
} else {
|
||||
arg1[0] = thing1;
|
||||
arg1[2] = thing2;
|
||||
}
|
||||
} else if (player->unk_110.unk54[1] >= 0.1736) {
|
||||
arg1[0] = (player->unk_206 / 182) * 0x78;
|
||||
arg1[2] = -(player->unk_0C4 / 182) * 0x78;
|
||||
arg1[2] = -(player->slopeAccel / 182) * 0x78;
|
||||
} else {
|
||||
arg1[0] = thing1;
|
||||
arg1[2] = thing2;
|
||||
}
|
||||
arg1[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg1, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg1, player->orientationMatrix);
|
||||
}
|
||||
// Stick to ground?
|
||||
void func_8003E048(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -65,23 +65,23 @@ void func_8003E048(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8002A5F4(arg1, *arg4, arg2, 1, 2);
|
||||
if (player->unk_110.unk60[1] <= 0.8829f) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
func_80031F48(player, 4.0f);
|
||||
player->unk_DAC = 0.5f;
|
||||
if ((player->unk_0BC & 0x2000) != 0) {
|
||||
if ((player->effects & 0x2000) != 0) {
|
||||
func_8008D554(player);
|
||||
player->unk_09C /= 2;
|
||||
player->currentSpeed /= 2;
|
||||
player->unk_08C /= 2;
|
||||
}
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x32);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x3C);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x3C);
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003E37C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -91,25 +91,25 @@ void func_8003E37C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2);
|
||||
if ((player->unk_110.unk60[1] <= 0.7318f) || (player->unk_0F8 == 0x000C)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
if (((player->unk_094 / 18.0f) * 216.0f) >= 8.0f) {
|
||||
func_80031F48(player, 5.0f);
|
||||
}
|
||||
player->unk_DAC = 0.5f;
|
||||
if ((player->unk_0BC & 0x2000) != 0) {
|
||||
if ((player->effects & 0x2000) != 0) {
|
||||
func_8008D554(player);
|
||||
player->unk_09C /= 2;
|
||||
player->currentSpeed /= 2;
|
||||
player->unk_08C /= 2;
|
||||
}
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x32);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003E6EC(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -119,18 +119,18 @@ void func_8003E6EC(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2);
|
||||
if (player->unk_110.unk60[1] <= 0.8829f) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
func_80031F48(player, 4.0f);
|
||||
func_8003DC40(player);
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x32);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x3C);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x3C);
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003E9EC(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -140,28 +140,28 @@ void func_8003E9EC(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8002A5F4(arg1, *arg4, arg2, 1.2f, 2);
|
||||
if (player->unk_110.unk60[1] <= 0.8357f) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x78);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
func_80031F48(player, 4.0f);
|
||||
func_8003DC40(player);
|
||||
} else {
|
||||
if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
if ((player->boundingBoxCorners[2].surfaceType == 1) || (player->boundingBoxCorners[3].surfaceType == 1) || (player->boundingBoxCorners[1].surfaceType == 1) || (player->boundingBoxCorners[0].surfaceType == 1)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 5);
|
||||
} else {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x28);
|
||||
}
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x28);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x28);
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
if ((player->unk_0BC & 0x10000) != 0) {
|
||||
if ((player->effects & 0x10000) != 0) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x78);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
}
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003EE2C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -171,18 +171,18 @@ void func_8003EE2C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2);
|
||||
if (player->unk_110.unk60[1] <= 0.8357f) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x78);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xB4);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xB4);
|
||||
func_80031F48(player, 4.0f);
|
||||
func_8003DC40(player);
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x32);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x3C);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x3C);
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003F138(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -195,21 +195,21 @@ void func_8003F138(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
}
|
||||
if (player->unk_110.unk60[1] <= 0.8357f) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0xC8);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0xC8);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0xC8);
|
||||
func_80031F48(player, 4.0f);
|
||||
player->unk_DAC = 0.5f;
|
||||
arg3[0] = 0;
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->unk_0BC & 0x10000) == 0x10000)) {
|
||||
} else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) {
|
||||
arg3[0] = ((player->unk_206 / 182) * 0x78);
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x78);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x78);
|
||||
arg3[0] = 0;
|
||||
} else {
|
||||
arg3[0] = 0.0f;
|
||||
arg3[2] = (-(player->unk_0C4 / 182) * 0x32);
|
||||
arg3[2] = (-(player->slopeAccel / 182) * 0x32);
|
||||
}
|
||||
arg3[1] = 0.0f;
|
||||
arg3[2] = 0.0f;
|
||||
mtxf_translate_vec3f_mat3(arg3, player->unk_174);
|
||||
mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix);
|
||||
}
|
||||
|
||||
void func_8003F46C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7) {
|
||||
@@ -250,7 +250,7 @@ void func_8003F46C(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4
|
||||
func_8003E048(player, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
|
||||
break;
|
||||
}
|
||||
if (player->unk_0BC & 0x10000) {
|
||||
if (player->effects & 0x10000) {
|
||||
player->unk_DAC = 0.5f;
|
||||
}
|
||||
}
|
||||
@@ -268,7 +268,7 @@ void func_8003F734(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
*arg4 += arg1[0] * player->unk_110.unk3C[0] * 1;
|
||||
*arg5 += arg1[1] * player->unk_110.unk3C[0] * 0.1;
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[0] * 1;
|
||||
if ((player->unk_0C4 < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) {
|
||||
if ((player->slopeAccel < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) {
|
||||
func_8002A5F4(arg1, *arg3, arg2, 2.5f, 0);
|
||||
} else {
|
||||
func_8002A5F4(arg1, *arg3, arg2, 0.5f, 0);
|
||||
@@ -278,7 +278,7 @@ void func_8003F734(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
*arg5 += arg1[1] * player->unk_110.unk3C[0] * 0.1;
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[0] * 1;
|
||||
func_8002A5F4(arg1, *arg3, arg2, 1, 0);
|
||||
if ((!(player->unk_0BC & 0x10000)) && ((player->unk_0BC & 8) == 0)) {
|
||||
if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) {
|
||||
arg2[1] *= -1e-05;
|
||||
}
|
||||
} else {
|
||||
@@ -291,11 +291,11 @@ void func_8003F734(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
}
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[0] * 1;
|
||||
func_8002A5F4(arg1, *arg3, arg2, 1.2f, 0);
|
||||
if ((!(player->unk_0BC & 0x10000)) && ((player->unk_0BC & 8) == 0)) {
|
||||
if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) {
|
||||
arg2[1] *= -1e-05;
|
||||
}
|
||||
}
|
||||
player->unk_0BC &= ~0x10;
|
||||
player->effects &= ~0x10;
|
||||
temp_f12 = player->unk_110.unk3C[0] * arg1[0];
|
||||
temp_f14 = player->unk_110.unk3C[0] * arg1[2];
|
||||
if (((temp_f12 >= 0) && (temp_f14 >= 0)) || ((temp_f12 < 0) && (temp_f14 >= 0))) {
|
||||
@@ -322,7 +322,7 @@ void func_8003FBAC(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
*arg4 += arg1[0] * player->unk_110.unk3C[1] * 1;
|
||||
*arg5 += arg1[1] * player->unk_110.unk3C[1] * 0.1;
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[1] * 1;
|
||||
if ((player->unk_0C4 < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) {
|
||||
if ((player->slopeAccel < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) {
|
||||
func_8002A5F4(arg1, *arg3, arg2, 1.5f, 0);
|
||||
} else {
|
||||
func_8002A5F4(arg1, *arg3, arg2, 0.5f, 0);
|
||||
@@ -332,7 +332,7 @@ void func_8003FBAC(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
*arg5 += arg1[1] * player->unk_110.unk3C[1] * 0.1;
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[1] * 1;
|
||||
func_8002A5F4(arg1, *arg3, arg2, 1, 0);
|
||||
if ((!(player->unk_0BC & 0x10000)) && ((player->unk_0BC & 8) == 0)) {
|
||||
if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) {
|
||||
arg2[1] *= -1e-05;
|
||||
}
|
||||
} else {
|
||||
@@ -345,11 +345,11 @@ void func_8003FBAC(Player *player, Vec3f arg1, Vec3f arg2, f32 *arg3, f32 *arg4,
|
||||
}
|
||||
*arg6 += arg1[2] * player->unk_110.unk3C[1] * 1;
|
||||
func_8002A5F4(arg1, *arg3, arg2, 1.2f, 0);
|
||||
if ((!(player->unk_0BC & 0x10000)) && ((player->unk_0BC & 8) == 0)) {
|
||||
if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) {
|
||||
arg2[1] *= -1e-05;
|
||||
}
|
||||
}
|
||||
player->unk_0BC &= ~0x10;
|
||||
player->effects &= ~0x10;
|
||||
temp_f12 = player->unk_110.unk3C[1] * arg1[0];
|
||||
temp_f14 = player->unk_110.unk3C[1] * arg1[2];
|
||||
if (((temp_f12 >= 0) && (temp_f14 >= 0)) || ((temp_f12 >= 0) && (temp_f14 < 0))) {
|
||||
|
||||
+213
-213
File diff suppressed because it is too large
Load Diff
+14
-14
@@ -53,7 +53,7 @@ void func_80059780(void);
|
||||
void func_800597B8(void);
|
||||
void func_800597E8(void);
|
||||
void func_80059820(s32);
|
||||
void func_800598D4(s32);
|
||||
void randomize_seed_from_controller(s32);
|
||||
void func_8005994C(void);
|
||||
void func_8005995C(void);
|
||||
void func_80059A88(s32);
|
||||
@@ -231,15 +231,15 @@ extern s32 D_8018D22C;
|
||||
extern s8 D_80165898;
|
||||
extern Gfx D_0D0076F8[];
|
||||
extern s8 D_801657E4;
|
||||
extern s8 D_801657E6;
|
||||
extern bool8 D_801657E6;
|
||||
extern s32 D_8018D2AC;
|
||||
extern u16 D_800DC5B8;
|
||||
extern s8 D_801657F0;
|
||||
extern bool8 D_801657F0;
|
||||
extern s8 D_80165800[2];
|
||||
extern s8 D_80165801;
|
||||
extern s8 D_801657B0;
|
||||
extern u8 gControllerRandom;
|
||||
extern s32 D_8018D214;
|
||||
extern bool D_8018D214;
|
||||
extern s32 D_8018D2C8[];
|
||||
extern u8 *D_8018D420;
|
||||
extern u8 *D_8018D424;
|
||||
@@ -290,16 +290,16 @@ extern struct UnkStruct_800DC5EC *D_800DC5F8;
|
||||
|
||||
extern u16 gIsGamePaused;
|
||||
|
||||
extern s32 D_80164394;
|
||||
extern s32 D_80164398;
|
||||
extern s32 D_8016439C;
|
||||
extern f32 D_801652A0[];
|
||||
extern s32 D_801655C0;
|
||||
extern s32 D_801655F0;
|
||||
extern s32 D_80165678;
|
||||
extern s8 D_801657AE;
|
||||
extern s8 D_801657D8;
|
||||
extern s8 D_801657E8;
|
||||
extern s32 D_80164394;
|
||||
extern s32 D_80164398;
|
||||
extern s32 D_8016439C;
|
||||
extern f32 D_801652A0[];
|
||||
extern s32 D_801655C0;
|
||||
extern s32 D_801655F0;
|
||||
extern s32 D_80165678;
|
||||
extern s8 D_801657AE;
|
||||
extern s8 D_801657D8;
|
||||
extern bool8 D_801657E8;
|
||||
|
||||
extern s8 D_8018CAE0;
|
||||
extern s16 gGPCurrentRaceCharacterIdByRank[];
|
||||
|
||||
+94
-95
@@ -16,23 +16,23 @@
|
||||
#include "main.h"
|
||||
#include "menus.h"
|
||||
|
||||
void func_8006E9C0(void) {
|
||||
void init_object_list(void) {
|
||||
|
||||
func_8006EA5C();
|
||||
func_8006FA94();
|
||||
|
||||
switch (gScreenModeSelection) {
|
||||
case SCREEN_MODE_1P:
|
||||
func_80071428();
|
||||
init_hud_one_player();
|
||||
break;
|
||||
case SCREEN_MODE_2P_SPLITSCREEN_VERTICAL:
|
||||
func_80071818();
|
||||
init_hud_two_player_vertical();
|
||||
break;
|
||||
case SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL:
|
||||
func_80071A20();
|
||||
init_hud_two_player_horizontal();
|
||||
break;
|
||||
case SCREEN_MODE_3P_4P_SPLITSCREEN:
|
||||
func_80071C28();
|
||||
init_hud_three_four_player();
|
||||
break;
|
||||
}
|
||||
func_80070148();
|
||||
@@ -193,7 +193,7 @@ GLOBAL_ASM("asm/non_matchings/code_8006E9C0/func_8006EB10.s")
|
||||
#endif
|
||||
|
||||
void func_8006ED60() {
|
||||
bzero(D_80165C18, OBJECT_LIST_SIZE * sizeof(struct_80165C18_entry));
|
||||
bzero(gObjectList, OBJECT_LIST_SIZE * sizeof(Objects));
|
||||
D_80183D5C = -1;
|
||||
}
|
||||
|
||||
@@ -217,12 +217,12 @@ void func_8006EE44(void) {
|
||||
}
|
||||
|
||||
// Some kind of initalization for the Item Window part of the HUD
|
||||
void func_8006EE7C(s32 objectIndex) {
|
||||
struct_80165C18_entry *temp_v0;
|
||||
void init_item_window(s32 objectIndex) {
|
||||
ItemWindowObjects *temp_v0;
|
||||
|
||||
temp_v0 = &D_80165C18[objectIndex];
|
||||
temp_v0->unk_0A4 = 0;
|
||||
temp_v0->unk_0D2 = temp_v0->unk_0A4;
|
||||
temp_v0 = &gObjectList[objectIndex];
|
||||
temp_v0->currentItem = ITEM_NONE;
|
||||
temp_v0->itemDisplay = temp_v0->currentItem;
|
||||
temp_v0->tlutList = (s32 *) gTLUTItemWindowNone;
|
||||
temp_v0->activeTLUT = (s32 *) gTLUTItemWindowNone;
|
||||
temp_v0->textureList = gTextureItemWindowNone;
|
||||
@@ -565,7 +565,7 @@ block_26:
|
||||
if (gIsMirrorMode != 0) {
|
||||
D_8018D2E0 = D_8018D2B0 - D_8018D2E0;
|
||||
}
|
||||
temp_v0 = D_8018EDF3;
|
||||
temp_v0 = gPlayerCount;
|
||||
if (temp_v0 == 4) {
|
||||
D_8018D2C0.unk0 = 0x00A0;
|
||||
D_8018D2D8.unk0 = 0x0078;
|
||||
@@ -594,13 +594,13 @@ GLOBAL_ASM("asm/non_matchings/code_8006E9C0/func_8006F008.s")
|
||||
|
||||
extern u16 gIsGamePaused;
|
||||
extern s8 D_801657E4;
|
||||
extern s8 D_801657E6;
|
||||
extern s8 D_801657E8;
|
||||
extern s8 D_801657F0;
|
||||
extern bool8 D_801657E6;
|
||||
extern bool8 D_801657E8;
|
||||
extern bool8 D_801657F0;
|
||||
extern s8 D_801657F8;
|
||||
extern s8 D_80165808;
|
||||
extern s8 D_80165810;
|
||||
extern s8 D_80165818;
|
||||
extern bool8 D_80165810;
|
||||
extern bool8 D_80165818;
|
||||
extern s8 D_80165820;
|
||||
extern s8 D_80165828;
|
||||
|
||||
@@ -629,14 +629,14 @@ void func_8006F824(s32 arg0) {
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
void func_8006F824(?, s8 *, s8 *, s32); // extern
|
||||
extern s8 D_801657E4;
|
||||
extern s8 D_801657E6;
|
||||
extern s8 D_801657E8;
|
||||
extern s8 D_801657F0;
|
||||
extern bool8 D_801657E6;
|
||||
extern bool8 D_801657E8;
|
||||
extern bool8 D_801657F0;
|
||||
extern s8 D_801657F8;
|
||||
extern s8 D_80165800;
|
||||
extern s8 D_80165808;
|
||||
extern s8 D_80165810;
|
||||
extern s8 D_80165818;
|
||||
extern bool8 D_80165810;
|
||||
extern bool8 D_80165818;
|
||||
extern s8 D_80165820;
|
||||
extern s8 D_80165828;
|
||||
extern ? D_80165832;
|
||||
@@ -649,12 +649,12 @@ void func_8006F8CC(void) {
|
||||
if (D_8018EDFC == 0) {
|
||||
D_8018EDFC = 1;
|
||||
D_801657E4 = 0;
|
||||
D_801657E6 = 0;
|
||||
D_801657E6 = FALSE;
|
||||
D_80165800.unk1 = 1;
|
||||
D_801657F0 = 0;
|
||||
D_801657E8 = 1;
|
||||
D_801657E8 = TRUE;
|
||||
D_80165800.unk0 = D_80165800.unk1;
|
||||
temp_a0 = D_8018EDF3;
|
||||
temp_a0 = gPlayerCount;
|
||||
if (temp_a0 == FOUR_PLAYERS_SELECTED) {
|
||||
if (gModeSelection != BATTLE) {
|
||||
D_801657E4 = 1;
|
||||
@@ -667,7 +667,7 @@ void func_8006F8CC(void) {
|
||||
D_80165800.unk0 = D_80165800.unk1;
|
||||
}
|
||||
} else if (temp_a0 == THREE_PLAYERS_SELECTED) {
|
||||
D_801657E8 = 0;
|
||||
D_801657E8 = FALSE;
|
||||
D_801657F8 = 1;
|
||||
} else if (temp_a0 == TWO_PLAYERS_SELECTED) {
|
||||
if (gModeSelection != BATTLE) {
|
||||
@@ -771,7 +771,7 @@ extern s32 D_8018D1F8;
|
||||
extern s32 D_8018D1FC;
|
||||
extern s32 D_8018D204;
|
||||
extern s32 D_8018D20C;
|
||||
extern s32 D_8018D214;
|
||||
extern bool D_8018D214;
|
||||
extern s32 D_8018D224;
|
||||
extern s8 D_8018D228;
|
||||
extern s32 D_8018D2A4;
|
||||
@@ -828,7 +828,7 @@ void func_8006FA94(void) {
|
||||
D_80165658.unk8 = 0;
|
||||
D_80165658.unk4 = 0;
|
||||
D_80165658.unk0 = 0;
|
||||
temp_ra = D_8018EDF3;
|
||||
temp_ra = gPlayerCount;
|
||||
D_801658BC = D_801658C6;
|
||||
switch (temp_ra) { /* irregular */
|
||||
case 1:
|
||||
@@ -941,9 +941,9 @@ void func_8006FA94(void) {
|
||||
D_8018D168 = 0;
|
||||
D_801656F0 = 0;
|
||||
D_801657B2 = 0;
|
||||
D_801657D8 = D_801657B2;
|
||||
D_8018D214 = (s32) D_801657D8;
|
||||
D_801657B0 = (s8) D_8018D214;
|
||||
D_801657D8 = D_801657B2; // put all to 0
|
||||
D_8018D214 = (s32) D_801657D8; // put all to 0
|
||||
D_801657B0 = (s8) D_8018D214; // put all to 0
|
||||
D_801657AE = D_801657B0;
|
||||
D_8018D20C = 0;
|
||||
D_8018D2F8 = 0;
|
||||
@@ -1047,12 +1047,12 @@ void func_80070190(void) {
|
||||
}
|
||||
|
||||
void func_80070250(s32 objectIndex, s32 arg1, StarSpawn *arg2) {
|
||||
struct_80165C18_entry *temp_v0;
|
||||
ItemWindowObjects *temp_v0;
|
||||
|
||||
func_800723A4(objectIndex, arg1);
|
||||
temp_v0 = &D_80165C18[objectIndex];
|
||||
temp_v0 = &gObjectList[objectIndex];
|
||||
temp_v0->unk_0D5 = arg2->id;
|
||||
temp_v0->unk_0A4 = 0;
|
||||
temp_v0->currentItem = ITEM_NONE;
|
||||
temp_v0->unk_0BE[1] = arg2->pos[0];
|
||||
temp_v0->unk_09E = arg2->pos[1];
|
||||
temp_v0->sizeScaling = (f32) arg2->pos[2] / 100.0;
|
||||
@@ -1090,17 +1090,17 @@ void func_80070328(StarSpawn *arg0) {
|
||||
* unk_0A2 is an alpha value, used to make the star twinkle.
|
||||
**/
|
||||
void func_800703E0(s32 objectIndex, s32 arg1, StarSpawn *arg2) {
|
||||
struct_80165C18_entry *temp_v0;
|
||||
ItemWindowObjects *temp_v0;
|
||||
|
||||
func_800723A4(objectIndex, arg1);
|
||||
temp_v0 = &D_80165C18[objectIndex];
|
||||
temp_v0 = &gObjectList[objectIndex];
|
||||
temp_v0->unk_0D5 = arg2->id; // No idea, all 0's for stars
|
||||
temp_v0->unk_0A4 = 1;
|
||||
temp_v0->currentItem = ITEM_BANANA;
|
||||
temp_v0->unk_0BE[1] = arg2->pos[0]; // No idea
|
||||
temp_v0->unk_09E = arg2->pos[1]; // screen Y position
|
||||
temp_v0->sizeScaling = (f32)arg2->pos[2] / 100.0; // some type of scaling on the texture
|
||||
temp_v0->activeTexture = D_0D0293D8;
|
||||
func_80073404(objectIndex, 0x10U, 0x10U, D_0D005770);
|
||||
func_80073404(objectIndex, 0x10U, 0x10U, common_vtx_rectangle);
|
||||
}
|
||||
|
||||
void func_800704A0(StarSpawn *arg0) {
|
||||
@@ -1122,14 +1122,14 @@ void func_8007055C(void) {
|
||||
s32 var_s4;
|
||||
|
||||
switch (gCurrentCourseId) {
|
||||
case 0:
|
||||
case COURSE_MARIO_RACEWAY:
|
||||
func_80070328(&D_800E6C10);
|
||||
break;
|
||||
case 4:
|
||||
case COURSE_YOSHI_VALLEY:
|
||||
func_80070328(&D_800E6AA8);
|
||||
break;
|
||||
case 5:
|
||||
if (D_8018EDF3 == 1) {
|
||||
case COURSE_FRAPPE_SNOWLAND:
|
||||
if (gPlayerCount == 1) {
|
||||
var_s4 = 0x32;
|
||||
} else {
|
||||
var_s4 = 0x19;
|
||||
@@ -1140,31 +1140,31 @@ void func_8007055C(void) {
|
||||
D_8018D1F8 += var_s0;
|
||||
D_8018D1F0 = var_s0;
|
||||
break;
|
||||
case 6:
|
||||
case COURSE_KOOPA_BEACH:
|
||||
func_80070328(D_800E6B00);
|
||||
break;
|
||||
case 7:
|
||||
case COURSE_ROYAL_RACEWAY:
|
||||
func_80070328(D_800E6B38);
|
||||
break;
|
||||
case 8:
|
||||
case COURSE_LUIGI_RACEWAY:
|
||||
func_80070328(D_800E6A38);
|
||||
break;
|
||||
case 9:
|
||||
case COURSE_MOO_MOO_FARM:
|
||||
func_80070328(D_800E6AA8);
|
||||
break;
|
||||
case 10:
|
||||
case COURSE_TOADS_TURNPIKE:
|
||||
func_800704A0(D_800E6C80);
|
||||
break;
|
||||
case 11:
|
||||
case COURSE_KALAMARI_DESERT:
|
||||
func_80070328(D_800E6C10);
|
||||
break;
|
||||
case 12:
|
||||
case COURSE_SHERBET_LAND:
|
||||
func_80070328(D_800E6BA8);
|
||||
break;
|
||||
case 13:
|
||||
case COURSE_RAINBOW_ROAD:
|
||||
func_800704A0(D_800E6C80);
|
||||
break;
|
||||
case 14:
|
||||
case COURSE_WARIO_STADIUM:
|
||||
func_800704A0(D_800E6DE0);
|
||||
break;
|
||||
}
|
||||
@@ -1173,7 +1173,7 @@ void func_8007055C(void) {
|
||||
|
||||
void func_80070714(void) {
|
||||
D_80165730 = 1;
|
||||
if (D_8018EDF3 == ONE_PLAYERS_SELECTED) {
|
||||
if (gPlayerCount == ONE_PLAYERS_SELECTED) {
|
||||
D_80165738 = 0x64;
|
||||
D_80165740 = 0x3C;
|
||||
D_80165748 = 0x1E;
|
||||
@@ -1223,7 +1223,7 @@ static ? D_800E6360; /* unable to generate initia
|
||||
static ? D_800E641A; /* unable to generate initializer */
|
||||
|
||||
void func_80070780(void) {
|
||||
struct_80165C18_entry *sp4C;
|
||||
Objects *sp4C;
|
||||
? *sp48;
|
||||
? *sp44;
|
||||
? *var_s1_2;
|
||||
@@ -1294,15 +1294,15 @@ void func_80070780(void) {
|
||||
s8 *var_s0_5;
|
||||
s8 *var_s0_6;
|
||||
s8 *var_s0_7;
|
||||
struct_80165C18_entry *temp_v0;
|
||||
struct_80165C18_entry *temp_v0_2;
|
||||
struct_80165C18_entry *temp_v0_3;
|
||||
struct_80165C18_entry *temp_v0_4;
|
||||
struct_80165C18_entry *temp_v0_5;
|
||||
struct_80165C18_entry *temp_v0_6;
|
||||
struct_80165C18_entry *temp_v0_7;
|
||||
struct_80165C18_entry *temp_v0_8;
|
||||
struct_80165C18_entry *temp_v0_9;
|
||||
Objects *temp_v0;
|
||||
Objects *temp_v0_2;
|
||||
Objects *temp_v0_3;
|
||||
Objects *temp_v0_4;
|
||||
Objects *temp_v0_5;
|
||||
Objects *temp_v0_6;
|
||||
Objects *temp_v0_7;
|
||||
Objects *temp_v0_8;
|
||||
Objects *temp_v0_9;
|
||||
|
||||
switch ((u16) gCurrentCourseId) {
|
||||
case 0:
|
||||
@@ -1352,7 +1352,7 @@ void func_80070780(void) {
|
||||
temp_v1 = D_80165758 + var_s2;
|
||||
var_s3_2 += 1;
|
||||
temp_f6 = (f32) temp_v1->unk0;
|
||||
temp_v0 = &D_80165C18[temp_s0];
|
||||
temp_v0 = &gObjectList[temp_s0];
|
||||
var_s2 += 8;
|
||||
var_s1 += 4;
|
||||
temp_v0->unk_010[0] = temp_f6 * D_8018D01C;
|
||||
@@ -1365,7 +1365,7 @@ void func_80070780(void) {
|
||||
temp_s0_2 = *D_80183F28;
|
||||
func_800723A4(temp_s0_2, 0);
|
||||
var_s1_2 = &D_800E5728;
|
||||
temp_v0_2 = &D_80165C18[temp_s0_2];
|
||||
temp_v0_2 = &gObjectList[temp_s0_2];
|
||||
var_s2_2 = D_8018BFA8;
|
||||
temp_v0_2->pos[1] = 80.0f;
|
||||
temp_v0_2->pos[0] = (f32) ((f64) D_8018D01C * -68.0);
|
||||
@@ -1374,7 +1374,7 @@ void func_80070780(void) {
|
||||
temp_s0_3 = *var_s2_2;
|
||||
func_800723A4(temp_s0_3, 0);
|
||||
temp_t9 = var_s3_2 & 1;
|
||||
temp_v0_3 = &D_80165C18[temp_s0_3];
|
||||
temp_v0_3 = &gObjectList[temp_s0_3];
|
||||
var_s3_2 += 1;
|
||||
var_s2_2 += 4;
|
||||
temp_v0_3->pos[1] = (f32) var_s1_2->unk2;
|
||||
@@ -1388,15 +1388,15 @@ void func_80070780(void) {
|
||||
} while (var_s3_2 < 4);
|
||||
var_s0_2 = D_8018C030;
|
||||
do {
|
||||
func_80071F6C(var_s0_2);
|
||||
delete_object(var_s0_2);
|
||||
var_s0_2 += 4;
|
||||
} while (var_s0_2 != D_8018C0B0);
|
||||
return;
|
||||
case 3:
|
||||
if (gGamestate != 9) {
|
||||
temp_s0_4 = D_80183EA0->unk0;
|
||||
func_80073444(temp_s0_4, &d_course_banshee_boardwalk_bat_tlut, &d_course_banshee_boardwalk_bat, 0x20U, (u16) 0x00000040);
|
||||
temp_v0_4 = &D_80165C18[temp_s0_4];
|
||||
init_texture_object(temp_s0_4, &d_course_banshee_boardwalk_bat_tlut, &d_course_banshee_boardwalk_bat, 0x20U, (u16) 0x00000040);
|
||||
temp_v0_4 = &gObjectList[temp_s0_4];
|
||||
temp_v0_4->unk_0B2[0] = 0;
|
||||
temp_v0_4->unk_0B2[1] = 0;
|
||||
temp_v0_4->unk_0B2[2] = 0x8000;
|
||||
@@ -1420,7 +1420,7 @@ void func_80070780(void) {
|
||||
sp44 = var_v1;
|
||||
func_800723A4(temp_s0_5, 0);
|
||||
temp_f0 = (f32) var_s1_4->unk0 * D_8018D01C;
|
||||
temp_v0_5 = &D_80165C18[temp_s0_5];
|
||||
temp_v0_5 = &gObjectList[temp_s0_5];
|
||||
temp_v0_5->unk_010[0] = temp_f0;
|
||||
temp_v0_5->pos[0] = temp_f0;
|
||||
temp_f10 = var_s1_4->unk4;
|
||||
@@ -1457,14 +1457,14 @@ void func_80070780(void) {
|
||||
temp_s0_6 = *var_s2_4;
|
||||
sp44 = var_v1_2;
|
||||
func_800723A4(temp_s0_6, 0);
|
||||
temp_v0_6 = &D_80165C18[temp_s0_6];
|
||||
temp_v0_6 = &gObjectList[temp_s0_6];
|
||||
temp_s0_7 = *var_s1_6;
|
||||
temp_v0_6->unk_010[0] = (f32) var_v1_2->unk0 * D_8018D01C;
|
||||
temp_v0_6->unk_010[2] = (f32) var_v1_2->unk4;
|
||||
temp_v0_6->unk_010[1] = (f32) ((f64) var_v1_2->unk2 + 5.0 + 3.0);
|
||||
func_800723A4(temp_s0_7, 0);
|
||||
temp_t4 = var_v1_2->unk4;
|
||||
temp_v0_7 = &D_80165C18[temp_s0_7];
|
||||
temp_v0_7 = &gObjectList[temp_s0_7];
|
||||
temp_f8 = (f64) var_v1_2->unk2;
|
||||
temp_f4_2 = (f32) var_v1_2->unk0 * D_8018D01C;
|
||||
temp_t5_2 = var_v1_2->unk6;
|
||||
@@ -1488,7 +1488,7 @@ void func_80070780(void) {
|
||||
sp48 = var_v1_3;
|
||||
func_800723A4(temp_s0_8, 0);
|
||||
temp_f6_2 = var_v1_3->unk4;
|
||||
temp_v0_8 = &D_80165C18[temp_s0_8];
|
||||
temp_v0_8 = &gObjectList[temp_s0_8];
|
||||
temp_f8_2 = var_v1_3->unk6;
|
||||
temp_f18 = (f32) var_v1_3->unk2;
|
||||
temp_f0_4 = (f32) var_v1_3->unk0 * D_8018D01C;
|
||||
@@ -1509,9 +1509,9 @@ void func_80070780(void) {
|
||||
func_800723A4(temp_s0_9, 0);
|
||||
var_s2_5 += 4;
|
||||
if ((u32) var_s2_5 < (u32) &D_80183F3C) {
|
||||
D_80165C18[temp_s0_9].unk_0D5 = 0;
|
||||
gObjectList[temp_s0_9].unk_0D5 = 0;
|
||||
} else {
|
||||
D_80165C18[temp_s0_9].unk_0D5 = 1;
|
||||
gObjectList[temp_s0_9].unk_0D5 = 1;
|
||||
}
|
||||
} while (var_s2_5 != &D_80183F50);
|
||||
return;
|
||||
@@ -1556,7 +1556,7 @@ void func_80070780(void) {
|
||||
case 9:
|
||||
if (gGamestate != 9) {
|
||||
var_s1_8 = D_80183EA0;
|
||||
if ((D_8018EDF3 == 1) || ((D_8018EDF3 == 2) && (gModeSelection == (s32) 2))) {
|
||||
if ((gPlayerCount == 1) || ((gPlayerCount == 2) && (gModeSelection == (s32) 2))) {
|
||||
switch (gCCSelection) { /* switch 2; irregular */
|
||||
case 0: /* switch 2 */
|
||||
D_8018D1C8 = 4;
|
||||
@@ -1613,7 +1613,7 @@ block_75:
|
||||
find_unused_obj_index(var_s1_11);
|
||||
temp_s0_10 = *var_s1_11;
|
||||
func_800723A4(temp_s0_10, 0);
|
||||
temp_v0_9 = &D_80165C18[temp_s0_10];
|
||||
temp_v0_9 = &gObjectList[temp_s0_10];
|
||||
sp4C = temp_v0_9;
|
||||
temp_v0_9->pos[2] = (f32) var_s2_6->unk4;
|
||||
temp_v0_9->pos[0] = (f32) var_s2_6->unk0 * D_8018D01C;
|
||||
@@ -1725,7 +1725,7 @@ extern s32 D_8018D3DC;
|
||||
extern s32 D_8018D3F0;
|
||||
extern s32 D_8018D3F4;
|
||||
|
||||
void func_80071428(void) {
|
||||
void init_hud_one_player(void) {
|
||||
? *var_a0;
|
||||
? *var_a1;
|
||||
? *var_a2;
|
||||
@@ -1771,7 +1771,7 @@ void func_80071428(void) {
|
||||
D_8018CA70->slideItemBoxX = 0;
|
||||
D_8018CA70->slideItemBoxY = 0;
|
||||
D_8018CA70->stagingPosition = (s16) *gGPCurrentRaceRankByPlayerId;
|
||||
func_8006EE7C(*gItemWindowObjectByPlayerId);
|
||||
init_item_window(gItemWindowObjectByPlayerId[0]);
|
||||
var_f0 = 35.0f;
|
||||
var_v0 = &D_8018D078;
|
||||
var_a3 = &D_8018D0A0;
|
||||
@@ -1852,21 +1852,20 @@ void func_80071428(void) {
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_8006E9C0/func_80071428.s")
|
||||
GLOBAL_ASM("asm/non_matchings/code_8006E9C0/init_hud_one_player.s")
|
||||
#endif
|
||||
|
||||
extern void func_8006EE7C(s32); /* extern */
|
||||
extern void func_80070190(); /* extern */
|
||||
extern void func_8007055C(); /* extern */
|
||||
extern void func_80070780(); /* extern */
|
||||
extern s32 D_80183DA0;
|
||||
extern s32 D_80183DBC;
|
||||
|
||||
void func_80071818(void) {
|
||||
void init_hud_two_player_vertical(void) {
|
||||
find_unused_obj_index(&D_80183DA0);
|
||||
find_unused_obj_index(D_80183DB8);
|
||||
find_unused_obj_index(&D_80183DBC);
|
||||
find_unused_obj_index(gItemWindowObjectByPlayerId);
|
||||
find_unused_obj_index(&gItemWindowObjectByPlayerId[0]);
|
||||
find_unused_obj_index(&gItemWindowObjectByPlayerId[1]);
|
||||
func_80070190();
|
||||
func_8007055C();
|
||||
@@ -1886,7 +1885,7 @@ void func_80071818(void) {
|
||||
D_8018CA70[0].timerY = 0x10;
|
||||
D_8018CA70[0].lapX = 0x67;
|
||||
D_8018CA70[0].lapY = 0x28;
|
||||
func_8006EE7C(*gItemWindowObjectByPlayerId);
|
||||
init_item_window(gItemWindowObjectByPlayerId[0]);
|
||||
D_8018CA70[1].itemBoxX = 0x43;
|
||||
D_8018CA70[1].itemBoxY = 0x32;
|
||||
D_8018CA70[1].slideItemBoxX = 0;
|
||||
@@ -1901,7 +1900,7 @@ void func_80071818(void) {
|
||||
D_8018CA70[1].timerY = 0x10;
|
||||
D_8018CA70[1].lapX = 0xF7;
|
||||
D_8018CA70[1].lapY = 0x28;
|
||||
func_8006EE7C((gItemWindowObjectByPlayerId[1]));
|
||||
init_item_window(gItemWindowObjectByPlayerId[1]);
|
||||
D_8018CA70[1].rankScaling = 0.5f;
|
||||
D_8018CA70[0].stagingPosition = (s16) gGPCurrentRaceRankByPlayerId[0];
|
||||
D_8018CA70[1].stagingPosition = (s16) gGPCurrentRaceRankByPlayerId[1];
|
||||
@@ -1925,11 +1924,11 @@ void func_80071818(void) {
|
||||
|
||||
|
||||
|
||||
void func_80071A20() {
|
||||
void init_hud_two_player_horizontal() {
|
||||
find_unused_obj_index(&D_80183DA0);
|
||||
find_unused_obj_index(D_80183DB8);
|
||||
find_unused_obj_index(&D_80183DBC);
|
||||
find_unused_obj_index(gItemWindowObjectByPlayerId);
|
||||
find_unused_obj_index(&gItemWindowObjectByPlayerId[0]);
|
||||
find_unused_obj_index(&gItemWindowObjectByPlayerId[1]);
|
||||
func_80070190();
|
||||
func_8007055C();
|
||||
@@ -1973,8 +1972,8 @@ void func_80071A20() {
|
||||
D_8018CA70[0].stagingPosition = (s16) gGPCurrentRaceRankByPlayerId[0];
|
||||
D_8018CA70[1].stagingPosition = (s16) gGPCurrentRaceRankByPlayerId[1];
|
||||
D_8018CA70[0].rankScaling = D_8018CA70[1].rankScaling;
|
||||
func_8006EE7C(gItemWindowObjectByPlayerId[0]);
|
||||
func_8006EE7C((gItemWindowObjectByPlayerId[1]));
|
||||
init_item_window(gItemWindowObjectByPlayerId[0]);
|
||||
init_item_window((gItemWindowObjectByPlayerId[1]));
|
||||
D_8018D3C4 = 0x1E;
|
||||
D_8018D3BC = 0x18;
|
||||
D_8018D3C0 = 0x28;
|
||||
@@ -2006,7 +2005,7 @@ extern s32 D_8018D3BC;
|
||||
extern s32 D_8018D3C0;
|
||||
extern s32 D_8018D3C4;
|
||||
|
||||
void func_80071C28(void) {
|
||||
void init_hud_three_four_player(void) {
|
||||
find_unused_obj_index(&D_80183DA0);
|
||||
find_unused_obj_index(D_80183DB8);
|
||||
find_unused_obj_index(&D_80183DBC);
|
||||
@@ -2088,20 +2087,20 @@ void func_80071C28(void) {
|
||||
D_8018CA70->unkEE = (s16) gGPCurrentRaceRankByPlayerId->unk4;
|
||||
D_8018CA70->unk172 = (s16) gGPCurrentRaceRankByPlayerId->unk8;
|
||||
D_8018CA70->unk1F6 = (s16) gGPCurrentRaceRankByPlayerId->unkC;
|
||||
func_8006EE7C(*gItemWindowObjectByPlayerId);
|
||||
func_8006EE7C(*(gItemWindowObjectByPlayerId + 4));
|
||||
func_8006EE7C(*(gItemWindowObjectByPlayerId + 8));
|
||||
func_8006EE7C(*(gItemWindowObjectByPlayerId + 0xC));
|
||||
init_item_window(*gItemWindowObjectByPlayerId);
|
||||
init_item_window(*(gItemWindowObjectByPlayerId + 4));
|
||||
init_item_window(*(gItemWindowObjectByPlayerId + 8));
|
||||
init_item_window(*(gItemWindowObjectByPlayerId + 0xC));
|
||||
D_8018CA70->unk18C = 1.5f;
|
||||
D_8018CA70->unk108 = (f32) D_8018CA70->unk18C;
|
||||
D_8018CA70->unk84 = (f32) D_8018CA70->unk18C;
|
||||
D_8018CA70->unknownScaling = D_8018CA70->unk18C;
|
||||
D_8018D158 = (s32) D_8018EDF3;
|
||||
D_8018D158 = (s32) gPlayerCount;
|
||||
D_8018D3C4 = 0x00000014;
|
||||
D_8018D3BC = 0x00000010;
|
||||
D_8018D3C0 = 0x0000001E;
|
||||
D_801657A2 = 0x0888;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_8006E9C0/func_80071C28.s")
|
||||
GLOBAL_ASM("asm/non_matchings/code_8006E9C0/init_hud_three_four_player.s")
|
||||
#endif
|
||||
|
||||
+6
-6
@@ -4,13 +4,13 @@
|
||||
#include "common_structs.h"
|
||||
#include "code_80071F00.h"
|
||||
|
||||
void func_8006E9C0(void);
|
||||
void init_object_list(void);
|
||||
void func_8006EA5C(void);
|
||||
void func_8006EB10(void);
|
||||
void func_8006ED60(void);
|
||||
u8 *func_8006ED94(u8*, u8*, u32, u32);
|
||||
void func_8006EE44(void);
|
||||
void func_8006EE7C(s32);
|
||||
void init_item_window(s32);
|
||||
void func_8006FA94(void);
|
||||
void func_80070148(void);
|
||||
void func_80070190(void);
|
||||
@@ -20,10 +20,10 @@ void func_800703E0(s32, s32, StarSpawn*);
|
||||
void func_800704A0(StarSpawn*);
|
||||
void func_8007055C(void);
|
||||
void func_80070714(void);
|
||||
void func_80071428(void);
|
||||
void func_80071818(void);
|
||||
void func_80071C28(void);
|
||||
void func_80071A20(void);
|
||||
void init_hud_one_player(void);
|
||||
void init_hud_two_player_vertical(void);
|
||||
void init_hud_three_four_player(void);
|
||||
void init_hud_two_player_horizontal(void);
|
||||
|
||||
extern s16 D_800E5520[];
|
||||
extern s16 D_800E5548[];
|
||||
|
||||
+1814
-1814
File diff suppressed because it is too large
Load Diff
+12
-12
@@ -21,23 +21,23 @@ typedef struct {
|
||||
|
||||
void func_80077D5C(s32);
|
||||
s32 find_unused_obj_index(s32*);
|
||||
void func_80071F6C(s32*);
|
||||
void delete_object(s32*);
|
||||
s32 func_80071FBC(void);
|
||||
s32 func_80072044(s32*, s32*, s32);
|
||||
void func_80072100(s32*);
|
||||
void delete_object_wrapper(s32*);
|
||||
void func_80072120(s32*, s32);
|
||||
void func_80072180(void);
|
||||
void func_800721C0(s32, s32);
|
||||
void func_800721E8(s32, s32);
|
||||
void set_object_flag_unk_054_true(s32, s32);
|
||||
void set_object_flag_unk_054_false(s32, s32);
|
||||
void func_80072214(s32, s32);
|
||||
s32 func_8007223C(s32, s32);
|
||||
s32 func_80072270(s32, s32);
|
||||
s32 is_obj_index_flag_unk_054_active(s32, s32);
|
||||
s32 is_obj_index_flag_unk_054_inactive(s32, s32);
|
||||
void func_800722A4(s32, s32);
|
||||
void func_800722CC(s32, s32);
|
||||
void func_800722F8(s32, s32);
|
||||
s32 func_80072320(s32, s32);
|
||||
s32 func_80072354(s32, s32);
|
||||
void func_80072388(s32, s32);
|
||||
void set_object_unk_0CB(s32, s32);
|
||||
void func_800723A4(s32, s32);
|
||||
void func_80072408(s32);
|
||||
void func_80072428(s32);
|
||||
@@ -59,7 +59,7 @@ void func_80072950(s32, s32, s32, s32);
|
||||
void func_80072974(s32, s32, s32, s32);
|
||||
void func_80072998(s32);
|
||||
void func_800729B4(s32, s32);
|
||||
void func_800729D0(s32, s32);
|
||||
void set_type_object(s32, s32);
|
||||
void func_80072A78(s32, s32);
|
||||
s32 func_80072AAC(s32, s32, s32);
|
||||
s32 func_80072B48(s32, s32);
|
||||
@@ -70,7 +70,7 @@ s32 func_80072F88(s32, s32, s32, s32, s32, s32);
|
||||
s32 func_800730BC(s32, s32, s32, s32, s32, s32);
|
||||
s32 func_8007326C(s32, s32, s32, s32, s32, s32);
|
||||
void func_80073404(s32, u8, u8, Vtx*);
|
||||
void func_80073444(s32, u8*, u8*, u8, u16);
|
||||
void init_texture_object(s32, u8*, u8*, u8, u16);
|
||||
void func_8007348C(s32, u8*, u8, u8, Vtx *);
|
||||
void func_800734D4(void);
|
||||
void func_800734DC(s32);
|
||||
@@ -207,10 +207,10 @@ void func_8007A910(s32);
|
||||
void func_8007A948(s32);
|
||||
void func_8007AA44(s32);
|
||||
void func_8007ABFC(s32, s32);
|
||||
void func_8007AC9C(s32);
|
||||
void consume_item(s32);
|
||||
u8 gen_random_item(s16, s16);
|
||||
u8 func_8007AF40(s16, s16);
|
||||
u8 func_8007AF78(s32, s16);
|
||||
u8 gen_random_item_human(s16, s16);
|
||||
u8 gen_random_item_cpu(s32, s16);
|
||||
s16 func_8007AFB0(s32, s32);
|
||||
s32 func_8007B040(s32, s32);
|
||||
void func_8007B34C(s32);
|
||||
|
||||
+424
-424
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -17,7 +17,7 @@ s32 func_80087104(s32, u16);
|
||||
s32 func_800871AC(s32, s32);
|
||||
void func_80087258(s32, s32, f32);
|
||||
s32 func_80087294(s32, Player*);
|
||||
s32 func_800872D8(s32, Camera*);
|
||||
s32 angle_between_object_camera(s32, Camera*);
|
||||
u16 func_80087324(s32);
|
||||
s32 func_80087368(s32);
|
||||
void func_800873A4(s32);
|
||||
|
||||
+242
-242
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -139,7 +139,7 @@ extern s16 D_80165190[4][8];
|
||||
extern f32 D_80165280[];
|
||||
extern s32 D_80165420[];
|
||||
extern s32 D_80165440[];
|
||||
extern s32 D_80165460[];
|
||||
extern s32 gIsPlayerTripleAButtonCombo[];
|
||||
extern s32 D_80165480[];
|
||||
extern s8 D_801658BC;
|
||||
extern s32 D_8018D900[];
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user