From 52011804b96fb57f12f2871721ead16dc5ff8baa Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Fri, 24 Mar 2023 09:36:33 -0300 Subject: [PATCH] Level command now also sets experience to avoid losing level upon form changes --- test/test_runner_battle.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/test_runner_battle.c b/test/test_runner_battle.c index ec7ba275c2..524525c132 100644 --- a/test/test_runner_battle.c +++ b/test/test_runner_battle.c @@ -933,9 +933,11 @@ void Ability_(u32 sourceLine, u32 ability) void Level_(u32 sourceLine, u32 level) { // TODO: Preserve any explicitly-set stats. + u32 species = GetMonData(DATA.currentMon, MON_DATA_SPECIES); INVALID_IF(!DATA.currentMon, "Level outside of PLAYER/OPPONENT"); INVALID_IF(level == 0 || level > MAX_LEVEL, "Illegal level: %d", level); SetMonData(DATA.currentMon, MON_DATA_LEVEL, &level); + SetMonData(DATA.currentMon, MON_DATA_EXP, &gExperienceTables[gSpeciesInfo[species].growthRate][level]); } void MaxHP_(u32 sourceLine, u32 maxHP)