summaryrefslogtreecommitdiff
path: root/src/quest_log_battle.c
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@users.noreply.github.com>2020-01-16 09:53:08 -0500
committerGitHub <noreply@github.com>2020-01-16 09:53:08 -0500
commitfad367402892e1c25634c4448936d84a621c341c (patch)
treeb796aba2ae57729cae5f78767336082dd46a6b21 /src/quest_log_battle.c
parent0bc479db34154988c6322bf5f2bb6d48556f62c3 (diff)
parent884b46a5dc26ae9e0c0abcf7e0d69c1122a30e22 (diff)
Merge pull request #225 from GriffinRichards/doc-questlog
Document some quest log
Diffstat (limited to 'src/quest_log_battle.c')
-rw-r--r--src/quest_log_battle.c62
1 files changed, 32 insertions, 30 deletions
diff --git a/src/quest_log_battle.c b/src/quest_log_battle.c
index efe866dea..7ae4d7c2c 100644
--- a/src/quest_log_battle.c
+++ b/src/quest_log_battle.c
@@ -6,6 +6,7 @@
#include "link.h"
#include "overworld.h"
#include "quest_log.h"
+#include "constants/trainer_classes.h"
struct QuestLogStruct_TrainerBattleRecord
{
@@ -18,20 +19,20 @@ struct QuestLogStruct_TrainerBattleRecord
struct QuestLogStruct_WildBattleRecord
{
- u16 v0;
- u16 v2;
- u8 v4;
+ u16 defeatedSpecies;
+ u16 caughtSpecies;
+ u8 mapSec;
};
static void sub_812C334(s32 *, s32 *);
-void sub_812BFDC(void)
+void TrySetQuestLogBattleEvent(void)
{
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_OLD_MAN_TUTORIAL | BATTLE_TYPE_POKEDUDE)) && (gBattleOutcome == B_OUTCOME_WON || gBattleOutcome == B_OUTCOME_CAUGHT))
{
struct QuestLogStruct_TrainerBattleRecord * questLogTrainerBattleRecord = Alloc(sizeof(struct QuestLogStruct_TrainerBattleRecord));
struct QuestLogStruct_WildBattleRecord * questLogWildBattleRecord = Alloc(sizeof(struct QuestLogStruct_WildBattleRecord));
- u16 questLogMessageType;
+ u16 eventId;
u16 playerEndingHP;
u16 playerMaxHP;
@@ -39,17 +40,17 @@ void sub_812BFDC(void)
{
switch (gTrainers[gTrainerBattleOpponent_A].trainerClass)
{
- case 0x54:
- questLogMessageType = 30;
+ case CLASS_LEADER_2:
+ eventId = QL_EVENT_DEFEATED_GYM_LEADER;
break;
- case 0x5a:
- questLogMessageType = 33;
+ case CLASS_CHAMPION_2:
+ eventId = QL_EVENT_DEFEATED_CHAMPION;
break;
- case 0x57:
- questLogMessageType = 32;
+ case CLASS_ELITE_FOUR_2:
+ eventId = QL_EVENT_DEFEATED_E4_MEMBER;
break;
default:
- questLogMessageType = 34;
+ eventId = QL_EVENT_DEFEATED_TRAINER;
break;
}
questLogTrainerBattleRecord->v0 = gTrainerBattleOpponent_A;
@@ -78,22 +79,22 @@ void sub_812BFDC(void)
questLogTrainerBattleRecord->v6 = 1;
if (playerEndingHP < playerMaxHP / 3)
questLogTrainerBattleRecord->v6++;
- sub_8113550(questLogMessageType, (const u16 *)questLogTrainerBattleRecord);
+ SetQuestLogEvent(eventId, (const u16 *)questLogTrainerBattleRecord);
}
else
{
if (gBattleOutcome == B_OUTCOME_WON)
{
- questLogWildBattleRecord->v0 = GetMonData(gEnemyParty + 0, MON_DATA_SPECIES);
- questLogWildBattleRecord->v2 = SPECIES_NONE;
+ questLogWildBattleRecord->defeatedSpecies = GetMonData(gEnemyParty, MON_DATA_SPECIES);
+ questLogWildBattleRecord->caughtSpecies = SPECIES_NONE;
}
- else
+ else // gBattleOutcome == B_OUTCOME_CAUGHT
{
- questLogWildBattleRecord->v0 = SPECIES_NONE;
- questLogWildBattleRecord->v2 = GetMonData(gEnemyParty + 0, MON_DATA_SPECIES);
+ questLogWildBattleRecord->defeatedSpecies = SPECIES_NONE;
+ questLogWildBattleRecord->caughtSpecies = GetMonData(gEnemyParty, MON_DATA_SPECIES);
}
- questLogWildBattleRecord->v4 = GetCurrentRegionMapSectionId();
- sub_8113550(31, (const u16 *)questLogWildBattleRecord);
+ questLogWildBattleRecord->mapSec = GetCurrentRegionMapSectionId();
+ SetQuestLogEvent(QL_EVENT_DEFEATED_WILD_MON, (const u16 *)questLogWildBattleRecord);
}
Free(questLogTrainerBattleRecord);
Free(questLogWildBattleRecord);
@@ -106,13 +107,13 @@ struct QuestLogStruct_LinkBattleRecord
u8 v1[3][7];
};
-void sub_812C224(void)
+void TrySetQuestLogLinkBattleEvent(void)
{
s32 sp0;
s32 sp4[2];
- u16 r8;
+ u16 eventId;
s32 r3;
- u32 r0;
+ bool32 inUnionRoom;
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
{
@@ -120,7 +121,7 @@ void sub_812C224(void)
r5->v0 = gBattleOutcome - 1; // 0 = won, 1 = lost, 2 = drew
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
{
- r8 = 15;
+ eventId = QL_EVENT_LINK_BATTLED_MULTI;
sub_812C334(&sp0, sp4);
for (r3 = 0; r3 < 7; r3++)
{
@@ -132,20 +133,21 @@ void sub_812C224(void)
else
{
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
- r8 = 14;
+ eventId = QL_EVENT_LINK_BATTLED_DOUBLE;
else
{
- r0 = InUnionRoom();
- r8 = 13;
- if (r0 == TRUE)
- r8 = 19;
+ inUnionRoom = InUnionRoom();
+ eventId = QL_EVENT_LINK_BATTLED_SINGLE;
+
+ if (inUnionRoom == TRUE)
+ eventId = QL_EVENT_LINK_BATTLED_UNION;
}
for (r3 = 0; r3 < 7; r3++)
{
r5->v1[0][r3] = gLinkPlayers[gBattleStruct->multiplayerId ^ 1].name[r3];
}
}
- sub_8113550(r8, (const u16 *)r5);
+ SetQuestLogEvent(eventId, (const u16 *)r5);
Free(r5);
}
}