diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/data/items.h | 14 | ||||
-rw-r--r-- | src/event_object_movement.c | 22 |
2 files changed, 29 insertions, 7 deletions
diff --git a/src/data/items.h b/src/data/items.h index 49f981faf..2293bcfac 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -5961,7 +5961,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("MYSTICTICKET"), .itemId = ITEM_MYSTIC_TICKET, .price = 0, @@ -5977,7 +5977,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("AURORATICKET"), .itemId = ITEM_AURORA_TICKET, .price = 0, @@ -5993,7 +5993,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("POWDER JAR"), .itemId = ITEM_POWDER_JAR, .price = 0, @@ -6009,7 +6009,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("RUBY"), .itemId = ITEM_RUBY, .price = 0, @@ -6025,7 +6025,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("SAPPHIRE"), .itemId = ITEM_SAPPHIRE, .price = 0, @@ -6044,7 +6044,7 @@ const struct Item gItems[] = //Emerald-specific key items - { + { .name = _("MAGMA EMBLEM"), .itemId = ITEM_MAGMA_EMBLEM, .price = 0, @@ -6060,7 +6060,7 @@ const struct Item gItems[] = .battleUseFunc = NULL, .secondaryId = 0, }, - { + { .name = _("OLD SEA MAP"), .itemId = ITEM_OLD_SEA_MAP, .price = 0, diff --git a/src/event_object_movement.c b/src/event_object_movement.c index cd5a547a9..e509c7738 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -27,6 +27,28 @@ // this file was known as evobjmv.c in Game Freak's original source +#define movement_type_def(setup, table) \ +static u8 setup##_callback(struct EventObject *, struct Sprite *);\ +void setup(struct Sprite *sprite)\ +{\ + UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, setup##_callback);\ +}\ +static u8 setup##_callback(struct EventObject *eventObject, struct Sprite *sprite)\ +{\ + return table[sprite->data[1]](eventObject, sprite);\ +} + +#define movement_type_empty_callback(setup) \ +static u8 setup##_callback(struct EventObject *, struct Sprite *);\ +void setup(struct Sprite *sprite)\ +{\ + UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, setup##_callback);\ +}\ +static u8 setup##_callback(struct EventObject *eventObject, struct Sprite *sprite)\ +{\ + return 0;\ +} + EWRAM_DATA u8 sCurrentReflectionType = 0; EWRAM_DATA u16 sCurrentSpecialObjectPaletteTag = 0; EWRAM_DATA struct LockedAnimEventObjects *gLockedAnimEventObjects = {0}; |