From 4e22f1e55fd43ebfd4c94dc7c22aa6b403249370 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 16 Sep 2017 23:11:09 -0400 Subject: MapObjectExec***Anim --- src/field_map_obj.c | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'src/field_map_obj.c') diff --git a/src/field_map_obj.c b/src/field_map_obj.c index ba207e2bd..9702385e4 100755 --- a/src/field_map_obj.c +++ b/src/field_map_obj.c @@ -4081,8 +4081,11 @@ u32 zffu_offset_calc(u8 a0, u8 a1) u32 state_to_direction(u8 a0, u32 a1, u32 a2) { u32 zffuOffset; - u8 a1_2 = a1; - u8 a2_2 = a2; + u8 a1_2; + u8 a2_2; + + a1_2 = a1; + a2_2 = a2; if (a1_2 == 0 || a2_2 == 0 || a1_2 > DIR_EAST || a2_2 > DIR_EAST) { return 0; @@ -4090,3 +4093,22 @@ u32 state_to_direction(u8 a0, u32 a1, u32 a2) zffuOffset = zffu_offset_calc(a1_2, a2); return gUnknown_0850DC3F[a0 - 1][zffuOffset - 1]; } + +void FieldObjectExecSpecialAnim(struct MapObject *mapObject, struct Sprite *sprite) +{ + if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data2](mapObject, sprite)) + { + mapObject->mapobj_bit_7 = TRUE; + } +} + +bool8 FieldObjectExecRegularAnim(struct MapObject *mapObject, struct Sprite *sprite) +{ + if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data2](mapObject, sprite)) + { + mapObject->mapobj_unk_1C = 0xFF; + sprite->data2 = 0; + return TRUE; + } + return FALSE; +} -- cgit v1.2.3