diff options
author | scnorton <scnorton@biociphers.org> | 2017-09-13 09:41:11 -0400 |
---|---|---|
committer | scnorton <scnorton@biociphers.org> | 2017-09-13 09:41:11 -0400 |
commit | 28b272bf52e32374a3d0e493b47953bfad8e9cac (patch) | |
tree | 91f8d1d141d74873cd1f98a2e7c6ef9c88795e1c /src | |
parent | c8696f15528add1c1a4a195c5fc02192c3f04a77 (diff) |
NoMovement1, GoRandomDirections
Diffstat (limited to 'src')
-rwxr-xr-x | src/field_map_obj.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/field_map_obj.c b/src/field_map_obj.c index e142a35d6..3dd47d540 100755 --- a/src/field_map_obj.c +++ b/src/field_map_obj.c @@ -20,6 +20,29 @@ #define NUM_FIELD_MAP_OBJECT_TEMPLATES 0x51 +#define null_object_step(name, retval) \ +static bool8 FieldObjectCB2_##name(struct MapObject *, struct Sprite *);\ +void FieldObjectCB_##name(struct Sprite *sprite)\ +{\ + FieldObjectStep(&gMapObjects[sprite->data0], sprite, FieldObjectCB2_##name);\ +}\ +static bool8 FieldObjectCB2_##name(struct MapObject *mapObject, struct Sprite *sprite)\ +{\ + return (retval);\ +} + +#define field_object_step(name, table) \ +extern bool8 (*const (table)[])(struct MapObject *, struct Sprite *);\ +static bool8 FieldObjectCB2_##name(struct MapObject *, struct Sprite *);\ +void FieldObjectCB_##name(struct Sprite *sprite)\ +{\ + FieldObjectStep(&gMapObjects[sprite->data0], sprite, FieldObjectCB2_##name);\ +}\ +static bool8 FieldObjectCB2_##name(struct MapObject *mapObject, struct Sprite *sprite)\ +{\ + return (table)[sprite->data1](mapObject, sprite);\ +} + // Static struct declarations // Static RAM declarations @@ -1692,3 +1715,8 @@ u16 npc_paltag_by_palslot(u8 palSlot) } return 0x11ff; } + +null_object_step(NoMovement1, FALSE) + +field_object_step(GoRandomDirections, gUnknown_0850D6F4) + |