mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-27 13:53:52 +01:00
move data, more contest lady funcs
This commit is contained in:
parent
009caa21c8
commit
771a7b25fa
@ -8,9 +8,9 @@ void sub_818DEF4(void);
|
||||
void sub_818E564(void);
|
||||
void sub_818E570(const LilycoveLady *lilycoveLady);
|
||||
bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock);
|
||||
void sub_818E7E0(u8 *dest1, u8 *dest2);
|
||||
void sub_818E81C(u8 *dest);
|
||||
void sub_818E848(u8 *dest);
|
||||
void BufferContestLadyMonName(u8 *dest1, u8 *dest2);
|
||||
void BufferContestLadyPlayerName(u8 *dest);
|
||||
void BufferContestLadyLanguage(u8 *dest);
|
||||
void BufferContestName(u8 *dest, u8 category);
|
||||
u8 sub_818E880(void);
|
||||
|
||||
|
470
src/data/lilycove_lady.h
Normal file
470
src/data/lilycove_lady.h
Normal file
@ -0,0 +1,470 @@
|
||||
#include "constants/easy_chat.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/moves.h"
|
||||
|
||||
static const u16 sContestLadyMonGfxId[] =
|
||||
{
|
||||
EVENT_OBJ_GFX_ZIGZAGOON_1,
|
||||
EVENT_OBJ_GFX_SKITTY,
|
||||
EVENT_OBJ_GFX_POOCHYENA,
|
||||
EVENT_OBJ_GFX_KECLEON_1,
|
||||
EVENT_OBJ_GFX_PIKACHU
|
||||
};
|
||||
|
||||
static const u16 sLilycoveLadyGfxId[] =
|
||||
{
|
||||
EVENT_OBJ_GFX_WOMAN_4,
|
||||
EVENT_OBJ_GFX_WOMAN_2,
|
||||
EVENT_OBJ_GFX_GIRL_2
|
||||
};
|
||||
|
||||
// Quiz Lady data
|
||||
static const u16 sQuizLadyQuestion1[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_STORES,
|
||||
EC_WORD_INFORMATION,
|
||||
EC_WORD_ON,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_CAMERA,
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_POKENAV
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion2[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_ISN_T,
|
||||
EC_WORD_A,
|
||||
EC_WORD_GAME,
|
||||
EC_WORD_VERSION,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_RUBY,
|
||||
EC_WORD_SAPPHIRE,
|
||||
EC_WORD_DARK
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion3[] =
|
||||
{
|
||||
EC_WORD_HOW,
|
||||
EC_WORD_DO,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_EVOLVE,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_LEVEL,
|
||||
EC_WORD_INSOMNIA,
|
||||
EC_WORD_CUTE_CHARM
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion4[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_THE,
|
||||
EC_WORD_PRETTY,
|
||||
EC_WORD_ITEM,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_COLD,
|
||||
EC_WORD_FLOWERS,
|
||||
EC_WORD_MACHINE
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion5[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_ITEM,
|
||||
EC_WORD_DO,
|
||||
EC_WORD_YOU,
|
||||
EC_WORD_BREAK,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_EGG,
|
||||
EC_WORD_MAIL,
|
||||
EC_WORD_PHONE
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion6[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_WORD_STOP,
|
||||
EC_MOVE2(CONFUSION),
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_ILLUMINATE,
|
||||
EC_WORD_OWN_TEMPO,
|
||||
EC_WORD_SWIFT_SWIM
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion7[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_OF,
|
||||
EC_WORD_THESE,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_MUSIC,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_FLYING,
|
||||
EC_WORD_STEEL,
|
||||
EC_WORD_ROCK
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion8[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_MOVE2(BLOCK),
|
||||
EC_WORD_ESCAPE,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_RUN_AWAY,
|
||||
EC_WORD_SHADOW_TAG,
|
||||
EC_WORD_WONDER_GUARD
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion9[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_WORD_STOP,
|
||||
EC_WORD_POISON,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_GUTS,
|
||||
EC_WORD_IMMUNITY,
|
||||
EC_WORD_SHED_SKIN
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion10[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_GOES,
|
||||
EC_WORD_WITH,
|
||||
EC_WORD_CENTER,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_POKENAV
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion11[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_STORES,
|
||||
EC_WORD_YOUR,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_PC,
|
||||
EC_WORD_DEPT_STORE,
|
||||
EC_WORD_TELEVISION
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion12[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_MACHINE,
|
||||
EC_WORD_GIVES,
|
||||
EC_WORD_YOU,
|
||||
EC_WORD_INFORMATION,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_BIKE,
|
||||
EC_WORD_LOCOMOTIVE,
|
||||
EC_WORD_TELEVISION
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion13[] =
|
||||
{
|
||||
EC_WORD_A,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_WAS,
|
||||
EC_WORD_ONCE,
|
||||
EC_WORD_THIS,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_PHONE,
|
||||
EC_WORD_PLUSH_DOLL,
|
||||
EC_WORD_LETTER
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion14[] =
|
||||
{
|
||||
EC_WORD_STEEL,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_STRONG,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_ICE,
|
||||
EC_WORD_GROUND,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion15[] =
|
||||
{
|
||||
EC_WORD_DARK,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_WEAK,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_PSYCHIC,
|
||||
EC_WORD_FIGHTING,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion16[] =
|
||||
{
|
||||
EC_WORD_GHOST,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_WEAK,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_NORMAL,
|
||||
EC_WORD_DARK,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 *const sQuizLadyQuizQuestions[] =
|
||||
{
|
||||
sQuizLadyQuestion1,
|
||||
sQuizLadyQuestion2,
|
||||
sQuizLadyQuestion3,
|
||||
sQuizLadyQuestion4,
|
||||
sQuizLadyQuestion5,
|
||||
sQuizLadyQuestion6,
|
||||
sQuizLadyQuestion7,
|
||||
sQuizLadyQuestion8,
|
||||
sQuizLadyQuestion9,
|
||||
sQuizLadyQuestion10,
|
||||
sQuizLadyQuestion11,
|
||||
sQuizLadyQuestion12,
|
||||
sQuizLadyQuestion13,
|
||||
sQuizLadyQuestion14,
|
||||
sQuizLadyQuestion15,
|
||||
sQuizLadyQuestion16
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuizAnswers[] =
|
||||
{
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_DARK,
|
||||
EC_WORD_LEVEL,
|
||||
EC_WORD_FLOWERS,
|
||||
EC_WORD_EGG,
|
||||
EC_WORD_OWN_TEMPO,
|
||||
EC_WORD_ROCK,
|
||||
EC_WORD_SHADOW_TAG,
|
||||
EC_WORD_IMMUNITY,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_PC,
|
||||
EC_WORD_TELEVISION,
|
||||
EC_WORD_PLUSH_DOLL,
|
||||
EC_WORD_ICE,
|
||||
EC_WORD_FIGHTING,
|
||||
EC_WORD_DARK // DARK is accepted as the correct answer despite the fact that it's wrong
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyPrizes[] =
|
||||
{
|
||||
ITEM_GLITTER_MAIL,
|
||||
ITEM_BEAD_MAIL,
|
||||
ITEM_TROPIC_MAIL,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_BELUE_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_TM15_HYPER_BEAM,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PREMIER_BALL
|
||||
};
|
||||
|
||||
// Favor Lady data
|
||||
static const u8 *const sFavorLadyDescriptions[] =
|
||||
{
|
||||
gText_FavorLady_Slippery,
|
||||
gText_FavorLady_Roundish,
|
||||
gText_FavorLady_Whamish,
|
||||
gText_FavorLady_Shiny,
|
||||
gText_FavorLady_Sticky,
|
||||
gText_FavorLady_Pointy
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Slippery[] =
|
||||
{
|
||||
ITEM_REPEL,
|
||||
ITEM_SUPER_REPEL,
|
||||
ITEM_MAX_REPEL,
|
||||
ITEM_ANTIDOTE,
|
||||
ITEM_PARALYZE_HEAL,
|
||||
ITEM_BURN_HEAL,
|
||||
ITEM_BELUE_BERRY,
|
||||
ITEM_AWAKENING,
|
||||
ITEM_ICE_HEAL,
|
||||
ITEM_REVIVE,
|
||||
ITEM_MAX_REVIVE,
|
||||
ITEM_ENERGY_POWDER,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Roundish[] =
|
||||
{
|
||||
ITEM_FLUFFY_TAIL,
|
||||
ITEM_PEARL,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_HARD_STONE,
|
||||
ITEM_SMOKE_BALL,
|
||||
ITEM_SHOAL_SHELL,
|
||||
ITEM_TINY_MUSHROOM,
|
||||
ITEM_BIG_MUSHROOM,
|
||||
ITEM_PECHA_BERRY,
|
||||
ITEM_ASPEAR_BERRY,
|
||||
ITEM_ORAN_BERRY,
|
||||
ITEM_GREPA_BERRY,
|
||||
ITEM_MAGOST_BERRY,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_POKE_BALL,
|
||||
ITEM_ULTRA_BALL,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Whamish[] =
|
||||
{
|
||||
ITEM_REVIVAL_HERB,
|
||||
ITEM_POTION,
|
||||
ITEM_FRESH_WATER,
|
||||
ITEM_SODA_POP,
|
||||
ITEM_LEMONADE,
|
||||
ITEM_HARD_STONE,
|
||||
ITEM_LIGHT_BALL,
|
||||
ITEM_LAVA_COOKIE,
|
||||
ITEM_CHESTO_BERRY,
|
||||
ITEM_NANAB_BERRY,
|
||||
ITEM_WEPEAR_BERRY,
|
||||
ITEM_KELPSY_BERRY,
|
||||
ITEM_NOMEL_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Shiny[] =
|
||||
{
|
||||
ITEM_HEAL_POWDER,
|
||||
ITEM_X_SPEED,
|
||||
ITEM_X_ATTACK,
|
||||
ITEM_X_DEFEND,
|
||||
ITEM_BLUE_FLUTE,
|
||||
ITEM_YELLOW_FLUTE,
|
||||
ITEM_RED_FLUTE,
|
||||
ITEM_BLACK_FLUTE,
|
||||
ITEM_WHITE_FLUTE,
|
||||
ITEM_NUGGET,
|
||||
ITEM_SUN_STONE,
|
||||
ITEM_STARDUST,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_PEARL,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_TWISTED_SPOON,
|
||||
ITEM_SILVER_POWDER,
|
||||
ITEM_BRIGHT_POWDER,
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_PREMIER_BALL,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Sticky[] =
|
||||
{
|
||||
ITEM_ENERGY_ROOT,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_MAX_POTION,
|
||||
ITEM_DIRE_HIT,
|
||||
ITEM_X_ACCURACY,
|
||||
ITEM_GUARD_SPEC,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_LEFTOVERS,
|
||||
ITEM_TINY_MUSHROOM,
|
||||
ITEM_HEART_SCALE,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Pointy[] =
|
||||
{
|
||||
ITEM_QUICK_CLAW,
|
||||
ITEM_POISON_BARB,
|
||||
ITEM_SHARP_BEAK,
|
||||
ITEM_DRAGON_FANG,
|
||||
ITEM_TAMATO_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_PETAYA_BERRY,
|
||||
ITEM_SALAC_BERRY,
|
||||
ITEM_STARDUST,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 *const sFavorLadyAcceptedItemLists[] =
|
||||
{
|
||||
sFavorLadyAcceptedItems_Slippery,
|
||||
sFavorLadyAcceptedItems_Roundish,
|
||||
sFavorLadyAcceptedItems_Whamish,
|
||||
sFavorLadyAcceptedItems_Shiny,
|
||||
sFavorLadyAcceptedItems_Sticky,
|
||||
sFavorLadyAcceptedItems_Pointy
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyPrizes[] =
|
||||
{
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_NUGGET,
|
||||
ITEM_PROTEIN,
|
||||
ITEM_HEART_SCALE,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PP_MAX
|
||||
};
|
||||
|
||||
|
||||
static const u8 *const sContestLadyMonNames[] =
|
||||
{
|
||||
gText_ContestLady_Handsome,
|
||||
gText_ContestLady_Vinny,
|
||||
gText_ContestLady_Moreme,
|
||||
gText_ContestLady_Ironhard,
|
||||
gText_ContestLady_Muscle
|
||||
};
|
||||
|
||||
static const u8 *const sContestLadyCategoryNames[] =
|
||||
{
|
||||
gText_ContestLady_Coolness,
|
||||
gText_ContestLady_Beauty,
|
||||
gText_ContestLady_Cuteness,
|
||||
gText_ContestLady_Smartness,
|
||||
gText_ContestLady_Toughness
|
||||
};
|
||||
|
||||
static const u8 *const sContestNames[] =
|
||||
{
|
||||
gText_CoolnessContest,
|
||||
gText_BeautyContest,
|
||||
gText_CutenessContest,
|
||||
gText_SmartnessContest,
|
||||
gText_ToughnessContest
|
||||
};
|
||||
|
||||
static const u16 sContestLadyMonSpecies[] =
|
||||
{
|
||||
SPECIES_ZIGZAGOON,
|
||||
SPECIES_SKITTY,
|
||||
SPECIES_POOCHYENA,
|
||||
SPECIES_KECLEON,
|
||||
SPECIES_PIKACHU
|
||||
};
|
@ -17,11 +17,10 @@
|
||||
#include "contest.h"
|
||||
#include "berry.h"
|
||||
#include "strings.h"
|
||||
#include "constants/easy_chat.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/moves.h"
|
||||
|
||||
// TODO use array count macro?
|
||||
#define QUIZ_QUESTION_LEN 9
|
||||
#define QUIZ_QUESTION_NUM 16
|
||||
|
||||
enum
|
||||
{
|
||||
@ -37,8 +36,8 @@ enum
|
||||
QUIZ_PHASE_GIVE_PRIZE
|
||||
};
|
||||
|
||||
#include "data/lilycove_lady.h"
|
||||
|
||||
//TODO name phases
|
||||
|
||||
static void InitLilycoveQuizLady(void);
|
||||
static void InitLilycoveFavorLady(void);
|
||||
@ -50,473 +49,7 @@ static u8 BufferAuthorName(void);
|
||||
static bool8 IsQuizTrainerIdNotPlayer(void);
|
||||
static u8 GetPlayerNameLength(const u8 *);
|
||||
|
||||
static const u16 sContestLadyMonGfxId[] =
|
||||
{
|
||||
EVENT_OBJ_GFX_ZIGZAGOON_1,
|
||||
EVENT_OBJ_GFX_SKITTY,
|
||||
EVENT_OBJ_GFX_POOCHYENA,
|
||||
EVENT_OBJ_GFX_KECLEON_1,
|
||||
EVENT_OBJ_GFX_PIKACHU
|
||||
};
|
||||
|
||||
static const u16 sLilycoveLadyGfxId[] =
|
||||
{
|
||||
EVENT_OBJ_GFX_WOMAN_4,
|
||||
EVENT_OBJ_GFX_WOMAN_2,
|
||||
EVENT_OBJ_GFX_GIRL_2
|
||||
};
|
||||
|
||||
// Quiz Lady data
|
||||
static const u16 sQuizLadyQuestion1[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_STORES,
|
||||
EC_WORD_INFORMATION,
|
||||
EC_WORD_ON,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_CAMERA,
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_POKENAV
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion2[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_ISN_T,
|
||||
EC_WORD_A,
|
||||
EC_WORD_GAME,
|
||||
EC_WORD_VERSION,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_RUBY,
|
||||
EC_WORD_SAPPHIRE,
|
||||
EC_WORD_DARK
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion3[] =
|
||||
{
|
||||
EC_WORD_HOW,
|
||||
EC_WORD_DO,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_EVOLVE,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_LEVEL,
|
||||
EC_WORD_INSOMNIA,
|
||||
EC_WORD_CUTE_CHARM
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion4[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_THE,
|
||||
EC_WORD_PRETTY,
|
||||
EC_WORD_ITEM,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_COLD,
|
||||
EC_WORD_FLOWERS,
|
||||
EC_WORD_MACHINE
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion5[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_ITEM,
|
||||
EC_WORD_DO,
|
||||
EC_WORD_YOU,
|
||||
EC_WORD_BREAK,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_EGG,
|
||||
EC_WORD_MAIL,
|
||||
EC_WORD_PHONE
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion6[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_WORD_STOP,
|
||||
EC_MOVE2(CONFUSION),
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_ILLUMINATE,
|
||||
EC_WORD_OWN_TEMPO,
|
||||
EC_WORD_SWIFT_SWIM
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion7[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_OF,
|
||||
EC_WORD_THESE,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_MUSIC,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_FLYING,
|
||||
EC_WORD_STEEL,
|
||||
EC_WORD_ROCK
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion8[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_MOVE2(BLOCK),
|
||||
EC_WORD_ESCAPE,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_RUN_AWAY,
|
||||
EC_WORD_SHADOW_TAG,
|
||||
EC_WORD_WONDER_GUARD
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion9[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_WILL,
|
||||
EC_WORD_STOP,
|
||||
EC_WORD_POISON,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_GUTS,
|
||||
EC_WORD_IMMUNITY,
|
||||
EC_WORD_SHED_SKIN
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion10[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_GOES,
|
||||
EC_WORD_WITH,
|
||||
EC_WORD_CENTER,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_POKENAV
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion11[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_STORES,
|
||||
EC_WORD_YOUR,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_QUES,
|
||||
0xFFFF,
|
||||
EC_WORD_PC,
|
||||
EC_WORD_DEPT_STORE,
|
||||
EC_WORD_TELEVISION
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion12[] =
|
||||
{
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_MACHINE,
|
||||
EC_WORD_GIVES,
|
||||
EC_WORD_YOU,
|
||||
EC_WORD_INFORMATION,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_BIKE,
|
||||
EC_WORD_LOCOMOTIVE,
|
||||
EC_WORD_TELEVISION
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion13[] =
|
||||
{
|
||||
EC_WORD_A,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_WAS,
|
||||
EC_WORD_ONCE,
|
||||
EC_WORD_THIS,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_PHONE,
|
||||
EC_WORD_PLUSH_DOLL,
|
||||
EC_WORD_LETTER
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion14[] =
|
||||
{
|
||||
EC_WORD_STEEL,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_STRONG,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_ICE,
|
||||
EC_WORD_GROUND,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion15[] =
|
||||
{
|
||||
EC_WORD_DARK,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_WEAK,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_PSYCHIC,
|
||||
EC_WORD_FIGHTING,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuestion16[] =
|
||||
{
|
||||
EC_WORD_GHOST,
|
||||
EC_WORD_IS,
|
||||
EC_WORD_WEAK,
|
||||
EC_WORD_VERSUS,
|
||||
EC_WORD_WHICH,
|
||||
EC_WORD_QUES,
|
||||
EC_WORD_NORMAL,
|
||||
EC_WORD_DARK,
|
||||
0xFFFF
|
||||
};
|
||||
|
||||
static const u16 *const sQuizLadyQuizQuestions[] =
|
||||
{
|
||||
sQuizLadyQuestion1,
|
||||
sQuizLadyQuestion2,
|
||||
sQuizLadyQuestion3,
|
||||
sQuizLadyQuestion4,
|
||||
sQuizLadyQuestion5,
|
||||
sQuizLadyQuestion6,
|
||||
sQuizLadyQuestion7,
|
||||
sQuizLadyQuestion8,
|
||||
sQuizLadyQuestion9,
|
||||
sQuizLadyQuestion10,
|
||||
sQuizLadyQuestion11,
|
||||
sQuizLadyQuestion12,
|
||||
sQuizLadyQuestion13,
|
||||
sQuizLadyQuestion14,
|
||||
sQuizLadyQuestion15,
|
||||
sQuizLadyQuestion16
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyQuizAnswers[] =
|
||||
{
|
||||
EC_WORD_POKEDEX,
|
||||
EC_WORD_DARK,
|
||||
EC_WORD_LEVEL,
|
||||
EC_WORD_FLOWERS,
|
||||
EC_WORD_EGG,
|
||||
EC_WORD_OWN_TEMPO,
|
||||
EC_WORD_ROCK,
|
||||
EC_WORD_SHADOW_TAG,
|
||||
EC_WORD_IMMUNITY,
|
||||
EC_WORD_POKEMON,
|
||||
EC_WORD_PC,
|
||||
EC_WORD_TELEVISION,
|
||||
EC_WORD_PLUSH_DOLL,
|
||||
EC_WORD_ICE,
|
||||
EC_WORD_FIGHTING,
|
||||
EC_WORD_DARK // DARK is accepted as the correct answer despite the fact that it's wrong
|
||||
};
|
||||
|
||||
static const u16 sQuizLadyPrizes[] =
|
||||
{
|
||||
ITEM_GLITTER_MAIL,
|
||||
ITEM_BEAD_MAIL,
|
||||
ITEM_TROPIC_MAIL,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_MAX_ETHER,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_BELUE_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_TM15_HYPER_BEAM,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PREMIER_BALL
|
||||
};
|
||||
|
||||
#define QUIZ_QUESTION_LEN 9
|
||||
#define QUIZ_QUESTION_NUM 16
|
||||
|
||||
// Favor Lady data
|
||||
static const u8 *const sFavorLadyDescriptions[] =
|
||||
{
|
||||
gText_FavorLady_Slippery,
|
||||
gText_FavorLady_Roundish,
|
||||
gText_FavorLady_Whamish,
|
||||
gText_FavorLady_Shiny,
|
||||
gText_FavorLady_Sticky,
|
||||
gText_FavorLady_Pointy
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Slippery[] =
|
||||
{
|
||||
ITEM_REPEL,
|
||||
ITEM_SUPER_REPEL,
|
||||
ITEM_MAX_REPEL,
|
||||
ITEM_ANTIDOTE,
|
||||
ITEM_PARALYZE_HEAL,
|
||||
ITEM_BURN_HEAL,
|
||||
ITEM_BELUE_BERRY,
|
||||
ITEM_AWAKENING,
|
||||
ITEM_ICE_HEAL,
|
||||
ITEM_REVIVE,
|
||||
ITEM_MAX_REVIVE,
|
||||
ITEM_ENERGY_POWDER,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Roundish[] =
|
||||
{
|
||||
ITEM_FLUFFY_TAIL,
|
||||
ITEM_PEARL,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_HARD_STONE,
|
||||
ITEM_SMOKE_BALL,
|
||||
ITEM_SHOAL_SHELL,
|
||||
ITEM_TINY_MUSHROOM,
|
||||
ITEM_BIG_MUSHROOM,
|
||||
ITEM_PECHA_BERRY,
|
||||
ITEM_ASPEAR_BERRY,
|
||||
ITEM_ORAN_BERRY,
|
||||
ITEM_GREPA_BERRY,
|
||||
ITEM_MAGOST_BERRY,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_POKE_BALL,
|
||||
ITEM_ULTRA_BALL,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Whamish[] =
|
||||
{
|
||||
ITEM_REVIVAL_HERB,
|
||||
ITEM_POTION,
|
||||
ITEM_FRESH_WATER,
|
||||
ITEM_SODA_POP,
|
||||
ITEM_LEMONADE,
|
||||
ITEM_HARD_STONE,
|
||||
ITEM_LIGHT_BALL,
|
||||
ITEM_LAVA_COOKIE,
|
||||
ITEM_CHESTO_BERRY,
|
||||
ITEM_NANAB_BERRY,
|
||||
ITEM_WEPEAR_BERRY,
|
||||
ITEM_KELPSY_BERRY,
|
||||
ITEM_NOMEL_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Shiny[] =
|
||||
{
|
||||
ITEM_HEAL_POWDER,
|
||||
ITEM_X_SPEED,
|
||||
ITEM_X_ATTACK,
|
||||
ITEM_X_DEFEND,
|
||||
ITEM_BLUE_FLUTE,
|
||||
ITEM_YELLOW_FLUTE,
|
||||
ITEM_RED_FLUTE,
|
||||
ITEM_BLACK_FLUTE,
|
||||
ITEM_WHITE_FLUTE,
|
||||
ITEM_NUGGET,
|
||||
ITEM_SUN_STONE,
|
||||
ITEM_STARDUST,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_PEARL,
|
||||
ITEM_BIG_PEARL,
|
||||
ITEM_TWISTED_SPOON,
|
||||
ITEM_SILVER_POWDER,
|
||||
ITEM_BRIGHT_POWDER,
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_PREMIER_BALL,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Sticky[] =
|
||||
{
|
||||
ITEM_ENERGY_ROOT,
|
||||
ITEM_FULL_RESTORE,
|
||||
ITEM_MAX_POTION,
|
||||
ITEM_DIRE_HIT,
|
||||
ITEM_X_ACCURACY,
|
||||
ITEM_GUARD_SPEC,
|
||||
ITEM_WATMEL_BERRY,
|
||||
ITEM_LEFTOVERS,
|
||||
ITEM_TINY_MUSHROOM,
|
||||
ITEM_HEART_SCALE,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyAcceptedItems_Pointy[] =
|
||||
{
|
||||
ITEM_QUICK_CLAW,
|
||||
ITEM_POISON_BARB,
|
||||
ITEM_SHARP_BEAK,
|
||||
ITEM_DRAGON_FANG,
|
||||
ITEM_TAMATO_BERRY,
|
||||
ITEM_DURIN_BERRY,
|
||||
ITEM_PETAYA_BERRY,
|
||||
ITEM_SALAC_BERRY,
|
||||
ITEM_STARDUST,
|
||||
ITEM_STAR_PIECE,
|
||||
ITEM_NONE
|
||||
};
|
||||
|
||||
static const u16 *const sFavorLadyAcceptedItemLists[] =
|
||||
{
|
||||
sFavorLadyAcceptedItems_Slippery,
|
||||
sFavorLadyAcceptedItems_Roundish,
|
||||
sFavorLadyAcceptedItems_Whamish,
|
||||
sFavorLadyAcceptedItems_Shiny,
|
||||
sFavorLadyAcceptedItems_Sticky,
|
||||
sFavorLadyAcceptedItems_Pointy
|
||||
};
|
||||
|
||||
static const u16 sFavorLadyPrizes[] =
|
||||
{
|
||||
ITEM_LUXURY_BALL,
|
||||
ITEM_NUGGET,
|
||||
ITEM_PROTEIN,
|
||||
ITEM_HEART_SCALE,
|
||||
ITEM_RARE_CANDY,
|
||||
ITEM_PP_MAX
|
||||
};
|
||||
|
||||
|
||||
static const u8 *const sContestLadyMonNames[] =
|
||||
{
|
||||
gText_ContestLady_Handsome,
|
||||
gText_ContestLady_Vinny,
|
||||
gText_ContestLady_Moreme,
|
||||
gText_ContestLady_Ironhard,
|
||||
gText_ContestLady_Muscle
|
||||
};
|
||||
|
||||
static const u8 *const sContestLadyCategoryNames[] =
|
||||
{
|
||||
gText_ContestLady_Coolness,
|
||||
gText_ContestLady_Beauty,
|
||||
gText_ContestLady_Cuteness,
|
||||
gText_ContestLady_Smartness,
|
||||
gText_ContestLady_Toughness
|
||||
};
|
||||
|
||||
static const u8 *const sContestNames[] =
|
||||
{
|
||||
gText_CoolnessContest,
|
||||
gText_BeautyContest,
|
||||
gText_CutenessContest,
|
||||
gText_SmartnessContest,
|
||||
gText_ToughnessContest
|
||||
};
|
||||
|
||||
static const u16 sContestLadyMonSpecies[] =
|
||||
{
|
||||
SPECIES_ZIGZAGOON,
|
||||
SPECIES_SKITTY,
|
||||
SPECIES_POOCHYENA,
|
||||
SPECIES_KECLEON,
|
||||
SPECIES_PIKACHU
|
||||
};
|
||||
|
||||
static EWRAM_DATA struct LilycoveLadyFavor *sFavorLadyPtr = NULL;
|
||||
static EWRAM_DATA struct LilycoveLadyQuiz *sQuizLadyPtr = NULL;
|
||||
@ -1223,27 +756,27 @@ bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock)
|
||||
return response;
|
||||
}
|
||||
|
||||
static void sub_818E794(u8 *dest1, u8 *dest2) //sub_818E794
|
||||
static void BufferContestLadyCategoryAndMonName(u8 *dest1, u8 *dest2)
|
||||
{
|
||||
sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest;
|
||||
StringCopy(dest1, sContestLadyCategoryNames[sContestLadyPtr->category]);
|
||||
StringCopy10(dest2, sContestLadyMonNames[sContestLadyPtr->category]);
|
||||
}
|
||||
|
||||
void sub_818E7E0(u8 *dest1, u8 *dest2)
|
||||
void BufferContestLadyMonName(u8 *dest1, u8 *dest2)
|
||||
{
|
||||
sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest;
|
||||
*dest1 = sContestLadyPtr->category;
|
||||
StringCopy(dest2, sContestLadyMonNames[sContestLadyPtr->category]);
|
||||
}
|
||||
|
||||
void sub_818E81C(u8 *dest)
|
||||
void BufferContestLadyPlayerName(u8 *dest)
|
||||
{
|
||||
sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest;
|
||||
StringCopy(dest, sContestLadyPtr->playerName);
|
||||
}
|
||||
|
||||
void sub_818E848(u8 *dest)
|
||||
void BufferContestLadyLanguage(u8 *dest)
|
||||
{
|
||||
sContestLadyPtr = &gSaveBlock1Ptr->lilycoveLady.contest;
|
||||
*dest = sContestLadyPtr->language;
|
||||
@ -1298,7 +831,7 @@ bool8 sub_818E8E0(void)
|
||||
// called when mon enjoys pokeblock
|
||||
void sub_818E914(void)
|
||||
{
|
||||
sub_818E794(gStringVar2, gStringVar1);
|
||||
BufferContestLadyCategoryAndMonName(gStringVar2, gStringVar1);
|
||||
}
|
||||
|
||||
void OpenPokeblockCaseForContestLady(void)
|
||||
|
6
src/tv.c
6
src/tv.c
@ -1657,12 +1657,12 @@ void PutLilycoveContestLadyShowOnTheAir(void)
|
||||
if (gSpecialVar_Result != TRUE)
|
||||
{
|
||||
show = &gSaveBlock1Ptr->tvShows[sCurTVShowSlot];
|
||||
sub_818E848(&show->contestLiveUpdates2.language);
|
||||
BufferContestLadyLanguage(&show->contestLiveUpdates2.language);
|
||||
show->contestLiveUpdates2.pokemonNameLanguage = LANGUAGE_ENGLISH;
|
||||
show->contestLiveUpdates2.kind = TVSHOW_CONTEST_LIVE_UPDATES_2;
|
||||
show->contestLiveUpdates2.active = TRUE;
|
||||
sub_818E81C(show->contestLiveUpdates2.playerName);
|
||||
sub_818E7E0(&show->contestLiveUpdates2.contestCategory, show->contestLiveUpdates2.nickname);
|
||||
BufferContestLadyPlayerName(show->contestLiveUpdates2.playerName);
|
||||
BufferContestLadyMonName(&show->contestLiveUpdates2.contestCategory, show->contestLiveUpdates2.nickname);
|
||||
show->contestLiveUpdates2.pokeblockState = sub_818E880();
|
||||
tv_store_id_2x(show);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user