Count number of targets hit by ability
Jump to navigation
Jump to search
Parameters : r4 = misc attacker data 0x18e Returns: r2 = Target/Hit counter Store : List of Targets ID at Attacker misc data 0x16e to 0x17d (from list at 0x80193868 ) -------------------------------------------------------------------------------------------------- 0018ee24: 00002821 addu r5,r0,r0 |r5 = 0x00 0018ee28: 00001821 addu r3,r0,r0 |r3 = 0x00 0018ee2c: 340600ff ori r6,r0,0x00ff |r6 = 0x00ff 0018ee30: 3c018019 lui r1,0x8019 @LOOP 0018ee34: 00230821 addu r1,r1,r3 |r1 = 0x8019 0000 + loop counter 0018ee38: 90223868 lbu r2,0x3868(r1) |r2 = this iteration Targeted unit ( 0x80193868 + loop offset) 0018ee3c: 00000000 nop | 0018ee40: a0820000 sb r2,0x0000(r4) |Store targeted unit ID in Attacker misc data 0x18e (+loop offset) 0018ee44: 10460002 beq r2,r6,0x0018ee50 #if This iteration target ID = 0xff 0018ee48: 24840001 addiu r4,r4,0x0001 |r4 = Attacker misc data offset counter (+0x01 each iteration) 0018ee4c: 24a50001 addiu r5,r5,0x0001 |r5 = Target counter 0018ee50: 24630001 addiu r3,r3,0x0001 |r3 = Loop counter + 1 0018ee54: 28620010 slti r2,r3,0x0010 |r2 = 0x01 while counter < 0x10 0018ee58: 1440fff5 bne r2,r0,0x0018ee30 Λ Loop 0x10 times (size of list on 0x80193868 ) contains only 0x10 units (0x14 targets available) 0018ee5c: 00000000 nop | 0018ee60: 03e00008 jr r31 >>END 0018ee64: 00a01021 addu r2,r5,r0 |return r2 = Target/Hit counter
Return location
0017d0e0: Main_ability_loading_routine?