Merge pull request #69 from rh-hideout/master

expansion 1.13 update
This commit is contained in:
RoamerX 2025-09-02 23:16:46 +08:00 committed by GitHub
commit 60ba6858f9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 184 additions and 35 deletions

View File

@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- 1.13.0 (Latest release)
- 1.13.1 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
- 1.13.0
- 1.12.3
- 1.12.2
- 1.12.1

View File

@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- 1.13.0 (Latest release)
- 1.13.1 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
- 1.13.0
- 1.12.3
- 1.12.2
- 1.12.1

View File

@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- 1.13.0 (Latest release)
- 1.13.1 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
- 1.13.0
- 1.12.3
- 1.12.2
- 1.12.1

View File

@ -17,7 +17,7 @@
If you use **`pokeemerald-expansion`**, please credit **RHH (Rom Hacking Hideout)**. Optionally, include the version number for clarity.
```
Based off RHH's pokeemerald-expansion 1.13.0 https://github.com/rh-hideout/pokeemerald-expansion/
Based off RHH's pokeemerald-expansion 1.13.1 https://github.com/rh-hideout/pokeemerald-expansion/
```
Please consider [crediting all contributors](CREDITS.md) involved in the project!

View File

@ -20,6 +20,7 @@
- [Day/Night System FAQ](tutorials/dns.md)
- [Changelog](./CHANGELOG.md)
- [1.13.x]()
- [Version 1.13.1](changelogs/1.13.x/1.13.1.md)
- [Version 1.13.0](changelogs/1.13.x/1.13.0.md)
- [1.12.x]()
- [Version 1.12.3](changelogs/1.12.x/1.12.3.md)

View File

