summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-06-18 12:15:12 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-06-18 12:15:12 -0400
commitc57d632a6a8fc9bf4338182726c2e82430c1d8fb (patch)
tree46303c0a8a91bbdced60d2907e565b377f44f583 /include
parent69d04fec912f7ff157e075b7c105a5380eca575a (diff)
Field map object callback pointers
Diffstat (limited to 'include')
-rwxr-xr-xinclude/data/field_map_obj/callback_subroutine_pointers.h442
-rwxr-xr-x[-rw-r--r--]include/field_map_obj.h249
2 files changed, 651 insertions, 40 deletions
diff --git a/include/data/field_map_obj/callback_subroutine_pointers.h b/include/data/field_map_obj/callback_subroutine_pointers.h
new file mode 100755
index 000000000..d24a47184
--- /dev/null
+++ b/include/data/field_map_obj/callback_subroutine_pointers.h
@@ -0,0 +1,442 @@
+//
+// Created by scott on 6/18/2017.
+//
+
+#ifndef POKERUBY_CALLBACK_SUBROUTINE_POINTERS_H
+#define POKERUBY_CALLBACK_SUBROUTINE_POINTERS_H
+
+
+u8 (*const gUnknown_08375224[])(struct MapObject *, struct Sprite *) = {
+ sub_805C8F0,
+ sub_805C904,
+ sub_805C930,
+ sub_805C96C,
+ sub_805C98C,
+ sub_805C9D8,
+ sub_805CA08
+};
+
+const u8 gUnknown_08375240[] = {DIR_SOUTH, DIR_NORTH, DIR_WEST, DIR_EAST};
+
+u8 (*const gUnknown_08375244[])(s16, s16, s16, s16) = {
+ sub_805CAAC,
+ sub_805CADC,
+ sub_805CAEC,
+ sub_805CB00,
+ sub_805CB5C,
+ sub_805CBB8,
+ sub_805CC14,
+ sub_805CC70,
+ sub_805CCAC,
+ sub_805CCE8,
+ sub_805CD24
+};
+
+u8 (*const gUnknown_08375270[])(struct MapObject *, struct Sprite *) = {
+ sub_805CE2C,
+ sub_805CE40,
+ sub_805CE6C,
+ sub_805CEB0,
+ sub_805CEE0
+};
+
+u8 (*const gUnknown_08375284[])(struct MapObject *, struct Sprite *) = {
+ sub_805CF6C,
+ sub_805CF80,
+ sub_805CFAC,
+ sub_805CFE8,
+ sub_805D008,
+ sub_805D054,
+ sub_805D084
+};
+
+const u8 gUnknown_083752A0[] = {DIR_SOUTH, DIR_NORTH};
+
+u8 (*const gUnknown_083752A4[])(struct MapObject *, struct Sprite *) = {
+ sub_805D0F0,
+ sub_805D104,
+ sub_805D130,
+ sub_805D16C,
+ sub_805D18C,
+ sub_805D1D8,
+ sub_805D208
+};
+
+const u8 gUnknown_083752C0[] = {DIR_WEST, DIR_EAST};
+
+u8 (*const gUnknown_083752C4[])(struct MapObject *, struct Sprite *) = {
+ sub_805D274,
+ sub_805D2A0,
+ sub_805D2C0
+};
+
+u8 (*const gUnknown_083752D0[])(struct MapObject *, struct Sprite *) = {
+ do_berry_tree_growth_sparkle_1,
+ sub_805D3EC,
+ do_berry_tree_growth_sparkle_2,
+ sub_805D458,
+ sub_805D4A8
+};
+
+u8 (*const gUnknown_083752E4[])(struct MapObject *, struct Sprite *) = {
+ sub_805D538,
+ sub_805D54C,
+ sub_805D578,
+ sub_805D5BC,
+ sub_805D5EC
+};
+
+u8 (*const gUnknown_083752F8[])(struct MapObject *, struct Sprite *) = {
+ sub_805D678,
+ sub_805D68C,
+ sub_805D6B8,
+ sub_805D6FC,
+ sub_805D72C
+};
+
+u8 (*const gUnknown_0837530C[])(struct MapObject *, struct Sprite *) = {
+ sub_805D7B8,
+ sub_805D7CC,
+ sub_805D7F8,
+ sub_805D83C,
+ sub_805D86C
+};
+
+const u8 gUnknown_08375320[] = {DIR_NORTH, DIR_WEST};
+
+u8 (*const gUnknown_08375324[])(struct MapObject *, struct Sprite *) = {
+ sub_805D8F8,
+ sub_805D90C,
+ sub_805D938,
+ sub_805D97C,
+ sub_805D9AC
+};
+
+const u8 gUnknown_08375338[] = {DIR_NORTH, DIR_EAST};
+
+u8 (*const gUnknown_0837533C[])(struct MapObject *, struct Sprite *) = {
+ sub_805DA38,
+ sub_805DA4C,
+ sub_805DA78,
+ sub_805DABC,
+ sub_805DAEC
+};
+
+const u8 gUnknown_08375350[] = {DIR_SOUTH, DIR_WEST};
+
+u8 (*const gUnknown_08375354[])(struct MapObject *, struct Sprite *) = {
+ sub_805DB78,
+ sub_805DB8C,
+ sub_805DBB8,
+ sub_805DBFC,
+ sub_805DC2C
+};
+
+const u8 gUnknown_08375368[] = {DIR_SOUTH, DIR_EAST};
+
+u8 (*const gUnknown_0837536C[])(struct MapObject *, struct Sprite *) = {
+ sub_805DCB8,
+ sub_805DCCC,
+ sub_805DCF8,
+ sub_805DD3C,
+ sub_805DD6C
+};
+
+const u8 gUnknown_08375380[] = {DIR_NORTH, DIR_SOUTH, DIR_WEST, DIR_SOUTH};
+
+u8 (*const gUnknown_08375384[])(struct MapObject *, struct Sprite *) = {
+ sub_805DDF8,
+ sub_805DE0C,
+ sub_805DE38,
+ sub_805DE7C,
+ sub_805DEAC
+};
+
+const u8 gUnknown_08375398[] = {DIR_SOUTH, DIR_NORTH, DIR_EAST, DIR_SOUTH};
+
+u8 (*const gUnknown_0837539C[])(struct MapObject *, struct Sprite *) = {
+ sub_805DF38,
+ sub_805DF4C,
+ sub_805DF78,
+ sub_805DFBC,
+ sub_805DFEC
+};
+
+const u8 gUnknown_083753B0[] = {DIR_NORTH, DIR_WEST, DIR_EAST, DIR_NORTH};
+
+u8 (*const gUnknown_083753B4[])(struct MapObject *, struct Sprite *) = {
+ sub_805E078,
+ sub_805E08C,
+ sub_805E0B8,
+ sub_805E0FC,
+ sub_805E12C
+};
+
+const u8 gUnknown_083753C8[] = {DIR_WEST, DIR_EAST, DIR_SOUTH, DIR_SOUTH};
+
+u8 (*const gUnknown_083753CC[])(struct MapObject *, struct Sprite *) = {
+ sub_805E1B8,
+ sub_805E1E4,
+ sub_805E208,
+ sub_805E234
+};
+
+const u8 gUnknown_083753DC[] = {DIR_SOUTH, DIR_EAST, DIR_WEST, DIR_SOUTH, DIR_NORTH};
+
+u8 (*const gUnknown_083753E4[])(struct MapObject *, struct Sprite *) = {
+ sub_805E2BC,
+ sub_805E2E8,
+ sub_805E30C,
+ sub_805E338
+};
+
+const u8 gUnknown_083753F4[] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
+
+u8 (*const gUnknown_083753FC[])(struct MapObject *, struct Sprite *) = {
+ sub_805E3C0,
+ sub_805E3D4,
+ sub_805E40C,
+ sub_805E4C4
+};
+
+u8 (*const gUnknown_0837540C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E620,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375418[] = {DIR_NORTH, DIR_EAST, DIR_WEST, DIR_SOUTH};
+
+u8 (*const gUnknown_0837541C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E6AC,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375428[] = {DIR_EAST, DIR_WEST, DIR_SOUTH, DIR_NORTH};
+u8 (*const gUnknown_0837542C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E738,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375438[] = {DIR_SOUTH, DIR_NORTH, DIR_EAST, DIR_WEST};
+
+u8 (*const gUnknown_0837543C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E7C4,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375448[] = {DIR_WEST, DIR_SOUTH, DIR_NORTH, DIR_EAST};
+
+u8 (*const gUnknown_0837544C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E850,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375458[] = {DIR_NORTH, DIR_WEST, DIR_EAST, DIR_SOUTH};
+
+u8 (*const gUnknown_0837545C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E8DC,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375468[] = {DIR_WEST, DIR_EAST, DIR_SOUTH, DIR_NORTH};
+
+u8 (*const gUnknown_0837546C[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E968,
+ sub_805E5B4
+};
+
+u8 (*const gUnknown_08375478[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805E9F4,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375484[] = {DIR_EAST, DIR_SOUTH, DIR_NORTH, DIR_WEST};
+
+u8 (*const gUnknown_08375488[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EA80,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375494[] = {DIR_WEST, DIR_NORTH, DIR_SOUTH, DIR_EAST};
+
+u8 (*const gUnknown_08375498[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EB0C,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754A4[] = {DIR_NORTH, DIR_SOUTH, DIR_EAST, DIR_WEST};
+
+u8 (*const gUnknown_083754A8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EB98,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754B4[] = {DIR_EAST, DIR_WEST, DIR_NORTH, DIR_SOUTH};
+
+u8 (*const gUnknown_083754B8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EC24,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754C4[] = {DIR_SOUTH, DIR_EAST, DIR_WEST, DIR_NORTH};
+
+u8 (*const gUnknown_083754C8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805ECB0,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754D4[] = {DIR_EAST, DIR_NORTH, DIR_SOUTH, DIR_WEST};
+
+u8 (*const gUnknown_083754D8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805ED3C,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754E4[] = {DIR_NORTH, DIR_SOUTH, DIR_WEST, DIR_EAST};
+
+u8 (*const gUnknown_083754E8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EDC8,
+ sub_805E5B4
+};
+
+const u8 gUnknown_083754F4[] = {DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
+
+u8 (*const gUnknown_083754F8[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EE54,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375504[] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH};
+
+u8 (*const gUnknown_08375508[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EEE0,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375514[] = {DIR_NORTH, DIR_WEST, DIR_SOUTH, DIR_EAST};
+
+u8 (*const gUnknown_08375518[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EF6C,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375524[] = {DIR_SOUTH, DIR_EAST, DIR_NORTH, DIR_WEST};
+
+u8 (*const gUnknown_08375528[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805EFF8,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375534[] = {DIR_WEST, DIR_SOUTH, DIR_EAST, DIR_NORTH};
+
+u8 (*const gUnknown_08375538[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805F084,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375544[] = {DIR_EAST, DIR_NORTH, DIR_WEST, DIR_SOUTH};
+
+u8 (*const gUnknown_08375548[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805F110,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375554[] = {DIR_NORTH, DIR_EAST, DIR_SOUTH, DIR_WEST};
+
+u8 (*const gUnknown_08375558[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805F19C,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375564[] = {DIR_SOUTH, DIR_WEST, DIR_NORTH, DIR_EAST};
+
+u8 (*const gUnknown_08375568[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805F228,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375574[] = {DIR_WEST, DIR_NORTH, DIR_EAST, DIR_SOUTH};
+
+u8 (*const gUnknown_08375578[])(struct MapObject *, struct Sprite *) = {
+ sub_805E4EC,
+ sub_805F2B4,
+ sub_805E5B4
+};
+
+const u8 gUnknown_08375584[] = {DIR_EAST, DIR_SOUTH, DIR_WEST, DIR_NORTH};
+
+u8 (*const gUnknown_08375588[])(struct MapObject *, struct Sprite *) = {
+ mss_npc_reset_oampriv3_1_unk2_unk3,
+ sub_805F364,
+ sub_805F3C4
+};
+
+u8 (*const gUnknown_08375594[])(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8)) = {
+ sub_805F3EC,
+ sub_805F3F0,
+ sub_805F438,
+ sub_805F4F0,
+ sub_805F5A8,
+ sub_805F660,
+ cph_IM_DIFFERENT,
+ sub_805F760,
+ oac_hopping,
+ sub_805F3EC,
+ sub_805F3EC
+};
+
+u8 (*const gUnknown_083755C0[])(struct MapObject *, struct Sprite *) = {
+ mss_npc_reset_oampriv3_1_unk2_unk3,
+ mss_08062EA4,
+ sub_805F3C4
+};
+
+u8 (*const gUnknown_083755CC[])(struct MapObject *, struct Sprite *) = {
+ sub_805FAF8
+};
+
+u8 (*const gUnknown_083755D0[])(struct MapObject *, struct Sprite *) = {
+ sub_805FB64,
+ sub_805FB04
+};
+
+u8 (*const gUnknown_083755D8[])(struct MapObject *, struct Sprite *) = {
+ sub_805FBD4,
+ sub_805FB04
+};
+
+u8 (*const gUnknown_083755E0[])(struct MapObject *, struct Sprite *) = {
+ sub_805FC44,
+ sub_805FB04
+};
+
+u8 (*const gUnknown_083755E8[])(struct MapObject *, struct Sprite *) = {
+ sub_805FCB4,
+ sub_805FCE8,
+ sub_805FD08
+};
+
+#endif //POKERUBY_CALLBACK_SUBROUTINE_POINTERS_H
diff --git a/include/field_map_obj.h b/include/field_map_obj.h
index e1210f16c..fd74b28e0 100644..100755
--- a/include/field_map_obj.h
+++ b/include/field_map_obj.h
@@ -4,7 +4,6 @@
#include "sprite.h"
#define fieldmap_object_cb(setup, callback, table) \
-extern u8 (*const table[])(struct MapObject *, struct Sprite *);\
static u8 callback(struct MapObject *, struct Sprite *);\
void setup(struct Sprite *sprite)\
{\
@@ -43,48 +42,33 @@ void MoveCoords(u8 direction, s16 *x, s16 *y);
void meta_step(struct MapObject *pObject, struct Sprite *pSprite, u8 (*d8)(struct MapObject *, struct Sprite *));
void npc_reset(struct MapObject *mapObject, struct Sprite *sprite);
-extern const u8 gUnknown_08375240[4];
-extern u8 (*const gUnknown_08375244[])(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CAAC(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CADC(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CAEC(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CB00(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CB5C(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CBB8(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CC14(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CC70(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CCAC(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CCE8(s16 a0, s16 a1, s16 a2, s16 a3);
+u8 sub_805CD24(s16 a0, s16 a1, s16 a2, s16 a3);
+
+u8 sub_805F3EC(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F3F0(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F438(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F4F0(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F5A8(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F660(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 cph_IM_DIFFERENT(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F760(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 oac_hopping(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F3EC(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+u8 sub_805F3EC(struct MapObject *, struct Sprite *, u8, bool8 (*const)(u8));
+
extern bool8 (*const gUnknown_08375684[4])(u8);
extern bool8 (*const gUnknown_08375694[4])(u8);
-extern const u8 gUnknown_083752A0[2];
-extern const u8 gUnknown_083752C0[2];
-extern const u8 gUnknown_08375320[2];
-extern const u8 gUnknown_08375338[2];
-extern const u8 gUnknown_08375350[2];
-extern const u8 gUnknown_08375368[2];
-extern const u8 gUnknown_08375380[2];
-extern const u8 gUnknown_08375398[2];
-extern const u8 gUnknown_083753B0[2];
-extern const u8 gUnknown_083753C8[2];
-extern const u8 gUnknown_083753DC[5];
-extern const u8 gUnknown_083753F4[5];
-extern const u8 gUnknown_08375418[4];
-extern const u8 gUnknown_08375428[4];
-extern const u8 gUnknown_08375438[4];
-extern const u8 gUnknown_08375448[4];
-extern const u8 gUnknown_08375458[4];
-extern const u8 gUnknown_08375468[4];
-extern const u8 gUnknown_08375240[4];
-extern const u8 gUnknown_08375484[4];
-extern const u8 gUnknown_08375494[4];
-extern const u8 gUnknown_083754A4[4];
-extern const u8 gUnknown_083754B4[4];
-extern const u8 gUnknown_083754C4[4];
-extern const u8 gUnknown_083754D4[4];
-extern const u8 gUnknown_083754E4[4];
-extern const u8 gUnknown_083754F4[4];
-extern const u8 gUnknown_08375504[4];
-extern const u8 gUnknown_08375514[4];
-extern const u8 gUnknown_08375524[4];
-extern const u8 gUnknown_08375534[4];
-extern const u8 gUnknown_08375544[4];
-extern const u8 gUnknown_08375554[4];
-extern const u8 gUnknown_08375564[4];
-extern const u8 gUnknown_08375574[4];
-extern const u8 gUnknown_08375584[4];
-
extern const u8 gUnknown_0837567B[9];
extern const u8 gUnknown_0837574F[8];
@@ -154,5 +138,190 @@ void sub_805FB90(struct Sprite *);
void sub_805FC00(struct Sprite *);
void sub_805FC70(struct Sprite *);
+u8 sub_805C8F0(struct MapObject *, struct Sprite *);
+u8 sub_805C904(struct MapObject *, struct Sprite *);
+u8 sub_805C930(struct MapObject *, struct Sprite *);
+u8 sub_805C96C(struct MapObject *, struct Sprite *);
+u8 sub_805C98C(struct MapObject *, struct Sprite *);
+u8 sub_805C9D8(struct MapObject *, struct Sprite *);
+u8 sub_805CA08(struct MapObject *, struct Sprite *);
+u8 sub_805CE2C(struct MapObject *, struct Sprite *);
+u8 sub_805CE40(struct MapObject *, struct Sprite *);
+u8 sub_805CE6C(struct MapObject *, struct Sprite *);
+u8 sub_805CEB0(struct MapObject *, struct Sprite *);
+u8 sub_805CEE0(struct MapObject *, struct Sprite *);
+u8 sub_805CF6C(struct MapObject *, struct Sprite *);
+u8 sub_805CF80(struct MapObject *, struct Sprite *);
+u8 sub_805CFAC(struct MapObject *, struct Sprite *);
+u8 sub_805CFE8(struct MapObject *, struct Sprite *);
+u8 sub_805D008(struct MapObject *, struct Sprite *);
+u8 sub_805D054(struct MapObject *, struct Sprite *);
+u8 sub_805D084(struct MapObject *, struct Sprite *);
+u8 sub_805D0F0(struct MapObject *, struct Sprite *);
+u8 sub_805D104(struct MapObject *, struct Sprite *);
+u8 sub_805D130(struct MapObject *, struct Sprite *);
+u8 sub_805D16C(struct MapObject *, struct Sprite *);
+u8 sub_805D18C(struct MapObject *, struct Sprite *);
+u8 sub_805D1D8(struct MapObject *, struct Sprite *);
+u8 sub_805D208(struct MapObject *, struct Sprite *);
+u8 sub_805D274(struct MapObject *, struct Sprite *);
+u8 sub_805D2A0(struct MapObject *, struct Sprite *);
+u8 sub_805D2C0(struct MapObject *, struct Sprite *);
+u8 do_berry_tree_growth_sparkle_1(struct MapObject *, struct Sprite *);
+u8 sub_805D3EC(struct MapObject *, struct Sprite *);
+u8 do_berry_tree_growth_sparkle_2(struct MapObject *, struct Sprite *);
+u8 sub_805D458(struct MapObject *, struct Sprite *);
+u8 sub_805D4A8(struct MapObject *, struct Sprite *);
+u8 sub_805D538(struct MapObject *, struct Sprite *);
+u8 sub_805D54C(struct MapObject *, struct Sprite *);
+u8 sub_805D578(struct MapObject *, struct Sprite *);
+u8 sub_805D5BC(struct MapObject *, struct Sprite *);
+u8 sub_805D5EC(struct MapObject *, struct Sprite *);
+u8 sub_805D678(struct MapObject *, struct Sprite *);
+u8 sub_805D68C(struct MapObject *, struct Sprite *);
+u8 sub_805D6B8(struct MapObject *, struct Sprite *);
+u8 sub_805D6FC(struct MapObject *, struct Sprite *);
+u8 sub_805D72C(struct MapObject *, struct Sprite *);
+u8 sub_805D7B8(struct MapObject *, struct Sprite *);
+u8 sub_805D7CC(struct MapObject *, struct Sprite *);
+u8 sub_805D7F8(struct MapObject *, struct Sprite *);
+u8 sub_805D83C(struct MapObject *, struct Sprite *);
+u8 sub_805D86C(struct MapObject *, struct Sprite *);
+u8 sub_805D8F8(struct MapObject *, struct Sprite *);
+u8 sub_805D90C(struct MapObject *, struct Sprite *);
+u8 sub_805D938(struct MapObject *, struct Sprite *);
+u8 sub_805D97C(struct MapObject *, struct Sprite *);
+u8 sub_805D9AC(struct MapObject *, struct Sprite *);
+u8 sub_805DA38(struct MapObject *, struct Sprite *);
+u8 sub_805DA4C(struct MapObject *, struct Sprite *);
+u8 sub_805DA78(struct MapObject *, struct Sprite *);
+u8 sub_805DABC(struct MapObject *, struct Sprite *);
+u8 sub_805DAEC(struct MapObject *, struct Sprite *);
+u8 sub_805DB78(struct MapObject *, struct Sprite *);
+u8 sub_805DB8C(struct MapObject *, struct Sprite *);
+u8 sub_805DBB8(struct MapObject *, struct Sprite *);
+u8 sub_805DBFC(struct MapObject *, struct Sprite *);
+u8 sub_805DC2C(struct MapObject *, struct Sprite *);
+u8 sub_805DCB8(struct MapObject *, struct Sprite *);
+u8 sub_805DCCC(struct MapObject *, struct Sprite *);
+u8 sub_805DCF8(struct MapObject *, struct Sprite *);
+u8 sub_805DD3C(struct MapObject *, struct Sprite *);
+u8 sub_805DD6C(struct MapObject *, struct Sprite *);
+u8 sub_805DDF8(struct MapObject *, struct Sprite *);
+u8 sub_805DE0C(struct MapObject *, struct Sprite *);
+u8 sub_805DE38(struct MapObject *, struct Sprite *);
+u8 sub_805DE7C(struct MapObject *, struct Sprite *);
+u8 sub_805DEAC(struct MapObject *, struct Sprite *);
+u8 sub_805DF38(struct MapObject *, struct Sprite *);
+u8 sub_805DF4C(struct MapObject *, struct Sprite *);
+u8 sub_805DF78(struct MapObject *, struct Sprite *);
+u8 sub_805DFBC(struct MapObject *, struct Sprite *);
+u8 sub_805DFEC(struct MapObject *, struct Sprite *);
+u8 sub_805E078(struct MapObject *, struct Sprite *);
+u8 sub_805E08C(struct MapObject *, struct Sprite *);
+u8 sub_805E0B8(struct MapObject *, struct Sprite *);
+u8 sub_805E0FC(struct MapObject *, struct Sprite *);
+u8 sub_805E12C(struct MapObject *, struct Sprite *);
+u8 sub_805E1B8(struct MapObject *, struct Sprite *);
+u8 sub_805E1E4(struct MapObject *, struct Sprite *);
+u8 sub_805E208(struct MapObject *, struct Sprite *);
+u8 sub_805E234(struct MapObject *, struct Sprite *);
+u8 sub_805E2BC(struct MapObject *, struct Sprite *);
+u8 sub_805E2E8(struct MapObject *, struct Sprite *);
+u8 sub_805E30C(struct MapObject *, struct Sprite *);
+u8 sub_805E338(struct MapObject *, struct Sprite *);
+u8 sub_805E3C0(struct MapObject *, struct Sprite *);
+u8 sub_805E3D4(struct MapObject *, struct Sprite *);
+u8 sub_805E40C(struct MapObject *, struct Sprite *);
+u8 sub_805E4C4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E620(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E6AC(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E738(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E7C4(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E850(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E8DC(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E968(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805E9F4(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EA80(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EB0C(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EB98(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EC24(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805ECB0(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805ED3C(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EDC8(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EE54(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EEE0(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EF6C(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805EFF8(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805F084(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805F110(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805F19C(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805F228(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 sub_805E4EC(struct MapObject *, struct Sprite *);
+u8 sub_805F2B4(struct MapObject *, struct Sprite *);
+u8 sub_805E5B4(struct MapObject *, struct Sprite *);
+u8 mss_npc_reset_oampriv3_1_unk2_unk3(struct MapObject *, struct Sprite *);
+u8 sub_805F364(struct MapObject *, struct Sprite *);
+u8 sub_805F3C4(struct MapObject *, struct Sprite *);
+u8 mss_npc_reset_oampriv3_1_unk2_unk3(struct MapObject *, struct Sprite *);
+u8 mss_08062EA4(struct MapObject *, struct Sprite *);
+u8 sub_805F3C4(struct MapObject *, struct Sprite *);
+u8 sub_805FAF8(struct MapObject *, struct Sprite *);
+u8 sub_805FB64(struct MapObject *, struct Sprite *);
+u8 sub_805FB04(struct MapObject *, struct Sprite *);
+u8 sub_805FBD4(struct MapObject *, struct Sprite *);
+u8 sub_805FB04(struct MapObject *, struct Sprite *);
+u8 sub_805FC44(struct MapObject *, struct Sprite *);
+u8 sub_805FB04(struct MapObject *, struct Sprite *);
+u8 sub_805FCB4(struct MapObject *, struct Sprite *);
+u8 sub_805FCE8(struct MapObject *, struct Sprite *);
+u8 sub_805FD08(struct MapObject *, struct Sprite *);
+
int state_to_direction(u8, u8, u8);
#endif // GUARD_FIELD_MAP_OBJ_H