refactoring dex constants

This commit is contained in:
cawtds 2024-05-24 21:52:19 +02:00
parent a7e025d27c
commit 9256aaeff1
5 changed files with 19 additions and 16 deletions

View File

@ -1039,6 +1039,7 @@ enum {
NATIONAL_DEX_IRON_CROWN,
NATIONAL_DEX_TERAPAGOS,
NATIONAL_DEX_PECHARUNT,
NATIONAL_DEX_END
};
// Kanto Pokedex order
@ -1301,7 +1302,7 @@ enum {
KANTO_DEX_DRAGONITE,
KANTO_DEX_MEWTWO,
KANTO_DEX_MEW,
KANTO_DEX_COUNT
KANTO_DEX_END
};
// Hoenn Pokedex order
@ -1548,9 +1549,11 @@ enum {
HOENN_DEX_COUNT,
};
#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI
#define KANTO_DEX_START KANTO_DEX_BULBASAUR
#define KANTO_DEX_COUNT KANTO_DEX_MEW
#define JOHTO_DEX_COUNT NATIONAL_DEX_CELEBI
#define NATIONAL_DEX_START NATIONAL_DEX_BULBASAUR
#if P_GEN_9_POKEMON == TRUE
#define NATIONAL_DEX_COUNT NATIONAL_DEX_PECHARUNT
#elif P_GEN_8_POKEMON == TRUE

View File

@ -8263,27 +8263,27 @@
{
"min_level": 3,
"max_level": 3,
"species": "SPECIES_KLEFKI"
"species": "SPECIES_MEW"
},
{
"min_level": 3,
"max_level": 3,
"species": "SPECIES_KLEFKI"
"species": "SPECIES_MEW"
},
{
"min_level": 3,
"max_level": 3,
"species": "SPECIES_KLEFKI"
"species": "SPECIES_MEW"
},
{
"min_level": 3,
"max_level": 3,
"species": "SPECIES_KLEFKI"
"species": "SPECIES_MEW"
},
{
"min_level": 2,
"max_level": 2,
"species": "SPECIES_KLEFKI"
"species": "SPECIES_MEW"
},
{
"min_level": 2,

View File

@ -48,7 +48,7 @@ u16 GetKantoPokedexCount(u8 caseID)
u16 i;
u16 nationalNum;
for (i = 1; i < KANTO_DEX_COUNT; i++)
for (i = 1; i < KANTO_DEX_END; i++)
{
nationalNum = KantoToNationalOrder(i);
switch (caseID)
@ -84,9 +84,9 @@ bool16 HasAllKantoMons(void)
u16 i;
// -1 excludes Mew
for (i = 0; i < KANTO_DEX_COUNT - 1; i++)
for (i = KANTO_DEX_START; i < KANTO_DEX_END; i++)
{
if (!GetSetPokedexFlag(KantoToNationalOrder(i + 1), FLAG_GET_CAUGHT))
if (!GetSetPokedexFlag(KantoToNationalOrder(i), FLAG_GET_CAUGHT))
return FALSE;
}
return TRUE;

View File

@ -1389,7 +1389,7 @@ static u16 DexScreen_CountMonsInOrderedList(u8 orderIdx)
{
default:
case DEX_ORDER_NUMERICAL_KANTO:
for (i = 0; i < KANTO_DEX_COUNT - 1; i++)
for (i = 0; i < KANTO_DEX_COUNT; i++)
{
natDexNum = KantoToNationalOrder(i + 1);
seen = DexScreen_GetSetPokedexFlag(natDexNum, FLAG_GET_SEEN, FALSE);
@ -2309,7 +2309,7 @@ static u16 DexScreen_GetDexCount(u8 caseId, bool8 whichDex)
switch (whichDex)
{
case 0: // Kanto
for (i = 1; i < KANTO_DEX_COUNT; i++)
for (i = KANTO_DEX_START; i < KANTO_DEX_END; i++)
{
if (DexScreen_GetSetPokedexFlag(KantoToNationalOrder(i), caseId, FALSE))
count++;

View File

@ -82,7 +82,7 @@ static void RemoveIVIndexFromList(u8 *ivs, u8 selectedIv);
#define HOENN_TO_NATIONAL(name) [HOENN_DEX_##name - 1] = NATIONAL_DEX_##name
#define KANTO_TO_NATIONAL(name) [KANTO_DEX_##name] = NATIONAL_DEX_##name
static const u16 sKantoDexNumToNationalDexNum[KANTO_DEX_COUNT] =
static const u16 sKantoDexNumToNationalDexNum[KANTO_DEX_COUNT + 1] =
{
// Kanto
KANTO_TO_NATIONAL(BULBASAUR),
@ -4508,7 +4508,7 @@ u16 NationalToKantoOrder(u16 natDexNum)
return KANTO_DEX_NONE;
}
for (i = KANTO_DEX_BULBASAUR; i < KANTO_DEX_COUNT; i++)
for (i = KANTO_DEX_BULBASAUR; i < KANTO_DEX_END; i++)
{
if (sKantoDexNumToNationalDexNum[i] == natDexNum)
{
@ -4530,7 +4530,7 @@ bool32 IsSpeciesInKantoDex(u16 species)
u16 KantoToNationalOrder(u16 kantoNum)
{
if (KANTO_DEX_NONE < kantoNum && kantoNum < KANTO_DEX_COUNT)
if (KANTO_DEX_NONE < kantoNum && kantoNum < KANTO_DEX_END)
return sKantoDexNumToNationalDexNum[kantoNum];
return NATIONAL_DEX_NONE;
}