Advertisement
Squeetz

BackupBattlersData

Mar 22nd, 2020
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. BackupBattlersData:
  2. push {r4, lr}
  3. ldr r4, =(gAiStructPtr)
  4. ldr r3, [r4]
  5. ldr r4, [r3, #backup]
  6. cmp r0, #0x0
  7. beq BackupBattlers_Cont
  8. ldr r4, [r3, #backup2]
  9. BackupBattlers_Cont:
  10. mov r0, r4
  11. ldr r1, =(battle_data)
  12. mov r2, #0x16
  13. lsl r2, #0x4 @0x160 (0x58 * 4)
  14. add r4, r2 @r4 = backup.statuses3
  15. bl WordMemCopy
  16. mov r0, r4
  17. ldr r1, =(gStatuses3)
  18. mov r2, #0x4 * 4
  19. bl WordMemCopy
  20. add r4, #0x10 @r4 = backup.status5
  21. mov r0, r4
  22. ldr r1, =(status5)
  23. mov r2, #0x2 * 4
  24. bl WordMemCopy
  25. add r4, #0x8 @r4 = backup.sideTimers
  26. mov r0, r4
  27. ldr r1, =(gSideTimers)
  28. mov r2, #0xC * 2
  29. bl WordMemCopy
  30. add r4, #0x18 @r4 = backup.battlers
  31. ldr r1, =(b_attacker)
  32. ldrb r0, [r1]
  33. strb r0, [r4]
  34. ldrb r0, [r1, #0x1] @b_defender
  35. strb r0, [r4, #0x1]
  36. add r4, #0x2 @r4 = backup.weather
  37. ldr r1, =(weather)
  38. ldrh r0, [r1]
  39. strh r0, [r4]
  40. add r4, #0x2 @r4 = backup.disableStructs
  41. mov r0, r4
  42. ldr r1, =(gDisableStructs)
  43. mov r2, #0x1C * 4
  44. bl WordMemCopy
  45. add r4, #0x70 @r4 = backup.sideStatuses
  46. ldr r1, =(gSideStatuses)
  47. ldrh r0, [r1]
  48. strh r0, [r4]
  49. ldrh r0, [r1, #0x2]
  50. strh r0, [r4, #0x2]
  51. add r4, #0x4 @r4 = backup.fieldstatus
  52. ldr r1, =(fieldstatus)
  53. ldr r0, [r1]
  54. str r0, [r4]
  55. ldr r0, [r1, #0x4]
  56. str r0, [r4, #0x4]
  57. add r4, #0x8 @r4 = backup.sidestatus
  58. ldr r1, =(sidestatus)
  59. ldr r0, [r1]
  60. str r0, [r4]
  61. ldr r0, [r1, #0x4]
  62. str r0, [r4, #0x4]
  63. pop {r4, pc}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement