summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/dungeon_global_data.h3
-rw-r--r--include/item.h1
-rw-r--r--include/main_menu.h12
-rw-r--r--include/sub_8095228.h4
-rw-r--r--include/wonder_mail.h41
5 files changed, 43 insertions, 18 deletions
diff --git a/include/dungeon_global_data.h b/include/dungeon_global_data.h
index 17f4b3a..bc1ad46 100644
--- a/include/dungeon_global_data.h
+++ b/include/dungeon_global_data.h
@@ -41,7 +41,8 @@ struct DungeonGlobalData
/* 0x363C */ u8 expYieldRankings[NUM_SPECIES];
u8 fill37E3[0x37FC - 0x37D9];
/* 0x37FC */ bool8 decoyActive;
- u8 fill37FD[0x3A0E - 0x37FD];
+ u8 fill37FD[0x3A0D - 0x37FD];
+ /* 0x3A0D */ u8 unk3A0D;
/* 0x3A0E */ s16 tileset;
u8 fill3A10[0x3A14 - 0x3A10];
/* 0x3A14 */ s16 bossBattleIndex;
diff --git a/include/item.h b/include/item.h
index 998f1ac..e1a8a0d 100644
--- a/include/item.h
+++ b/include/item.h
@@ -93,6 +93,7 @@ bool8 xxx_insert_unk230_80919FC(u8);
u32 xxx_count_non_empty_inv_unk250_8091A48();
void sub_8091BB4(u8);
void sub_8090F58(void*, u8 *, struct ItemSlot *, struct unkStruct_8090F58*);
+void sub_8090E14(u8* ext_buffer, struct ItemSlot* slot, struct unkStruct_8090F58* a3);
void SlotToHeldItem(struct HeldItem *held,struct ItemSlot *slot);
void RestoreHeldItem(struct unkStruct_8094924*, struct HeldItem*);
diff --git a/include/main_menu.h b/include/main_menu.h
index 3d72acb..b794250 100644
--- a/include/main_menu.h
+++ b/include/main_menu.h
@@ -6,7 +6,7 @@ enum MainMenuScreens
MENU_MAIN_SCREEN = 1,
MENU_NEW_GAME = 3,
MENU_AWAITING_RESCUE = 6,
- MENU_CONTINUE = 7,
+ MENU_CONTINUE = 7, // used by Revive Team/Continue
MENU_DELETE_SAVE_PROMPT,
MENU_DELETE_SAVE_CONFIRM,
MENU_ADVENTURE_LOG = 10,
@@ -16,6 +16,8 @@ enum MainMenuScreens
MENU_DUAL_SLOT,
MENU_WIRELESS_COMMS,
MENU_DEBUG = 16,
+ MENU_SEND_ITEMS,
+ MENU_RECEIVE_ITEMS,
MENU_COMMUNICATION_1 = 19,
MENU_COMMUNICATION_2,
// NOTE: 0x1B - 0x22 used by Rescue Password Menu
@@ -54,4 +56,12 @@ struct MainMenu
};
+
+void InitMainMenu(void);
+void DeleteMainMenu(void);
+void SetUpMenu(void);
+s32 UpdateMenu(void);
+void CleanUpMenu(void);
+bool8 sub_80363E0(void);
+
#endif // GUARD_MAIN_MENU_H
diff --git a/include/sub_8095228.h b/include/sub_8095228.h
index e7d214b..3fd5993 100644
--- a/include/sub_8095228.h
+++ b/include/sub_8095228.h
@@ -1,3 +1,5 @@
+#ifndef GUARD_SUB_8095228_H
+#define GUARD_SUB_8095228_H
struct unkStruct_8095228
{
@@ -18,4 +20,4 @@ struct unkStruct_8095228
extern struct unkStruct_8095228 *sub_8095228(u8);
-
+#endif // GUARD_SUB_8095228_H
diff --git a/include/wonder_mail.h b/include/wonder_mail.h
index 2879f1f..e079230 100644
--- a/include/wonder_mail.h
+++ b/include/wonder_mail.h
@@ -4,8 +4,25 @@
#include "file_system.h"
#include "text.h"
#include "item.h"
+#include "pokemon.h"
+#include "sub_8095228.h"
#define PASSWORD_BUFFER_SIZE 54
+#define MAX_ITEM_REWARDS 3
+
+struct unkStruct_802F204
+{
+ /* 0x0 */ u8 clientName[POKEMON_NAME_LENGTH]; // client name?
+ /* 0xA */ u8 name2[POKEMON_NAME_LENGTH]; // target name?
+ /* 0x14 */ s16 unk14; // poke species (client??)
+ /* 0x16 */ u8 unk16;
+ /* 0x18 */ s32 moneyReward;
+ /* 0x1C */ u8 itemRewards[MAX_ITEM_REWARDS];
+ /* 0x1F */ u8 numItems;
+ /* 0x20 */ u8 friendAreaReward;
+ u8 fill21[0x24 - 0x21];
+ /* 0x24 */ u32 teamRankPtsReward;
+};
struct WonderMail
{
@@ -34,7 +51,14 @@ struct WonderMailStruct_203B2C0
u8 unk3E;
u32 unk40;
u32 linkError;
- u16 unk48[232];
+ u8 unk48[0x30];
+ u8 unk78[0x30];
+ struct unkStruct_8095228 unkA8;
+ struct PokemonStruct unkD8;
+ u8 unk130;
+ u8 fill131[0x168 - 0x131];
+ u16 unk168;
+ u8 fill16A[0x218 - 0x16A];
u8 unk218;
u32 unk21C;
u8 padding[0x7C];
@@ -92,20 +116,7 @@ struct WonderMailStruct_203B2C4
u8 formattedString[0x100];
s32 wonderMailMethod;
u32 wonderMailMode;
- u8 unk53C[0xA];
- u32 unk548;
- u32 unk54C;
- u16 unk550;
- u8 unk552;
- u8 unk553;
- u32 unk554;
- u8 unk558;
- u8 unk559;
- u8 unk55A;
- u8 unk55B;
- u8 unk55C;
- u8 fill55C[0x560 - 0x55D];
- u32 unk560;
+ struct unkStruct_802F204 unk53C;
};
void sub_8028B04(u32 r0);