recursive printing of evolutions aka now shows all follow up evolutions aswell, even complexer lines like Wurmple

This commit is contained in:
TheXaman 2021-07-11 11:49:57 +02:00
parent c9d902d722
commit 9a5c196cd0

View file

@ -364,7 +364,7 @@ static void Task_LoadEvolutionScreen(u8 taskId);
static void Task_HandleEvolutionScreenInput(u8 taskId); static void Task_HandleEvolutionScreenInput(u8 taskId);
static void Task_SwitchScreensFromEvolutionScreen(u8 taskId); static void Task_SwitchScreensFromEvolutionScreen(u8 taskId);
static void Task_ExitEvolutionScreen(u8 taskId); static void Task_ExitEvolutionScreen(u8 taskId);
static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species); static u8 PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species, u8 depth, u8 depth_i);
//Stat bars on scrolling screens //Stat bars on scrolling screens
static void TryDestroyStatBars(void); static void TryDestroyStatBars(void);
static void TryDestroyStatBarsBg(void); static void TryDestroyStatBarsBg(void);
@ -7401,7 +7401,7 @@ static void Task_LoadEvolutionScreen(u8 taskId)
case 4: case 4:
//Print evo info and icons //Print evo info and icons
gTasks[taskId].data[3] = 0; gTasks[taskId].data[3] = 0;
PrintEvolutionTargetSpeciesAndMethod(taskId, NationalPokedexNumToSpecies(sPokedexListItem->dexNum)); PrintEvolutionTargetSpeciesAndMethod(taskId, NationalPokedexNumToSpecies(sPokedexListItem->dexNum), 0, 0);
gMain.state++; gMain.state++;
break; break;
case 5: case 5:
@ -7526,7 +7526,7 @@ static void CreateCaughtBallEvolutionScreen(u16 targetSpecies, u8 x, u8 y, u16 u
} }
} }
#define EVO_SCREEN_LVL_DIGITS 2 #define EVO_SCREEN_LVL_DIGITS 2
static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species) static u8 PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species, u8 depth, u8 depth_i)
{ {
int i; int i;
#ifdef POKEMON_EXPANSION #ifdef POKEMON_EXPANSION
@ -7544,6 +7544,7 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species)
u8 base_y_offset = 9; u8 base_y_offset = 9;
u8 base_i = 0; u8 base_i = 0;
u8 times = 0; u8 times = 0;
u8 depth_x = 16;
StringCopy(gStringVar1, gSpeciesNames[species]); StringCopy(gStringVar1, gSpeciesNames[species]);
@ -7562,7 +7563,7 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species)
gTasks[taskId].data[3] = times; gTasks[taskId].data[3] = times;
//If there are no evolutions print text //If there are no evolutions print text
if (times == 0) if (times == 0 && depth == 0)
{ {
StringExpandPlaceholders(gStringVar4, gText_EVO_NONE); StringExpandPlaceholders(gStringVar4, gText_EVO_NONE);
PrintInfoScreenTextSmall(gStringVar4, base_x-7, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x-7, base_y + base_y_offset*base_i);
@ -7571,273 +7572,277 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, u16 species)
//If there are evolutions find out which and print them 1 by 1 //If there are evolutions find out which and print them 1 by 1
for (i = 0; i < times; i++) for (i = 0; i < times; i++)
{ {
base_i = i; base_i = i + depth_i;
left = !left; left = !left;
switch (gEvolutionTable[species][i].method) switch (gEvolutionTable[species][i].method)
{ {
case EVO_FRIENDSHIP: case EVO_FRIENDSHIP:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
ConvertIntToDecimalStringN(gStringVar2, 220, STR_CONV_MODE_LEADING_ZEROS, 3); //friendship value ConvertIntToDecimalStringN(gStringVar2, 220, STR_CONV_MODE_LEADING_ZEROS, 3); //friendship value
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP ); StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_FRIENDSHIP_DAY: case EVO_FRIENDSHIP_DAY:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP_DAY ); StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP_DAY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_FRIENDSHIP_NIGHT: case EVO_FRIENDSHIP_NIGHT:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP_NIGHT ); StringExpandPlaceholders(gStringVar4, gText_EVO_FRIENDSHIP_NIGHT );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL: case EVO_LEVEL:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_TRADE: case EVO_TRADE:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE ); StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_TRADE_ITEM: case EVO_TRADE_ITEM:
item = gEvolutionTable[species][i].param; //item item = gEvolutionTable[species][i].param; //item
CopyItemName(item, gStringVar2); //item CopyItemName(item, gStringVar2); //item
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE_ITEM ); StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE_ITEM );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_ITEM: case EVO_ITEM:
item = gEvolutionTable[species][i].param; item = gEvolutionTable[species][i].param;
CopyItemName(item, gStringVar2); CopyItemName(item, gStringVar2);
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM ); StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_ATK_GT_DEF: case EVO_LEVEL_ATK_GT_DEF:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_GT_DEF ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_GT_DEF );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_ATK_EQ_DEF: case EVO_LEVEL_ATK_EQ_DEF:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_EQ_DEF ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_EQ_DEF );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_ATK_LT_DEF: case EVO_LEVEL_ATK_LT_DEF:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon namee handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon namee
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_LT_DEF ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_ATK_LT_DEF );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_SILCOON: case EVO_LEVEL_SILCOON:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_SILCOON ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_SILCOON );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_CASCOON: case EVO_LEVEL_CASCOON:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_CASCOON ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_CASCOON );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_NINJASK: case EVO_LEVEL_NINJASK:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_NINJASK ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_NINJASK );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_SHEDINJA: case EVO_LEVEL_SHEDINJA:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_SHEDINJA ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_SHEDINJA );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_BEAUTY: case EVO_BEAUTY:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, 3); //beauty ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, 3); //beauty
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_BEAUTY ); StringExpandPlaceholders(gStringVar4, gText_EVO_BEAUTY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
#ifdef POKEMON_EXPANSION #ifdef POKEMON_EXPANSION
case EVO_LEVEL_FEMALE: case EVO_LEVEL_FEMALE:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_FEMALE ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_FEMALE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_MALE: case EVO_LEVEL_MALE:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_MALE ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_MALE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_NIGHT: case EVO_LEVEL_NIGHT:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_NIGHT ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_NIGHT );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_DAY: case EVO_LEVEL_DAY:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DAY ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DAY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_DUSK: case EVO_LEVEL_DUSK:
ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level ConvertIntToDecimalStringN(gStringVar2, gEvolutionTable[species][i].param, STR_CONV_MODE_LEADING_ZEROS, EVO_SCREEN_LVL_DIGITS); //level
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DUSK ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DUSK );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_ITEM_HOLD_DAY: case EVO_ITEM_HOLD_DAY:
item = gEvolutionTable[species][i].param; //item item = gEvolutionTable[species][i].param; //item
CopyItemName(item, gStringVar2); //item CopyItemName(item, gStringVar2); //item
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_HOLD_DAY ); StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_HOLD_DAY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_ITEM_HOLD_NIGHT: case EVO_ITEM_HOLD_NIGHT:
item = gEvolutionTable[species][i].param; //item item = gEvolutionTable[species][i].param; //item
CopyItemName(item, gStringVar2); //item CopyItemName(item, gStringVar2); //item
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_HOLD_NIGHT ); StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_HOLD_NIGHT );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_MOVE: case EVO_MOVE:
StringCopy(gStringVar2, gMoveNames[gEvolutionTable[species][i].param]); StringCopy(gStringVar2, gMoveNames[gEvolutionTable[species][i].param]);
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_MOVE ); StringExpandPlaceholders(gStringVar4, gText_EVO_MOVE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_MOVE_TYPE: case EVO_MOVE_TYPE:
StringCopy(gStringVar2, gTypeNames[gEvolutionTable[species][i].param]); StringCopy(gStringVar2, gTypeNames[gEvolutionTable[species][i].param]);
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_MOVE_TYPE ); StringExpandPlaceholders(gStringVar4, gText_EVO_MOVE_TYPE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_MAPSEC: case EVO_MAPSEC:
StringCopy(gStringVar2, gRegionMapEntries[gEvolutionTable[species][i].param].name); StringCopy(gStringVar2, gRegionMapEntries[gEvolutionTable[species][i].param].name);
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_MAPSEC ); StringExpandPlaceholders(gStringVar4, gText_EVO_MAPSEC );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_ITEM_MALE: case EVO_ITEM_MALE:
item = gEvolutionTable[species][i].param; //item item = gEvolutionTable[species][i].param; //item
CopyItemName(item, gStringVar2); //item CopyItemName(item, gStringVar2); //item
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_MALE ); StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_MALE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_ITEM_FEMALE: case EVO_ITEM_FEMALE:
item = gEvolutionTable[species][i].param; //item item = gEvolutionTable[species][i].param; //item
CopyItemName(item, gStringVar2); //item CopyItemName(item, gStringVar2); //item
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_FEMALE ); StringExpandPlaceholders(gStringVar4, gText_EVO_ITEM_FEMALE );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_RAIN: case EVO_LEVEL_RAIN:
//if (j == WEATHER_RAIN || j == WEATHER_RAIN_THUNDERSTORM || j == WEATHER_DOWNPOUR) //if (j == WEATHER_RAIN || j == WEATHER_RAIN_THUNDERSTORM || j == WEATHER_DOWNPOUR)
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_RAIN ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_RAIN );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_SPECIFIC_MON_IN_PARTY: case EVO_SPECIFIC_MON_IN_PARTY:
StringCopy(gStringVar2, gSpeciesNames[gEvolutionTable[species][i].param]); //mon name StringCopy(gStringVar2, gSpeciesNames[gEvolutionTable[species][i].param]); //mon name
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_SPECIFIC_MON_IN_PARTY ); StringExpandPlaceholders(gStringVar4, gText_EVO_SPECIFIC_MON_IN_PARTY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_LEVEL_DARK_TYPE_MON_IN_PARTY: case EVO_LEVEL_DARK_TYPE_MON_IN_PARTY:
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DARK_TYPE_MON_IN_PARTY ); StringExpandPlaceholders(gStringVar4, gText_EVO_LEVEL_DARK_TYPE_MON_IN_PARTY );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_TRADE_SPECIFIC_MON: case EVO_TRADE_SPECIFIC_MON:
StringCopy(gStringVar2, gSpeciesNames[gEvolutionTable[species][i].param]); //mon name StringCopy(gStringVar2, gSpeciesNames[gEvolutionTable[species][i].param]); //mon name
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE_SPECIFIC_MON ); StringExpandPlaceholders(gStringVar4, gText_EVO_TRADE_SPECIFIC_MON );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
case EVO_SPECIFIC_MAP: case EVO_SPECIFIC_MAP:
mapHeader = Overworld_GetMapHeaderByGroupAndId(gEvolutionTable[species][i].param >> 8, gEvolutionTable[species][i].param & 0xFF); mapHeader = Overworld_GetMapHeaderByGroupAndId(gEvolutionTable[species][i].param >> 8, gEvolutionTable[species][i].param & 0xFF);
GetMapName(gStringVar2, mapHeader->regionMapSectionId, 0); GetMapName(gStringVar2, mapHeader->regionMapSectionId, 0);
targetSpecies = gEvolutionTable[species][i].targetSpecies; targetSpecies = gEvolutionTable[species][i].targetSpecies;
CreateCaughtBallEvolutionScreen(targetSpecies, base_x-9, base_y + base_y_offset*base_i, 0); CreateCaughtBallEvolutionScreen(targetSpecies, base_x + depth_x*depth-9, base_y + base_y_offset*base_i, 0);
handleTargetSpeciesPrint(taskId, targetSpecies, base_x, base_y, base_y_offset, base_i); //evolution mon name handleTargetSpeciesPrint(taskId, targetSpecies, base_x + depth_x*depth, base_y, base_y_offset, base_i); //evolution mon name
StringExpandPlaceholders(gStringVar4, gText_EVO_SPECIFIC_MAP ); StringExpandPlaceholders(gStringVar4, gText_EVO_SPECIFIC_MAP );
PrintInfoScreenTextSmall(gStringVar4, base_x+base_x_offset, base_y + base_y_offset*base_i); PrintInfoScreenTextSmall(gStringVar4, base_x + depth_x*depth+base_x_offset, base_y + base_y_offset*base_i);
break; break;
#endif #endif
}//Switch end }//Switch end
depth_i += PrintEvolutionTargetSpeciesAndMethod(taskId, targetSpecies, depth+1, base_i+1);
}//For loop end }//For loop end
return times;
} }
static void Task_SwitchScreensFromEvolutionScreen(u8 taskId) static void Task_SwitchScreensFromEvolutionScreen(u8 taskId)
{ {