Document dodrio berry picking

This commit is contained in:
GriffinR 2021-03-01 01:54:51 -05:00
parent 91ab30fa71
commit b9c733495b
22 changed files with 4250 additions and 3685 deletions

View File

Before

Width:  |  Height:  |  Size: 395 B

After

Width:  |  Height:  |  Size: 395 B

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 310 B

View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 195 B

After

Width:  |  Height:  |  Size: 195 B

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 71 B

After

Width:  |  Height:  |  Size: 71 B

View File

@ -1,7 +1,7 @@
#ifndef GUARD_DODRIO_BERRY_PICKING_H #ifndef GUARD_DODRIO_BERRY_PICKING_H
#define GUARD_DODRIO_BERRY_PICKING_H #define GUARD_DODRIO_BERRY_PICKING_H
void StartDodrioBerryPicking(u16 a0, void (*callback)(void)); void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void));
void IsDodrioInParty(void); void IsDodrioInParty(void);
void ShowDodrioBerryPickingRecords(void); void ShowDodrioBerryPickingRecords(void);

View File

@ -262,7 +262,7 @@ bool8 LinkRfu_GetNameIfSerial7F7D(struct GFtgtGname *buff1, u8 *buff2, u8 idx);
s32 sub_800E87C(u8 idx); s32 sub_800E87C(u8 idx);
void CreateTask_RfuIdle(void); void CreateTask_RfuIdle(void);
void DestroyTask_RfuIdle(void); void DestroyTask_RfuIdle(void);
void sub_8011AC8(void); void ClearRecvCommands(void);
void LinkRfu_FatalError(void); void LinkRfu_FatalError(void);
bool32 sub_8011A9C(void); bool32 sub_8011A9C(void);
void sub_80104B0(void); void sub_80104B0(void);

View File

@ -1,6 +1,27 @@
#ifndef GUARD_SOUND_H #ifndef GUARD_SOUND_H
#define GUARD_SOUND_H #define GUARD_SOUND_H
enum {
FANFARE_LEVEL_UP,
FANFARE_OBTAIN_ITEM,
FANFARE_EVOLVED,
FANFARE_OBTAIN_TMHM,
FANFARE_HEAL,
FANFARE_OBTAIN_BADGE,
FANFARE_MOVE_DELETED,
FANFARE_OBTAIN_BERRY,
FANFARE_AWAKEN_LEGEND,
FANFARE_SLOTS_JACKPOT,
FANFARE_SLOTS_WIN,
FANFARE_TOO_BAD,
FANFARE_RG_POKE_FLUTE,
FANFARE_RG_OBTAIN_KEY_ITEM,
FANFARE_RG_DEX_RATING,
FANFARE_OBTAIN_B_POINTS,
FANFARE_OBTAIN_SYMBOL,
FANFARE_REGISTER_MATCH_CALL,
};
void InitMapMusic(void); void InitMapMusic(void);
void MapMusicMain(void); void MapMusicMain(void);
void ResetMapMusic(void); void ResetMapMusic(void);

View File

@ -2516,12 +2516,12 @@ void sub_80236B8(struct BerryCrushGame *r5)
{ {
if (r5->unk10 > 70) if (r5->unk10 > 70)
{ {
sub_8011AC8(); ClearRecvCommands();
r5->unk10 = 0; r5->unk10 = 0;
} }
else if (r5->unk5C.unk02_3 == 0) else if (r5->unk5C.unk02_3 == 0)
{ {
sub_8011AC8(); ClearRecvCommands();
r5->unk10 = 0; r5->unk10 = 0;
} }
} }

File diff suppressed because it is too large Load Diff

View File

