Some post action (including learn on hit setup)
Jump to navigation
Jump to search
000734cc: 27bdffd0 addiu r29,r29,0xffd0 000734d0: 34020028 ori r2,r0,0x0028 #r2 = 0x28 000734d4: afb00020 sw r16,0x0020(r29) 000734d8: 34100001 ori r16,r0,0x0001 #r16 = 0x01 000734dc: afbf0028 sw r31,0x0028(r29) 000734e0: afb10024 sw r17,0x0024(r29) 000734e4: 3c018009 lui r1,0x8009 000734e8: ac2260e4 sw r2,0x60e4(r1) #Set Exp/JP display 000734ec: 3c018004 lui r1,0x8004 000734f0: ac305980 sw r16,0x5980(r1) #Set Animation Speed = 1 (not attacking?) 000734f4: 0c01e886 jal 0x0007a218 #Get Casting units Misc Data routine 000734f8: 00000000 nop 000734fc: 3404000a ori r4,r0,0x000a #r4 = 0x0a 00073500: 00408821 addu r17,r2,r0 #r17 = Casting unit's Misc Data Pointer 00073504: 8e220134 lw r2,0x0134(r17) #r2 = Casting unit's Data Pointer 00073508: 00002821 addu r5,r0,r0 #r5 = 0 (don't skip loading event variables (?) 0x27 & 0x1fd appear often; also don't skip unit name storing/determination) 0007350c: 9046018a lbu r6,0x018a(r2) #r6 = Unit's ID 00073510: 00003821 addu r7,r0,r0 #r7 = 0 (set script variables to 0, 0x27 & 0x1fd again) 00073514: 0c05066e jal 0x001419b8 #System function setup routine 00073518: afa00010 sw r0,0x0010(r29) #Store Stack Value at 0x0010 = 0 0007351c: 0c04ebb7 jal 0x0013aedc #0013aedc - 0013aee8 routine (thread stuff?) 00073520: 3404001e ori r4,r0,0x001e #r4 = 0x1e 00073524: 3c038009 lui r3,0x8009 00073528: 8c636204 lw r3,0x6204(r3) #r3 = Post action display phase? 0007352c: 00000000 nop 00073530: 10700010 beq r3,r16,0x00073574 #Branch if Attacking? 00073534: 28620002 slti r2,r3,0x0002 #Check ? 00073538: 10400005 beq r2,r0,0x00073550 #Branch if ? 0007353c: 00000000 nop 00073540: 10600008 beq r3,r0,0x00073564 #Branch if ? 00073544: 00000000 nop 00073548: 0801cd86 j 0x00073618 #Jump to End 0007354c: 00000000 nop 00073550: 34020002 ori r2,r0,0x0002 #r2 = 0x02 00073554: 1062000b beq r3,r2,0x00073584 #Branch if ? = 2 00073558: 00000000 nop 0007355c: 0801cd86 j 0x00073618 #Jump to End 00073560: 00000000 nop 00073564: 0c01c77a jal 0x00071de8 #00071de8 - 00071e64 routine 00073568: 02202021 addu r4,r17,r0 #r4 = Unit's Misc Data Pointer 0007356c: 0801cd86 j 0x00073618 #Jump to End 00073570: 00000000 nop 00073574: 0c01c79a jal 0x00071e68 #Post Movement Display routine 00073578: 02202021 addu r4,r17,r0 #r4 = Unit's Misc Data Pointer 0007357c: 0801cd86 j 0x00073618 #Jump to End 00073580: 00000000 nop 00073584: 8e220134 lw r2,0x0134(r17) #r2 = Unit's Data Pointer 00073588: 00000000 nop 0007358c: 9044018a lbu r4,0x018a(r2) #r4 = Unit's ID 00073590: 0c0639ae jal 0x0018e6b8 #Learn on hit 1 routine 00073594: 27a50018 addiu r5,r29,0x0018 #r5 = new stack pointer 00073598: 2403ffff addiu r3,r0,0xffff #r3 = -1 0007359c: 3c018009 lui r1,0x8009 000735a0: ac226200 sw r2,0x6200(r1) #Store unit ID from LoH routine 000735a4: 10430016 beq r2,r3,0x00073600 #Branch if no unit learning on hit 000735a8: 00000000 nop 000735ac: 3c048009 lui r4,0x8009 000735b0: 94846200 lhu r4,0x6200(r4) #r4 = Unit ID returned from LoH routine (learning unit) 000735b4: 0c01e9c9 jal 0x0007a724 #Get unit misc data that matches r4 ID routine 000735b8: 00000000 nop 000735bc: 3404000b ori r4,r0,0x000b #r4 = 0x0b 000735c0: 00003821 addu r7,r0,r0 #r7 = 0x00 000735c4: 00408021 addu r16,r2,r0 #r16 = Learning unit's misc data pointer 000735c8: 8e220134 lw r2,0x0134(r17) #r2 = Acting unit's data pointer 000735cc: 8e030134 lw r3,0x0134(r16) #r3 = Learning unit's data pointer 000735d0: 9046018a lbu r6,0x018a(r2) #r6 = Acting unit's ID 000735d4: 90620005 lbu r2,0x0005(r3) #r2 = Learning unit's ENTD flags 000735d8: 97a50018 lhu r5,0x0018(r29) #r5 = Learned ability ID? 000735dc: 30420008 andi r2,r2,0x0008 #Check if player can control learning unit (team check?) 000735e0: 0c05066e jal 0x001419b8 #System function setup routine 000735e4: afa20010 sw r2,0x0010(r29) #Save ENTD flags to stack 000735e8: 0c01a0f9 jal 0x000683e4 #Transfer Unit's X/Y/Map Level routine 000735ec: 02002021 addu r4,r16,r0 #r4 = Learning unit's misc data pointer 000735f0: 0c01a0f0 jal 0x000683c0 #Store AT list ID = 1 routine 000735f4: 00000000 nop 000735f8: 0801cd86 j 0x00073618 #Jump to End 000735fc: 00000000 nop 00073600: 3c028009 lui r2,0x8009 00073604: 8c426204 lw r2,0x6204(r2) #r2 = Post action display phase? 00073608: 00000000 nop 0007360c: 24420001 addiu r2,r2,0x0001 #r2 = r2 + 1 00073610: 3c018009 lui r1,0x8009 00073614: ac226204 sw r2,0x6204(r1) #Save new post action display phase? End: 00073618: 0c01b957 jal 0x0006e55c #Store Name and data of unit selected by cursor routine 0007361c: 00000000 nop 00073620: 8fbf0028 lw r31,0x0028(r29) 00073624: 8fb10024 lw r17,0x0024(r29) 00073628: 8fb00020 lw r16,0x0020(r29) 0007362c: 27bd0030 addiu r29,r29,0x0030 00073630: 03e00008 jr r31 00073634: 00000000 nop