summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-09-13 09:41:11 -0400
committerscnorton <scnorton@biociphers.org>2017-09-13 09:41:11 -0400
commit28b272bf52e32374a3d0e493b47953bfad8e9cac (patch)
tree91f8d1d141d74873cd1f98a2e7c6ef9c88795e1c /src
parentc8696f15528add1c1a4a195c5fc02192c3f04a77 (diff)
NoMovement1, GoRandomDirections
Diffstat (limited to 'src')
-rwxr-xr-xsrc/field_map_obj.c28
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)
+