mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-25 19:24:16 +01:00
Added X/Y-style wrapping summary screen
This commit is contained in:
parent
ee34b4f09d
commit
304447ee2d
@ -1778,29 +1778,23 @@ static void Task_ChangeSummaryMon(u8 taskId)
|
||||
static s8 AdvanceMonIndex(s8 delta)
|
||||
{
|
||||
struct Pokemon *mon = sMonSummaryScreen->monList.mons;
|
||||
u8 index = sMonSummaryScreen->curMonIndex;
|
||||
u8 numMons = sMonSummaryScreen->maxMonIndex + 1;
|
||||
delta += numMons;
|
||||
|
||||
if (sMonSummaryScreen->currPageIndex == PSS_PAGE_INFO)
|
||||
{
|
||||
if (delta == -1 && sMonSummaryScreen->curMonIndex == 0)
|
||||
return -1;
|
||||
else if (delta == 1 && sMonSummaryScreen->curMonIndex >= sMonSummaryScreen->maxMonIndex)
|
||||
index = (index + delta) % numMons;
|
||||
|
||||
// skip over any Eggs unless on the Info Page
|
||||
if (sMonSummaryScreen->currPageIndex != PSS_PAGE_INFO)
|
||||
while (GetMonData(&mon[index], MON_DATA_IS_EGG))
|
||||
index = (index + delta) % numMons;
|
||||
|
||||
// to avoid "scrolling" to the same Pokemon
|
||||
if (index == sMonSummaryScreen->curMonIndex)
|
||||
return -1;
|
||||
else
|
||||
return sMonSummaryScreen->curMonIndex + delta;
|
||||
}
|
||||
else
|
||||
{
|
||||
s8 index = sMonSummaryScreen->curMonIndex;
|
||||
|
||||
do
|
||||
{
|
||||
index += delta;
|
||||
if (index < 0 || index > sMonSummaryScreen->maxMonIndex)
|
||||
return -1;
|
||||
} while (GetMonData(&mon[index], MON_DATA_IS_EGG));
|
||||
return index;
|
||||
}
|
||||
}
|
||||
|
||||
static s8 AdvanceMultiBattleMonIndex(s8 delta)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user