@ -168,7 +168,7 @@ static const u32 sWirelessLinkDisplayTilemap[] = INCBIN_U32("graphics/interface/
static const u16 sLinkTestDigitsPal[] = INCBIN_U16("graphics/interface/link_test_digits.gbapal"); static const u16 sLinkTestDigitsPal[] = INCBIN_U16("graphics/interface/link_test_digits.gbapal");
static const u16 sLinkTestDigitsGfx[] = INCBIN_U16("graphics/interface/link_test_digits.4bpp"); static const u16 sLinkTestDigitsGfx[] = INCBIN_U16("graphics/interface/link_test_digits.4bpp");
static const u8 sUnusedTransparentWhite[] = _("{HIGHLIGHT TRANSPARENT}{COLOR WHITE}"); static const u8 sUnusedTransparentWhite[] = _("{HIGHLIGHT TRANSPARENT}{COLOR WHITE}");
static const u16 s2BlankTilesGfx[] = INCBIN_U16("graphics/interface/blank_1x2.4bpp"); static const u16 sCommErrorBg_Gfx[] = INCBIN_U16("graphics/interface/comm_error_bg.4bpp");
static const struct BlockRequest sBlockRequests[] = { static const struct BlockRequest sBlockRequests[] = {
{gBlockSendBuffer, 200}, {gBlockSendBuffer, 200},
{gBlockSendBuffer, 200}, {gBlockSendBuffer, 200},
@ -1680,9 +1680,9 @@ void CB2_LinkError(void)
} }
} }
static void sub_800B080(void) static void ErrorMsg_MoveCloserToPartner(void)
{ {
LoadBgTiles(0, s2BlankTilesGfx, 0x20, 0); LoadBgTiles(0, sCommErrorBg_Gfx, 0x20, 0);
DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0); DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0);
CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0); CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
@ -1697,9 +1697,9 @@ static void sub_800B080(void)
CopyWindowToVram(2, 3); CopyWindowToVram(2, 3);
} }
static void sub_800B138(void) static void ErrorMsg_CheckConnections(void)
{ {
LoadBgTiles(0, s2BlankTilesGfx, 0x20, 0); LoadBgTiles(0, sCommErrorBg_Gfx, 0x20, 0);
FillWindowPixelBuffer(1, PIXEL_FILL(0)); FillWindowPixelBuffer(1, PIXEL_FILL(0));
FillWindowPixelBuffer(2, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0));
AddTextPrinterParameterized3(1, 3, 2, 0, sTextColors, 0, gText_CommErrorCheckConnections); AddTextPrinterParameterized3(1, 3, 2, 0, sTextColors, 0, gText_CommErrorCheckConnections);
@ -1715,20 +1715,14 @@ static void CB2_PrintErrorMessage(void)
{ {
case 00: case 00:
if (sLinkErrorBuffer.unk_06) if (sLinkErrorBuffer.unk_06)
{ ErrorMsg_MoveCloserToPartner();
sub_800B080();
}
else else
{ ErrorMsg_CheckConnections();
sub_800B138();
}
break; break;
case 02: case 02:
ShowBg(0); ShowBg(0);
if (sLinkErrorBuffer.unk_06) if (sLinkErrorBuffer.unk_06)
{
ShowBg(1); ShowBg(1);
}
break; break;
case 30: case 30:
PlaySE(SE_BOO); PlaySE(SE_BOO);
@ -1741,13 +1735,9 @@ static void CB2_PrintErrorMessage(void)
break; break;
case 130: case 130:
if (gWirelessCommType == 2) if (gWirelessCommType == 2)
{
AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnTitleScreen); AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnTitleScreen);
}
else if (gWirelessCommType == 1) else if (gWirelessCommType == 1)
{
AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnRegistrationCounter); AddTextPrinterParameterized3(0, 3, 2, 20, sTextColors, 0, gText_ABtnRegistrationCounter);
}
break; break;
} }
if (gMain.state == 160) if (gMain.state == 160)

View File

@ -2472,7 +2472,7 @@ void RfuVSync(void)
rfu_LMAN_syncVBlank(); rfu_LMAN_syncVBlank();
} }
void sub_8011AC8(void) void ClearRecvCommands(void)
{ {
CpuFill32(0, gRecvCmds, sizeof(gRecvCmds)); CpuFill32(0, gRecvCmds, sizeof(gRecvCmds));
} }

View File

