Document contest results

This commit is contained in:
GriffinR
2020-06-17 17:48:20 -04:00
parent f600aff711
commit 24569583e4
36 changed files with 776 additions and 693 deletions
@@ -45,7 +45,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_OpponentEnter:: @ 8241BC3
BattleFrontier_BattleTower_EventScript_WarpToLobbyLost:: @ 8241C03 BattleFrontier_BattleTower_EventScript_WarpToLobbyLost:: @ 8241C03
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
tower_set TOWER_DATA_LVL_MODE tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3 setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER
special Script_TryGainNewFanFromCounter special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby
@@ -134,7 +134,7 @@ BattleFrontier_BattleTowerBattleRoom_EventScript_ContinueChallenge:: @ 8241DDC
BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon:: @ 8241DF6 BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobbyWon:: @ 8241DF6
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
tower_set TOWER_DATA_LVL_MODE tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3 setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER
special Script_TryGainNewFanFromCounter special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby
@@ -103,7 +103,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_DoTowerBattle:: @ 8249069
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost:: @ 824907E BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyLost:: @ 824907E
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
tower_set TOWER_DATA_LVL_MODE tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3 setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER
special Script_TryGainNewFanFromCounter special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby
@@ -208,7 +208,7 @@ BattleFrontier_BattleTowerMultiBattleRoom_EventScript_ContinueChallenge:: @ 8249
BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyWon:: @ 82492AF BattleFrontier_BattleTowerMultiBattleRoom_EventScript_WarpToLobbyWon:: @ 82492AF
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
tower_set TOWER_DATA_LVL_MODE tower_set TOWER_DATA_LVL_MODE
setvar VAR_0x8004, 3 setvar VAR_0x8004, FANCOUNTER_USED_BATTLE_TOWER
special Script_TryGainNewFanFromCounter special Script_TryGainNewFanFromCounter
goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby goto BattleFrontier_BattleTowerBattleRoom_EventScript_WarpToLobby
@@ -54,7 +54,7 @@ EverGrandeCity_DrakesRoom_EventScript_PostBattleSpeech:: @ 822871A
end end
EverGrandeCity_DrakesRoom_EventScript_Defeated:: @ 8228724 EverGrandeCity_DrakesRoom_EventScript_Defeated:: @ 8228724
setvar VAR_0x8004, 0 setvar VAR_0x8004, FANCOUNTER_DEFEATED_DRAKE
special Script_TryGainNewFanFromCounter special Script_TryGainNewFanFromCounter
setflag FLAG_DEFEATED_ELITE_4_DRAKE setflag FLAG_DEFEATED_ELITE_4_DRAKE
call PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles call PokemonLeague_EliteFour_SetAdvanceToNextRoomMetatiles
@@ -43,7 +43,7 @@ LilycoveCity_ContestLobby_EventScript_ContestArtist:: @ 821A264
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 0 showcontestwinner CONTEST_WINNER_ARTIST
lockall lockall
msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO
compare VAR_RESULT, YES compare VAR_RESULT, YES
@@ -217,7 +217,7 @@ LilycoveCity_ContestLobby_EventScript_LinkContestArtist:: @ 821A436
msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT msgbox LilycoveCity_ContestLobby_Text_YourPokemonSpurredMeToPaint, MSGBOX_DEFAULT
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 0 showcontestwinner CONTEST_WINNER_ARTIST
msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO msgbox LilycoveCity_ContestLobby_Text_ShouldITakePaintingToMuseum, MSGBOX_YESNO
compare VAR_RESULT, YES compare VAR_RESULT, YES
goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink goto_if_eq LilycoveCity_ContestLobby_EventScript_TakePaintingToMuseumLink
@@ -505,42 +505,42 @@ LilycoveCity_ContestLobby_EventScript_NinjaBoy:: @ 821A735
LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E LilycoveCity_ContestLobby_EventScript_ContestWinner1:: @ 821A73E
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 1 showcontestwinner CONTEST_WINNER_HALL_1
releaseall releaseall
end end
LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745 LilycoveCity_ContestLobby_EventScript_ContestWinner2:: @ 821A745
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 2 showcontestwinner CONTEST_WINNER_HALL_2
releaseall releaseall
end end
LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C LilycoveCity_ContestLobby_EventScript_ContestWinner3:: @ 821A74C
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 3 showcontestwinner CONTEST_WINNER_HALL_3
releaseall releaseall
end end
LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753 LilycoveCity_ContestLobby_EventScript_ContestWinner4:: @ 821A753
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 4 showcontestwinner CONTEST_WINNER_HALL_4
releaseall releaseall
end end
LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A LilycoveCity_ContestLobby_EventScript_ContestWinner5:: @ 821A75A
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 5 showcontestwinner CONTEST_WINNER_HALL_5
releaseall releaseall
end end
LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761 LilycoveCity_ContestLobby_EventScript_ContestWinner6:: @ 821A761
lockall lockall
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 6 showcontestwinner CONTEST_WINNER_HALL_6
releaseall releaseall
end end
@@ -183,35 +183,35 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_RichBoy:: @ 821999C
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5 LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCoolPainting:: @ 82199A5
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 9 showcontestwinner CONTEST_WINNER_MUSEUM_COOL
releaseall releaseall
end end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3 LilycoveCity_LilycoveMuseum_2F_EventScript_ShowBeautyPainting:: @ 82199B3
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 10 showcontestwinner CONTEST_WINNER_MUSEUM_BEAUTY
releaseall releaseall
end end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1 LilycoveCity_LilycoveMuseum_2F_EventScript_ShowCutePainting:: @ 82199C1
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 11 showcontestwinner CONTEST_WINNER_MUSEUM_CUTE
releaseall releaseall
end end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF LilycoveCity_LilycoveMuseum_2F_EventScript_ShowSmartPainting:: @ 82199CF
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 12 showcontestwinner CONTEST_WINNER_MUSEUM_SMART
releaseall releaseall
end end
LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD LilycoveCity_LilycoveMuseum_2F_EventScript_ShowToughPainting:: @ 82199DD
msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN msgbox LilycoveCity_LilycoveMuseum_2F_Text_ItsPaintingOfPokemon, MSGBOX_SIGN
fadescreen FADE_TO_BLACK fadescreen FADE_TO_BLACK
showcontestwinner 13 showcontestwinner CONTEST_WINNER_MUSEUM_TOUGH
releaseall releaseall
end end

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

