Difference between revisions of "Find Unit's Party Data Location"
Jump to navigation
Jump to search
(Created page with " Find Unit's Party Data Location 00059f94: 00002821 addu r5,r0,r0 Counter = 0 00059f98: 340600ff ori r6,r0,0x00ff r6 = FF 00059f9c: 3c038005 lui r3,0x8005 00059fa0: 2463...") |
|||
(4 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | + | Parameters: r4 = ENTD Sprite Set | |
+ | Returns r2 = Roster Slot ID | ||
+ | r2 = 0xFFFF if unit is not found | ||
+ | r3 = Unit's [[World Stats]] Address (if they exist) | ||
+ | ---------------------------------------------------------------------------------------------- | ||
00059f94: 00002821 addu r5,r0,r0 Counter = 0 | 00059f94: 00002821 addu r5,r0,r0 Counter = 0 | ||
00059f98: 340600ff ori r6,r0,0x00ff r6 = FF | 00059f98: 340600ff ori r6,r0,0x00ff r6 = FF | ||
Line 19: | Line 23: | ||
00059fd8: 03e00008 jr r31 | 00059fd8: 03e00008 jr r31 | ||
00059fdc: 00000000 nop | 00059fdc: 00000000 nop | ||
+ | |||
+ | |||
+ | |||
+ | == Return Locations == | ||
+ | '''SCUS_942.21''' | ||
+ | 8005b054: [[Prep for Initializing Unit's Job Data]] |
Latest revision as of 21:43, 12 October 2024
Parameters: r4 = ENTD Sprite Set Returns r2 = Roster Slot ID r2 = 0xFFFF if unit is not found r3 = Unit's World Stats Address (if they exist) ---------------------------------------------------------------------------------------------- 00059f94: 00002821 addu r5,r0,r0 Counter = 0 00059f98: 340600ff ori r6,r0,0x00ff r6 = FF 00059f9c: 3c038005 lui r3,0x8005 00059fa0: 24637f74 addiu r3,r3,0x7f74 r3 = Party Data Pointer 00059fa4: 90620001 lbu r2,0x0001(r3) Load Unit's Party ID 00059fa8: 00000000 nop 00059fac: 10460005 beq r2,r6,0x00059fc4 Branch if Unit doesn't exist 00059fb0: 00000000 nop 00059fb4: 90620000 lbu r2,0x0000(r3) Load Unit's Sprite Set 00059fb8: 00000000 nop 00059fbc: 10440006 beq r2,r4,0x00059fd8 Branch if Sprite Set = ENTD Sprite Set 00059fc0: 00a01021 addu r2,r5,r0 Party ID = Counter 00059fc4: 24a50001 addiu r5,r5,0x0001 Counter ++ 00059fc8: 28a20014 slti r2,r5,0x0014 00059fcc: 1440fff5 bne r2,r0,0x00059fa4 Branch if Counter < 20 00059fd0: 24630100 addiu r3,r3,0x0100 Party Data Pointer += 0x100 00059fd4: 2402ffff addiu r2,r0,0xffff Party ID = FFFF (unit doesn't exist) 00059fd8: 03e00008 jr r31 00059fdc: 00000000 nop
Return Locations
SCUS_942.21 8005b054: Prep for Initializing Unit's Job Data