@ -4904,7 +4904,7 @@ void ItemUseCB_RareCandy(u8 taskId, TaskFunc task)
else else
{ {
gPartyMenuUseExitCallback = TRUE; gPartyMenuUseExitCallback = TRUE;
PlayFanfareByFanfareNum(0); PlayFanfareByFanfareNum(FANFARE_LEVEL_UP);
UpdateMonDisplayInfoAfterRareCandy(gPartyMenu.slotId, mon); UpdateMonDisplayInfoAfterRareCandy(gPartyMenu.slotId, mon);
RemoveBagItem(gSpecialVar_ItemId, 1); RemoveBagItem(gSpecialVar_ItemId, 1);
GetMonNickname(mon, gStringVar1); GetMonNickname(mon, gStringVar1);

View File

@ -41,24 +41,24 @@ static void Task_DuckBGMForPokemonCry(u8 taskId);
static void RestoreBGMVolumeAfterPokemonCry(void); static void RestoreBGMVolumeAfterPokemonCry(void);
static const struct Fanfare sFanfares[] = { static const struct Fanfare sFanfares[] = {
{ MUS_LEVEL_UP, 80 }, [FANFARE_LEVEL_UP] = { MUS_LEVEL_UP, 80 },
{ MUS_OBTAIN_ITEM, 160 }, [FANFARE_OBTAIN_ITEM] = { MUS_OBTAIN_ITEM, 160 },
{ MUS_EVOLVED, 220 }, [FANFARE_EVOLVED] = { MUS_EVOLVED, 220 },
{ MUS_OBTAIN_TMHM, 220 }, [FANFARE_OBTAIN_TMHM] = { MUS_OBTAIN_TMHM, 220 },
{ MUS_HEAL, 160 }, [FANFARE_HEAL] = { MUS_HEAL, 160 },
{ MUS_OBTAIN_BADGE, 340 }, [FANFARE_OBTAIN_BADGE] = { MUS_OBTAIN_BADGE, 340 },
{ MUS_MOVE_DELETED, 180 }, [FANFARE_MOVE_DELETED] = { MUS_MOVE_DELETED, 180 },
{ MUS_OBTAIN_BERRY, 120 }, [FANFARE_OBTAIN_BERRY] = { MUS_OBTAIN_BERRY, 120 },
{ MUS_AWAKEN_LEGEND, 710 }, [FANFARE_AWAKEN_LEGEND] = { MUS_AWAKEN_LEGEND, 710 },
{ MUS_SLOTS_JACKPOT, 250 }, [FANFARE_SLOTS_JACKPOT] = { MUS_SLOTS_JACKPOT, 250 },
{ MUS_SLOTS_WIN, 150 }, [FANFARE_SLOTS_WIN] = { MUS_SLOTS_WIN, 150 },
{ MUS_TOO_BAD, 160 }, [FANFARE_TOO_BAD] = { MUS_TOO_BAD, 160 },
{ MUS_RG_POKE_FLUTE, 450 }, [FANFARE_RG_POKE_FLUTE] = { MUS_RG_POKE_FLUTE, 450 },
{ MUS_RG_OBTAIN_KEY_ITEM, 170 }, [FANFARE_RG_OBTAIN_KEY_ITEM] = { MUS_RG_OBTAIN_KEY_ITEM, 170 },
{ MUS_RG_DEX_RATING, 196 }, [FANFARE_RG_DEX_RATING] = { MUS_RG_DEX_RATING, 196 },
{ MUS_OBTAIN_B_POINTS, 313 }, [FANFARE_OBTAIN_B_POINTS] = { MUS_OBTAIN_B_POINTS, 313 },
{ MUS_OBTAIN_SYMBOL, 318 }, [FANFARE_OBTAIN_SYMBOL] = { MUS_OBTAIN_SYMBOL, 318 },
{ MUS_REGISTER_MATCH_CALL, 135 }, [FANFARE_REGISTER_MATCH_CALL] = { MUS_REGISTER_MATCH_CALL, 135 },
}; };
#define CRY_VOLUME 120 // was 125 in R/S #define CRY_VOLUME 120 // was 125 in R/S
@ -212,6 +212,7 @@ bool8 WaitFanfare(bool8 stop)
} }
} }
// Unused
void StopFanfareByFanfareNum(u8 fanfareNum) void StopFanfareByFanfareNum(u8 fanfareNum)
{ {
m4aSongNumStop(sFanfares[fanfareNum].songNum); m4aSongNumStop(sFanfares[fanfareNum].songNum);
@ -220,7 +221,7 @@ void StopFanfareByFanfareNum(u8 fanfareNum)
void PlayFanfare(u16 songNum) void PlayFanfare(u16 songNum)
{ {
s32 i; s32 i;
for (i = 0; (u32)i < 18; i++) for (i = 0; (u32)i < ARRAY_COUNT(sFanfares); i++)
{ {
if (sFanfares[i].songNum == songNum) if (sFanfares[i].songNum == songNum)
{ {
@ -230,6 +231,8 @@ void PlayFanfare(u16 songNum)
} }
} }
// songNum is not in sFanfares
// Play first fanfare in table instead
PlayFanfareByFanfareNum(0); PlayFanfareByFanfareNum(0);
CreateFanfareTask(); CreateFanfareTask();
} }