@ -0,0 +1,44 @@
```md
## How to update
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
- Once you have your remote set up, run the command `git pull RHH expansion/1.13.1
`.
```
## 🧬 General 🧬
### Fixed
* Added sortType to Douse Drive by @fdeblasio in [#7664](https://github.com/rh-hideout/pokeemerald-expansion/pull/7664)
## 🐉 Pokémon 🐉
### Fixed
* Fixed disabled cross-evolutions still being possible by @AsparagusEduardo in [#7678](https://github.com/rh-hideout/pokeemerald-expansion/pull/7678)
## ⚔️ Battle General ⚔️
### Changed
* Replace boolean multiplications with ternaries by @hedara90 in [#7653](https://github.com/rh-hideout/pokeemerald-expansion/pull/7653)
## 🤖 Battle AI 🤖
### Fixed
* Helping Hand bugfix; used FOE instead of BATTLE_OPPOSITE. by @surskitty in [#7659](https://github.com/rh-hideout/pokeemerald-expansion/pull/7659)
## 🧹 Other Cleanup 🧹
* Replace boolean multiplications with ternaries by @hedara90 in [#7653](https://github.com/rh-hideout/pokeemerald-expansion/pull/7653)
* Fix Rage Fist test name by @AlexOn1ine in [#7681](https://github.com/rh-hideout/pokeemerald-expansion/pull/7681)
## 🧪 Test Runner 🧪
### Changed
* Fix Rage Fist test name by @AlexOn1ine in [#7681](https://github.com/rh-hideout/pokeemerald-expansion/pull/7681)
### Fixed
* Fix crashing tests duplicating tests from another thread by @hedara90 in [#7683](https://github.com/rh-hideout/pokeemerald-expansion/pull/7683)
## 📚 Documentation 📚
* Update README.md by @Bassoonian in [#7639](https://github.com/rh-hideout/pokeemerald-expansion/pull/7639)
**Full Changelog**: https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.13.0...expansion/1.13.1
<!--Last PR: 7678-->
<!--Used to keep track of the last PR merged in case new ones come in before the changelog is done.-->

View File

@ -1,10 +1,10 @@
#ifndef GUARD_CONSTANTS_EXPANSION_H
#define GUARD_CONSTANTS_EXPANSION_H
// Last version: 1.13.0
// Last version: 1.13.1
#define EXPANSION_VERSION_MAJOR 1
#define EXPANSION_VERSION_MINOR 13
#define EXPANSION_VERSION_PATCH 1
#define EXPANSION_VERSION_PATCH 2
// FALSE if this this version of Expansion is not a tagged commit, i.e.
// it contains unreleased changes.

View File

@ -5661,7 +5661,9 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sGolbatLevelUpLearnset,
.teachableLearnset = sGolbatTeachableLearnset,
#if P_GEN_2_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_CROBAT, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD})}),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -5907,8 +5909,11 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sGloomLevelUpLearnset,
.teachableLearnset = sGloomTeachableLearnset,
.evolutions = EVOLUTION({EVO_ITEM, ITEM_LEAF_STONE, SPECIES_VILEPLUME},
{EVO_ITEM, ITEM_SUN_STONE, SPECIES_BELLOSSOM}),
.evolutions = EVOLUTION({EVO_ITEM, ITEM_LEAF_STONE, SPECIES_VILEPLUME}
#if P_GEN_2_CROSS_EVOS
,{EVO_ITEM, ITEM_SUN_STONE, SPECIES_BELLOSSOM}
#endif
),
},
[SPECIES_VILEPLUME] =
@ -7485,7 +7490,9 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sPrimeapeLevelUpLearnset,
.teachableLearnset = sPrimeapeTeachableLearnset,
#if P_GEN_9_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_ANNIHILAPE, CONDITIONS({IF_USED_MOVE_X_TIMES, MOVE_RAGE_FIST, 20})}),
#endif
},
#if P_GEN_9_CROSS_EVOS
@ -7965,9 +7972,12 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sPoliwhirlLevelUpLearnset,
.teachableLearnset = sPoliwhirlTeachableLearnset,
.evolutions = EVOLUTION({EVO_ITEM, ITEM_WATER_STONE, SPECIES_POLIWRATH},
{EVO_TRADE, 0, SPECIES_POLITOED, CONDITIONS({IF_HOLD_ITEM, ITEM_KINGS_ROCK})},
{EVO_ITEM, ITEM_KINGS_ROCK, SPECIES_POLITOED}),
.evolutions = EVOLUTION({EVO_ITEM, ITEM_WATER_STONE, SPECIES_POLIWRATH}
#if P_GEN_2_CROSS_EVOS
,{EVO_TRADE, 0, SPECIES_POLITOED, CONDITIONS({IF_HOLD_ITEM, ITEM_KINGS_ROCK})},
{EVO_ITEM, ITEM_KINGS_ROCK, SPECIES_POLITOED}
#endif
),
},
[SPECIES_POLIWRATH] =
@ -9914,9 +9924,12 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.teachableLearnset = sSlowpokeTeachableLearnset,
.eggMoveLearnset = sSlowpokeEggMoveLearnset,
.formSpeciesIdTable = sSlowpokeFormSpeciesIdTable,
.evolutions = EVOLUTION({EVO_LEVEL, 37, SPECIES_SLOWBRO},
{EVO_TRADE, 0, SPECIES_SLOWKING, CONDITIONS({IF_HOLD_ITEM, ITEM_KINGS_ROCK})},
{EVO_ITEM, ITEM_KINGS_ROCK, SPECIES_SLOWKING}),
.evolutions = EVOLUTION({EVO_LEVEL, 37, SPECIES_SLOWBRO}
#if P_GEN_2_CROSS_EVOS
,{EVO_TRADE, 0, SPECIES_SLOWKING, CONDITIONS({IF_HOLD_ITEM, ITEM_KINGS_ROCK})},
{EVO_ITEM, ITEM_KINGS_ROCK, SPECIES_SLOWKING}
#endif
),
},
[SPECIES_SLOWBRO] =
@ -10191,8 +10204,11 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.teachableLearnset = sSlowpokeGalarTeachableLearnset,
.eggMoveLearnset = sSlowpokeGalarEggMoveLearnset,
.formSpeciesIdTable = sSlowpokeFormSpeciesIdTable,
.evolutions = EVOLUTION({EVO_ITEM, ITEM_GALARICA_CUFF, SPECIES_SLOWBRO_GALAR},
{EVO_ITEM, ITEM_GALARICA_WREATH, SPECIES_SLOWKING_GALAR}),
.evolutions = EVOLUTION({EVO_ITEM, ITEM_GALARICA_CUFF, SPECIES_SLOWBRO_GALAR}
#if P_GEN_2_CROSS_EVOS
,{EVO_ITEM, ITEM_GALARICA_WREATH, SPECIES_SLOWKING_GALAR}
#endif
),
},
[SPECIES_SLOWBRO_GALAR] =
@ -10468,8 +10484,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sMagnetonLevelUpLearnset,
.teachableLearnset = sMagnetonTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_MAGNEZONE, CONDITIONS({IF_IN_MAPSEC, MAPSEC_NEW_MAUVILLE})},
{EVO_ITEM, ITEM_THUNDER_STONE, SPECIES_MAGNEZONE}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -11941,8 +11959,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sOnixLevelUpLearnset,
.teachableLearnset = sOnixTeachableLearnset,
.eggMoveLearnset = sOnixEggMoveLearnset,
#if P_GEN_2_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_STEELIX, CONDITIONS({IF_HOLD_ITEM, ITEM_METAL_COAT})},
{EVO_ITEM, ITEM_METAL_COAT, SPECIES_STEELIX}),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -13616,7 +13636,9 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sLickitungLevelUpLearnset,
.teachableLearnset = sLickitungTeachableLearnset,
.eggMoveLearnset = sLickitungEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_LICKILICKY, CONDITIONS({IF_KNOWS_MOVE, MOVE_ROLLOUT})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -14076,8 +14098,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sRhydonLevelUpLearnset,
.teachableLearnset = sRhydonTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_RHYPERIOR, CONDITIONS({IF_HOLD_ITEM, ITEM_PROTECTOR})},
{EVO_ITEM, ITEM_PROTECTOR, SPECIES_RHYPERIOR}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -14308,7 +14332,9 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sChanseyLevelUpLearnset,
.teachableLearnset = sChanseyTeachableLearnset,
.eggMoveLearnset = sChanseyEggMoveLearnset,
#if P_GEN_2_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_BLISSEY, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD})}),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -14451,7 +14477,9 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sTangelaLevelUpLearnset,
.teachableLearnset = sTangelaTeachableLearnset,
.eggMoveLearnset = sTangelaEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_TANGROWTH, CONDITIONS({IF_KNOWS_MOVE, MOVE_ANCIENT_POWER})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -14827,8 +14855,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sSeadraLevelUpLearnset,
.teachableLearnset = sSeadraTeachableLearnset,
#if P_GEN_2_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_KINGDRA, CONDITIONS({IF_HOLD_ITEM, ITEM_DRAGON_SCALE})},
{EVO_ITEM, ITEM_DRAGON_SCALE, SPECIES_KINGDRA}),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -15603,9 +15633,20 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sScytherLevelUpLearnset,
.teachableLearnset = sScytherTeachableLearnset,
.eggMoveLearnset = sScytherEggMoveLearnset,
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_SCIZOR, CONDITIONS({IF_HOLD_ITEM, ITEM_METAL_COAT})},
{EVO_ITEM, ITEM_BLACK_AUGURITE, SPECIES_KLEAVOR},
{EVO_ITEM, ITEM_METAL_COAT, SPECIES_SCIZOR}),
#if P_GEN_2_CROSS_EVOS || P_GEN_8_CROSS_EVOS
.evolutions = EVOLUTION(
#if P_GEN_2_CROSS_EVOS
{EVO_TRADE, 0, SPECIES_SCIZOR, CONDITIONS({IF_HOLD_ITEM, ITEM_METAL_COAT})},
{EVO_ITEM, ITEM_METAL_COAT, SPECIES_SCIZOR}
#if P_GEN_8_CROSS_EVOS
,
#endif
#endif
#if P_GEN_8_CROSS_EVOS
{EVO_ITEM, ITEM_BLACK_AUGURITE, SPECIES_KLEAVOR}
#endif
),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -16115,8 +16156,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sElectabuzzLevelUpLearnset,
.teachableLearnset = sElectabuzzTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_ELECTIVIRE, CONDITIONS({IF_HOLD_ITEM, ITEM_ELECTIRIZER})},
{EVO_ITEM, ITEM_ELECTIRIZER, SPECIES_ELECTIVIRE}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -16331,8 +16374,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sMagmarLevelUpLearnset,
.teachableLearnset = sMagmarTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_MAGMORTAR, CONDITIONS({IF_HOLD_ITEM, ITEM_MAGMARIZER})},
{EVO_ITEM, ITEM_MAGMARIZER, SPECIES_MAGMORTAR}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -17356,14 +17401,21 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.formChangeTable = sEeveeFormChangeTable,
.evolutions = EVOLUTION({EVO_ITEM, ITEM_THUNDER_STONE, SPECIES_JOLTEON},
{EVO_ITEM, ITEM_WATER_STONE, SPECIES_VAPOREON},
{EVO_ITEM, ITEM_FIRE_STONE, SPECIES_FLAREON},
{EVO_LEVEL, 0, SPECIES_SYLVEON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_KNOWS_MOVE_TYPE, TYPE_FAIRY})},
{EVO_LEVEL, 0, SPECIES_ESPEON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_NOT_TIME, TIME_NIGHT})},
{EVO_LEVEL, 0, SPECIES_UMBREON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_TIME, TIME_NIGHT})},
{EVO_LEVEL, 0, SPECIES_LEAFEON, CONDITIONS({IF_IN_MAP, MAP_PETALBURG_WOODS})},
{EVO_ITEM, ITEM_FIRE_STONE, SPECIES_FLAREON}
#if P_GEN_6_CROSS_EVOS
,{EVO_LEVEL, 0, SPECIES_SYLVEON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_KNOWS_MOVE_TYPE, TYPE_FAIRY})}
#endif
#if P_GEN_2_CROSS_EVOS
,{EVO_LEVEL, 0, SPECIES_ESPEON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_NOT_TIME, TIME_NIGHT})},
{EVO_LEVEL, 0, SPECIES_UMBREON, CONDITIONS({IF_MIN_FRIENDSHIP, FRIENDSHIP_EVO_THRESHOLD}, {IF_TIME, TIME_NIGHT})}
#endif
#if P_GEN_4_CROSS_EVOS
,{EVO_LEVEL, 0, SPECIES_LEAFEON, CONDITIONS({IF_IN_MAP, MAP_PETALBURG_WOODS})},
{EVO_ITEM, ITEM_LEAF_STONE, SPECIES_LEAFEON},
{EVO_LEVEL, 0, SPECIES_GLACEON, CONDITIONS({IF_IN_MAP, MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM})},
{EVO_ITEM, ITEM_ICE_STONE, SPECIES_GLACEON}),
{EVO_ITEM, ITEM_ICE_STONE, SPECIES_GLACEON}
#endif
),
},
#if P_GIGANTAMAX_FORMS
@ -18102,8 +18154,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sPorygonLevelUpLearnset,
.teachableLearnset = sPorygonTeachableLearnset,
#if P_GEN_2_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_PORYGON2, CONDITIONS({IF_HOLD_ITEM, ITEM_UPGRADE})},
{EVO_ITEM, ITEM_UPGRADE, SPECIES_PORYGON2}),
#endif
},
#if P_GEN_2_CROSS_EVOS
@ -18178,8 +18232,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
)
.levelUpLearnset = sPorygon2LevelUpLearnset,
.teachableLearnset = sPorygon2TeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_PORYGON_Z, CONDITIONS({IF_HOLD_ITEM, ITEM_DUBIOUS_DISC})},
{EVO_ITEM, ITEM_DUBIOUS_DISC, SPECIES_PORYGON_Z}),
#endif
},
#if P_GEN_4_CROSS_EVOS

