mirror of
https://github.com/pret/pokeheartgold.git
synced 2026-06-02 21:54:45 -05:00
Merge pull request #183 from AsparagusEduardo/pret/doc/7_generalCleanup
General cleanup
This commit is contained in:
commit
dac4e2cea2
|
|
@ -121,7 +121,7 @@ typedef struct UnkBtlCtxSub_76 {
|
|||
u16 unkA0[2];
|
||||
u8 unkA4[4];
|
||||
MOVE moveData[468];
|
||||
ITEMDATA *itemData;
|
||||
ItemData *itemData;
|
||||
u16 unk280[4];
|
||||
u16 unk288[4];
|
||||
} UnkBtlCtxSub_76;
|
||||
|
|
@ -185,14 +185,14 @@ typedef struct UnkBattlemonSub {
|
|||
int unk30;
|
||||
} UnkBattlemonSub;
|
||||
|
||||
typedef struct BATTLEMON {
|
||||
typedef struct BattleMon {
|
||||
u16 species;
|
||||
u16 atk;
|
||||
u16 def;
|
||||
u16 speed;
|
||||
u16 spAtk;
|
||||
u16 spDef;
|
||||
u16 moves[4];
|
||||
u16 moves[MAX_MON_MOVES];
|
||||
u32 hpIV:5;
|
||||
u32 atkIV:5;
|
||||
u32 defIV:5;
|
||||
|
|
@ -201,7 +201,7 @@ typedef struct BATTLEMON {
|
|||
u32 spDefIV:5;
|
||||
u32 isEgg:1;
|
||||
u32 hasNickname:1;
|
||||
s8 statChanges[8];
|
||||
s8 statChanges[NUM_BATTLE_STATS];
|
||||
int weight;
|
||||
u8 type1;
|
||||
u8 type2;
|
||||
|
|
@ -221,11 +221,11 @@ typedef struct BATTLEMON {
|
|||
u32 moldBreakerFlag:1;
|
||||
u32 pressureFlag:1;
|
||||
u32 unk28_B:21;
|
||||
u8 movePPCur[4];
|
||||
u8 movePP[4];
|
||||
u8 movePPCur[MAX_MON_MOVES];
|
||||
u8 movePP[MAX_MON_MOVES];
|
||||
u8 level;
|
||||
u8 friendship;
|
||||
u16 nickname[11];
|
||||
u16 nickname[POKEMON_NAME_LENGTH + 1];
|
||||
int hp;
|
||||
u32 maxHp;
|
||||
u16 unk54[8];
|
||||
|
|
@ -244,7 +244,7 @@ typedef struct BATTLEMON {
|
|||
u32 moveEffectFlags;
|
||||
u32 unk80;
|
||||
UnkBattlemonSub unk88;
|
||||
} BATTLEMON;
|
||||
} BattleMon;
|
||||
|
||||
typedef struct BATTLECONTEXT {
|
||||
u8 unk_0[4];
|
||||
|
|
@ -360,7 +360,7 @@ typedef struct BATTLECONTEXT {
|
|||
u8 unk_2200[4][4][16];
|
||||
u8 unk_2300[4][256];
|
||||
int battleScriptBuffer[400];
|
||||
BATTLEMON battleMons[4];
|
||||
BattleMon battleMons[4];
|
||||
u32 moveNoTemp;
|
||||
u32 moveNoCur;
|
||||
u32 moveNoPrev;
|
||||
|
|
|
|||
|
|
@ -4,44 +4,44 @@
|
|||
#include "mail.h"
|
||||
#include "pokemon.h"
|
||||
|
||||
typedef struct DAYCAREMAIL {
|
||||
MAIL mail;
|
||||
typedef struct DaycareMail {
|
||||
Mail mail;
|
||||
u16 ot_name[PLAYER_NAME_LENGTH + 1];
|
||||
u16 nickname[POKEMON_NAME_LENGTH + 1];
|
||||
u8 padding_5E[2];
|
||||
} DAYCAREMAIL;
|
||||
} DaycareMail;
|
||||
|
||||
typedef struct DAYCAREMON {
|
||||
typedef struct DaycareMon {
|
||||
BoxPokemon mon;
|
||||
DAYCAREMAIL mail;
|
||||
DaycareMail mail;
|
||||
u32 steps;
|
||||
} DAYCAREMON;
|
||||
} DaycareMon;
|
||||
|
||||
typedef struct DAYCARE {
|
||||
DAYCAREMON mons[2];
|
||||
typedef struct Daycare {
|
||||
DaycareMon mons[2];
|
||||
u32 egg_pid;
|
||||
u8 egg_cycles;
|
||||
u8 padding_1DD[3];
|
||||
} DAYCARE;
|
||||
} Daycare;
|
||||
|
||||
u32 Save_Daycare_sizeof(void);
|
||||
void Save_Daycare_Init(DAYCARE* daycare);
|
||||
DAYCAREMON* Save_DayCare_GetMonX(DAYCARE* daycare, int i);
|
||||
BoxPokemon *DayCareMon_GetBoxMon(DAYCAREMON* dcmon);
|
||||
DAYCAREMAIL* DayCareMon_GetExtras(DAYCAREMON* dcmon);
|
||||
int DayCareMon_GetSteps(DAYCAREMON* dcmon);
|
||||
MAIL* DayCareMail_GetMailPtr(DAYCAREMAIL* dcmail);
|
||||
u32 Save_DayCare_GetEggPID(DAYCARE* daycare);
|
||||
u8 Save_DayCare_GetEggCycleCounter(DAYCARE* daycare);
|
||||
void DayCareMon_SetSteps(DAYCAREMON* dcmon, u32 steps);
|
||||
void DayCareMon_AddSteps(DAYCAREMON* dcmon, u32 steps);
|
||||
void Save_DayCare_SetEggPID(DAYCARE* daycare, u32 pid);
|
||||
void Save_DayCare_SetEggCycleCounter(DAYCARE* daycare, int count);
|
||||
BOOL Save_DayCare_MasudaCheck(DAYCARE* daycare);
|
||||
void DayCareMon_Copy(DAYCAREMON* dest, const DAYCAREMON* src);
|
||||
void DayCareMon_Extras_Init(DAYCAREMAIL* mail);
|
||||
void DayCareMon_Init(DAYCAREMON* mon);
|
||||
DAYCARE* Save_DayCare_Get(SaveData* savedata);
|
||||
BOOL Save_DayCare_HasEgg(DAYCARE* daycare);
|
||||
void Save_Daycare_Init(Daycare* daycare);
|
||||
DaycareMon* Save_DayCare_GetMonX(Daycare* daycare, int i);
|
||||
BoxPokemon *DayCareMon_GetBoxMon(DaycareMon* dcmon);
|
||||
DaycareMail* DayCareMon_GetExtras(DaycareMon* dcmon);
|
||||
int DayCareMon_GetSteps(DaycareMon* dcmon);
|
||||
Mail* DayCareMail_GetMailPtr(DaycareMail* dcmail);
|
||||
u32 Save_DayCare_GetEggPID(Daycare* daycare);
|
||||
u8 Save_DayCare_GetEggCycleCounter(Daycare* daycare);
|
||||
void DayCareMon_SetSteps(DaycareMon* dcmon, u32 steps);
|
||||
void DayCareMon_AddSteps(DaycareMon* dcmon, u32 steps);
|
||||
void Save_DayCare_SetEggPID(Daycare* daycare, u32 pid);
|
||||
void Save_DayCare_SetEggCycleCounter(Daycare* daycare, int count);
|
||||
BOOL Save_DayCare_MasudaCheck(Daycare* daycare);
|
||||
void DayCareMon_Copy(DaycareMon* dest, const DaycareMon* src);
|
||||
void DayCareMon_Extras_Init(DaycareMail* mail);
|
||||
void DayCareMon_Init(DaycareMon* mon);
|
||||
Daycare* Save_DayCare_Get(SaveData* savedata);
|
||||
BOOL Save_DayCare_HasEgg(Daycare* daycare);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -4,22 +4,22 @@
|
|||
#include "daycare.h"
|
||||
#include "script.h"
|
||||
|
||||
BoxPokemon *Daycare_GetBoxMonI(DAYCARE *daycare, int idx);
|
||||
void Save_DayCare_PutMonIn(PARTY *party, u8 partyIdx, DAYCARE *dayCare, SaveData *saveData);
|
||||
u16 Save_DayCare_RetrieveMon(PARTY *party, MessageFormat *msgFmt, DAYCARE *daycare, u8 whomst);
|
||||
int DayCareMon_CalcLevelGrowth(DAYCAREMON *daycareMon);
|
||||
u16 Save_DayCare_BufferMonNickAndRetrievalPrice(DAYCARE *dayCare, u8 slot, MessageFormat *msgFmt);
|
||||
u8 Save_DayCare_BufferGrowthAndNick(DAYCARE *dayCare, u32 slot, MessageFormat *msgFmt);
|
||||
void Save_DayCare_ResetEggStats(DAYCARE *dayCare);
|
||||
BoxPokemon *Daycare_GetBoxMonI(Daycare *daycare, int idx);
|
||||
void Save_DayCare_PutMonIn(PARTY *party, u8 partyIdx, Daycare *dayCare, SaveData *saveData);
|
||||
u16 Save_DayCare_RetrieveMon(PARTY *party, MessageFormat *msgFmt, Daycare *daycare, u8 whomst);
|
||||
int DayCareMon_CalcLevelGrowth(DaycareMon *daycareMon);
|
||||
u16 Save_DayCare_BufferMonNickAndRetrievalPrice(Daycare *dayCare, u8 slot, MessageFormat *msgFmt);
|
||||
u8 Save_DayCare_BufferGrowthAndNick(Daycare *dayCare, u32 slot, MessageFormat *msgFmt);
|
||||
void Save_DayCare_ResetEggStats(Daycare *dayCare);
|
||||
void SetEggStats(Pokemon *mon, int species, u8 metLocation, PlayerProfile *profile, int a4, int a5);
|
||||
void GiveEggToPlayer(DAYCARE *dayCare, PARTY *party, PlayerProfile* profile);
|
||||
BOOL HandleDayCareStep(DAYCARE *dayCare, PARTY *party, FieldSystem *fsys);
|
||||
void GiveEggToPlayer(Daycare *dayCare, PARTY *party, PlayerProfile* profile);
|
||||
BOOL HandleDayCareStep(Daycare *dayCare, PARTY *party, FieldSystem *fsys);
|
||||
Pokemon *sub_0206CE44(PARTY *party);
|
||||
void Save_DayCare_BufferStoredMonNicks(DAYCARE *dayCare, MessageFormat *msgFmt);
|
||||
void Save_DayCare_BufferMonStats(DAYCARE *dayCare, u32 nickname_idx, u32 level_idx, u32 gender_idx, u8 slot, MessageFormat *msgFmt);
|
||||
u16 Save_DayCare_BufferTailMonNick(DAYCARE *dayCare, MessageFormat *msgFmt);
|
||||
u8 Save_DayCare_GetState(DAYCARE *dayCare);
|
||||
u8 Save_DayCare_CalcCompatibility(DAYCARE *dayCare);
|
||||
void Save_DayCare_BufferStoredMonNicks(Daycare *dayCare, MessageFormat *msgFmt);
|
||||
void Save_DayCare_BufferMonStats(Daycare *dayCare, u32 nickname_idx, u32 level_idx, u32 gender_idx, u8 slot, MessageFormat *msgFmt);
|
||||
u16 Save_DayCare_BufferTailMonNick(Daycare *dayCare, MessageFormat *msgFmt);
|
||||
u8 Save_DayCare_GetState(Daycare *dayCare);
|
||||
u8 Save_DayCare_CalcCompatibility(Daycare *dayCare);
|
||||
void sub_0206D328(Pokemon *mon, HeapID heapId);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ typedef struct ItemSlot {
|
|||
* Bit array describing the effects of using the item on a
|
||||
* party member.
|
||||
*/
|
||||
typedef struct ItemPartyUseParam
|
||||
typedef struct ItemPartyParam
|
||||
{
|
||||
u8 slp_heal:1;
|
||||
u8 psn_heal:1;
|
||||
|
|
@ -66,7 +66,7 @@ typedef struct ItemPartyUseParam
|
|||
s8 friendship_mod_med_param;
|
||||
s8 friendship_mod_hi_param;
|
||||
u8 paddding[2];
|
||||
} ITEMPARTYPARAM;
|
||||
} ItemPartyParam;
|
||||
|
||||
/*
|
||||
* Item parameter data, loaded from itemtool/itemdata/item_data.narc
|
||||
|
|
@ -91,10 +91,10 @@ typedef struct ItemData
|
|||
u8 padding_0D;
|
||||
union {
|
||||
u8 dummy;
|
||||
ITEMPARTYPARAM partyUseParam;
|
||||
ItemPartyParam partyUseParam;
|
||||
};
|
||||
u8 padding_22[2];
|
||||
} ITEMDATA;
|
||||
} ItemData;
|
||||
|
||||
/*
|
||||
* void MoveItemSlotInList(ItemSlot *slots, int from, int to, int pocket, HeapID heap_id)
|
||||
|
|
@ -168,7 +168,7 @@ int GetItemIconAnim(void);
|
|||
* @param heap_id: ID of heap to allocate the result from
|
||||
*
|
||||
* @returns: Pointer to loaded data. If attrNo is ... then ...
|
||||
* ITEMNARC_PARAM: ITEMDATA* from itemtool/itemdata/item_data.narc
|
||||
* ITEMNARC_PARAM: ItemData* from itemtool/itemdata/item_data.narc
|
||||
* ITEMNARC_NCGR: NCGR from itemtool/itemdata/item_icon.narc
|
||||
* ITEMNARC_NCLR: NCLR from itemtool/itemdata/item_icon.narc
|
||||
*
|
||||
|
|
@ -205,7 +205,7 @@ void GetItemDescIntoString(String *dest, u16 itemId, HeapID heap_id);
|
|||
*
|
||||
* @param itemId: The item you want to query
|
||||
* @param attrno: The attribute you want to read
|
||||
* @param heap_id: Heap in which to allocate the temporary ITEMDATA
|
||||
* @param heap_id: Heap in which to allocate the temporary ItemData
|
||||
*
|
||||
* @returns: Integer attribute value
|
||||
*/
|
||||
|
|
@ -221,7 +221,7 @@ s32 GetItemAttr(u16 itemId, u16 attrno, HeapID heap_id);
|
|||
*
|
||||
* @returns: Integer attribute value
|
||||
*/
|
||||
s32 GetItemAttr_PreloadedItemData(ITEMDATA *itemData, u16 attrno);
|
||||
s32 GetItemAttr_PreloadedItemData(ItemData *itemData, u16 attrno);
|
||||
|
||||
/*
|
||||
* u16 TMHMGetMove(u16 itemId)
|
||||
|
|
@ -346,7 +346,7 @@ u16 BerryToItemId(u8 berryId);
|
|||
String *GetNutName(u16 berryId, HeapID heap_id);
|
||||
|
||||
/*
|
||||
* ITEMDATA *LoadAllItemData(HeapID heap_id)
|
||||
* ItemData *LoadAllItemData(HeapID heap_id)
|
||||
*
|
||||
* Reads the entire FIMG of itemtool/itemdata/item_data.narc into a new buffer
|
||||
*
|
||||
|
|
@ -354,10 +354,10 @@ String *GetNutName(u16 berryId, HeapID heap_id);
|
|||
*
|
||||
* @returns: Pointer to new array.
|
||||
*/
|
||||
ITEMDATA *LoadAllItemData(HeapID heap_id);
|
||||
ItemData *LoadAllItemData(HeapID heap_id);
|
||||
|
||||
/*
|
||||
* ITEMDATA *GetItemDataPtrFromArray(ITEMDATA *itemData, u32 itemDataIdx)
|
||||
* ItemData *GetItemDataPtrFromArray(ItemData *itemData, u32 itemDataIdx)
|
||||
*
|
||||
* Gets the pointer to the selected member of the array returned by LoadAllItemData above. This function exists because scrub dev is scrub.
|
||||
*
|
||||
|
|
@ -366,7 +366,7 @@ ITEMDATA *LoadAllItemData(HeapID heap_id);
|
|||
*
|
||||
* @returns: Pointer to &itemData[itemDataIdx]
|
||||
*/
|
||||
ITEMDATA *GetItemDataPtrFromArray(ITEMDATA *itemData, u32 itemDataIdx);
|
||||
ItemData *GetItemDataPtrFromArray(ItemData *itemData, u32 itemDataIdx);
|
||||
|
||||
/*
|
||||
* BOOL ItemIdIsNotJohtoBall(u16 itemId)
|
||||
|
|
|
|||
|
|
@ -10,37 +10,37 @@
|
|||
#define MAILBOX_MSG_COUNT (20)
|
||||
|
||||
typedef struct Mailbox {
|
||||
MAIL msgs[MAILBOX_MSG_COUNT];
|
||||
Mail msgs[MAILBOX_MSG_COUNT];
|
||||
} MAILBOX;
|
||||
|
||||
MAIL *Mail_New(HeapID heap_id);
|
||||
void Mail_Copy(const MAIL *src, MAIL *dest);
|
||||
void Mail_Init(MAIL *mail);
|
||||
BOOL Mail_TypeIsValid(MAIL *mail);
|
||||
BOOL Mail_Compare(const MAIL *a, const MAIL *b);
|
||||
void Mail_SetNewMessageDetails(MAIL *mail, u8 mailType, u8 mon_no, SaveData *saveData);
|
||||
u32 Mail_GetOTID(const MAIL *mail);
|
||||
u16 *Mail_GetAuthorNamePtr(MAIL *mail);
|
||||
u8 Mail_GetAuthorGender(const MAIL *mail);
|
||||
u8 Mail_GetType(const MAIL *mail);
|
||||
void Mail_SetType(MAIL *mail, u8 mailType);
|
||||
u8 Mail_GetLanguage(const MAIL *mail);
|
||||
u8 Mail_GetVersion(const MAIL *mail);
|
||||
u16 sub_0202B404(MAIL *mail, u8 r1, u8 r4, u16 r3);
|
||||
u16 sub_0202B4E4(const MAIL *mail);
|
||||
MAIL_MESSAGE *Mail_GetUnk20Array(MAIL *mail, int i);
|
||||
void Mail_SetMessage(MAIL *mail, const MAIL_MESSAGE *src, int i);
|
||||
Mail *Mail_New(HeapID heap_id);
|
||||
void Mail_Copy(const Mail *src, Mail *dest);
|
||||
void Mail_Init(Mail *mail);
|
||||
BOOL Mail_TypeIsValid(Mail *mail);
|
||||
BOOL Mail_Compare(const Mail *a, const Mail *b);
|
||||
void Mail_SetNewMessageDetails(Mail *mail, u8 mailType, u8 mon_no, SaveData *saveData);
|
||||
u32 Mail_GetOTID(const Mail *mail);
|
||||
u16 *Mail_GetAuthorNamePtr(Mail *mail);
|
||||
u8 Mail_GetAuthorGender(const Mail *mail);
|
||||
u8 Mail_GetType(const Mail *mail);
|
||||
void Mail_SetType(Mail *mail, u8 mailType);
|
||||
u8 Mail_GetLanguage(const Mail *mail);
|
||||
u8 Mail_GetVersion(const Mail *mail);
|
||||
u16 sub_0202B404(Mail *mail, u8 r1, u8 r4, u16 r3);
|
||||
u16 sub_0202B4E4(const Mail *mail);
|
||||
MAIL_MESSAGE *Mail_GetUnk20Array(Mail *mail, int i);
|
||||
void Mail_SetMessage(Mail *mail, const MAIL_MESSAGE *src, int i);
|
||||
MAILBOX *Save_Mailbox_Get(SaveData *saveData);
|
||||
u32 Save_Mailbox_sizeof(void);
|
||||
void Save_Mailbox_Init(MAILBOX *mailbox);
|
||||
MAIL *Mailbox_AllocAndFetchMailI(MAIL *msgs, int n, int i, HeapID heapId);
|
||||
Mail *Mailbox_AllocAndFetchMailI(Mail *msgs, int n, int i, HeapID heapId);
|
||||
int Mailbox_GetFirstEmptySlotIdx(MAILBOX *mailbox);
|
||||
void Mailbox_DeleteSlotI(MAIL *msgs, int n, int i);
|
||||
void Mailbox_CopyMailToSlotI(MAIL *msgs, int n, int i, const MAIL *src);
|
||||
void Mailbox_DeleteSlotI(Mail *msgs, int n, int i);
|
||||
void Mailbox_CopyMailToSlotI(Mail *msgs, int n, int i, const Mail *src);
|
||||
u32 Mailbox_CountMessages(MAILBOX *mailbox, int unused);
|
||||
void Mailbox_FetchMailToBuffer(MAIL *msgs, int n, int i, MAIL *dest);
|
||||
int MailArray_GetFirstEmptySlotIdx(MAIL *msgs, int n);
|
||||
u32 MailArray_CountMessages(MAIL *msgs, int n);
|
||||
MAIL *CreateKenyaMail(Pokemon *mon, u8 mailType, u8 gender, String *name, u8 otId);
|
||||
void Mailbox_FetchMailToBuffer(Mail *msgs, int n, int i, Mail *dest);
|
||||
int MailArray_GetFirstEmptySlotIdx(Mail *msgs, int n);
|
||||
u32 MailArray_CountMessages(Mail *msgs, int n);
|
||||
Mail *CreateKenyaMail(Pokemon *mon, u8 mailType, u8 gender, String *name, u8 otId);
|
||||
|
||||
#endif //POKEHEARTGOLD_MAIL_H
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ typedef struct {
|
|||
u8 partyIdx;
|
||||
u8 unkF;
|
||||
SaveData *saveData;
|
||||
MAIL *mail;
|
||||
Mail *mail;
|
||||
MAILBOX *mailbox;
|
||||
u8 unk1C[0x4];
|
||||
} Unk02090E68;
|
||||
|
|
@ -69,6 +69,6 @@ u32 sub_02090F6C(Unk02090E68 *a0);
|
|||
BOOL sub_02090F70(Unk02090E68 *a0, Pokemon *mon);
|
||||
void sub_02090F90(Unk02090E68 *a0);
|
||||
int sub_02090FA8(MAILBOX *mailbox, Pokemon *mon, HeapID heapId);
|
||||
int sub_02091004(MAIL *msgs, int i, Pokemon *mon, HeapID heapId);
|
||||
int sub_02091004(Mail *msgs, int i, Pokemon *mon, HeapID heapId);
|
||||
|
||||
#endif //POKEHEARTGOLD_MAIL_MISC_H
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ typedef struct NPCTradeAppData {
|
|||
NPCTradeAppData *NPCTradeApp_Init(HeapID heapId, u32 tradeno);
|
||||
void NPCTradeApp_Delete(NPCTradeAppData *work);
|
||||
void NPCTrade_MakeAndGiveLoanMon(FieldSystem *fsys, u8 tradeno, u8 level, u16 mapno);
|
||||
MAIL *NPCTrade_MakeKenyaMail(void);
|
||||
Mail *NPCTrade_MakeKenyaMail(void);
|
||||
int NPCTrade_CanGiveUpLoanMon(FieldSystem *fsys, u8 tradeno, u8 idx);
|
||||
int NPCTradeApp_GetOfferedSpecies(NPCTradeAppData *work);
|
||||
int NPCTradeApp_GetRequestedSpecies(NPCTradeAppData *work);
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ void ov12_0224EDC0(BATTLECONTEXT *ctx, int battlerId);
|
|||
int GetBattlerVar(BATTLECONTEXT *ctx, int battlerId, u32 varId, void *data);
|
||||
void SetBattlerVar(BATTLECONTEXT *ctx, int battlerId, u32 varId, void *data);
|
||||
void ov12_0224F794(BATTLECONTEXT *ctx, int battlerId, u32 varId, int data);
|
||||
void AddBattlerVar(BATTLEMON *mon, u32 varId, int data);
|
||||
void AddBattlerVar(BattleMon *mon, u32 varId, int data);
|
||||
u8 CheckSortSpeed(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId1, int battlerId2, int flag);
|
||||
void BattleSystem_ClearExperienceEarnFlags(BATTLECONTEXT *ctx, int battlerId);
|
||||
void BattleSystem_SetExperienceEarnFlags(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId);
|
||||
|
|
@ -37,7 +37,7 @@ void InitFaintedWork(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId);
|
|||
void ov12_02251710(BattleSystem *bsys, BATTLECONTEXT *ctx);
|
||||
u32 StruggleCheck(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId, u32 nonSelectableMoves, u32 a4);
|
||||
BOOL ov12_02251A28(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId, int movePos, BATTLEMSG *msg);
|
||||
int BattleMon_GetMoveIndex(BATTLEMON *mon, u16 move);
|
||||
int BattleMon_GetMoveIndex(BattleMon *mon, u16 move);
|
||||
int ov12_02251D28(BattleSystem *bsys, BATTLECONTEXT *ctx, int moveNo, int moveTypeDefault, int battlerIdAttacker, int battlerIdTarget, int damage, u32 *moveStatusFlag);
|
||||
void ov12_02252054(BATTLECONTEXT *ctx, int moveNo, int moveTypeDefault, int abilityAttacker, int abilityTarget, int item, int type1, int type2, u32 *moveStatusFlag);
|
||||
BOOL ov12_02252218(BATTLECONTEXT *ctx, int battlerId);
|
||||
|
|
|
|||
|
|
@ -155,7 +155,7 @@ typedef struct Mail
|
|||
union MailPatternData mon_icons[3];
|
||||
u16 form_flags; // bitfield of three 5-bit values
|
||||
MAIL_MESSAGE unk_20[3];
|
||||
} MAIL;
|
||||
} Mail;
|
||||
|
||||
typedef struct PartyPokemon {
|
||||
/* 0x088 */ u32 status; // slp:3, psn:1, brn:1, frz:1, prz:1, tox:1, ...
|
||||
|
|
@ -168,7 +168,7 @@ typedef struct PartyPokemon {
|
|||
/* 0x096 */ u16 speed;
|
||||
/* 0x098 */ u16 spatk;
|
||||
/* 0x09A */ u16 spdef;
|
||||
/* 0x09C */ MAIL mail;
|
||||
/* 0x09C */ Mail mail;
|
||||
/* 0x0D4 */ CAPSULE sealCoords; // seal coords
|
||||
} PARTYMON;
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ BOOL MonMoveRestorePP(Pokemon *mon, int moveIdx, int ppRestore);
|
|||
BOOL BoostMonMovePpUpBy(Pokemon *mon, int moveIdx, int nPpUp);
|
||||
void RestoreMonHPBy(Pokemon *mon, u32 hp, u32 maxHp, u32 restoration);
|
||||
s32 TryModEV(s32 ev, s32 evSum, s32 by);
|
||||
BOOL CanItemModFriendship(Pokemon *mon, ITEMDATA *itemData);
|
||||
BOOL CanItemModFriendship(Pokemon *mon, ItemData *itemData);
|
||||
BOOL DoItemFriendshipMod(Pokemon *mon, s32 friendship, s32 mod, u16 location, HeapID heapID);
|
||||
void HealParty(PARTY *party);
|
||||
|
||||
|
|
|
|||
|
|
@ -1513,7 +1513,7 @@ BOOL BtlCmd_ChangeVar(BattleSystem *bsys, BATTLECONTEXT *ctx) {
|
|||
|
||||
BOOL BtlCmd_BufferStatChangeMsg(BattleSystem *bsys, BATTLECONTEXT *ctx) {
|
||||
int change, stat;
|
||||
BATTLEMON *mon = &ctx->battleMons[ctx->battlerIdStatChange];
|
||||
BattleMon *mon = &ctx->battleMons[ctx->battlerIdStatChange];
|
||||
|
||||
BattleScriptIncrementPointer(ctx, 1);
|
||||
|
||||
|
|
|
|||
|
|
@ -250,7 +250,7 @@ void ov12_0224EDC0(BATTLECONTEXT *ctx, int battlerId) {
|
|||
}
|
||||
|
||||
int GetBattlerVar(BATTLECONTEXT *ctx, int battlerId, u32 id, void *data) {
|
||||
BATTLEMON *mon = &ctx->battleMons[battlerId];
|
||||
BattleMon *mon = &ctx->battleMons[battlerId];
|
||||
|
||||
switch (id) {
|
||||
case BMON_DATA_SPECIES:
|
||||
|
|
@ -479,7 +479,7 @@ void SetBattlerVar(BATTLECONTEXT *ctx, int battlerId, u32 id, void *data) {
|
|||
s16 *datas16 = (s16 *)data;
|
||||
u8 *data8 = (u8 *)data;
|
||||
s8 *datas8 = (s8 *)data;
|
||||
BATTLEMON *mon = &ctx->battleMons[battlerId];
|
||||
BattleMon *mon = &ctx->battleMons[battlerId];
|
||||
|
||||
switch (id) {
|
||||
case BMON_DATA_SPECIES:
|
||||
|
|
@ -769,7 +769,7 @@ void ov12_0224F794(BATTLECONTEXT *ctx, int battlerId, u32 varId, int data) {
|
|||
AddBattlerVar(&ctx->battleMons[battlerId], varId, data);
|
||||
}
|
||||
|
||||
void AddBattlerVar(BATTLEMON *mon, u32 varId, int data) {
|
||||
void AddBattlerVar(BattleMon *mon, u32 varId, int data) {
|
||||
switch (varId) {
|
||||
case BMON_DATA_ATK:
|
||||
mon->atk += data;
|
||||
|
|
@ -2067,7 +2067,7 @@ BOOL ov12_02251A28(BattleSystem *bsys, BATTLECONTEXT *ctx, int battlerId, int mo
|
|||
return ret;
|
||||
}
|
||||
|
||||
int BattleMon_GetMoveIndex(BATTLEMON *mon, u16 moveNo) {
|
||||
int BattleMon_GetMoveIndex(BattleMon *mon, u16 moveNo) {
|
||||
int movePos;
|
||||
|
||||
for (movePos = 0; movePos < 4; movePos++) {
|
||||
|
|
|
|||
|
|
@ -1,66 +1,66 @@
|
|||
#include "daycare.h"
|
||||
|
||||
u32 Save_Daycare_sizeof(void) {
|
||||
return sizeof(DAYCARE);
|
||||
return sizeof(Daycare);
|
||||
}
|
||||
|
||||
void Save_Daycare_Init(DAYCARE* daycare) {
|
||||
memset(daycare, 0, sizeof(DAYCARE));
|
||||
void Save_Daycare_Init(Daycare* daycare) {
|
||||
memset(daycare, 0, sizeof(Daycare));
|
||||
ZeroBoxMonData(&daycare->mons[0].mon);
|
||||
ZeroBoxMonData(&daycare->mons[1].mon);
|
||||
daycare->egg_pid = 0;
|
||||
daycare->egg_cycles = 0;
|
||||
}
|
||||
|
||||
DAYCAREMON* Save_DayCare_GetMonX(DAYCARE* daycare, int i) {
|
||||
DaycareMon* Save_DayCare_GetMonX(Daycare* daycare, int i) {
|
||||
return &daycare->mons[i];
|
||||
}
|
||||
|
||||
BoxPokemon *DayCareMon_GetBoxMon(DAYCAREMON* dcmon) {
|
||||
BoxPokemon *DayCareMon_GetBoxMon(DaycareMon* dcmon) {
|
||||
return &dcmon->mon;
|
||||
}
|
||||
|
||||
DAYCAREMAIL* DayCareMon_GetExtras(DAYCAREMON* dcmon) {
|
||||
DaycareMail* DayCareMon_GetExtras(DaycareMon* dcmon) {
|
||||
return &dcmon->mail;
|
||||
}
|
||||
|
||||
int DayCareMon_GetSteps(DAYCAREMON* dcmon) {
|
||||
int DayCareMon_GetSteps(DaycareMon* dcmon) {
|
||||
return dcmon->steps;
|
||||
}
|
||||
|
||||
MAIL* DayCareMail_GetMailPtr(DAYCAREMAIL* dcmail) {
|
||||
Mail* DayCareMail_GetMailPtr(DaycareMail* dcmail) {
|
||||
return &dcmail->mail;
|
||||
}
|
||||
|
||||
BOOL Save_DayCare_HasEgg(DAYCARE* daycare) {
|
||||
BOOL Save_DayCare_HasEgg(Daycare* daycare) {
|
||||
return daycare->egg_pid != 0;
|
||||
}
|
||||
|
||||
u32 Save_DayCare_GetEggPID(DAYCARE* daycare) {
|
||||
u32 Save_DayCare_GetEggPID(Daycare* daycare) {
|
||||
return daycare->egg_pid;
|
||||
}
|
||||
|
||||
u8 Save_DayCare_GetEggCycleCounter(DAYCARE* daycare) {
|
||||
u8 Save_DayCare_GetEggCycleCounter(Daycare* daycare) {
|
||||
return daycare->egg_cycles;
|
||||
}
|
||||
|
||||
void DayCareMon_SetSteps(DAYCAREMON* dcmon, u32 steps) {
|
||||
void DayCareMon_SetSteps(DaycareMon* dcmon, u32 steps) {
|
||||
dcmon->steps = steps;
|
||||
}
|
||||
|
||||
void DayCareMon_AddSteps(DAYCAREMON* dcmon, u32 steps) {
|
||||
void DayCareMon_AddSteps(DaycareMon* dcmon, u32 steps) {
|
||||
dcmon->steps += steps;
|
||||
}
|
||||
|
||||
void Save_DayCare_SetEggPID(DAYCARE* daycare, u32 pid) {
|
||||
void Save_DayCare_SetEggPID(Daycare* daycare, u32 pid) {
|
||||
daycare->egg_pid = pid;
|
||||
}
|
||||
|
||||
void Save_DayCare_SetEggCycleCounter(DAYCARE* daycare, int count) {
|
||||
void Save_DayCare_SetEggCycleCounter(Daycare* daycare, int count) {
|
||||
daycare->egg_cycles = count;
|
||||
}
|
||||
|
||||
BOOL Save_DayCare_MasudaCheck(DAYCARE* daycare) {
|
||||
BOOL Save_DayCare_MasudaCheck(Daycare* daycare) {
|
||||
// Checks if the pokemon come from different countries.
|
||||
// Uses language as a proxy for country, even though it
|
||||
// only accounts for European languages and Japanese.
|
||||
|
|
@ -69,11 +69,11 @@ BOOL Save_DayCare_MasudaCheck(DAYCARE* daycare) {
|
|||
GetBoxMonData(&daycare->mons[1].mon, MON_DATA_GAME_LANGUAGE, NULL);
|
||||
}
|
||||
|
||||
void DayCareMon_Copy(DAYCAREMON* dest, const DAYCAREMON* src) {
|
||||
void DayCareMon_Copy(DaycareMon* dest, const DaycareMon* src) {
|
||||
*dest = *src;
|
||||
}
|
||||
|
||||
void DayCareMon_Extras_Init(DAYCAREMAIL* mail) {
|
||||
void DayCareMon_Extras_Init(DaycareMail* mail) {
|
||||
int i;
|
||||
|
||||
for (i = 0; i < PLAYER_NAME_LENGTH + 1; i++) {
|
||||
|
|
@ -88,12 +88,12 @@ void DayCareMon_Extras_Init(DAYCAREMAIL* mail) {
|
|||
mail->nickname[0] = EOS;
|
||||
}
|
||||
|
||||
void DayCareMon_Init(DAYCAREMON* mon) {
|
||||
void DayCareMon_Init(DaycareMon* mon) {
|
||||
ZeroBoxMonData(&mon->mon);
|
||||
mon->steps = 0;
|
||||
DayCareMon_Extras_Init(&mon->mail);
|
||||
}
|
||||
|
||||
DAYCARE* Save_DayCare_Get(SaveData* savedata) {
|
||||
Daycare* Save_DayCare_Get(SaveData* savedata) {
|
||||
return SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
}
|
||||
|
|
|
|||
110
src/get_egg.c
110
src/get_egg.c
|
|
@ -17,41 +17,41 @@
|
|||
#include "constants/abilities.h"
|
||||
#include "unk_02055418.h"
|
||||
|
||||
static u8 Save_DayCare_CountMonsInDayCare(DAYCARE *daycare);
|
||||
static int Save_DayCare_GetAvailableSlot(DAYCARE *daycare);
|
||||
static void DayCareMon_CopyFromPartySlot(PARTY *party, int partyIdx, DAYCAREMON *daycareMon, SaveData *saveData);
|
||||
static void Save_DayCare_Compaction(DAYCARE *daycare);
|
||||
static u8 Save_DayCare_CountMonsInDayCare(Daycare *daycare);
|
||||
static int Save_DayCare_GetAvailableSlot(Daycare *daycare);
|
||||
static void DayCareMon_CopyFromPartySlot(PARTY *party, int partyIdx, DaycareMon *daycareMon, SaveData *saveData);
|
||||
static void Save_DayCare_Compaction(Daycare *daycare);
|
||||
static void Daycare_LearnLevelUpMoves(Pokemon *mon);
|
||||
static int Save_DayCare_MoveMonToParty(PARTY *party, DAYCAREMON *daycareMon, MessageFormat *msgFmt);
|
||||
static int Save_DayCare_MoveMonToParty(PARTY *party, DaycareMon *daycareMon, MessageFormat *msgFmt);
|
||||
static int GetDayCareUpdatedLevel(BoxPokemon *boxMon, u32 steps);
|
||||
static u8 DayCareMon_BufferLevelGrowthAndNick(DAYCAREMON *daycareMon, MessageFormat *msgFmt);
|
||||
static u16 DayCareMon_BufferNickAndRetrievalPrice(DAYCAREMON *daycareMon, MessageFormat *msgFmt);
|
||||
static void Daycare_GetBothBoxMonsPtr(DAYCARE *dayCare, BoxPokemon **boxmons);
|
||||
static int Daycare_EverstoneCheck(DAYCARE *dayCare);
|
||||
static void GenerateEggPID(DAYCARE *dayCare);
|
||||
static u8 DayCareMon_BufferLevelGrowthAndNick(DaycareMon *daycareMon, MessageFormat *msgFmt);
|
||||
static u16 DayCareMon_BufferNickAndRetrievalPrice(DaycareMon *daycareMon, MessageFormat *msgFmt);
|
||||
static void Daycare_GetBothBoxMonsPtr(Daycare *dayCare, BoxPokemon **boxmons);
|
||||
static int Daycare_EverstoneCheck(Daycare *dayCare);
|
||||
static void GenerateEggPID(Daycare *dayCare);
|
||||
static void _IVList_Remove(u8 *ptr, int idx);
|
||||
static void InheritIVs(Pokemon *egg, DAYCARE *dayCare);
|
||||
static void InheritIVs(Pokemon *egg, Daycare *dayCare);
|
||||
static u8 LoadEggMoves(Pokemon *mon, u16 *dest);
|
||||
static void InheritMoves(Pokemon *egg, BoxPokemon *father, BoxPokemon *mother);
|
||||
static u16 Daycare_BreedingIncenseCheck(u16 species, DAYCARE *dayCare);
|
||||
static void Daycare_LightBallCheck(Pokemon *egg, DAYCARE *dayCare);
|
||||
static u16 Daycare_GetEggSpecies(DAYCARE *dayCare, u8 *gender_idx);
|
||||
static void SetBreedEggStats(Pokemon *mon, u16 species, DAYCARE *dayCare, u32 otId, u8 form);
|
||||
static u16 Daycare_BreedingIncenseCheck(u16 species, Daycare *dayCare);
|
||||
static void Daycare_LightBallCheck(Pokemon *egg, Daycare *dayCare);
|
||||
static u16 Daycare_GetEggSpecies(Daycare *dayCare, u8 *gender_idx);
|
||||
static void SetBreedEggStats(Pokemon *mon, u16 species, Daycare *dayCare, u32 otId, u8 form);
|
||||
static u8 GetEggCyclesToSubtract(PARTY *party);
|
||||
static BOOL sub_0206CB88(const u16 *a0, const u16 *a1);
|
||||
static u8 ComputeCompatibilityBetweenBoxMons(BoxPokemon **parents);
|
||||
static u8 Save_DayCare_CalcCompatibilityInternal(DAYCARE *dayCare);
|
||||
static u8 Save_DayCare_CalcCompatibilityInternal(Daycare *dayCare);
|
||||
static u8 sub_0206CCD8(FieldSystem *fsys);
|
||||
static u8 ConvertDayCareCompatibilityScore(u32 compatibility);
|
||||
static void sub_0206D038(Pokemon *mon, HeapID heapId);
|
||||
static BOOL DayCare_TryGetForcedInheritedIV(DAYCARE *dayCare, u8 *a1, u8 *a2);
|
||||
static BOOL DayCare_TryGetForcedInheritedIV(Daycare *dayCare, u8 *a1, u8 *a2);
|
||||
static BOOL PowerItemIdToInheritedIvIdx(u16 itemId, u8 *a1);
|
||||
|
||||
BoxPokemon *Daycare_GetBoxMonI(DAYCARE *daycare, int idx) {
|
||||
BoxPokemon *Daycare_GetBoxMonI(Daycare *daycare, int idx) {
|
||||
return DayCareMon_GetBoxMon(Save_DayCare_GetMonX(daycare, idx));
|
||||
}
|
||||
|
||||
static u8 Save_DayCare_CountMonsInDayCare(DAYCARE *daycare) {
|
||||
static u8 Save_DayCare_CountMonsInDayCare(Daycare *daycare) {
|
||||
u8 ct, i;
|
||||
|
||||
ct = 0;
|
||||
|
|
@ -65,9 +65,9 @@ static u8 Save_DayCare_CountMonsInDayCare(DAYCARE *daycare) {
|
|||
return ct;
|
||||
}
|
||||
|
||||
static int Save_DayCare_GetAvailableSlot(DAYCARE *daycare) {
|
||||
static int Save_DayCare_GetAvailableSlot(Daycare *daycare) {
|
||||
u8 i;
|
||||
static DAYCARE *_021D4218;
|
||||
static Daycare *_021D4218;
|
||||
|
||||
_021D4218 = daycare;
|
||||
for (i = 0; i < 2; i++) {
|
||||
|
|
@ -79,10 +79,10 @@ static int Save_DayCare_GetAvailableSlot(DAYCARE *daycare) {
|
|||
return -1;
|
||||
}
|
||||
|
||||
static void DayCareMon_CopyFromPartySlot(PARTY *party, int partyIdx, DAYCAREMON *daycareMon, SaveData *saveData) {
|
||||
static void DayCareMon_CopyFromPartySlot(PARTY *party, int partyIdx, DaycareMon *daycareMon, SaveData *saveData) {
|
||||
u16 nickname[POKEMON_NAME_LENGTH + 1];
|
||||
u8 mood;
|
||||
DAYCAREMAIL *daycareMail;
|
||||
DaycareMail *daycareMail;
|
||||
BoxPokemon *boxMon;
|
||||
Pokemon *partyMon;
|
||||
const u16 *playerNamePtr;
|
||||
|
|
@ -106,14 +106,14 @@ static void DayCareMon_CopyFromPartySlot(PARTY *party, int partyIdx, DAYCAREMON
|
|||
}
|
||||
}
|
||||
|
||||
void Save_DayCare_PutMonIn(PARTY *party, u8 partyIdx, DAYCARE *dayCare, SaveData *saveData) {
|
||||
void Save_DayCare_PutMonIn(PARTY *party, u8 partyIdx, Daycare *dayCare, SaveData *saveData) {
|
||||
GameStats_Inc(Save_GameStats_Get(saveData), 41);
|
||||
DayCareMon_CopyFromPartySlot(party, partyIdx, Save_DayCare_GetMonX(dayCare, Save_DayCare_GetAvailableSlot(dayCare)), saveData);
|
||||
}
|
||||
|
||||
static void Save_DayCare_Compaction(DAYCARE *daycare) {
|
||||
DAYCAREMON *mon1;
|
||||
DAYCAREMON *mon2;
|
||||
static void Save_DayCare_Compaction(Daycare *daycare) {
|
||||
DaycareMon *mon1;
|
||||
DaycareMon *mon2;
|
||||
BoxPokemon *boxmon1;
|
||||
BoxPokemon *boxmon2;
|
||||
|
||||
|
|
@ -152,11 +152,11 @@ static void Daycare_LearnLevelUpMoves(Pokemon *mon) {
|
|||
CalcMonLevelAndStats(mon);
|
||||
}
|
||||
|
||||
static int Save_DayCare_MoveMonToParty(PARTY *party, DAYCAREMON *daycareMon, MessageFormat *msgFmt) {
|
||||
static int Save_DayCare_MoveMonToParty(PARTY *party, DaycareMon *daycareMon, MessageFormat *msgFmt) {
|
||||
u32 exp;
|
||||
Pokemon *mon;
|
||||
BoxPokemon *boxMon;
|
||||
DAYCAREMAIL *daycareMail;
|
||||
DaycareMail *daycareMail;
|
||||
u16 species;
|
||||
|
||||
mon = AllocMonZeroed(HEAP_ID_4);
|
||||
|
|
@ -183,7 +183,7 @@ static int Save_DayCare_MoveMonToParty(PARTY *party, DAYCAREMON *daycareMon, Mes
|
|||
return species;
|
||||
}
|
||||
|
||||
u16 Save_DayCare_RetrieveMon(PARTY *party, MessageFormat *msgFmt, DAYCARE *daycare, u8 whomstdve) {
|
||||
u16 Save_DayCare_RetrieveMon(PARTY *party, MessageFormat *msgFmt, Daycare *daycare, u8 whomstdve) {
|
||||
u16 ret;
|
||||
|
||||
ret = Save_DayCare_MoveMonToParty(party, Save_DayCare_GetMonX(daycare, whomstdve), msgFmt);
|
||||
|
|
@ -208,7 +208,7 @@ static int GetDayCareUpdatedLevel(BoxPokemon *boxMon, u32 steps) {
|
|||
return level;
|
||||
}
|
||||
|
||||
int DayCareMon_CalcLevelGrowth(DAYCAREMON *daycareMon) {
|
||||
int DayCareMon_CalcLevelGrowth(DaycareMon *daycareMon) {
|
||||
BoxPokemon *boxMon;
|
||||
u8 cur_level;
|
||||
u8 new_level;
|
||||
|
|
@ -219,7 +219,7 @@ int DayCareMon_CalcLevelGrowth(DAYCAREMON *daycareMon) {
|
|||
return new_level - cur_level;
|
||||
}
|
||||
|
||||
static u8 DayCareMon_BufferLevelGrowthAndNick(DAYCAREMON *daycareMon, MessageFormat *msgFmt) {
|
||||
static u8 DayCareMon_BufferLevelGrowthAndNick(DaycareMon *daycareMon, MessageFormat *msgFmt) {
|
||||
BoxPokemon *boxMon;
|
||||
int levelGrowth;
|
||||
|
||||
|
|
@ -230,7 +230,7 @@ static u8 DayCareMon_BufferLevelGrowthAndNick(DAYCAREMON *daycareMon, MessageFor
|
|||
return levelGrowth;
|
||||
}
|
||||
|
||||
static u16 DayCareMon_BufferNickAndRetrievalPrice(DAYCAREMON *daycareMon, MessageFormat *msgFmt) {
|
||||
static u16 DayCareMon_BufferNickAndRetrievalPrice(DaycareMon *daycareMon, MessageFormat *msgFmt) {
|
||||
BoxPokemon *boxMon;
|
||||
u16 levelGrowth;
|
||||
u16 price;
|
||||
|
|
@ -242,12 +242,12 @@ static u16 DayCareMon_BufferNickAndRetrievalPrice(DAYCAREMON *daycareMon, Messag
|
|||
return price;
|
||||
}
|
||||
|
||||
u16 Save_DayCare_BufferMonNickAndRetrievalPrice(DAYCARE *dayCare, u8 slot, MessageFormat *msgFmt) {
|
||||
u16 Save_DayCare_BufferMonNickAndRetrievalPrice(Daycare *dayCare, u8 slot, MessageFormat *msgFmt) {
|
||||
return DayCareMon_BufferNickAndRetrievalPrice(Save_DayCare_GetMonX(dayCare, slot), msgFmt);
|
||||
}
|
||||
|
||||
u8 Save_DayCare_BufferGrowthAndNick(DAYCARE *dayCare, u32 slot, MessageFormat *msgFmt) {
|
||||
DAYCAREMON *daycareMon;
|
||||
u8 Save_DayCare_BufferGrowthAndNick(Daycare *dayCare, u32 slot, MessageFormat *msgFmt) {
|
||||
DaycareMon *daycareMon;
|
||||
|
||||
daycareMon = Save_DayCare_GetMonX(dayCare, slot);
|
||||
if (GetBoxMonData(DayCareMon_GetBoxMon(daycareMon), MON_DATA_SPECIES, NULL) != SPECIES_NONE) {
|
||||
|
|
@ -257,12 +257,12 @@ u8 Save_DayCare_BufferGrowthAndNick(DAYCARE *dayCare, u32 slot, MessageFormat *m
|
|||
}
|
||||
}
|
||||
|
||||
static void Daycare_GetBothBoxMonsPtr(DAYCARE *dayCare, BoxPokemon **boxmons) {
|
||||
static void Daycare_GetBothBoxMonsPtr(Daycare *dayCare, BoxPokemon **boxmons) {
|
||||
boxmons[0] = Daycare_GetBoxMonI(dayCare, 0);
|
||||
boxmons[1] = Daycare_GetBoxMonI(dayCare, 1);
|
||||
}
|
||||
|
||||
static int Daycare_EverstoneCheck(DAYCARE *dayCare) {
|
||||
static int Daycare_EverstoneCheck(Daycare *dayCare) {
|
||||
BoxPokemon *boxmons[2];
|
||||
int i;
|
||||
u8 everstone_idx;
|
||||
|
|
@ -300,7 +300,7 @@ static int Daycare_EverstoneCheck(DAYCARE *dayCare) {
|
|||
}
|
||||
}
|
||||
|
||||
static void GenerateEggPID(DAYCARE *dayCare) {
|
||||
static void GenerateEggPID(Daycare *dayCare) {
|
||||
u32 pid;
|
||||
int everstone_num;
|
||||
int nature;
|
||||
|
|
@ -341,7 +341,7 @@ static void _IVList_Remove(u8 *ptr, int idx) {
|
|||
}
|
||||
}
|
||||
|
||||
static void InheritIVs(Pokemon *egg, DAYCARE *dayCare) {
|
||||
static void InheritIVs(Pokemon *egg, Daycare *dayCare) {
|
||||
u8 sp10[3];
|
||||
u8 spA[6];
|
||||
u8 sp7[3];
|
||||
|
|
@ -520,7 +520,7 @@ static void InheritMoves(Pokemon *egg, BoxPokemon *father, BoxPokemon *mother) {
|
|||
FreeToHeap(search);
|
||||
}
|
||||
|
||||
void Save_DayCare_ResetEggStats(DAYCARE *dayCare) {
|
||||
void Save_DayCare_ResetEggStats(Daycare *dayCare) {
|
||||
Save_DayCare_SetEggPID(dayCare, 0);
|
||||
Save_DayCare_SetEggCycleCounter(dayCare, 0);
|
||||
}
|
||||
|
|
@ -537,7 +537,7 @@ static const u16 _020FF4AE[][3] = {
|
|||
{ SPECIES_CHINGLING, ITEM_PURE_INCENSE, SPECIES_CHIMECHO },
|
||||
};
|
||||
|
||||
static u16 Daycare_BreedingIncenseCheck(u16 species, DAYCARE *dayCare) {
|
||||
static u16 Daycare_BreedingIncenseCheck(u16 species, Daycare *dayCare) {
|
||||
BoxPokemon *parents[2];
|
||||
u16 i;
|
||||
u16 row_ndx;
|
||||
|
|
@ -561,7 +561,7 @@ static u16 Daycare_BreedingIncenseCheck(u16 species, DAYCARE *dayCare) {
|
|||
return species;
|
||||
}
|
||||
|
||||
static void Daycare_LightBallCheck(Pokemon *egg, DAYCARE *dayCare) {
|
||||
static void Daycare_LightBallCheck(Pokemon *egg, Daycare *dayCare) {
|
||||
BoxPokemon *parents[2];
|
||||
int item1, item2;
|
||||
|
||||
|
|
@ -576,7 +576,7 @@ static void Daycare_LightBallCheck(Pokemon *egg, DAYCARE *dayCare) {
|
|||
}
|
||||
}
|
||||
|
||||
static u16 Daycare_GetEggSpecies(DAYCARE *dayCare, u8 *gender_idx) {
|
||||
static u16 Daycare_GetEggSpecies(Daycare *dayCare, u8 *gender_idx) {
|
||||
u16 parent_species[2];
|
||||
u16 i;
|
||||
u16 mother;
|
||||
|
|
@ -660,7 +660,7 @@ void SetEggStats(Pokemon *mon, int species, u8 metLocation, PlayerProfile *profi
|
|||
MonSetTrainerMemo(mon, profile, a4, a5, HEAP_ID_0);
|
||||
}
|
||||
|
||||
static void SetBreedEggStats(Pokemon *mon, u16 species, DAYCARE *dayCare, u32 otId, u8 form) {
|
||||
static void SetBreedEggStats(Pokemon *mon, u16 species, Daycare *dayCare, u32 otId, u8 form) {
|
||||
u16 pokeball;
|
||||
u8 metLevel;
|
||||
u8 friendship;
|
||||
|
|
@ -694,7 +694,7 @@ static void SetBreedEggStats(Pokemon *mon, u16 species, DAYCARE *dayCare, u32 ot
|
|||
String_Delete(name);
|
||||
}
|
||||
|
||||
void GiveEggToPlayer(DAYCARE *dayCare, PARTY *party, PlayerProfile* profile) {
|
||||
void GiveEggToPlayer(Daycare *dayCare, PARTY *party, PlayerProfile* profile) {
|
||||
Pokemon *mon;
|
||||
u16 species;
|
||||
u8 gender_idx[2];
|
||||
|
|
@ -809,7 +809,7 @@ static u8 ComputeCompatibilityBetweenBoxMons(BoxPokemon **parents) {
|
|||
}
|
||||
}
|
||||
|
||||
static u8 Save_DayCare_CalcCompatibilityInternal(DAYCARE *dayCare) {
|
||||
static u8 Save_DayCare_CalcCompatibilityInternal(Daycare *dayCare) {
|
||||
BoxPokemon *parents[2];
|
||||
Daycare_GetBothBoxMonsPtr(dayCare, parents);
|
||||
return ComputeCompatibilityBetweenBoxMons(parents);
|
||||
|
|
@ -848,7 +848,7 @@ static u8 sub_0206CCD8(FieldSystem *fsys) {
|
|||
return 255;
|
||||
}
|
||||
|
||||
BOOL HandleDayCareStep(DAYCARE *dayCare, PARTY *party, FieldSystem *fsys) {
|
||||
BOOL HandleDayCareStep(Daycare *dayCare, PARTY *party, FieldSystem *fsys) {
|
||||
u32 friendship;
|
||||
BoxPokemon *parents[2];
|
||||
int cycle_ctr;
|
||||
|
|
@ -916,7 +916,7 @@ Pokemon *sub_0206CE44(PARTY *party) {
|
|||
return NULL;
|
||||
}
|
||||
|
||||
void Save_DayCare_BufferStoredMonNicks(DAYCARE *dayCare, MessageFormat *msgFmt) {
|
||||
void Save_DayCare_BufferStoredMonNicks(Daycare *dayCare, MessageFormat *msgFmt) {
|
||||
BoxPokemon *parents[2];
|
||||
|
||||
Daycare_GetBothBoxMonsPtr(dayCare, parents);
|
||||
|
|
@ -929,8 +929,8 @@ void Save_DayCare_BufferStoredMonNicks(DAYCARE *dayCare, MessageFormat *msgFmt)
|
|||
}
|
||||
}
|
||||
|
||||
void Save_DayCare_BufferMonStats(DAYCARE *dayCare, u32 nickname_idx, u32 level_idx, u32 gender_idx, u8 slot, MessageFormat *msgFmt) {
|
||||
DAYCAREMON *daycareMon;
|
||||
void Save_DayCare_BufferMonStats(Daycare *dayCare, u32 nickname_idx, u32 level_idx, u32 gender_idx, u8 slot, MessageFormat *msgFmt) {
|
||||
DaycareMon *daycareMon;
|
||||
BoxPokemon *boxMon;
|
||||
u8 level;
|
||||
u8 gender;
|
||||
|
|
@ -953,7 +953,7 @@ void Save_DayCare_BufferMonStats(DAYCARE *dayCare, u32 nickname_idx, u32 level_i
|
|||
BufferGenderSymbol(msgFmt, gender_idx, gender);
|
||||
}
|
||||
|
||||
u16 Save_DayCare_BufferTailMonNick(DAYCARE *dayCare, MessageFormat *msgFmt) {
|
||||
u16 Save_DayCare_BufferTailMonNick(Daycare *dayCare, MessageFormat *msgFmt) {
|
||||
BoxPokemon *boxMon1;
|
||||
BoxPokemon *boxMon2;
|
||||
u16 species1;
|
||||
|
|
@ -972,7 +972,7 @@ u16 Save_DayCare_BufferTailMonNick(DAYCARE *dayCare, MessageFormat *msgFmt) {
|
|||
}
|
||||
}
|
||||
|
||||
u8 Save_DayCare_GetState(DAYCARE *dayCare) {
|
||||
u8 Save_DayCare_GetState(Daycare *dayCare) {
|
||||
u8 count;
|
||||
if (Save_DayCare_HasEgg(dayCare)) {
|
||||
return 1;
|
||||
|
|
@ -999,7 +999,7 @@ static u8 ConvertDayCareCompatibilityScore(u32 compatibility) {
|
|||
}
|
||||
}
|
||||
|
||||
u8 Save_DayCare_CalcCompatibility(DAYCARE *dayCare) {
|
||||
u8 Save_DayCare_CalcCompatibility(Daycare *dayCare) {
|
||||
return ConvertDayCareCompatibilityScore(Save_DayCare_CalcCompatibilityInternal(dayCare));
|
||||
}
|
||||
|
||||
|
|
@ -1109,7 +1109,7 @@ void sub_0206D328(Pokemon *mon, HeapID heapId) {
|
|||
CalcMonLevelAndStats(mon);
|
||||
}
|
||||
|
||||
static BOOL DayCare_TryGetForcedInheritedIV(DAYCARE *dayCare, u8 *a1, u8 *a2) {
|
||||
static BOOL DayCare_TryGetForcedInheritedIV(Daycare *dayCare, u8 *a1, u8 *a2) {
|
||||
u8 sp8[2];
|
||||
u8 i, n, r7;
|
||||
|
||||
|
|
|
|||
1107
src/item.c
1107
src/item.c
File diff suppressed because it is too large
Load Diff
72
src/mail.c
72
src/mail.c
|
|
@ -26,11 +26,11 @@ static const struct UnkStruct_020F67A4 sFormOverrides[] = {
|
|||
{ 0x1E6, 0x222, SPECIES_ROTOM, ROTOM_MOW },
|
||||
};
|
||||
|
||||
int MailArray_GetFirstEmptySlotIdx(MAIL* msgs, int nmsg);
|
||||
MAIL* Mailbox_GetPtrToSlotI(MAIL *msgs, int n, int i);
|
||||
u32 MailArray_CountMessages(MAIL *msgs, int n);
|
||||
int MailArray_GetFirstEmptySlotIdx(Mail* msgs, int nmsg);
|
||||
Mail* Mailbox_GetPtrToSlotI(Mail *msgs, int n, int i);
|
||||
u32 MailArray_CountMessages(Mail *msgs, int n);
|
||||
|
||||
void Mail_Init(MAIL *mail) {
|
||||
void Mail_Init(Mail *mail) {
|
||||
int i;
|
||||
mail->author_otId = 0;
|
||||
mail->author_gender = PLAYER_GENDER_MALE;
|
||||
|
|
@ -47,21 +47,21 @@ void Mail_Init(MAIL *mail) {
|
|||
}
|
||||
}
|
||||
|
||||
BOOL Mail_TypeIsValid(MAIL *mail) {
|
||||
BOOL Mail_TypeIsValid(Mail *mail) {
|
||||
return mail->mail_type <= NUM_MAIL - 1;
|
||||
}
|
||||
|
||||
MAIL *Mail_New(HeapID heapId) {
|
||||
MAIL *ret = (MAIL *)AllocFromHeapAtEnd(heapId, sizeof(MAIL));
|
||||
Mail *Mail_New(HeapID heapId) {
|
||||
Mail *ret = (Mail *)AllocFromHeapAtEnd(heapId, sizeof(Mail));
|
||||
Mail_Init(ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void Mail_Copy(const MAIL *src, MAIL *dst) {
|
||||
MI_CpuCopy8(src, dst, sizeof(MAIL));
|
||||
void Mail_Copy(const Mail *src, Mail *dst) {
|
||||
MI_CpuCopy8(src, dst, sizeof(Mail));
|
||||
}
|
||||
|
||||
BOOL Mail_Compare(const MAIL *a, const MAIL *b) {
|
||||
BOOL Mail_Compare(const Mail *a, const Mail *b) {
|
||||
int i;
|
||||
if (a->author_otId != b->author_otId
|
||||
|| a->author_gender != b->author_gender
|
||||
|
|
@ -88,7 +88,7 @@ BOOL Mail_Compare(const MAIL *a, const MAIL *b) {
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
void Mail_SetNewMessageDetails(MAIL *mail, u8 mailType, u8 mon_no, SaveData *saveData) {
|
||||
void Mail_SetNewMessageDetails(Mail *mail, u8 mailType, u8 mon_no, SaveData *saveData) {
|
||||
u8 i, j, pal, k;
|
||||
u16 species;
|
||||
u32 icon, isEgg, form;
|
||||
|
|
@ -136,12 +136,12 @@ void Mail_SetNewMessageDetails(MAIL *mail, u8 mailType, u8 mon_no, SaveData *sav
|
|||
}
|
||||
}
|
||||
|
||||
MAIL *CreateKenyaMail(Pokemon *mon, u8 mailType, u8 gender, String *name, u8 otId) {
|
||||
Mail *CreateKenyaMail(Pokemon *mon, u8 mailType, u8 gender, String *name, u8 otId) {
|
||||
u8 r0;
|
||||
u32 r5;
|
||||
u16 species;
|
||||
u32 isEgg, form;
|
||||
MAIL *ret = Mail_New(HEAP_ID_3);
|
||||
Mail *ret = Mail_New(HEAP_ID_3);
|
||||
Mail_Init(ret);
|
||||
ret->mail_type = mailType;
|
||||
CopyStringToU16Array(name, ret->author_name, PLAYER_NAME_LENGTH + 1);
|
||||
|
|
@ -176,37 +176,37 @@ MAIL *CreateKenyaMail(Pokemon *mon, u8 mailType, u8 gender, String *name, u8 otI
|
|||
return ret;
|
||||
}
|
||||
|
||||
u32 Mail_GetOTID(const MAIL *mail) {
|
||||
u32 Mail_GetOTID(const Mail *mail) {
|
||||
return mail->author_otId;
|
||||
}
|
||||
|
||||
u16 *Mail_GetAuthorNamePtr(MAIL *mail) {
|
||||
u16 *Mail_GetAuthorNamePtr(Mail *mail) {
|
||||
return mail->author_name;
|
||||
}
|
||||
|
||||
u8 Mail_GetAuthorGender(const MAIL *mail) {
|
||||
u8 Mail_GetAuthorGender(const Mail *mail) {
|
||||
return mail->author_gender;
|
||||
}
|
||||
|
||||
u8 Mail_GetType(const MAIL *mail) {
|
||||
u8 Mail_GetType(const Mail *mail) {
|
||||
return mail->mail_type;
|
||||
}
|
||||
|
||||
void Mail_SetType(MAIL *mail, u8 mailType) {
|
||||
void Mail_SetType(Mail *mail, u8 mailType) {
|
||||
if (mailType < NUM_MAIL) {
|
||||
mail->mail_type = mailType;
|
||||
}
|
||||
}
|
||||
|
||||
u8 Mail_GetLanguage(const MAIL *mail) {
|
||||
u8 Mail_GetLanguage(const Mail *mail) {
|
||||
return mail->author_language;
|
||||
}
|
||||
|
||||
u8 Mail_GetVersion(const MAIL *mail) {
|
||||
u8 Mail_GetVersion(const Mail *mail) {
|
||||
return mail->author_version;
|
||||
}
|
||||
|
||||
u16 sub_0202B404(MAIL *mail, u8 r1, u8 r4, u16 r3) {
|
||||
u16 sub_0202B404(Mail *mail, u8 r1, u8 r4, u16 r3) {
|
||||
int i;
|
||||
union MailPatternData sp0;
|
||||
if (r1 < NELEMS(mail->mon_icons)) {
|
||||
|
|
@ -236,11 +236,11 @@ u16 sub_0202B404(MAIL *mail, u8 r1, u8 r4, u16 r3) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
u16 sub_0202B4E4(const MAIL *mail) {
|
||||
u16 sub_0202B4E4(const Mail *mail) {
|
||||
return mail->form_flags;
|
||||
}
|
||||
|
||||
MAIL_MESSAGE *Mail_GetUnk20Array(MAIL *mail, int i) {
|
||||
MAIL_MESSAGE *Mail_GetUnk20Array(Mail *mail, int i) {
|
||||
if (i < NELEMS(mail->unk_20)) {
|
||||
return &mail->unk_20[i];
|
||||
} else {
|
||||
|
|
@ -248,7 +248,7 @@ MAIL_MESSAGE *Mail_GetUnk20Array(MAIL *mail, int i) {
|
|||
}
|
||||
}
|
||||
|
||||
void Mail_SetMessage(MAIL *mail, const MAIL_MESSAGE *src, int i) {
|
||||
void Mail_SetMessage(Mail *mail, const MAIL_MESSAGE *src, int i) {
|
||||
if (i < NELEMS(mail->unk_20)) {
|
||||
MailMsg_Copy(&mail->unk_20[i], src);
|
||||
}
|
||||
|
|
@ -273,15 +273,15 @@ int Mailbox_GetFirstEmptySlotIdx(MAILBOX *mailbox) {
|
|||
return MailArray_GetFirstEmptySlotIdx(mailbox->msgs, MAILBOX_MSG_COUNT);
|
||||
}
|
||||
|
||||
void Mailbox_DeleteSlotI(MAIL *msgs, int n, int i) {
|
||||
MAIL *mail = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
void Mailbox_DeleteSlotI(Mail *msgs, int n, int i) {
|
||||
Mail *mail = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
if (mail != NULL) {
|
||||
Mail_Init(mail);
|
||||
}
|
||||
}
|
||||
|
||||
void Mailbox_CopyMailToSlotI(MAIL *msgs, int n, int i, const MAIL *src) {
|
||||
MAIL *dest = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
void Mailbox_CopyMailToSlotI(Mail *msgs, int n, int i, const Mail *src) {
|
||||
Mail *dest = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
if (dest != NULL) {
|
||||
Mail_Copy(src, dest);
|
||||
}
|
||||
|
|
@ -291,17 +291,17 @@ u32 Mailbox_CountMessages(MAILBOX *mailbox, int unused) {
|
|||
return MailArray_CountMessages(mailbox->msgs, MAILBOX_MSG_COUNT);
|
||||
}
|
||||
|
||||
MAIL *Mailbox_AllocAndFetchMailI(MAIL *msgs, int n, int i, HeapID heapId) {
|
||||
const MAIL *src = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
MAIL *ret = Mail_New(heapId);
|
||||
Mail *Mailbox_AllocAndFetchMailI(Mail *msgs, int n, int i, HeapID heapId) {
|
||||
const Mail *src = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
Mail *ret = Mail_New(heapId);
|
||||
if (src != NULL) {
|
||||
Mail_Copy(src, ret);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void Mailbox_FetchMailToBuffer(MAIL *msgs, int n, int i, MAIL *dest) {
|
||||
const MAIL *src = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
void Mailbox_FetchMailToBuffer(Mail *msgs, int n, int i, Mail *dest) {
|
||||
const Mail *src = Mailbox_GetPtrToSlotI(msgs, n, i);
|
||||
if (src == NULL) {
|
||||
Mail_Init(dest);
|
||||
} else {
|
||||
|
|
@ -309,7 +309,7 @@ void Mailbox_FetchMailToBuffer(MAIL *msgs, int n, int i, MAIL *dest) {
|
|||
}
|
||||
}
|
||||
|
||||
int MailArray_GetFirstEmptySlotIdx(MAIL *msgs, int n) {
|
||||
int MailArray_GetFirstEmptySlotIdx(Mail *msgs, int n) {
|
||||
int i;
|
||||
for (i = 0; i < n; i++) {
|
||||
if (!Mail_TypeIsValid(&msgs[i])) {
|
||||
|
|
@ -319,7 +319,7 @@ int MailArray_GetFirstEmptySlotIdx(MAIL *msgs, int n) {
|
|||
return -1;
|
||||
}
|
||||
|
||||
u32 MailArray_CountMessages(MAIL *msgs, int n) {
|
||||
u32 MailArray_CountMessages(Mail *msgs, int n) {
|
||||
int i;
|
||||
u32 ct = 0;
|
||||
for (i = 0; i < n; i++) {
|
||||
|
|
@ -331,7 +331,7 @@ u32 MailArray_CountMessages(MAIL *msgs, int n) {
|
|||
return ct;
|
||||
}
|
||||
|
||||
MAIL *Mailbox_GetPtrToSlotI(MAIL *msgs, int n, int i) {
|
||||
Mail *Mailbox_GetPtrToSlotI(Mail *msgs, int n, int i) {
|
||||
#pragma unused(n)
|
||||
if (i < MAILBOX_MSG_COUNT) {
|
||||
return &msgs[i];
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ Unk02090E68 *sub_02090E68(SaveData *saveData, u16 a1, u8 partyIdx, u8 a3, HeapID
|
|||
ptr->unkC = 0;
|
||||
ptr->saveData = saveData;
|
||||
|
||||
MAIL *mail = Mail_New(heapId);
|
||||
Mail *mail = Mail_New(heapId);
|
||||
ptr->mail = mail;
|
||||
Mail_Init(mail);
|
||||
Mail_SetNewMessageDetails(ptr->mail, MAIL_NONE, partyIdx, saveData);
|
||||
|
|
@ -203,7 +203,7 @@ Unk02090E68 *sub_02090F00(SaveData *saveData, Pokemon *mon, HeapID heapId) {
|
|||
ptr->unk0[0] = 0;
|
||||
ptr->saveData = saveData;
|
||||
|
||||
MAIL *mail = Mail_New(heapId);
|
||||
Mail *mail = Mail_New(heapId);
|
||||
ptr->mail = mail;
|
||||
GetMonData(mon, MON_DATA_MAIL_STRUCT, ptr->mail);
|
||||
|
||||
|
|
@ -217,7 +217,7 @@ Unk02090E68 *sub_02090F38(SaveData *saveData, u8 mailType, HeapID heapId) {
|
|||
ptr->unk0[0] = 0;
|
||||
ptr->saveData = saveData;
|
||||
|
||||
MAIL *mail = Mail_New(heapId);
|
||||
Mail *mail = Mail_New(heapId);
|
||||
ptr->mail = mail;
|
||||
Mail_SetType(mail, mailType);
|
||||
|
||||
|
|
@ -248,7 +248,7 @@ int sub_02090FA8(MAILBOX *mailbox, Pokemon *mon, HeapID heapId) {
|
|||
int idx = Mailbox_GetFirstEmptySlotIdx(mailbox);
|
||||
|
||||
if (idx != -1) {
|
||||
MAIL *mail = Mail_New(heapId);
|
||||
Mail *mail = Mail_New(heapId);
|
||||
|
||||
GetMonData(mon, MON_DATA_MAIL_STRUCT, mail);
|
||||
Mailbox_CopyMailToSlotI(&mailbox->msgs[0], 0, idx, mail);
|
||||
|
|
@ -261,10 +261,10 @@ int sub_02090FA8(MAILBOX *mailbox, Pokemon *mon, HeapID heapId) {
|
|||
return -1;
|
||||
}
|
||||
|
||||
int sub_02091004(MAIL *msgs, int i, Pokemon *mon, HeapID heapId) {
|
||||
int sub_02091004(Mail *msgs, int i, Pokemon *mon, HeapID heapId) {
|
||||
int item = ITEM_NONE;
|
||||
|
||||
MAIL *mail = Mailbox_AllocAndFetchMailI(msgs, 0, i, heapId);
|
||||
Mail *mail = Mailbox_AllocAndFetchMailI(msgs, 0, i, heapId);
|
||||
if (mail == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ void NPCTrade_MakeAndGiveLoanMon(FieldSystem *fsys, u8 tradeno, u8 level, u16 ma
|
|||
NPCTrade *trade_dat;
|
||||
Pokemon *kenya;
|
||||
String *name;
|
||||
MAIL *mail;
|
||||
Mail *mail;
|
||||
u8 mailno;
|
||||
|
||||
mon = AllocMonZeroed(HEAP_ID_FIELD);
|
||||
|
|
@ -74,11 +74,11 @@ void NPCTrade_MakeAndGiveLoanMon(FieldSystem *fsys, u8 tradeno, u8 level, u16 ma
|
|||
FreeToHeap(mon);
|
||||
}
|
||||
|
||||
MAIL *NPCTrade_MakeKenyaMail(void) {
|
||||
Mail *NPCTrade_MakeKenyaMail(void) {
|
||||
Pokemon *mon;
|
||||
NPCTrade *trade_dat;
|
||||
String *name;
|
||||
MAIL *mail;
|
||||
Mail *mail;
|
||||
u8 mailno;
|
||||
|
||||
mon = AllocMonZeroed(HEAP_ID_FIELD);
|
||||
|
|
|
|||
|
|
@ -207,7 +207,7 @@ static void InitGameStateAfterOakSpeech_Internal(HeapID heap_id, SaveData* saved
|
|||
|
||||
CreateMon(mon, SPECIES_MARILL, 1, 0, FALSE, 0, OT_ID_PLAYER_ID, 0);
|
||||
|
||||
MAIL* mail;
|
||||
Mail* mail;
|
||||
if (PlayerProfile_GetTrainerGender(profile) == PLAYER_GENDER_MALE) {
|
||||
author_name = NewString_ReadMsgData(friend_names_msgdata, msg_0445_00001);
|
||||
mail = CreateKenyaMail(mon, MAIL_AIR, MON_FEMALE, author_name, 0);
|
||||
|
|
|
|||
|
|
@ -163,7 +163,7 @@ BOOL ReleaseBoxMonLock(BoxPokemon *boxMon, BOOL locked) {
|
|||
return prev;
|
||||
}
|
||||
void CreateMon(Pokemon *mon, int species, int level, int fixedIV, int hasFixedPersonality, int fixedPersonality, int otIdType, int fixedOtId) {
|
||||
MAIL * mail;
|
||||
Mail * mail;
|
||||
u32 capsule;
|
||||
CAPSULE seal_coords;
|
||||
ZeroMonData(mon);
|
||||
|
|
@ -942,7 +942,7 @@ static void SetMonDataInternal(Pokemon *mon, int attr, const void * value) {
|
|||
mon->party.spdef = VALUE(u16);
|
||||
break;
|
||||
case MON_DATA_MAIL_STRUCT:
|
||||
Mail_Copy((const MAIL *)value, &mon->party.mail);
|
||||
Mail_Copy((const Mail *)value, &mon->party.mail);
|
||||
break;
|
||||
case MON_DATA_SEAL_COORDS:
|
||||
CopyCapsule((const CAPSULE *)value, &mon->party.sealCoords);
|
||||
|
|
|
|||
|
|
@ -4277,7 +4277,7 @@ u32 sub_020467A8(SaveData *saveData) {
|
|||
}
|
||||
}
|
||||
|
||||
DAYCARE *dayCare = Save_DayCare_Get(saveData);
|
||||
Daycare *dayCare = Save_DayCare_Get(saveData);
|
||||
for (i = 0; i < 2; i++) {
|
||||
BoxPokemon *boxMon = DayCareMon_GetBoxMon(Save_DayCare_GetMonX(dayCare, i));
|
||||
if (GetBoxMonData(boxMon, MON_DATA_SPECIES, NULL) == SPECIES_ROTOM && !GetBoxMonData(boxMon, MON_DATA_IS_EGG, NULL)) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ static LocalMapObject* CreateDayCareMonSpriteInternal(MapObjectManager* object_m
|
|||
BOOL ScrCmd_BufferDayCareMonNicks(ScriptContext* ctx) {
|
||||
SaveData* savedata = ctx->fsys->savedata;
|
||||
MessageFormat** msg_fmt = FieldSysGetAttrAddr(ctx->fsys, SCRIPTENV_MESSAGE_FORMAT);
|
||||
DAYCARE* daycare = Save_DayCare_Get(savedata);
|
||||
Daycare* daycare = Save_DayCare_Get(savedata);
|
||||
|
||||
Save_DayCare_BufferStoredMonNicks(daycare, *msg_fmt);
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ BOOL ScrCmd_BufferDayCareMonNicks(ScriptContext* ctx) {
|
|||
BOOL ScrCmd_GetDayCareState(ScriptContext* ctx) {
|
||||
SaveData* savedata = ctx->fsys->savedata;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
*ret_ptr = Save_DayCare_GetState(daycare);
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ BOOL ScrCmd_GetDayCareState(ScriptContext* ctx) {
|
|||
}
|
||||
|
||||
BOOL ScrCmd_ResetDayCareEgg(ScriptContext* ctx) {
|
||||
DAYCARE* daycare = SaveArray_Get(ctx->fsys->savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(ctx->fsys->savedata, SAVE_DAYCARE);
|
||||
|
||||
Save_DayCare_ResetEggStats(daycare);
|
||||
|
||||
|
|
@ -42,7 +42,7 @@ BOOL ScrCmd_ResetDayCareEgg(ScriptContext* ctx) {
|
|||
|
||||
BOOL ScrCmd_GiveDayCareEgg(ScriptContext* ctx) {
|
||||
FieldSystem* fsys = ctx->fsys;
|
||||
DAYCARE* daycare = SaveArray_Get(fsys->savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(fsys->savedata, SAVE_DAYCARE);
|
||||
PARTY* party = SaveArray_PlayerParty_Get(fsys->savedata);
|
||||
SaveData* savedata = FieldSystem_GetSaveDataPtr(ctx->fsys);
|
||||
PlayerProfile* profile = Save_PlayerData_GetProfileAddr(savedata);
|
||||
|
|
@ -58,7 +58,7 @@ BOOL ScrCmd_RetrieveDayCareMon(ScriptContext* ctx) {
|
|||
SaveData* savedata = fsys->savedata;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 daycare_mon_idx = ScriptGetVar(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
PARTY* party = SaveArray_PlayerParty_Get(fsys->savedata);
|
||||
|
||||
*ret_ptr = Save_DayCare_RetrieveMon(party, *msg_fmt, daycare, (u8)daycare_mon_idx);
|
||||
|
|
@ -72,7 +72,7 @@ BOOL ScrCmd_BufferDayCareWithdrawCost(ScriptContext* ctx) {
|
|||
SaveData* savedata = fsys->savedata;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 daycare_mon_idx = ScriptGetVar(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
*ret_ptr = Save_DayCare_BufferMonNickAndRetrievalPrice(daycare, (u8)daycare_mon_idx, *msg_fmt);
|
||||
|
||||
|
|
@ -84,7 +84,7 @@ BOOL ScrCmd_BufferDayCareMonGrowth(ScriptContext* ctx) {
|
|||
MessageFormat** msg_fmt = FieldSysGetAttrAddr(ctx->fsys, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
u16 daycare_mon_idx = ScriptGetVar(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
*ret_ptr = Save_DayCare_BufferGrowthAndNick(daycare, daycare_mon_idx, *msg_fmt);
|
||||
|
||||
|
|
@ -95,7 +95,7 @@ BOOL ScrCmd_GetTailDayCareMonSpeciesAndNick(ScriptContext* ctx) {
|
|||
FieldSystem* fsys = ctx->fsys;
|
||||
MessageFormat** msg_fmt = FieldSysGetAttrAddr(ctx->fsys, SCRIPTENV_MESSAGE_FORMAT);
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
DAYCARE* daycare = Save_DayCare_Get(fsys->savedata);
|
||||
Daycare* daycare = Save_DayCare_Get(fsys->savedata);
|
||||
|
||||
*ret_ptr = Save_DayCare_BufferTailMonNick(daycare, *msg_fmt);
|
||||
|
||||
|
|
@ -107,7 +107,7 @@ BOOL ScrCmd_PutMonInDayCare(ScriptContext* ctx) {
|
|||
SaveData* savedata = fsys->savedata;
|
||||
u16 slot = ScriptGetVar(ctx);
|
||||
PARTY* party = SaveArray_PlayerParty_Get(fsys->savedata);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
Save_DayCare_PutMonIn(party, (u8)slot, daycare, savedata);
|
||||
|
||||
|
|
@ -121,7 +121,7 @@ BOOL ScrCmd_BufferDayCareMonStats(ScriptContext* ctx) {
|
|||
u16 level_idx = ScriptGetVar(ctx);
|
||||
u16 gender_idx = ScriptGetVar(ctx);
|
||||
u16 slot = ScriptGetVar(ctx);
|
||||
DAYCARE* daycare = Save_DayCare_Get(savedata);
|
||||
Daycare* daycare = Save_DayCare_Get(savedata);
|
||||
|
||||
Save_DayCare_BufferMonStats(daycare, (u8)nickname_idx, (u8)level_idx, (u8)gender_idx, (u8)slot, *msg_fmt);
|
||||
|
||||
|
|
@ -131,7 +131,7 @@ BOOL ScrCmd_BufferDayCareMonStats(ScriptContext* ctx) {
|
|||
BOOL ScrCmd_GetDayCareCompatibility(ScriptContext* ctx) {
|
||||
SaveData* savedata = ctx->fsys->savedata;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
*ret_ptr = Save_DayCare_CalcCompatibility(daycare);
|
||||
|
||||
|
|
@ -141,7 +141,7 @@ BOOL ScrCmd_GetDayCareCompatibility(ScriptContext* ctx) {
|
|||
BOOL ScrCmd_CheckDayCareEgg(ScriptContext* ctx) {
|
||||
SaveData* savedata = ctx->fsys->savedata;
|
||||
u16* ret_ptr = ScriptGetVarPointer(ctx);
|
||||
DAYCARE* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
Daycare* daycare = SaveArray_Get(savedata, SAVE_DAYCARE);
|
||||
|
||||
*ret_ptr = Save_DayCare_HasEgg(daycare);
|
||||
|
||||
|
|
@ -149,7 +149,7 @@ BOOL ScrCmd_CheckDayCareEgg(ScriptContext* ctx) {
|
|||
}
|
||||
|
||||
BOOL ScrCmd_UpdateDayCareMonObjects(ScriptContext* ctx) {
|
||||
DAYCARE* daycare;
|
||||
Daycare* daycare;
|
||||
u8 form;
|
||||
u16 species;
|
||||
|
||||
|
|
|
|||
|
|
@ -506,8 +506,8 @@ BOOL ScrCmd_KenyaCheck(ScriptContext *ctx) {
|
|||
}
|
||||
|
||||
HandleLoadOverlay(FS_OVERLAY_ID(npc_trade), OVY_LOAD_ASYNC);
|
||||
MAIL *kenyaMail = NPCTrade_MakeKenyaMail();
|
||||
MAIL *mail = Mail_New(HEAP_ID_FIELD);
|
||||
Mail *kenyaMail = NPCTrade_MakeKenyaMail();
|
||||
Mail *mail = Mail_New(HEAP_ID_FIELD);
|
||||
GetMonData(mon, MON_DATA_MAIL_STRUCT, mail);
|
||||
*kenya = Mail_Compare(kenyaMail, mail);
|
||||
FreeToHeap(mail);
|
||||
|
|
@ -525,8 +525,8 @@ BOOL ScrCmd_KenyaCheckPartyOrMailbox(ScriptContext *ctx) {
|
|||
|
||||
PARTY *party = SaveArray_PlayerParty_Get(fsys->savedata);
|
||||
HandleLoadOverlay(FS_OVERLAY_ID(npc_trade), OVY_LOAD_ASYNC);
|
||||
MAIL *kenyaMail = NPCTrade_MakeKenyaMail();
|
||||
MAIL *mail = Mail_New(HEAP_ID_FIELD);
|
||||
Mail *kenyaMail = NPCTrade_MakeKenyaMail();
|
||||
Mail *mail = Mail_New(HEAP_ID_FIELD);
|
||||
UnloadOverlayByID(FS_OVERLAY_ID(npc_trade));
|
||||
|
||||
for (i = 0; i < GetPartyCount(party); i++) {
|
||||
|
|
@ -573,7 +573,7 @@ BOOL ScrCmd_MonGiveMail(ScriptContext *ctx) {
|
|||
}
|
||||
|
||||
item = ITEM_NONE;
|
||||
MAIL *mail = Mail_New(HEAP_ID_FIELD);
|
||||
Mail *mail = Mail_New(HEAP_ID_FIELD);
|
||||
Mail_Init(mail);
|
||||
SetMonData(mon, MON_DATA_MAIL_STRUCT, mail);
|
||||
SetMonData(mon, MON_DATA_HELD_ITEM, &item);
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ BOOL CanUseItemOnPokemon(Pokemon *mon, u16 itemID, s32 moveIdx, HeapID heapID) {
|
|||
int spDefEv;
|
||||
int hpEv;
|
||||
|
||||
ITEMDATA *itemData = LoadItemDataOrGfx(itemID, ITEMNARC_PARAM, heapID);
|
||||
ItemData *itemData = LoadItemDataOrGfx(itemID, ITEMNARC_PARAM, heapID);
|
||||
if (GetItemAttr_PreloadedItemData(itemData, ITEMATTR_PARTY_USE) != 1) {
|
||||
FreeToHeap(itemData);
|
||||
return FALSE;
|
||||
|
|
@ -230,7 +230,7 @@ BOOL UseItemOnPokemon(Pokemon *mon, u16 itemID, u16 moveIdx, u16 location, HeapI
|
|||
BOOL hadEffect;
|
||||
BOOL effectFound;
|
||||
|
||||
ITEMDATA *itemData = LoadItemDataOrGfx(itemID, ITEMNARC_PARAM, heapID);
|
||||
ItemData *itemData = LoadItemDataOrGfx(itemID, ITEMNARC_PARAM, heapID);
|
||||
if (GetItemAttr_PreloadedItemData(itemData, ITEMATTR_PARTY_USE) != 1) {
|
||||
FreeToHeap(itemData);
|
||||
return FALSE;
|
||||
|
|
@ -588,7 +588,7 @@ s32 TryModEV(s32 ev, s32 evSum, s32 by) {
|
|||
return ev;
|
||||
}
|
||||
|
||||
BOOL CanItemModFriendship(Pokemon *mon, ITEMDATA *itemData) {
|
||||
BOOL CanItemModFriendship(Pokemon *mon, ItemData *itemData) {
|
||||
s32 friendship = GetMonData(mon, MON_DATA_FRIENDSHIP, NULL);
|
||||
if (friendship >= 255) {
|
||||
return FALSE;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user