+17
View File
@@ -29,6 +29,23 @@
#define CONTEST_CATEGORY_TOUGH 4 #define CONTEST_CATEGORY_TOUGH 4
#define CONTEST_CATEGORIES_COUNT 5 #define CONTEST_CATEGORIES_COUNT 5
#define CONTEST_WINNER_ARTIST 0 // Winner shown by the artist, painting not necessarily saved
#define CONTEST_WINNER_HALL_1 1
#define CONTEST_WINNER_HALL_2 2
#define CONTEST_WINNER_HALL_3 3
#define CONTEST_WINNER_HALL_4 4
#define CONTEST_WINNER_HALL_5 5
#define CONTEST_WINNER_HALL_6 6
#define NUM_CONTEST_HALL_WINNERS 6
#define CONTEST_WINNER_7 7
#define CONTEST_WINNER_8 8
#define CONTEST_WINNER_MUSEUM_COOL 9
#define CONTEST_WINNER_MUSEUM_BEAUTY 10
#define CONTEST_WINNER_MUSEUM_CUTE 11
#define CONTEST_WINNER_MUSEUM_SMART 12
#define CONTEST_WINNER_MUSEUM_TOUGH 13
// NUM_CONTEST_WINNERS in constants/global.h
#define CANT_ENTER_CONTEST 0 #define CANT_ENTER_CONTEST 0
#define CAN_ENTER_CONTEST_EQUAL_RANK 1 #define CAN_ENTER_CONTEST_EQUAL_RANK 1
#define CAN_ENTER_CONTEST_HIGH_RANK 2 #define CAN_ENTER_CONTEST_HIGH_RANK 2
+5
View File
@@ -75,4 +75,9 @@
#define FANCLUB_MEMBER7 14 #define FANCLUB_MEMBER7 14
#define FANCLUB_MEMBER8 15 #define FANCLUB_MEMBER8 15
#define FANCOUNTER_DEFEATED_DRAKE 0
#define FANCOUNTER_BATTLED_AT_BASE 1
#define FANCOUNTER_FINISHED_CONTEST 2
#define FANCOUNTER_USED_BATTLE_TOWER 3
#endif // GUARD_CONSTANTS_FIELD_SPECIALS_H #endif // GUARD_CONSTANTS_FIELD_SPECIALS_H
+1
View File
@@ -52,6 +52,7 @@
#define APPRENTICE_COUNT 4 #define APPRENTICE_COUNT 4
#define APPRENTICE_MAX_QUESTIONS 9 #define APPRENTICE_MAX_QUESTIONS 9
#define MAX_REMATCH_ENTRIES 100 // only REMATCH_TABLE_ENTRIES (78) are used #define MAX_REMATCH_ENTRIES 100 // only REMATCH_TABLE_ENTRIES (78) are used
#define NUM_CONTEST_WINNERS 13
#define PYRAMID_BAG_ITEMS_COUNT 10 #define PYRAMID_BAG_ITEMS_COUNT 10
#define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode. #define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode.
+2 -3
View File
@@ -430,9 +430,9 @@ struct ContestResources
extern struct ContestPokemon gContestMons[CONTESTANT_COUNT]; extern struct ContestPokemon gContestMons[CONTESTANT_COUNT];
extern s16 gContestMonConditions[CONTESTANT_COUNT]; extern s16 gContestMonConditions[CONTESTANT_COUNT];
extern s16 gUnknown_02039F08[CONTESTANT_COUNT]; extern s16 gContestMonTotalPoints[CONTESTANT_COUNT];
extern s16 gUnknown_02039F10[CONTESTANT_COUNT]; extern s16 gUnknown_02039F10[CONTESTANT_COUNT];
extern s16 gUnknown_02039F18[CONTESTANT_COUNT]; extern s16 gContestMonRound2Points[CONTESTANT_COUNT];
extern u8 gContestFinalStandings[CONTESTANT_COUNT]; extern u8 gContestFinalStandings[CONTESTANT_COUNT];
extern u8 gContestMonPartyIndex; extern u8 gContestMonPartyIndex;
extern u8 gContestPlayerMonIndex; extern u8 gContestPlayerMonIndex;
@@ -448,7 +448,6 @@ extern u8 sContestBgCopyFlags;
extern struct ContestWinner gCurContestWinner; extern struct ContestWinner gCurContestWinner;
extern u8 gUnknown_02039F5C; extern u8 gUnknown_02039F5C;
extern u8 gUnknown_02039F5D; extern u8 gUnknown_02039F5D;
extern u32 gContestRngValue; extern u32 gContestRngValue;
// contest.c // contest.c
+2 -2
View File
@@ -5,8 +5,8 @@ void BufferContestantTrainerName(void);
void BufferContestantMonNickname(void); void BufferContestantMonNickname(void);
void StartContest(void); void StartContest(void);
void BufferContestantMonSpecies(void); void BufferContestantMonSpecies(void);
void sub_80F8484(void); void ShowContestResults(void);
void sub_80F84C4(u8); void ContestLinkTransfer(u8);
void sub_80FC998(u8 taskId); void sub_80FC998(u8 taskId);
#endif // GUARD_CONTEST_LINK_80F57C4_H #endif // GUARD_CONTEST_LINK_80F57C4_H
+1 -1
View File
@@ -960,7 +960,7 @@ struct SaveBlock1
/*0x2E20*/ u8 additionalPhrases[8]; // bitfield for 33 additional phrases in easy chat system /*0x2E20*/ u8 additionalPhrases[8]; // bitfield for 33 additional phrases in easy chat system
/*0x2E28*/ OldMan oldMan; /*0x2E28*/ OldMan oldMan;
/*0x2e64*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff /*0x2e64*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff
/*0x2e90*/ struct ContestWinner contestWinners[13]; // 0 - 5 used in contest hall, 6 - 7 unused?, 8 - 12 museum /*0x2e90*/ struct ContestWinner contestWinners[NUM_CONTEST_WINNERS]; // see CONTEST_WINNER_*
/*0x3030*/ struct DayCare daycare; /*0x3030*/ struct DayCare daycare;
/*0x3150*/ struct LinkBattleRecords linkBattleRecords; /*0x3150*/ struct LinkBattleRecords linkBattleRecords;
/*0x31A8*/ u8 giftRibbons[52]; /*0x31A8*/ u8 giftRibbons[52];
+14 -14
View File
@@ -4927,23 +4927,23 @@ extern const u32 gRouletteCreditTiles[];
extern const u32 gRouletteNumbersTiles[]; extern const u32 gRouletteNumbersTiles[];
extern const u32 gRouletteMultiplierTiles[]; extern const u32 gRouletteMultiplierTiles[];
// Contest Link // Contest util
extern const u32 gUnknown_08C19588[]; extern const u32 gContestResults_Gfx[];
extern const u32 gUnknown_08C19EEC[]; extern const u32 gUnknown_08C19EEC[];
extern const u32 gUnknown_08C1A000[]; extern const u32 gUnknown_08C1A000[];
extern const u32 gUnknown_08C1A12C[]; extern const u32 gUnknown_08C1A12C[];
extern const u32 gUnknown_08C1A2B4[]; extern const u32 gContestResults_Pal[];
extern const u16 gUnknown_08DC6498[]; extern const u16 gLinkContestResults_Tilemap[];
extern const u16 gUnknown_08DC63F8[]; extern const u16 gNormalContestResults_Tilemap[];
extern const u16 gUnknown_08DC6420[]; extern const u16 gSuperContestResults_Tilemap[];
extern const u16 gUnknown_08DC6448[]; extern const u16 gHyperContestResults_Tilemap[];
extern const u16 gUnknown_08DC6470[]; extern const u16 gMasterContestResults_Tilemap[];
extern const u16 gUnknown_08DC64AC[]; extern const u16 gCoolContestResults_Tilemap[];
extern const u16 gUnknown_08DC64C0[]; extern const u16 gBeautyContestResults_Tilemap[];
extern const u16 gUnknown_08DC64D4[]; extern const u16 gCuteContestResults_Tilemap[];
extern const u16 gUnknown_08DC64E8[]; extern const u16 gSmartContestResults_Tilemap[];
extern const u16 gUnknown_08DC64FC[]; extern const u16 gToughContestResults_Tilemap[];
extern const u16 gUnknown_08DC6510[]; extern const u16 gContestResults_Tilemap[];
// Trainer Card. // Trainer Card.
extern const u16 gHoennTrainerCard0Star_Pal[]; extern const u16 gHoennTrainerCard0Star_Pal[];
+1 -1
View File
@@ -2494,7 +2494,7 @@ extern const u8 gText_CommunicationStandby[];
extern const u8 gText_AnnouncingResults[]; extern const u8 gText_AnnouncingResults[];
extern const u8 gText_PreliminaryResults[]; extern const u8 gText_PreliminaryResults[];
extern const u8 gText_Round2Results[]; extern const u8 gText_Round2Results[];
extern const u8 gText_Var1sVar2Won[]; extern const u8 gText_ContestantsMonWon[];
// Trainer Card // Trainer Card
extern const u8 gText_LinkCableBattles[]; extern const u8 gText_LinkCableBattles[];
+33 -33
View File
@@ -155,7 +155,7 @@ static void Contest_StartTextPrinter(const u8 *, u32);
static void ContestBG_FillBoxWithIncrementingTile(u8, u16, u8, u8, u8, u8, u8, s16); static void ContestBG_FillBoxWithIncrementingTile(u8, u16, u8, u8, u8, u8, u8, s16);
static bool32 Contest_RunTextPrinters(void); static bool32 Contest_RunTextPrinters(void);
static void Contest_SetBgCopyFlags(u32 flagIndex); static void Contest_SetBgCopyFlags(u32 flagIndex);
static void sub_80DBD18(void); static void CalculateFinalScores(void);
static void sub_80DD080(u8); static void sub_80DD080(u8);
static void sub_80DE9DC(u8); static void sub_80DE9DC(u8);
static void sub_80DCBE8(u8, u8); static void sub_80DCBE8(u8, u8);
@@ -184,7 +184,7 @@ static void sub_80DC3AC(void);
static bool8 sub_80DC3C4(void); static bool8 sub_80DC3C4(void);
static void ContestBG_FillBoxWithTile(u8, u16, u8, u8, u8, u8, u8); static void ContestBG_FillBoxWithTile(u8, u16, u8, u8, u8, u8, u8);
static void Contest_PrintTextToBg0WindowStd(u32, const u8 *); static void Contest_PrintTextToBg0WindowStd(u32, const u8 *);
static s16 sub_80DBD34(u8); static s16 GetContestantRound2Points(u8);
static void DetermineFinalStandings(void); static void DetermineFinalStandings(void);
static bool8 sub_80DBF30(s32, s32, struct UnknownContestStruct6 *); static bool8 sub_80DBF30(s32, s32, struct UnknownContestStruct6 *);
static void sub_80DC0F4(u8); static void sub_80DC0F4(u8);
@@ -221,9 +221,9 @@ static void SwapMoveDescAndContestTilemaps(void);
// EWRAM vars. // EWRAM vars.
EWRAM_DATA struct ContestPokemon gContestMons[CONTESTANT_COUNT] = {0}; EWRAM_DATA struct ContestPokemon gContestMons[CONTESTANT_COUNT] = {0};
EWRAM_DATA s16 gContestMonConditions[CONTESTANT_COUNT] = {0}; EWRAM_DATA s16 gContestMonConditions[CONTESTANT_COUNT] = {0};
EWRAM_DATA s16 gUnknown_02039F08[CONTESTANT_COUNT] = {0}; EWRAM_DATA s16 gContestMonTotalPoints[CONTESTANT_COUNT] = {0};
EWRAM_DATA s16 gUnknown_02039F10[CONTESTANT_COUNT] = {0}; EWRAM_DATA s16 gUnknown_02039F10[CONTESTANT_COUNT] = {0};
EWRAM_DATA s16 gUnknown_02039F18[CONTESTANT_COUNT] = {0}; EWRAM_DATA s16 gContestMonRound2Points[CONTESTANT_COUNT] = {0};
EWRAM_DATA u8 gContestFinalStandings[CONTESTANT_COUNT] = {0}; EWRAM_DATA u8 gContestFinalStandings[CONTESTANT_COUNT] = {0};
EWRAM_DATA u8 gContestMonPartyIndex = 0; EWRAM_DATA u8 gContestMonPartyIndex = 0;
EWRAM_DATA u8 gContestPlayerMonIndex = 0; EWRAM_DATA u8 gContestPlayerMonIndex = 0;
@@ -239,7 +239,7 @@ EWRAM_DATA u8 gHighestRibbonRank = 0;
EWRAM_DATA struct ContestResources *gContestResources = NULL; EWRAM_DATA struct ContestResources *gContestResources = NULL;
EWRAM_DATA u8 sContestBgCopyFlags = 0; EWRAM_DATA u8 sContestBgCopyFlags = 0;
EWRAM_DATA struct ContestWinner gCurContestWinner = {0}; EWRAM_DATA struct ContestWinner gCurContestWinner = {0};
EWRAM_DATA u8 gUnknown_02039F5C = 0; EWRAM_DATA bool8 gUnknown_02039F5C = 0;
EWRAM_DATA u8 gUnknown_02039F5D = 0; EWRAM_DATA u8 gUnknown_02039F5D = 0;
// IWRAM common vars. // IWRAM common vars.
@@ -2490,7 +2490,7 @@ static void sub_80DA5E8(u8 taskId)
gBattle_BG2_Y = 0; gBattle_BG2_Y = 0;
for (i = 0; i < CONTESTANT_COUNT; i++) for (i = 0; i < CONTESTANT_COUNT; i++)
gUnknown_02039F10[i] = eContestantStatus[i].pointTotal; gUnknown_02039F10[i] = eContestantStatus[i].pointTotal;
sub_80DBD18(); CalculateFinalScores();
ContestClearGeneralTextWindow(); ContestClearGeneralTextWindow();
if (!(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)) if (!(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK))
BravoTrainerPokemonProfile_BeforeInterview1(eContestantStatus[gContestPlayerMonIndex].prevMove); BravoTrainerPokemonProfile_BeforeInterview1(eContestantStatus[gContestPlayerMonIndex].prevMove);
@@ -3367,22 +3367,22 @@ bool8 Contest_IsMonsTurnDisabled(u8 a)
return FALSE; return FALSE;
} }
static void sub_80DBCE0(u8 contestant) static void CalculateTotalPointsForContestant(u8 contestant)
{ {
gUnknown_02039F18[contestant] = sub_80DBD34(contestant); gContestMonRound2Points[contestant] = GetContestantRound2Points(contestant);
gUnknown_02039F08[contestant] = gContestMonConditions[contestant] + gUnknown_02039F18[contestant]; gContestMonTotalPoints[contestant] = gContestMonConditions[contestant] + gContestMonRound2Points[contestant];
} }
static void sub_80DBD18(void) static void CalculateFinalScores(void)
{ {
s32 i; s32 i;
for (i = 0; i < CONTESTANT_COUNT; i++) for (i = 0; i < CONTESTANT_COUNT; i++)
sub_80DBCE0(i); CalculateTotalPointsForContestant(i);
DetermineFinalStandings(); DetermineFinalStandings();
} }
static s16 sub_80DBD34(u8 contestant) static s16 GetContestantRound2Points(u8 contestant)
{ {
return gUnknown_02039F10[contestant] * 2; return gUnknown_02039F10[contestant] * 2;
} }
@@ -3411,7 +3411,7 @@ static void DetermineFinalStandings(void)
for (i = 0; i < CONTESTANT_COUNT; i++) for (i = 0; i < CONTESTANT_COUNT; i++)
{ {
sp8[i].unk0 = gUnknown_02039F08[i]; sp8[i].unk0 = gContestMonTotalPoints[i];
sp8[i].unk4 = gContestMonConditions[i]; sp8[i].unk4 = gContestMonConditions[i];
sp8[i].unk8 = randomOrdering[i]; sp8[i].unk8 = randomOrdering[i];
sp8[i].unkC = i; sp8[i].unkC = i;
@@ -5313,22 +5313,22 @@ bool8 sub_80DEDA8(u8 rank)
} }
if (rank != 0xFE) if (rank != 0xFE)
{ {
u8 r4 = sub_80DEFA8(rank, 1); u8 id = sub_80DEFA8(rank, 1);
gSaveBlock1Ptr->contestWinners[r4].personality = gContestMons[i].personality; gSaveBlock1Ptr->contestWinners[id].personality = gContestMons[i].personality;
gSaveBlock1Ptr->contestWinners[r4].species = gContestMons[i].species; gSaveBlock1Ptr->contestWinners[id].species = gContestMons[i].species;
gSaveBlock1Ptr->contestWinners[r4].trainerId = gContestMons[i].otId; gSaveBlock1Ptr->contestWinners[id].trainerId = gContestMons[i].otId;
StringCopy(gSaveBlock1Ptr->contestWinners[r4].monName, gContestMons[i].nickname); StringCopy(gSaveBlock1Ptr->contestWinners[id].monName, gContestMons[i].nickname);
StringCopy(gSaveBlock1Ptr->contestWinners[r4].trainerName, gContestMons[i].trainerName); StringCopy(gSaveBlock1Ptr->contestWinners[id].trainerName, gContestMons[i].trainerName);
if(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK) if(gLinkContestFlags & LINK_CONTEST_FLAG_IS_LINK)
gSaveBlock1Ptr->contestWinners[r4].contestRank = CONTEST_RANK_LINK; gSaveBlock1Ptr->contestWinners[id].contestRank = CONTEST_RANK_LINK;
else else
gSaveBlock1Ptr->contestWinners[r4].contestRank = gSpecialVar_ContestRank; gSaveBlock1Ptr->contestWinners[id].contestRank = gSpecialVar_ContestRank;
if (rank != 0xFF) if (rank != 0xFF)
gSaveBlock1Ptr->contestWinners[r4].contestCategory = gSpecialVar_ContestCategory; gSaveBlock1Ptr->contestWinners[id].contestCategory = gSpecialVar_ContestCategory;
else else
gSaveBlock1Ptr->contestWinners[r4].contestCategory = r7; gSaveBlock1Ptr->contestWinners[id].contestCategory = r7;
} }
else else
{ {
@@ -5354,24 +5354,24 @@ u8 sub_80DEFA8(u8 rank, u8 b)
case CONTEST_RANK_MASTER: case CONTEST_RANK_MASTER:
if (b != 0) if (b != 0)
{ {
for (i = 5; i >= 1; i--) for (i = NUM_CONTEST_HALL_WINNERS - 1; i >= 1; i--)
memcpy(&gSaveBlock1Ptr->contestWinners[i], &gSaveBlock1Ptr->contestWinners[i - 1], sizeof(struct ContestWinner)); memcpy(&gSaveBlock1Ptr->contestWinners[i], &gSaveBlock1Ptr->contestWinners[i - 1], sizeof(struct ContestWinner));
} }
return 0; return 0;
default: // CONTEST_RANK_LINK default:
switch (gSpecialVar_ContestCategory) switch (gSpecialVar_ContestCategory)
{ {
case CONTEST_CATEGORY_COOL: case CONTEST_CATEGORY_COOL:
return 8; return CONTEST_WINNER_MUSEUM_COOL - 1;
case CONTEST_CATEGORY_BEAUTY: case CONTEST_CATEGORY_BEAUTY:
return 9; return CONTEST_WINNER_MUSEUM_BEAUTY - 1;
case CONTEST_CATEGORY_CUTE: case CONTEST_CATEGORY_CUTE:
return 10; return CONTEST_WINNER_MUSEUM_CUTE - 1;
case CONTEST_CATEGORY_SMART: case CONTEST_CATEGORY_SMART:
return 11; return CONTEST_WINNER_MUSEUM_SMART - 1;
case CONTEST_CATEGORY_TOUGH: case CONTEST_CATEGORY_TOUGH:
default: default:
return 12; return CONTEST_WINNER_MUSEUM_TOUGH - 1;
} }
} }
} }
@@ -5471,7 +5471,7 @@ static void sub_80DF250(void)
gContestResources->field_1c[r1].unkD |= 1; gContestResources->field_1c[r1].unkD |= 1;
for (i = 0; i < CONTESTANT_COUNT; i++) for (i = 0; i < CONTESTANT_COUNT; i++)
{ {
if (i != var_38 && gUnknown_02039F08[var_38] - gUnknown_02039F08[i] <= 50) if (i != var_38 && gContestMonTotalPoints[var_38] - gContestMonTotalPoints[i] <= 50)
gContestResources->field_1c[i].unkD |= 4; gContestResources->field_1c[i].unkD |= 4;
if (!gContestResources->field_1c[i].unkE_2) if (!gContestResources->field_1c[i].unkE_2)
@@ -5491,7 +5491,7 @@ static void sub_80DF250(void)
{ {
if (gContestMonConditions[i] > gContestMonConditions[j]) if (gContestMonConditions[i] > gContestMonConditions[j])
r12 = TRUE; r12 = TRUE;
if (gUnknown_02039F18[i] > gUnknown_02039F18[j]) if (gContestMonRound2Points[i] > gContestMonRound2Points[j])
r8 = TRUE; r8 = TRUE;
} }
if (!r12 && !r8) if (!r12 && !r8)
@@ -5582,7 +5582,7 @@ static void sub_80DF4F8(void)
{ {
if (gContestMonConditions[r7] < gContestMonConditions[i]) if (gContestMonConditions[r7] < gContestMonConditions[i])
r9++; r9++;
if (gUnknown_02039F18[r7] < gUnknown_02039F18[i]) if (gContestMonRound2Points[r7] < gContestMonRound2Points[i])
r10++; r10++;
} }
+637 -583
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -296,14 +296,14 @@ void sub_80FCACC(u8 taskId)
case 0: case 0:
if (IsLinkTaskFinished()) if (IsLinkTaskFinished())
{ {
if (sub_80FC4F4(gUnknown_02039F08, sizeof(gUnknown_02039F08)) == 1) if (sub_80FC4F4(gContestMonTotalPoints, sizeof(gContestMonTotalPoints)) == 1)
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
} }
break; break;
case 1: case 1:
if (sub_80FC55C()) if (sub_80FC55C())
{ {
memcpy(gUnknown_02039F08, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F08)); memcpy(gContestMonTotalPoints, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonTotalPoints));
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
} }
break; break;
@@ -334,14 +334,14 @@ void sub_80FCACC(u8 taskId)
case 6: case 6:
if (IsLinkTaskFinished()) if (IsLinkTaskFinished())
{ {
if (sub_80FC4F4(gUnknown_02039F18, sizeof(gUnknown_02039F18)) == 1) if (sub_80FC4F4(gContestMonRound2Points, sizeof(gContestMonRound2Points)) == 1)
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
} }
break; break;
case 7: case 7:
if (sub_80FC55C()) if (sub_80FC55C())
{ {
memcpy(gUnknown_02039F18, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gUnknown_02039F18)); memcpy(gContestMonRound2Points, gBlockRecvBuffer[gUnknown_02039F2B], sizeof(gContestMonRound2Points));
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
} }
break; break;
+9 -9
View File
@@ -170,7 +170,7 @@ void SetContestWinnerForPainting(int contestWinnerId)
u8 *ptr2 = &gUnknown_02039F5C; u8 *ptr2 = &gUnknown_02039F5C;
gCurContestWinner = gSaveBlock1Ptr->contestWinners[contestWinnerId - 1]; gCurContestWinner = gSaveBlock1Ptr->contestWinners[contestWinnerId - 1];
*ptr1 = contestWinnerId - 1; *ptr1 = contestWinnerId - 1;
*ptr2 = 0; *ptr2 = FALSE;
} }
void CB2_ContestPainting(void) void CB2_ContestPainting(void)
@@ -281,7 +281,7 @@ static void InitContestPaintingWindow(void)
ShowBg(1); ShowBg(1);
} }
static void PrintContestPaintingCaption(u8 contestType, u8 arg1) static void PrintContestPaintingCaption(u8 contestType, bool8 arg1)
{ {
int x; int x;
u8 category; u8 category;
@@ -519,12 +519,14 @@ _081303F8:\n\
} }
#endif #endif
static void LoadContestPaintingFrame(u8 contestWinnerId, u8 arg1) #define VRAM_PICTURE_DATA(x, y) (((u16 *)(BG_SCREEN_ADDR(12)))[(y) * 32 + (x)])
static void LoadContestPaintingFrame(u8 contestWinnerId, bool8 arg1)
{ {
u8 x, y; u8 x, y;
LoadPalette(gPictureFramePalettes, 0, 0x100); LoadPalette(gPictureFramePalettes, 0, 0x100);
if (arg1 == 1) if (arg1 == TRUE)
{ {
switch (gContestPaintingWinner->contestCategory / 3) switch (gContestPaintingWinner->contestCategory / 3)
{ {
@@ -550,8 +552,6 @@ static void LoadContestPaintingFrame(u8 contestWinnerId, u8 arg1)
break; break;
} }
#define VRAM_PICTURE_DATA(x, y) (((u16 *)(BG_SCREEN_ADDR(12)))[(y) * 32 + (x)])
// Set the background // Set the background
for (y = 0; y < 20; y++) for (y = 0; y < 20; y++)
{ {
@@ -569,8 +569,6 @@ static void LoadContestPaintingFrame(u8 contestWinnerId, u8 arg1)
// Re-set the entire top row to the first top frame part // Re-set the entire top row to the first top frame part
for (x = 0; x < 16; x++) for (x = 0; x < 16; x++)
VRAM_PICTURE_DATA(x + 7, 2) = (*gContestMonPixels)[2][7]; VRAM_PICTURE_DATA(x + 7, 2) = (*gContestMonPixels)[2][7];
#undef VRAM_PICTURE_DATA
} }
else if (contestWinnerId < 8) else if (contestWinnerId < 8)
{ {
@@ -605,6 +603,8 @@ static void LoadContestPaintingFrame(u8 contestWinnerId, u8 arg1)
} }
} }
#undef VRAM_PICTURE_DATA
static void InitPaintingMonOamData(u8 contestWinnerId) static void InitPaintingMonOamData(u8 contestWinnerId)
{ {
//Some hacks just to get the asm to match //Some hacks just to get the asm to match
@@ -692,7 +692,7 @@ static void DoContestPaintingImageProcessing(u8 imageEffect)
LoadPalette(gContestPaintingMonPalette, 0x100, 0x200); LoadPalette(gContestPaintingMonPalette, 0x100, 0x200);
} }
static void CreateContestPaintingPicture(u8 contestWinnerId, u8 arg1) static void CreateContestPaintingPicture(u8 contestWinnerId, bool8 arg1)
{ {
AllocPaintingResources(); AllocPaintingResources();
InitContestMonPixels(gContestPaintingWinner->species, 0); InitContestMonPixels(gContestPaintingWinner->species, 0);
+8 -2
View File
@@ -4095,11 +4095,17 @@ void UpdateTrainerFanClubGameClear(void)
} }
// If the player has < 3 fans, gain a new fan whenever the counter reaches 20+ // If the player has < 3 fans, gain a new fan whenever the counter reaches 20+
// Defeating Drake or participating in a Link Contest increments the counter by 2 // Defeating Drake or participating in a Contest increments the counter by 2
// Participating at Battle Tower or in a Secret Base battle increments the counter by 1 // Participating at Battle Tower or in a Secret Base battle increments the counter by 1
u8 TryGainNewFanFromCounter(u8 incrementId) u8 TryGainNewFanFromCounter(u8 incrementId)
{ {
static const u8 sCounterIncrements[] = { 2, 1, 2, 1 }; static const u8 sCounterIncrements[] =
{
[FANCOUNTER_DEFEATED_DRAKE] = 2,
[FANCOUNTER_BATTLED_AT_BASE] = 1,
[FANCOUNTER_FINISHED_CONTEST] = 2,
[FANCOUNTER_USED_BATTLE_TOWER] = 1
};
if (VarGet(VAR_LILYCOVE_FAN_CLUB_STATE) == 2) if (VarGet(VAR_LILYCOVE_FAN_CLUB_STATE) == 2)
{ {
+14 -16
View File
@@ -471,13 +471,11 @@ const u8 gTiles_8C19450[] = INCBIN_U8("graphics/contest/heart.4bpp");
const u32 gUnknownGfx_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.4bpp.lz"); const u32 gUnknownGfx_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.4bpp.lz");
const u32 gUnknownPal_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.gbapal.lz"); const u32 gUnknownPal_C19470[] = INCBIN_U32("graphics/unknown/unknown_C19470.gbapal.lz");
const u32 gUnknown_08C19588[] = INCBIN_U32("graphics/contest/misc_2.4bpp.lz"); const u32 gContestResults_Gfx[] = INCBIN_U32("graphics/contest/results_screen.4bpp.lz");
const u32 gUnknown_08C19EEC[] = INCBIN_U32("graphics/contest/misc_2_tilemap_1.bin.lz"); const u32 gUnknown_08C19EEC[] = INCBIN_U32("graphics/contest/misc_2_tilemap_1.bin.lz");
const u32 gUnknown_08C1A000[] = INCBIN_U32("graphics/contest/misc_2_tilemap_2.bin.lz"); const u32 gUnknown_08C1A000[] = INCBIN_U32("graphics/contest/misc_2_tilemap_2.bin.lz");
const u32 gUnknown_08C1A12C[] = INCBIN_U32("graphics/contest/misc_2_tilemap_3.bin.lz"); const u32 gUnknown_08C1A12C[] = INCBIN_U32("graphics/contest/misc_2_tilemap_3.bin.lz");
const u32 gContestResults_Pal[] = INCBIN_U32("graphics/contest/results_screen.gbapal.lz");
const u32 gUnknown_08C1A2B4[] = INCBIN_U32("graphics/contest/misc_2.gbapal.lz");
const u32 gBattleAnimSpriteGfx_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.4bpp.lz");
const u32 gBattleAnimSpritePal_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.gbapal.lz"); const u32 gBattleAnimSpritePal_Impact[] = INCBIN_U32("graphics/battle_anims/sprites/impact.gbapal.lz");
@@ -1298,19 +1296,19 @@ const u8 gFireRedMenuElements_Gfx[] = INCBIN_U8("graphics/interface_fr/menu.4bpp
const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/interface/hm.4bpp"); const u8 gBagMenuHMIcon_Gfx[] = INCBIN_U8("graphics/interface/hm.4bpp");
// contest link stuff, appears to be a set of tilemaps // contest results screen
const u16 gUnknown_08DC63F8[] = INCBIN_U16("graphics/contest/clink_tilemap1.bin"); const u16 gNormalContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_normal.bin");
const u16 gUnknown_08DC6420[] = INCBIN_U16("graphics/contest/clink_tilemap2.bin"); const u16 gSuperContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_super.bin");
const u16 gUnknown_08DC6448[] = INCBIN_U16("graphics/contest/clink_tilemap3.bin"); const u16 gHyperContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_hyper.bin");
const u16 gUnknown_08DC6470[] = INCBIN_U16("graphics/contest/clink_tilemap4.bin"); const u16 gMasterContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_master.bin");
const u16 gUnknown_08DC6498[] = INCBIN_U16("graphics/contest/clink_tilemap5.bin"); const u16 gLinkContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_link.bin");
const u16 gUnknown_08DC64AC[] = INCBIN_U16("graphics/contest/clink_tilemap6.bin"); const u16 gCoolContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_cool.bin");
const u16 gUnknown_08DC64C0[] = INCBIN_U16("graphics/contest/clink_tilemap7.bin"); const u16 gBeautyContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_beauty.bin");
const u16 gUnknown_08DC64D4[] = INCBIN_U16("graphics/contest/clink_tilemap8.bin"); const u16 gCuteContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_cute.bin");
const u16 gUnknown_08DC64E8[] = INCBIN_U16("graphics/contest/clink_tilemap9.bin"); const u16 gSmartContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_smart.bin");
const u16 gUnknown_08DC64FC[] = INCBIN_U16("graphics/contest/clink_tilemap10.bin"); const u16 gToughContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen_tough.bin");
const u16 gUnknown_08DC6510[] = INCBIN_U16("graphics/contest/clink_tilemap11.bin"); const u16 gContestResults_Tilemap[] = INCBIN_U16("graphics/contest/results_screen.bin");
// pokenav // pokenav
+5 -3
View File
@@ -1469,7 +1469,9 @@ bool8 ScrCmd_hidemonpic(struct ScriptContext *ctx)
bool8 ScrCmd_showcontestwinner(struct ScriptContext *ctx) bool8 ScrCmd_showcontestwinner(struct ScriptContext *ctx)
{ {
u8 contestWinnerId = ScriptReadByte(ctx); u8 contestWinnerId = ScriptReadByte(ctx);
if (contestWinnerId)
// Don't save artist's painting yet
if (contestWinnerId != CONTEST_WINNER_ARTIST)
SetContestWinnerForPainting(contestWinnerId); SetContestWinnerForPainting(contestWinnerId);
ShowContestWinner(); ShowContestWinner();
@@ -1953,14 +1955,14 @@ bool8 ScrCmd_startcontest(struct ScriptContext *ctx)
bool8 ScrCmd_showcontestresults(struct ScriptContext *ctx) bool8 ScrCmd_showcontestresults(struct ScriptContext *ctx)
{ {
sub_80F8484(); ShowContestResults();
ScriptContext1_Stop(); ScriptContext1_Stop();
return TRUE; return TRUE;
} }
bool8 ScrCmd_contestlinktransfer(struct ScriptContext *ctx) bool8 ScrCmd_contestlinktransfer(struct ScriptContext *ctx)
{ {
sub_80F84C4(gSpecialVar_ContestCategory); ContestLinkTransfer(gSpecialVar_ContestCategory);
ScriptContext1_Stop(); ScriptContext1_Stop();
return TRUE; return TRUE;
} }
+2 -2
View File
@@ -122,7 +122,7 @@ void ShouldReadyContestArtist(void)
{ {
if (gContestFinalStandings[gContestPlayerMonIndex] == 0 if (gContestFinalStandings[gContestPlayerMonIndex] == 0
&& gSpecialVar_ContestRank == CONTEST_RANK_MASTER && gSpecialVar_ContestRank == CONTEST_RANK_MASTER
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800) && gContestMonTotalPoints[gContestPlayerMonIndex] >= 800)
{ {
gSpecialVar_0x8004 = TRUE; gSpecialVar_0x8004 = TRUE;
} }
@@ -304,7 +304,7 @@ u8 GiveMonArtistRibbon(void)
if (!hasArtistRibbon if (!hasArtistRibbon
&& gContestFinalStandings[gContestPlayerMonIndex] == 0 && gContestFinalStandings[gContestPlayerMonIndex] == 0
&& gSpecialVar_ContestRank == CONTEST_RANK_MASTER && gSpecialVar_ContestRank == CONTEST_RANK_MASTER
&& gUnknown_02039F08[gContestPlayerMonIndex] >= 800) && gContestMonTotalPoints[gContestPlayerMonIndex] >= 800)
{ {
hasArtistRibbon = 1; hasArtistRibbon = 1;
SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON, &hasArtistRibbon); SetMonData(&gPlayerParty[gContestMonPartyIndex], MON_DATA_ARTIST_RIBBON, &hasArtistRibbon);
+2 -1
View File
@@ -37,6 +37,7 @@
#include "constants/event_bg.h" #include "constants/event_bg.h"
#include "constants/decorations.h" #include "constants/decorations.h"
#include "constants/event_objects.h" #include "constants/event_objects.h"
#include "constants/field_specials.h"
#include "constants/items.h" #include "constants/items.h"
#include "constants/maps.h" #include "constants/maps.h"
#include "constants/map_types.h" #include "constants/map_types.h"
@@ -1120,7 +1121,7 @@ const u8 *GetSecretBaseTrainerLoseText(void)
void PrepSecretBaseBattleFlags(void) void PrepSecretBaseBattleFlags(void)
{ {
TryGainNewFanFromCounter(1); TryGainNewFanFromCounter(FANCOUNTER_BATTLED_AT_BASE);
gTrainerBattleOpponent_A = TRAINER_SECRET_BASE; gTrainerBattleOpponent_A = TRAINER_SECRET_BASE;
gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_SECRET_BASE; gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_SECRET_BASE;
} }
+1 -1
View File
@@ -1236,7 +1236,7 @@ const u8 gText_BDot[] = _("B.");
const u8 gText_AnnouncingResults[] = _("Announcing the results!"); const u8 gText_AnnouncingResults[] = _("Announcing the results!");
const u8 gText_PreliminaryResults[] = _("The preliminary results!"); const u8 gText_PreliminaryResults[] = _("The preliminary results!");
const u8 gText_Round2Results[] = _("Round 2 results!"); const u8 gText_Round2Results[] = _("Round 2 results!");
const u8 gText_Var1sVar2Won[] = _("{STR_VAR_1}'s {STR_VAR_2} won!"); const u8 gText_ContestantsMonWon[] = _("{STR_VAR_1}'s {STR_VAR_2} won!");
const u8 gText_CommunicationStandby[] = _("Communication standby…"); const u8 gText_CommunicationStandby[] = _("Communication standby…");
const u8 gText_ColorDarkGrey[] = _("{COLOR DARK_GREY}"); const u8 gText_ColorDarkGrey[] = _("{COLOR DARK_GREY}");
const u8 gText_ColorDynamic6WhiteDynamic5[] = _("{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR6 WHITE DYNAMIC_COLOR5}"); // Unused const u8 gText_ColorDynamic6WhiteDynamic5[] = _("{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR6 WHITE DYNAMIC_COLOR5}"); // Unused