0x6bbfc
Jump to navigation
Jump to search
# ROUTINE: ? 0x6bbfc # Parameters: # r4 = (miscUnit) Unit misc data pointer 8006bbfc: 27bdffe0 addiu r29,r29,-0x0020 8006bc00: afb00018 sw r16,0x0018(r29) 8006bc04: 00808021 addu r16,r4,r0 # miscUnit 8006bc08: afbf001c sw r31,0x001c(r29) 8006bc0c: 8e040134 lw r4,0x0134(r16) # miscUnit.battleData 8006bc10: 00000000 nop 8006bc14: 10800025 beq r4,r0,0x8006bcac # if (miscUnit.battleData != null) { 8006bc18: 00000000 nop 8006bc1c: 86020070 lh r2,0x0070(r16) # facing? = miscUnit.CurrentFacing? 8006bc20: 9084018a lbu r4,0x018a(r4) # miscUnit.battleData.UnitID 8006bc24: 9205007c lbu r5,0x007c(r16) # miscUnit.X 8006bc28: 9206007d lbu r6,0x007d(r16) # miscUnit.Y 8006bc2c: 9207007e lbu r7,0x007e(r16) # miscUnit.HigherElevation 8006bc30: 04410002 bgez r2,0x8006bc3c # if (facing? < 0) { 8006bc34: 00000000 nop 8006bc38: 244203ff addiu r2,r2,0x03ff # facing? = facing? + 0x3ff # } 8006bc3c: 00021282 srl r2,r2,0x0a # facing? >> 10 8006bc40: 304200ff andi r2,r2,0x00ff # (facing? >> 10) & 0xff 8006bc44: 0c05ff77 jal 0x8017fddc # ? 0x17fddc (miscUnit.battleData.UnitID, miscUnit.X, miscUnit.Y, miscUnit.HigherElevation, ((facing? >> 10) & 0xff)); 8006bc48: afa20010 sw r2,0x0010(r29) # (facing? >> 10) & 0xff 8006bc4c: 92020130 lbu r2,0x0130(r16) # miscUnit.MountRiderValue 8006bc50: 00000000 nop 8006bc54: 10400015 beq r2,r0,0x8006bcac # if (miscUnit.MountRiderValue != 0) { 8006bc58: 00000000 nop 8006bc5c: 92040004 lbu r4,0x0004(r16) # miscUnit.UnitMiscID 8006bc60: 0c01e9b9 jal 0x8007a6e4 # otherMiscUnit = Get Unit Misc Data Pointer (miscUnit.UnitMiscID); // Isn't this the same pointer?? 8006bc64: 00000000 nop 8006bc68: 8e030134 lw r3,0x0134(r16) # miscUnit.battleData 8006bc6c: 00000000 nop 8006bc70: 1060000e beq r3,r0,0x8006bcac # if (miscUnit.battleData != 0) { 8006bc74: 00000000 nop 8006bc78: 8c420134 lw r2,0x0134(r2) # otherMiscUnit.battleData 8006bc7c: 86030070 lh r3,0x0070(r16) # facing? = miscUnit.CurrentFacing? 8006bc80: 9205007c lbu r5,0x007c(r16) # miscUnit.X 8006bc84: 9206007d lbu r6,0x007d(r16) # miscUnit.Y 8006bc88: 9207007e lbu r7,0x007e(r16) # miscUnit.HigherElevation 8006bc8c: 9044018a lbu r4,0x018a(r2) # otherMiscUnit.battleData.UnitID 8006bc90: 04610003 bgez r3,0x8006bca0 8006bc94: 00031282 srl r2,r3,0x0a # facing? >> 10 # if (facing? < 0) { 8006bc98: 246303ff addiu r3,r3,0x03ff # facing? = facing? + 0x3ff 8006bc9c: 00031282 srl r2,r3,0x0a # facing? >> 10 # } 8006bca0: 304200ff andi r2,r2,0x00ff # (facing? >> 10) & 0xff 8006bca4: 0c05ff77 jal 0x8017fddc # ? 0x17fddc (otherMiscUnit.battleData.UnitID, miscUnit.X, miscUnit.Y, miscUnit.HigherElevation, ((facing? >> 10) & 0xff)); 8006bca8: afa20010 sw r2,0x0010(r29) # (facing? >> 10) & 0xff # } # } # } 8006bcac: 0c0206c3 jal 0x80081b0c # ? 0x81b0c (miscUnit); 8006bcb0: 02002021 addu r4,r16,r0 # miscUnit 8006bcb4: 0c01f4fd jal 0x8007d3f4 # ? 0x7d3f4 (miscUnit); 8006bcb8: 02002021 addu r4,r16,r0 # miscUnit 8006bcbc: 0c01a0f9 jal 0x800683e4 # ? 0x683e4 (miscUnit); 8006bcc0: 02002021 addu r4,r16,r0 # miscUnit 8006bcc4: a200009c sb r0,0x009c(r16) # miscUnit.NumMovementTiles = 0 8006bcc8: 0c020bbb jal 0x80082eec # ? 0x82eec (miscUnit); 8006bccc: 02002021 addu r4,r16,r0 # miscUnit 8006bcd0: 8fbf001c lw r31,0x001c(r29) 8006bcd4: 8fb00018 lw r16,0x0018(r29) 8006bcd8: 27bd0020 addiu r29,r29,0x0020 8006bcdc: 03e00008 jr r31 8006bce0: 00000000 nop