diff --git a/asm/dtcm.s b/asm/dtcm.s index b3664d47..535cef39 100644 --- a/asm/dtcm.s +++ b/asm/dtcm.s @@ -4001,8 +4001,8 @@ gItemManager: .global data_027e0fb8 data_027e0fb8: .space 0x4 - .global data_027e0fbc -data_027e0fbc: + .global gHealthManager +gHealthManager: .space 0x4 .global data_027e0fc0 data_027e0fc0: diff --git a/asm/ov00/Item/ItemManager.inc b/asm/ov00/Item/ItemManager.inc index 871cc044..435edbdc 100644 --- a/asm/ov00/Item/ItemManager.inc +++ b/asm/ov00/Item/ItemManager.inc @@ -5,7 +5,7 @@ .extern data_027e0e60 .extern gAdventureFlags .extern data_027e0f78 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e103c .extern data_027e1058 .extern data_027e105c diff --git a/asm/ov00/Item/ItemManager.s b/asm/ov00/Item/ItemManager.s index 79979c92..373211dd 100644 --- a/asm/ov00/Item/ItemManager.s +++ b/asm/ov00/Item/ItemManager.s @@ -505,7 +505,7 @@ _020ae04e: ldr r0, [r0] mov r2, #1 blx _ZN14AdventureFlags3SetEjb - ldr r0, _020ae248 ; =data_027e0fbc + ldr r0, _020ae248 ; =gHealthManager mov r1, #5 ldr r0, [r0] strh r1, [r0, #8] @@ -756,7 +756,7 @@ _020ae222: b _020ae258 nop _020ae244: .word gAdventureFlags -_020ae248: .word data_027e0fbc +_020ae248: .word gHealthManager _020ae24c: .word 0x00000126 _020ae250: .word 0x00000127 _020ae254: .word 0x00000129 diff --git a/asm/ov00/ov00_020b1498.inc b/asm/ov00/ov00_020b1498.inc index 61be72a6..ef562e77 100644 --- a/asm/ov00/ov00_020b1498.inc +++ b/asm/ov00/ov00_020b1498.inc @@ -156,7 +156,7 @@ .extern data_027e0fa0 .extern data_027e0fac .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc4 .extern data_027e0fc8 .extern data_027e0fcc diff --git a/asm/ov00/ov00_020b1498.s b/asm/ov00/ov00_020b1498.s index 9669613a..76f4c215 100644 --- a/asm/ov00/ov00_020b1498.s +++ b/asm/ov00/ov00_020b1498.s @@ -12594,13 +12594,13 @@ func_ov00_020bb44c: ; 0x020bb44c ldrb r0, [r0, #0x12] cmp r0, #0 movne r0, #0xc - ldreq r0, _020bb468 ; =data_027e0fbc + ldreq r0, _020bb468 ; =gHealthManager ldreq r0, [r0] ldreqsh r0, [r0] bx lr .align 2, 0 arm_func_end func_ov00_020bb44c -_020bb468: .word data_027e0fbc +_020bb468: .word gHealthManager .global func_ov00_020bb46c arm_func_start func_ov00_020bb46c diff --git a/asm/ov00/ov00_020c3e54.inc b/asm/ov00/ov00_020c3e54.inc index c0b17b5b..e0d02a22 100644 --- a/asm/ov00/ov00_020c3e54.inc +++ b/asm/ov00/ov00_020c3e54.inc @@ -116,7 +116,7 @@ .extern data_027e0f94 .extern data_027e0fac .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc8 .extern data_027e0fd4 .extern data_027e0fe0 diff --git a/asm/ov00/ov00_020c3e54.s b/asm/ov00/ov00_020c3e54.s index 27eb8587..16394bfb 100644 --- a/asm/ov00/ov00_020c3e54.s +++ b/asm/ov00/ov00_020c3e54.s @@ -18659,7 +18659,7 @@ _020d274c: mov r1, #0x3c bl func_01ff9b4c sub r0, r4, r0 - ldr r2, _020d27e8 ; =data_027e0fbc + ldr r2, _020d27e8 ; =gHealthManager ldr r1, _020d27ec ; =0x00007fff mov r0, r0, lsl #0x10 and r1, r1, r0, lsr #16 @@ -18688,7 +18688,7 @@ _020d27d8: .word gItemManager _020d27dc: .word data_027e0f64 _020d27e0: .word data_ov00_020df294 _020d27e4: .word data_027e103c -_020d27e8: .word data_027e0fbc +_020d27e8: .word gHealthManager _020d27ec: .word 0x00007fff .global func_ov00_020d27f0 diff --git a/asm/ov02.inc b/asm/ov02.inc index 2083940b..b6a56f55 100644 --- a/asm/ov02.inc +++ b/asm/ov02.inc @@ -32,7 +32,7 @@ .extern data_027e0e60 .extern data_027e0f88 .extern data_027e0f8c -.extern data_027e0fbc +.extern gHealthManager .extern data_027e1044 .extern data_027e1050 .extern data_027e1058 diff --git a/asm/ov02.s b/asm/ov02.s index 61da8964..8bc04bbd 100644 --- a/asm/ov02.s +++ b/asm/ov02.s @@ -1497,7 +1497,7 @@ _020f01e4: mov r1, #9 str r6, [sp] bl func_0203493c - ldr r0, _020f0730 ; =data_027e0fbc + ldr r0, _020f0730 ; =gHealthManager ldr r0, [r0] ldrb r0, [r0, #0xe] cmp r0, #0 @@ -1508,7 +1508,7 @@ _020f01e4: mov r1, #0xa str r6, [sp] bl func_0203493c - ldr r0, _020f0730 ; =data_027e0fbc + ldr r0, _020f0730 ; =gHealthManager mov r1, #0x3c ldr r0, [r0] ldrh r6, [r0, #0xc] @@ -1842,7 +1842,7 @@ _020f0720: .word gItemManager _020f0724: .word gAdventureFlags _020f0728: .word 0x91a2b3c5 _020f072c: .word 0x88888889 -_020f0730: .word data_027e0fbc +_020f0730: .word gHealthManager .global func_ov02_020f0734 arm_func_start func_ov02_020f0734 @@ -5052,10 +5052,10 @@ func_ov02_020f2e84: ; 0x020f2e84 bl func_ov00_020d77e4 mov r0, #1 blx func_ov09_0211bf3c - ldr r0, _020f2f18 ; =data_027e0fbc + ldr r0, _020f2f18 ; =gHealthManager ldr r0, [r0] blx func_ov00_020b8060 - ldr r0, _020f2f18 ; =data_027e0fbc + ldr r0, _020f2f18 ; =gHealthManager ldr r1, [r0] ldrsh r0, [r1, #4] strh r0, [r1, #6] @@ -5065,7 +5065,7 @@ func_ov02_020f2e84: ; 0x020f2e84 _020f2f0c: .word gItemManager _020f2f10: .word data_ov02_020f6c80 _020f2f14: .word data_ov00_020eec9c -_020f2f18: .word data_027e0fbc +_020f2f18: .word gHealthManager .global func_ov02_020f2f1c arm_func_start func_ov02_020f2f1c diff --git a/asm/ov04.inc b/asm/ov04.inc index 382c0d2f..ccd509fc 100644 --- a/asm/ov04.inc +++ b/asm/ov04.inc @@ -76,7 +76,7 @@ .extern data_027e0f94 .extern data_027e0fac .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc0 .extern data_027e0fc4 .extern data_027e0fc8 diff --git a/asm/ov04.s b/asm/ov04.s index 6de374bf..abbec17a 100644 --- a/asm/ov04.s +++ b/asm/ov04.s @@ -7771,7 +7771,7 @@ _0210482c: _02104840: bl func_ov04_02105a64 bl func_ov04_021084e8 - ldr r0, _021049b0 ; =data_027e0fbc + ldr r0, _021049b0 ; =gHealthManager ldr r1, [sp, #8] ldr r0, [r0] bl func_ov04_02107f48 @@ -7918,7 +7918,7 @@ _021049a0: .word data_ov12_02137c64 _021049a4: .word data_027e077c _021049a8: .word 0x04000304 _021049ac: .word 0xffff7fff -_021049b0: .word data_027e0fbc +_021049b0: .word gHealthManager _021049b4: .word data_ov00_020e9360 _021049b8: .word data_027e0e5c _021049bc: .word data_027e0d04 @@ -8001,7 +8001,7 @@ _02104a3c: ldr r0, _02104afc ; =data_ov00_020e9370 bl func_ov04_0210694c bl func_ov00_02079df0 - ldr r0, _02104b00 ; =data_027e0fbc + ldr r0, _02104b00 ; =gHealthManager ldr r0, [r0] bl func_ov04_02108008 bl func_ov04_02105a8c @@ -8029,7 +8029,7 @@ _02104af0: .word data_027e0c68 _02104af4: .word data_027e103c _02104af8: .word data_02068e64 _02104afc: .word data_ov00_020e9370 -_02104b00: .word data_027e0fbc +_02104b00: .word gHealthManager _02104b04: .word data_027e0cbc .global func_ov04_02104b08 @@ -14886,19 +14886,19 @@ func_ov04_02107e54: ; 0x02107e54 beq _02107e6a bl func_ov04_02107e9c _02107e6a: - ldr r1, _02107e74 ; =data_027e0fbc + ldr r1, _02107e74 ; =gHealthManager str r0, [r1] pop {r3, pc} .align 2, 0 thumb_func_end func_ov04_02107e54 _02107e70: .word data_027e0ce0 -_02107e74: .word data_027e0fbc +_02107e74: .word gHealthManager .global func_ov04_02107e78 thumb_func_start func_ov04_02107e78 func_ov04_02107e78: ; 0x02107e78 push {r4, lr} - ldr r0, _02107e98 ; =data_027e0fbc + ldr r0, _02107e98 ; =gHealthManager ldr r4, [r0] cmp r4, #0 beq _02107e8e @@ -14907,13 +14907,13 @@ func_ov04_02107e78: ; 0x02107e78 add r0, r4, #0 blx _ZN9SysObjectdlEPv _02107e8e: - ldr r0, _02107e98 ; =data_027e0fbc + ldr r0, _02107e98 ; =gHealthManager mov r1, #0 str r1, [r0] pop {r4, pc} nop thumb_func_end func_ov04_02107e78 -_02107e98: .word data_027e0fbc +_02107e98: .word gHealthManager .global func_ov04_02107e9c thumb_func_start func_ov04_02107e9c diff --git a/asm/ov05.inc b/asm/ov05.inc index 5a522eaf..8abfb05c 100644 --- a/asm/ov05.inc +++ b/asm/ov05.inc @@ -173,7 +173,7 @@ .extern data_027e0fac .extern data_027e0fb0 .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc0 .extern data_027e0fc8 .extern data_027e0fcc diff --git a/asm/ov05.s b/asm/ov05.s index 79585aa7..41bcb2e9 100644 --- a/asm/ov05.s +++ b/asm/ov05.s @@ -9487,7 +9487,7 @@ func_ov05_021088c8: ; 0x021088c8 bl func_020385d0 cmp r0, #0 beq _0210899c - ldr r1, _021089a8 ; =data_027e0fbc + ldr r1, _021089a8 ; =gHealthManager ldr r4, _021089ac ; =0x88888889 ldr r1, [r1] mov ip, #0x3c @@ -9534,7 +9534,7 @@ _0210899c: ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 arm_func_end func_ov05_021088c8 -_021089a8: .word data_027e0fbc +_021089a8: .word gHealthManager _021089ac: .word 0x88888889 _021089b0: .word 0x66666667 _021089b4: .word 0x00007fff @@ -10610,11 +10610,11 @@ _02109828: bl _ZN13LinkStateBase18func_ov00_020a8360Ei b _021098bc _02109834: - ldr r0, _021099bc ; =data_027e0fbc + ldr r0, _021099bc ; =gHealthManager mov r1, #4 ldr r0, [r0] blx func_ov00_020b804c - ldr r1, _021099bc ; =data_027e0fbc + ldr r1, _021099bc ; =gHealthManager mov r0, r5 ldr r1, [r1] ldrsh r1, [r1] @@ -10719,7 +10719,7 @@ _021099a4: .align 2, 0 arm_func_end func_ov05_021097b0 _021099b8: .word 0x464f5243 -_021099bc: .word data_027e0fbc +_021099bc: .word gHealthManager _021099c0: .word data_027e103c _021099c4: .word 0x424b4559 _021099c8: .word 0x43525953 diff --git a/asm/ov09.inc b/asm/ov09.inc index f5cf8eab..7742fd4b 100644 --- a/asm/ov09.inc +++ b/asm/ov09.inc @@ -45,7 +45,7 @@ .extern data_027e0e60 .extern data_027e0f64 .extern data_027e0f90 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fe4 .extern data_027e0ffc .extern data_027e103c diff --git a/asm/ov09.s b/asm/ov09.s index cbe29d25..a0391a4a 100644 --- a/asm/ov09.s +++ b/asm/ov09.s @@ -3580,7 +3580,7 @@ _0211483a: strb r0, [r1] add r0, sp, #0x48 bl func_ov00_0207a38c - ldr r0, _02114988 ; =data_027e0fbc + ldr r0, _02114988 ; =gHealthManager add r1, sp, #0x48 ldr r0, [r0] bl func_ov00_020b7ffc @@ -3706,7 +3706,7 @@ _02114960: thumb_func_end func_ov09_02114810 _02114980: .word data_027e0dbc _02114984: .word data_ov00_020e9ec0 -_02114988: .word data_027e0fbc +_02114988: .word gHealthManager _0211498c: .word data_ov00_020e9e18 _02114990: .word data_ov09_0211f5b4 _02114994: .word data_ov00_020e9f08 diff --git a/asm/ov14/ov14_0213b778.inc b/asm/ov14/ov14_0213b778.inc index e4c9490d..7cef6c17 100644 --- a/asm/ov14/ov14_0213b778.inc +++ b/asm/ov14/ov14_0213b778.inc @@ -120,7 +120,7 @@ .extern data_027e0f94 .extern data_027e0fa0 .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc0 .extern data_027e0fc4 .extern data_027e0fc8 diff --git a/asm/ov14/ov14_0213b778.s b/asm/ov14/ov14_0213b778.s index c481fdf4..4c02e2c6 100644 --- a/asm/ov14/ov14_0213b778.s +++ b/asm/ov14/ov14_0213b778.s @@ -4744,7 +4744,7 @@ func_ov14_0213ef2c: ; 0x0213ef2c add r0, r4, #0 add r0, #0x80 strb r1, [r0] - ldr r0, _0213ef5c ; =data_027e0fbc + ldr r0, _0213ef5c ; =gHealthManager ldr r1, [r0] mov r0, #2 ldrsh r0, [r1, r0] @@ -4754,7 +4754,7 @@ func_ov14_0213ef2c: ; 0x0213ef2c nop thumb_func_end func_ov14_0213ef2c _0213ef58: .word data_ov14_02159084 -_0213ef5c: .word data_027e0fbc +_0213ef5c: .word gHealthManager .global func_ov14_0213ef60 thumb_func_start func_ov14_0213ef60 @@ -4768,7 +4768,7 @@ func_ov14_0213ef60: ; 0x0213ef60 bl func_0202e7fc mov r0, #0xa ldrsh r1, [r4, r0] - ldr r0, _0213ef90 ; =data_027e0fbc + ldr r0, _0213ef90 ; =gHealthManager ldr r0, [r0] strh r1, [r0, #2] add r0, r4, #0 @@ -4780,7 +4780,7 @@ func_ov14_0213ef60: ; 0x0213ef60 _0213ef84: .word data_ov14_02159084 _0213ef88: .word data_ov14_0215b248 _0213ef8c: .word data_027e077c -_0213ef90: .word data_027e0fbc +_0213ef90: .word gHealthManager .global func_ov14_0213ef94 thumb_func_start func_ov14_0213ef94 @@ -4794,7 +4794,7 @@ func_ov14_0213ef94: ; 0x0213ef94 bl func_0202e7fc mov r0, #0xa ldrsh r1, [r4, r0] - ldr r0, _0213efcc ; =data_027e0fbc + ldr r0, _0213efcc ; =gHealthManager ldr r0, [r0] strh r1, [r0, #2] add r0, r4, #0 @@ -4808,7 +4808,7 @@ func_ov14_0213ef94: ; 0x0213ef94 _0213efc0: .word data_ov14_02159084 _0213efc4: .word data_ov14_0215b248 _0213efc8: .word data_027e077c -_0213efcc: .word data_027e0fbc +_0213efcc: .word gHealthManager .global func_ov14_0213efd0 thumb_func_start func_ov14_0213efd0 @@ -5365,14 +5365,14 @@ func_ov14_0213f5dc: ; 0x0213f5dc stmdb sp!, {r4, lr} mov r4, r0 bl _ZN10PlayerBase9AddHealthEs - ldr r0, _0213f5fc ; =data_027e0fbc + ldr r0, _0213f5fc ; =gHealthManager ldrsh r1, [r4, #0xa] ldr r0, [r0] strh r1, [r0, #2] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov14_0213f5dc -_0213f5fc: .word data_027e0fbc +_0213f5fc: .word gHealthManager .global func_ov14_0213f600 arm_func_start func_ov14_0213f600 diff --git a/asm/ov15.inc b/asm/ov15.inc index f1e1f510..5e6636d2 100644 --- a/asm/ov15.inc +++ b/asm/ov15.inc @@ -150,7 +150,7 @@ .extern data_027e0fac .extern data_027e0fb0 .extern data_027e0fb8 -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc4 .extern data_027e0fe0 .extern data_027e0fe4 diff --git a/asm/ov15.s b/asm/ov15.s index 23f11727..c34a942a 100644 --- a/asm/ov15.s +++ b/asm/ov15.s @@ -30916,7 +30916,7 @@ _021398f0: str r0, [r4, #0xa4] str r0, [r4, #0xa8] str r0, [r4, #0xac] - ldr ip, _02139a70 ; =data_027e0fbc + ldr ip, _02139a70 ; =gHealthManager add r3, r4, #0x300 ldr r2, [ip] add r1, r4, #0x60 @@ -30958,7 +30958,7 @@ _02139a60: .word func_ov15_02139a80 _02139a64: .word func_ov15_02139a94 _02139a68: .word func_020350ac _02139a6c: .word func_02035064 -_02139a70: .word data_027e0fbc +_02139a70: .word gHealthManager _02139a74: .word data_027e10a4 _02139a78: .word data_027e0d38 _02139a7c: .word data_027e0ce0 @@ -30994,7 +30994,7 @@ func_ov15_02139ab4: ; 0x02139ab4 ldr r1, _02139cb8 ; =data_ov15_0218aaac mov r4, r0 str r1, [r4] - ldr r1, _02139cbc ; =data_027e0fbc + ldr r1, _02139cbc ; =gHealthManager ldrsh r3, [r4, #0xa] ldr r2, [r1] add r0, r4, #0x300 @@ -31123,7 +31123,7 @@ _02139af4: .align 2, 0 arm_func_end func_ov15_02139ab4 _02139cb8: .word data_ov15_0218aaac -_02139cbc: .word data_027e0fbc +_02139cbc: .word gHealthManager _02139cc0: .word data_027e10a4 _02139cc4: .word func_020350ac _02139cc8: .word func_ov15_02139a80 @@ -31136,7 +31136,7 @@ func_ov15_02139cd0: ; 0x02139cd0 ldr r1, _02139edc ; =data_ov15_0218aaac mov r4, r0 str r1, [r4] - ldr r1, _02139ee0 ; =data_027e0fbc + ldr r1, _02139ee0 ; =gHealthManager ldrsh r3, [r4, #0xa] ldr r2, [r1] add r0, r4, #0x300 @@ -31267,7 +31267,7 @@ _02139d10: .align 2, 0 arm_func_end func_ov15_02139cd0 _02139edc: .word data_ov15_0218aaac -_02139ee0: .word data_027e0fbc +_02139ee0: .word gHealthManager _02139ee4: .word data_027e10a4 _02139ee8: .word func_020350ac _02139eec: .word func_ov15_02139a80 @@ -31827,13 +31827,13 @@ func_ov15_0213a5e8: ; 0x0213a5e8 .global func_ov15_0213a604 arm_func_start func_ov15_0213a604 func_ov15_0213a604: ; 0x0213a604 - ldr r0, _0213a614 ; =data_027e0fbc + ldr r0, _0213a614 ; =gHealthManager ldr r0, [r0] ldrsh r0, [r0, #4] bx lr .align 2, 0 arm_func_end func_ov15_0213a604 -_0213a614: .word data_027e0fbc +_0213a614: .word gHealthManager .global func_ov15_0213a618 arm_func_start func_ov15_0213a618 diff --git a/asm/ov26.inc b/asm/ov26.inc index 48fbba7f..47e749b8 100644 --- a/asm/ov26.inc +++ b/asm/ov26.inc @@ -92,7 +92,7 @@ .extern data_027e0f94 .extern data_027e0fa0 .extern data_027e0fac -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc8 .extern data_027e0fd4 .extern data_027e0fe0 diff --git a/asm/ov26.s b/asm/ov26.s index 1fda29e7..9b4a55e2 100644 --- a/asm/ov26.s +++ b/asm/ov26.s @@ -1707,7 +1707,7 @@ func_ov26_0216e8b8: ; 0x0216e8b8 ldrb r0, [r0] cmp r0, #0 beq _0216e98e - ldr r0, _0216e9c0 ; =data_027e0fbc + ldr r0, _0216e9c0 ; =gHealthManager ldr r0, [r0] ldrh r1, [r0, #0xa] mov r0, #2 @@ -1762,7 +1762,7 @@ _0216e9b0: thumb_func_end func_ov26_0216e8b8 _0216e9b8: .word gItemManager _0216e9bc: .word data_027e0d38 -_0216e9c0: .word data_027e0fbc +_0216e9c0: .word gHealthManager .global func_ov26_0216e9c4 thumb_func_start func_ov26_0216e9c4 @@ -2101,7 +2101,7 @@ _0216edf8: mov r1, #0x3c add r0, r0, #0x3b bl func_01ff9b4c - ldr r1, _0216ee38 ; =data_027e0fbc + ldr r1, _0216ee38 ; =gHealthManager mov r2, #1 ldr r3, [r1] mov r0, r0, lsl #0x10 @@ -2115,7 +2115,7 @@ _0216edf8: ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov26_0216edb4 -_0216ee38: .word data_027e0fbc +_0216ee38: .word gHealthManager .global func_ov26_0216ee3c arm_func_start func_ov26_0216ee3c @@ -8769,7 +8769,7 @@ _02174196: ldrb r1, [r1] cmp r1, #0 beq _02174204 - ldr r1, _02174250 ; =data_027e0fbc + ldr r1, _02174250 ; =gHealthManager ldr r1, [r1] ldrh r2, [r1, #0xa] mov r1, #2 @@ -8867,7 +8867,7 @@ _0217424e: pop {r3, pc} .align 2, 0 thumb_func_end func_ov26_02174170 -_02174250: .word data_027e0fbc +_02174250: .word gHealthManager _02174254: .word gItemManager .global func_ov26_02174258 diff --git a/asm/ov33.inc b/asm/ov33.inc index cff44040..e21c1f6a 100644 --- a/asm/ov33.inc +++ b/asm/ov33.inc @@ -16,7 +16,7 @@ .extern data_027e0f94 .extern data_027e0fa0 .extern data_027e0fac -.extern data_027e0fbc +.extern gHealthManager .extern data_027e0fc8 .extern data_027e0fe0 .extern data_027e0fe4 diff --git a/asm/ov33.s b/asm/ov33.s index 98d30ba5..401c3b38 100644 --- a/asm/ov33.s +++ b/asm/ov33.s @@ -1755,7 +1755,7 @@ _0217d3b0: mov r0, #1 ldmia sp!, {r4, pc} _0217d3d0: - ldr r0, _0217d3f4 ; =data_027e0fbc + ldr r0, _0217d3f4 ; =gHealthManager mov r2, #5 ldr r1, [r0] mov r0, #1 @@ -1767,7 +1767,7 @@ _0217d3e8: .align 2, 0 arm_func_end func_ov33_0217d394 _0217d3f0: .word data_027e0e28 -_0217d3f4: .word data_027e0fbc +_0217d3f4: .word gHealthManager .global func_ov33_0217d3f8 arm_func_start func_ov33_0217d3f8 @@ -1780,7 +1780,7 @@ func_ov33_0217d3f8: ; 0x0217d3f8 beq _0217d444 cmp r1, #0x1f bne _0217d484 - ldr r1, _0217d48c ; =data_027e0fbc + ldr r1, _0217d48c ; =gHealthManager ldr r1, [r1] ldrsh r1, [r1, #8] mov r1, r1, lsl #0x18 @@ -1793,7 +1793,7 @@ _0217d43c: mov r0, r4 ldmia sp!, {r4, pc} _0217d444: - ldr r0, _0217d48c ; =data_027e0fbc + ldr r0, _0217d48c ; =gHealthManager ldr r0, [r0] ldrsh r0, [r0, #4] sub r1, r0, #0x10 @@ -1815,7 +1815,7 @@ _0217d484: ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov33_0217d3f8 -_0217d48c: .word data_027e0fbc +_0217d48c: .word gHealthManager .global func_ov33_0217d490 arm_func_start func_ov33_0217d490 diff --git a/include/Player/HealthManager.hpp b/include/Player/HealthManager.hpp new file mode 100644 index 00000000..5ebb7181 --- /dev/null +++ b/include/Player/HealthManager.hpp @@ -0,0 +1,22 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "System/SysNew.hpp" + +class HealthManager : public SysObject { +public: + /* 00 */ u16 mMaxHealth; + /* 02 */ u16 mHealth; + /* 04 */ s16 mMaxShipHealth; + /* 06 */ s16 mShipHealth; + /* 08 */ u16 mSalvageArmHealth; + /* 0a */ s16 mFlags; + /* 0c */ unk16 mUnk_0c; + /* 0e */ unk8 mUnk_0e; + /* 0f */ unk8 mUnk_0f; + /* 10 */ +}; + +extern HealthManager *gHealthManager;