pokeemerald-expansion/include/mail.h
Bassoonian b4c311a308
Some checks are pending
CI / build (push) Waiting to run
CI / docs_validate (push) Waiting to run
CI / allcontributors (push) Waiting to run
Add Species enum (#9507)
Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
Co-authored-by: FosterProgramming <jamiefosterandco@gmail.com>
2026-03-17 12:47:48 +00:00

37 lines
1.5 KiB
C

#ifndef GUARD_MAIL_H
#define GUARD_MAIL_H
#include "main.h"
#define IS_ITEM_MAIL(itemId) ((itemId == ITEM_ORANGE_MAIL \
|| itemId == ITEM_HARBOR_MAIL \
|| itemId == ITEM_GLITTER_MAIL \
|| itemId == ITEM_MECH_MAIL \
|| itemId == ITEM_WOOD_MAIL \
|| itemId == ITEM_WAVE_MAIL \
|| itemId == ITEM_BEAD_MAIL \
|| itemId == ITEM_SHADOW_MAIL \
|| itemId == ITEM_TROPIC_MAIL \
|| itemId == ITEM_DREAM_MAIL \
|| itemId == ITEM_FAB_MAIL \
|| itemId == ITEM_RETRO_MAIL))
// mail.h
void ReadMail(struct Mail *mail, MainCallback exitCallback, bool8 hasText);
// mail_data.h
void ClearAllMail(void);
void ClearMail(struct Mail *mail);
bool8 MonHasMail(struct Pokemon *mon);
u8 GiveMailToMonByItemId(struct Pokemon *mon, enum Item itemId);
u16 SpeciesToMailSpecies(enum Species species, u32 personality);
u16 MailSpeciesToSpecies(u16 mailSpecies, u16 *buffer);
u8 GiveMailToMon(struct Pokemon *mon, struct Mail *mail);
void TakeMailFromMon(struct Pokemon *mon);
void ClearMailItemId(u8 mailId);
u8 SaveMailToPC(struct Mail *mail);
u8 TakeMailFromMonAndSave(struct Pokemon *mon);
bool8 ItemIsMail(enum Item itemId);
#endif // GUARD_MAIL_H