Difference between revisions of "Uses HP damage as Action hit%"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
m
Line 30: Line 30:
 
  00187580: 00000000 nop
 
  00187580: 00000000 nop
 
  00187584: 0c017833 jal 0x0005e0cc [[Check if Random is greater/equal to Chance|Set r2 if d100 gte r5]]
 
  00187584: 0c017833 jal 0x0005e0cc [[Check if Random is greater/equal to Chance|Set r2 if d100 gte r5]]
  00187588: 34040064 ori r4,r0,0x0064 R4 = 100
+
  00187588: 34040064 ori r4,r0,0x0064   Delay slot. Set r4 to d100
 
  0018758c: 10400007 beq r2,r0,0x001875ac attack hits?
 
  0018758c: 10400007 beq r2,r0,0x001875ac attack hits?
 
  00187590: 00000000 nop
 
  00187590: 00000000 nop

Revision as of 05:22, 4 January 2021

Sets XA+YA as HitRate Routine
00187510: 3c068019 lui r6,0x8019		
00187514: 8cc62d90 lw r6,0x2d90(r6)		Load Current Action Data Pointer
00187518: 27bdffe8 addiu r29,r29,0xffe8		
0018751c: afbf0010 sw r31,0x0010(r29)		
00187520: 84c50004 lh r5,0x0004(r6)		Load HitRate(r5) from "HP Damage" address
00187524: 00000000 nop			
00187528: 28a20064 slti r2,r5,0x0064	 	if HitRate < 100
0018752c: 14400003 bne r2,r0,0x0018753c		  then branch to 0x0018753c
00187530: 00000000 nop				
00187534: 08061d6b j 0x001875ac			
00187538: a4c00004 sh r0,0x0004(r6)		Store 0 in Action Data's HP Damage
0018753c: 84c2002a lh r2,0x002a(r6)		Load Action Data's "Hit % (Display data?)"(r2)
00187540: 00000000 nop				
00187544: 00a20018 mult r5,r2			HitRate * r2
00187548: 00001812 mflo r3			  and store in r3
0018754c: 3c0251eb lui r2,0x51eb		
00187550: 3442851f ori r2,r2,0x851f		R2 = 51eb851f
00187554: 00620018 mult r3,r2			R3 * .33333334
00187558: 3c048019 lui r4,0x8019		
0018755c: 8c84f5fc lw r4,0xf5fc(r4)		Load 0xf5fc Action Flag(r4)
00187560: a4c00004 sh r0,0x0004(r6)		Set "HP Damage" for this attack to 0
00187564: 00031fc3 sra r3,r3,0x1f		
00187568: 00001010 mfhi r2			
0018756c: 00021143 sra r2,r2,0x05		
00187570: 00431023 subu r2,r2,r3		
00187574: 10800003 beq r4,r0,0x00187584		Branch if Flag is not set
00187578: a4c2002a sh r2,0x002a(r6)		store hit%
0018757c: 14a0000b bne r5,r0,0x001875ac		
00187580: 00000000 nop				
00187584: 0c017833 jal 0x0005e0cc		Set r2 if d100 gte r5
00187588: 34040064 ori r4,r0,0x0064		  Delay slot. Set r4 to d100
0018758c: 10400007 beq r2,r0,0x001875ac		attack hits?
00187590: 00000000 nop				
00187594: 0c0610cf jal 0x0018433c		Force Attack Miss routine?
00187598: 00000000 nop				
0018759c: 3c028019 lui r2,0x8019		
001875a0: 8c422d90 lw r2,0x2d90(r2)		Load Current Action Data Pointer
001875a4: 00000000 nop				
001875a8: a4400004 sh r0,0x0004(r2)		Store 0 in Action Data's HP Damage
001875ac: 8fbf0010 lw r31,0x0010(r29)
001875b0: 27bd0018 addiu r29,r29,0x0018
001875b4: 03e00008 jr r31
001875b8: 00000000 nop