mirror of
https://github.com/pret/pokeemerald.git
synced 2026-09-11 12:37:14 -05:00
added "evolve by level with dark type in party"
@@ -4,6 +4,7 @@
|
||||
* 7th June - EVO_LEVEL_RAIN
|
||||
* 17th June - EVO_LEVEL_NATURE_AMPED & EVO_LEVEL_NATURE_LOW_KEY
|
||||
* 21st June - EVO_BY_ITEM_COUNT
|
||||
* 1st July - EVO_LEVEL_DARK_TYPE_IN_PARTY
|
||||
|
||||
> All of the methods in this guide are in [this branch](https://github.com/tenaya15/tenaya15emerald/tree/new_evo_methods) | ([compare here](https://github.com/pret/pokeemerald/compare/master...tenaya15:tenaya15emerald:new_evo_methods))
|
||||
```
|
||||
@@ -12,7 +13,7 @@ git pull tenaya15 master
|
||||
```
|
||||
__________
|
||||
> -- part of the methods in this guide comes from [The Law's PokeCommunity post](https://www.pokecommunity.com/threads/custom-evolution-methods.417505/)
|
||||
> -- most of this code is from other opensource hacks, namely: `pokeemerald-expansion`, `Modern Emerald`, `pokemonHNS`, `pokemonROWE`, `scrambled-emerald`
|
||||
> -- most of this code is from other opensource hacks, namely: `pokeemerald-expansion`, `Modern Emerald`, `pokemonHNS`, `pokemonROWE`, `scrambled-emerald`, `emerald++`
|
||||
> -- for scripted evolution, see [Anon822's PokeCommunity post](https://www.pokecommunity.com/threads/simple-modifications-directory.416647/page-21#post-10552961)
|
||||
> (example: Eevee evolves into Leafeon when you interact with a Moss Stone object in Petalburg Woods)
|
||||
> -- for AsparagusEduardo's Branched Alolan Evolution, see [here]( https://github.com/pret/pokeemerald/wiki/Branched-Alolan-Evolution) or [exact commit here](https://github.com/AsparagusEduardo/pokeemerald/commit/21bc0d281f1a7139bd4cf8722bf9932adebf07e7)
|
||||
@@ -122,7 +123,7 @@ in evolution method section, add after `#define EVO_BEAUTY`
|
||||
#define EVO_LEVEL_NATURE_AMPED 39 // reach specific level with nature
|
||||
#define EVO_LEVEL_NATURE_LOW_KEY 40 // reach specific level with nature
|
||||
#define EVO_BY_ITEM_COUNT 41 // level up and have number of specific items in bag, items then removed, DEFINE_ITEM_COUNT_FOR_EVO must be defined in src/pokemon.c
|
||||
|
||||
#define EVO_LEVEL_DARK_TYPE_IN_PARTY 42 // reach level with a dark type mon in party
|
||||
|
||||
// end of new evo methods
|
||||
|
||||
@@ -506,6 +507,21 @@ replace everything with:
|
||||
RemoveBagItem(gEvolutionTable[species][i].param, DEFINE_ITEM_COUNT_FOR_EVO);
|
||||
}
|
||||
break;
|
||||
case EVO_LEVEL_DARK_TYPE_IN_PARTY:
|
||||
if (gEvolutionTable[species][i].param <= level)
|
||||
{
|
||||
for (j = 0; j < PARTY_SIZE; j++)
|
||||
{
|
||||
u16 currSpecies = GetMonData(&gPlayerParty[j], MON_DATA_SPECIES, NULL);
|
||||
if (gSpeciesInfo[currSpecies].types[0] == TYPE_DARK
|
||||
|| gSpeciesInfo[currSpecies].types[1] == TYPE_DARK)
|
||||
{
|
||||
targetSpecies = gEvolutionTable[species][i].targetSpecies;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -640,6 +656,8 @@ example evolutions using the new methods
|
||||
|
||||
[SPECIES_GIMMIGHOUL] = {{EVO_BY_ITEM_COUNT, ITEM_GIMMIGHOUL_COIN, SPECIES_GHOLDENGO}},
|
||||
|
||||
[SPECIES_PANCHAM] = {{EVO_LEVEL, 32, SPECIES_PANGORO}},
|
||||
|
||||
***
|
||||
|
||||
### Edits
|
||||
@@ -799,3 +817,40 @@ in `src/data/pokemon/evolution.c` add the evolution
|
||||
example:
|
||||
[SPECIES_GIMMIGHOUL] = {{EVO_BY_ITEM_COUNT, ITEM_GIMMIGHOUL_COIN, SPECIES_GHOLDENGO}},
|
||||
```
|
||||
|
||||
|
||||
* 1st July 2026: Evolve by level while having Dark type Pokemon in party
|
||||
|
||||
in `include/constants/pokemon.h`
|
||||
add
|
||||
```
|
||||
#define EVO_LEVEL_DARK_TYPE_IN_PARTY 42 // reach level with a dark type mon in party
|
||||
```
|
||||
|
||||
in `src/pokemon.c`
|
||||
|
||||
in section `u16 GetEvolutionTargetSpecies`
|
||||
add to EVO_NORMAL section:
|
||||
```
|
||||
case EVO_LEVEL_DARK_TYPE_IN_PARTY:
|
||||
if (gEvolutionTable[species][i].param <= level)
|
||||
{
|
||||
for (j = 0; j < PARTY_SIZE; j++)
|
||||
{
|
||||
u16 currSpecies = GetMonData(&gPlayerParty[j], MON_DATA_SPECIES, NULL);
|
||||
if (gSpeciesInfo[currSpecies].types[0] == TYPE_DARK
|
||||
|| gSpeciesInfo[currSpecies].types[1] == TYPE_DARK)
|
||||
{
|
||||
targetSpecies = gEvolutionTable[species][i].targetSpecies;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
```
|
||||
|
||||
in `src/data/pokemon/evolution.c` add the evolution
|
||||
```
|
||||
example:
|
||||
[SPECIES_PANCHAM] = {{EVO_LEVEL, 32, SPECIES_PANGORO}},
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user