View File

@ -1590,7 +1590,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
)
.levelUpLearnset = sTogeticLevelUpLearnset,
.teachableLearnset = sTogeticTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_SHINY_STONE, SPECIES_TOGEKISS}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -2817,7 +2819,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sAipomLevelUpLearnset,
.teachableLearnset = sAipomTeachableLearnset,
.eggMoveLearnset = sAipomEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_AMBIPOM, CONDITIONS({IF_KNOWS_MOVE, MOVE_DOUBLE_HIT})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -3135,7 +3139,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sYanmaLevelUpLearnset,
.teachableLearnset = sYanmaTeachableLearnset,
.eggMoveLearnset = sYanmaEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_YANMEGA, CONDITIONS({IF_KNOWS_MOVE, MOVE_ANCIENT_POWER})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -3607,7 +3613,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sMurkrowLevelUpLearnset,
.teachableLearnset = sMurkrowTeachableLearnset,
.eggMoveLearnset = sMurkrowEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_DUSK_STONE, SPECIES_HONCHKROW}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -3754,7 +3762,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sMisdreavusLevelUpLearnset,
.teachableLearnset = sMisdreavusTeachableLearnset,
.eggMoveLearnset = sMisdreavusEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_DUSK_STONE, SPECIES_MISMAGIUS}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -4169,7 +4179,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sGirafarigLevelUpLearnset,
.teachableLearnset = sGirafarigTeachableLearnset,
.eggMoveLearnset = sGirafarigEggMoveLearnset,
#if P_GEN_9_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_FARIGIRAF, CONDITIONS({IF_KNOWS_MOVE, MOVE_TWIN_BEAM})}),
#endif
},
#if P_GEN_9_CROSS_EVOS
@ -4452,8 +4464,10 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sDunsparceLevelUpLearnset,
.teachableLearnset = sDunsparceTeachableLearnset,
.eggMoveLearnset = sDunsparceEggMoveLearnset,
#if P_GEN_9_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_DUDUNSPARCE_TWO_SEGMENT, CONDITIONS({IF_KNOWS_MOVE, MOVE_HYPER_DRILL}, {IF_PID_MODULO_100_GT, 0})},
{EVO_LEVEL, 0, SPECIES_DUDUNSPARCE_THREE_SEGMENT, CONDITIONS({IF_KNOWS_MOVE, MOVE_HYPER_DRILL}, {IF_PID_MODULO_100_EQ, 0})}),
#endif
},
#if P_GEN_9_CROSS_EVOS
@ -4663,8 +4677,10 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sGligarLevelUpLearnset,
.teachableLearnset = sGligarTeachableLearnset,
.eggMoveLearnset = sGligarEggMoveLearnset,
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_GLISCOR, CONDITIONS({IF_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_FANG})},
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_GLISCOR, CONDITIONS({IF_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_FANG})},
{EVO_ITEM, ITEM_RAZOR_FANG, SPECIES_GLISCOR, CONDITIONS({IF_TIME, TIME_NIGHT})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -5415,8 +5431,10 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.teachableLearnset = sSneaselTeachableLearnset,
.eggMoveLearnset = sSneaselEggMoveLearnset,
.formSpeciesIdTable = sSneaselFormSpeciesIdTable,
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_WEAVILE, CONDITIONS({IF_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_CLAW})},
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_WEAVILE, CONDITIONS({IF_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_CLAW})},
{EVO_ITEM, ITEM_RAZOR_CLAW, SPECIES_WEAVILE, CONDITIONS({IF_TIME, TIME_NIGHT})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -5579,7 +5597,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sSneaselHisuiLevelUpLearnset,
.teachableLearnset = sSneaselHisuiTeachableLearnset,
.formSpeciesIdTable = sSneaselFormSpeciesIdTable,
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_SNEASLER, CONDITIONS({IF_NOT_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_CLAW})},
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_SNEASLER, CONDITIONS({IF_NOT_TIME, TIME_NIGHT}, {IF_HOLD_ITEM, ITEM_RAZOR_CLAW})},
{EVO_ITEM, ITEM_RAZOR_CLAW, SPECIES_SNEASLER, CONDITIONS({IF_NOT_TIME, TIME_NIGHT})}),
},
@ -5800,8 +5818,10 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
)
.levelUpLearnset = sUrsaringLevelUpLearnset,
.teachableLearnset = sUrsaringTeachableLearnset,
#if P_GEN_8_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_PEAT_BLOCK, SPECIES_URSALUNA, CONDITIONS({IF_TIME, TIME_NIGHT})},
{EVO_NONE, 0, SPECIES_URSALUNA_BLOODMOON}),
#endif
},
#if P_GEN_8_CROSS_EVOS
@ -6228,7 +6248,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
)
.levelUpLearnset = sPiloswineLevelUpLearnset,
.teachableLearnset = sPiloswineTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_MAMOSWINE, CONDITIONS({IF_KNOWS_MOVE, MOVE_ANCIENT_POWER})}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -7413,7 +7435,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.levelUpLearnset = sStantlerLevelUpLearnset,
.teachableLearnset = sStantlerTeachableLearnset,
.eggMoveLearnset = sStantlerEggMoveLearnset,
#if P_GEN_8_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_WYRDEER, CONDITIONS({IF_USED_MOVE_X_TIMES, MOVE_PSYSHIELD_BASH, 20})}),
#endif
},
#if P_GEN_8_CROSS_EVOS

