diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2017-09-10 09:25:30 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2017-09-10 09:25:30 -0400 |
commit | ceea25425899494415d0dbac2bb5c9358db48683 (patch) | |
tree | c9b19c93674c5fc848c0f776c3be390779e89004 /src | |
parent | bfa87b839b8561a61f7d01afba5c52e431a12370 (diff) |
ash field effect callbacks
Diffstat (limited to 'src')
-rw-r--r-- | src/field_effect_helpers.c | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 3d3658b0f..0e8b6e8d3 100644 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -29,9 +29,9 @@ static void npc_pal_op_A(struct MapObject *, u8); static void npc_pal_op_B(struct MapObject *, u8); static void sub_81275A0(struct Sprite *); static void sub_81275C4(struct Sprite *); -/*static*/ void sub_8127DA0(struct Sprite *); -/*static*/ void sub_8127DD0(struct Sprite *); -/*static*/ void sub_8127E30(struct Sprite *); +static void sub_8127DA0(struct Sprite *); +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 *); @@ -926,3 +926,37 @@ u8 FldEff_Ash(void) } return 0; } + +void sub_8127D84(struct Sprite *sprite) +{ + gUnknown_08401E48[sprite->data0](sprite); +} + +static void sub_8127DA0(struct Sprite *sprite) +{ + sprite->invisible = TRUE; + sprite->animPaused = TRUE; + if (--sprite->data4 == 0) + { + sprite->data0 = 1; + } +} + +static void sub_8127DD0(struct Sprite *sprite) +{ + sprite->invisible = FALSE; + sprite->animPaused = FALSE; + MapGridSetMetatileIdAt(sprite->data1, sprite->data2, sprite->data3); + CurrentMapDrawMetatileAt(sprite->data1, sprite->data2); + gMapObjects[gPlayerAvatar.mapObjectId].mapobj_bit_2 = TRUE; + sprite->data0 = 2; +} + +static void sub_8127E30(struct Sprite *sprite) +{ + sub_806487C(sprite, FALSE); + if (sprite->animEnded) + { + FieldEffectStop(sprite, FLDEFF_ASH); + } +} |