summaryrefslogtreecommitdiff
path: root/src/ground_map.c
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2021-10-22 10:01:07 -0700
committerGitHub <noreply@github.com>2021-10-22 10:01:07 -0700
commit3e5dd1d047bada52ab0dce2fe58b04e39bcaa1cc (patch)
tree0e40067d711c783ef97667f4a8256f38ab0d4b0a /src/ground_map.c
parent3f7ee3a806d965fae70fd98f2cd1af13a2e4cf0b (diff)
Death by 74 files (#65)
* death by 74 files * 20% reached * doc move stuff in pokemon * fix undef reference * doc more and plumb a few more constanst for num party members and num moves * that struct is def PokemonMove.. clean up all code with it
Diffstat (limited to 'src/ground_map.c')
-rw-r--r--src/ground_map.c77
1 files changed, 77 insertions, 0 deletions
diff --git a/src/ground_map.c b/src/ground_map.c
new file mode 100644
index 0000000..967589d
--- /dev/null
+++ b/src/ground_map.c
@@ -0,0 +1,77 @@
+#include "global.h"
+#include "memory.h"
+#include "debug.h"
+
+struct unkStruct_3001B6C
+{
+ // size: 0x110
+ u8 fill0[0xE4];
+ u16 unkE4;
+};
+
+extern struct unkStruct_3001B6C *gUnknown_3001B6C;
+extern u8 gUnknown_811736C[];
+extern struct DebugLocation gUnknown_8117538[];
+
+extern u8 *gUnknown_3001B70;
+
+extern void sub_809D600(void *, u8 *, u32, u32, u32);
+extern void GroundMap_Reset(void);
+extern void sub_80A5E8C(u32);
+extern void sub_809D648(void *);
+extern void sub_80A5EBC(void);
+
+extern void sub_80A2D00(void *);
+extern void sub_80015C0(u32, u32);
+extern void sub_80A5EDC(u32);
+extern void sub_809D754(void *, struct DebugLocation *);
+extern void sub_80A2D68(void *);
+extern void nullsub_121(void);
+extern void sub_80A2D88(void *);
+extern void nullsub_122(void);
+
+void sub_80A4A7C(void)
+{
+ gUnknown_3001B6C = MemoryAlloc(0x110, 6);
+ gUnknown_3001B6C->unkE4 = -1;
+ sub_809D600(gUnknown_3001B6C, gUnknown_811736C, 0, -1, -1);
+ sub_80A5E8C(0);
+ GroundMap_Reset();
+}
+
+void sub_80A4AC4(void)
+{
+ GroundMap_Reset();
+ sub_80A5EBC();
+ sub_809D648(gUnknown_3001B6C);
+ MemoryFree(gUnknown_3001B6C);
+ gUnknown_3001B6C = NULL;
+}
+
+void GroundMap_Reset(void)
+{
+ sub_80015C0(0, 0x37);
+ sub_80015C0(0, 0x38);
+ sub_809D754(gUnknown_3001B6C, gUnknown_8117538);
+ if(gUnknown_3001B70 != NULL)
+ {
+ sub_80A2D00(gUnknown_3001B70);
+ MemoryFree(gUnknown_3001B70);
+ gUnknown_3001B70 = NULL;
+ }
+ sub_80A5EDC(0);
+}
+
+void sub_80A4B38(void)
+{
+ nullsub_121();
+ if(gUnknown_3001B70 != NULL)
+ sub_80A2D68(gUnknown_3001B70);
+}
+
+void sub_80A4B54(void)
+{
+ if(gUnknown_3001B70 != NULL)
+ sub_80A2D88(gUnknown_3001B70);
+ nullsub_122();
+}