Rename sa2__gUnknown_030054B4 -> gMultiplayerRanks

This commit is contained in:
JaceCear committed 2025-12-05 14:10:24 +01:00
1 parent 56b65abeda
commit b0f056e745
20 files changed
+164 -166

No files matched your search

@@ -237,7 +237,7 @@ _0801F460:
bne _0801F468
b _0801F620
_0801F468:
ldr r1, _0801F4AC @ =sa2__gUnknown_030054B4
ldr r1, _0801F4AC @ =gMultiplayerRanks
ldr r0, _0801F4A0 @ =0x04000128
ldr r0, [r0]
lsls r0, r0, #0x1a
@@ -266,7 +266,7 @@ _0801F49C: .4byte gMultiplayerPlayerTasks
_0801F4A0: .4byte 0x04000128
_0801F4A4: .4byte gMultiplayerConnections
_0801F4A8: .4byte 0x03000054
_0801F4AC: .4byte sa2__gUnknown_030054B4
_0801F4AC: .4byte gMultiplayerRanks
_0801F4B0: .4byte gCurTask
_0801F4B4: .4byte Task_StageGoal3
_0801F4B8:
@@ -370,7 +370,7 @@ _0801F572:
ldrb r0, [r1]
cmp r0, #1
bls _0801F5A4
ldr r1, _0801F59C @ =sa2__gUnknown_030054B4
ldr r1, _0801F59C @ =gMultiplayerRanks
ldr r0, _0801F5A0 @ =0x04000128
ldr r0, [r0]
lsls r0, r0, #0x1a
@@ -386,10 +386,10 @@ _0801F572:
.align 2, 0
_0801F594: .4byte gCurrentLevel
_0801F598: .4byte gGameMode
_0801F59C: .4byte sa2__gUnknown_030054B4
_0801F59C: .4byte gMultiplayerRanks
_0801F5A0: .4byte 0x04000128
_0801F5A4:
ldr r0, _0801F5C4 @ =sa2__gUnknown_030054B4
ldr r0, _0801F5C4 @ =gMultiplayerRanks
movs r1, #0
ldrsb r1, [r0, r1]
movs r0, #1
@@ -406,7 +406,7 @@ _0801F5B2:
ldr r0, _0801F5CC @ =Task_StageGoal3
b _0801F606_callTaskMain
.align 2, 0
_0801F5C4: .4byte sa2__gUnknown_030054B4
_0801F5C4: .4byte gMultiplayerRanks
_0801F5C8: .4byte gCurTask
_0801F5CC: .4byte Task_StageGoal3
_0801F5D0:
@@ -266,7 +266,7 @@ _0803AD54:
movs r3, #0x63
mov sb, r3
_0803AD60:
ldr r1, _0803AD8C @ =sa2__gUnknown_030054B4
ldr r1, _0803AD8C @ =gMultiplayerRanks
adds r0, r4, r1
movs r1, #0
ldrsb r1, [r0, r1]
@@ -283,7 +283,7 @@ _0803AD7C: .4byte gGameMode
_0803AD80: .4byte gLoadedSaveGame
_0803AD84: .4byte gUnknown_03005008
_0803AD88: .4byte 0x0000038E
_0803AD8C: .4byte sa2__gUnknown_030054B4
_0803AD8C: .4byte gMultiplayerRanks
_0803AD90:
cmp r1, #4
beq _0803AE84
@@ -309,7 +309,7 @@ _0803ADB6:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r2, _0803ADE4 @ =sa2__gUnknown_030054B4
ldr r2, _0803ADE4 @ =gMultiplayerRanks
adds r0, r0, r2
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -331,7 +331,7 @@ _0803ADDA:
b _0803AED8
.align 2, 0
_0803ADE0: .4byte 0x04000128
_0803ADE4: .4byte sa2__gUnknown_030054B4
_0803ADE4: .4byte gMultiplayerRanks
_0803ADE8: .4byte gGameMode
_0803ADEC:
mov r0, sl
@@ -370,7 +370,7 @@ _0803AE10:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r3, _0803AE68 @ =sa2__gUnknown_030054B4
ldr r3, _0803AE68 @ =gMultiplayerRanks
adds r0, r0, r3
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -395,7 +395,7 @@ _0803AE10:
b _0803AEEE
.align 2, 0
_0803AE64: .4byte 0x04000128
_0803AE68: .4byte sa2__gUnknown_030054B4
_0803AE68: .4byte gMultiplayerRanks
_0803AE6C:
ldr r3, _0803AE80 @ =gGameMode
ldrb r0, [r3]
@@ -485,7 +485,7 @@ _0803AF08:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r2, _0803AF34 @ =sa2__gUnknown_030054B4
ldr r2, _0803AF34 @ =gMultiplayerRanks
adds r0, r0, r2
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -501,14 +501,14 @@ _0803AF08:
_0803AF28: .4byte 0x04000128
_0803AF2C: .4byte gGameMode
_0803AF30: .4byte gMultiplayerConnections
_0803AF34: .4byte sa2__gUnknown_030054B4
_0803AF34: .4byte gMultiplayerRanks
_0803AF38: .4byte gLoadedSaveGame
_0803AF3C: .4byte 0x00000425
_0803AF40:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r3, _0803AF64 @ =sa2__gUnknown_030054B4
ldr r3, _0803AF64 @ =gMultiplayerRanks
adds r0, r0, r3
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -523,7 +523,7 @@ _0803AF40:
adds r1, r2, r3
b _0803B518
.align 2, 0
_0803AF64: .4byte sa2__gUnknown_030054B4
_0803AF64: .4byte gMultiplayerRanks
_0803AF68: .4byte gLoadedSaveGame
_0803AF6C: .4byte 0x00000427
_0803AF70:
@@ -552,7 +552,7 @@ _0803AF8E:
str r0, [sp, #0xc]
cmp r4, r1
bhs _0803AFC0
ldr r3, _0803B028 @ =sa2__gUnknown_030054B4
ldr r3, _0803B028 @ =gMultiplayerRanks
_0803AFA4:
adds r0, r4, r3
ldrb r0, [r0]
@@ -579,7 +579,7 @@ _0803AFC6:
ldrb r1, [r1]
cmp r4, r1
bhs _0803B098
ldr r2, _0803B028 @ =sa2__gUnknown_030054B4
ldr r2, _0803B028 @ =gMultiplayerRanks
mov sl, r2
ldr r3, _0803B02C @ =gLoadedSaveGame
ldr r0, _0803B030 @ =0x0000038D
@@ -625,7 +625,7 @@ _0803AFE4:
adds r1, r0, r2
b _0803B080
.align 2, 0
_0803B028: .4byte sa2__gUnknown_030054B4
_0803B028: .4byte gMultiplayerRanks
_0803B02C: .4byte gLoadedSaveGame
_0803B030: .4byte 0x0000038D
_0803B034: .4byte gUnknown_03005008
@@ -684,7 +684,7 @@ _0803B098:
ldr r0, [r0]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r1, _0803B0C0 @ =sa2__gUnknown_030054B4
ldr r1, _0803B0C0 @ =gMultiplayerRanks
adds r0, r0, r1
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -699,7 +699,7 @@ _0803B098:
b _0803B518
.align 2, 0
_0803B0BC: .4byte 0x04000128
_0803B0C0: .4byte sa2__gUnknown_030054B4
_0803B0C0: .4byte gMultiplayerRanks
_0803B0C4: .4byte gLoadedSaveGame
_0803B0C8: .4byte 0x00000425
_0803B0CC:
@@ -787,7 +787,7 @@ _0803B168:
blo _0803B174
b _0803B27A
_0803B174:
ldr r2, _0803B1E4 @ =sa2__gUnknown_030054B4
ldr r2, _0803B1E4 @ =gMultiplayerRanks
mov sb, r2
ldr r3, _0803B1E8 @ =gLoadedSaveGame
ldr r7, _0803B1EC @ =gUnknown_03005008
@@ -844,7 +844,7 @@ _0803B186:
adds r1, r0, r2
b _0803B264
.align 2, 0
_0803B1E4: .4byte sa2__gUnknown_030054B4
_0803B1E4: .4byte gMultiplayerRanks
_0803B1E8: .4byte gLoadedSaveGame
_0803B1EC: .4byte gUnknown_03005008
_0803B1F0: .4byte 0x0000038E
@@ -922,7 +922,7 @@ _0803B27A:
ldr r0, [r0]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r1, _0803B2A4 @ =sa2__gUnknown_030054B4
ldr r1, _0803B2A4 @ =gMultiplayerRanks
adds r0, r0, r1
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -938,7 +938,7 @@ _0803B27A:
b _0803B518
.align 2, 0
_0803B2A0: .4byte 0x04000128
_0803B2A4: .4byte sa2__gUnknown_030054B4
_0803B2A4: .4byte gMultiplayerRanks
_0803B2A8: .4byte gLoadedSaveGame
_0803B2AC: .4byte 0x00000427
_0803B2B0:
@@ -963,7 +963,7 @@ _0803B2C8:
str r0, [sp, #0xc]
cmp r4, r1
bhs _0803B2FA
ldr r2, _0803B32C @ =sa2__gUnknown_030054B4
ldr r2, _0803B32C @ =gMultiplayerRanks
_0803B2DE:
adds r0, r4, r2
ldrb r0, [r0]
@@ -1008,14 +1008,14 @@ _0803B314:
blo _0803B314
b _0803B49E
.align 2, 0
_0803B32C: .4byte sa2__gUnknown_030054B4
_0803B32C: .4byte gMultiplayerRanks
_0803B330:
movs r4, #0
cmp r4, r0
blo _0803B338
b _0803B49E
_0803B338:
ldr r1, _0803B350 @ =sa2__gUnknown_030054B4
ldr r1, _0803B350 @ =gMultiplayerRanks
adds r0, r4, r1
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -1028,7 +1028,7 @@ _0803B338:
ldr r0, [r0]
mov pc, r0
.align 2, 0
_0803B350: .4byte sa2__gUnknown_030054B4
_0803B350: .4byte gMultiplayerRanks
_0803B354: .4byte _0803B358
_0803B358: @ jump table
.4byte _0803B370 @ case 0
@@ -1112,7 +1112,7 @@ _0803B3E4:
ldr r0, [r2]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r3, _0803B424 @ =sa2__gUnknown_030054B4
ldr r3, _0803B424 @ =gMultiplayerRanks
adds r0, r0, r3
adds r1, r4, r3
ldrb r0, [r0]
@@ -1134,14 +1134,14 @@ _0803B3E4:
b _0803B472
.align 2, 0
_0803B420: .4byte 0x04000128
_0803B424: .4byte sa2__gUnknown_030054B4
_0803B424: .4byte gMultiplayerRanks
_0803B428: .4byte gUnknown_03005008
_0803B42C: .4byte gLoadedSaveGame
_0803B430:
ldr r0, [r2]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r2, _0803B454 @ =sa2__gUnknown_030054B4
ldr r2, _0803B454 @ =gMultiplayerRanks
adds r0, r0, r2
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -1157,7 +1157,7 @@ _0803B430:
ldr r3, _0803B460 @ =0x0000038E
b _0803B472
.align 2, 0
_0803B454: .4byte sa2__gUnknown_030054B4
_0803B454: .4byte gMultiplayerRanks
_0803B458: .4byte gUnknown_03005008
_0803B45C: .4byte gLoadedSaveGame
_0803B460: .4byte 0x0000038E
@@ -1198,7 +1198,7 @@ _0803B49E:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r3, _0803B4D0 @ =sa2__gUnknown_030054B4
ldr r3, _0803B4D0 @ =gMultiplayerRanks
adds r0, r0, r3
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -1216,13 +1216,13 @@ _0803B4C0: .4byte gUnknown_03005008
_0803B4C4: .4byte gLoadedSaveGame
_0803B4C8: .4byte 0x0000038D
_0803B4CC: .4byte 0x04000128
_0803B4D0: .4byte sa2__gUnknown_030054B4
_0803B4D0: .4byte gMultiplayerRanks
_0803B4D4: .4byte 0x00000425
_0803B4D8:
ldr r0, [r1]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
ldr r1, _0803B500 @ =sa2__gUnknown_030054B4
ldr r1, _0803B500 @ =gMultiplayerRanks
adds r0, r0, r1
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -1241,7 +1241,7 @@ _0803B4F4:
ldr r2, _0803B508 @ =0x00000426
b _0803B516
.align 2, 0
_0803B500: .4byte sa2__gUnknown_030054B4
_0803B500: .4byte gMultiplayerRanks
_0803B504: .4byte gLoadedSaveGame
_0803B508: .4byte 0x00000426
_0803B50C:
@@ -85,7 +85,7 @@ _08017F8C:
asrs r3, r0
cmp r2, r3
beq _08017FCA
ldr r2, _08017FFC @ =sa2__gUnknown_030054B4
ldr r2, _08017FFC @ =gMultiplayerRanks
adds r0, r6, r2
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -103,7 +103,7 @@ _08017FCA:
cmp r0, #0
bne _08017F56
_08017FD8:
ldr r1, _08017FFC @ =sa2__gUnknown_030054B4
ldr r1, _08017FFC @ =gMultiplayerRanks
adds r0, r7, r1
movs r1, #0
ldrsb r1, [r0, r1]
@@ -119,7 +119,7 @@ _08017FD8:
b _08018004
.align 2, 0
_08017FF8: .4byte gMultiplayerConnections
_08017FFC: .4byte sa2__gUnknown_030054B4
_08017FFC: .4byte gMultiplayerRanks
_08018000:
movs r0, #1
str r0, [sp, #8]
@@ -158,7 +158,7 @@ _0801801C:
_08018040:
cmp r6, r7
beq _080180F4
ldr r0, _0801818C @ =sa2__gUnknown_030054B4
ldr r0, _0801818C @ =gMultiplayerRanks
adds r0, r6, r0
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -300,7 +300,7 @@ _08018144:
_08018158:
cmp r6, r7
beq _080181C2
ldr r0, _0801818C @ =sa2__gUnknown_030054B4
ldr r0, _0801818C @ =gMultiplayerRanks
adds r0, r6, r0
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -322,7 +322,7 @@ _08018176:
_08018180: .4byte gGameMode
_08018184: .4byte gMultiplayerPlayerTasks
_08018188: .4byte gPlayer
_0801818C: .4byte sa2__gUnknown_030054B4
_0801818C: .4byte gMultiplayerRanks
_08018190: .4byte gMultiplayerConnections
_08018194: .4byte 0x04000128
_08018198: .4byte 0xFFFFFBFF
@@ -102,7 +102,7 @@ _08019E64:
bls _08019E16
movs r6, #0
mov r5, sb
ldr r3, _08019EA4 @ =sa2__gUnknown_030054B4
ldr r3, _08019EA4 @ =gMultiplayerRanks
add r2, sp, #4
_08019E78:
cmp r6, #0
@@ -123,7 +123,7 @@ _08019E94: .4byte sa2__Task_801A04C
_08019E98: .4byte gGameMode
_08019E9C: .4byte gMusicManagerState
_08019EA0: .4byte gMultiplayerCharRings
_08019EA4: .4byte sa2__gUnknown_030054B4
_08019EA4: .4byte gMultiplayerRanks
_08019EA8:
ldrb r1, [r5, #1]
ldrb r0, [r5]
@@ -153,7 +153,7 @@ _08019ECE:
beq _08019EE2
lsls r0, r6, #0x18
lsrs r0, r0, #0x18
ldr r1, _08019EF0 @ =sa2__gUnknown_030054B4
ldr r1, _08019EF0 @ =gMultiplayerRanks
adds r1, r6, r1
ldrb r1, [r1]
bl CreateMultiplayerFinishResult
@@ -165,7 +165,7 @@ _08019EE2:
b _0801A0F6
.align 2, 0
_08019EEC: .4byte gMultiplayerPlayerTasks
_08019EF0: .4byte sa2__gUnknown_030054B4
_08019EF0: .4byte gMultiplayerRanks
_08019EF4:
cmp r3, #5
beq _08019EFA
@@ -236,7 +236,7 @@ _08019F6A:
cmp r0, r1
bne _08019FA0
movs r6, #0
ldr r3, _08019F9C @ =sa2__gUnknown_030054B4
ldr r3, _08019F9C @ =gMultiplayerRanks
movs r2, #4
ldr r1, _08019F90 @ =gMultiplayerPlayerTasks
_08019F7C:
@@ -255,10 +255,10 @@ _08019F86:
_08019F90: .4byte gMultiplayerPlayerTasks
_08019F94: .4byte gMultiplayerConnections
_08019F98: .4byte gMultiplayerCharRings
_08019F9C: .4byte sa2__gUnknown_030054B4
_08019F9C: .4byte gMultiplayerRanks
_08019FA0:
movs r6, #0
ldr r2, _08019FC8 @ =sa2__gUnknown_030054B4
ldr r2, _08019FC8 @ =gMultiplayerRanks
ldr r3, _08019FCC @ =gMultiplayerPlayerTasks
ldr r4, _08019FD0 @ =gMultiplayerConnections
_08019FA8:
@@ -278,7 +278,7 @@ _08019FA8:
movs r0, #0
b _08019FD6
.align 2, 0
_08019FC8: .4byte sa2__gUnknown_030054B4
_08019FC8: .4byte gMultiplayerRanks
_08019FCC: .4byte gMultiplayerPlayerTasks
_08019FD0: .4byte gMultiplayerConnections
_08019FD4:
@@ -300,7 +300,7 @@ _08019FE6:
beq _08019FFA
lsls r0, r6, #0x18
lsrs r0, r0, #0x18
ldr r1, _0801A008 @ =sa2__gUnknown_030054B4
ldr r1, _0801A008 @ =gMultiplayerRanks
adds r1, r6, r1
ldrb r1, [r1]
bl CreateMultiplayerFinishResult
@@ -312,7 +312,7 @@ _08019FFA:
b _0801A0F6
.align 2, 0
_0801A004: .4byte gMultiplayerPlayerTasks
_0801A008: .4byte sa2__gUnknown_030054B4
_0801A008: .4byte gMultiplayerRanks
_0801A00C:
cmp r3, #6
beq _0801A0F6
@@ -351,7 +351,7 @@ _0801A03E:
mov r8, r0
cmp r1, #0
beq _0801A078
ldr r5, _0801A098 @ =sa2__gUnknown_030054B4
ldr r5, _0801A098 @ =gMultiplayerRanks
movs r3, #1
rsbs r3, r3, #0
mov r1, r8
@@ -383,7 +383,7 @@ _0801A088: .4byte gCourseTime
_0801A08C: .4byte 0x00008CA0
_0801A090: .4byte gStageFlags
_0801A094: .4byte gMultiplayerPlayerTasks
_0801A098: .4byte sa2__gUnknown_030054B4
_0801A098: .4byte gMultiplayerRanks
_0801A09C:
subs r0, r4, #1
cmp r2, r0
@@ -407,7 +407,7 @@ _0801A0B2:
movs r6, #1
rsbs r6, r6, #0
_0801A0C0:
ldr r0, _0801A108 @ =sa2__gUnknown_030054B4
ldr r0, _0801A108 @ =gMultiplayerRanks
adds r0, r4, r0
ldrb r0, [r0]
lsls r0, r0, #0x18
@@ -445,7 +445,7 @@ _0801A0F6:
bx r0
.align 2, 0
_0801A104: .4byte gMultiplayerPlayerTasks
_0801A108: .4byte sa2__gUnknown_030054B4
_0801A108: .4byte gMultiplayerRanks
_0801A10C: .4byte gGameMode
.syntax divided
@@ -96,7 +96,7 @@ _0801B266:
ands r0, r1
cmp r0, #0
bne _0801B2B8
ldr r0, _0801B2B4 @ =sa2__gUnknown_030054B4
ldr r0, _0801B2B4 @ =gMultiplayerRanks
adds r0, r6, r0
ldrb r1, [r0]
adds r0, r3, #0
@@ -123,9 +123,9 @@ _0801B266:
.align 2, 0
_0801B2AC: .4byte gCurTask
_0801B2B0: .4byte gMultiSioStatusFlags
_0801B2B4: .4byte sa2__gUnknown_030054B4
_0801B2B4: .4byte gMultiplayerRanks
_0801B2B8:
ldr r0, _0801B42C @ =sa2__gUnknown_030054B4
ldr r0, _0801B42C @ =gMultiplayerRanks
adds r0, r0, r6
mov sb, r0
ldrb r0, [r0]
@@ -296,7 +296,7 @@ _0801B3F8:
adds r5, r1, r0
movs r0, #0xb6
strh r0, [r5, #0x16]
ldr r0, _0801B42C @ =sa2__gUnknown_030054B4
ldr r0, _0801B42C @ =gMultiplayerRanks
adds r0, r6, r0
movs r1, #0
ldrsb r1, [r0, r1]
@@ -309,7 +309,7 @@ _0801B3F8:
bl DisplaySprite
b _0801B4E4
.align 2, 0
_0801B42C: .4byte sa2__gUnknown_030054B4
_0801B42C: .4byte gMultiplayerRanks
_0801B430: .4byte gMultiSioRecv
_0801B434: .4byte 0x04000128
_0801B438: .4byte 0x00000434
@@ -665,7 +665,7 @@ _08013908:
cmp r0, #5
bne _080139C6
_08013934:
ldr r1, _08013A74 @ =sa2__gUnknown_030054B4
ldr r1, _08013A74 @ =gMultiplayerRanks
ldr r0, [r2]
lsls r0, r0, #0x1a
lsrs r0, r0, #0x1e
@@ -825,7 +825,7 @@ _08013A64: .4byte gCamera
_08013A68: .4byte gMultiplayerPlayerTasks
_08013A6C: .4byte 0x04000128
_08013A70: .4byte gGameMode
_08013A74: .4byte sa2__gUnknown_030054B4
_08013A74: .4byte gMultiplayerRanks
_08013A78: .4byte gMultiplayerConnections
_08013A7C: .4byte 0x03000054
_08013A80: .4byte gStageFlags
@@ -889,7 +889,7 @@ _08013ACC:
ands r0, r2
cmp r0, #0
bne _08013B10
ldr r1, _08013B98 @ =sa2__gUnknown_030054B4
ldr r1, _08013B98 @ =gMultiplayerRanks
adds r0, r6, #0
adds r0, #0x56
ldrb r0, [r0]
@@ -970,7 +970,7 @@ _08013B76:
str r1, [r2, #0x10]
b _08013BCC
.align 2, 0
_08013B98: .4byte sa2__gUnknown_030054B4
_08013B98: .4byte gMultiplayerRanks
_08013B9C: .4byte gGameMode
_08013BA0: .4byte 0x04000128
_08013BA4: .4byte gMultiplayerCharacters
@@ -1131,7 +1131,7 @@ _08013CAA:
ands r0, r2
cmp r0, #0
bne _08013CFE
ldr r1, _08013DD0 @ =sa2__gUnknown_030054B4
ldr r1, _08013DD0 @ =gMultiplayerRanks
adds r0, r6, #0
adds r0, #0x56
ldrb r0, [r0]
@@ -1263,7 +1263,7 @@ _08013DB4:
_08013DC4: .4byte 0xFFFFF7FF
_08013DC8: .4byte 0xFFFFCFFF
_08013DCC: .4byte gStageTime
_08013DD0: .4byte sa2__gUnknown_030054B4
_08013DD0: .4byte gMultiplayerRanks
_08013DD4: .4byte 0xFFFFFE7F
_08013DD8: .4byte gGameMode
_08013DDC: .4byte gMultiplayerConnections
+1 -1
View File
@@ -179,7 +179,7 @@ extern bool8 gUnknown_030055BC;
extern struct Task *gMultiplayerPlayerTasks[4];
extern s8 gMultiplayerCharacters[4];
extern s8 sa2__gUnknown_030054B4[4];
extern s8 gMultiplayerRanks[4];
extern u8 sa2__gUnknown_030054B8;
extern u8 gMultiplayerMissingHeartbeats[4];
+3 -3
View File
@@ -10,6 +10,9 @@
#include "lib/m4a/m4a.h"
#include "lib/agb_flash/agb_flash.h"
// TODO: Better name
#define VBLANK_FUNC_ID_NONE 0xFF
// TODO: the order of these vars has
// been shuffled due to compilation losses.
// It's possible to use `ramscrgen` to reorder
@@ -178,9 +181,6 @@ IntrFunc const gIntrTableTemplate[] = {
NULL,
};
// TODO: Better name
#define VBLANK_FUNC_ID_NONE 0xFF
// Result of these:
// FALSE: Not currently in vblank
// TRUE: Currently in VBlank /
+1 -1
View File
@@ -89,7 +89,7 @@ void GameInit(void)
for (i = 0; i < 4; i++) {
gMultiplayerCharacters[i] = 0;
sa2__gUnknown_030054B4[i] = 0;
gMultiplayerRanks[i] = 0;
gMultiplayerMissingHeartbeats[i] = 0;
}
+8 -8
View File
@@ -167,7 +167,7 @@ NONMATCH("asm/non_matching/game/interactables/stage_goal__Task_StageGoal.inc", v
// _0801F460
if (sp08) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] != -1) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] != -1) {
// _0801F482
s->variant = 1;
gCurTask->main = Task_StageGoal3;
@@ -197,12 +197,12 @@ NONMATCH("asm/non_matching/game/interactables/stage_goal__Task_StageGoal.inc", v
&& (RECT_BOTTOM(I(gPlayer.qWorldY), &gPlayer.spriteInfoBody->s.hitboxes[0].b) >= worldY))))))
|| !((gCurrentLevel == LEVEL_INDEX(ZONE_4, ACT_2)) || (gCurrentLevel == LEVEL_INDEX(ZONE_6, ACT_1)))) {
if (IS_MULTI_PLAYER) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] != -1) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] != -1) {
goto _30C;
}
} else {
// _0801F5A4
if (SA2_LABEL(gUnknown_030054B4)[0] != -1) {
if (gMultiplayerRanks[0] != -1) {
_30C:
s->variant = 1;
gCurTask->main = Task_StageGoal3;
@@ -279,7 +279,7 @@ void Task_StageGoal2(void)
TaskCreate(Task_ShowResults, 0, 0x2000, 0, NULL);
}
SA2_LABEL(gUnknown_030054B4)[0] = 0;
gMultiplayerRanks[0] = 0;
if (goal->unk3C++ > 120) {
if ((gPlayer.charState == CHARSTATE_28) || (gCurrentLevel == LEVEL_INDEX(ZONE_6, ACT_1))) {
@@ -344,7 +344,7 @@ void Task_StageGoal2(void)
r3 = (gMultiplayerConnections & (0x10 << SIO_MULTI_CNT->id)) >> (SIO_MULTI_CNT->id + 4);
if (r2 != r3) {
if (SA2_LABEL(gUnknown_030054B4)[i] == 0) {
if (gMultiplayerRanks[i] == 0) {
r8 = 1;
break;
}
@@ -356,7 +356,7 @@ void Task_StageGoal2(void)
if (t == NULL)
break;
if (SA2_LABEL(gUnknown_030054B4)[i] == -1) {
if (gMultiplayerRanks[i] == -1) {
mpp = TASK_DATA(gMultiplayerPlayerTasks[i]);
r2 = (gMultiplayerConnections & (0x10 << i)) >> (i + 4);
@@ -443,11 +443,11 @@ void Task_StageGoal4(void)
s->x = worldX - gCamera.x;
s->y = worldY - gCamera.y;
if (SA2_LABEL(gUnknown_030054B4)[sioId] == -1) {
if (gMultiplayerRanks[sioId] == -1) {
return;
}
r6 = SA2_LABEL(gUnknown_030054B4)[sioId];
r6 = gMultiplayerRanks[sioId];
if (gGameMode == GAME_MODE_MULTI_PLAYER || gGameMode == GAME_MODE_TEAM_PLAY) {
s32 count = 0;
+19 -19
View File
@@ -229,13 +229,13 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
case 1:
if ((gUnknown_030058B4 == 2) || (gGameMode == 3) || (gGameMode == 5)) {
for (i = 0; i < message->unk54; i++) {
switch (SA2_LABEL(gUnknown_030054B4)[i]) {
switch (gMultiplayerRanks[i]) {
case 0:
message->unk40[1][i] = 2;
message->unk40[0][i] = 2;
if (i == (SIO_MULTI_CNT->id)) {
} else if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
} else if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
if ((gGameMode != 3) && (gGameMode != 5)) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.draws;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.draws > 99) {
@@ -254,7 +254,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
message->unk40[1][i] = 3;
message->unk40[0][i] = 3;
if (i != (SIO_MULTI_CNT->id)) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins = 99;
@@ -284,13 +284,13 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
}
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
message->unk56 = 0;
if (++LOADED_SAVE->unk425 > 99) {
LOADED_SAVE->unk425 = 99;
}
} else {
if ((SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 4)) {
if ((gMultiplayerRanks[SIO_MULTI_CNT->id] == 4)) {
message->unk56 = 2;
if (++LOADED_SAVE->unk427 > 99) {
LOADED_SAVE->unk427 = 99;
@@ -304,13 +304,13 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
} else if (gGameMode == 4) {
for (i = 0, var_r2_3 = 0; i < message->unk54; i++) {
if (SA2_LABEL(gUnknown_030054B4)[i] == 0) {
if (gMultiplayerRanks[i] == 0) {
var_r2_3 += 1;
}
}
if (var_r2_3 == 1) {
for (i = 0; i < message->unk54; i++) {
if (SA2_LABEL(gUnknown_030054B4)[i] == 0) {
if (gMultiplayerRanks[i] == 0) {
message->unk40[1][i] = 2;
message->unk40[0][i] = 2;
@@ -324,7 +324,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
message->unk40[1][i] = 3;
message->unk40[0][i] = 3;
if ((i != (SIO_MULTI_CNT->id)) && (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0)) {
if ((i != (SIO_MULTI_CNT->id)) && (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0)) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins = 99;
@@ -333,7 +333,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
}
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
message->unk56 = 0;
if (++LOADED_SAVE->unk425 > 99) {
LOADED_SAVE->unk425 = 99;
@@ -362,11 +362,11 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
} else {
for (i = 0; i < message->unk54; i++) {
if (SA2_LABEL(gUnknown_030054B4)[i] == 0) {
if (gMultiplayerRanks[i] == 0) {
message->unk40[1][i] = 4;
message->unk40[0][i] = 4;
if (i != (SIO_MULTI_CNT->id)) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] != 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] != 0) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.losses;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.losses > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.losses = 99;
@@ -382,7 +382,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
message->unk40[1][i] = 3;
message->unk40[0][i] = 3;
if (i != (SIO_MULTI_CNT->id)) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins = 99;
@@ -397,7 +397,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
}
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
message->unk56 = 2;
if (++LOADED_SAVE->unk427 > 99) {
LOADED_SAVE->unk427 = 99;
@@ -411,7 +411,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
} else {
for (var_r6 = 0, i = 0; i < message->unk54; i++) {
if (SA2_LABEL(gUnknown_030054B4)[i] == 4) {
if (gMultiplayerRanks[i] == 4) {
var_r6++;
}
}
@@ -423,7 +423,7 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
} else {
for (i = 0; i < message->unk54; i++) {
switch (SA2_LABEL(gUnknown_030054B4)[i]) {
switch (gMultiplayerRanks[i]) {
case 0:
message->unk40[1][i] = 7;
message->unk40[0][i] = 2;
@@ -455,12 +455,12 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
if (i != SIO_MULTI_CNT->id) {
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] < SA2_LABEL(gUnknown_030054B4)[i]) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] < gMultiplayerRanks[i]) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.wins = 99;
}
} else if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == SA2_LABEL(gUnknown_030054B4)[i]) {
} else if (gMultiplayerRanks[SIO_MULTI_CNT->id] == gMultiplayerRanks[i]) {
++LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.draws;
if (LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.draws > 99) {
LOADED_SAVE->multiplayerScores[gUnknown_03005008[i]].data.split.draws = 99;
@@ -475,13 +475,13 @@ NONMATCH("asm/non_matching/game/multiplayer/chao_message__sub_803AB60.inc", void
}
}
}
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] == 0) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] == 0) {
message->unk56 = 0;
++LOADED_SAVE->unk425;
if (LOADED_SAVE->unk425 > 99) {
LOADED_SAVE->unk425 = 99;
}
} else if ((SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] != 4) || (var_r6 != message->unk54)) {
} else if ((gMultiplayerRanks[SIO_MULTI_CNT->id] != 4) || (var_r6 != message->unk54)) {
message->unk56 = 1;
++LOADED_SAVE->unk426;
if (LOADED_SAVE->unk426 > 99) {
+22 -22
View File
@@ -96,7 +96,7 @@ void CreateMultiplayerFinishResult(u8 sioId, u8 count)
u32 i = 0;
#if (GAME == GAME_SA2)
if (SA2_LABEL(gUnknown_030054B4)[sioId] == -1)
if (gMultiplayerRanks[sioId] == -1)
#endif
{
struct Task *t = TaskCreate(SA2_LABEL(Task_8019E70), sizeof(MpFinish1), 0x2010, 0, SA2_LABEL(TaskDestructor_8019EF4));
@@ -112,10 +112,10 @@ void CreateMultiplayerFinishResult(u8 sioId, u8 count)
}
if (count < 6) {
SA2_LABEL(gUnknown_030054B4)[sioId] = count;
gMultiplayerRanks[sioId] = count;
} else {
// BUG(?): Value underflows if i is 0
SA2_LABEL(gUnknown_030054B4)[sioId] = i - 1;
gMultiplayerRanks[sioId] = i - 1;
}
finish->unk30 = sioId;
@@ -268,20 +268,20 @@ void CreateMultiplayerFinishHandler(void)
if (var_r6 != 0) {
if (arr2[var_r6] != arr2[0]) {
SA2_LABEL(gUnknown_030054B4)[*ptr] = 1;
gMultiplayerRanks[*ptr] = 1;
} else {
SA2_LABEL(gUnknown_030054B4)[*ptr] = 4;
gMultiplayerRanks[*ptr] = 4;
}
} else if (arr2[0] == arr2[1]) {
SA2_LABEL(gUnknown_030054B4)[*ptr] = 4;
gMultiplayerRanks[*ptr] = 4;
} else {
SA2_LABEL(gUnknown_030054B4)[arr[0]] = var_r6;
gMultiplayerRanks[arr[0]] = var_r6;
}
}
for (var_r6 = 0; var_r6 < 4; var_r6++) {
if (gMultiplayerPlayerTasks[var_r6] != NULL) {
CreateMultiplayerFinishResult(var_r6, (u8)SA2_LABEL(gUnknown_030054B4)[var_r6]);
CreateMultiplayerFinishResult(var_r6, (u8)gMultiplayerRanks[var_r6]);
}
}
} else if (gGameMode == 5) {
@@ -297,23 +297,23 @@ void CreateMultiplayerFinishHandler(void)
if (arr2[0] == arr2[1]) {
for (var_r6 = 0; var_r6 < 4; var_r6++) {
if (gMultiplayerPlayerTasks[var_r6] != NULL) {
SA2_LABEL(gUnknown_030054B4)[var_r6] = 4;
gMultiplayerRanks[var_r6] = 4;
}
}
} else {
for (var_r6 = 0; var_r6 < 4; var_r6++) {
if (gMultiplayerPlayerTasks[var_r6] != NULL) {
if (((gMultiplayerConnections & (0x10 << var_r6)) >> (var_r6 + 4)) == arr[0]) {
SA2_LABEL(gUnknown_030054B4)[var_r6] = 0;
gMultiplayerRanks[var_r6] = 0;
} else {
SA2_LABEL(gUnknown_030054B4)[var_r6] = 1;
gMultiplayerRanks[var_r6] = 1;
}
}
}
}
for (var_r6 = 0; var_r6 < 4; var_r6++) {
if (gMultiplayerPlayerTasks[var_r6] != NULL) {
CreateMultiplayerFinishResult(var_r6, SA2_LABEL(gUnknown_030054B4)[var_r6]);
CreateMultiplayerFinishResult(var_r6, gMultiplayerRanks[var_r6]);
}
}
} else if (gGameMode != 6) {
@@ -322,7 +322,7 @@ void CreateMultiplayerFinishHandler(void)
u32 var_r2 = 0;
if ((gGameMode != 3) && (gGameMode != 5)) {
for (var_r4 = 0; var_r4 < 4 && (gMultiplayerPlayerTasks[var_r4] != NULL); var_r4++) {
if (SA2_LABEL(gUnknown_030054B4)[var_r4] != -1) {
if (gMultiplayerRanks[var_r4] != -1) {
var_r2 += 1;
}
}
@@ -339,7 +339,7 @@ void CreateMultiplayerFinishHandler(void)
}
for (var_r4 = 0; var_r4 < 4 && (gMultiplayerPlayerTasks[var_r4] != NULL); var_r4++) {
if ((SA2_LABEL(gUnknown_030054B4)[var_r4] == -1) || (gGameMode == 3) || (gGameMode == 5)) {
if ((gMultiplayerRanks[var_r4] == -1) || (gGameMode == 3) || (gGameMode == 5)) {
CreateMultiplayerFinishResult(var_r4, var_r5);
}
}
@@ -363,7 +363,7 @@ void CreateMultiplayerFinishHandler(void)
break;
}
if (SA2_LABEL(gUnknown_030054B4)[i] != -1) {
if (gMultiplayerRanks[i] != -1) {
r2++;
}
}
@@ -384,7 +384,7 @@ void CreateMultiplayerFinishHandler(void)
break;
}
if (SA2_LABEL(gUnknown_030054B4)[i] == -1) {
if (gMultiplayerRanks[i] == -1) {
MultiplayerPlayer *mpp;
mpt = gMultiplayerPlayerTasks[i];
mpp = TASK_DATA(mpt);
@@ -465,14 +465,14 @@ void Task_TransitionToResultsScreen(void)
if (i != 0) {
if (sp04[i] != sp04[0]) {
SA2_LABEL(gUnknown_030054B4)[sp00[i]] = i;
gMultiplayerRanks[sp00[i]] = i;
gMultiplayerCharacters[sp00[i]] = 1;
} else {
#ifndef NON_MATCHING
// TODO: Match without goto
goto else_block;
#else
SA2_LABEL(gUnknown_030054B4)[sp00[i]] = i;
gMultiplayerRanks[sp00[i]] = i;
gMultiplayerCharacters[sp00[i]] = 2;
#endif
}
@@ -482,10 +482,10 @@ void Task_TransitionToResultsScreen(void)
#ifndef NON_MATCHING
else_block:
#endif
SA2_LABEL(gUnknown_030054B4)[sp00[i]] = i;
gMultiplayerRanks[sp00[i]] = i;
gMultiplayerCharacters[sp00[i]] = 2;
} else {
SA2_LABEL(gUnknown_030054B4)[sp00[0]] = i;
gMultiplayerRanks[sp00[0]] = i;
gMPRingCollectWins[sp00[0]]++;
gMultiplayerCharacters[sp00[0]] = i;
}
@@ -534,9 +534,9 @@ void Task_TransitionToResultsScreen(void)
if (pid == SIO_MULTI_CNT->id)
continue;
if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] < SA2_LABEL(gUnknown_030054B4)[pid]) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] < gMultiplayerRanks[pid]) {
foeResult = 0;
} else if (SA2_LABEL(gUnknown_030054B4)[SIO_MULTI_CNT->id] > SA2_LABEL(gUnknown_030054B4)[pid]) {
} else if (gMultiplayerRanks[SIO_MULTI_CNT->id] > gMultiplayerRanks[pid]) {
foeResult = 1;
ownResult = 1;
} else {
+3 -3
View File
@@ -132,7 +132,7 @@ void sa2__sub_80818B8(void)
for (var_r1 = 0; var_r1 < 4; var_r1++) {
gMultiplayerCharacters[var_r1] = 0;
gMPRingCollectWins[var_r1] = 0;
SA2_LABEL(gUnknown_030054B4)[var_r1] = var_r1;
gMultiplayerRanks[var_r1] = var_r1;
gMultiplayerMissingHeartbeats[var_r1] = 0;
}
gCurTask->main = SA2_LABEL(sub_8081D58);
@@ -164,7 +164,7 @@ void sub_800FBF8(void)
for (var_r1 = 0; var_r1 < 4; var_r1++) {
gMultiplayerCharacters[var_r1] = 0;
gMPRingCollectWins[var_r1] = 0;
SA2_LABEL(gUnknown_030054B4)[var_r1] = var_r1;
gMultiplayerRanks[var_r1] = var_r1;
gMultiplayerMissingHeartbeats[var_r1] = 0;
}
*gIntrTable = modeSelect->fn1F0;
@@ -289,7 +289,7 @@ void ShowSinglePakResults(void)
for (i = 0; i < MULTI_SIO_PLAYERS_MAX; i++) {
gMultiplayerCharacters[i] = 0;
gMPRingCollectWins[i] = 0;
SA2_LABEL(gUnknown_030054B4)[i] = i;
gMultiplayerRanks[i] = i;
gMultiplayerMissingHeartbeats[i] = 0;
}
+6 -6
View File
@@ -439,7 +439,7 @@ block_57:
}
UpdateSpriteAnimation(&mpp->s);
sp4 = TASK_DATA(gMultiplayerPlayerTasks[SIO_MULTI_CNT->id]);
if (((gGameMode == 3) || (gGameMode == 5)) && (sa2__gUnknown_030054B4[SIO_MULTI_CNT->id] == -1)) {
if (((gGameMode == 3) || (gGameMode == 5)) && (gMultiplayerRanks[SIO_MULTI_CNT->id] == -1)) {
var_sl = 1;
for (var_r4 = 0; var_r4 < 4 && (gMultiplayerPlayerTasks[var_r4] != NULL); var_r4++) {
u32 connection = gMultiplayerConnections;
@@ -491,7 +491,7 @@ block_57:
} else {
block_101:
if ((0x80 & gPlayer.itemEffect) || (0x80 & mpp->unk57) || (gPlayer.timerInvulnerability != 0) || (gPlayer.moveState & 0x80)
|| (sa2__gUnknown_030054B4[mpp->unk56] != -1)) {
|| (gMultiplayerRanks[mpp->unk56] != -1)) {
block_106:
if (gGameMode != 6) {
if (mpp->unk56 != SIO_MULTI_CNT->id) {
@@ -556,7 +556,7 @@ block_57:
return;
}
if ((gStageTime & 2) || (0x20 & mpp->unk57) || (((1 & mpp->unk5C) != 0)) || (sa2__gUnknown_030054B4[mpp->unk56] != -1)
if ((gStageTime & 2) || (0x20 & mpp->unk57) || (((1 & mpp->unk5C) != 0)) || (gMultiplayerRanks[mpp->unk56] != -1)
|| ((mpp->unk60 == 0) && !(4 & mpp->unk54) && !(mpp->unk5C & 2))) {
s->oamFlags = (mpp->unk54 & 0x80) ? 0x440 : 0x400;
s->frameFlags &= ~0x180;
@@ -774,7 +774,7 @@ NONMATCH("asm/non_matching/game/multiplayer/mp_player__Task_CreateMultiplayerPla
UpdateSpriteAnimation(s);
}
if (gGameMode == GAME_MODE_TEAM_PLAY && gUnknown_030054B4[SIO_MULTI_CNT->id] == -1) {
if (gGameMode == GAME_MODE_TEAM_PLAY && gMultiplayerRanks[SIO_MULTI_CNT->id] == -1) {
u32 someBool = TRUE;
for (i = 0; i < 4; i++) {
if (gMultiplayerPlayerTasks[i] == NULL) {
@@ -830,7 +830,7 @@ NONMATCH("asm/non_matching/game/multiplayer/mp_player__Task_CreateMultiplayerPla
}
} else {
if ((gPlayer.itemEffect & PLAYER_ITEM_EFFECT__TELEPORT) || (mpp->unk57 & 0x80) || gPlayer.timerInvincibility == 0
|| !PLAYER_IS_ALIVE || gUnknown_030054B4[mpp->unk56] != -1) {
|| !PLAYER_IS_ALIVE || gMultiplayerRanks[mpp->unk56] != -1) {
if (gGameMode != GAME_MODE_MULTI_PLAYER_COLLECT_RINGS) {
if (mpp->unk56 == SIO_MULTI_CNT->id && gMultiplayerCharacters[mpp->unk56] == CHARACTER_TAILS
&& gMultiplayerCharacters[mpp->unk56] == CHARACTER_KNUCKLES && mpp->unk5C & 4) {
@@ -891,7 +891,7 @@ NONMATCH("asm/non_matching/game/multiplayer/mp_player__Task_CreateMultiplayerPla
s->frameFlags |= (mpp->unk54 & 0x30) << 8;
if (!(mpp->unk54 & 0x40)
&& ((gStageTime & 2 || mpp->unk57 & 0x20 || mpp->unk5C & 1 || gUnknown_030054B4[mpp->unk56] != -1)
&& ((gStageTime & 2 || mpp->unk57 & 0x20 || mpp->unk5C & 1 || gMultiplayerRanks[mpp->unk56] != -1)
|| (mpp->unk60 == 0 && !(mpp->unk54 & 4) && !(mpp->unk5C & 2)))) {
s->oamFlags = SPRITE_OAM_ORDER(16);
if (mpp->unk54 & 0x80) {
+6 -6
View File
@@ -116,7 +116,7 @@ void ReceiveRoomEvent_ItemEffect(union MultiSioData *recv, u8 i)
MultiplayerPlayer *mpp = TASK_DATA(gMultiplayerPlayerTasks[i]);
MultiplayerPlayer *us = TASK_DATA(gMultiplayerPlayerTasks[SIO_MULTI_CNT->id]);
if (!(us->unk5C & 1) && PLAYER_IS_ALIVE && sa2__gUnknown_030054B4[SIO_MULTI_CNT->id] == -1) {
if (!(us->unk5C & 1) && PLAYER_IS_ALIVE && gMultiplayerRanks[SIO_MULTI_CNT->id] == -1) {
switch (recv->pat0.unkF) {
case 0: {
if (!IS_MP_OR_TEAM_PLAY
@@ -245,7 +245,7 @@ NONMATCH("asm/non_matching/game/multiplayer/evt_mgr__ReceiveRoomEvent_ReachedSta
#if (GAME == GAME_SA1)
if (mpp2->unk5C & 1)
#else
if (mpp2->unk5C & 1 && sa2__gUnknown_030054B4[j] != -1)
if (mpp2->unk5C & 1 && gMultiplayerRanks[j] != -1)
#endif
{
count2++;
@@ -254,13 +254,13 @@ NONMATCH("asm/non_matching/game/multiplayer/evt_mgr__ReceiveRoomEvent_ReachedSta
} else {
if ((gMultiplayerConnections & (0x10 << (j))) >> ((j + 4))
!= (gMultiplayerConnections & (0x10 << (SIO_MULTI_CNT->id))) >> (SIO_MULTI_CNT->id + 4)
&& (s8)sa2__gUnknown_030054B4[j] == 0) {
&& (s8)gMultiplayerRanks[j] == 0) {
count2 = 1;
}
}
}
if (sa2__gUnknown_030054B4[i] == -1) {
if (gMultiplayerRanks[i] == -1) {
CreateMultiplayerFinishResult(i, count2);
} else {
somebool = 1;
@@ -268,7 +268,7 @@ NONMATCH("asm/non_matching/game/multiplayer/evt_mgr__ReceiveRoomEvent_ReachedSta
if (gGameMode == GAME_MODE_MULTI_PLAYER || gGameMode == GAME_MODE_TEAM_PLAY) {
for (j = 0; j < 4 && gMultiplayerPlayerTasks[j] != NULL; j++) {
if (j != i && sa2__gUnknown_030054B4[j] == -1
if (j != i && gMultiplayerRanks[j] == -1
&& (gMultiplayerConnections & (0x10 << (j))) >> ((j + 4)) == (gMultiplayerConnections & (0x10 << (i))) >> (i + 4)) {
CreateMultiplayerFinishResult(j, count2);
if (j == SIO_MULTI_CNT->id) {
@@ -318,7 +318,7 @@ NONMATCH("asm/non_matching/game/multiplayer/evt_mgr__ReceiveRoomEvent_ReachedSta
mpp2 = TASK_DATA(gMultiplayerPlayerTasks[j]);
if (j != i) {
if (sa2__gUnknown_030054B4[j] == -1) {
if (gMultiplayerRanks[j] == -1) {
if (gGameMode == GAME_MODE_MULTI_PLAYER || gGameMode == GAME_MODE_TEAM_PLAY || gGameMode == GAME_MODE_TEAM_PLAY) {
CreateMultiplayerFinishResult(j, 1);
} else {
+14 -15
View File
@@ -398,20 +398,20 @@ void SA2_LABEL(Task_808207C)(void)
for (i = 0; i < 4; i++) {
if (!(gMultiSioStatusFlags & MULTI_SIO_RECV_ID(i + 8))) {
if (SA2_LABEL(gUnknown_030054B4)[i] & 1) {
if (gMultiplayerRanks[i] & 1) {
SA2_LABEL(sub_80078D4)(3, i * 40, (i + 1) * 40, DISPLAY_WIDTH - resultsScreen->unk430, DISPLAY_HEIGHT - i * 40);
} else {
SA2_LABEL(sub_80078D4)(3, i * 40, (i + 1) * 40, resultsScreen->unk430 - DISPLAY_WIDTH, DISPLAY_HEIGHT - i * 40);
}
} else {
if (SA2_LABEL(gUnknown_030054B4)[i] & 1) {
if (gMultiplayerRanks[i] & 1) {
SA2_LABEL(sub_80078D4)
(3, SA2_LABEL(gUnknown_030054B4)[i] * 40, (SA2_LABEL(gUnknown_030054B4)[i] + 1) * 40,
DISPLAY_WIDTH - resultsScreen->unk430, (i * 5 - SA2_LABEL(gUnknown_030054B4)[i] * 5) * 8);
(3, gMultiplayerRanks[i] * 40, (gMultiplayerRanks[i] + 1) * 40, DISPLAY_WIDTH - resultsScreen->unk430,
(i * 5 - gMultiplayerRanks[i] * 5) * 8);
} else {
SA2_LABEL(sub_80078D4)
(3, SA2_LABEL(gUnknown_030054B4)[i] * 40, (SA2_LABEL(gUnknown_030054B4)[i] + 1) * 40,
resultsScreen->unk430 - DISPLAY_WIDTH, (i * 5 - SA2_LABEL(gUnknown_030054B4)[i] * 5) * 8);
(3, gMultiplayerRanks[i] * 40, (gMultiplayerRanks[i] + 1) * 40, resultsScreen->unk430 - DISPLAY_WIDTH,
(i * 5 - gMultiplayerRanks[i] * 5) * 8);
}
}
}
@@ -554,7 +554,7 @@ void SA2_LABEL(sub_808267C)(void)
for (i = 0; i < 4; i++) {
gMultiplayerCharacters[i] = 0;
SA2_LABEL(gUnknown_030054B4)[i] = i;
gMultiplayerRanks[i] = i;
}
gFlags &= ~4;
@@ -612,15 +612,14 @@ void SA2_LABEL(sub_8082788)(void)
for (i = 0; i < 4; i++) {
if (!(gMultiSioStatusFlags & MULTI_SIO_RECV_ID(i + 8))) {
#if (GAME == GAME_SA1) && !defined(NON_MATCHING)
u32 unk = SA2_LABEL(gUnknown_030054B4)[i] & 0x1;
u32 unk = gMultiplayerRanks[i] & 0x1;
asm("" ::"r"(unk));
#endif
SA2_LABEL(sub_80078D4)(3, i * 40, (i + 1) * 40, 0, DISPLAY_HEIGHT - i * 40);
} else {
union MultiSioData *send_recv;
SA2_LABEL(sub_80078D4)
(3, SA2_LABEL(gUnknown_030054B4)[i] * 40, (SA2_LABEL(gUnknown_030054B4)[i] + 1) * 40, 0,
i * 40 - SA2_LABEL(gUnknown_030054B4)[i] * 40);
(3, gMultiplayerRanks[i] * 40, (gMultiplayerRanks[i] + 1) * 40, 0, i * 40 - gMultiplayerRanks[i] * 40);
#if (GAME == GAME_SA1)
send_recv = &gMultiSioRecv[i];
if ((i == SIO_MULTI_CNT->id) || send_recv->pat0.unk0 > 15)
@@ -631,13 +630,13 @@ void SA2_LABEL(sub_8082788)(void)
s = &resultsScreen->unk80[i].unk0;
s->x = (DISPLAY_WIDTH / 2);
s->y = SA2_LABEL(gUnknown_030054B4)[i] * 40 + 20;
s->y = gMultiplayerRanks[i] * 40 + 20;
UpdateSpriteAnimation(s);
DisplaySprite(s);
s = &resultsScreen->unk370[gMultiplayerCharacters[i]];
s->x = 52;
s->y = SA2_LABEL(gUnknown_030054B4)[i] * 40 + 20;
s->y = gMultiplayerRanks[i] * 40 + 20;
DisplaySprite(s);
// TODO: Fix type
@@ -653,7 +652,7 @@ void SA2_LABEL(sub_8082788)(void)
if (s != &resultsScreen->unk160[0]) {
s->x = 160;
s->y = SA2_LABEL(gUnknown_030054B4)[i] * 40 + 20;
s->y = gMultiplayerRanks[i] * 40 + 20;
DisplaySprite(s);
}
@@ -661,13 +660,13 @@ void SA2_LABEL(sub_8082788)(void)
if (s != &resultsScreen->unk160[0] || (temp > 0xFF)) {
s->x = 171;
s->y = SA2_LABEL(gUnknown_030054B4)[i] * 40 + 20;
s->y = gMultiplayerRanks[i] * 40 + 20;
DisplaySprite(s);
}
s = &resultsScreen->unk160[(temp)&0xF];
s->x = 182;
s->y = SA2_LABEL(gUnknown_030054B4)[i] * 40 + 20;
s->y = gMultiplayerRanks[i] * 40 + 20;
DisplaySprite(s);
} else {
u16 temp;
+2 -2
View File
@@ -238,7 +238,7 @@ void Task_801C810()
gCurTask->main = Task_801C8D4;
}
if (SA2_LABEL(gUnknown_030054B4[SIO_MULTI_CNT->id]) != -1) {
if (gMultiplayerRanks[SIO_MULTI_CNT->id] != -1) {
TaskDestroy(gCurTask);
}
}
@@ -252,7 +252,7 @@ void Task_801C8D4()
UnkMP0 *strc = TASK_DATA(gCurTask);
strc->unk2 -= 64;
if ((strc->unk2 < 0x0) || (SA2_LABEL(gUnknown_030054B4[SIO_MULTI_CNT->id]) != -1)) {
if ((strc->unk2 < 0x0) || (gMultiplayerRanks[SIO_MULTI_CNT->id] != -1)) {
TaskDestroy(gCurTask);
return;
}
+1 -1
View File
@@ -73,7 +73,7 @@ MusicManagerState ALIGNED(8) gMusicManagerState = {};
#if (GAME == GAME_SA2)
u8 gUnknown_030054B0 = 0;
#endif
s8 ALIGNED(4) sa2__gUnknown_030054B4[MULTI_SIO_PLAYERS_MAX] = {};
s8 ALIGNED(4) gMultiplayerRanks[MULTI_SIO_PLAYERS_MAX] = {};
u8 ALIGNED(4) sa2__gUnknown_030054B8 = 0;
#if (GAME == GAME_SA1)
+8 -9
View File
@@ -217,10 +217,9 @@ void Task_Item_Shield_Magnetic(void)
bool32 b;
#endif
if(IS_MULTI_PLAYER) {
if (IS_MULTI_PLAYER) {
MultiplayerPlayer *mpp = TASK_DATA(gMultiplayerPlayerTasks[pid]);
if (!(mpp->unk57 & PLAYER_ITEM_EFFECT__SHIELD_MAGNETIC)) {
TaskDestroy(t);
return;
@@ -228,7 +227,7 @@ void Task_Item_Shield_Magnetic(void)
item->s.x = mpp->pos.x - cam->x;
item->s.y = mpp->pos.y - cam->y;
item->s.frameFlags &= ~SPRITE_FLAG_MASK_PRIORITY;
item->s.frameFlags |= mpp->s.frameFlags & SPRITE_FLAG_MASK_PRIORITY;
} else {
@@ -241,27 +240,27 @@ void Task_Item_Shield_Magnetic(void)
if (!(p->itemEffect & PLAYER_ITEM_EFFECT__INVINCIBILITY)) {
s32 screenX, screenY;
screenX = I(p->qWorldX) - (u16)cam->x;
item->s.x = screenX + p->SA2_LABEL(unk7C);
screenY = I(p->qWorldY) - (u16)cam->y;
item->s.y = screenY;
item->s.frameFlags &= ~SPRITE_FLAG_MASK_PRIORITY;
item->s.frameFlags |= p->spriteInfoBody->s.frameFlags & SPRITE_FLAG_MASK_PRIORITY;
} else {
return;
}
}
UpdateSpriteAnimation(&item->s);
pid2 = pid;
b = 1;
pid2 &= b;
if (((gStageTime & 0x2) && (pid2 != b)) || (!(gStageTime & 0x2) && (pid2 != 0))) {
DisplaySprite(&item->s);
}
+2 -2
View File
@@ -314,7 +314,7 @@ void CreateGameStage(void)
#endif
}
SA2_LABEL(gUnknown_030054B4)[i] = -1;
gMultiplayerRanks[i] = -1;
if (gGameMode == GAME_MODE_MULTI_PLAYER_COLLECT_RINGS) {
gMultiplayerCharacters[i] = i;
@@ -339,7 +339,7 @@ void CreateGameStage(void)
}
} else {
for (i = 0; i < 4; i++) {
SA2_LABEL(gUnknown_030054B4)[i] = -1;
gMultiplayerRanks[i] = -1;
}
}