diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2017-09-10 09:43:25 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2017-09-10 09:43:25 -0400 |
commit | 89023e84d6137fe425c8621f5ba914304f37ee7b (patch) | |
tree | ed59f52703d10e067797909ed6f65f37dc637063 /src/field_effect_helpers.c | |
parent | 0c5bf5559328562f42e85cad9621a55923b7b50b (diff) |
sub_8127F7C
Diffstat (limited to 'src/field_effect_helpers.c')
-rw-r--r-- | src/field_effect_helpers.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 4a511fad1..474acf939 100644 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -34,6 +34,9 @@ static void sub_8127DD0(struct Sprite *); static void sub_8127E30(struct Sprite *); /*static*/ void sub_812882C(struct Sprite *, u8, u8); static void sub_81278D8(struct Sprite *); +/*static*/ void sub_8127FD4(struct MapObject *, struct Sprite *); +/*static*/ void sub_812800C(struct MapObject *, struct Sprite *); +/*static*/ void sub_81280A0(struct MapObject *, struct Sprite *, struct Sprite *); // .rodata @@ -998,17 +1001,30 @@ void sub_8127F28(u8 spriteId, u8 value, s16 data1) gSprites[spriteId].data1 = data1; } -u8 sub_8127F5C(struct Sprite *sprite) +/*static*/ u8 sub_8127F5C(struct Sprite *sprite) { return sprite->data0 & 0xF; } -u8 sub_8127F64(struct Sprite *sprite) +/*static*/ u8 sub_8127F64(struct Sprite *sprite) { return (sprite->data0 & 0xF0) >> 4; } -u8 sub_8127F70(struct Sprite *sprite) +/*static*/ u8 sub_8127F70(struct Sprite *sprite) { return (sprite->data0 & 0xF00) >> 8; } + +void sub_8127F7C(struct Sprite *sprite) +{ + struct MapObject *mapObject; + struct Sprite *linkedSprite; + + mapObject = &gMapObjects[sprite->data2]; + linkedSprite = &gSprites[mapObject->spriteId]; + sub_8127FD4(mapObject, sprite); + sub_812800C(mapObject, sprite); + sub_81280A0(mapObject, linkedSprite, sprite); + sprite->oam.priority = linkedSprite->oam.priority; +} |