Difference between revisions of "0019db80 - 0019dca8"
Jump to navigation
Jump to search
(Replaced with the correct routine) |
(Added Documentation) |
||
Line 1: | Line 1: | ||
<font face='Courier New'> | <font face='Courier New'> | ||
+ | Set Critical based on Movement Taken | ||
+ | |||
0019db80: 3c03801a lui r3,0x801a | 0019db80: 3c03801a lui r3,0x801a | ||
− | 0019db84: 8c63f3dc lw r3,-0x0c24(r3) | + | 0019db84: 8c63f3dc lw r3,-0x0c24(r3) Load Suggested? Coordinates |
0019db88: 3c02801a lui r2,0x801a | 0019db88: 3c02801a lui r2,0x801a | ||
− | 0019db8c: 8c4201f4 lw r2,0x01f4(r2) | + | 0019db8c: 8c4201f4 lw r2,0x01f4(r2) Load Acting Unit's Coordinate |
0019db90: 27bdffe8 addiu r29,r29,0xffe8 | 0019db90: 27bdffe8 addiu r29,r29,0xffe8 | ||
0019db94: afb00010 sw r16,0x0010(r29) | 0019db94: afb00010 sw r16,0x0010(r29) | ||
0019db98: 3c10801a lui r16,0x801a | 0019db98: 3c10801a lui r16,0x801a | ||
− | 0019db9c: 2610f3c4 addiu r16,r16,0xf3c4 | + | 0019db9c: 2610f3c4 addiu r16,r16,0xf3c4 Get AI Data Pointer |
− | 0019dba0: 1062003d beq r3,r2,0x0019dc98 | + | 0019dba0: 1062003d beq r3,r2,0x0019dc98 Exit if Coordinates match |
0019dba4: afbf0014 sw r31,0x0014(r29) | 0019dba4: afbf0014 sw r31,0x0014(r29) | ||
− | 0019dba8: 0c067c96 jal 0x0019f258 | + | 0019dba8: 0c067c96 jal 0x0019f258 Store Unit Coordinates |
0019dbac: 26040018 addiu r4,r16,0x0018 | 0019dbac: 26040018 addiu r4,r16,0x0018 | ||
+ | |||
0019dbb0: 3c03801a lui r3,0x801a | 0019dbb0: 3c03801a lui r3,0x801a | ||
− | 0019dbb4: 90630083 lbu r3,0x0083(r3) | + | 0019dbb4: 90630083 lbu r3,0x0083(r3) Load ? |
0019dbb8: 34020001 ori r2,r0,0x0001 | 0019dbb8: 34020001 ori r2,r0,0x0001 | ||
− | 0019dbbc: 1462001b bne r3,r2,0x0019dc2c | + | 0019dbbc: 1462001b bne r3,r2,0x0019dc2c Branch if ? True |
0019dbc0: 00000000 nop | 0019dbc0: 00000000 nop | ||
+ | |||
+ | Reset HP/MP/Critical Statuses | ||
0019dbc4: 3c03801a lui r3,0x801a | 0019dbc4: 3c03801a lui r3,0x801a | ||
− | 0019dbc8: 8c630bbc lw r3,0x0bbc(r3) | + | 0019dbc8: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer |
0019dbcc: 00000000 nop | 0019dbcc: 00000000 nop | ||
− | 0019dbd0: 9462002a lhu r2,0x002a(r3) | + | 0019dbd0: 9462002a lhu r2,0x002a(r3) Load Max HP |
0019dbd4: 00000000 nop | 0019dbd4: 00000000 nop | ||
− | 0019dbd8: a4620028 sh r2,0x0028(r3) | + | 0019dbd8: a4620028 sh r2,0x0028(r3) Save to Current HP |
0019dbdc: 3c03801a lui r3,0x801a | 0019dbdc: 3c03801a lui r3,0x801a | ||
− | 0019dbe0: 8c630bbc lw r3,0x0bbc(r3) | + | 0019dbe0: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer |
0019dbe4: 00000000 nop | 0019dbe4: 00000000 nop | ||
− | 0019dbe8: 9462002e lhu r2,0x002e(r3) | + | 0019dbe8: 9462002e lhu r2,0x002e(r3) Load Max MP |
0019dbec: 00000000 nop | 0019dbec: 00000000 nop | ||
− | 0019dbf0: a462002c sh r2,0x002c(r3) | + | 0019dbf0: a462002c sh r2,0x002c(r3) Save to curMP |
0019dbf4: 3c03801a lui r3,0x801a | 0019dbf4: 3c03801a lui r3,0x801a | ||
− | 0019dbf8: 8c630bbc lw r3,0x0bbc(r3) | + | 0019dbf8: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer |
0019dbfc: 00000000 nop | 0019dbfc: 00000000 nop | ||
− | 0019dc00: 9062005a lbu r2,0x005a(r3) | + | 0019dc00: 9062005a lbu r2,0x005a(r3) Load Current Status 3 |
0019dc04: 00000000 nop | 0019dc04: 00000000 nop | ||
0019dc08: 304200fe andi r2,r2,0x00fe | 0019dc08: 304200fe andi r2,r2,0x00fe | ||
− | 0019dc0c: a062005a sb r2,0x005a(r3) | + | 0019dc0c: a062005a sb r2,0x005a(r3) Remove Critical |
0019dc10: 3c03801a lui r3,0x801a | 0019dc10: 3c03801a lui r3,0x801a | ||
− | 0019dc14: 8c630bbc lw r3,0x0bbc(r3) | + | 0019dc14: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer |
0019dc18: 00000000 nop | 0019dc18: 00000000 nop | ||
− | 0019dc1c: 906201bd lbu r2,0x01bd(r3) | + | 0019dc1c: 906201bd lbu r2,0x01bd(r3) Load Inflicted Status List 3 (From Current Action Data) |
0019dc20: 00000000 nop | 0019dc20: 00000000 nop | ||
0019dc24: 304200fe andi r2,r2,0x00fe | 0019dc24: 304200fe andi r2,r2,0x00fe | ||
− | 0019dc28: a06201bd sb r2,0x01bd(r3) | + | 0019dc28: a06201bd sb r2,0x01bd(r3) Remove Critical |
+ | |||
+ | Set Movement Taken as true if Critical/Cowardly | ||
0019dc2c: 3c02801a lui r2,0x801a | 0019dc2c: 3c02801a lui r2,0x801a | ||
− | 0019dc30: 90420083 lbu r2,0x0083(r2) | + | 0019dc30: 90420083 lbu r2,0x0083(r2) Load ? |
0019dc34: 00000000 nop | 0019dc34: 00000000 nop | ||
− | 0019dc38: 10400014 beq r2,r0,0x0019dc8c | + | 0019dc38: 10400014 beq r2,r0,0x0019dc8c Branch if ? |
0019dc3c: 00000000 nop | 0019dc3c: 00000000 nop | ||
0019dc40: 3c02801a lui r2,0x801a | 0019dc40: 3c02801a lui r2,0x801a | ||
− | 0019dc44: 8c420bbc lw r2,0x0bbc(r2) | + | 0019dc44: 8c420bbc lw r2,0x0bbc(r2) Load Acting Unit's Data Pointer |
0019dc48: 00000000 nop | 0019dc48: 00000000 nop | ||
− | 0019dc4c: 9042005a lbu r2,0x005a(r2) | + | 0019dc4c: 9042005a lbu r2,0x005a(r2) Load Current Status 3 |
0019dc50: 00000000 nop | 0019dc50: 00000000 nop | ||
0019dc54: 30420001 andi r2,r2,0x0001 | 0019dc54: 30420001 andi r2,r2,0x0001 | ||
− | 0019dc58: 1440000c bne r2,r0,0x0019dc8c | + | 0019dc58: 1440000c bne r2,r0,0x0019dc8c Branch if Critical |
0019dc5c: 34020011 ori r2,r0,0x0011 | 0019dc5c: 34020011 ori r2,r0,0x0011 | ||
0019dc60: 3c03801a lui r3,0x801a | 0019dc60: 3c03801a lui r3,0x801a | ||
− | 0019dc64: 90630d7a lbu r3,0x0d7a(r3) | + | 0019dc64: 90630d7a lbu r3,0x0d7a(r3) Load AI/Autobattle Settings |
0019dc68: 00000000 nop | 0019dc68: 00000000 nop | ||
− | 0019dc6c: 10620007 beq r3,r2,0x0019dc8c | + | 0019dc6c: 10620007 beq r3,r2,0x0019dc8c Branch if Cowardly |
0019dc70: 00000000 nop | 0019dc70: 00000000 nop | ||
0019dc74: 3c02801a lui r2,0x801a | 0019dc74: 3c02801a lui r2,0x801a | ||
− | 0019dc78: 9442f3f6 lhu r2,-0x0c0a(r2) | + | 0019dc78: 9442f3f6 lhu r2,-0x0c0a(r2) Load ? |
0019dc7c: 00000000 nop | 0019dc7c: 00000000 nop | ||
0019dc80: 24420002 addiu r2,r2,0x0002 | 0019dc80: 24420002 addiu r2,r2,0x0002 | ||
0019dc84: 3c01801a lui r1,0x801a | 0019dc84: 3c01801a lui r1,0x801a | ||
− | 0019dc88: a422f3f6 sh r2,-0x0c0a(r1) | + | 0019dc88: a422f3f6 sh r2,-0x0c0a(r1) Save 2 to ? |
− | 0019dc8c: 8e0317f8 lw r3,0x17f8(r16) | + | |
+ | 0019dc8c: 8e0317f8 lw r3,0x17f8(r16) Load Acting Unit's Data Pointer | ||
0019dc90: 34020001 ori r2,r0,0x0001 | 0019dc90: 34020001 ori r2,r0,0x0001 | ||
− | 0019dc94: a0620187 sb r2,0x0187(r3) | + | 0019dc94: a0620187 sb r2,0x0187(r3) Set Movement Taken to True |
0019dc98: 8fbf0014 lw r31,0x0014(r29) | 0019dc98: 8fbf0014 lw r31,0x0014(r29) | ||
0019dc9c: 8fb00010 lw r16,0x0010(r29) | 0019dc9c: 8fb00010 lw r16,0x0010(r29) | ||
Line 76: | Line 84: | ||
0019dca4: 03e00008 jr r31 | 0019dca4: 03e00008 jr r31 | ||
0019dca8: 00000000 nop | 0019dca8: 00000000 nop | ||
− | |||
</font> | </font> |
Revision as of 04:40, 17 July 2020
Set Critical based on Movement Taken
0019db80: 3c03801a lui r3,0x801a 0019db84: 8c63f3dc lw r3,-0x0c24(r3) Load Suggested? Coordinates 0019db88: 3c02801a lui r2,0x801a 0019db8c: 8c4201f4 lw r2,0x01f4(r2) Load Acting Unit's Coordinate 0019db90: 27bdffe8 addiu r29,r29,0xffe8 0019db94: afb00010 sw r16,0x0010(r29) 0019db98: 3c10801a lui r16,0x801a 0019db9c: 2610f3c4 addiu r16,r16,0xf3c4 Get AI Data Pointer 0019dba0: 1062003d beq r3,r2,0x0019dc98 Exit if Coordinates match 0019dba4: afbf0014 sw r31,0x0014(r29) 0019dba8: 0c067c96 jal 0x0019f258 Store Unit Coordinates 0019dbac: 26040018 addiu r4,r16,0x0018
0019dbb0: 3c03801a lui r3,0x801a 0019dbb4: 90630083 lbu r3,0x0083(r3) Load ? 0019dbb8: 34020001 ori r2,r0,0x0001 0019dbbc: 1462001b bne r3,r2,0x0019dc2c Branch if ? True 0019dbc0: 00000000 nop
Reset HP/MP/Critical Statuses
0019dbc4: 3c03801a lui r3,0x801a 0019dbc8: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer 0019dbcc: 00000000 nop 0019dbd0: 9462002a lhu r2,0x002a(r3) Load Max HP 0019dbd4: 00000000 nop 0019dbd8: a4620028 sh r2,0x0028(r3) Save to Current HP 0019dbdc: 3c03801a lui r3,0x801a 0019dbe0: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer 0019dbe4: 00000000 nop 0019dbe8: 9462002e lhu r2,0x002e(r3) Load Max MP 0019dbec: 00000000 nop 0019dbf0: a462002c sh r2,0x002c(r3) Save to curMP 0019dbf4: 3c03801a lui r3,0x801a 0019dbf8: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer 0019dbfc: 00000000 nop 0019dc00: 9062005a lbu r2,0x005a(r3) Load Current Status 3 0019dc04: 00000000 nop 0019dc08: 304200fe andi r2,r2,0x00fe 0019dc0c: a062005a sb r2,0x005a(r3) Remove Critical 0019dc10: 3c03801a lui r3,0x801a 0019dc14: 8c630bbc lw r3,0x0bbc(r3) Load Acting Unit's Data Pointer 0019dc18: 00000000 nop 0019dc1c: 906201bd lbu r2,0x01bd(r3) Load Inflicted Status List 3 (From Current Action Data) 0019dc20: 00000000 nop 0019dc24: 304200fe andi r2,r2,0x00fe 0019dc28: a06201bd sb r2,0x01bd(r3) Remove Critical
Set Movement Taken as true if Critical/Cowardly
0019dc2c: 3c02801a lui r2,0x801a 0019dc30: 90420083 lbu r2,0x0083(r2) Load ? 0019dc34: 00000000 nop 0019dc38: 10400014 beq r2,r0,0x0019dc8c Branch if ? 0019dc3c: 00000000 nop 0019dc40: 3c02801a lui r2,0x801a 0019dc44: 8c420bbc lw r2,0x0bbc(r2) Load Acting Unit's Data Pointer 0019dc48: 00000000 nop 0019dc4c: 9042005a lbu r2,0x005a(r2) Load Current Status 3 0019dc50: 00000000 nop 0019dc54: 30420001 andi r2,r2,0x0001 0019dc58: 1440000c bne r2,r0,0x0019dc8c Branch if Critical 0019dc5c: 34020011 ori r2,r0,0x0011 0019dc60: 3c03801a lui r3,0x801a 0019dc64: 90630d7a lbu r3,0x0d7a(r3) Load AI/Autobattle Settings 0019dc68: 00000000 nop 0019dc6c: 10620007 beq r3,r2,0x0019dc8c Branch if Cowardly 0019dc70: 00000000 nop 0019dc74: 3c02801a lui r2,0x801a 0019dc78: 9442f3f6 lhu r2,-0x0c0a(r2) Load ? 0019dc7c: 00000000 nop 0019dc80: 24420002 addiu r2,r2,0x0002 0019dc84: 3c01801a lui r1,0x801a 0019dc88: a422f3f6 sh r2,-0x0c0a(r1) Save 2 to ? 0019dc8c: 8e0317f8 lw r3,0x17f8(r16) Load Acting Unit's Data Pointer 0019dc90: 34020001 ori r2,r0,0x0001 0019dc94: a0620187 sb r2,0x0187(r3) Set Movement Taken to True 0019dc98: 8fbf0014 lw r31,0x0014(r29) 0019dc9c: 8fb00010 lw r16,0x0010(r29) 0019dca0: 27bd0018 addiu r29,r29,0x0018 0019dca4: 03e00008 jr r31 0019dca8: 00000000 nop