RoamerX 48f3a4d8ed EasyChat汉化
汉化了原本的单词,根据使用需求替换了其中一部分的单词
按照新的单词表重拼了所有游戏中使用了EasyChat的NPC对话
显示方式目前仍保留了原本的三个一行,单词之间一个空格的格式
2025-05-04 23:07:16 +08:00

622 lines
35 KiB
C

// data/text/apprentice.inc
extern const u8 gText_ApprenticePleaseTeach0[];
extern const u8 gText_ApprenticePleaseTeach1[];
extern const u8 gText_ApprenticePleaseTeach2[];
extern const u8 gText_ApprenticePleaseTeach3[];
extern const u8 gText_ApprenticePleaseTeach4[];
extern const u8 gText_ApprenticePleaseTeach5[];
extern const u8 gText_ApprenticePleaseTeach6[];
extern const u8 gText_ApprenticePleaseTeach7[];
extern const u8 gText_ApprenticePleaseTeach8[];
extern const u8 gText_ApprenticePleaseTeach9[];
extern const u8 gText_ApprenticePleaseTeach10[];
extern const u8 gText_ApprenticePleaseTeach11[];
extern const u8 gText_ApprenticePleaseTeach12[];
extern const u8 gText_ApprenticePleaseTeach13[];
extern const u8 gText_ApprenticePleaseTeach14[];
extern const u8 gText_ApprenticePleaseTeach15[];
extern const u8 gText_ApprenticeRejectTeaching0[];
extern const u8 gText_ApprenticeRejectTeaching1[];
extern const u8 gText_ApprenticeRejectTeaching2[];
extern const u8 gText_ApprenticeRejectTeaching3[];
extern const u8 gText_ApprenticeRejectTeaching4[];
extern const u8 gText_ApprenticeRejectTeaching5[];
extern const u8 gText_ApprenticeRejectTeaching6[];
extern const u8 gText_ApprenticeRejectTeaching7[];
extern const u8 gText_ApprenticeRejectTeaching8[];
extern const u8 gText_ApprenticeRejectTeaching9[];
extern const u8 gText_ApprenticeRejectTeaching10[];
extern const u8 gText_ApprenticeRejectTeaching11[];
extern const u8 gText_ApprenticeRejectTeaching12[];
extern const u8 gText_ApprenticeRejectTeaching13[];
extern const u8 gText_ApprenticeRejectTeaching14[];
extern const u8 gText_ApprenticeRejectTeaching15[];
extern const u8 gText_ApprenticeWhichLevelMode0[];
extern const u8 gText_ApprenticeWhichLevelMode1[];
extern const u8 gText_ApprenticeWhichLevelMode2[];
extern const u8 gText_ApprenticeWhichLevelMode3[];
extern const u8 gText_ApprenticeWhichLevelMode4[];
extern const u8 gText_ApprenticeWhichLevelMode5[];
extern const u8 gText_ApprenticeWhichLevelMode6[];
extern const u8 gText_ApprenticeWhichLevelMode7[];
extern const u8 gText_ApprenticeWhichLevelMode8[];
extern const u8 gText_ApprenticeWhichLevelMode9[];
extern const u8 gText_ApprenticeWhichLevelMode10[];
extern const u8 gText_ApprenticeWhichLevelMode11[];
extern const u8 gText_ApprenticeWhichLevelMode12[];
extern const u8 gText_ApprenticeWhichLevelMode13[];
extern const u8 gText_ApprenticeWhichLevelMode14[];
extern const u8 gText_ApprenticeWhichLevelMode15[];
extern const u8 gText_ApprenticeLevelModeThanks0[];
extern const u8 gText_ApprenticeLevelModeThanks1[];
extern const u8 gText_ApprenticeLevelModeThanks2[];
extern const u8 gText_ApprenticeLevelModeThanks3[];
extern const u8 gText_ApprenticeLevelModeThanks4[];
extern const u8 gText_ApprenticeLevelModeThanks5[];
extern const u8 gText_ApprenticeLevelModeThanks6[];
extern const u8 gText_ApprenticeLevelModeThanks7[];
extern const u8 gText_ApprenticeLevelModeThanks8[];
extern const u8 gText_ApprenticeLevelModeThanks9[];
extern const u8 gText_ApprenticeLevelModeThanks10[];
extern const u8 gText_ApprenticeLevelModeThanks11[];
extern const u8 gText_ApprenticeLevelModeThanks12[];
extern const u8 gText_ApprenticeLevelModeThanks13[];
extern const u8 gText_ApprenticeLevelModeThanks14[];
extern const u8 gText_ApprenticeLevelModeThanks15[];
extern const u8 gText_ApprenticeWhichMon0[];
extern const u8 gText_ApprenticeWhichMon1[];
extern const u8 gText_ApprenticeWhichMon2[];
extern const u8 gText_ApprenticeWhichMon3[];
extern const u8 gText_ApprenticeWhichMon4[];
extern const u8 gText_ApprenticeWhichMon5[];
extern const u8 gText_ApprenticeWhichMon6[];
extern const u8 gText_ApprenticeWhichMon7[];
extern const u8 gText_ApprenticeWhichMon8[];
extern const u8 gText_ApprenticeWhichMon9[];
extern const u8 gText_ApprenticeWhichMon10[];
extern const u8 gText_ApprenticeWhichMon11[];
extern const u8 gText_ApprenticeWhichMon12[];
extern const u8 gText_ApprenticeWhichMon13[];
extern const u8 gText_ApprenticeWhichMon14[];
extern const u8 gText_ApprenticeWhichMon15[];
extern const u8 gText_ApprenticeMonThanks0[];
extern const u8 gText_ApprenticeMonThanks1[];
extern const u8 gText_ApprenticeMonThanks2[];
extern const u8 gText_ApprenticeMonThanks3[];
extern const u8 gText_ApprenticeMonThanks4[];
extern const u8 gText_ApprenticeMonThanks5[];
extern const u8 gText_ApprenticeMonThanks6[];
extern const u8 gText_ApprenticeMonThanks7[];
extern const u8 gText_ApprenticeMonThanks8[];
extern const u8 gText_ApprenticeMonThanks9[];
extern const u8 gText_ApprenticeMonThanks10[];
extern const u8 gText_ApprenticeMonThanks11[];
extern const u8 gText_ApprenticeMonThanks12[];
extern const u8 gText_ApprenticeMonThanks13[];
extern const u8 gText_ApprenticeMonThanks14[];
extern const u8 gText_ApprenticeMonThanks15[];
extern const u8 gText_ApprenticeWhatHeldItem0[];
extern const u8 gText_ApprenticeWhatHeldItem1[];
extern const u8 gText_ApprenticeWhatHeldItem2[];
extern const u8 gText_ApprenticeWhatHeldItem3[];
extern const u8 gText_ApprenticeWhatHeldItem4[];
extern const u8 gText_ApprenticeWhatHeldItem5[];
extern const u8 gText_ApprenticeWhatHeldItem6[];
extern const u8 gText_ApprenticeWhatHeldItem7[];
extern const u8 gText_ApprenticeWhatHeldItem8[];
extern const u8 gText_ApprenticeWhatHeldItem9[];
extern const u8 gText_ApprenticeWhatHeldItem10[];
extern const u8 gText_ApprenticeWhatHeldItem11[];
extern const u8 gText_ApprenticeWhatHeldItem12[];
extern const u8 gText_ApprenticeWhatHeldItem13[];
extern const u8 gText_ApprenticeWhatHeldItem14[];
extern const u8 gText_ApprenticeWhatHeldItem15[];
extern const u8 gText_ApprenticeHoldNothing0[];
extern const u8 gText_ApprenticeHoldNothing1[];
extern const u8 gText_ApprenticeHoldNothing2[];
extern const u8 gText_ApprenticeHoldNothing3[];
extern const u8 gText_ApprenticeHoldNothing4[];
extern const u8 gText_ApprenticeHoldNothing5[];
extern const u8 gText_ApprenticeHoldNothing6[];
extern const u8 gText_ApprenticeHoldNothing7[];
extern const u8 gText_ApprenticeHoldNothing8[];
extern const u8 gText_ApprenticeHoldNothing9[];
extern const u8 gText_ApprenticeHoldNothing10[];
extern const u8 gText_ApprenticeHoldNothing11[];
extern const u8 gText_ApprenticeHoldNothing12[];
extern const u8 gText_ApprenticeHoldNothing13[];
extern const u8 gText_ApprenticeHoldNothing14[];
extern const u8 gText_ApprenticeHoldNothing15[];
extern const u8 gText_ApprenticeThanksNoHeldItem0[];
extern const u8 gText_ApprenticeThanksNoHeldItem1[];
extern const u8 gText_ApprenticeThanksNoHeldItem2[];
extern const u8 gText_ApprenticeThanksNoHeldItem3[];
extern const u8 gText_ApprenticeThanksNoHeldItem4[];
extern const u8 gText_ApprenticeThanksNoHeldItem5[];
extern const u8 gText_ApprenticeThanksNoHeldItem6[];
extern const u8 gText_ApprenticeThanksNoHeldItem7[];
extern const u8 gText_ApprenticeThanksNoHeldItem8[];
extern const u8 gText_ApprenticeThanksNoHeldItem9[];
extern const u8 gText_ApprenticeThanksNoHeldItem10[];
extern const u8 gText_ApprenticeThanksNoHeldItem11[];
extern const u8 gText_ApprenticeThanksNoHeldItem12[];
extern const u8 gText_ApprenticeThanksNoHeldItem13[];
extern const u8 gText_ApprenticeThanksNoHeldItem14[];
extern const u8 gText_ApprenticeThanksNoHeldItem15[];
extern const u8 gText_ApprenticeThanksHeldItem0[];
extern const u8 gText_ApprenticeThanksHeldItem1[];
extern const u8 gText_ApprenticeThanksHeldItem2[];
extern const u8 gText_ApprenticeThanksHeldItem3[];
extern const u8 gText_ApprenticeThanksHeldItem4[];
extern const u8 gText_ApprenticeThanksHeldItem5[];
extern const u8 gText_ApprenticeThanksHeldItem6[];
extern const u8 gText_ApprenticeThanksHeldItem7[];
extern const u8 gText_ApprenticeThanksHeldItem8[];
extern const u8 gText_ApprenticeThanksHeldItem9[];
extern const u8 gText_ApprenticeThanksHeldItem10[];
extern const u8 gText_ApprenticeThanksHeldItem11[];
extern const u8 gText_ApprenticeThanksHeldItem12[];
extern const u8 gText_ApprenticeThanksHeldItem13[];
extern const u8 gText_ApprenticeThanksHeldItem14[];
extern const u8 gText_ApprenticeThanksHeldItem15[];
extern const u8 gText_ApprenticeItemAlreadyRecommended0[];
extern const u8 gText_ApprenticeItemAlreadyRecommended1[];
extern const u8 gText_ApprenticeItemAlreadyRecommended2[];
extern const u8 gText_ApprenticeItemAlreadyRecommended3[];
extern const u8 gText_ApprenticeItemAlreadyRecommended4[];
extern const u8 gText_ApprenticeItemAlreadyRecommended5[];
extern const u8 gText_ApprenticeItemAlreadyRecommended6[];
extern const u8 gText_ApprenticeItemAlreadyRecommended7[];
extern const u8 gText_ApprenticeItemAlreadyRecommended8[];
extern const u8 gText_ApprenticeItemAlreadyRecommended9[];
extern const u8 gText_ApprenticeItemAlreadyRecommended10[];
extern const u8 gText_ApprenticeItemAlreadyRecommended11[];
extern const u8 gText_ApprenticeItemAlreadyRecommended12[];
extern const u8 gText_ApprenticeItemAlreadyRecommended13[];
extern const u8 gText_ApprenticeItemAlreadyRecommended14[];
extern const u8 gText_ApprenticeItemAlreadyRecommended15[];
extern const u8 gText_ApprenticeWhichMove0[];
extern const u8 gText_ApprenticeWhichMove1[];
extern const u8 gText_ApprenticeWhichMove2[];
extern const u8 gText_ApprenticeWhichMove3[];
extern const u8 gText_ApprenticeWhichMove4[];
extern const u8 gText_ApprenticeWhichMove5[];
extern const u8 gText_ApprenticeWhichMove6[];
extern const u8 gText_ApprenticeWhichMove7[];
extern const u8 gText_ApprenticeWhichMove8[];
extern const u8 gText_ApprenticeWhichMove9[];
extern const u8 gText_ApprenticeWhichMove10[];
extern const u8 gText_ApprenticeWhichMove11[];
extern const u8 gText_ApprenticeWhichMove12[];
extern const u8 gText_ApprenticeWhichMove13[];
extern const u8 gText_ApprenticeWhichMove14[];
extern const u8 gText_ApprenticeWhichMove15[];
extern const u8 gText_ApprenticeMoveThanks0[];
extern const u8 gText_ApprenticeMoveThanks1[];
extern const u8 gText_ApprenticeMoveThanks2[];
extern const u8 gText_ApprenticeMoveThanks3[];
extern const u8 gText_ApprenticeMoveThanks4[];
extern const u8 gText_ApprenticeMoveThanks5[];
extern const u8 gText_ApprenticeMoveThanks6[];
extern const u8 gText_ApprenticeMoveThanks7[];
extern const u8 gText_ApprenticeMoveThanks8[];
extern const u8 gText_ApprenticeMoveThanks9[];
extern const u8 gText_ApprenticeMoveThanks10[];
extern const u8 gText_ApprenticeMoveThanks11[];
extern const u8 gText_ApprenticeMoveThanks12[];
extern const u8 gText_ApprenticeMoveThanks13[];
extern const u8 gText_ApprenticeMoveThanks14[];
extern const u8 gText_ApprenticeMoveThanks15[];
extern const u8 gText_ApprenticeWhichMonFirst0[];
extern const u8 gText_ApprenticeWhichMonFirst1[];
extern const u8 gText_ApprenticeWhichMonFirst2[];
extern const u8 gText_ApprenticeWhichMonFirst3[];
extern const u8 gText_ApprenticeWhichMonFirst4[];
extern const u8 gText_ApprenticeWhichMonFirst5[];
extern const u8 gText_ApprenticeWhichMonFirst6[];
extern const u8 gText_ApprenticeWhichMonFirst7[];
extern const u8 gText_ApprenticeWhichMonFirst8[];
extern const u8 gText_ApprenticeWhichMonFirst9[];
extern const u8 gText_ApprenticeWhichMonFirst10[];
extern const u8 gText_ApprenticeWhichMonFirst11[];
extern const u8 gText_ApprenticeWhichMonFirst12[];
extern const u8 gText_ApprenticeWhichMonFirst13[];
extern const u8 gText_ApprenticeWhichMonFirst14[];
extern const u8 gText_ApprenticeWhichMonFirst15[];
extern const u8 gText_ApprenticeMonFirstThanks0[];
extern const u8 gText_ApprenticeMonFirstThanks1[];
extern const u8 gText_ApprenticeMonFirstThanks2[];
extern const u8 gText_ApprenticeMonFirstThanks3[];
extern const u8 gText_ApprenticeMonFirstThanks4[];
extern const u8 gText_ApprenticeMonFirstThanks5[];
extern const u8 gText_ApprenticeMonFirstThanks6[];
extern const u8 gText_ApprenticeMonFirstThanks7[];
extern const u8 gText_ApprenticeMonFirstThanks8[];
extern const u8 gText_ApprenticeMonFirstThanks9[];
extern const u8 gText_ApprenticeMonFirstThanks10[];
extern const u8 gText_ApprenticeMonFirstThanks11[];
extern const u8 gText_ApprenticeMonFirstThanks12[];
extern const u8 gText_ApprenticeMonFirstThanks13[];
extern const u8 gText_ApprenticeMonFirstThanks14[];
extern const u8 gText_ApprenticeMonFirstThanks15[];
extern const u8 gText_ApprenticePickWinSpeech0[];
extern const u8 gText_ApprenticePickWinSpeech1[];
extern const u8 gText_ApprenticePickWinSpeech2[];
extern const u8 gText_ApprenticePickWinSpeech3[];
extern const u8 gText_ApprenticePickWinSpeech4[];
extern const u8 gText_ApprenticePickWinSpeech5[];
extern const u8 gText_ApprenticePickWinSpeech6[];
extern const u8 gText_ApprenticePickWinSpeech7[];
extern const u8 gText_ApprenticePickWinSpeech8[];
extern const u8 gText_ApprenticePickWinSpeech9[];
extern const u8 gText_ApprenticePickWinSpeech10[];
extern const u8 gText_ApprenticePickWinSpeech11[];
extern const u8 gText_ApprenticePickWinSpeech12[];
extern const u8 gText_ApprenticePickWinSpeech13[];
extern const u8 gText_ApprenticePickWinSpeech14[];
extern const u8 gText_ApprenticePickWinSpeech15[];
extern const u8 gText_ApprenticeWinSpeechThanks0[];
extern const u8 gText_ApprenticeWinSpeechThanks1[];
extern const u8 gText_ApprenticeWinSpeechThanks2[];
extern const u8 gText_ApprenticeWinSpeechThanks3[];
extern const u8 gText_ApprenticeWinSpeechThanks4[];
extern const u8 gText_ApprenticeWinSpeechThanks5[];
extern const u8 gText_ApprenticeWinSpeechThanks6[];
extern const u8 gText_ApprenticeWinSpeechThanks7[];
extern const u8 gText_ApprenticeWinSpeechThanks8[];
extern const u8 gText_ApprenticeWinSpeechThanks9[];
extern const u8 gText_ApprenticeWinSpeechThanks10[];
extern const u8 gText_ApprenticeWinSpeechThanks11[];
extern const u8 gText_ApprenticeWinSpeechThanks12[];
extern const u8 gText_ApprenticeWinSpeechThanks13[];
extern const u8 gText_ApprenticeWinSpeechThanks14[];
extern const u8 gText_ApprenticeWinSpeechThanks15[];
extern const u8 gText_ApprenticeChallenge0[];
extern const u8 gText_ApprenticeChallenge1[];
extern const u8 gText_ApprenticeChallenge2[];
extern const u8 gText_ApprenticeChallenge3[];
extern const u8 gText_ApprenticeChallenge4[];
extern const u8 gText_ApprenticeChallenge5[];
extern const u8 gText_ApprenticeChallenge6[];
extern const u8 gText_ApprenticeChallenge7[];
extern const u8 gText_ApprenticeChallenge8[];
extern const u8 gText_ApprenticeChallenge9[];
extern const u8 gText_ApprenticeChallenge10[];
extern const u8 gText_ApprenticeChallenge11[];
extern const u8 gText_ApprenticeChallenge12[];
extern const u8 gText_ApprenticeChallenge13[];
extern const u8 gText_ApprenticeChallenge14[];
extern const u8 gText_ApprenticeChallenge15[];
const struct ApprenticeTrainer gApprentices[NUM_APPRENTICES] =
{
{
.name = {_("サダヒロ"), _("贞宏"), _("ALAIN"), _("ADELFO"), _("CLAUS"), _("TEO")},
.otId = 48585,
.facilityClass = FACILITY_CLASS_BUG_CATCHER,
.species = {SPECIES_BEAUTIFLY, SPECIES_DUSTOX, SPECIES_ILLUMISE, SPECIES_SHIFTRY, SPECIES_BRELOOM, SPECIES_NINJASK, SPECIES_SHEDINJA, SPECIES_PINSIR, SPECIES_HERACROSS, SPECIES_VOLBEAT},
.id = 0,
.speechLost = {EC_WORD_MUFUFU, EC_WORD_EXCL, EC_WORD_ME, EC_WORD_TOTALLY, EC_WORD_LOST, EC_WORD_EXCL},
},
{
.name = {_("ヒロオ"), _("广雄"), _("LIONEL"), _("CAIO"), _("LUDWIG"), _("LEO")},
.otId = 53001,
.facilityClass = FACILITY_CLASS_YOUNGSTER,
.species = {SPECIES_SWELLOW, SPECIES_SWALOT, SPECIES_SHUCKLE, SPECIES_MANECTRIC, SPECIES_TORKOAL, SPECIES_HARIYAMA, SPECIES_MIGHTYENA, SPECIES_LUDICOLO, SPECIES_CRAWDAUNT, SPECIES_WHISCASH},
.id = 1,
.speechLost = {EC_WORD_OKAY, EC_WORD_ME, EC_WORD_LOST, EC_WORD_YOU_RE, EC_WORD_A, EC_WORD_MASTER},
},
{
.name = {_("ケイジ"), _("庆次"), _("HERVE"), _("FEDRO"), _("WENZEL"), _("SANTI")},
.otId = 11828,
.facilityClass = FACILITY_CLASS_SCHOOL_KID_M,
.species = {SPECIES_LINOONE, SPECIES_MIGHTYENA, SPECIES_WHISCASH, SPECIES_ZANGOOSE, SPECIES_SEVIPER, SPECIES_NINETALES, SPECIES_KECLEON, SPECIES_SHUCKLE, SPECIES_MANECTRIC, SPECIES_MACHAMP},
.id = 2,
.speechLost = {EC_WORD_ME, EC_WORD_LOST, EC_WORD_ME, EC_WORD_WALKING, EC_WORD_IS, EC_WORD_ELLIPSIS},
},
{
.name = {_("ユラ"), _("由良"), _("LAYLA"), _("ASTRID"), _("SONJA"), _("LOLA")},
.otId = 34031,
.facilityClass = FACILITY_CLASS_LASS,
.species = {SPECIES_SWALOT, SPECIES_XATU, SPECIES_ALTARIA, SPECIES_GOLDUCK, SPECIES_FLYGON, SPECIES_ALAKAZAM, SPECIES_GARDEVOIR, SPECIES_WAILORD, SPECIES_GRUMPIG, SPECIES_MIGHTYENA},
.id = 3,
.speechLost = {EC_WORD_THIS, EC_WORD_BE, EC_WORD_AREN_T, EC_WORD_HURRIED, EC_WORD_IS, EC_WORD_QUES},
},
{
.name = {_("ヨウカ"), _("阳佳"), _("AMELIE"), _("CLEO"), _("MARIA"), _("ELISA")},
.otId = 7747,
.facilityClass = FACILITY_CLASS_SCHOOL_KID_F,
.species = {SPECIES_WIGGLYTUFF, SPECIES_LINOONE, SPECIES_KINGDRA, SPECIES_DELCATTY, SPECIES_RAICHU, SPECIES_FEAROW, SPECIES_STARMIE, SPECIES_MEDICHAM, SPECIES_SHIFTRY, SPECIES_BEAUTIFLY},
.id = 4,
.speechLost = {EC_WORD_THIS, EC_WORD_WON_T, EC_MOVE(ENCORE), EC_WORD_IS, EC_EMPTY_WORD, EC_EMPTY_WORD},
},
{
.name = {_("ヤスシ"), _("阿康"), _("BRAHIM"), _("GLAUCO"), _("JOSEF"), _("ROQUE")},
.otId = 14239,
.facilityClass = FACILITY_CLASS_RUNNING_TRIATHLETE_M,
.species = {SPECIES_STARMIE, SPECIES_DODRIO, SPECIES_AGGRON, SPECIES_MAGNETON, SPECIES_MACHAMP, SPECIES_ARMALDO, SPECIES_HERACROSS, SPECIES_NOSEPASS, SPECIES_EXPLOUD, SPECIES_MIGHTYENA},
.id = 5,
.speechLost = {EC_WORD_ME, EC_WORD_WEREN_T, EC_WORD_RUNS, EC_WORD_IS, EC_WORD_BYE_BYE, EC_WORD_EXCL},
},
{
.name = {_("ミサオ"), _("美纱绪"), _("LAURE"), _("DAFNE"), _("AMELIE"), _("LARA")},
.otId = 62805,
.facilityClass = FACILITY_CLASS_RUNNING_TRIATHLETE_F,
.species = {SPECIES_STARMIE, SPECIES_DODRIO, SPECIES_MAGNETON, SPECIES_MEDICHAM, SPECIES_MIGHTYENA, SPECIES_GLALIE, SPECIES_GOLEM, SPECIES_ELECTRODE, SPECIES_PELIPPER, SPECIES_SHARPEDO},
.id = 6,
.speechLost = {EC_WORD_AHAHA, EC_WORD_DEFEATED, EC_WORD_IS, EC_WORD_EXCL, EC_WORD_ANYWHERE, EC_WORD_WHAT},
},
{
.name = {_("カズサ"), _("和纱"), _("JODIE"), _("ILENIA"), _("KARO"), _("ELSA")},
.otId = 36134,
.facilityClass = FACILITY_CLASS_BEAUTY,
.species = {SPECIES_NINETALES, SPECIES_ALAKAZAM, SPECIES_SCEPTILE, SPECIES_SALAMENCE, SPECIES_GOLDUCK, SPECIES_MAWILE, SPECIES_WEEZING, SPECIES_LANTURN, SPECIES_GARDEVOIR, SPECIES_MILOTIC},
.id = 7,
.speechLost = {EC_WORD_YOU, EC_WORD_VERY, EC_WORD_STRONG, EC_WORD_ISN_T_IT_QUES, EC_EMPTY_WORD, EC_EMPTY_WORD},
},
{
.name = {_("スミレ"), _("阿堇"), _("ANNIE"), _("IMELDA"), _("INES"), _("ROSA")},
.otId = 32780,
.facilityClass = FACILITY_CLASS_AROMA_LADY,
.species = {SPECIES_SCEPTILE, SPECIES_VILEPLUME, SPECIES_BELLOSSOM, SPECIES_ROSELIA, SPECIES_CORSOLA, SPECIES_FLYGON, SPECIES_BRELOOM, SPECIES_MILOTIC, SPECIES_ALTARIA, SPECIES_CRADILY},
.id = 8,
.speechLost = {EC_WORD_ME, EC_WORD_OF, EC_WORD_POKEMON, EC_WORD_YEAH, EC_WORD_STRONG, EC_WORD_EXCL},
},
{
.name = {_("アキノリ"), _("昭则"), _("RENE"), _("INDRO"), _("DETLEF"), _("PEDRO")},
.otId = 18079,
.facilityClass = FACILITY_CLASS_HIKER,
.species = {SPECIES_SKARMORY, SPECIES_GOLEM, SPECIES_BLAZIKEN, SPECIES_CAMERUPT, SPECIES_DONPHAN, SPECIES_MUK, SPECIES_SALAMENCE, SPECIES_TROPIUS, SPECIES_SOLROCK, SPECIES_RHYDON},
.id = 9,
.speechLost = {EC_WORD_WE, EC_WORD_THIS_IS_IT_EXCL, EC_WORD_JUST, EC_WORD_SHREDDED, EC_WORD_IS, EC_WORD_ELLIPSIS},
},
{
.name = {_("トウゾウ"), _("东藏"), _("BRUNO"), _("LEARCO"), _("ANSGAR"), _("MANOLO")},
.otId = 29180,
.facilityClass = FACILITY_CLASS_FISHERMAN,
.species = {SPECIES_SEAKING, SPECIES_STARMIE, SPECIES_GOLDUCK, SPECIES_TENTACRUEL, SPECIES_OCTILLERY, SPECIES_GOREBYSS, SPECIES_GLALIE, SPECIES_WAILORD, SPECIES_SHARPEDO, SPECIES_KINGDRA},
.id = 10,
.speechLost = {EC_WORD_YOUR, EC_WORD_VICTORY, EC_WORD_ANGERS, EC_WORD_IS, EC_WORD_ME, EC_WORD_EXCL},
},
{
.name = {_("セイヤ"), _("圣也"), _("FRANK"), _("OLINDO"), _("FRANK"), _("MAURO")},
.otId = 41886,
.facilityClass = FACILITY_CLASS_SAILOR,
.species = {SPECIES_QUAGSIRE, SPECIES_STARMIE, SPECIES_PELIPPER, SPECIES_CRAWDAUNT, SPECIES_WAILORD, SPECIES_GYARADOS, SPECIES_SWAMPERT, SPECIES_LANTURN, SPECIES_WHISCASH, SPECIES_SHUCKLE},
.id = 11,
.speechLost = {EC_WORD_LOSING, EC_WORD_WON_T, EC_WORD_LEARN, EC_WORD_ME, EC_WORD_SAD, EC_WORD_OK_QUES},
},
{
.name = {_("リュウジ"), _("龙治"), _("XAV"), _("ORFEO"), _("JÜRGEN"), _("JORGE")},
.otId = 58768,
.facilityClass = FACILITY_CLASS_GUITARIST,
.species = {SPECIES_ABSOL, SPECIES_CROBAT, SPECIES_EXPLOUD, SPECIES_MAGNETON, SPECIES_SHARPEDO, SPECIES_MANECTRIC, SPECIES_METAGROSS, SPECIES_ELECTRODE, SPECIES_NOSEPASS, SPECIES_WEEZING},
.id = 12,
.speechLost = {EC_WORD_THIS, EC_WORD_WERE, EC_WORD_GO, EC_WORD_LOSING, EC_EMPTY_WORD, EC_EMPTY_WORD},
},
{
.name = {_("カツアキ"), _("胜明"), _("ANDY"), _("PARIDE"), _("DAVID"), _("CHICHO")},
.otId = 53272,
.facilityClass = FACILITY_CLASS_BLACK_BELT,
.species = {SPECIES_BLAZIKEN, SPECIES_GOLEM, SPECIES_MACHAMP, SPECIES_RHYDON, SPECIES_HARIYAMA, SPECIES_AGGRON, SPECIES_MEDICHAM, SPECIES_ZANGOOSE, SPECIES_VIGOROTH, SPECIES_SLAKING},
.id = 13,
.speechLost = {EC_WORD_I_AM, EC_WORD_TOO_WEAK, EC_WORD_HAVEN_T, EC_WORD_ENOUGH, EC_WORD_OF, EC_WORD_POWER},
},
{
.name = {_("トシミツ"), _("利光"), _("DANTE"), _("RAOUL"), _("LOTHAR"), _("PABLO")},
.otId = 48245,
.facilityClass = FACILITY_CLASS_RUIN_MANIAC,
.species = {SPECIES_SCEPTILE, SPECIES_SANDSLASH, SPECIES_FLYGON, SPECIES_CLAYDOL, SPECIES_ARMALDO, SPECIES_CROBAT, SPECIES_CRADILY, SPECIES_SOLROCK, SPECIES_LUNATONE, SPECIES_GOLEM},
.id = 14,
.speechLost = {EC_WORD_ME, EC_WORD_NO, EC_WORD_SLEPT, EC_WORD_HAPPENING, EC_WORD_IS, EC_WORD_WHAT},
},
{
.name = {_("ローウェン"), _("罗恩"), _("ARTURO"), _("ROMOLO"), _("BRIAN"), _("ARTURO")},
.otId = 64002,
.facilityClass = FACILITY_CLASS_GENTLEMAN,
.species = {SPECIES_ABSOL, SPECIES_MIGHTYENA, SPECIES_ALAKAZAM, SPECIES_BANETTE, SPECIES_NINETALES, SPECIES_CLAYDOL, SPECIES_MUK, SPECIES_SALAMENCE, SPECIES_WALREIN, SPECIES_DUSCLOPS},
.id = 15,
.speechLost = {EC_WORD_THIS, EC_WORD_MUST_BE, EC_WORD_A, EC_WORD_LIE, EC_EMPTY_WORD, EC_EMPTY_WORD},
},
};
// Sequence of 4 messages for the first meeting with the apprentice
static const u8 *const sApprenticeFirstMeetingTexts[NUM_APPRENTICES][4] =
{
{gText_ApprenticePleaseTeach0, gText_ApprenticeRejectTeaching0, gText_ApprenticeWhichLevelMode0, gText_ApprenticeLevelModeThanks0},
{gText_ApprenticePleaseTeach1, gText_ApprenticeRejectTeaching1, gText_ApprenticeWhichLevelMode1, gText_ApprenticeLevelModeThanks1},
{gText_ApprenticePleaseTeach2, gText_ApprenticeRejectTeaching2, gText_ApprenticeWhichLevelMode2, gText_ApprenticeLevelModeThanks2},
{gText_ApprenticePleaseTeach3, gText_ApprenticeRejectTeaching3, gText_ApprenticeWhichLevelMode3, gText_ApprenticeLevelModeThanks3},
{gText_ApprenticePleaseTeach4, gText_ApprenticeRejectTeaching4, gText_ApprenticeWhichLevelMode4, gText_ApprenticeLevelModeThanks4},
{gText_ApprenticePleaseTeach5, gText_ApprenticeRejectTeaching5, gText_ApprenticeWhichLevelMode5, gText_ApprenticeLevelModeThanks5},
{gText_ApprenticePleaseTeach6, gText_ApprenticeRejectTeaching6, gText_ApprenticeWhichLevelMode6, gText_ApprenticeLevelModeThanks6},
{gText_ApprenticePleaseTeach7, gText_ApprenticeRejectTeaching7, gText_ApprenticeWhichLevelMode7, gText_ApprenticeLevelModeThanks7},
{gText_ApprenticePleaseTeach8, gText_ApprenticeRejectTeaching8, gText_ApprenticeWhichLevelMode8, gText_ApprenticeLevelModeThanks8},
{gText_ApprenticePleaseTeach9, gText_ApprenticeRejectTeaching9, gText_ApprenticeWhichLevelMode9, gText_ApprenticeLevelModeThanks9},
{gText_ApprenticePleaseTeach10, gText_ApprenticeRejectTeaching10, gText_ApprenticeWhichLevelMode10, gText_ApprenticeLevelModeThanks10},
{gText_ApprenticePleaseTeach11, gText_ApprenticeRejectTeaching11, gText_ApprenticeWhichLevelMode11, gText_ApprenticeLevelModeThanks11},
{gText_ApprenticePleaseTeach12, gText_ApprenticeRejectTeaching12, gText_ApprenticeWhichLevelMode12, gText_ApprenticeLevelModeThanks12},
{gText_ApprenticePleaseTeach13, gText_ApprenticeRejectTeaching13, gText_ApprenticeWhichLevelMode13, gText_ApprenticeLevelModeThanks13},
{gText_ApprenticePleaseTeach14, gText_ApprenticeRejectTeaching14, gText_ApprenticeWhichLevelMode14, gText_ApprenticeLevelModeThanks14},
{gText_ApprenticePleaseTeach15, gText_ApprenticeRejectTeaching15, gText_ApprenticeWhichLevelMode15, gText_ApprenticeLevelModeThanks15},
};
static const u8 *const sApprenticeWhichMonTexts[NUM_APPRENTICES][2] =
{
{gText_ApprenticeWhichMon0, gText_ApprenticeMonThanks0},
{gText_ApprenticeWhichMon1, gText_ApprenticeMonThanks1},
{gText_ApprenticeWhichMon2, gText_ApprenticeMonThanks2},
{gText_ApprenticeWhichMon3, gText_ApprenticeMonThanks3},
{gText_ApprenticeWhichMon4, gText_ApprenticeMonThanks4},
{gText_ApprenticeWhichMon5, gText_ApprenticeMonThanks5},
{gText_ApprenticeWhichMon6, gText_ApprenticeMonThanks6},
{gText_ApprenticeWhichMon7, gText_ApprenticeMonThanks7},
{gText_ApprenticeWhichMon8, gText_ApprenticeMonThanks8},
{gText_ApprenticeWhichMon9, gText_ApprenticeMonThanks9},
{gText_ApprenticeWhichMon10, gText_ApprenticeMonThanks10},
{gText_ApprenticeWhichMon11, gText_ApprenticeMonThanks11},
{gText_ApprenticeWhichMon12, gText_ApprenticeMonThanks12},
{gText_ApprenticeWhichMon13, gText_ApprenticeMonThanks13},
{gText_ApprenticeWhichMon14, gText_ApprenticeMonThanks14},
{gText_ApprenticeWhichMon15, gText_ApprenticeMonThanks15},
};
// Sequence of 5 messages for suggesting a held item to the apprentice
static const u8 *const sApprenticeHeldItemTexts[NUM_APPRENTICES][5] =
{
{gText_ApprenticeWhatHeldItem0, gText_ApprenticeHoldNothing0, gText_ApprenticeThanksNoHeldItem0, gText_ApprenticeThanksHeldItem0, gText_ApprenticeItemAlreadyRecommended0},
{gText_ApprenticeWhatHeldItem1, gText_ApprenticeHoldNothing1, gText_ApprenticeThanksNoHeldItem1, gText_ApprenticeThanksHeldItem1, gText_ApprenticeItemAlreadyRecommended1},
{gText_ApprenticeWhatHeldItem2, gText_ApprenticeHoldNothing2, gText_ApprenticeThanksNoHeldItem2, gText_ApprenticeThanksHeldItem2, gText_ApprenticeItemAlreadyRecommended2},
{gText_ApprenticeWhatHeldItem3, gText_ApprenticeHoldNothing3, gText_ApprenticeThanksNoHeldItem3, gText_ApprenticeThanksHeldItem3, gText_ApprenticeItemAlreadyRecommended3},
{gText_ApprenticeWhatHeldItem4, gText_ApprenticeHoldNothing4, gText_ApprenticeThanksNoHeldItem4, gText_ApprenticeThanksHeldItem4, gText_ApprenticeItemAlreadyRecommended4},
{gText_ApprenticeWhatHeldItem5, gText_ApprenticeHoldNothing5, gText_ApprenticeThanksNoHeldItem5, gText_ApprenticeThanksHeldItem5, gText_ApprenticeItemAlreadyRecommended5},
{gText_ApprenticeWhatHeldItem6, gText_ApprenticeHoldNothing6, gText_ApprenticeThanksNoHeldItem6, gText_ApprenticeThanksHeldItem6, gText_ApprenticeItemAlreadyRecommended6},
{gText_ApprenticeWhatHeldItem7, gText_ApprenticeHoldNothing7, gText_ApprenticeThanksNoHeldItem7, gText_ApprenticeThanksHeldItem7, gText_ApprenticeItemAlreadyRecommended7},
{gText_ApprenticeWhatHeldItem8, gText_ApprenticeHoldNothing8, gText_ApprenticeThanksNoHeldItem8, gText_ApprenticeThanksHeldItem8, gText_ApprenticeItemAlreadyRecommended8},
{gText_ApprenticeWhatHeldItem9, gText_ApprenticeHoldNothing9, gText_ApprenticeThanksNoHeldItem9, gText_ApprenticeThanksHeldItem9, gText_ApprenticeItemAlreadyRecommended9},
{gText_ApprenticeWhatHeldItem10, gText_ApprenticeHoldNothing10, gText_ApprenticeThanksNoHeldItem10, gText_ApprenticeThanksHeldItem10, gText_ApprenticeItemAlreadyRecommended10},
{gText_ApprenticeWhatHeldItem11, gText_ApprenticeHoldNothing11, gText_ApprenticeThanksNoHeldItem11, gText_ApprenticeThanksHeldItem11, gText_ApprenticeItemAlreadyRecommended11},
{gText_ApprenticeWhatHeldItem12, gText_ApprenticeHoldNothing12, gText_ApprenticeThanksNoHeldItem12, gText_ApprenticeThanksHeldItem12, gText_ApprenticeItemAlreadyRecommended12},
{gText_ApprenticeWhatHeldItem13, gText_ApprenticeHoldNothing13, gText_ApprenticeThanksNoHeldItem13, gText_ApprenticeThanksHeldItem13, gText_ApprenticeItemAlreadyRecommended13},
{gText_ApprenticeWhatHeldItem14, gText_ApprenticeHoldNothing14, gText_ApprenticeThanksNoHeldItem14, gText_ApprenticeThanksHeldItem14, gText_ApprenticeItemAlreadyRecommended14},
{gText_ApprenticeWhatHeldItem15, gText_ApprenticeHoldNothing15, gText_ApprenticeThanksNoHeldItem15, gText_ApprenticeThanksHeldItem15, gText_ApprenticeItemAlreadyRecommended15},
};
static const u8 *const sApprenticeWhichMoveTexts[NUM_APPRENTICES][2] =
{
{gText_ApprenticeWhichMove0, gText_ApprenticeMoveThanks0},
{gText_ApprenticeWhichMove1, gText_ApprenticeMoveThanks1},
{gText_ApprenticeWhichMove2, gText_ApprenticeMoveThanks2},
{gText_ApprenticeWhichMove3, gText_ApprenticeMoveThanks3},
{gText_ApprenticeWhichMove4, gText_ApprenticeMoveThanks4},
{gText_ApprenticeWhichMove5, gText_ApprenticeMoveThanks5},
{gText_ApprenticeWhichMove6, gText_ApprenticeMoveThanks6},
{gText_ApprenticeWhichMove7, gText_ApprenticeMoveThanks7},
{gText_ApprenticeWhichMove8, gText_ApprenticeMoveThanks8},
{gText_ApprenticeWhichMove9, gText_ApprenticeMoveThanks9},
{gText_ApprenticeWhichMove10, gText_ApprenticeMoveThanks10},
{gText_ApprenticeWhichMove11, gText_ApprenticeMoveThanks11},
{gText_ApprenticeWhichMove12, gText_ApprenticeMoveThanks12},
{gText_ApprenticeWhichMove13, gText_ApprenticeMoveThanks13},
{gText_ApprenticeWhichMove14, gText_ApprenticeMoveThanks14},
{gText_ApprenticeWhichMove15, gText_ApprenticeMoveThanks15},
};
static const u8 *const sApprenticeWhichMonFirstTexts[NUM_APPRENTICES][2] =
{
{gText_ApprenticeWhichMonFirst0, gText_ApprenticeMonFirstThanks0},
{gText_ApprenticeWhichMonFirst1, gText_ApprenticeMonFirstThanks1},
{gText_ApprenticeWhichMonFirst2, gText_ApprenticeMonFirstThanks2},
{gText_ApprenticeWhichMonFirst3, gText_ApprenticeMonFirstThanks3},
{gText_ApprenticeWhichMonFirst4, gText_ApprenticeMonFirstThanks4},
{gText_ApprenticeWhichMonFirst5, gText_ApprenticeMonFirstThanks5},
{gText_ApprenticeWhichMonFirst6, gText_ApprenticeMonFirstThanks6},
{gText_ApprenticeWhichMonFirst7, gText_ApprenticeMonFirstThanks7},
{gText_ApprenticeWhichMonFirst8, gText_ApprenticeMonFirstThanks8},
{gText_ApprenticeWhichMonFirst9, gText_ApprenticeMonFirstThanks9},
{gText_ApprenticeWhichMonFirst10, gText_ApprenticeMonFirstThanks10},
{gText_ApprenticeWhichMonFirst11, gText_ApprenticeMonFirstThanks11},
{gText_ApprenticeWhichMonFirst12, gText_ApprenticeMonFirstThanks12},
{gText_ApprenticeWhichMonFirst13, gText_ApprenticeMonFirstThanks13},
{gText_ApprenticeWhichMonFirst14, gText_ApprenticeMonFirstThanks14},
{gText_ApprenticeWhichMonFirst15, gText_ApprenticeMonFirstThanks15},
};
static const u8 *const sApprenticePickWinSpeechTexts[NUM_APPRENTICES][2] =
{
{gText_ApprenticePickWinSpeech0, gText_ApprenticeWinSpeechThanks0},
{gText_ApprenticePickWinSpeech1, gText_ApprenticeWinSpeechThanks1},
{gText_ApprenticePickWinSpeech2, gText_ApprenticeWinSpeechThanks2},
{gText_ApprenticePickWinSpeech3, gText_ApprenticeWinSpeechThanks3},
{gText_ApprenticePickWinSpeech4, gText_ApprenticeWinSpeechThanks4},
{gText_ApprenticePickWinSpeech5, gText_ApprenticeWinSpeechThanks5},
{gText_ApprenticePickWinSpeech6, gText_ApprenticeWinSpeechThanks6},
{gText_ApprenticePickWinSpeech7, gText_ApprenticeWinSpeechThanks7},
{gText_ApprenticePickWinSpeech8, gText_ApprenticeWinSpeechThanks8},
{gText_ApprenticePickWinSpeech9, gText_ApprenticeWinSpeechThanks9},
{gText_ApprenticePickWinSpeech10, gText_ApprenticeWinSpeechThanks10},
{gText_ApprenticePickWinSpeech11, gText_ApprenticeWinSpeechThanks11},
{gText_ApprenticePickWinSpeech12, gText_ApprenticeWinSpeechThanks12},
{gText_ApprenticePickWinSpeech13, gText_ApprenticeWinSpeechThanks13},
{gText_ApprenticePickWinSpeech14, gText_ApprenticeWinSpeechThanks14},
{gText_ApprenticePickWinSpeech15, gText_ApprenticeWinSpeechThanks15},
};
static const u8 *const sApprenticeChallengeTexts[NUM_APPRENTICES] =
{
gText_ApprenticeChallenge0,
gText_ApprenticeChallenge1,
gText_ApprenticeChallenge2,
gText_ApprenticeChallenge3,
gText_ApprenticeChallenge4,
gText_ApprenticeChallenge5,
gText_ApprenticeChallenge6,
gText_ApprenticeChallenge7,
gText_ApprenticeChallenge8,
gText_ApprenticeChallenge9,
gText_ApprenticeChallenge10,
gText_ApprenticeChallenge11,
gText_ApprenticeChallenge12,
gText_ApprenticeChallenge13,
gText_ApprenticeChallenge14,
gText_ApprenticeChallenge15,
};
// The possible questions to ask after the initial 3 WHICH MON questions. Retrieved from here and shuffled
// WHAT_ITEM has max 3 occurrences, one for each party member
// WHICH_MOVE has max 5 occurrences, defined as NUM_WHICH_MOVE_QUESTIONS
// WHICH_FIRST has max 1 occurrence, lead mon should only be chosen once
// WHICH_SPEECH has max 1 occurrence, as the apprentice leaves after its asked
static const u8 sQuestionPossibilities[MAX_APPRENTICE_QUESTIONS] =
{
QUESTION_ID_WHAT_ITEM,
QUESTION_ID_WHAT_ITEM,
QUESTION_ID_WHAT_ITEM,
QUESTION_ID_WHICH_MOVE,
QUESTION_ID_WHICH_MOVE,
QUESTION_ID_WHICH_MOVE,
QUESTION_ID_WHICH_MOVE,
QUESTION_ID_WHICH_MOVE,
QUESTION_ID_WHICH_FIRST,
QUESTION_ID_WIN_SPEECH
};
static void (* const sApprenticeFunctions[])(void) =
{
[APPRENTICE_FUNC_GAVE_LVLMODE] = Script_GivenApprenticeLvlMode,
[APPRENTICE_FUNC_SET_LVLMODE] = Script_SetApprenticeLvlMode,
[APPRENTICE_FUNC_SET_ID] = Script_SetApprenticeId,
[APPRENTICE_FUNC_SHUFFLE_SPECIES] = ShuffleApprenticeSpecies,
[APPRENTICE_FUNC_RANDOMIZE_QUESTIONS] = Script_SetRandomQuestionData,
[APPRENTICE_FUNC_ANSWERED_QUESTION] = IncrementQuestionsAnswered,
[APPRENTICE_FUNC_IS_FINAL_QUESTION] = IsFinalQuestion,
[APPRENTICE_FUNC_MENU] = Script_CreateApprenticeMenu,
[APPRENTICE_FUNC_PRINT_MSG] = Script_PrintApprenticeMessage,
[APPRENTICE_FUNC_RESET] = Script_ResetPlayerApprentice,
[APPRENTICE_FUNC_CHECK_GONE] = GetShouldCheckApprenticeGone,
[APPRENTICE_FUNC_GET_QUESTION] = ApprenticeGetQuestion,
[APPRENTICE_FUNC_GET_NUM_PARTY_MONS] = GetNumApprenticePartyMonsAssigned,
[APPRENTICE_FUNC_SET_PARTY_MON] = SetApprenticePartyMon,
[APPRENTICE_FUNC_INIT_QUESTION_DATA] = InitQuestionData,
[APPRENTICE_FUNC_FREE_QUESTION_DATA] = FreeQuestionData,
[APPRENTICE_FUNC_BUFFER_STRING] = ApprenticeBufferString,
[APPRENTICE_FUNC_SET_MOVE] = SetApprenticeMonMove,
[APPRENTICE_FUNC_SET_LEAD_MON] = SetLeadApprenticeMon,
[APPRENTICE_FUNC_OPEN_BAG] = Script_ApprenticeOpenBagMenu,
[APPRENTICE_FUNC_TRY_SET_HELD_ITEM] = TrySetApprenticeHeldItem,
[APPRENTICE_FUNC_SAVE] = SaveApprentice,
[APPRENTICE_FUNC_SET_GFX_SAVED] = SetSavedApprenticeTrainerGfxId,
[APPRENTICE_FUNC_SET_GFX] = SetPlayerApprenticeTrainerGfxId,
[APPRENTICE_FUNC_SHOULD_LEAVE] = GetShouldApprenticeLeave,
[APPRENTICE_FUNC_SHIFT_SAVED] = ShiftSavedApprentices,
};
// The first Apprentice can only be one of these
static const u8 sInitialApprenticeIds[8] = {0, 1, 2, 3, 6, 7, 8, 9};