Difference between revisions of "Weapon Guard Usability"

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
m
m
Line 12: Line 12:
 
  00181334: 00000000 nop
 
  00181334: 00000000 nop
 
  00181338: 30420040 andi r2,r2,0x0040
 
  00181338: 30420040 andi r2,r2,0x0040
  0018133c: 1440001b bne r2,r0,0x001813ac Branch if Target is ?
+
  0018133c: 1440001b bne r2,r0,0x001813ac Branch if Target is Being Ridden
 
  00181340: 34020001 ori r2,r0,0x0001 r2 = 1
 
  00181340: 34020001 ori r2,r0,0x0001 r2 = 1
 
  00181344: 0c060428 jal 0x001810a0 Map Location Calculation
 
  00181344: 0c060428 jal 0x001810a0 Map Location Calculation

Revision as of 20:46, 6 February 2021

Weapon Guard Usability (requires r4 = Target's Data Pointer)
0018130c: 27bdffe8 addiu r29,r29,0xffe8
00181310: afb00010 sw r16,0x0010(r29)
00181314: 00808021 addu r16,r4,r0		r16 = Target's Data Pointer
00181318: afbf0014 sw r31,0x0014(r29)
0018131c: 9202005c lbu r2,0x005c(r16)		Load 5th set of statuses
00181320: 00000000 nop
00181324: 30420004 andi r2,r2,0x0004
00181328: 14400020 bne r2,r0,0x001813ac		Branch if Target has Don't Act
0018132c: 34020001 ori r2,r0,0x0001		r2 = 1
00181330: 92020182 lbu r2,0x0182(r16)		Load Mount Info
00181334: 00000000 nop
00181338: 30420040 andi r2,r2,0x0040
0018133c: 1440001b bne r2,r0,0x001813ac		Branch if Target is Being Ridden
00181340: 34020001 ori r2,r0,0x0001		r2 = 1
00181344: 0c060428 jal 0x001810a0		Map Location Calculation
00181348: 02002021 addu r4,r16,r0
0018134c: 000210c0 sll r2,r2,0x03		Tile ID * 8
00181350: 3c018019 lui r1,0x8019
00181354: 00220821 addu r1,r1,r2
00181358: 9022f8cf lbu r2,-0x0731(r1)		Load Height (halves) + Water Depth Flags
0018135c: 00000000 nop
00181360: 00021142 srl r2,r2,0x05		Remove Height aspect (leave Depth)
00181364: 28420002 slti r2,r2,0x0002
00181368: 14400010 bne r2,r0,0x001813ac		Branch if Depth is less than 2
0018136c: 00001021 addu r2,r0,r0		r2 = 0
00181370: 9202005a lbu r2,0x005a(r16)		Load Target's 3rd set of statuses
00181374: 00000000 nop
00181378: 30420046 andi r2,r2,0x0046
0018137c: 1440000b bne r2,r0,0x001813ac		Branch if Target has Chicken/Frog/Float
00181380: 00001021 addu r2,r0,r0		r2 = 0
00181384: 92020095 lbu r2,0x0095(r16)		Load Target's 3rd set of Movements
00181388: 00000000 nop
0018138c: 304200c8 andi r2,r2,0x00c8
00181390: 14400006 bne r2,r0,0x001813ac		Branch if Target has Move in/Walk on Water/Float
00181394: 00001021 addu r2,r0,r0		r2 = 0
00181398: 92020182 lbu r2,0x0182(r16)		Load Target's Chocobo/? Flags
0018139c: 00000000 nop
001813a0: 30420080 andi r2,r2,0x0080		Check for Riding Chocobo Flag
001813a4: 2c420001 sltiu r2,r2,0x0001		r2 = 1 if not riding a chocobo
001813a8: 00021040 sll r2,r2,0x01		r2 * 2
001813ac: 8fbf0014 lw r31,0x0014(r29)
001813b0: 8fb00010 lw r16,0x0010(r29)
001813b4: 27bd0018 addiu r29,r29,0x0018
001813b8: 03e00008 jr r31
001813bc: 00000000 nop


Return Locations

00140534: - Routine at 1404cc
00140b44: - Routine at 140b04
00140d28: - Routine at 140cd4
0017da6c: - MP Cost (Half of MP) Section
0017e1ec: - Routine at 17e178
00181278: - Player Control Routine?
00183d1c: - Able to move/act checks (Menu?)
00184fc0: - Equipment Evasion Setting (Physical)
0018538c: - Dark/Confuse Caclulation
0018c94c: - Routine at 18c920
0018caa0: - 'Reflect', Blade Grasp, and Arrow Guard