View File

@ -2754,8 +2754,11 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
)
.levelUpLearnset = sKirliaLevelUpLearnset,
.teachableLearnset = sKirliaTeachableLearnset,
.evolutions = EVOLUTION({EVO_LEVEL, 30, SPECIES_GARDEVOIR},
{EVO_ITEM, ITEM_DAWN_STONE, SPECIES_GALLADE, CONDITIONS({IF_GENDER, MON_MALE})}),
.evolutions = EVOLUTION({EVO_LEVEL, 30, SPECIES_GARDEVOIR}
#if P_GEN_4_CROSS_EVOS
,{EVO_ITEM, ITEM_DAWN_STONE, SPECIES_GALLADE, CONDITIONS({IF_GENDER, MON_MALE})}
#endif
),
},
[SPECIES_GARDEVOIR] =
@ -4240,8 +4243,10 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
.levelUpLearnset = sNosepassLevelUpLearnset,
.teachableLearnset = sNosepassTeachableLearnset,
.eggMoveLearnset = sNosepassEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_PROBOPASS, CONDITIONS({IF_IN_MAPSEC, MAPSEC_NEW_MAUVILLE})},
{EVO_ITEM, ITEM_THUNDER_STONE, SPECIES_PROBOPASS}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -5967,7 +5972,9 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
.levelUpLearnset = sRoseliaLevelUpLearnset,
.teachableLearnset = sRoseliaTeachableLearnset,
.eggMoveLearnset = sRoseliaEggMoveLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_SHINY_STONE, SPECIES_ROSERADE}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -9738,8 +9745,10 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
)
.levelUpLearnset = sDusclopsLevelUpLearnset,
.teachableLearnset = sDusclopsTeachableLearnset,
#if P_GEN_4_CROSS_EVOS
.evolutions = EVOLUTION({EVO_TRADE, 0, SPECIES_DUSKNOIR, CONDITIONS({IF_HOLD_ITEM, ITEM_REAPER_CLOTH})},
{EVO_ITEM, ITEM_REAPER_CLOTH, SPECIES_DUSKNOIR}),
#endif
},
#if P_GEN_4_CROSS_EVOS
@ -10290,8 +10299,11 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
.levelUpLearnset = sSnoruntLevelUpLearnset,
.teachableLearnset = sSnoruntTeachableLearnset,
.eggMoveLearnset = sSnoruntEggMoveLearnset,
.evolutions = EVOLUTION({EVO_LEVEL, 42, SPECIES_GLALIE},
{EVO_ITEM, ITEM_DAWN_STONE, SPECIES_FROSLASS, CONDITIONS({IF_GENDER, MON_FEMALE})}),
.evolutions = EVOLUTION({EVO_LEVEL, 42, SPECIES_GLALIE}
#if P_GEN_4_CROSS_EVOS
,{EVO_ITEM, ITEM_DAWN_STONE, SPECIES_FROSLASS, CONDITIONS({IF_GENDER, MON_FEMALE})}
#endif
),
},
[SPECIES_GLALIE] =

