From d337a0cd86835aa99bc5bfa9b43c08e0eb74276e Mon Sep 17 00:00:00 2001 From: Scyrous <74797764+Scyrous@users.noreply.github.com> Date: Fri, 28 Jun 2024 08:29:44 +0200 Subject: [PATCH] Replaced trainer table with only Emerald classes/balls --- Trainer-Class-Based-Poké-Balls.md | 98 +++++++++++++++++-------------- 1 file changed, 53 insertions(+), 45 deletions(-) diff --git a/Trainer-Class-Based-Poké-Balls.md b/Trainer-Class-Based-Poké-Balls.md index 78bf516..eb25264 100644 --- a/Trainer-Class-Based-Poké-Balls.md +++ b/Trainer-Class-Based-Poké-Balls.md @@ -14,66 +14,74 @@ struct TrainerBall Now that we have the struct, we need to pair all the trainer classes to a Poke Ball type. Add this table to [src/battle_main.c](../blob/master/src/battle_main.c): ```c const struct TrainerBall gTrainerBallTable[] = { + {TRAINER_CLASS_HIKER, ITEM_POKE_BALL}, {TRAINER_CLASS_TEAM_AQUA, ITEM_NET_BALL}, - {TRAINER_CLASS_AQUA_ADMIN, ITEM_NET_BALL}, - {TRAINER_CLASS_AQUA_LEADER, ITEM_MASTER_BALL}, - {TRAINER_CLASS_AROMA_LADY, ITEM_FRIEND_BALL}, - {TRAINER_CLASS_RUIN_MANIAC, ITEM_DUSK_BALL}, - {TRAINER_CLASS_INTERVIEWER, ITEM_REPEAT_BALL}, - {TRAINER_CLASS_TUBER_F, ITEM_DIVE_BALL}, - {TRAINER_CLASS_TUBER_M, ITEM_DIVE_BALL}, - {TRAINER_CLASS_SIS_AND_BRO, ITEM_POKE_BALL}, + {TRAINER_CLASS_PKMN_BREEDER, ITEM_LUXURY_BALL}, {TRAINER_CLASS_COOLTRAINER, ITEM_ULTRA_BALL}, - {TRAINER_CLASS_HEX_MANIAC, ITEM_DUSK_BALL}, - {TRAINER_CLASS_LADY, ITEM_LUXURY_BALL}, - {TRAINER_CLASS_BEAUTY, ITEM_LOVE_BALL}, - {TRAINER_CLASS_RICH_BOY, ITEM_LUXURY_BALL}, - {TRAINER_CLASS_POKEMANIAC, ITEM_MOON_BALL}, + {TRAINER_CLASS_BIRD_KEEPER, ITEM_NEST_BALL}, + {TRAINER_CLASS_COLLECTOR, ITEM_REPEAT_BALL}, {TRAINER_CLASS_SWIMMER_M, ITEM_DIVE_BALL}, - {TRAINER_CLASS_BLACK_BELT, ITEM_HEAVY_BALL}, - {TRAINER_CLASS_GUITARIST, ITEM_FAST_BALL}, + {TRAINER_CLASS_TEAM_MAGMA, ITEM_POKE_BALL}, + {TRAINER_CLASS_EXPERT, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_AQUA_ADMIN, ITEM_GREAT_BALL}, + {TRAINER_CLASS_BLACK_BELT, ITEM_POKE_BALL}, + {TRAINER_CLASS_AQUA_LEADER, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_HEX_MANIAC, ITEM_POKE_BALL}, + {TRAINER_CLASS_AROMA_LADY, ITEM_NET_BALL}, + {TRAINER_CLASS_RUIN_MANIAC, ITEM_POKE_BALL}, + {TRAINER_CLASS_INTERVIEWER, ITEM_TIMER_BALL}, + {TRAINER_CLASS_TUBER_F, ITEM_NET_BALL}, + {TRAINER_CLASS_TUBER_M, ITEM_NET_BALL}, + {TRAINER_CLASS_LADY, ITEM_LUXURY_BALL}, + {TRAINER_CLASS_BEAUTY, ITEM_LUXURY_BALL}, + {TRAINER_CLASS_RICH_BOY, ITEM_LUXURY_BALL}, + {TRAINER_CLASS_POKEMANIAC, ITEM_REPEAT_BALL}, + {TRAINER_CLASS_GUITARIST, ITEM_TIMER_BALL}, {TRAINER_CLASS_KINDLER, ITEM_POKE_BALL}, {TRAINER_CLASS_CAMPER, ITEM_NEST_BALL}, - {TRAINER_CLASS_OLD_COUPLE, ITEM_POKE_BALL}, + {TRAINER_CLASS_PICNICKER, ITEM_NEST_BALL}, {TRAINER_CLASS_BUG_MANIAC, ITEM_NET_BALL}, - {TRAINER_CLASS_PSYCHIC, ITEM_DREAM_BALL}, + {TRAINER_CLASS_PSYCHIC, ITEM_POKE_BALL}, {TRAINER_CLASS_GENTLEMAN, ITEM_LUXURY_BALL}, {TRAINER_CLASS_ELITE_FOUR, ITEM_ULTRA_BALL}, {TRAINER_CLASS_LEADER, ITEM_ULTRA_BALL}, {TRAINER_CLASS_SCHOOL_KID, ITEM_POKE_BALL}, {TRAINER_CLASS_SR_AND_JR, ITEM_POKE_BALL}, - {TRAINER_CLASS_POKEFAN, ITEM_POKE_BALL}, - {TRAINER_CLASS_EXPERT, ITEM_ULTRA_BALL}, - {TRAINER_CLASS_YOUNGSTER, ITEM_POKE_BALL}, - {TRAINER_CLASS_CHAMPION, ITEM_CHERISH_BALL}, - {TRAINER_CLASS_FISHERMAN, ITEM_LURE_BALL}, - {TRAINER_CLASS_TRIATHLETE, ITEM_FAST_BALL}, - {TRAINER_CLASS_DRAGON_TAMER, ITEM_ULTRA_BALL}, - {TRAINER_CLASS_BIRD_KEEPER, ITEM_QUICK_BALL}, - {TRAINER_CLASS_NINJA_BOY, ITEM_QUICK_BALL}, - {TRAINER_CLASS_BATTLE_GIRL, ITEM_HEAVY_BALL}, - {TRAINER_CLASS_PARASOL_LADY, ITEM_POKE_BALL}, - {TRAINER_CLASS_SWIMMER_F, ITEM_DIVE_BALL}, - {TRAINER_CLASS_PICNICKER, ITEM_FRIEND_BALL}, - {TRAINER_CLASS_TWINS, ITEM_POKE_BALL}, - {TRAINER_CLASS_SAILOR, ITEM_DIVE_BALL}, - {TRAINER_CLASS_COLLECTOR, ITEM_REPEAT_BALL}, - {TRAINER_CLASS_RIVAL, ITEM_PREMIER_BALL}, - {TRAINER_CLASS_PKMN_BREEDER, ITEM_TIMER_BALL}, - {TRAINER_CLASS_PKMN_RANGER, ITEM_SAFARI_BALL}, - {TRAINER_CLASS_TEAM_MAGMA, ITEM_NEST_BALL}, - {TRAINER_CLASS_MAGMA_ADMIN, ITEM_NEST_BALL}, - {TRAINER_CLASS_MAGMA_LEADER, ITEM_MASTER_BALL}, - {TRAINER_CLASS_LASS, ITEM_POKE_BALL}, - {TRAINER_CLASS_BUG_CATCHER, ITEM_NET_BALL}, - {TRAINER_CLASS_HIKER, ITEM_HEAVY_BALL}, - {TRAINER_CLASS_YOUNG_COUPLE, ITEM_LOVE_BALL}, {TRAINER_CLASS_WINSTRATE, ITEM_GREAT_BALL}, - {TRAINER_CLASS_PKMN_TRAINER_2, ITEM_HEAVY_BALL}, + {TRAINER_CLASS_POKEFAN, ITEM_POKE_BALL}, + {TRAINER_CLASS_YOUNGSTER, ITEM_POKE_BALL}, + {TRAINER_CLASS_CHAMPION, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_FISHERMAN, ITEM_DIVE_BALL}, + {TRAINER_CLASS_TRIATHLETE, ITEM_TIMER_BALL}, + {TRAINER_CLASS_DRAGON_TAMER, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_NINJA_BOY, ITEM_POKE_BALL}, + {TRAINER_CLASS_BATTLE_GIRL, ITEM_POKE_BALL}, + {TRAINER_CLASS_PARASOL_LADY, ITEM_NET_BALL}, + {TRAINER_CLASS_SWIMMER_F, ITEM_DIVE_BALL}, + {TRAINER_CLASS_TWINS, ITEM_REPEAT_BALL}, + {TRAINER_CLASS_SAILOR, ITEM_DIVE_BALL}, + {TRAINER_CLASS_COOLTRAINER_2, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_MAGMA_ADMIN, ITEM_GREAT_BALL}, + {TRAINER_CLASS_RIVAL, ITEM_PREMIER_BALL}, + {TRAINER_CLASS_BUG_CATCHER, ITEM_NET_BALL}, + {TRAINER_CLASS_PKMN_RANGER, ITEM_NEST_BALL}, + {TRAINER_CLASS_MAGMA_LEADER, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_LASS, ITEM_POKE_BALL}, + {TRAINER_CLASS_YOUNG_COUPLE, ITEM_REPEAT_BALL}, + {TRAINER_CLASS_OLD_COUPLE, ITEM_REPEAT_BALL}, + {TRAINER_CLASS_SIS_AND_BRO, ITEM_REPEAT_BALL}, + {TRAINER_CLASS_SALON_MAIDEN, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_DOME_ACE, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_PALACE_MAVEN , ITEM_ULTRA_BALL}, + {TRAINER_CLASS_ARENA_TYCOON, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_FACTORY_HEAD, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_PIKE_QUEEN, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_PYRAMID_KING, ITEM_ULTRA_BALL}, + {TRAINER_CLASS_RS_PROTAG, ITEM_MASTER_BALL}, {0xFF, ITEM_POKE_BALL}, }; ``` -You are free to customize this table to your liking. +You are free to customize this table to your liking. It contains every trainer class and Poke Ball found in Pokemon Emerald, except for PKMN_TRAINER_1 AND PKMN_TRAINER_2 since they go unused. Finally, we need to have the trainers use the Poke Balls we defined earlier. In the `CreateNPCTrainerParty` function of [src/battle_main.c](../blob/master/src/battle_main.c), add the following: ```diff