McPaul
On my way to become a controversial and hated memb
- 289
- Posts
- 7
- Years
- He/ Him
- Switzerland
- Seen Apr 20, 2025
I think you should focus your attention on src/pokemon_menu.c, more specifically this function:The code that seems to deal with adding "CUT" or "SURF" or whatever to that list seems to be this part:Spoiler:Code:static void sub_8089A8C(void) { sPokeMenuOptionsNo = 0; // if checking pokemon is an egg, we can't give it an item and it doesn't know any move if (GetMonData(&gPlayerParty[gLastFieldPokeMenuOpened], MON_DATA_IS_EGG)) { AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_SUMMARY); AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_SWITCH); AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_CANCEL); } else { u16 moveID, tableID; for (moveID = 0; moveID < 4; moveID++) // 4, max number of possible field moves { for (tableID = 0; sPokeMenuFieldMoves[tableID] != sFieldMovesTerminator; tableID++) { if (GetMonData(&gPlayerParty[gLastFieldPokeMenuOpened], MON_DATA_MOVE1 + moveID) == sPokeMenuFieldMoves[tableID]) { u8 fieldID = tableID + POKEMENU_FIRST_FIELD_MOVE_ID; AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, fieldID); break; } } } AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_SUMMARY); // can't switch a pokemon if it's the only one in the party if (GetMonData(&gPlayerParty[1], MON_DATA_SPECIES) != 0) AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_SWITCH); if (ItemIsMail(GetMonData(&gPlayerParty[gLastFieldPokeMenuOpened], MON_DATA_HELD_ITEM))) AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_MAIL); else AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_ITEM); AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, POKEMENU_CANCEL); } }
Code:u16 moveID, tableID; for (moveID = 0; moveID < 4; moveID++) // 4, max number of possible field moves { for (tableID = 0; sPokeMenuFieldMoves[tableID] != sFieldMovesTerminator; tableID++) { if (GetMonData(&gPlayerParty[gLastFieldPokeMenuOpened], MON_DATA_MOVE1 + moveID) == sPokeMenuFieldMoves[tableID]) { u8 fieldID = tableID + POKEMENU_FIRST_FIELD_MOVE_ID; AppendToList(sPokeMenuOptionsOrder, &sPokeMenuOptionsNo, fieldID); break; } } }
Ok thank you very much! I'll study that and see if I'm able to reach an outcome. I'm currently working on adding Egg Moves at the Move Relearner.