Gameover by party incapacitated

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
00183374: 27bdffd0 addiu r29,r29,0xffd0
00183378: afb3001c sw r19,0x001c(r29)
0018337c: 00009821 addu r19,r0,r0		Living Characters = 0
00183380: afb40020 sw r20,0x0020(r29)
00183384: 0000a021 addu r20,r0,r0		Other Living Units = 0
00183388: afb20018 sw r18,0x0018(r29)
0018338c: 00009021 addu r18,r0,r0		Counter = 0
00183390: afb50024 sw r21,0x0024(r29)
00183394: 0000a821 addu r21,r0,r0		Unit Pointer Mod = 0
00183398: afbf0028 sw r31,0x0028(r29)
0018339c: afb10014 sw r17,0x0014(r29)
001833a0: afb00010 sw r16,0x0010(r29)
001833a4: 3c028019 lui r2,0x8019
001833a8: 244208cc addiu r2,r2,0x08cc
001833ac: 02a28821 addu r17,r21,r2		r17 = Unit's Data Pointer
001833b0: 922201ba lbu r2,0x01ba(r17)		Load Unit's Modified ENTD Flags
001833b4: 34030003 ori r3,r0,0x0003		r3 = 3
001833b8: 30420003 andi r2,r2,0x0003
001833bc: 14430014 bne r2,r3,0x00183410		Branch if Unit isn't Ramza?
001833c0: 340200ff ori r2,r0,0x00ff		r2 = FF
001833c4: 92230183 lbu r3,0x0183(r17)		Load Unit's ?
001833c8: 00000000 nop
001833cc: 10620010 beq r3,r2,0x00183410		Branch if Unit doesn't exist
001833d0: 38620080 xori r2,r3,0x0080
001833d4: 2c500001 sltiu r16,r2,0x0001		r16 = 1 if 0x183 = 0x80 (considered dead?)
001833d8: 02202021 addu r4,r17,r0		r4 = Unit's Data Pointer
001833dc: 0c01786c jal 0x0005e1b0		Status Checks (r5 = set to check)
001833e0: 34050001 ori r5,r0,0x0001		Check = ? (Crystal/Invite/Treasure)
001833e4: 02028021 addu r16,r16,r2
001833e8: 12000009 beq r16,r0,0x00183410	Branch if 0x183 != 0x80 AND unit is usable?
001833ec: 00000000 nop
001833f0: 922201ba lbu r2,0x01ba(r17)		Load Modified ENTD Flags
001833f4: 00000000 nop
001833f8: 30420030 andi r2,r2,0x0030
001833fc: 10400003 beq r2,r0,0x0018340c		Branch if Team = Character
00183400: 00000000 nop
00183404: 08060d04 j 0x00183410
00183408: 26940001 addiu r20,r20,0x0001		Other Living Units ++
0018340c: 26730001 addiu r19,r19,0x0001		Living Characters ++
00183410: 26520001 addiu r18,r18,0x0001		Counter ++
00183414: 2a420015 slti r2,r18,0x0015
00183418: 1440ffe2 bne r2,r0,0x001833a4		Branch if all unit's haven't been checked
0018341c: 26b501c0 addiu r21,r21,0x01c0
00183420: 1660001b bne r19,r0,0x00183490	Branch if Living Characters != 0
00183424: 00000000 nop
00183428: 1680001a bne r20,r0,0x00183494	Branch if Other Living Units != 0
0018342c: 00001021 addu r2,r0,r0		r2 = 0
00183430: 00009021 addu r18,r0,r0		Counter = 0
00183434: 3c118019 lui r17,0x8019
00183438: 263108cc addiu r17,r17,0x08cc
0018343c: 92230001 lbu r3,0x0001(r17)		Load Unit's ID
00183440: 340200ff ori r2,r0,0x00ff
00183444: 1062000c beq r3,r2,0x00183478		Branch if Unit doesn't exist
00183448: 02202021 addu r4,r17,r0
0018344c: 922201ba lbu r2,0x01ba(r17)		Load Unit's Modified ENTD Flags
00183450: 00002821 addu r5,r0,r0		Check = KO
00183454: 0c01786c jal 0x0005e1b0		Status Checks (r5 = set to check)
00183458: 30500030 andi r16,r2,0x0030
0018345c: 14400006 bne r2,r0,0x00183478		Branch if Unit is considered Dead
00183460: 00000000 nop
00183464: 12000003 beq r16,r0,0x00183474	Branch if Team is Blue (Character)
00183468: 00000000 nop
0018346c: 08060d1e j 0x00183478
00183470: 26940001 addiu r20,r20,0x0001		Other Living Units ++
00183474: 26730001 addiu r19,r19,0x0001		Living Characters ++
00183478: 26520001 addiu r18,r18,0x0001		Counter ++
0018347c: 2a420015 slti r2,r18,0x0015
00183480: 1440ffee bne r2,r0,0x0018343c		Branch if all units haven't been checked
00183484: 263101c0 addiu r17,r17,0x01c0
00183488: 16600002 bne r19,r0,0x00183494	Branch if Living Characters != 0
0018348c: 0014102b sltu r2,r0,r20		r2 = 0 if Other Living Units = 0
00183490: 2402ffff addiu r2,r0,0xffff		r2 = -1
00183494: 8fbf0028 lw r31,0x0028(r29)
00183498: 8fb50024 lw r21,0x0024(r29)
0018349c: 8fb40020 lw r20,0x0020(r29)
001834a0: 8fb3001c lw r19,0x001c(r29)
001834a4: 8fb20018 lw r18,0x0018(r29)
001834a8: 8fb10014 lw r17,0x0014(r29)
001834ac: 8fb00010 lw r16,0x0010(r29)
001834b0: 27bd0030 addiu r29,r29,0x0030
001834b4: 03e00008 jr r31
001834b8: 00000000 nop