View File

@ -10923,7 +10923,9 @@ const struct SpeciesInfo gSpeciesInfoGen5[] =
)
.levelUpLearnset = sBisharpLevelUpLearnset,
.teachableLearnset = sBisharpTeachableLearnset,
#if P_GEN_9_CROSS_EVOS
.evolutions = EVOLUTION({EVO_LEVEL, 0, SPECIES_KINGAMBIT, CONDITIONS({IF_DEFEAT_X_WITH_ITEMS, SPECIES_BISHARP, ITEM_LEADERS_CREST, 3})}),
#endif
},
#if P_GEN_9_CROSS_EVOS

View File

@ -2431,8 +2431,11 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.teachableLearnset = sApplinTeachableLearnset,
.eggMoveLearnset = sApplinEggMoveLearnset,
.evolutions = EVOLUTION({EVO_ITEM, ITEM_TART_APPLE, SPECIES_FLAPPLE},
{EVO_ITEM, ITEM_SWEET_APPLE, SPECIES_APPLETUN},
{EVO_ITEM, ITEM_SYRUPY_APPLE, SPECIES_DIPPLIN}),
{EVO_ITEM, ITEM_SWEET_APPLE, SPECIES_APPLETUN}
#if P_GEN_9_CROSS_EVOS
,{EVO_ITEM, ITEM_SYRUPY_APPLE, SPECIES_DIPPLIN}
#endif
),
},
[SPECIES_FLAPPLE] =
@ -6329,7 +6332,9 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.eggMoveLearnset = sDuraludonEggMoveLearnset,
.formSpeciesIdTable = sDuraludonFormSpeciesIdTable,
.formChangeTable = sDuraludonFormChangeTable,
#if P_GEN_9_CROSS_EVOS
.evolutions = EVOLUTION({EVO_ITEM, ITEM_METAL_ALLOY, SPECIES_ARCHALUDON}),
#endif
},
#if P_GIGANTAMAX_FORMS

View File

@ -343,7 +343,7 @@ SINGLE_BATTLE_TEST("Rage Fist doesn't get increased power if Substitute is hit")
}
}
SINGLE_BATTLE_TEST("Rage Fist - X")
SINGLE_BATTLE_TEST("Rage Fist counter will be updated correctly after absorb move")
{
s16 timesGotHit[2];

View File

@ -235,6 +235,8 @@ top:
}
else
{
// Cost must be assigned to the test that crashed, otherwise tests will be desynched
AssignCostToRunner();
gTestRunnerState.state = STATE_REPORT_RESULT;
gTestRunnerState.result = TEST_RESULT_CRASH;
}