Split+data wonder_mail_3 and wonder_mail_2_1

This commit is contained in:
Kermalis
2023-09-29 23:46:27 -04:00
committed by Roshan Padaki
parent 3695335707
commit ccbc0ea647
138 changed files with 1900 additions and 1883 deletions

View File

@@ -1,10 +1,46 @@
#ifndef GUARD_MENU_H
#define GUARD_MENU_H
#include "input.h"
#include "sprite_oam.h"
#include "structs/str_text.h"
// size: 0xC
typedef struct MenuInputStructSub
{
u8 unk0;
/* 0x1 */ u8 a_button;
/* 0x2 */ u8 b_button;
/* 0x3 */ u8 dpad_right;
/* 0x4 */ u8 dpad_left;
u8 fill5[3];
u16 unk8;
s16 unkA;
} MenuInputStructSub;
// size: 0x34
typedef struct MenuInputStruct
{
s32 unk0;
u16 unk4;
s16 unk6;
s16 unk8; // Maybe Position
s16 unkA;
s16 unkC; // Maybe Position
s16 unkE;
u32 unk10;
s16 unk14; // Maybe Position
s16 unk16;
/* 0x18 */ s16 menuIndex;
s16 unk1A;
s16 unk1C;
s16 unk1E;
s16 unk20;
s16 unk22;
u16 unk24;
u16 unk26;
MenuInputStructSub unk28;
} MenuInputStruct;
// size: 0x8
typedef struct MenuItem
{

View File

@@ -0,0 +1,32 @@
#ifndef GUARD_CODE_STR_802C39C_H
#define GUARD_CODE_STR_802C39C_H
#include "structs/str_wonder_mail.h"
// size: 0x58
typedef struct unkStruct_802C39C
{
/* 0x0 */ u32 unk0[2];
/* 0x8 */ WonderMailSub *unk8;
/* 0xC */ u8 *playerName;
/* 0x10 */ s16 clientSpecies;
/* 0x12 */ s16 targetSpecies;
/* 0x14 */ u8 targetItem;
/* 0x15 */ u8 fill15[0x2E - 0x15];
/* 0x2E */ u8 rewardType;
u8 *unk30;
/* 0x34 */ u8 rewardItem;
u8 fill35[0x38 - 0x35];
/* 0x38 */ u8 unk38[0x40 - 0x38];
u8 mailTitleType;
u8 mailDescriptionType;
u8 mailMissionType;
u8 unk43;
u8 mailStatus; // mail status (suspend / take job / done)
/* 0x48 */ u32 y;
/* 0x4C */ u8 *unk4C;
u8 *unk50;
/* 0x54 */ WonderMail *mail;
} unkStruct_802C39C;
#endif // GUARD_CODE_STR_802C39C_H

View File

@@ -0,0 +1,82 @@
#ifndef GUARD_STR_WONDER_MAIL_H
#define GUARD_STR_WONDER_MAIL_H
#include "constants/wonder_mail.h"
#include "structs/str_dungeon.h"
#include "structs/str_pokemon.h"
// size: 0x8
typedef struct WonderMailSub
{
/* 0x0 */ DungeonLocation dungeon;
/* 0x4 */ u32 seed;
} WonderMailSub;
// size: 0x14
typedef struct WonderMail
{
/* 0x0 */ u8 mailType;
/* 0x1 */ u8 missionType;
u8 unk2;
/* 0x4 */ WonderMailSub unk4;
/* 0xC */ s16 clientSpecies;
/* 0xE */ s16 targetSpecies;
/* 0x10 */ u8 targetItem;
/* 0x11 */ u8 rewardType;
/* 0x12 */ u8 itemReward;
/* 0x13 */ u8 friendAreaReward;
} WonderMail;
// size: 0x28
typedef struct unkStruct_802F204
{
/* 0x0 */ u8 clientName[POKEMON_NAME_LENGTH];
/* 0xA */ u8 name2[POKEMON_NAME_LENGTH]; // target name?
/* 0x14 */ s16 clientSpecies;
u8 unk16;
/* 0x18 */ s32 moneyReward;
/* 0x1C */ u8 itemRewards[MAX_ITEM_REWARDS];
/* 0x1F */ u8 quantity;
/* 0x20 */ u8 friendAreaReward;
/* 0x24 */ u32 teamRankPtsReward;
} unkStruct_802F204;
// size: 0xB4
typedef struct unkStruct_803B344
{
/* 0x0 */ WonderMail mail;
u8 *unk14;
u8 *unk18;
u8 fill1C[0x3C - 0x1C];
u8 unk3C[0xB4 - 0x3C];
} unkStruct_803B344;
// size: 0x30
typedef struct unkStruct_203B480
{
/* 0x0 */ u8 mailType;
/* 0x1 */ u8 missionType;
WonderMailSub unk4;
/* 0xC */ s16 clientSpecies;
/* 0xE */ s16 targetSpecies;
union unk10_temp
{
u32 unk10;
u16 unk10_u16;
} unk10;
/* 0x14 */ u8 playerName[0x20 - 0x14];
Item item;
u32 unk24;
u32 unk28;
/* 0x2C */ s8 rescuesAllowed;
u8 unk2D;
} unkStruct_203B480;
// size: 0x88
typedef struct WonderMailStruct_203B2C0_sub
{
/* 0x0 */ unkStruct_203B480 mail;
/* 0x30 */ PokemonStruct1 pokemon;
} WonderMailStruct_203B2C0_sub;
#endif // GUARD_STR_WONDER_MAIL_H