More quest log documentation amid other stuff

This commit is contained in:
PikalaxALT
2020-04-05 20:30:45 -04:00
parent 35a578c620
commit a622448029
58 changed files with 697 additions and 690 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
gUnknown_3005E88 gQuestLogPlaybackState
sNumEventsInLogEntry sNumEventsInLogEntry
gQuestLogFieldInput gQuestLogFieldInput
sCurQuestLogEntry sCurQuestLogEntry
+1 -1
View File
@@ -1,2 +1,2 @@
gUnknown_3005070 sQuestLogScriptContextPtr
gSelectedObjectEvent gSelectedObjectEvent
+15 -15
View File
@@ -418,7 +418,7 @@ gBattleAnims_General::
.4byte General_StatsChange .4byte General_StatsChange
.4byte General_SubstituteFade .4byte General_SubstituteFade
.4byte General_SubstituteAppear .4byte General_SubstituteAppear
.4byte General_PokeblockThrow .4byte General_BaitThrow
.4byte General_ItemKnockoff .4byte General_ItemKnockoff
.4byte General_TurnTrap .4byte General_TurnTrap
.4byte General_ItemEffect .4byte General_ItemEffect
@@ -437,11 +437,11 @@ gBattleAnims_General::
.4byte General_FocusPunchSetUp .4byte General_FocusPunchSetUp
.4byte General_IngrainHeal .4byte General_IngrainHeal
.4byte General_WishHeal .4byte General_WishHeal
.4byte gUnknown_81D628A .4byte General_MonScared
.4byte gUnknown_81D6301 .4byte General_GhostGetOut
.4byte gUnknown_81D637B .4byte General_SilphScoped
.4byte gUnknown_81D6394 .4byte General_SafariRockThrow
.4byte gUnknown_81D63DC .4byte General_SafariReaction
gBattleAnims_Special:: gBattleAnims_Special::
.4byte Special_LevelUp .4byte Special_LevelUp
@@ -10584,17 +10584,17 @@ General_SubstituteAppear:: @ 81D5C04
createvisualtask AnimTask_MonToSubstitute, 2, createvisualtask AnimTask_MonToSubstitute, 2,
end end
General_PokeblockThrow:: @ 81D5C0C General_BaitThrow:: @ 81D5C0C
createvisualtask sub_80F1C8C, 2, 0 createvisualtask sub_80F1C8C, 2, 0
createvisualtask AnimTask_LoadPokeblockGfx, 2, createvisualtask AnimTask_LoadBaitGfx, 2,
delay 0 delay 0
waitplaysewithpan SE_W026, 192, 22 waitplaysewithpan SE_W026, 192, 22
createsprite gPokeblockSpriteTemplate, ANIM_TARGET, 3, -18, 12, 0, 32 createsprite gSafariBaitSpriteTemplate, ANIM_TARGET, 3, -18, 12, 0, 32
delay 50 delay 50
loopsewithpan SE_W039, 63, 19, 2 loopsewithpan SE_W039, 63, 19, 2
createvisualtask AnimTask_SwayMon, 5, 1, 8, 1536, 2, 1 createvisualtask AnimTask_SwayMon, 5, 1, 8, 1536, 2, 1
waitforvisualfinish waitforvisualfinish
createvisualtask AnimTask_FreePokeblockGfx, 2, createvisualtask AnimTask_FreeBaitGfx, 2,
end end
General_ItemKnockoff:: @ 81D5C54 General_ItemKnockoff:: @ 81D5C54
@@ -10925,7 +10925,7 @@ General_WishHeal:: @ 81D6250
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 10, 0, 0 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 10, 0, 0
end end
gUnknown_81D628A:: @ 81D628A General_MonScared:: @ 81D628A
createvisualtask sub_80F1C8C, 2, 1 createvisualtask sub_80F1C8C, 2, 1
waitforvisualfinish waitforvisualfinish
loadspritegfx ANIM_TAG_SWEAT_BEAD loadspritegfx ANIM_TAG_SWEAT_BEAD
@@ -10942,7 +10942,7 @@ gUnknown_81D628A:: @ 81D628A
waitforvisualfinish waitforvisualfinish
end end
gUnknown_81D6301:: @ 81D6301 General_GhostGetOut:: @ 81D6301
createvisualtask sub_80F1C8C, 2, 1 createvisualtask sub_80F1C8C, 2, 1
waitforvisualfinish waitforvisualfinish
fadetobg 2 fadetobg 2
@@ -10967,7 +10967,7 @@ gUnknown_81D6301:: @ 81D6301
waitbgfadein waitbgfadein
end end
gUnknown_81D637B:: @ 81D637B General_SilphScoped:: @ 81D637B
monbg 0 monbg 0
playsewithpan SE_W100, 192 playsewithpan SE_W100, 192
waitplaysewithpan SE_W107, 192, 48 waitplaysewithpan SE_W107, 192, 48
@@ -10977,7 +10977,7 @@ gUnknown_81D637B:: @ 81D637B
clearmonbg 0 clearmonbg 0
end end
gUnknown_81D6394:: @ 81D6394 General_SafariRockThrow:: @ 81D6394
createvisualtask sub_80F1C8C, 2, 0 createvisualtask sub_80F1C8C, 2, 0
waitforvisualfinish waitforvisualfinish
loadspritegfx ANIM_TAG_ROCKS loadspritegfx ANIM_TAG_ROCKS
@@ -10997,7 +10997,7 @@ gUnknown_81D6394:: @ 81D6394
waitforvisualfinish waitforvisualfinish
end end
gUnknown_81D63DC:: @ 81D63DC General_SafariReaction:: @ 81D63DC
createvisualtask sub_80F1CE4, 2, createvisualtask sub_80F1CE4, 2,
waitforvisualfinish waitforvisualfinish
jumpargeq 7, 0, gUnknown_81D63FD jumpargeq 7, 0, gUnknown_81D63FD

Before

Width:  |  Height:  |  Size: 179 B

After

Width:  |  Height:  |  Size: 179 B

+1 -1
View File
@@ -33,7 +33,7 @@
#define B_ACTION_RUN 3 #define B_ACTION_RUN 3
#define B_ACTION_SAFARI_WATCH_CAREFULLY 4 #define B_ACTION_SAFARI_WATCH_CAREFULLY 4
#define B_ACTION_SAFARI_BALL 5 #define B_ACTION_SAFARI_BALL 5
#define B_ACTION_SAFARI_POKEBLOCK 6 #define B_ACTION_SAFARI_BAIT 6
#define B_ACTION_SAFARI_GO_NEAR 7 #define B_ACTION_SAFARI_GO_NEAR 7
#define B_ACTION_SAFARI_RUN 8 #define B_ACTION_SAFARI_RUN 8
#define B_ACTION_OLDMAN_THROW 9 #define B_ACTION_OLDMAN_THROW 9
+1 -1
View File
@@ -276,7 +276,7 @@
#define ANIM_TAG_GREEN_SPIKE (ANIM_SPRITES_START + 266) #define ANIM_TAG_GREEN_SPIKE (ANIM_SPRITES_START + 266)
#define ANIM_TAG_WHITE_CIRCLE_OF_LIGHT (ANIM_SPRITES_START + 267) #define ANIM_TAG_WHITE_CIRCLE_OF_LIGHT (ANIM_SPRITES_START + 267)
#define ANIM_TAG_GLOWY_BLUE_ORB (ANIM_SPRITES_START + 268) #define ANIM_TAG_GLOWY_BLUE_ORB (ANIM_SPRITES_START + 268)
#define ANIM_TAG_POKEBLOCK (ANIM_SPRITES_START + 269) #define ANIM_TAG_SAFARI_BAIT (ANIM_SPRITES_START + 269)
#define ANIM_TAG_WHITE_FEATHER (ANIM_SPRITES_START + 270) #define ANIM_TAG_WHITE_FEATHER (ANIM_SPRITES_START + 270)
#define ANIM_TAG_SPARKLE_6 (ANIM_SPRITES_START + 271) #define ANIM_TAG_SPARKLE_6 (ANIM_SPRITES_START + 271)
#define ANIM_TAG_SPLASH (ANIM_SPRITES_START + 272) #define ANIM_TAG_SPLASH (ANIM_SPRITES_START + 272)
+7 -7
View File
@@ -16,12 +16,12 @@
#define MB_OCEAN_WATER 0x15 #define MB_OCEAN_WATER 0x15
#define MB_PUDDLE 0x16 #define MB_PUDDLE 0x16
#define MB_SHALLOW_WATER 0x17 #define MB_SHALLOW_WATER 0x17
#define MB_19 0x19 #define MB_UNDERWATER_BLOCKED_ABOVE 0x19
#define MB_1A 0x1A #define MB_1A 0x1A
#define MB_1B 0x1B #define MB_1B 0x1B
#define MB_STRENGTH_BUTTON 0x20 #define MB_STRENGTH_BUTTON 0x20
#define MB_SAND 0x21 #define MB_SAND 0x21
#define MB_22 0x22 #define MB_SEAWEED 0x22
#define MB_ICE 0x23 #define MB_ICE 0x23
#define MB_THIN_ICE 0x26 #define MB_THIN_ICE 0x26
#define MB_CRACKED_ICE 0x27 #define MB_CRACKED_ICE 0x27
@@ -68,14 +68,14 @@
#define MB_SOUTH_ARROW_WARP 0x65 #define MB_SOUTH_ARROW_WARP 0x65
#define MB_FALL_WARP 0x66 #define MB_FALL_WARP 0x66
#define MB_REGULAR_WARP 0x67 #define MB_REGULAR_WARP 0x67
#define MB_68 0x68 #define MB_LAVARIDGE_1F_WARP 0x68
#define MB_WARP_DOOR 0x69 #define MB_WARP_DOOR 0x69
#define MB_UP_ESCALATOR 0x6A #define MB_UP_ESCALATOR 0x6A
#define MB_DOWN_ESCALATOR 0x6B #define MB_DOWN_ESCALATOR 0x6B
#define MB_UNKNOWN_WARP_6C 0x6C #define MB_UP_RIGHT_STAIR_WARP 0x6C
#define MB_UNKNOWN_WARP_6D 0x6D #define MB_UP_LEFT_STAIR_WARP 0x6D
#define MB_UNKNOWN_WARP_6E 0x6E #define MB_DOWN_RIGHT_STAIR_WARP 0x6E
#define MB_UNKNOWN_WARP_6F 0x6F #define MB_DOWN_LEFT_STAIR_WARP 0x6F
#define MB_UNION_ROOM_WARP 0x71 #define MB_UNION_ROOM_WARP 0x71
#define MB_COUNTER 0x80 #define MB_COUNTER 0x80
#define MB_BOOKSHELF 0x81 #define MB_BOOKSHELF 0x81
+8 -3
View File
@@ -2,9 +2,14 @@
#define GUARD_CONSTANTS_QUEST_LOG_H #define GUARD_CONSTANTS_QUEST_LOG_H
// TODO: Name and use state constants // TODO: Name and use state constants
#define QL_STATE_1 1 #define QL_STATE_RECORDING 1
#define QL_STATE_2 2 #define QL_STATE_PLAYBACK 2
#define QL_STATE_3 3 #define QL_STATE_PLAYBACK_LAST 3
#define QL_START_NORMAL 1
#define QL_START_WARP 2
#define QL_IS_PLAYBACK_STATE (gQuestLogState == QL_STATE_PLAYBACK || gQuestLogState == QL_STATE_PLAYBACK_LAST)
#define QL_EVENT_0 0 // Null #define QL_EVENT_0 0 // Null
#define QL_EVENT_1 1 // Null #define QL_EVENT_1 1 // Null
+2 -2
View File
@@ -3,9 +3,9 @@
#include "global.h" #include "global.h"
bool8 sub_8069590(void); bool8 NativeScript_WaitPlayerStopMoving(void);
void ScriptFreezeObjectEvents(void); void ScriptFreezeObjectEvents(void);
bool8 sub_8069648(void); bool8 NativeScript_WaitPlayerAndTargetNPCStopMoving(void);
void LockSelectedObjectEvent(void); void LockSelectedObjectEvent(void);
void sub_8098630(void); void sub_8098630(void);
bool8 sub_8098734(void); bool8 sub_8098734(void);
+1 -1
View File
@@ -66,7 +66,7 @@ u8 GetObjectEventIdByXY(s16, s16);
void SetObjectEventDirection(struct ObjectEvent *, u8); void SetObjectEventDirection(struct ObjectEvent *, u8);
u8 sub_808D4F4(void); u8 sub_808D4F4(void);
void RemoveObjectEventByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup); void RemoveObjectEventByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup);
u16 sub_805FCD8(u8 localId, u8 mapNum, u8 mapGroup); u16 GetObjectEventFlagByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup);
void LoadPlayerObjectReflectionPalette(u16, u8); void LoadPlayerObjectReflectionPalette(u16, u8);
void LoadSpecialObjectReflectionPalette(u16, u8); void LoadSpecialObjectReflectionPalette(u16, u8);
void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16); void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16);
+3 -3
View File
@@ -26,15 +26,15 @@ extern struct FieldInput gInputToStoreInQuestLogMaybe;
void RestartWildEncounterImmunitySteps(void); void RestartWildEncounterImmunitySteps(void);
void ClearPoisonStepCounter(void); void ClearPoisonStepCounter(void);
int SetCableClubWarp(void); int SetCableClubWarp(void);
void sub_806DE28(struct ObjectEvent *); void HandleBoulderFallThroughHole(struct ObjectEvent *);
bool8 dive_warp(struct MapPosition * pos, u16 behavior); bool8 dive_warp(struct MapPosition * pos, u16 behavior);
bool8 sub_806DB84(u16 metatileBehavior, u8 playerDirection); bool8 IsDirectionalStairWarpMetatileBehavior(u16 metatileBehavior, u8 playerDirection);
const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehavior, u8 direction); const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehavior, u8 direction);
const u8 *GetCoordEventScriptAtMapPosition(struct MapPosition *position); const u8 *GetCoordEventScriptAtMapPosition(struct MapPosition *position);
void FieldClearPlayerInput(struct FieldInput *input); void FieldClearPlayerInput(struct FieldInput *input);
int ProcessPlayerFieldInput(struct FieldInput *input); int ProcessPlayerFieldInput(struct FieldInput *input);
void FieldInput_HandleCancelSignpost(struct FieldInput * input); void FieldInput_HandleCancelSignpost(struct FieldInput * input);
void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys); void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys);
void sub_806DE70(u16 x, u16 y); void HandleBoulderActivateVictoryRoadSwitch(u16 x, u16 y);
#endif //GUARD_FIELD_CONTROL_AVATAR_H #endif //GUARD_FIELD_CONTROL_AVATAR_H
+2 -2
View File
@@ -10,7 +10,7 @@ void DoDoorWarp(void);
void DoFallWarp(void); void DoFallWarp(void);
void DoTeleportWarp(void); void DoTeleportWarp(void);
void sub_807E500(void); void DoTeleport2Warp(void);
void FieldCB_DefaultWarpExit(void); void FieldCB_DefaultWarpExit(void);
void WarpFadeOutScreen(void); void WarpFadeOutScreen(void);
void FieldCB_ContinueScriptHandleMusic(void); void FieldCB_ContinueScriptHandleMusic(void);
@@ -22,7 +22,7 @@ void sub_807DCE4(void);
bool32 FieldFadeTransitionBackgroundEffectIsFinished(void); bool32 FieldFadeTransitionBackgroundEffectIsFinished(void);
void palette_bg_faded_fill_black(void); void palette_bg_faded_fill_black(void);
void sub_807E4A0(u16 metatileBehavior, u16 delay); void DoStairWarp(u16 metatileBehavior, u16 delay);
void DoEscalatorWarp(u8 a0); void DoEscalatorWarp(u8 a0);
void DoLavaridgeGymB1FWarp(void); void DoLavaridgeGymB1FWarp(void);
void DoLavaridgeGym1FWarp(void); void DoLavaridgeGym1FWarp(void);
+2 -2
View File
@@ -14,7 +14,7 @@ u8 PlayerGetCopyableMovement(void);
void MovePlayerNotOnBike(u8 direction, u16 heldKeys); void MovePlayerNotOnBike(u8 direction, u16 heldKeys);
void MovementType_Player(struct Sprite * sprite); void MovementType_Player(struct Sprite * sprite);
void sub_805C270(void); void HandleEnforcedLookDirectionOnPlayerStopMoving(void);
void StopPlayerAvatar(void); void StopPlayerAvatar(void);
void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
u8 GetPlayerAvatarGraphicsIdByStateId(u8); u8 GetPlayerAvatarGraphicsIdByStateId(u8);
@@ -22,7 +22,7 @@ void SetPlayerAvatarStateMask(u8 mask);
void AlignFishingAnimationFrames(struct Sprite *sprite); void AlignFishingAnimationFrames(struct Sprite *sprite);
void CreateStopSurfingTask_NoMusicChange(u8 direction); void CreateStopSurfingTask_NoMusicChange(u8 direction);
void SavePlayerFacingDirectionForTeleport(u8 direction); void SavePlayerFacingDirectionForTeleport(u8 direction);
void SetPlayerAvatarTransitionFlags(u16 a); void SetPlayerAvatarTransitionFlags(u16 flags);
bool8 IsPlayerFacingSurfableFishableWater(void); bool8 IsPlayerFacingSurfableFishableWater(void);
void StartFishing(u8 secondaryId); void StartFishing(u8 secondaryId);
u8 GetPlayerAvatarObjectId(void); u8 GetPlayerAvatarObjectId(void);
+1 -1
View File
@@ -6,7 +6,7 @@
void sub_80AF79C(void); void sub_80AF79C(void);
void AnimateFlash(u8); void AnimateFlash(u8);
void sub_80B0244(void); void sub_80B0244(void);
void sub_807E3EC(void); void FieldCB_SafariZoneRanOutOfBalls(void);
void DoOutwardBarnDoorWipe(void); void DoOutwardBarnDoorWipe(void);
void Task_BarnDoorWipe(u8 taskId); void Task_BarnDoorWipe(u8 taskId);
void FieldCB_RushInjuredPokemonToCenter(void); void FieldCB_RushInjuredPokemonToCenter(void);
+2 -2
View File
@@ -619,7 +619,7 @@ struct QuestLogObjectEvent
struct QuestLog struct QuestLog
{ {
/*0x0000*/ u8 unk_000; /*0x0000*/ u8 startType;
/*0x0001*/ u8 mapGroup; /*0x0001*/ u8 mapGroup;
/*0x0002*/ u8 mapNum; /*0x0002*/ u8 mapNum;
/*0x0003*/ u8 warpId; /*0x0003*/ u8 warpId;
@@ -632,7 +632,7 @@ struct QuestLog
/*0x0148*/ u8 flags[FLAGS_COUNT]; /*0x0148*/ u8 flags[FLAGS_COUNT];
/*0x02c8*/ u16 vars[VARS_COUNT]; /*0x02c8*/ u16 vars[VARS_COUNT];
/*0x0468*/ struct QuestLogNPCData npcData[64]; /*0x0468*/ struct QuestLogNPCData npcData[64];
/*0x0568*/ u16 unk_568[128]; /*0x0568*/ u16 script[128];
/*0x0668*/ u16 end[0]; /*0x0668*/ u16 end[0];
}; };
+2 -2
View File
@@ -3943,7 +3943,7 @@ extern const u32 gBattleAnimSpriteGfx_IcicleSpear[];
extern const u32 gBattleAnimSpriteGfx_Hail[]; extern const u32 gBattleAnimSpriteGfx_Hail[];
extern const u32 gBattleAnimSpriteGfx_GlowyRedOrb[]; extern const u32 gBattleAnimSpriteGfx_GlowyRedOrb[];
extern const u32 gBattleAnimSpriteGfx_GreenSpike[]; extern const u32 gBattleAnimSpriteGfx_GreenSpike[];
extern const u32 gBattleAnimSpriteGfx_Pokeblock[]; extern const u32 gBattleAnimSpriteGfx_SafariBait[];
extern const u32 gBattleAnimSpriteGfx_WhiteFeather[]; extern const u32 gBattleAnimSpriteGfx_WhiteFeather[];
extern const u32 gBattleAnimSpriteGfx_Sparkle6[]; extern const u32 gBattleAnimSpriteGfx_Sparkle6[];
extern const u32 gBattleAnimSpriteGfx_Splash[]; extern const u32 gBattleAnimSpriteGfx_Splash[];
@@ -4196,7 +4196,7 @@ extern const u32 gBattleAnimSpritePal_GlowyGreenOrb[];
extern const u32 gBattleAnimSpritePal_GreenSpike[]; extern const u32 gBattleAnimSpritePal_GreenSpike[];
extern const u32 gBattleAnimSpritePal_WhiteCircleOfLight[]; extern const u32 gBattleAnimSpritePal_WhiteCircleOfLight[];
extern const u32 gBattleAnimSpritePal_GlowyBlueOrb[]; extern const u32 gBattleAnimSpritePal_GlowyBlueOrb[];
extern const u32 gBattleAnimSpritePal_Pokeblock[]; extern const u32 gBattleAnimSpritePal_SafariBait[];
extern const u32 gBattleAnimSpritePal_WhiteFeather[]; extern const u32 gBattleAnimSpritePal_WhiteFeather[];
extern const u32 gBattleAnimSpritePal_Sparkle6[]; extern const u32 gBattleAnimSpritePal_Sparkle6[];
extern const u32 gBattleAnimSpritePal_Splash[]; extern const u32 gBattleAnimSpritePal_Splash[];
+5 -5
View File
@@ -17,11 +17,11 @@ bool8 MetatileBehavior_IsIce(u8 metatileBehavior);
bool8 MetatileBehavior_IsWarpDoor(u8 metatileBehavior); bool8 MetatileBehavior_IsWarpDoor(u8 metatileBehavior);
bool8 MetatileBehavior_IsWarpDoor_2(u8 metatileBehavior); bool8 MetatileBehavior_IsWarpDoor_2(u8 metatileBehavior);
bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior); bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior);
bool8 MetatileBehavior_IsUnknownWarp6C(u8 metatileBehavior); bool8 MetatileBehavior_IsDirectionalUpRightStairWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsUnknownWarp6D(u8 metatileBehavior); bool8 MetatileBehavior_IsDirectionalUpLeftStairWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsUnknownWarp6E(u8 metatileBehavior); bool8 MetatileBehavior_IsDirectionalDownRightStairWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsUnknownWarp6F(u8 metatileBehavior); bool8 MetatileBehavior_IsDirectionalDownLeftStairWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsUnknownWarp6C_to_6F(u8 metatileBehavior); bool8 MetatileBehavior_IsDirectionalStairWarp(u8 metatileBehavior);
bool8 MetatileBehavior_IsLadder(u8 metatileBehavior); bool8 MetatileBehavior_IsLadder(u8 metatileBehavior);
bool8 MetatileBehavior_IsNonAnimDoor(u8 metatileBehavior); bool8 MetatileBehavior_IsNonAnimDoor(u8 metatileBehavior);
bool8 MetatileBehavior_IsDeepSouthWarp(u8 metatileBehavior); bool8 MetatileBehavior_IsDeepSouthWarp(u8 metatileBehavior);
+2 -2
View File
@@ -7,7 +7,7 @@
#include "field_control_avatar.h" #include "field_control_avatar.h"
extern u8 gQuestLogState; extern u8 gQuestLogState;
extern u8 gUnknown_3005E88; extern u8 gQuestLogPlaybackState;
extern const u16 gUnknown_84566A8[]; extern const u16 gUnknown_84566A8[];
extern struct FieldInput gQuestLogFieldInput; extern struct FieldInput gQuestLogFieldInput;
@@ -59,7 +59,7 @@ bool8 sub_8113748(void);
void sub_81119C8(void); void sub_81119C8(void);
void sub_8111F14(void); void sub_8111F14(void);
void sub_8110FCC(void); void sub_8110FCC(void);
u8 sub_8110AC8(void); u8 GetQuestLogStartType(void);
void sub_81113E4(void); void sub_81113E4(void);
void sub_8111438(void); void sub_8111438(void);
+1 -1
View File
@@ -1,6 +1,6 @@
#ifndef GUARD_SCRCMD_H #ifndef GUARD_SCRCMD_H
#define GUARD_SCRCMD_H #define GUARD_SCRCMD_H
extern struct ScriptContext * gUnknown_3005070; extern struct ScriptContext * sQuestLogScriptContextPtr;
#endif //GUARD_SCRCMD_H #endif //GUARD_SCRCMD_H
+2 -2
View File
@@ -1382,7 +1382,7 @@ const struct CompressedSpriteSheet gBattleAnimPicTable[] =
{gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE}, {gBattleAnimSpriteGfx_GreenSpike, 0x0080, ANIM_TAG_GREEN_SPIKE},
{gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, {gBattleAnimSpriteGfx_CircleOfLight, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
{gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB}, {gBattleAnimSpriteGfx_GlowyRedOrb, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB},
{gBattleAnimSpriteGfx_Pokeblock, 0x0080, ANIM_TAG_POKEBLOCK}, {gBattleAnimSpriteGfx_SafariBait, 0x0080, ANIM_TAG_SAFARI_BAIT},
{gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER}, {gBattleAnimSpriteGfx_WhiteFeather, 0x0400, ANIM_TAG_WHITE_FEATHER},
{gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6}, {gBattleAnimSpriteGfx_Sparkle6, 0x0080, ANIM_TAG_SPARKLE_6},
{gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH}, {gBattleAnimSpriteGfx_Splash, 0x0800, ANIM_TAG_SPLASH},
@@ -1675,7 +1675,7 @@ const struct CompressedSpritePalette gBattleAnimPaletteTable[] =
{gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE}, {gBattleAnimSpritePal_GreenSpike, ANIM_TAG_GREEN_SPIKE},
{gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT}, {gBattleAnimSpritePal_WhiteCircleOfLight, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
{gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB}, {gBattleAnimSpritePal_GlowyBlueOrb, ANIM_TAG_GLOWY_BLUE_ORB},
{gBattleAnimSpritePal_Pokeblock, ANIM_TAG_POKEBLOCK}, {gBattleAnimSpritePal_SafariBait, ANIM_TAG_SAFARI_BAIT},
{gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER}, {gBattleAnimSpritePal_WhiteFeather, ANIM_TAG_WHITE_FEATHER},
{gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6}, {gBattleAnimSpritePal_Sparkle6, ANIM_TAG_SPARKLE_6},
{gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH}, {gBattleAnimSpritePal_Splash, ANIM_TAG_SPLASH},
+10 -10
View File
@@ -375,10 +375,10 @@ static const u16 sBallOpenFadeColors[] =
RGB(4, 0, 0), RGB(4, 0, 0),
}; };
const struct SpriteTemplate gPokeblockSpriteTemplate = const struct SpriteTemplate gSafariBaitSpriteTemplate =
{ {
.tileTag = ANIM_TAG_POKEBLOCK, .tileTag = ANIM_TAG_SAFARI_BAIT,
.paletteTag = ANIM_TAG_POKEBLOCK, .paletteTag = ANIM_TAG_SAFARI_BAIT,
.oam = &gOamData_AffineOff_ObjNormal_16x16, .oam = &gOamData_AffineOff_ObjNormal_16x16,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
@@ -2205,20 +2205,20 @@ static void sub_80F1A80(struct Sprite *sprite)
} }
} }
void AnimTask_LoadPokeblockGfx(u8 taskId) void AnimTask_LoadBaitGfx(u8 taskId)
{ {
u8 paletteIndex; u8 paletteIndex;
LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[ANIM_TAG_POKEBLOCK - ANIM_SPRITES_START]); LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[ANIM_TAG_SAFARI_BAIT - ANIM_SPRITES_START]);
LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[ANIM_TAG_POKEBLOCK - ANIM_SPRITES_START]); LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[ANIM_TAG_SAFARI_BAIT - ANIM_SPRITES_START]);
paletteIndex = IndexOfSpritePaletteTag(ANIM_TAG_POKEBLOCK); paletteIndex = IndexOfSpritePaletteTag(ANIM_TAG_SAFARI_BAIT);
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
void AnimTask_FreePokeblockGfx(u8 taskId) void AnimTask_FreeBaitGfx(u8 taskId)
{ {
FreeSpriteTilesByTag(ANIM_TAG_POKEBLOCK); FreeSpriteTilesByTag(ANIM_TAG_SAFARI_BAIT);
FreeSpritePaletteByTag(ANIM_TAG_POKEBLOCK); FreeSpritePaletteByTag(ANIM_TAG_SAFARI_BAIT);
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
+1 -1
View File
@@ -171,7 +171,7 @@ static void HandleInputChooseAction(void)
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_BALL, 0); BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_BALL, 0);
break; break;
case 1: case 1:
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_POKEBLOCK, 0); BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_BAIT, 0);
break; break;
case 2: case 2:
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_GO_NEAR, 0); BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_GO_NEAR, 0);
+2 -2
View File
@@ -569,7 +569,7 @@ static void (*const sTurnActionsFuncsTable[])(void) =
[B_ACTION_RUN] = HandleAction_Run, [B_ACTION_RUN] = HandleAction_Run,
[B_ACTION_SAFARI_WATCH_CAREFULLY] = HandleAction_WatchesCarefully, [B_ACTION_SAFARI_WATCH_CAREFULLY] = HandleAction_WatchesCarefully,
[B_ACTION_SAFARI_BALL] = HandleAction_SafariZoneBallThrow, [B_ACTION_SAFARI_BALL] = HandleAction_SafariZoneBallThrow,
[B_ACTION_SAFARI_POKEBLOCK] = HandleAction_ThrowBait, [B_ACTION_SAFARI_BAIT] = HandleAction_ThrowBait,
[B_ACTION_SAFARI_GO_NEAR] = HandleAction_ThrowRock, [B_ACTION_SAFARI_GO_NEAR] = HandleAction_ThrowRock,
[B_ACTION_SAFARI_RUN] = HandleAction_SafariZoneRun, [B_ACTION_SAFARI_RUN] = HandleAction_SafariZoneRun,
[B_ACTION_OLDMAN_THROW] = HandleAction_OldManBallThrow, [B_ACTION_OLDMAN_THROW] = HandleAction_OldManBallThrow,
@@ -3260,7 +3260,7 @@ static void HandleTurnActionSelectionState(void)
case B_ACTION_SAFARI_BALL: case B_ACTION_SAFARI_BALL:
++gBattleCommunication[gActiveBattler]; ++gBattleCommunication[gActiveBattler];
break; break;
case B_ACTION_SAFARI_POKEBLOCK: case B_ACTION_SAFARI_BAIT:
case B_ACTION_SAFARI_GO_NEAR: case B_ACTION_SAFARI_GO_NEAR:
++gBattleCommunication[gActiveBattler]; ++gBattleCommunication[gActiveBattler];
break; break;
+374 -374
View File
@@ -514,380 +514,380 @@ const u8 gUnknown_83FDD64[] = _("OAK: Hm! Excellent!\pIf you win, you earn prize
const u8 gUnknown_83FDDEB[] = _("OAK: Hm…\nHow disappointing…\pIf you win, you earn prize money,\nand your POKéMON grow.\pBut if you lose, {B_PLAYER_NAME}, you end\nup paying prize money…\pHowever, since you had no warning\nthis time, I'll pay for you.\pBut things won't be this way once\nyou step outside these doors.\pThat's why you must strengthen your\nPOKéMON by battling wild POKéMON.\p"); const u8 gUnknown_83FDDEB[] = _("OAK: Hm…\nHow disappointing…\pIf you win, you earn prize money,\nand your POKéMON grow.\pBut if you lose, {B_PLAYER_NAME}, you end\nup paying prize money…\pHowever, since you had no warning\nthis time, I'll pay for you.\pBut things won't be this way once\nyou step outside these doors.\pThat's why you must strengthen your\nPOKéMON by battling wild POKéMON.\p");
const u8 *const gBattleStringsTable[] = { const u8 *const gBattleStringsTable[] = {
gUnknown_83FB219, [STRINGID_TRAINER1LOSETEXT - 12] = gUnknown_83FB219,
gUnknown_83FB265, [STRINGID_PKMNGAINEDEXP - 12] = gUnknown_83FB265,
gUnknown_83FB28E, [STRINGID_PKMNGREWTOLV - 12] = gUnknown_83FB28E,
gUnknown_83FB2A4, [STRINGID_PKMNLEARNEDMOVE - 12] = gUnknown_83FB2A4,
gUnknown_83FB2B6, [STRINGID_TRYTOLEARNMOVE1 - 12] = gUnknown_83FB2B6,
gUnknown_83FB2D1, [STRINGID_TRYTOLEARNMOVE2 - 12] = gUnknown_83FB2D1,
gUnknown_83FB2FC, [STRINGID_TRYTOLEARNMOVE3 - 12] = gUnknown_83FB2FC,
gUnknown_83FB31F, [STRINGID_PKMNFORGOTMOVE - 12] = gUnknown_83FB31F,
gUnknown_83FB32E, [STRINGID_STOPLEARNINGMOVE - 12] = gUnknown_83FB32E,
gUnknown_83FB343, [STRINGID_DIDNOTLEARNMOVE - 12] = gUnknown_83FB343,
gUnknown_83FD1B8, [STRINGID_PKMNLEARNEDMOVE2 - 12] = gUnknown_83FD1B8,
gUnknown_83FB36B, [STRINGID_ATTACKMISSED - 12] = gUnknown_83FB36B,
gUnknown_83FB37F, [STRINGID_PKMNPROTECTEDITSELF - 12] = gUnknown_83FB37F,
gUnknown_83FCBA5, [STRINGID_STATSWONTINCREASE2 - 12] = gUnknown_83FCBA5,
gUnknown_83FB394, [STRINGID_AVOIDEDDAMAGE - 12] = gUnknown_83FB394,
gUnknown_83FB3EA, [STRINGID_ITDOESNTAFFECT - 12] = gUnknown_83FB3EA,
gUnknown_83FB400, [STRINGID_ATTACKERFAINTED - 12] = gUnknown_83FB400,
gUnknown_83FB40D, [STRINGID_TARGETFAINTED - 12] = gUnknown_83FB40D,
gUnknown_83FB41A, [STRINGID_PLAYERGOTMONEY - 12] = gUnknown_83FB41A,
gUnknown_83FB433, [STRINGID_PLAYERWHITEOUT - 12] = gUnknown_83FB433,
gUnknown_83FB451, [STRINGID_PLAYERWHITEOUT2 - 12] = gUnknown_83FB451,
gUnknown_83FB508, [STRINGID_PREVENTSESCAPE - 12] = gUnknown_83FB508,
gUnknown_83FB545, [STRINGID_HITXTIMES - 12] = gUnknown_83FB545,
gUnknown_83FB555, [STRINGID_PKMNFELLASLEEP - 12] = gUnknown_83FB555,
gUnknown_83FB565, [STRINGID_PKMNMADESLEEP - 12] = gUnknown_83FB565,
gUnknown_83FB57C, [STRINGID_PKMNALREADYASLEEP - 12] = gUnknown_83FB57C,
gUnknown_83FB592, [STRINGID_PKMNALREADYASLEEP2 - 12] = gUnknown_83FB592,
gUnknown_83FB5A8, [STRINGID_PKMNWASNTAFFECTED - 12] = gUnknown_83FB5A8,
gUnknown_83FB5BC, [STRINGID_PKMNWASPOISONED - 12] = gUnknown_83FB5BC,
gUnknown_83FB5CD, [STRINGID_PKMNPOISONEDBY - 12] = gUnknown_83FB5CD,
gUnknown_83FB5E2, [STRINGID_PKMNHURTBYPOISON - 12] = gUnknown_83FB5E2,
gUnknown_83FB5F8, [STRINGID_PKMNALREADYPOISONED - 12] = gUnknown_83FB5F8,
gUnknown_83FB610, [STRINGID_PKMNBADLYPOISONED - 12] = gUnknown_83FB610,
gUnknown_83FB626, [STRINGID_PKMNENERGYDRAINED - 12] = gUnknown_83FB626,
gUnknown_83FB641, [STRINGID_PKMNWASBURNED - 12] = gUnknown_83FB641,
gUnknown_83FB650, [STRINGID_PKMNBURNEDBY - 12] = gUnknown_83FB650,
gUnknown_83FB663, [STRINGID_PKMNHURTBYBURN - 12] = gUnknown_83FB663,
gUnknown_83FB692, [STRINGID_PKMNWASFROZEN - 12] = gUnknown_83FB692,
gUnknown_83FB6A7, [STRINGID_PKMNFROZENBY - 12] = gUnknown_83FB6A7,
gUnknown_83FB6BF, [STRINGID_PKMNISFROZEN - 12] = gUnknown_83FB6BF,
gUnknown_83FB6D3, [STRINGID_PKMNWASDEFROSTED - 12] = gUnknown_83FB6D3,
gUnknown_83FB6E5, [STRINGID_PKMNWASDEFROSTED2 - 12] = gUnknown_83FB6E5,
gUnknown_83FB6F7, [STRINGID_PKMNWASDEFROSTEDBY - 12] = gUnknown_83FB6F7,
gUnknown_83FB70F, [STRINGID_PKMNWASPARALYZED - 12] = gUnknown_83FB70F,
gUnknown_83FB73A, [STRINGID_PKMNWASPARALYZEDBY - 12] = gUnknown_83FB73A,
gUnknown_83FB76A, [STRINGID_PKMNISPARALYZED - 12] = gUnknown_83FB76A,
gUnknown_83FB78A, [STRINGID_PKMNISALREADYPARALYZED - 12] = gUnknown_83FB78A,
gUnknown_83FB7A3, [STRINGID_PKMNHEALEDPARALYSIS - 12] = gUnknown_83FB7A3,
gUnknown_83FB7BF, [STRINGID_PKMNDREAMEATEN - 12] = gUnknown_83FB7BF,
gUnknown_83FB7D5, [STRINGID_STATSWONTINCREASE - 12] = gUnknown_83FB7D5,
gUnknown_83FB7EE, [STRINGID_STATSWONTDECREASE - 12] = gUnknown_83FB7EE,
gUnknown_83FB806, [STRINGID_TEAMSTOPPEDWORKING - 12] = gUnknown_83FB806,
gUnknown_83FB826, [STRINGID_FOESTOPPEDWORKING - 12] = gUnknown_83FB826,
gUnknown_83FB844, [STRINGID_PKMNISCONFUSED - 12] = gUnknown_83FB844,
gUnknown_83FB854, [STRINGID_PKMNHEALEDCONFUSION - 12] = gUnknown_83FB854,
gUnknown_83FB871, [STRINGID_PKMNWASCONFUSED - 12] = gUnknown_83FB871,
gUnknown_83FB885, [STRINGID_PKMNALREADYCONFUSED - 12] = gUnknown_83FB885,
gUnknown_83FB89D, [STRINGID_PKMNFELLINLOVE - 12] = gUnknown_83FB89D,
gUnknown_83FB8AE, [STRINGID_PKMNINLOVE - 12] = gUnknown_83FB8AE,
gUnknown_83FB8C5, [STRINGID_PKMNIMMOBILIZEDBYLOVE - 12] = gUnknown_83FB8C5,
gUnknown_83FB8E0, [STRINGID_PKMNBLOWNAWAY - 12] = gUnknown_83FB8E0,
gUnknown_83FB8F3, [STRINGID_PKMNCHANGEDTYPE - 12] = gUnknown_83FB8F3,
gUnknown_83FB914, [STRINGID_PKMNFLINCHED - 12] = gUnknown_83FB914,
gUnknown_83FB921, [STRINGID_PKMNREGAINEDHEALTH - 12] = gUnknown_83FB921,
gUnknown_83FB935, [STRINGID_PKMNHPFULL - 12] = gUnknown_83FB935,
gUnknown_83FB946, [STRINGID_PKMNRAISEDSPDEF - 12] = gUnknown_83FB946,
gUnknown_83FB97F, [STRINGID_PKMNRAISEDDEF - 12] = gUnknown_83FB97F,
gUnknown_83FB9B8, [STRINGID_PKMNCOVEREDBYVEIL - 12] = gUnknown_83FB9B8,
gUnknown_83FB9D9, [STRINGID_PKMNUSEDSAFEGUARD - 12] = gUnknown_83FB9D9,
gUnknown_83FB9FF, [STRINGID_PKMNSAFEGUARDEXPIRED - 12] = gUnknown_83FB9FF,
gUnknown_83FBA2F, [STRINGID_PKMNWENTTOSLEEP - 12] = gUnknown_83FBA2F,
gUnknown_83FBA41, [STRINGID_PKMNSLEPTHEALTHY - 12] = gUnknown_83FBA41,
gUnknown_83FBA5E, [STRINGID_PKMNWHIPPEDWHIRLWIND - 12] = gUnknown_83FBA5E,
gUnknown_83FBA79, [STRINGID_PKMNTOOKSUNLIGHT - 12] = gUnknown_83FBA79,
gUnknown_83FBA8E, [STRINGID_PKMNLOWEREDHEAD - 12] = gUnknown_83FBA8E,
gUnknown_83FBAA3, [STRINGID_PKMNISGLOWING - 12] = gUnknown_83FBAA3,
gUnknown_83FBAB2, [STRINGID_PKMNFLEWHIGH - 12] = gUnknown_83FBAB2,
gUnknown_83FBAC3, [STRINGID_PKMNDUGHOLE - 12] = gUnknown_83FBAC3,
gUnknown_83FBAF3, [STRINGID_PKMNSQUEEZEDBYBIND - 12] = gUnknown_83FBAF3,
gUnknown_83FBB11, [STRINGID_PKMNTRAPPEDINVORTEX - 12] = gUnknown_83FBB11,
gUnknown_83FBB4C, [STRINGID_PKMNWRAPPEDBY - 12] = gUnknown_83FBB4C,
gUnknown_83FBB62, [STRINGID_PKMNCLAMPED - 12] = gUnknown_83FBB62,
gUnknown_83FBB71, [STRINGID_PKMNHURTBY - 12] = gUnknown_83FBB71,
gUnknown_83FBB83, [STRINGID_PKMNFREEDFROM - 12] = gUnknown_83FBB83,
gUnknown_83FBB99, [STRINGID_PKMNCRASHED - 12] = gUnknown_83FBB99,
gBattleText_MistShroud, [STRINGID_PKMNSHROUDEDINMIST - 12] = gBattleText_MistShroud,
gUnknown_83FBBD0, [STRINGID_PKMNPROTECTEDBYMIST - 12] = gUnknown_83FBBD0,
gBattleText_GetPumped, [STRINGID_PKMNGETTINGPUMPED - 12] = gBattleText_GetPumped,
gUnknown_83FBBFF, [STRINGID_PKMNHITWITHRECOIL - 12] = gUnknown_83FBBFF,
gUnknown_83FBC16, [STRINGID_PKMNPROTECTEDITSELF2 - 12] = gUnknown_83FBC16,
gUnknown_83FBC2B, [STRINGID_PKMNBUFFETEDBYSANDSTORM - 12] = gUnknown_83FBC2B,
gUnknown_83FBC4C, [STRINGID_PKMNPELTEDBYHAIL - 12] = gUnknown_83FBC4C,
gUnknown_83FBC74, [STRINGID_PKMNSEEDED - 12] = gUnknown_83FBC74,
gUnknown_83FBC83, [STRINGID_PKMNEVADEDATTACK - 12] = gUnknown_83FBC83,
gUnknown_83FBC99, [STRINGID_PKMNSAPPEDBYLEECHSEED - 12] = gUnknown_83FBC99,
gUnknown_83FBCBE, [STRINGID_PKMNFASTASLEEP - 12] = gUnknown_83FBCBE,
gUnknown_83FBCD1, [STRINGID_PKMNWOKEUP - 12] = gUnknown_83FBCD1,
gUnknown_83FBCDD, [STRINGID_PKMNUPROARKEPTAWAKE - 12] = gUnknown_83FBCDD,
gUnknown_83FBCFC, [STRINGID_PKMNWOKEUPINUPROAR - 12] = gUnknown_83FBCFC,
gUnknown_83FBD16, [STRINGID_PKMNCAUSEDUPROAR - 12] = gUnknown_83FBD16,
gUnknown_83FBD2B, [STRINGID_PKMNMAKINGUPROAR - 12] = gUnknown_83FBD2B,
gUnknown_83FBD43, [STRINGID_PKMNCALMEDDOWN - 12] = gUnknown_83FBD43,
gUnknown_83FBD53, [STRINGID_PKMNCANTSLEEPINUPROAR - 12] = gUnknown_83FBD53,
gUnknown_83FBD74, [STRINGID_PKMNSTOCKPILED - 12] = gUnknown_83FBD74,
gUnknown_83FBD86, [STRINGID_PKMNCANTSTOCKPILE - 12] = gUnknown_83FBD86,
gUnknown_83FBDA3, [STRINGID_PKMNCANTSLEEPINUPROAR2 - 12] = gUnknown_83FBDA3,
gUnknown_83FBDC4, [STRINGID_UPROARKEPTPKMNAWAKE - 12] = gUnknown_83FBDC4,
gUnknown_83FBDE2, [STRINGID_PKMNSTAYEDAWAKEUSING - 12] = gUnknown_83FBDE2,
gUnknown_83FBE00, [STRINGID_PKMNSTORINGENERGY - 12] = gUnknown_83FBE00,
gUnknown_83FBE16, [STRINGID_PKMNUNLEASHEDENERGY - 12] = gUnknown_83FBE16,
gUnknown_83FBE2B, [STRINGID_PKMNFATIGUECONFUSION - 12] = gUnknown_83FBE2B,
gUnknown_83FBE4E, [STRINGID_PKMNPICKEDUPITEM - 12] = gUnknown_83FBE4E,
gUnknown_83FBE61, [STRINGID_PKMNUNAFFECTED - 12] = gUnknown_83FBE61,
gUnknown_83FBE73, [STRINGID_PKMNTRANSFORMEDINTO - 12] = gUnknown_83FBE73,
gUnknown_83FBE8B, [STRINGID_PKMNMADESUBSTITUTE - 12] = gUnknown_83FBE8B,
gUnknown_83FBEA1, [STRINGID_PKMNHASSUBSTITUTE - 12] = gUnknown_83FBEA1,
gUnknown_83FBEBE, [STRINGID_SUBSTITUTEDAMAGED - 12] = gUnknown_83FBEBE,
gUnknown_83FBEE2, [STRINGID_PKMNSUBSTITUTEFADED - 12] = gUnknown_83FBEE2,
gUnknown_83FBEFA, [STRINGID_PKMNMUSTRECHARGE - 12] = gUnknown_83FBEFA,
gUnknown_83FBF0C, [STRINGID_PKMNRAGEBUILDING - 12] = gUnknown_83FBF0C,
gUnknown_83FBF23, [STRINGID_PKMNMOVEWASDISABLED - 12] = gUnknown_83FBF23,
gUnknown_83FC687, [STRINGID_PKMNMOVEISDISABLED - 12] = gUnknown_83FC687,
gUnknown_83FBF39, [STRINGID_PKMNMOVEDISABLEDNOMORE - 12] = gUnknown_83FBF39,
gUnknown_83FBF51, [STRINGID_PKMNGOTENCORE - 12] = gUnknown_83FBF51,
gUnknown_83FBF63, [STRINGID_PKMNENCOREENDED - 12] = gUnknown_83FBF63,
gUnknown_83FBF76, [STRINGID_PKMNTOOKAIM - 12] = gUnknown_83FBF76,
gUnknown_83FBF89, [STRINGID_PKMNSKETCHEDMOVE - 12] = gUnknown_83FBF89,
gUnknown_83FBF99, [STRINGID_PKMNTRYINGTOTAKEFOE - 12] = gUnknown_83FBF99,
gUnknown_83FBFBF, [STRINGID_PKMNTOOKFOE - 12] = gUnknown_83FBFBF,
gUnknown_83FBFD3, [STRINGID_PKMNREDUCEDPP - 12] = gUnknown_83FBFD3,
gUnknown_83FBFEA, [STRINGID_PKMNSTOLEITEM - 12] = gUnknown_83FBFEA,
gUnknown_83FBFFC, [STRINGID_TARGETCANTESCAPENOW - 12] = gUnknown_83FBFFC,
gUnknown_83FC011, [STRINGID_PKMNFELLINTONIGHTMARE - 12] = gUnknown_83FC011,
gUnknown_83FC02B, [STRINGID_PKMNLOCKEDINNIGHTMARE - 12] = gUnknown_83FC02B,
gUnknown_83FC048, [STRINGID_PKMNLAIDCURSE - 12] = gUnknown_83FC048,
gUnknown_83FC072, [STRINGID_PKMNAFFLICTEDBYCURSE - 12] = gUnknown_83FC072,
gUnknown_83FC090, [STRINGID_SPIKESSCATTERED - 12] = gUnknown_83FC090,
gUnknown_83FC0C6, [STRINGID_PKMNHURTBYSPIKES - 12] = gUnknown_83FC0C6,
gUnknown_83FC0DC, [STRINGID_PKMNIDENTIFIED - 12] = gUnknown_83FC0DC,
gUnknown_83FC0EE, [STRINGID_PKMNPERISHCOUNTFELL - 12] = gUnknown_83FC0EE,
gUnknown_83FC10C, [STRINGID_PKMNBRACEDITSELF - 12] = gUnknown_83FC10C,
gUnknown_83FC11E, [STRINGID_PKMNENDUREDHIT - 12] = gUnknown_83FC11E,
gUnknown_83FC132, [STRINGID_MAGNITUDESTRENGTH - 12] = gUnknown_83FC132,
gUnknown_83FC140, [STRINGID_PKMNCUTHPMAXEDATTACK - 12] = gUnknown_83FC140,
gUnknown_83FC168, [STRINGID_PKMNCOPIEDSTATCHANGES - 12] = gUnknown_83FC168,
gUnknown_83FC185, [STRINGID_PKMNGOTFREE - 12] = gUnknown_83FC185,
gUnknown_83FC19D, [STRINGID_PKMNSHEDLEECHSEED - 12] = gUnknown_83FC19D,
gUnknown_83FC1B1, [STRINGID_PKMNBLEWAWAYSPIKES - 12] = gUnknown_83FC1B1,
gUnknown_83FC1C6, [STRINGID_PKMNFLEDFROMBATTLE - 12] = gUnknown_83FC1C6,
gUnknown_83FC1DB, [STRINGID_PKMNFORESAWATTACK - 12] = gUnknown_83FC1DB,
gUnknown_83FC1F1, [STRINGID_PKMNTOOKATTACK - 12] = gUnknown_83FC1F1,
gUnknown_83FC224, [STRINGID_PKMNATTACK - 12] = gUnknown_83FC224,
gUnknown_83FC231, [STRINGID_PKMNCENTERATTENTION - 12] = gUnknown_83FC231,
gUnknown_83FC254, [STRINGID_PKMNCHARGINGPOWER - 12] = gUnknown_83FC254,
gUnknown_83FC26D, [STRINGID_NATUREPOWERTURNEDINTO - 12] = gUnknown_83FC26D,
gUnknown_83FC28A, [STRINGID_PKMNSTATUSNORMAL - 12] = gUnknown_83FC28A,
gUnknown_83FC670, [STRINGID_PKMNHASNOMOVESLEFT - 12] = gUnknown_83FC670,
gUnknown_83FC2AA, [STRINGID_PKMNSUBJECTEDTOTORMENT - 12] = gUnknown_83FC2AA,
gUnknown_83FC69D, [STRINGID_PKMNCANTUSEMOVETORMENT - 12] = gUnknown_83FC69D,
gUnknown_83FC2C7, [STRINGID_PKMNTIGHTENINGFOCUS - 12] = gUnknown_83FC2C7,
gUnknown_83FC2E3, [STRINGID_PKMNFELLFORTAUNT - 12] = gUnknown_83FC2E3,
gUnknown_83FC6D6, [STRINGID_PKMNCANTUSEMOVETAUNT - 12] = gUnknown_83FC6D6,
gUnknown_83FC2FA, [STRINGID_PKMNREADYTOHELP - 12] = gUnknown_83FC2FA,
gUnknown_83FC312, [STRINGID_PKMNSWITCHEDITEMS - 12] = gUnknown_83FC312,
gUnknown_83FC377, [STRINGID_PKMNCOPIEDFOE - 12] = gUnknown_83FC377,
gUnknown_83FC38A, [STRINGID_PKMNMADEWISH - 12] = gUnknown_83FC38A,
gUnknown_83FC39A, [STRINGID_PKMNWISHCAMETRUE - 12] = gUnknown_83FC39A,
gUnknown_83FC3AF, [STRINGID_PKMNPLANTEDROOTS - 12] = gUnknown_83FC3AF,
gUnknown_83FC3C5, [STRINGID_PKMNABSORBEDNUTRIENTS - 12] = gUnknown_83FC3C5,
gUnknown_83FC3EB, [STRINGID_PKMNANCHOREDITSELF - 12] = gUnknown_83FC3EB,
gUnknown_83FC40E, [STRINGID_PKMNWASMADEDROWSY - 12] = gUnknown_83FC40E,
gUnknown_83FC421, [STRINGID_PKMNKNOCKEDOFF - 12] = gUnknown_83FC421,
gUnknown_83FC439, [STRINGID_PKMNSWAPPEDABILITIES - 12] = gUnknown_83FC439,
gUnknown_83FC461, [STRINGID_PKMNSEALEDOPPONENTMOVE - 12] = gUnknown_83FC461,
gUnknown_83FC6F8, [STRINGID_PKMNCANTUSEMOVESEALED - 12] = gUnknown_83FC6F8,
gUnknown_83FC483, [STRINGID_PKMNWANTSGRUDGE - 12] = gUnknown_83FC483,
gUnknown_83FC4AB, [STRINGID_PKMNLOSTPPGRUDGE - 12] = gUnknown_83FC4AB,
gUnknown_83FC4D6, [STRINGID_PKMNSHROUDEDITSELF - 12] = gUnknown_83FC4D6,
gUnknown_83FC4F0, [STRINGID_PKMNMOVEBOUNCED - 12] = gUnknown_83FC4F0,
gUnknown_83FC518, [STRINGID_PKMNWAITSFORTARGET - 12] = gUnknown_83FC518,
gUnknown_83FC53D, [STRINGID_PKMNSNATCHEDMOVE - 12] = gUnknown_83FC53D,
gUnknown_83FC715, [STRINGID_PKMNMADEITRAIN - 12] = gUnknown_83FC715,
gUnknown_83FC72B, [STRINGID_PKMNRAISEDSPEED - 12] = gUnknown_83FC72B,
gUnknown_83FC745, [STRINGID_PKMNPROTECTEDBY - 12] = gUnknown_83FC745,
gUnknown_83FC75D, [STRINGID_PKMNPREVENTSUSAGE - 12] = gUnknown_83FC75D,
gUnknown_83FC780, [STRINGID_PKMNRESTOREDHPUSING - 12] = gUnknown_83FC780,
gUnknown_83FC7B6, [STRINGID_PKMNCHANGEDTYPEWITH - 12] = gUnknown_83FC7B6,
gUnknown_83FC7D3, [STRINGID_PKMNPREVENTSPARALYSISWITH - 12] = gUnknown_83FC7D3,
gUnknown_83FC7EF, [STRINGID_PKMNPREVENTSROMANCEWITH - 12] = gUnknown_83FC7EF,
gUnknown_83FC809, [STRINGID_PKMNPREVENTSPOISONINGWITH - 12] = gUnknown_83FC809,
gUnknown_83FC825, [STRINGID_PKMNPREVENTSCONFUSIONWITH - 12] = gUnknown_83FC825,
gUnknown_83FC841, [STRINGID_PKMNRAISEDFIREPOWERWITH - 12] = gUnknown_83FC841,
gUnknown_83FC860, [STRINGID_PKMNANCHORSITSELFWITH - 12] = gUnknown_83FC860,
gUnknown_83FC87B, [STRINGID_PKMNCUTSATTACKWITH - 12] = gUnknown_83FC87B,
gUnknown_83FC895, [STRINGID_PKMNPREVENTSSTATLOSSWITH - 12] = gUnknown_83FC895,
gUnknown_83FC8B1, [STRINGID_PKMNHURTSWITH - 12] = gUnknown_83FC8B1,
gUnknown_83FC8C2, [STRINGID_PKMNTRACED - 12] = gUnknown_83FC8C2,
gUnknown_83FCB41, [STRINGID_STATSHARPLY - 12] = gUnknown_83FCB41,
gBattleText_Rose, [STRINGID_STATROSE - 12] = gBattleText_Rose,
gUnknown_83FCB50, [STRINGID_STATHARSHLY - 12] = gUnknown_83FCB50,
gUnknown_83FCB59, [STRINGID_STATFELL - 12] = gUnknown_83FCB59,
gUnknown_83FCB5F, [STRINGID_PKMNSSTATCHANGED - 12] = gUnknown_83FCB5F,
gBattleText_UnknownString3, [STRINGID_PKMNSSTATCHANGED2 - 12] = gBattleText_UnknownString3,
gUnknown_83FCB8F, [STRINGID_PKMNSSTATCHANGED3 - 12] = gUnknown_83FCB8F,
gUnknown_83FCB9A, [STRINGID_PKMNSSTATCHANGED4 - 12] = gUnknown_83FCB9A,
gUnknown_83FCBE4, [STRINGID_CRITICALHIT - 12] = gUnknown_83FCBE4,
gUnknown_83FCBF4, [STRINGID_ONEHITKO - 12] = gUnknown_83FCBF4,
gUnknown_83FCC07, [STRINGID_123POOF - 12] = gUnknown_83FCC07,
gUnknown_83FCC33, [STRINGID_ANDELLIPSIS - 12] = gUnknown_83FCC33,
gUnknown_83FCC5B, [STRINGID_NOTVERYEFFECTIVE - 12] = gUnknown_83FCC5B,
gUnknown_83FCC74, [STRINGID_SUPEREFFECTIVE - 12] = gUnknown_83FCC74,
sText_GotAwaySafely, [STRINGID_GOTAWAYSAFELY - 12] = sText_GotAwaySafely,
gUnknown_83FCCD2, [STRINGID_WILDPKMNFLED - 12] = gUnknown_83FCCD2,
gUnknown_83FCDB3, [STRINGID_NORUNNINGFROMTRAINERS - 12] = gUnknown_83FCDB3,
gUnknown_83FCDE2, [STRINGID_CANTESCAPE - 12] = gUnknown_83FCDE2,
gUnknown_83FCDF1, [STRINGID_DONTLEAVEBIRCH - 12] = gUnknown_83FCDF1,
gUnknown_83FCDF2, [STRINGID_BUTNOTHINGHAPPENED - 12] = gUnknown_83FCDF2,
gUnknown_83FCE08, [STRINGID_BUTITFAILED - 12] = gUnknown_83FCE08,
gUnknown_83FCE17, [STRINGID_ITHURTCONFUSION - 12] = gUnknown_83FCE17,
gUnknown_83FCE38, [STRINGID_MIRRORMOVEFAILED - 12] = gUnknown_83FCE38,
gUnknown_83FCE50, [STRINGID_STARTEDTORAIN - 12] = gUnknown_83FCE50,
gUnknown_83FCE64, [STRINGID_DOWNPOURSTARTED - 12] = gUnknown_83FCE64,
gUnknown_83FCE78, [STRINGID_RAINCONTINUES - 12] = gUnknown_83FCE78,
gUnknown_83FCE90, [STRINGID_DOWNPOURCONTINUES - 12] = gUnknown_83FCE90,
gUnknown_83FCEA8, [STRINGID_RAINSTOPPED - 12] = gUnknown_83FCEA8,
gUnknown_83FCEBA, [STRINGID_SANDSTORMBREWED - 12] = gUnknown_83FCEBA,
gUnknown_83FCECE, [STRINGID_SANDSTORMRAGES - 12] = gUnknown_83FCECE,
gUnknown_83FCEE3, [STRINGID_SANDSTORMSUBSIDED - 12] = gUnknown_83FCEE3,
gUnknown_83FCEFB, [STRINGID_SUNLIGHTGOTBRIGHT - 12] = gUnknown_83FCEFB,
gUnknown_83FCF14, [STRINGID_SUNLIGHTSTRONG - 12] = gUnknown_83FCF14,
gUnknown_83FCF2C, [STRINGID_SUNLIGHTFADED - 12] = gUnknown_83FCF2C,
gUnknown_83FCF40, [STRINGID_STARTEDHAIL - 12] = gUnknown_83FCF40,
gUnknown_83FCF54, [STRINGID_HAILCONTINUES - 12] = gUnknown_83FCF54,
gUnknown_83FCF6C, [STRINGID_HAILSTOPPED - 12] = gUnknown_83FCF6C,
gUnknown_83FCF7E, [STRINGID_FAILEDTOSPITUP - 12] = gUnknown_83FCF7E,
gUnknown_83FCFA0, [STRINGID_FAILEDTOSWALLOW - 12] = gUnknown_83FCFA0,
gUnknown_83FCFC2, [STRINGID_WINDBECAMEHEATWAVE - 12] = gUnknown_83FCFC2,
gUnknown_83FCFE4, [STRINGID_STATCHANGESGONE - 12] = gUnknown_83FCFE4,
gUnknown_83FD006, [STRINGID_COINSSCATTERED - 12] = gUnknown_83FD006,
gUnknown_83FD022, [STRINGID_TOOWEAKFORSUBSTITUTE - 12] = gUnknown_83FD022,
gUnknown_83FD048, [STRINGID_SHAREDPAIN - 12] = gUnknown_83FD048,
gUnknown_83FD068, [STRINGID_BELLCHIMED - 12] = gUnknown_83FD068,
gUnknown_83FD077, [STRINGID_FAINTINTHREE - 12] = gUnknown_83FD077,
gUnknown_83FD0A7, [STRINGID_NOPPLEFT - 12] = gUnknown_83FD0A7,
gUnknown_83FD0CA, [STRINGID_BUTNOPPLEFT - 12] = gUnknown_83FD0CA,
sText_PlayerUsedItem, [STRINGID_PLAYERUSEDITEM - 12] = sText_PlayerUsedItem,
sText_OldManUsedItem, [STRINGID_OLDMANUSEDITEM - 12] = sText_OldManUsedItem,
sText_TrainerBlockedBall, [STRINGID_TRAINERBLOCKEDBALL - 12] = sText_TrainerBlockedBall,
sText_DontBeAThief, [STRINGID_DONTBEATHIEF - 12] = sText_DontBeAThief,
sText_ItDodgedBall, [STRINGID_ITDODGEDBALL - 12] = sText_ItDodgedBall,
sText_YouMissedPkmn, [STRINGID_YOUMISSEDPKMN - 12] = sText_YouMissedPkmn,
sText_PkmnBrokeFree, [STRINGID_PKMNBROKEFREE - 12] = sText_PkmnBrokeFree,
sText_ItAppearedCaught, [STRINGID_ITAPPEAREDCAUGHT - 12] = sText_ItAppearedCaught,
sText_AarghAlmostHadIt, [STRINGID_AARGHALMOSTHADIT - 12] = sText_AarghAlmostHadIt,
sText_ShootSoClose, [STRINGID_SHOOTSOCLOSE - 12] = sText_ShootSoClose,
sText_GotchaPkmnCaught, [STRINGID_GOTCHAPKMNCAUGHT - 12] = sText_GotchaPkmnCaught,
sText_GotchaPkmnCaught2, [STRINGID_GOTCHAPKMNCAUGHT2 - 12] = sText_GotchaPkmnCaught2,
sText_GiveNicknameCaptured, [STRINGID_GIVENICKNAMECAPTURED - 12] = sText_GiveNicknameCaptured,
sText_PkmnSentToPC, [STRINGID_PKMNSENTTOPC - 12] = sText_PkmnSentToPC,
gUnknown_83FD82B, [STRINGID_PKMNDATAADDEDTODEX - 12] = gUnknown_83FD82B,
gUnknown_83FD850, [STRINGID_ITISRAINING - 12] = gUnknown_83FD850,
gUnknown_83FD85F, [STRINGID_SANDSTORMISRAGING - 12] = gUnknown_83FD85F,
gUnknown_83FB525, [STRINGID_CANTESCAPE2 - 12] = gUnknown_83FB525,
gUnknown_83FD0F1, [STRINGID_PKMNIGNORESASLEEP - 12] = gUnknown_83FD0F1,
gUnknown_83FD111, [STRINGID_PKMNIGNOREDORDERS - 12] = gUnknown_83FD111,
gUnknown_83FD124, [STRINGID_PKMNBEGANTONAP - 12] = gUnknown_83FD124,
gUnknown_83FD135, [STRINGID_PKMNLOAFING - 12] = gUnknown_83FD135,
gUnknown_83FD14B, [STRINGID_PKMNWONTOBEY - 12] = gUnknown_83FD14B,
gUnknown_83FD15A, [STRINGID_PKMNTURNEDAWAY - 12] = gUnknown_83FD15A,
gUnknown_83FD16A, [STRINGID_PKMNPRETENDNOTNOTICE - 12] = gUnknown_83FD16A,
gUnknown_83FD186, [STRINGID_ENEMYABOUTTOSWITCHPKMN - 12] = gUnknown_83FD186,
gUnknown_83FD1DF, [STRINGID_THREWROCK - 12] = gUnknown_83FD1DF,
gUnknown_83FD1FA, [STRINGID_THREWBAIT - 12] = gUnknown_83FD1FA,
gUnknown_83FD218, [STRINGID_PKMNWATCHINGCAREFULLY - 12] = gUnknown_83FD218,
gUnknown_83FD232, [STRINGID_PKMNANGRY - 12] = gUnknown_83FD232,
gUnknown_83FD23F, [STRINGID_PKMNEATING - 12] = gUnknown_83FD23F,
gUnknown_83FB218, [STRINGID_DUMMY288 - 12] = gUnknown_83FB218,
gUnknown_83FB218, [STRINGID_DUMMY289 - 12] = gUnknown_83FB218,
gUnknown_83FD24D, [STRINGID_OUTOFSAFARIBALLS - 12] = gUnknown_83FD24D,
gUnknown_83FD8B9, [STRINGID_PKMNSITEMCUREDPARALYSIS - 12] = gUnknown_83FD8B9,
gUnknown_83FD8D2, [STRINGID_PKMNSITEMCUREDPOISON - 12] = gUnknown_83FD8D2,
gUnknown_83FD8E8, [STRINGID_PKMNSITEMHEALEDBURN - 12] = gUnknown_83FD8E8,
gUnknown_83FD901, [STRINGID_PKMNSITEMDEFROSTEDIT - 12] = gUnknown_83FD901,
gUnknown_83FD917, [STRINGID_PKMNSITEMWOKEIT - 12] = gUnknown_83FD917,
gUnknown_83FD937, [STRINGID_PKMNSITEMSNAPPEDOUT - 12] = gUnknown_83FD937,
gUnknown_83FD95C, [STRINGID_PKMNSITEMCUREDPROBLEM - 12] = gUnknown_83FD95C,
gUnknown_83FD999, [STRINGID_PKMNSITEMRESTOREDHEALTH - 12] = gUnknown_83FD999,
gUnknown_83FD9B2, [STRINGID_PKMNSITEMRESTOREDPP - 12] = gUnknown_83FD9B2,
gUnknown_83FD9CC, [STRINGID_PKMNSITEMRESTOREDSTATUS - 12] = gUnknown_83FD9CC,
gUnknown_83FD9E9, [STRINGID_PKMNSITEMRESTOREDHPALITTLE - 12] = gUnknown_83FD9E9,
gUnknown_83FDA0B, [STRINGID_ITEMALLOWSONLYYMOVE - 12] = gUnknown_83FDA0B,
gUnknown_83FDA33, [STRINGID_PKMNHUNGONWITHX - 12] = gUnknown_83FDA33,
gUnknown_83FDA4C, [STRINGID_EMPTYSTRING3 - 12] = gUnknown_83FDA4C,
gUnknown_83FC8D5, [STRINGID_PKMNSXPREVENTSBURNS - 12] = gUnknown_83FC8D5,
gUnknown_83FC8ED, [STRINGID_PKMNSXBLOCKSY - 12] = gUnknown_83FC8ED,
gUnknown_83FC913, [STRINGID_PKMNSXRESTOREDHPALITTLE2 - 12] = gUnknown_83FC913,
gUnknown_83FC935, [STRINGID_PKMNSXWHIPPEDUPSANDSTORM - 12] = gUnknown_83FC935,
gUnknown_83FC979, [STRINGID_PKMNSXPREVENTSYLOSS - 12] = gUnknown_83FC979,
gUnknown_83FC993, [STRINGID_PKMNSXINFATUATEDY - 12] = gUnknown_83FC993,
gUnknown_83FC9AA, [STRINGID_PKMNSXMADEYINEFFECTIVE - 12] = gUnknown_83FC9AA,
gUnknown_83FC9C7, [STRINGID_PKMNSXCUREDYPROBLEM - 12] = gUnknown_83FC9C7,
gUnknown_83FC9E5, [STRINGID_ITSUCKEDLIQUIDOOZE - 12] = gUnknown_83FC9E5,
gUnknown_83FCA03, [STRINGID_PKMNTRANSFORMED - 12] = gUnknown_83FCA03,
gUnknown_83FC554, [STRINGID_ELECTRICITYWEAKENED - 12] = gUnknown_83FC554,
gUnknown_83FC576, [STRINGID_FIREWEAKENED - 12] = gUnknown_83FC576,
gUnknown_83FBAD2, [STRINGID_PKMNHIDUNDERWATER - 12] = gUnknown_83FBAD2,
gUnknown_83FBAE5, [STRINGID_PKMNSPRANGUP - 12] = gUnknown_83FBAE5,
gUnknown_83FCC39, [STRINGID_HMMOVESCANTBEFORGOTTEN - 12] = gUnknown_83FCC39,
gUnknown_83FC591, [STRINGID_XFOUNDONEY - 12] = gUnknown_83FC591,
sText_PlayerDefeatedLinkTrainerTrainer1, [STRINGID_PLAYERDEFEATEDTRAINER1 - 12] = sText_PlayerDefeatedLinkTrainerTrainer1,
gUnknown_83FC5A2, [STRINGID_SOOTHINGAROMA - 12] = gUnknown_83FC5A2,
gUnknown_83FC5CC, [STRINGID_ITEMSCANTBEUSEDNOW - 12] = gUnknown_83FC5CC,
gUnknown_83FC5E8, [STRINGID_FORXCOMMAYZ - 12] = gUnknown_83FC5E8,
gUnknown_83FCB75, [STRINGID_USINGXTHEYOFZN - 12] = gUnknown_83FCB75,
gUnknown_83FC5F6, [STRINGID_PKMNUSEDXTOGETPUMPED - 12] = gUnknown_83FC5F6,
gUnknown_83FC79D, [STRINGID_PKMNSXMADEYUSELESS - 12] = gUnknown_83FC79D,
gUnknown_83FBB2F, [STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = gUnknown_83FBB2F,
gUnknown_83FB282, [STRINGID_EMPTYSTRING4 - 12] = gUnknown_83FB282,
gUnknown_83FB283, [STRINGID_ABOOSTED - 12] = gUnknown_83FB283,
gUnknown_83FC955, [STRINGID_PKMNSXINTENSIFIEDSUN - 12] = gUnknown_83FC955,
gUnknown_83FB3AF, [STRINGID_PKMNMAKESGROUNDMISS - 12] = gUnknown_83FB3AF,
gUnknown_83FDAB1, [STRINGID_YOUTHROWABALLNOWRIGHT - 12] = gUnknown_83FDAB1,
gUnknown_83FCA13, [STRINGID_PKMNSXTOOKATTACK - 12] = gUnknown_83FCA13,
gUnknown_83FC208, [STRINGID_PKMNCHOSEXASDESTINY - 12] = gUnknown_83FC208,
gUnknown_83FC60C, [STRINGID_PKMNLOSTFOCUS - 12] = gUnknown_83FC60C,
gUnknown_83FB359, [STRINGID_USENEXTPKMN - 12] = gUnknown_83FB359,
gUnknown_83FCCA0, [STRINGID_PKMNFLEDUSINGITS - 12] = gUnknown_83FCCA0,
gUnknown_83FCCBB, [STRINGID_PKMNFLEDUSING - 12] = gUnknown_83FCCBB,
gUnknown_83FC631, [STRINGID_PKMNWASDRAGGEDOUT - 12] = gUnknown_83FC631,
gUnknown_83FCA49, [STRINGID_PREVENTEDFROMWORKING - 12] = gUnknown_83FCA49,
gUnknown_83FD97A, [STRINGID_PKMNSITEMNORMALIZEDSTATUS - 12] = gUnknown_83FD97A,
sText_Trainer1UsedItem, [STRINGID_TRAINER1USEDITEM - 12] = sText_Trainer1UsedItem,
gUnknown_83FD876, [STRINGID_BOXISFULL - 12] = gUnknown_83FD876,
gUnknown_83FB3D3, [STRINGID_PKMNAVOIDEDATTACK - 12] = gUnknown_83FB3D3,
gUnknown_83FCA71, [STRINGID_PKMNSXMADEITINEFFECTIVE - 12] = gUnknown_83FCA71,
gUnknown_83FCA8E, [STRINGID_PKMNSXPREVENTSFLINCHING - 12] = gUnknown_83FCA8E,
gUnknown_83FB67B, [STRINGID_PKMNALREADYHASBURN - 12] = gUnknown_83FB67B,
gUnknown_83FCBC5, [STRINGID_STATSWONTDECREASE2 - 12] = gUnknown_83FCBC5,
gUnknown_83FC900, [STRINGID_PKMNSXBLOCKSY2 - 12] = gUnknown_83FC900,
gUnknown_83FBC62, [STRINGID_PKMNSXWOREOFF - 12] = gUnknown_83FBC62,
gUnknown_83FB997, [STRINGID_PKMNRAISEDDEFALITTLE - 12] = gUnknown_83FB997,
gUnknown_83FB95E, [STRINGID_PKMNRAISEDSPDEFALITTLE - 12] = gUnknown_83FB95E,
gUnknown_83FC646, [STRINGID_THEWALLSHATTERED - 12] = gUnknown_83FC646,
gUnknown_83FCAAA, [STRINGID_PKMNSXPREVENTSYSZ - 12] = gUnknown_83FCAAA,
gUnknown_83FCAD1, [STRINGID_PKMNSXCUREDITSYPROBLEM - 12] = gUnknown_83FCAD1,
gUnknown_83FB534, [STRINGID_ATTACKERCANTESCAPE - 12] = gUnknown_83FB534,
gUnknown_83FC337, [STRINGID_PKMNOBTAINEDX - 12] = gUnknown_83FC337,
gUnknown_83FC347, [STRINGID_PKMNOBTAINEDX2 - 12] = gUnknown_83FC347,
gUnknown_83FC357, [STRINGID_PKMNOBTAINEDXYOBTAINEDZ - 12] = gUnknown_83FC357,
gUnknown_83FC65A, [STRINGID_BUTNOEFFECT - 12] = gUnknown_83FC65A,
gUnknown_83FCAEF, [STRINGID_PKMNSXHADNOEFFECTONY - 12] = gUnknown_83FCAEF,
gUnknown_83FDD64, [STRINGID_OAKPLAYERWON - 12] = gUnknown_83FDD64,
gUnknown_83FDDEB, [STRINGID_OAKPLAYERLOST - 12] = gUnknown_83FDDEB,
gUnknown_83FB484, [STRINGID_PLAYERLOSTAGAINSTENEMYTRAINER - 12] = gUnknown_83FB484,
gUnknown_83FB4BE, [STRINGID_PLAYERPAIDPRIZEMONEY - 12] = gUnknown_83FB4BE,
Text_MonSentToBoxInSomeonesPC, [STRINGID_PKMNTRANSFERREDSOMEONESPC - 12] = Text_MonSentToBoxInSomeonesPC,
Text_MonSentToBoxInBillsPC, [STRINGID_PKMNTRANSFERREDBILLSPC - 12] = Text_MonSentToBoxInBillsPC,
Text_MonSentToBoxSomeonesBoxFull, [STRINGID_PKMNBOXSOMEONESPCFULL - 12] = Text_MonSentToBoxSomeonesBoxFull,
Text_MonSentToBoxBillsBoxFull, [STRINGID_PKMNBOXBILLSPCFULL - 12] = Text_MonSentToBoxBillsBoxFull,
sText_PokedudeUsedItem, [STRINGID_POKEDUDEUSED - 12] = sText_PokedudeUsedItem,
gUnknown_83FDA4D, [STRINGID_POKEFLUTECATCHY - 12] = gUnknown_83FDA4D,
gUnknown_83FDA7A, [STRINGID_POKEFLUTE - 12] = gUnknown_83FDA7A,
gUnknown_83FDA8C, [STRINGID_MONHEARINGFLUTEAWOKE - 12] = gUnknown_83FDA8C,
gUnknown_83FB21C, [STRINGID_TRAINER2CLASS - 12] = gUnknown_83FB21C,
gUnknown_83FB262, [STRINGID_TRAINER2NAME - 12] = gUnknown_83FB262,
gUnknown_83FB4F7, [STRINGID_PLAYERWHITEDOUT - 12] = gUnknown_83FB4F7,
gUnknown_83FCB0C, [STRINGID_MONTOOSCAREDTOMOVE - 12] = gUnknown_83FCB0C,
gUnknown_83FCB26, [STRINGID_GHOSTGETOUTGETOUT - 12] = gUnknown_83FCB26,
gUnknown_83FD322, [STRINGID_SILPHSCOPEUNVEILED - 12] = gUnknown_83FD322,
gUnknown_83FD34D, [STRINGID_GHOSTWASMAROWAK - 12] = gUnknown_83FD34D,
gUnknown_83FB21F, [STRINGID_TRAINER1MON1COMEBACK - 12] = gUnknown_83FB21F,
gUnknown_83FB232, [STRINGID_TRAINER1WINTEXT - 12] = gUnknown_83FB232,
gUnknown_83FB235, [STRINGID_TRAINER1MON2COMEBACK - 12] = gUnknown_83FB235,
gUnknown_83FB248 [STRINGID_TRAINER1MON1AND2COMEBACK - 12] = gUnknown_83FB248
}; };
const u16 gMissStringIds[] = { const u16 gMissStringIds[] = {
+2 -3
View File
@@ -417,7 +417,7 @@ static void CB2_EndWildBattle(void)
else else
{ {
SetMainCallback2(CB2_ReturnToField); SetMainCallback2(CB2_ReturnToField);
gFieldCallback = sub_807E3EC; gFieldCallback = FieldCB_SafariZoneRanOutOfBalls;
} }
} }
@@ -994,8 +994,7 @@ void PlayTrainerEncounterMusic(void)
{ {
u16 music; u16 music;
if (gQuestLogState != 2 if (!QL_IS_PLAYBACK_STATE
&& gQuestLogState != 3
&& sTrainerBattleMode != TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC && sTrainerBattleMode != TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC
&& sTrainerBattleMode != TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC) && sTrainerBattleMode != TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC)
{ {
+2 -2
View File
@@ -179,7 +179,7 @@ u16 *GetVarPointer(u16 idx)
return NULL; return NULL;
if (idx < SPECIAL_VARS_START) if (idx < SPECIAL_VARS_START)
{ {
switch (gUnknown_3005E88) switch (gQuestLogPlaybackState)
{ {
case 0: case 0:
default: default:
@@ -250,7 +250,7 @@ u8 *GetFlagAddr(u16 idx)
return NULL; return NULL;
if (idx < SPECIAL_FLAGS_START) if (idx < SPECIAL_FLAGS_START)
{ {
switch (gUnknown_3005E88) switch (gQuestLogPlaybackState)
{ {
case 0: case 0:
default: default:
+14 -12
View File
@@ -4,6 +4,8 @@
#include "event_object_movement.h" #include "event_object_movement.h"
#include "script_movement.h" #include "script_movement.h"
#include "event_data.h" #include "event_data.h"
#include "constants/maps.h"
#include "constants/event_objects.h"
bool8 walkrun_is_standing_still(void) bool8 walkrun_is_standing_still(void)
{ {
@@ -13,18 +15,18 @@ bool8 walkrun_is_standing_still(void)
return TRUE; return TRUE;
} }
void sub_8069570(u8 taskId) void Task_WaitPlayerStopMoving(u8 taskId)
{ {
if (walkrun_is_standing_still()) if (walkrun_is_standing_still())
{ {
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
DestroyTask(taskId); DestroyTask(taskId);
} }
} }
bool8 sub_8069590(void) bool8 NativeScript_WaitPlayerStopMoving(void)
{ {
if (FuncIsActiveTask(sub_8069570)) if (FuncIsActiveTask(Task_WaitPlayerStopMoving))
return FALSE; return FALSE;
else else
{ {
@@ -36,16 +38,16 @@ bool8 sub_8069590(void)
void ScriptFreezeObjectEvents(void) void ScriptFreezeObjectEvents(void)
{ {
FreezeObjectEvents(); FreezeObjectEvents();
CreateTask(sub_8069570, 80); CreateTask(Task_WaitPlayerStopMoving, 80);
} }
void sub_80695CC(u8 taskId) void Task_WaitPlayerAndTargetNPCStopMoving(u8 taskId)
{ {
struct Task * task = &gTasks[taskId]; struct Task * task = &gTasks[taskId];
if (task->data[0] == 0 && walkrun_is_standing_still() == TRUE) if (task->data[0] == 0 && walkrun_is_standing_still() == TRUE)
{ {
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
task->data[0] = 1; task->data[0] = 1;
} }
@@ -59,9 +61,9 @@ void sub_80695CC(u8 taskId)
DestroyTask(taskId); DestroyTask(taskId);
} }
bool8 sub_8069648(void) bool8 NativeScript_WaitPlayerAndTargetNPCStopMoving(void)
{ {
if (FuncIsActiveTask(sub_80695CC)) if (FuncIsActiveTask(Task_WaitPlayerAndTargetNPCStopMoving))
return FALSE; return FALSE;
else else
{ {
@@ -75,7 +77,7 @@ void LockSelectedObjectEvent(void)
u8 taskId; u8 taskId;
FreezeObjectEventsExceptOne(gSelectedObjectEvent); FreezeObjectEventsExceptOne(gSelectedObjectEvent);
taskId = CreateTask(sub_80695CC, 80); taskId = CreateTask(Task_WaitPlayerAndTargetNPCStopMoving, 80);
if (!gObjectEvents[gSelectedObjectEvent].singleMovementActive) if (!gObjectEvents[gSelectedObjectEvent].singleMovementActive)
{ {
FreezeObjectEvent(&gObjectEvents[gSelectedObjectEvent]); FreezeObjectEvent(&gObjectEvents[gSelectedObjectEvent]);
@@ -85,7 +87,7 @@ void LockSelectedObjectEvent(void)
void sub_80696C0(void) void sub_80696C0(void)
{ {
u8 objectEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); u8 objectEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objectEventId]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objectEventId]);
ScriptMovement_UnfreezeObjectEvents(); ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents(); UnfreezeObjectEvents();
@@ -96,7 +98,7 @@ void UnionRoom_UnlockPlayerAndChatPartner(void)
u8 objectEventId; u8 objectEventId;
if (gObjectEvents[gSelectedObjectEvent].active) if (gObjectEvents[gSelectedObjectEvent].active)
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]);
objectEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); objectEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objectEventId]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objectEventId]);
ScriptMovement_UnfreezeObjectEvents(); ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents(); UnfreezeObjectEvents();
+3 -3
View File
@@ -2805,7 +2805,7 @@ u8 sub_805FC9C(u8 localId, u8 mapNum, u8 mapGroup)
return gObjectEvents[objectEventId].trainerType; return gObjectEvents[objectEventId].trainerType;
} }
u16 sub_805FCD8(u8 localId, u8 mapNum, u8 mapGroup) u16 GetObjectEventFlagByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{ {
return GetObjectEventTemplateByLocalIdAndMap(localId, mapNum, mapGroup)->trainerType; return GetObjectEventTemplateByLocalIdAndMap(localId, mapNum, mapGroup)->trainerType;
} }
@@ -5530,7 +5530,7 @@ static void sub_8064544(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
objectEvent->heldMovementFinished = TRUE; objectEvent->heldMovementFinished = TRUE;
if (objectEvent->graphicsId == 0x61) if (objectEvent->graphicsId == 0x61)
sub_806DE28(objectEvent); HandleBoulderFallThroughHole(objectEvent);
} }
} }
@@ -5550,7 +5550,7 @@ static void ObjectEventSetSingleMovement(struct ObjectEvent *objectEvent, struct
objectEvent->movementActionId = animId; objectEvent->movementActionId = animId;
sprite->data[2] = 0; sprite->data[2] = 0;
if (gUnknown_3005E88 == 2) if (gQuestLogPlaybackState == 2)
{ {
sub_81124EC(objectEvent->localId, objectEvent->mapNum, objectEvent->mapGroup, animId); sub_81124EC(objectEvent->localId, objectEvent->mapNum, objectEvent->mapGroup, animId);
} }
+15 -16
View File
@@ -107,7 +107,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys)
{ {
if ((newKeys & START_BUTTON) && !(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FISHING)) if ((newKeys & START_BUTTON) && !(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FISHING))
input->pressedStartButton = TRUE; input->pressedStartButton = TRUE;
if (gQuestLogState != QL_STATE_2 && gQuestLogState != QL_STATE_3) if (!QL_IS_PLAYBACK_STATE)
{ {
if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FISHING)) if (!(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FISHING))
{ {
@@ -123,7 +123,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys)
} }
} }
if (gQuestLogState != QL_STATE_2 && gQuestLogState != QL_STATE_3) if (!QL_IS_PLAYBACK_STATE)
{ {
if (heldKeys & (DPAD_UP | DPAD_DOWN | DPAD_LEFT | DPAD_RIGHT)) if (heldKeys & (DPAD_UP | DPAD_DOWN | DPAD_LEFT | DPAD_RIGHT))
{ {
@@ -142,7 +142,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys)
input->checkStandardWildEncounter = TRUE; input->checkStandardWildEncounter = TRUE;
} }
if (gQuestLogState != QL_STATE_2 && gQuestLogState != QL_STATE_3) if (!QL_IS_PLAYBACK_STATE)
{ {
if (heldKeys & DPAD_UP) if (heldKeys & DPAD_UP)
input->dpadDirection = DIR_NORTH; input->dpadDirection = DIR_NORTH;
@@ -650,7 +650,7 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior)
{ {
if (InUnionRoom() == TRUE) if (InUnionRoom() == TRUE)
return FALSE; return FALSE;
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
return FALSE; return FALSE;
UpdateHappinessStepCounter(); UpdateHappinessStepCounter();
@@ -836,17 +836,17 @@ static bool8 TryArrowWarp(struct MapPosition *position, u16 metatileBehavior, u8
DoWarp(); DoWarp();
return TRUE; return TRUE;
} }
else if (sub_806DB84(metatileBehavior, direction) == TRUE) else if (IsDirectionalStairWarpMetatileBehavior(metatileBehavior, direction) == TRUE)
{ {
delay = 0; delay = 0;
if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_MACH_BIKE | PLAYER_AVATAR_FLAG_ACRO_BIKE)) if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_MACH_BIKE | PLAYER_AVATAR_FLAG_ACRO_BIKE))
{ {
SetPlayerAvatarTransitionFlags(1); SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_ON_FOOT);
delay = 12; delay = 12;
} }
StoreInitialPlayerAvatarState(); StoreInitialPlayerAvatarState();
SetupWarp(&gMapHeader, warpEventId, position); SetupWarp(&gMapHeader, warpEventId, position);
sub_807E4A0(metatileBehavior, delay); DoStairWarp(metatileBehavior, delay);
return TRUE; return TRUE;
} }
} }
@@ -921,20 +921,20 @@ static bool8 IsWarpMetatileBehavior(u16 metatileBehavior)
return FALSE; return FALSE;
} }
bool8 sub_806DB84(u16 metatileBehavior, u8 playerDirection) bool8 IsDirectionalStairWarpMetatileBehavior(u16 metatileBehavior, u8 playerDirection)
{ {
switch (playerDirection) switch (playerDirection)
{ {
case DIR_WEST: case DIR_WEST:
if (MetatileBehavior_IsUnknownWarp6D(metatileBehavior)) if (MetatileBehavior_IsDirectionalUpLeftStairWarp(metatileBehavior))
return TRUE; return TRUE;
if (MetatileBehavior_IsUnknownWarp6F(metatileBehavior)) if (MetatileBehavior_IsDirectionalDownLeftStairWarp(metatileBehavior))
return TRUE; return TRUE;
break; break;
case DIR_EAST: case DIR_EAST:
if (MetatileBehavior_IsUnknownWarp6C(metatileBehavior)) if (MetatileBehavior_IsDirectionalUpRightStairWarp(metatileBehavior))
return TRUE; return TRUE;
if (MetatileBehavior_IsUnknownWarp6E(metatileBehavior)) if (MetatileBehavior_IsDirectionalDownRightStairWarp(metatileBehavior))
return TRUE; return TRUE;
break; break;
} }
@@ -1063,18 +1063,17 @@ static const u8 *GetCoordEventScriptAtPosition(struct MapHeader *mapHeader, u16
return NULL; return NULL;
} }
void sub_806DE28(struct ObjectEvent * object) void HandleBoulderFallThroughHole(struct ObjectEvent * object)
{ {
if (MapGridGetMetatileBehaviorAt(object->currentCoords.x, object->currentCoords.y) == MB_FALL_WARP) if (MapGridGetMetatileBehaviorAt(object->currentCoords.x, object->currentCoords.y) == MB_FALL_WARP)
{ {
PlaySE(SE_RU_HYUU); PlaySE(SE_RU_HYUU);
// w-why?!
RemoveObjectEventByLocalIdAndMap(object->localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup); RemoveObjectEventByLocalIdAndMap(object->localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
FlagClear(sub_805FCD8(object->localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup)); FlagClear(GetObjectEventFlagByLocalIdAndMap(object->localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup));
} }
} }
void sub_806DE70(u16 x, u16 y) void HandleBoulderActivateVictoryRoadSwitch(u16 x, u16 y)
{ {
int i; int i;
const struct CoordEvent * events = gMapHeader.events->coordEvents; const struct CoordEvent * events = gMapHeader.events->coordEvents;
+1 -1
View File
@@ -2984,7 +2984,7 @@ static void (*const sUseVsSeekerEffectFuncs[])(struct Task * task) = {
u32 FldEff_UseVsSeeker(void) u32 FldEff_UseVsSeeker(void)
{ {
if (gQuestLogState == QL_STATE_1) if (gQuestLogState == QL_STATE_RECORDING)
sub_811278C(8, 89); sub_811278C(8, 89);
CreateTask(Task_FldEffUseVsSeeker, 0xFF); CreateTask(Task_FldEffUseVsSeeker, 0xFF);
return 0; return 0;
+39 -38
View File
@@ -23,6 +23,7 @@
#include "start_menu.h" #include "start_menu.h"
#include "constants/songs.h" #include "constants/songs.h"
#include "constants/event_object_movement.h" #include "constants/event_object_movement.h"
#include "constants/event_objects.h"
#include "constants/field_weather.h" #include "constants/field_weather.h"
static void sub_807DF4C(u8 a0); static void sub_807DF4C(u8 a0);
@@ -30,10 +31,10 @@ static void sub_807DFBC(u8 taskId);
static void task_map_chg_seq_0807E20C(u8 taskId); static void task_map_chg_seq_0807E20C(u8 taskId);
static void task_map_chg_seq_0807E2CC(u8 taskId); static void task_map_chg_seq_0807E2CC(u8 taskId);
static void Task_TeleportWarpIn(u8 taskId); static void Task_TeleportWarpIn(u8 taskId);
static void sub_807E718(u8 taskId); static void Task_Teleport2Warp(u8 taskId);
static void Task_TeleportWarp(u8 taskId); static void Task_TeleportWarp(u8 taskId);
static void sub_807E80C(u8 taskId); static void Task_DoorWarp(u8 taskId);
static void sub_807E980(u8 taskId); static void Task_StairWarp(u8 taskId);
static void sub_807EB64(u16, s16*, s16*); static void sub_807EB64(u16, s16*, s16*);
static void sub_807EBBC(u8 a0, s16 *a1, s16 *a2); static void sub_807EBBC(u8 a0, s16 *a1, s16 *a2);
static void sub_807EAC4(s16, s16, s16*, s16*, s16*); static void sub_807EAC4(s16, s16, s16*, s16*, s16*);
@@ -262,7 +263,7 @@ static void sub_807DE78(bool8 a0)
sub_807DF4C(a0); sub_807DF4C(a0);
if (MetatileBehavior_IsNonAnimDoor(behavior) == TRUE) if (MetatileBehavior_IsNonAnimDoor(behavior) == TRUE)
func = task_map_chg_seq_0807E20C; func = task_map_chg_seq_0807E20C;
else if (MetatileBehavior_IsUnknownWarp6C_to_6F(behavior) == TRUE) else if (MetatileBehavior_IsDirectionalStairWarp(behavior) == TRUE)
{ {
u8 tmp = gUnknown_2031DE0; u8 tmp = gUnknown_2031DE0;
func = task_map_chg_seq_0807E2CC; func = task_map_chg_seq_0807E2CC;
@@ -350,7 +351,7 @@ static void sub_807DFBC(u8 taskId)
{ {
PlayerGetDestCoords(&task->data[12], &task->data[13]); PlayerGetDestCoords(&task->data[12], &task->data[13]);
sub_807DCB0(TRUE); sub_807DCB0(TRUE);
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN); ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN);
task->data[0] = 8; task->data[0] = 8;
} }
break; break;
@@ -365,7 +366,7 @@ static void sub_807DFBC(u8 taskId)
case 9: case 9:
if (FieldFadeTransitionBackgroundEffectIsFinished() && walkrun_is_standing_still() && !FieldIsDoorAnimationRunning() && !FuncIsActiveTask(Task_BarnDoorWipe)) if (FieldFadeTransitionBackgroundEffectIsFinished() && walkrun_is_standing_still() && !FieldIsDoorAnimationRunning() && !FuncIsActiveTask(Task_BarnDoorWipe))
{ {
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
task->data[0] = 4; task->data[0] = 4;
} }
break; break;
@@ -374,7 +375,7 @@ static void sub_807DFBC(u8 taskId)
if (FieldFadeTransitionBackgroundEffectIsFinished()) if (FieldFadeTransitionBackgroundEffectIsFinished())
{ {
sub_807DCB0(TRUE); sub_807DCB0(TRUE);
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN); ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN);
task->data[0] = 2; task->data[0] = 2;
} }
break; break;
@@ -382,7 +383,7 @@ static void sub_807DFBC(u8 taskId)
if (walkrun_is_standing_still()) if (walkrun_is_standing_still())
{ {
task->data[1] = FieldAnimateDoorClose(*x, *y); task->data[1] = FieldAnimateDoorClose(*x, *y);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
task->data[0] = 3; task->data[0] = 3;
} }
break; break;
@@ -416,7 +417,7 @@ static void task_map_chg_seq_0807E20C(u8 taskId)
if (FieldFadeTransitionBackgroundEffectIsFinished()) if (FieldFadeTransitionBackgroundEffectIsFinished())
{ {
sub_807DCB0(TRUE); sub_807DCB0(TRUE);
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], GetWalkNormalMovementAction(GetPlayerFacingDirection())); ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)], GetWalkNormalMovementAction(GetPlayerFacingDirection()));
task->data[0] = 2; task->data[0] = 2;
} }
break; break;
@@ -497,7 +498,7 @@ bool8 FieldCB_ReturnToFieldOpenStartMenu(void)
return FALSE; return FALSE;
} }
static void task_mpl_807E3C8(u8 taskId) static void Task_SafariZoneRanOutOfBalls(u8 taskId)
{ {
if (FieldFadeTransitionBackgroundEffectIsFinished() == TRUE) if (FieldFadeTransitionBackgroundEffectIsFinished() == TRUE)
{ {
@@ -507,12 +508,12 @@ static void task_mpl_807E3C8(u8 taskId)
} }
} }
void sub_807E3EC(void) void FieldCB_SafariZoneRanOutOfBalls(void)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
Overworld_PlaySpecialMapMusic(); Overworld_PlaySpecialMapMusic();
FadeInFromBlack(); FadeInFromBlack();
CreateTask(task_mpl_807E3C8, 10); CreateTask(Task_SafariZoneRanOutOfBalls, 10);
} }
static bool32 WaitWarpFadeOutScreen(void) static bool32 WaitWarpFadeOutScreen(void)
@@ -536,7 +537,7 @@ void DoWarp(void)
PlayRainStoppingSoundEffect(); PlayRainStoppingSoundEffect();
PlaySE(SE_KAIDAN); PlaySE(SE_KAIDAN);
gFieldCallback = FieldCB_DefaultWarpExit; gFieldCallback = FieldCB_DefaultWarpExit;
CreateTask(sub_807E718, 10); CreateTask(Task_Teleport2Warp, 10);
} }
void DoDiveWarp(void) void DoDiveWarp(void)
@@ -546,28 +547,28 @@ void DoDiveWarp(void)
WarpFadeOutScreen(); WarpFadeOutScreen();
PlayRainStoppingSoundEffect(); PlayRainStoppingSoundEffect();
gFieldCallback = FieldCB_DefaultWarpExit; gFieldCallback = FieldCB_DefaultWarpExit;
CreateTask(sub_807E718, 10); CreateTask(Task_Teleport2Warp, 10);
} }
void sub_807E4A0(u16 metatileBehavior, u16 delay) void DoStairWarp(u16 metatileBehavior, u16 delay)
{ {
u8 taskId = CreateTask(sub_807E980, 10); u8 taskId = CreateTask(Task_StairWarp, 10);
gTasks[taskId].data[1] = metatileBehavior; gTasks[taskId].data[1] = metatileBehavior;
gTasks[taskId].data[15] = delay; gTasks[taskId].data[15] = delay;
sub_807E980(taskId); Task_StairWarp(taskId);
} }
void DoDoorWarp(void) void DoDoorWarp(void)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
gFieldCallback = FieldCB_DefaultWarpExit; gFieldCallback = FieldCB_DefaultWarpExit;
CreateTask(sub_807E80C, 10); CreateTask(Task_DoorWarp, 10);
} }
void sub_807E500(void) void DoTeleport2Warp(void)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
CreateTask(sub_807E718, 10); CreateTask(Task_Teleport2Warp, 10);
gFieldCallback = FieldCB_TeleportWarpIn; gFieldCallback = FieldCB_TeleportWarpIn;
} }
@@ -614,11 +615,11 @@ void sub_807E5C4(void)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
WarpFadeOutScreen(); WarpFadeOutScreen();
CreateTask(sub_807E718, 10); CreateTask(Task_Teleport2Warp, 10);
gFieldCallback = nullsub_60; gFieldCallback = nullsub_60;
} }
static void sub_807E5EC(u8 taskId) static void Task_CableClubWarp(u8 taskId)
{ {
struct Task * task = &gTasks[taskId]; struct Task * task = &gTasks[taskId];
switch (task->data[0]) switch (task->data[0])
@@ -645,10 +646,10 @@ void DoCableClubWarp(void)
TryFadeOutOldMapMusic(); TryFadeOutOldMapMusic();
WarpFadeOutScreen(); WarpFadeOutScreen();
PlaySE(SE_KAIDAN); PlaySE(SE_KAIDAN);
CreateTask(sub_807E5EC, 10); CreateTask(Task_CableClubWarp, 10);
} }
static void sub_807E678(u8 taskId) static void Task_ReturnFromLinkRoomWarp(u8 taskId)
{ {
s16 * data = gTasks[taskId].data; s16 * data = gTasks[taskId].data;
switch (data[0]) switch (data[0])
@@ -680,10 +681,10 @@ static void sub_807E678(u8 taskId)
void ReturnFromLinkRoom(void) void ReturnFromLinkRoom(void)
{ {
CreateTask(sub_807E678, 10); CreateTask(Task_ReturnFromLinkRoomWarp, 10);
} }
static void sub_807E718(u8 taskId) static void Task_Teleport2Warp(u8 taskId)
{ {
struct Task *task = &gTasks[taskId]; struct Task *task = &gTasks[taskId];
switch (task->data[0]) switch (task->data[0])
@@ -736,7 +737,7 @@ static void Task_TeleportWarp(u8 taskId)
} }
} }
static void sub_807E80C(u8 taskId) static void Task_DoorWarp(u8 taskId)
{ {
struct Task *task = &gTasks[taskId]; struct Task *task = &gTasks[taskId];
s16 * xp = &task->data[2]; s16 * xp = &task->data[2];
@@ -753,8 +754,8 @@ static void sub_807E80C(u8 taskId)
case 1: case 1:
if (task->data[1] < 0 || gTasks[task->data[1]].isActive != TRUE) if (task->data[1] < 0 || gTasks[task->data[1]].isActive != TRUE)
{ {
ObjectEventClearHeldMovementIfActive(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)]); ObjectEventClearHeldMovementIfActive(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_UP); ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_UP);
task->data[0] = 2; task->data[0] = 2;
} }
break; break;
@@ -762,7 +763,7 @@ static void sub_807E80C(u8 taskId)
if (walkrun_is_standing_still()) if (walkrun_is_standing_still())
{ {
task->data[1] = FieldAnimateDoorClose(*xp, *yp - 1); task->data[1] = FieldAnimateDoorClose(*xp, *yp - 1);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0)]);
sub_807DCB0(FALSE); sub_807DCB0(FALSE);
task->data[0] = 3; task->data[0] = 3;
} }
@@ -778,18 +779,18 @@ static void sub_807E80C(u8 taskId)
WarpFadeOutScreen(); WarpFadeOutScreen();
PlayRainStoppingSoundEffect(); PlayRainStoppingSoundEffect();
task->data[0] = 0; task->data[0] = 0;
task->func = sub_807E718; task->func = Task_Teleport2Warp;
break; break;
case 5: case 5:
TryFadeOutOldMapMusic(); TryFadeOutOldMapMusic();
PlayRainStoppingSoundEffect(); PlayRainStoppingSoundEffect();
task->data[0] = 0; task->data[0] = 0;
task->func = sub_807E718; task->func = Task_Teleport2Warp;
break; break;
} }
} }
static void sub_807E980(u8 taskId) static void Task_StairWarp(u8 taskId)
{ {
s16 * data = gTasks[taskId].data; s16 * data = gTasks[taskId].data;
struct ObjectEvent *playerObj = &gObjectEvents[gPlayerAvatar.objectEventId]; struct ObjectEvent *playerObj = &gObjectEvents[gPlayerAvatar.objectEventId];
@@ -865,22 +866,22 @@ static void sub_807EB64(u16 a0, s16 *a1, s16 *a2)
static void sub_807EBBC(u8 a0, s16 *a1, s16 *a2) static void sub_807EBBC(u8 a0, s16 *a1, s16 *a2)
{ {
if (MetatileBehavior_IsUnknownWarp6C(a0)) if (MetatileBehavior_IsDirectionalUpRightStairWarp(a0))
{ {
*a1 = 16; *a1 = 16;
*a2 = -10; *a2 = -10;
} }
else if (MetatileBehavior_IsUnknownWarp6D(a0)) else if (MetatileBehavior_IsDirectionalUpLeftStairWarp(a0))
{ {
*a1 = -17; *a1 = -17;
*a2 = -10; *a2 = -10;
} }
else if (MetatileBehavior_IsUnknownWarp6E(a0)) else if (MetatileBehavior_IsDirectionalDownRightStairWarp(a0))
{ {
*a1 = 17; *a1 = 17;
*a2 = 3; *a2 = 3;
} }
else if (MetatileBehavior_IsUnknownWarp6F(a0)) else if (MetatileBehavior_IsDirectionalDownLeftStairWarp(a0))
{ {
*a1 = -17; *a1 = -17;
*a2 = 3; *a2 = 3;
@@ -927,7 +928,7 @@ static void sub_807ECBC(s16 *a0, s16 *a1, s16 *a2, s16 *a3, s16 *a4)
struct Sprite *sprite; struct Sprite *sprite;
PlayerGetDestCoords(&x, &y); PlayerGetDestCoords(&x, &y);
behavior = MapGridGetMetatileBehaviorAt(x, y); behavior = MapGridGetMetatileBehaviorAt(x, y);
if (MetatileBehavior_IsUnknownWarp6E(behavior) || MetatileBehavior_IsUnknownWarp6C(behavior)) if (MetatileBehavior_IsDirectionalDownRightStairWarp(behavior) || MetatileBehavior_IsDirectionalUpRightStairWarp(behavior))
r1 = 3; r1 = 3;
else else
r1 = 4; r1 = 4;
+1 -1
View File
@@ -24,7 +24,7 @@ static void Task_RunFieldMessageBoxPrinter(u8 taskId)
switch (task->data[0]) switch (task->data[0])
{ {
case 0: case 0:
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
gTextFlags.autoScroll = TRUE; gTextFlags.autoScroll = TRUE;
TextWindow_LoadTilesStdFrame1(0, 0x200); TextWindow_LoadTilesStdFrame1(0, 0x200);
+8 -8
View File
@@ -556,7 +556,7 @@ static u8 CheckForPlayerAvatarCollision(u8 direction)
x = playerObjEvent->currentCoords.x; x = playerObjEvent->currentCoords.x;
y = playerObjEvent->currentCoords.y; y = playerObjEvent->currentCoords.y;
if (sub_806DB84(MapGridGetMetatileBehaviorAt(x, y), direction)) if (IsDirectionalStairWarpMetatileBehavior(MapGridGetMetatileBehaviorAt(x, y), direction))
return 8; return 8;
MoveCoords(direction, &x, &y); MoveCoords(direction, &x, &y);
return CheckForObjectEventCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y)); return CheckForObjectEventCollision(playerObjEvent, x, y, direction, MapGridGetMetatileBehaviorAt(x, y));
@@ -673,7 +673,7 @@ static void CheckAcroBikeCollision(s16 x, s16 y, u8 metatileBehavior, u8 *collis
} }
} }
void SetPlayerAvatarTransitionFlags(bool16 flags) void SetPlayerAvatarTransitionFlags(u16 flags)
{ {
gPlayerAvatar.transitionFlags |= flags; gPlayerAvatar.transitionFlags |= flags;
DoPlayerAvatarTransition(); DoPlayerAvatarTransition();
@@ -910,7 +910,7 @@ void sub_805C260(void)
PlayerSetAnimId(MOVEMENT_ACTION_0x9F, 0); PlayerSetAnimId(MOVEMENT_ACTION_0x9F, 0);
} }
void sub_805C270(void) void HandleEnforcedLookDirectionOnPlayerStopMoving(void)
{ {
if (gPlayerAvatar.tileTransitionState == T_TILE_CENTER || gPlayerAvatar.tileTransitionState == T_NOT_MOVING) if (gPlayerAvatar.tileTransitionState == T_TILE_CENTER || gPlayerAvatar.tileTransitionState == T_NOT_MOVING)
{ {
@@ -1006,12 +1006,12 @@ static void PlayCollisionSoundIfNotFacingWarp(u8 direction)
{ {
if (direction == DIR_WEST) if (direction == DIR_WEST)
{ {
if (MetatileBehavior_IsUnknownWarp6D(metatileBehavior) || MetatileBehavior_IsUnknownWarp6F(metatileBehavior)) if (MetatileBehavior_IsDirectionalUpLeftStairWarp(metatileBehavior) || MetatileBehavior_IsDirectionalDownLeftStairWarp(metatileBehavior))
return; return;
} }
if (direction == DIR_EAST) if (direction == DIR_EAST)
{ {
if (MetatileBehavior_IsUnknownWarp6C(metatileBehavior) || MetatileBehavior_IsUnknownWarp6E(metatileBehavior)) if (MetatileBehavior_IsDirectionalUpRightStairWarp(metatileBehavior) || MetatileBehavior_IsDirectionalDownRightStairWarp(metatileBehavior))
return; return;
} }
if (direction == DIR_NORTH) if (direction == DIR_NORTH)
@@ -1445,8 +1445,8 @@ static bool8 sub_805CE20(struct Task *task, struct ObjectEvent *playerObject, st
{ {
ObjectEventClearHeldMovementIfFinished(playerObject); ObjectEventClearHeldMovementIfFinished(playerObject);
ObjectEventClearHeldMovementIfFinished(strengthObject); ObjectEventClearHeldMovementIfFinished(strengthObject);
sub_806DE28(strengthObject); HandleBoulderFallThroughHole(strengthObject);
sub_806DE70(strengthObject->currentCoords.x, strengthObject->currentCoords.y); HandleBoulderActivateVictoryRoadSwitch(strengthObject->currentCoords.x, strengthObject->currentCoords.y);
gPlayerAvatar.preventStep = FALSE; gPlayerAvatar.preventStep = FALSE;
ScriptContext2_Disable(); ScriptContext2_Disable();
DestroyTask(FindTaskIdByFunc(Task_BumpBoulder)); DestroyTask(FindTaskIdByFunc(Task_BumpBoulder));
@@ -1598,7 +1598,7 @@ void CreateStopSurfingTask_NoMusicChange(u8 direction)
void SeafoamIslandsB4F_CurrentDumpsPlayerOnLand(void) void SeafoamIslandsB4F_CurrentDumpsPlayerOnLand(void)
{ {
if (gUnknown_3005E88 != 1 && gUnknown_3005E88 != 3) if (gQuestLogPlaybackState != 1 && gQuestLogPlaybackState != 3)
{ {
sub_811278C(gUnknown_835B820[DIR_NORTH], 16); sub_811278C(gUnknown_835B820[DIR_NORTH], 16);
CreateStopSurfingTask(DIR_NORTH); CreateStopSurfingTask(DIR_NORTH);
+4 -4
View File
@@ -102,8 +102,8 @@ void ShowDiploma(void)
void ForcePlayerOntoBike(void) void ForcePlayerOntoBike(void)
{ {
if (gPlayerAvatar.flags & 1) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_ON_FOOT)
SetPlayerAvatarTransitionFlags(2); SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_MACH_BIKE);
Overworld_SetSavedMusic(MUS_CYCLING); Overworld_SetSavedMusic(MUS_CYCLING);
Overworld_ChangeMusicTo(MUS_CYCLING); Overworld_ChangeMusicTo(MUS_CYCLING);
} }
@@ -1519,7 +1519,7 @@ static void Task_ListMenuRemoveScrollIndicatorArrowPair(u8 taskId)
void ForcePlayerToStartSurfing(void) void ForcePlayerToStartSurfing(void)
{ {
SetHelpContext(HELPCONTEXT_SURFING); SetHelpContext(HELPCONTEXT_SURFING);
SetPlayerAvatarTransitionFlags(8); SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_SURFING);
} }
static const u16 sStarterSpecies[] = { static const u16 sStarterSpecies[] = {
@@ -2481,7 +2481,7 @@ void BrailleCursorToggle(void)
// 8005 = y // 8005 = y
// 8006 = action (0 = create, 1 = delete) // 8006 = action (0 = create, 1 = delete)
u16 x; u16 x;
if (gQuestLogState != 2) if (gQuestLogState != QL_STATE_PLAYBACK)
{ {
x = gSpecialVar_0x8004 + 27; x = gSpecialVar_0x8004 + 27;
if (gSpecialVar_0x8006 == 0) if (gSpecialVar_0x8006 == 0)
+1 -1
View File
@@ -61,7 +61,7 @@ static void Task_RunTimeBasedEvents(u8 taskId)
if (!ScriptContext2_IsEnabled()) if (!ScriptContext2_IsEnabled())
{ {
if (gQuestLogState != 2 && gQuestLogState != 3) if (!QL_IS_PLAYBACK_STATE)
{ {
UpdateAmbientCry(&data[1], &data[2]); UpdateAmbientCry(&data[1], &data[2]);
} }
+2 -2
View File
@@ -1003,8 +1003,8 @@ const u32 gBattleAnimSpritePal_Splash[] = INCBIN_U32("graphics/battle_anims/spri
const u32 gBattleAnimSpriteGfx_SweatBead[] = INCBIN_U32("graphics/battle_anims/sprites/sweat_bead.4bpp.lz"); const u32 gBattleAnimSpriteGfx_SweatBead[] = INCBIN_U32("graphics/battle_anims/sprites/sweat_bead.4bpp.lz");
const u32 gBattleAnimSpriteGfx_Pokeblock[] = INCBIN_U32("graphics/battle_anims/sprites/pokeblock.4bpp.lz"); const u32 gBattleAnimSpriteGfx_SafariBait[] = INCBIN_U32("graphics/battle_anims/sprites/safari_bait.4bpp.lz");
const u32 gBattleAnimSpritePal_Pokeblock[] = INCBIN_U32("graphics/battle_anims/sprites/pokeblock.gbapal.lz"); const u32 gBattleAnimSpritePal_SafariBait[] = INCBIN_U32("graphics/battle_anims/sprites/safari_bait.gbapal.lz");
const u32 gBattleAnimSpriteGfx_Gem1[] = INCBIN_U32("graphics/battle_anims/sprites/gem_1.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Gem1[] = INCBIN_U32("graphics/battle_anims/sprites/gem_1.4bpp.lz");
const u32 gBattleAnimSpriteGfx_Gem2[] = INCBIN_U32("graphics/battle_anims/sprites/gem_2.4bpp.lz"); const u32 gBattleAnimSpriteGfx_Gem2[] = INCBIN_U32("graphics/battle_anims/sprites/gem_2.4bpp.lz");
+1 -1
View File
@@ -1892,7 +1892,7 @@ void HelpSystem_Disable(void)
void HelpSystem_Enable(void) void HelpSystem_Enable(void)
{ {
if (gQuestLogState != 2 && gQuestLogState != 3) if (!QL_IS_PLAYBACK_STATE)
{ {
gHelpSystemEnabled = TRUE; gHelpSystemEnabled = TRUE;
HelpSystem_EnableToggleWithRButton(); HelpSystem_EnableToggleWithRButton();
+1 -1
View File
@@ -2035,7 +2035,7 @@ bool8 UseRegisteredKeyItemOnField(void)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
FreezeObjectEvents(); FreezeObjectEvents();
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
StopPlayerAvatar(); StopPlayerAvatar();
gSpecialVar_ItemId = gSaveBlock1Ptr->registeredItem; gSpecialVar_ItemId = gSaveBlock1Ptr->registeredItem;
taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1Ptr->registeredItem), 8); taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1Ptr->registeredItem), 8);
+1 -1
View File
@@ -229,7 +229,7 @@ static const u8 sLinkErrorTextColor[] = { 0x00, 0x01, 0x02 };
bool8 IsWirelessAdapterConnected(void) bool8 IsWirelessAdapterConnected(void)
{ {
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
SetWirelessCommType1(); SetWirelessCommType1();
+4 -4
View File
@@ -499,7 +499,7 @@ void LinkRfu_Shutdown(void)
{ {
u8 i; u8 i;
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return; return;
rfu_LMAN_powerDownRFU(); rfu_LMAN_powerDownRFU();
@@ -538,7 +538,7 @@ void LinkRfu_Shutdown(void)
static void CreateTask_LinkLeaderSearchForChildren(void) static void CreateTask_LinkLeaderSearchForChildren(void)
{ {
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return; return;
Rfu.unk_67 = CreateTask(Task_LinkLeaderSearchForChildren, 1); Rfu.unk_67 = CreateTask(Task_LinkLeaderSearchForChildren, 1);
} }
@@ -564,7 +564,7 @@ static bool32 IsParentSuccessfullyReconnected(void)
static void CreateTask_JoinGroupSearchForParent(void) static void CreateTask_JoinGroupSearchForParent(void)
{ {
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return; return;
Rfu.unk_67 = CreateTask(Task_JoinGroupSearchForParent, 1); Rfu.unk_67 = CreateTask(Task_JoinGroupSearchForParent, 1);
} }
@@ -2481,7 +2481,7 @@ void InitializeRfuLinkManager_JoinGroup(void)
void InitializeRfuLinkManager_EnterUnionRoom(void) void InitializeRfuLinkManager_EnterUnionRoom(void)
{ {
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return; return;
Rfu.parent_child = 2; Rfu.parent_child = 2;
CopyPlayerNameToUnameBuffer(); CopyPlayerNameToUnameBuffer();
+1 -1
View File
@@ -176,7 +176,7 @@ static void InitMainCallbacks(void)
gSaveBlock2Ptr = &gSaveBlock2; gSaveBlock2Ptr = &gSaveBlock2;
gSaveBlock1Ptr = &gSaveBlock1; gSaveBlock1Ptr = &gSaveBlock1;
gSaveBlock2.encryptionKey = 0; gSaveBlock2.encryptionKey = 0;
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
} }
static void CallCallbacks(void) static void CallCallbacks(void)
+1 -1
View File
@@ -31,7 +31,7 @@ static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 flags);
void ShowMapNamePopup(bool32 palIntoFadedBuffer) void ShowMapNamePopup(bool32 palIntoFadedBuffer)
{ {
u8 taskId; u8 taskId;
if (FlagGet(FLAG_DONT_SHOW_MAP_NAME_POPUP) != TRUE && !(gQuestLogState == QL_STATE_2 || gQuestLogState == QL_STATE_3)) if (FlagGet(FLAG_DONT_SHOW_MAP_NAME_POPUP) != TRUE && !QL_IS_PLAYBACK_STATE)
{ {
taskId = FindTaskIdByFunc(Task_MapNamePopup); taskId = FindTaskIdByFunc(Task_MapNamePopup);
if (taskId == 0xFF) if (taskId == 0xFF)
+1 -1
View File
@@ -366,7 +366,7 @@ bool8 MapHasPreviewScreen(u8 mapsec, u8 type)
bool32 MapHasPreviewScreen_HandleQLState2(u8 mapsec, u8 type) bool32 MapHasPreviewScreen_HandleQLState2(u8 mapsec, u8 type)
{ {
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
return FALSE; return FALSE;
} }
+13 -13
View File
@@ -131,51 +131,51 @@ bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior)
return FALSE; return FALSE;
} }
bool8 MetatileBehavior_IsUnknownWarp6C(u8 metatileBehavior) bool8 MetatileBehavior_IsDirectionalUpRightStairWarp(u8 metatileBehavior)
{ {
u8 result = FALSE; u8 result = FALSE;
if(metatileBehavior == MB_UNKNOWN_WARP_6C) if(metatileBehavior == MB_UP_RIGHT_STAIR_WARP)
result = TRUE; result = TRUE;
return result; return result;
} }
bool8 MetatileBehavior_IsUnknownWarp6D(u8 metatileBehavior) bool8 MetatileBehavior_IsDirectionalUpLeftStairWarp(u8 metatileBehavior)
{ {
u8 result = FALSE; u8 result = FALSE;
if(metatileBehavior == MB_UNKNOWN_WARP_6D) if(metatileBehavior == MB_UP_LEFT_STAIR_WARP)
result = TRUE; result = TRUE;
return result; return result;
} }
bool8 MetatileBehavior_IsUnknownWarp6E(u8 metatileBehavior) bool8 MetatileBehavior_IsDirectionalDownRightStairWarp(u8 metatileBehavior)
{ {
u8 result = FALSE; u8 result = FALSE;
if(metatileBehavior == MB_UNKNOWN_WARP_6E) if(metatileBehavior == MB_DOWN_RIGHT_STAIR_WARP)
result = TRUE; result = TRUE;
return result; return result;
} }
bool8 MetatileBehavior_IsUnknownWarp6F(u8 metatileBehavior) bool8 MetatileBehavior_IsDirectionalDownLeftStairWarp(u8 metatileBehavior)
{ {
u8 result = FALSE; u8 result = FALSE;
if(metatileBehavior == MB_UNKNOWN_WARP_6F) if(metatileBehavior == MB_DOWN_LEFT_STAIR_WARP)
result = TRUE; result = TRUE;
return result; return result;
} }
bool8 MetatileBehavior_IsUnknownWarp6C_to_6F(u8 metatileBehavior) bool8 MetatileBehavior_IsDirectionalStairWarp(u8 metatileBehavior)
{ {
bool8 result = FALSE; bool8 result = FALSE;
if(metatileBehavior >= MB_UNKNOWN_WARP_6C && metatileBehavior <= MB_UNKNOWN_WARP_6F) if(metatileBehavior >= MB_UP_RIGHT_STAIR_WARP && metatileBehavior <= MB_DOWN_LEFT_STAIR_WARP)
result = TRUE; result = TRUE;
else else
result = FALSE; result = FALSE;
@@ -484,7 +484,7 @@ bool8 MetatileBehavior_IsDiveable(u8 metatileBehavior)
bool8 MetatileBehavior_IsUnableToEmerge(u8 metatileBehavior) bool8 MetatileBehavior_IsUnableToEmerge(u8 metatileBehavior)
{ {
if(metatileBehavior == MB_19) if(metatileBehavior == MB_UNDERWATER_BLOCKED_ABOVE)
return TRUE; return TRUE;
else else
return FALSE; return FALSE;
@@ -622,7 +622,7 @@ bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8 metatileBehavior) { return FALSE; }
bool8 MetatileBehavior_IsLavaridge1FWarp(u8 metatileBehavior) bool8 MetatileBehavior_IsLavaridge1FWarp(u8 metatileBehavior)
{ {
if(metatileBehavior == MB_68) if(metatileBehavior == MB_LAVARIDGE_1F_WARP)
return TRUE; return TRUE;
else else
return FALSE; return FALSE;
@@ -685,7 +685,7 @@ bool8 MetatileBehavior_IsHorizontalRail(u8 metatileBehavior) { return FALSE; }
bool8 MetatileBehavior_IsSeaweed(u8 metatileBehavior) bool8 MetatileBehavior_IsSeaweed(u8 metatileBehavior)
{ {
if(metatileBehavior == MB_22) if(metatileBehavior == MB_SEAWEED)
return TRUE; return TRUE;
else else
return FALSE; return FALSE;
+4 -4
View File
@@ -457,7 +457,7 @@ void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonP
void LoadStdWindowFrameGfx(void) void LoadStdWindowFrameGfx(void)
{ {
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
gTextFlags.autoScroll = 1; gTextFlags.autoScroll = 1;
TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM); TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM);
@@ -495,7 +495,7 @@ void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram)
ClearWindowTilemap(windowId); ClearWindowTilemap(windowId);
if (copyToVram == TRUE) if (copyToVram == TRUE)
CopyWindowToVram(windowId, 3); CopyWindowToVram(windowId, 3);
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
CommitQuestLogWindow1(); CommitQuestLogWindow1();
} }
@@ -527,7 +527,7 @@ static void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u
static void WindowFunc_DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) static void WindowFunc_DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
{ {
if (!IsMsgSignPost() || gQuestLogState == QL_STATE_2) if (!IsMsgSignPost() || gQuestLogState == QL_STATE_PLAYBACK)
{ {
FillBgTilemapBufferRect(bg, DLG_WINDOW_BASE_TILE_NUM + 0, tilemapLeft - 2, tilemapTop - 1, 1, 1, DLG_WINDOW_PALETTE_NUM); FillBgTilemapBufferRect(bg, DLG_WINDOW_BASE_TILE_NUM + 0, tilemapLeft - 2, tilemapTop - 1, 1, 1, DLG_WINDOW_PALETTE_NUM);
FillBgTilemapBufferRect(bg, DLG_WINDOW_BASE_TILE_NUM + 1, tilemapLeft - 1, tilemapTop - 1, 1, 1, DLG_WINDOW_PALETTE_NUM); FillBgTilemapBufferRect(bg, DLG_WINDOW_BASE_TILE_NUM + 1, tilemapLeft - 1, tilemapTop - 1, 1, 1, DLG_WINDOW_PALETTE_NUM);
@@ -611,7 +611,7 @@ void SetStdWindowBorderStyle(u8 windowId, bool8 copyToVram)
void sub_80F7768(u8 windowId, bool8 copyToVram) void sub_80F7768(u8 windowId, bool8 copyToVram)
{ {
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
gTextFlags.autoScroll = 1; gTextFlags.autoScroll = 1;
TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM); TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM);
+6 -6
View File
@@ -921,9 +921,9 @@ static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *playerStr
return DIR_EAST; return DIR_EAST;
else if (MetatileBehavior_IsEastArrowWarp(metatileBehavior) == TRUE) else if (MetatileBehavior_IsEastArrowWarp(metatileBehavior) == TRUE)
return DIR_WEST; return DIR_WEST;
else if (MetatileBehavior_IsUnknownWarp6C(metatileBehavior) == TRUE || MetatileBehavior_IsUnknownWarp6E(metatileBehavior) == TRUE) else if (MetatileBehavior_IsDirectionalUpRightStairWarp(metatileBehavior) == TRUE || MetatileBehavior_IsDirectionalDownRightStairWarp(metatileBehavior) == TRUE)
return DIR_WEST; return DIR_WEST;
else if (MetatileBehavior_IsUnknownWarp6D(metatileBehavior) == TRUE || MetatileBehavior_IsUnknownWarp6F(metatileBehavior) == TRUE) else if (MetatileBehavior_IsDirectionalUpLeftStairWarp(metatileBehavior) == TRUE || MetatileBehavior_IsDirectionalDownLeftStairWarp(metatileBehavior) == TRUE)
return DIR_EAST; return DIR_EAST;
else if ((playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER && transitionFlags == PLAYER_AVATAR_FLAG_SURFING) else if ((playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER && transitionFlags == PLAYER_AVATAR_FLAG_SURFING)
|| (playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_SURFING && transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER )) || (playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_SURFING && transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER ))
@@ -1406,7 +1406,7 @@ static void DoCB1_Overworld(u16 newKeys, u16 heldKeys)
{ {
if (ProcessPlayerFieldInput(&fieldInput) == TRUE) if (ProcessPlayerFieldInput(&fieldInput) == TRUE)
{ {
if (gUnknown_3005E88 == 2) if (gQuestLogPlaybackState == 2)
sub_81127F8(&gInputToStoreInQuestLogMaybe); sub_81127F8(&gInputToStoreInQuestLogMaybe);
ScriptContext2_Enable(); ScriptContext2_Enable();
DismissMapNamePopup(); DismissMapNamePopup();
@@ -1452,7 +1452,7 @@ void CB1_Overworld(void)
{ {
if (gMain.callback2 == CB2_Overworld) if (gMain.callback2 == CB2_Overworld)
{ {
if (sub_8112CAC() == TRUE || gQuestLogState == QL_STATE_2) if (sub_8112CAC() == 1 || gQuestLogState == QL_STATE_PLAYBACK)
DoCB1_Overworld_QuestLogPlayback(); DoCB1_Overworld_QuestLogPlayback();
else else
DoCB1_Overworld(gMain.newKeys, gMain.heldKeys); DoCB1_Overworld(gMain.newKeys, gMain.heldKeys);
@@ -1868,7 +1868,7 @@ static bool32 load_map_stuff(u8 *state, bool32 a1)
case 4: case 4:
mli4_mapscripts_and_other(); mli4_mapscripts_and_other();
sub_8057114(); sub_8057114();
if (gQuestLogState != QL_STATE_2) if (gQuestLogState != QL_STATE_PLAYBACK)
{ {
sub_80CC534(); sub_80CC534();
sub_80CC59C(); sub_80CC59C();
@@ -2251,7 +2251,7 @@ static bool32 sub_8057314(u8 *state)
sub_8111F14(); sub_8111F14();
sub_81113E4(); sub_81113E4();
sub_8111438(); sub_8111438();
if (sub_8110AC8() == 2) if (GetQuestLogStartType() == QL_START_WARP)
{ {
gUnknown_2031DE0 = FALSE; gUnknown_2031DE0 = FALSE;
mli0_load_map(FALSE); mli0_load_map(FALSE);
+81 -81
View File
@@ -92,7 +92,7 @@ struct UnkStruct_203B044
u16 unk_2; u16 unk_2;
}; };
u8 gUnknown_3005E88; u8 gQuestLogPlaybackState;
u16 sNumEventsInLogEntry; u16 sNumEventsInLogEntry;
struct FieldInput gQuestLogFieldInput; struct FieldInput gQuestLogFieldInput;
struct QuestLogEntry * sCurQuestLogEntry; struct QuestLogEntry * sCurQuestLogEntry;
@@ -125,8 +125,8 @@ static EWRAM_DATA bool8 sNewlyEnteredMap = FALSE;
static EWRAM_DATA u8 gUnknown_203B04A = 0; static EWRAM_DATA u8 gUnknown_203B04A = 0;
static EWRAM_DATA bool8 gUnknown_203B04B = FALSE; static EWRAM_DATA bool8 gUnknown_203B04B = FALSE;
static void sub_8110A00(void); static void QLogCB_Recording(void);
static void sub_8110A3C(void); static void QLogCB_Playback(void);
static void SetPlayerInitialCoordsAtScene(u8); static void SetPlayerInitialCoordsAtScene(u8);
static void SetNPCInitialCoordsAtScene(u8); static void SetNPCInitialCoordsAtScene(u8);
static void TryRecordEvent39_GoToNextScene(void); static void TryRecordEvent39_GoToNextScene(void);
@@ -302,7 +302,7 @@ void sub_8110840(void * oldPointer)
{ {
if (sEventRecordingPointer) if (sEventRecordingPointer)
sEventRecordingPointer = (void *)sEventRecordingPointer + offset; sEventRecordingPointer = (void *)sEventRecordingPointer + offset;
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
int r3; int r3;
for (r3 = 0; r3 < (int)NELEMS(gUnknown_203AE0C); r3++) for (r3 = 0; r3 < (int)NELEMS(gUnknown_203AE0C); r3++)
@@ -343,7 +343,7 @@ void RunQuestLogCB(void)
bool8 sub_8110944(const void * a0, size_t cmdSize) bool8 sub_8110944(const void * a0, size_t cmdSize)
{ {
void * r2 = gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_568; void * r2 = gSaveBlock1Ptr->questLog[sCurrentSceneNum].script;
void * r0 = gSaveBlock1Ptr->questLog[sCurrentSceneNum].end; void * r0 = gSaveBlock1Ptr->questLog[sCurrentSceneNum].end;
r0 -= cmdSize; r0 -= cmdSize;
if ((const void *)a0 < r2 || (const void *)a0 > r0) if ((const void *)a0 < r2 || (const void *)a0 > r0)
@@ -353,7 +353,7 @@ bool8 sub_8110944(const void * a0, size_t cmdSize)
static bool8 WillCommandOfSizeFitInSav1Record(u16 *cursor, size_t size) static bool8 WillCommandOfSizeFitInSav1Record(u16 *cursor, size_t size)
{ {
void * start = gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_568; void * start = gSaveBlock1Ptr->questLog[sCurrentSceneNum].script;
void * end = gSaveBlock1Ptr->questLog[sCurrentSceneNum].end; void * end = gSaveBlock1Ptr->questLog[sCurrentSceneNum].end;
end -= size; end -= size;
if ((void *)cursor < start || (void *)cursor > end) if ((void *)cursor < start || (void *)cursor > end)
@@ -364,31 +364,31 @@ static bool8 WillCommandOfSizeFitInSav1Record(u16 *cursor, size_t size)
static void SetQuestLogState(u8 state) static void SetQuestLogState(u8 state)
{ {
gQuestLogState = state; gQuestLogState = state;
if (state == 1) if (state == QL_STATE_RECORDING)
sQuestLogCB = sub_8110A00; sQuestLogCB = QLogCB_Recording;
else else
sQuestLogCB = sub_8110A3C; sQuestLogCB = QLogCB_Playback;
} }
static void sub_8110A00(void) static void QLogCB_Recording(void)
{ {
if (TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer) != 1) if (TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer) != 1)
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
TryRecordEvent39_GoToNextScene(); TryRecordEvent39_GoToNextScene();
gQuestLogState = 0; gQuestLogState = 0;
sQuestLogCB = NULL; sQuestLogCB = NULL;
} }
} }
static void sub_8110A3C(void) static void QLogCB_Playback(void)
{ {
if (gUnknown_203AE94.unk_0_0 == 2) if (gUnknown_203AE94.unk_0_0 == 2)
gUnknown_203AE94.unk_0_0 = 0; gUnknown_203AE94.unk_0_0 = 0;
if (gUnknown_203AE94.unk_0_6 == 0) if (gUnknown_203AE94.unk_0_6 == 0)
{ {
if (gUnknown_3005E88 || gUnknown_203AE94.unk_0_0 == 1 || (gUnknown_203AE94.unk_1 < NELEMS(gUnknown_203AE0C) && gUnknown_203AE0C[gUnknown_203AE94.unk_1] != NULL)) if (gQuestLogPlaybackState || gUnknown_203AE94.unk_0_0 == 1 || (gUnknown_203AE94.unk_1 < NELEMS(gUnknown_203AE0C) && gUnknown_203AE0C[gUnknown_203AE94.unk_1] != NULL))
sub_8111AD8(); sub_8111AD8();
else else
{ {
@@ -404,9 +404,9 @@ void GetQuestLogState(void)
gSpecialVar_Result = gQuestLogState; gSpecialVar_Result = gQuestLogState;
} }
u8 sub_8110AC8(void) u8 GetQuestLogStartType(void)
{ {
return gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_000; return gSaveBlock1Ptr->questLog[sCurrentSceneNum].startType;
} }
static void StartRecordingQuestLogEntry(u16 eventId) static void StartRecordingQuestLogEntry(u16 eventId)
@@ -416,11 +416,11 @@ static void StartRecordingQuestLogEntry(u16 eventId)
DestroySav1QuestLogEntry(sCurrentSceneNum); DestroySav1QuestLogEntry(sCurrentSceneNum);
sub_8113B88(); sub_8113B88();
sEventRecordingPointer = gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_568; sEventRecordingPointer = gSaveBlock1Ptr->questLog[sCurrentSceneNum].script;
if (IS_LINK_QL_EVENT(eventId) || eventId == QL_EVENT_DEPARTED) if (IS_LINK_QL_EVENT(eventId) || eventId == QL_EVENT_DEPARTED)
gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_000 = 2; gSaveBlock1Ptr->questLog[sCurrentSceneNum].startType = QL_START_WARP;
else else
gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_000 = 1; gSaveBlock1Ptr->questLog[sCurrentSceneNum].startType = QL_START_NORMAL;
QuestLog_GetSaneMonCounts(); QuestLog_GetSaneMonCounts();
SetPlayerInitialCoordsAtScene(sCurrentSceneNum); SetPlayerInitialCoordsAtScene(sCurrentSceneNum);
SetNPCInitialCoordsAtScene(sCurrentSceneNum); SetNPCInitialCoordsAtScene(sCurrentSceneNum);
@@ -430,7 +430,7 @@ static void StartRecordingQuestLogEntry(u16 eventId)
gUnknown_203ADFC = 0; gUnknown_203ADFC = 0;
SetUpQuestLogEntry(2, sQuestLogSceneRecordBuffer, 0x100); SetUpQuestLogEntry(2, sQuestLogSceneRecordBuffer, 0x100);
TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer); TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer);
SetQuestLogState(QL_STATE_1); SetQuestLogState(QL_STATE_RECORDING);
} }
static void SetPlayerInitialCoordsAtScene(u8 sceneNum) static void SetPlayerInitialCoordsAtScene(u8 sceneNum)
@@ -536,12 +536,12 @@ static bool8 TryRecordQuestLogEntrySequence(struct QuestLogEntry * entry)
} }
if (sEventRecordingPointer == NULL) if (sEventRecordingPointer == NULL)
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
return FALSE; return FALSE;
} }
} }
if (gUnknown_3005E88 == 0) if (gQuestLogPlaybackState == 0)
{ {
sEventRecordingPointer = TryRecordEvent39_NoParams(sEventRecordingPointer); sEventRecordingPointer = TryRecordEvent39_NoParams(sEventRecordingPointer);
return FALSE; return FALSE;
@@ -558,7 +558,7 @@ void TrySetUpQuestLogScenes_ElseContinueFromSave(u8 taskId)
sNumScenes = 0; sNumScenes = 0;
for (i = 0; i < QUEST_LOG_SCENE_COUNT; i++) for (i = 0; i < QUEST_LOG_SCENE_COUNT; i++)
{ {
if (gSaveBlock1Ptr->questLog[i].unk_000) if (gSaveBlock1Ptr->questLog[i].startType != 0)
sNumScenes++; sNumScenes++;
} }
@@ -594,20 +594,20 @@ void sub_8110FCC(void)
QuestLogPlaybackSetObjectEventTemplates(sCurrentSceneNum); QuestLogPlaybackSetObjectEventTemplates(sCurrentSceneNum);
} }
bool8 sub_8111000(void) static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void)
{ {
LoadPalette(stdpal_get(4), 0xF0, 0x20); LoadPalette(stdpal_get(4), 0xF0, 0x20);
SetQuestLogState(QL_STATE_2); SetQuestLogState(QL_STATE_PLAYBACK);
FieldCB_DefaultWarpExit(); FieldCB_DefaultWarpExit();
gUnknown_203AE94 = (struct UnkStruct_203AE94){}; gUnknown_203AE94 = (struct UnkStruct_203AE94){};
gUnknown_203AE94.unk_0_0 = 2; gUnknown_203AE94.unk_0_0 = 2;
return 1; return 1;
} }
bool8 sub_8111038(void) static bool8 FieldCB2_QuestLogStartPlaybackStandingInPlace(void)
{ {
LoadPalette(stdpal_get(4), 0xF0, 0x20); LoadPalette(stdpal_get(4), 0xF0, 0x20);
SetQuestLogState(QL_STATE_2); SetQuestLogState(QL_STATE_PLAYBACK);
FieldCB_WarpExitFadeFromBlack(); FieldCB_WarpExitFadeFromBlack();
gUnknown_203AE94 = (struct UnkStruct_203AE94){}; gUnknown_203AE94 = (struct UnkStruct_203AE94){};
gUnknown_203AE94.unk_0_0 = 2; gUnknown_203AE94.unk_0_0 = 2;
@@ -694,21 +694,21 @@ void sub_8111274(u8 sceneNum, bool8 a1)
static void sub_8111368(void) static void sub_8111368(void)
{ {
gQuestLogState = QL_STATE_2; gQuestLogState = QL_STATE_PLAYBACK;
ResetSpecialVars(); ResetSpecialVars();
ClearBag(); ClearBag();
ClearPCItemSlots(); ClearPCItemSlots();
if (sub_8110AC8() == 1) if (GetQuestLogStartType() == QL_START_NORMAL)
{ {
sub_8111274(sCurrentSceneNum, FALSE); sub_8111274(sCurrentSceneNum, FALSE);
gFieldCallback2 = sub_8111038; gFieldCallback2 = FieldCB2_QuestLogStartPlaybackStandingInPlace;
SetMainCallback2(sub_80572A8); SetMainCallback2(sub_80572A8);
} }
else else
{ {
sub_8111274(sCurrentSceneNum, TRUE); sub_8111274(sCurrentSceneNum, TRUE);
WarpIntoMap(); WarpIntoMap();
gFieldCallback2 = sub_8111000; gFieldCallback2 = FieldCB2_QuestLogStartPlaybackWithWarpExit;
SetMainCallback2(sub_805726C); SetMainCallback2(sub_805726C);
} }
} }
@@ -884,7 +884,7 @@ static void sub_811175C(u8 sceneNum, struct QuestLogEntry * a1)
gUnknown_203AE0C[i] = NULL; gUnknown_203AE0C[i] = NULL;
} }
r4 = gSaveBlock1Ptr->questLog[sceneNum].unk_568; r4 = gSaveBlock1Ptr->questLog[sceneNum].script;
for (i = 0; i < 32; i++) for (i = 0; i < 32; i++)
{ {
switch (r4[0] & 0xFFF) switch (r4[0] & 0xFFF)
@@ -929,14 +929,14 @@ static void QuestLog_AdvancePlayhead(void)
if (!gPaletteFade.active) if (!gPaletteFade.active)
{ {
ScriptContext2_Enable(); ScriptContext2_Enable();
if (++sCurrentSceneNum < QUEST_LOG_SCENE_COUNT && gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_000) if (++sCurrentSceneNum < QUEST_LOG_SCENE_COUNT && gSaveBlock1Ptr->questLog[sCurrentSceneNum].startType != 0)
{ {
sNumScenes--; sNumScenes--;
sub_8111368(); sub_8111368();
} }
else else
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
QuestLog_StartFinalScene(); QuestLog_StartFinalScene();
} }
} }
@@ -950,7 +950,7 @@ static void QuestLog_StartFinalScene(void)
SetMainCallback2(sub_8057430); SetMainCallback2(sub_8057430);
gFieldCallback2 = sub_8111F60; gFieldCallback2 = sub_8111F60;
FreeAllWindowBuffers(); FreeAllWindowBuffers();
gQuestLogState = QL_STATE_3; gQuestLogState = QL_STATE_PLAYBACK_LAST;
sQuestLogCB = NULL; sQuestLogCB = NULL;
} }
@@ -965,11 +965,11 @@ bool8 QuestLog_SchedulePlaybackCB(void (*callback)(void))
switch (gQuestLogState) switch (gQuestLogState)
{ {
case 1: case QL_STATE_RECORDING:
QuestLog_OnInteractionWithSpecialNpc(); QuestLog_OnInteractionWithSpecialNpc();
break; break;
case 2: case QL_STATE_PLAYBACK:
gUnknown_3005E88 = 3; gQuestLogPlaybackState = 3;
taskId = CreateTask(Task_RunPlaybackCB, 80); taskId = CreateTask(Task_RunPlaybackCB, 80);
gTasks[taskId].data[0] = 0; gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = 0; gTasks[taskId].data[1] = 0;
@@ -997,7 +997,7 @@ static void Task_RunPlaybackCB(u8 taskId)
case 1: case 1:
if (!gPaletteFade.active) if (!gPaletteFade.active)
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
routine = (void (*)(void)) GetWordTaskArg(taskId, 14); routine = (void (*)(void)) GetWordTaskArg(taskId, 14);
if (routine != NULL) if (routine != NULL)
routine(); routine();
@@ -1076,9 +1076,9 @@ static u8 sub_8111BD4(void)
bool8 sub_8111C2C(void) bool8 sub_8111C2C(void)
{ {
if (gQuestLogState != QL_STATE_2) if (gQuestLogState != QL_STATE_PLAYBACK)
return FALSE; return FALSE;
if (gUnknown_3005E88 == 0 || gUnknown_203AE94.unk_0_0 == 1 || gUnknown_203AE94.unk_0_0 == 2) if (gQuestLogPlaybackState == 0 || gUnknown_203AE94.unk_0_0 == 1 || gUnknown_203AE94.unk_0_0 == 2)
return TRUE; return TRUE;
return FALSE; return FALSE;
} }
@@ -1090,13 +1090,13 @@ void sub_8111C68(void)
if (JOY_NEW(A_BUTTON)) if (JOY_NEW(A_BUTTON))
{ {
gUnknown_203AE94.unk_0_6 = 2; gUnknown_203AE94.unk_0_6 = 2;
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
sub_81118F4(-3); sub_81118F4(-3);
} }
else if (JOY_NEW(B_BUTTON)) else if (JOY_NEW(B_BUTTON))
{ {
gUnknown_203AE94.unk_0_6 = 1; gUnknown_203AE94.unk_0_6 = 1;
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
QuestLog_SkipToEndOfPlayback(-3); QuestLog_SkipToEndOfPlayback(-3);
} }
} }
@@ -1111,7 +1111,7 @@ bool8 sub_8111CD0(void)
void sub_8111CF0(void) void sub_8111CF0(void)
{ {
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
DrawPreviouslyOnQuestHeader(sNumScenes); DrawPreviouslyOnQuestHeader(sNumScenes);
} }
@@ -1191,18 +1191,18 @@ static void QuestLog_WaitFadeAndCancelPlayback(void)
ScriptContext2_Enable(); ScriptContext2_Enable();
for (sCurrentSceneNum = sCurrentSceneNum; sCurrentSceneNum < QUEST_LOG_SCENE_COUNT; sCurrentSceneNum++) for (sCurrentSceneNum = sCurrentSceneNum; sCurrentSceneNum < QUEST_LOG_SCENE_COUNT; sCurrentSceneNum++)
{ {
if (gSaveBlock1Ptr->questLog[sCurrentSceneNum].unk_000 == 0) if (gSaveBlock1Ptr->questLog[sCurrentSceneNum].startType == 0)
break; break;
sub_811175C(sCurrentSceneNum, sQuestLogSceneRecordBuffer); sub_811175C(sCurrentSceneNum, sQuestLogSceneRecordBuffer);
} }
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
QuestLog_StartFinalScene(); QuestLog_StartFinalScene();
} }
} }
void sub_8111F14(void) void sub_8111F14(void)
{ {
if (gQuestLogState == QL_STATE_3) if (gQuestLogState == QL_STATE_PLAYBACK_LAST)
gUnknown_203AE90 = AllocZeroed(0x200 * sizeof(u16)); gUnknown_203AE90 = AllocZeroed(0x200 * sizeof(u16));
} }
@@ -1227,7 +1227,7 @@ static void sub_8111F8C(u8 taskId)
if (ScriptContext2_IsEnabled() != TRUE) if (ScriptContext2_IsEnabled() != TRUE)
{ {
FreezeObjectEvents(); FreezeObjectEvents();
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
StopPlayerAvatar(); StopPlayerAvatar();
ScriptContext2_Enable(); ScriptContext2_Enable();
task->func = Task_QuestLogScene_SavedGame; task->func = Task_QuestLogScene_SavedGame;
@@ -1361,7 +1361,7 @@ static void sub_811229C(void)
void sub_811231C(void) void sub_811231C(void)
{ {
if (gQuestLogState == QL_STATE_1) if (gQuestLogState == QL_STATE_RECORDING)
{ {
TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer); TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer);
TryRecordEvent39_GoToNextScene(); TryRecordEvent39_GoToNextScene();
@@ -1369,18 +1369,18 @@ void sub_811231C(void)
sQuestLogCB = NULL; sQuestLogCB = NULL;
gUnknown_203AE04 = NULL; gUnknown_203AE04 = NULL;
sEventRecordingPointer = NULL; sEventRecordingPointer = NULL;
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
} }
} }
void QuestLog_OnInteractionWithSpecialNpc(void) void QuestLog_OnInteractionWithSpecialNpc(void)
{ {
if (gUnknown_3005E88 && gQuestLogState == QL_STATE_1) if (gQuestLogPlaybackState != 0 && gQuestLogState == QL_STATE_RECORDING)
{ {
TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer); TryRecordQuestLogEntrySequence(sQuestLogSceneRecordBuffer);
TryRecordEvent41_IncCursor(1); TryRecordEvent41_IncCursor(1);
TryRecordEvent39_GoToNextScene(); TryRecordEvent39_GoToNextScene();
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
gQuestLogState = 0; gQuestLogState = 0;
sQuestLogCB = NULL; sQuestLogCB = NULL;
} }
@@ -1398,7 +1398,7 @@ static void SortQuestLogInSav1(void)
{ {
if (sceneNum >= QUEST_LOG_SCENE_COUNT) if (sceneNum >= QUEST_LOG_SCENE_COUNT)
sceneNum = 0; sceneNum = 0;
if (gSaveBlock1Ptr->questLog[sceneNum].unk_000) if (gSaveBlock1Ptr->questLog[sceneNum].startType != 0)
{ {
buffer[count] = gSaveBlock1Ptr->questLog[sceneNum]; buffer[count] = gSaveBlock1Ptr->questLog[sceneNum];
count++; count++;
@@ -1558,12 +1558,12 @@ static void sub_8112888(u8 a0)
switch (a0) switch (a0)
{ {
case 1: case 1:
if (gUnknown_3005E88 == 1) if (gQuestLogPlaybackState == 1)
gUnknown_3005E88 = 3; gQuestLogPlaybackState = 3;
break; break;
case 2: case 2:
if (gUnknown_3005E88 == 3) if (gQuestLogPlaybackState == 3)
gUnknown_3005E88 = 1; gQuestLogPlaybackState = 1;
break; break;
} }
} }
@@ -1576,21 +1576,21 @@ void sub_81128BC(u8 a0)
{ {
case 1: case 1:
if (r1 == 1) if (r1 == 1)
gUnknown_3005E88 = 3; gQuestLogPlaybackState = 3;
else if (r1 == 2) else if (r1 == 2)
{ {
sCurQuestLogEntry[sQuestLogCursor].unk_4 = sNextStepDelay; sCurQuestLogEntry[sQuestLogCursor].unk_4 = sNextStepDelay;
sCurQuestLogEntry[sQuestLogCursor].unk_6 = 3; sCurQuestLogEntry[sQuestLogCursor].unk_6 = 3;
sQuestLogCursor++; sQuestLogCursor++;
sNextStepDelay = 0; sNextStepDelay = 0;
gUnknown_3005E88 = 4; gQuestLogPlaybackState = 4;
} }
break; break;
case 2: case 2:
if (r1 == 1) if (r1 == 1)
gUnknown_3005E88 = 1; gQuestLogPlaybackState = 1;
else if (r1 == 2) else if (r1 == 2)
gUnknown_3005E88 = 2; gQuestLogPlaybackState = 2;
break; break;
} }
} }
@@ -1602,7 +1602,7 @@ static void SetUpQuestLogEntry(u8 kind, struct QuestLogEntry *entry, u16 size)
switch (kind) switch (kind)
{ {
default: default:
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
break; break;
case 1: case 1:
sCurQuestLogEntry = entry; sCurQuestLogEntry = entry;
@@ -1618,7 +1618,7 @@ static void SetUpQuestLogEntry(u8 kind, struct QuestLogEntry *entry, u16 size)
sNextStepDelay = sCurQuestLogEntry[sQuestLogCursor].unk_4; sNextStepDelay = sCurQuestLogEntry[sQuestLogCursor].unk_4;
sMovementScripts[0][0] = sCurQuestLogEntry[sQuestLogCursor].unk_3; sMovementScripts[0][0] = sCurQuestLogEntry[sQuestLogCursor].unk_3;
sMovementScripts[0][1] = 0xFF; sMovementScripts[0][1] = 0xFF;
gUnknown_3005E88 = 1; gQuestLogPlaybackState = 1;
break; break;
case 2: case 2:
sCurQuestLogEntry = entry; sCurQuestLogEntry = entry;
@@ -1657,14 +1657,14 @@ static void SetUpQuestLogEntry(u8 kind, struct QuestLogEntry *entry, u16 size)
sCurQuestLogEntry[sQuestLogCursor].unk_2 = 0; sCurQuestLogEntry[sQuestLogCursor].unk_2 = 0;
sCurQuestLogEntry[sQuestLogCursor].unk_3 = 0; sCurQuestLogEntry[sQuestLogCursor].unk_3 = 0;
sQuestLogCursor++; sQuestLogCursor++;
gUnknown_3005E88 = 2; gQuestLogPlaybackState = 2;
break; break;
} }
} }
void sub_8112B3C(void) void sub_8112B3C(void)
{ {
switch (gUnknown_3005E88) switch (gQuestLogPlaybackState)
{ {
case 0: case 0:
break; break;
@@ -1690,29 +1690,29 @@ void sub_8112B3C(void)
*(u32 *)&gQuestLogFieldInput = ((sCurQuestLogEntry[sQuestLogCursor].unk_3 << 24) | (sCurQuestLogEntry[sQuestLogCursor].unk_2 << 16) | (sCurQuestLogEntry[sQuestLogCursor].unk_1 << 8) | (sCurQuestLogEntry[sQuestLogCursor].unk_0 << 0)); *(u32 *)&gQuestLogFieldInput = ((sCurQuestLogEntry[sQuestLogCursor].unk_3 << 24) | (sCurQuestLogEntry[sQuestLogCursor].unk_2 << 16) | (sCurQuestLogEntry[sQuestLogCursor].unk_1 << 8) | (sCurQuestLogEntry[sQuestLogCursor].unk_0 << 0));
break; break;
case 3: case 3:
gUnknown_3005E88 = 3; gQuestLogPlaybackState = 3;
break; break;
case 0xFE: case 0xFE:
break; break;
case 0xFF: case 0xFF:
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
break; break;
} }
if (gUnknown_3005E88 == 0) if (gQuestLogPlaybackState == 0)
break; break;
if (++sQuestLogCursor >= sNumEventsInLogEntry) if (++sQuestLogCursor >= sNumEventsInLogEntry)
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
break; break;
} }
sNextStepDelay = sCurQuestLogEntry[sQuestLogCursor].unk_4; sNextStepDelay = sCurQuestLogEntry[sQuestLogCursor].unk_4;
} while (gUnknown_3005E88 != 3 } while (gQuestLogPlaybackState != 3
&& (sNextStepDelay == 0 || sNextStepDelay == 0xFFFF)); && (sNextStepDelay == 0 || sNextStepDelay == 0xFFFF));
} }
} }
else if (sQuestLogCursor >= sNumEventsInLogEntry) else if (sQuestLogCursor >= sNumEventsInLogEntry)
{ {
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
} }
break; break;
case 2: case 2:
@@ -1720,7 +1720,7 @@ void sub_8112B3C(void)
{ {
sNextStepDelay++; sNextStepDelay++;
if (sQuestLogCursor >= sNumEventsInLogEntry) if (sQuestLogCursor >= sNumEventsInLogEntry)
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
} }
break; break;
case 3: case 3:
@@ -1737,7 +1737,7 @@ void sub_8112C9C(void)
u8 sub_8112CAC(void) u8 sub_8112CAC(void)
{ {
switch (gUnknown_3005E88) switch (gQuestLogPlaybackState)
{ {
case 0: case 0:
default: default:
@@ -1809,7 +1809,7 @@ void sub_8112E3C(u8 a0, struct UnkStruct_300201C * a1, u16 a2)
s32 i; s32 i;
if (a0 == 0 || a0 > 2) if (a0 == 0 || a0 > 2)
gUnknown_3005E88 = 0; gQuestLogPlaybackState = 0;
else else
{ {
sFlagOrVarRecords = a1; sFlagOrVarRecords = a1;
@@ -2395,7 +2395,7 @@ void SetQuestLogEvent(u16 eventId, const u16 *eventData)
return; return;
} }
sub_811381C(); sub_811381C();
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
return; return;
if (!IS_VALID_QL_EVENT(eventId)) if (!IS_VALID_QL_EVENT(eventId))
@@ -2422,7 +2422,7 @@ void SetQuestLogEvent(u16 eventId, const u16 *eventData)
if (sub_81153E4(eventId, eventData) == FALSE) if (sub_81153E4(eventId, eventData) == FALSE)
return; return;
if (gUnknown_3005E88 == 0) if (gQuestLogPlaybackState == 0)
{ {
if (sub_8113778(eventId, eventData) == TRUE) if (sub_8113778(eventId, eventData) == TRUE)
return; return;
@@ -2513,10 +2513,10 @@ bool8 sub_8113748(void)
if (InQuestLogDisabledLocation() != TRUE) if (InQuestLogDisabledLocation() != TRUE)
return FALSE; return FALSE;
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
return TRUE; return TRUE;
if (gQuestLogState == QL_STATE_1) if (gQuestLogState == QL_STATE_RECORDING)
QuestLog_OnInteractionWithSpecialNpc(); QuestLog_OnInteractionWithSpecialNpc();
return FALSE; return FALSE;
@@ -2635,7 +2635,7 @@ static bool8 TrySetTrainerBattleQuestLogEvent(u16 eventId, const u16 *eventData)
return FALSE; return FALSE;
sub_81138F8(); sub_81138F8();
if (gUnknown_3005E88 != 0 || FlagGet(FLAG_SYS_GAME_CLEAR) || sub_81137E4(eventId, eventData) != TRUE) if (gQuestLogPlaybackState != 0 || FlagGet(FLAG_SYS_GAME_CLEAR) || sub_81137E4(eventId, eventData) != TRUE)
{ {
gUnknown_203B024.unk_00 = eventId; gUnknown_203B024.unk_00 = eventId;
memcpy(gUnknown_203B024.unk_04, eventData, 8); memcpy(gUnknown_203B024.unk_04, eventData, 8);
@@ -2648,7 +2648,7 @@ void sub_81139BC(void)
if (gUnknown_203B024.unk_00 != QL_EVENT_0) if (gUnknown_203B024.unk_00 != QL_EVENT_0)
{ {
u16 *resp; u16 *resp;
if (gUnknown_3005E88 == 0) if (gQuestLogPlaybackState == 0)
{ {
gUnknown_203B04A = 0; gUnknown_203B04A = 0;
StartRecordingQuestLogEntry(gUnknown_203B024.unk_00); StartRecordingQuestLogEntry(gUnknown_203B024.unk_00);
@@ -4299,7 +4299,7 @@ void QuestLog_RecordEnteredMap(u16 worldMapFlag)
{ {
s32 i; s32 i;
if (gQuestLogState == QL_STATE_2 || gQuestLogState == QL_STATE_3) if (QL_IS_PLAYBACK_STATE)
return; return;
for (i = 0; i < (int)NELEMS(sQuestLogWorldMapFlags); i++) for (i = 0; i < (int)NELEMS(sQuestLogWorldMapFlags); i++)
@@ -4324,7 +4324,7 @@ void QuestLog_RecordEnteredMap(u16 worldMapFlag)
void sub_8115798(void) void sub_8115798(void)
{ {
u16 sp0; u16 sp0;
if (gQuestLogState != QL_STATE_2 && gQuestLogState != QL_STATE_3) if (!QL_IS_PLAYBACK_STATE)
{ {
if (sNewlyEnteredMap) if (sNewlyEnteredMap)
{ {
+2 -2
View File
@@ -131,7 +131,7 @@ void SetSav1ObjectEventsFromQuestLog(const struct QuestLog * questLog, const str
void sub_815A540(void) void sub_815A540(void)
{ {
if (gQuestLogState == QL_STATE_2) if (gQuestLogState == QL_STATE_PLAYBACK)
{ {
s16 x, y; s16 x, y;
@@ -139,7 +139,7 @@ void sub_815A540(void)
if (!MetatileBehavior_IsSurfable(MapGridGetMetatileBehaviorAt(x, y)) && TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING)) if (!MetatileBehavior_IsSurfable(MapGridGetMetatileBehaviorAt(x, y)) && TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
{ {
struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
SetPlayerAvatarTransitionFlags(0x01); SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_ON_FOOT);
DestroySprite(&gSprites[objectEvent->fieldEffectSpriteId]); DestroySprite(&gSprites[objectEvent->fieldEffectSpriteId]);
} }
} }
+2 -2
View File
@@ -41,7 +41,7 @@ void sub_8150454(u8 a0)
bool32 sub_8150474(u8 a0) bool32 sub_8150474(u8 a0)
{ {
if (gUnknown_3005E88 == 2) if (gQuestLogPlaybackState == 2)
{ {
sub_8112720(a0); sub_8112720(a0);
return TRUE; return TRUE;
@@ -76,7 +76,7 @@ static void sub_8150530(void)
struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
struct Sprite *sprite = &gSprites[objectEvent->spriteId]; struct Sprite *sprite = &gSprites[objectEvent->spriteId];
if (gUnknown_3005E88 == 1 || gUnknown_3005E88 == 3) if (gQuestLogPlaybackState == 1 || gQuestLogPlaybackState == 3)
{ {
u8 taskId; u8 taskId;
ScriptContext2_Enable(); ScriptContext2_Enable();
+1 -1
View File
@@ -67,7 +67,7 @@ void CB2_EndSafariBattle(void)
{ {
ScriptContext2_RunNewScript(SafariZone_EventScript_OutOfBallsMidBattle); ScriptContext2_RunNewScript(SafariZone_EventScript_OutOfBallsMidBattle);
WarpIntoMap(); WarpIntoMap();
gFieldCallback = sub_807E3EC; gFieldCallback = FieldCB_SafariZoneRanOutOfBalls;
SetMainCallback2(CB2_LoadMap); SetMainCallback2(CB2_LoadMap);
} }
else if (gBattleOutcome == B_OUTCOME_CAUGHT) else if (gBattleOutcome == B_OUTCOME_CAUGHT)
+30 -29
View File
@@ -37,24 +37,25 @@
#include "field_effect.h" #include "field_effect.h"
#include "fieldmap.h" #include "fieldmap.h"
#include "field_door.h" #include "field_door.h"
#include "constants/event_objects.h"
extern u16 (*const gSpecials[])(void); extern u16 (*const gSpecials[])(void);
extern u16 (*const gSpecialsEnd[])(void); extern u16 (*const gSpecialsEnd[])(void);
extern const u8 *const gStdScripts[]; extern const u8 *const gStdScripts[];
extern const u8 *const gStdScriptsEnd[]; extern const u8 *const gStdScriptsEnd[];
static bool8 sub_806B93C(struct ScriptContext * ctx); static bool8 ScriptContext_NextCommandEndsScript(struct ScriptContext * ctx);
static u8 sub_806B96C(struct ScriptContext * ctx); static u8 ScriptContext_GetQuestLogInput(struct ScriptContext * ctx);
static EWRAM_DATA ptrdiff_t gVScriptOffset = 0; static EWRAM_DATA ptrdiff_t gVScriptOffset = 0;
static EWRAM_DATA u8 gUnknown_20370AC = 0; static EWRAM_DATA u8 sQuestLogWaitButtonPressTimer = 0;
static EWRAM_DATA u16 sPauseCounter = 0; static EWRAM_DATA u16 sPauseCounter = 0;
static EWRAM_DATA u16 sMovingNpcId = 0; static EWRAM_DATA u16 sMovingNpcId = 0;
static EWRAM_DATA u16 sMovingNpcMapBank = 0; static EWRAM_DATA u16 sMovingNpcMapBank = 0;
static EWRAM_DATA u16 sMovingNpcMapId = 0; static EWRAM_DATA u16 sMovingNpcMapId = 0;
static EWRAM_DATA u16 sFieldEffectScriptId = 0; static EWRAM_DATA u16 sFieldEffectScriptId = 0;
struct ScriptContext * gUnknown_3005070; struct ScriptContext * sQuestLogScriptContextPtr;
u8 gSelectedObjectEvent; u8 gSelectedObjectEvent;
// This is defined in here so the optimizer can't see its value when compiling // This is defined in here so the optimizer can't see its value when compiling
@@ -803,7 +804,7 @@ bool8 ScrCmd_warpteleport2(struct ScriptContext * ctx)
SetWarpDestination(mapGroup, mapNum, warpId, x, y); SetWarpDestination(mapGroup, mapNum, warpId, x, y);
SavePlayerFacingDirectionForTeleport(GetPlayerFacingDirection()); SavePlayerFacingDirectionForTeleport(GetPlayerFacingDirection());
sub_807E500(); DoTeleport2Warp();
ResetInitialPlayerAvatarState(); ResetInitialPlayerAvatarState();
return TRUE; return TRUE;
} }
@@ -926,7 +927,7 @@ bool8 ScrCmd_playbgm(struct ScriptContext * ctx)
u16 songId = ScriptReadHalfword(ctx); u16 songId = ScriptReadHalfword(ctx);
bool8 val = ScriptReadByte(ctx); bool8 val = ScriptReadByte(ctx);
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
if (val == TRUE) if (val == TRUE)
Overworld_SetSavedMusic(songId); Overworld_SetSavedMusic(songId);
@@ -942,7 +943,7 @@ bool8 ScrCmd_savebgm(struct ScriptContext * ctx)
bool8 ScrCmd_fadedefaultbgm(struct ScriptContext * ctx) bool8 ScrCmd_fadedefaultbgm(struct ScriptContext * ctx)
{ {
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
Overworld_ChangeMusicToDefault(); Overworld_ChangeMusicToDefault();
return FALSE; return FALSE;
@@ -951,7 +952,7 @@ bool8 ScrCmd_fadedefaultbgm(struct ScriptContext * ctx)
bool8 ScrCmd_fadenewbgm(struct ScriptContext * ctx) bool8 ScrCmd_fadenewbgm(struct ScriptContext * ctx)
{ {
u16 music = ScriptReadHalfword(ctx); u16 music = ScriptReadHalfword(ctx);
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
Overworld_ChangeMusicTo(music); Overworld_ChangeMusicTo(music);
return FALSE; return FALSE;
@@ -961,7 +962,7 @@ bool8 ScrCmd_fadeoutbgm(struct ScriptContext * ctx)
{ {
u8 speed = ScriptReadByte(ctx); u8 speed = ScriptReadByte(ctx);
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
if (speed != 0) if (speed != 0)
FadeOutBGMTemporarily(4 * speed); FadeOutBGMTemporarily(4 * speed);
@@ -975,7 +976,7 @@ bool8 ScrCmd_fadeinbgm(struct ScriptContext * ctx)
{ {
u8 speed = ScriptReadByte(ctx); u8 speed = ScriptReadByte(ctx);
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return FALSE; return FALSE;
if (speed != 0) if (speed != 0)
FadeInBGM(4 * speed); FadeInBGM(4 * speed);
@@ -1203,7 +1204,7 @@ bool8 ScrCmd_lockall(struct ScriptContext * ctx)
else else
{ {
ScriptFreezeObjectEvents(); ScriptFreezeObjectEvents();
SetupNativeScript(ctx, sub_8069590); SetupNativeScript(ctx, NativeScript_WaitPlayerStopMoving);
return TRUE; return TRUE;
} }
} }
@@ -1219,12 +1220,12 @@ bool8 ScrCmd_lock(struct ScriptContext * ctx)
if (gObjectEvents[gSelectedObjectEvent].active) if (gObjectEvents[gSelectedObjectEvent].active)
{ {
LockSelectedObjectEvent(); LockSelectedObjectEvent();
SetupNativeScript(ctx, sub_8069648); SetupNativeScript(ctx, NativeScript_WaitPlayerAndTargetNPCStopMoving);
} }
else else
{ {
ScriptFreezeObjectEvents(); ScriptFreezeObjectEvents();
SetupNativeScript(ctx, sub_8069590); SetupNativeScript(ctx, NativeScript_WaitPlayerStopMoving);
} }
return TRUE; return TRUE;
} }
@@ -1235,7 +1236,7 @@ bool8 ScrCmd_releaseall(struct ScriptContext * ctx)
u8 playerObjectId; u8 playerObjectId;
HideFieldMessageBox(); HideFieldMessageBox();
playerObjectId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents(); ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents(); UnfreezeObjectEvents();
@@ -1249,7 +1250,7 @@ bool8 ScrCmd_release(struct ScriptContext * ctx)
HideFieldMessageBox(); HideFieldMessageBox();
if (gObjectEvents[gSelectedObjectEvent].active) if (gObjectEvents[gSelectedObjectEvent].active)
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[gSelectedObjectEvent]);
playerObjectId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); playerObjectId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0);
ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[playerObjectId]);
ScriptMovement_UnfreezeObjectEvents(); ScriptMovement_UnfreezeObjectEvents();
UnfreezeObjectEvents(); UnfreezeObjectEvents();
@@ -1319,16 +1320,16 @@ static bool8 WaitForAorBPress(void)
if (JOY_NEW(B_BUTTON)) if (JOY_NEW(B_BUTTON))
return TRUE; return TRUE;
if (sub_806B93C(gUnknown_3005070) == TRUE) if (ScriptContext_NextCommandEndsScript(sQuestLogScriptContextPtr) == TRUE)
{ {
u8 r4 = sub_806B96C(gUnknown_3005070); u8 qlogInput = ScriptContext_GetQuestLogInput(sQuestLogScriptContextPtr);
RegisterQuestLogInput(r4); RegisterQuestLogInput(qlogInput);
if (r4 != QL_INPUT_OFF) if (qlogInput != QL_INPUT_OFF)
{ {
if (gQuestLogState != QL_STATE_2) if (gQuestLogState != QL_STATE_PLAYBACK)
{ {
ClearMsgBoxCancelableState(); ClearMsgBoxCancelableState();
if (r4 != QL_INPUT_A && r4 != QL_INPUT_B) if (qlogInput != QL_INPUT_A && qlogInput != QL_INPUT_B)
SetQuestLogInputIsDpadFlag(); SetQuestLogInputIsDpadFlag();
else else
{ {
@@ -1339,18 +1340,18 @@ static bool8 WaitForAorBPress(void)
} }
} }
} }
if (sub_8112CAC() == 1 || gQuestLogState == QL_STATE_2) if (sub_8112CAC() == 1 || gQuestLogState == QL_STATE_PLAYBACK)
{ {
if (gUnknown_20370AC == 120) if (sQuestLogWaitButtonPressTimer == 120)
return TRUE; return TRUE;
else else
gUnknown_20370AC++; sQuestLogWaitButtonPressTimer++;
} }
return FALSE; return FALSE;
} }
static bool8 sub_806B93C(struct ScriptContext * ctx) static bool8 ScriptContext_NextCommandEndsScript(struct ScriptContext * ctx)
{ {
const u8 * script = ctx->scriptPtr; const u8 * script = ctx->scriptPtr;
u8 nextCmd = *script; u8 nextCmd = *script;
@@ -1365,7 +1366,7 @@ static bool8 sub_806B93C(struct ScriptContext * ctx)
return TRUE; return TRUE;
} }
static u8 sub_806B96C(struct ScriptContext * ctx) static u8 ScriptContext_GetQuestLogInput(struct ScriptContext * ctx)
{ {
if (JOY_HELD(DPAD_UP) && gSpecialVar_Facing != DIR_NORTH) if (JOY_HELD(DPAD_UP) && gSpecialVar_Facing != DIR_NORTH)
return QL_INPUT_UP; return QL_INPUT_UP;
@@ -1402,10 +1403,10 @@ static u8 sub_806B96C(struct ScriptContext * ctx)
bool8 ScrCmd_waitbuttonpress(struct ScriptContext * ctx) bool8 ScrCmd_waitbuttonpress(struct ScriptContext * ctx)
{ {
gUnknown_3005070 = ctx; sQuestLogScriptContextPtr = ctx;
if (sub_8112CAC() == 1 || gQuestLogState == 2) if (sub_8112CAC() == 1 || gQuestLogState == QL_STATE_PLAYBACK)
gUnknown_20370AC = 0; sQuestLogWaitButtonPressTimer = 0;
SetupNativeScript(ctx, WaitForAorBPress); SetupNativeScript(ctx, WaitForAorBPress);
return TRUE; return TRUE;
} }
+1 -1
View File
@@ -435,7 +435,7 @@ bool8 TryRunOnFrameMapScript(void)
{ {
u8 *ptr; u8 *ptr;
if(gQuestLogState == 3) if(gQuestLogState == QL_STATE_PLAYBACK_LAST)
return 0; return 0;
ptr = mapheader_get_first_match_from_tagged_ptr_list(2); ptr = mapheader_get_first_match_from_tagged_ptr_list(2);
+3 -3
View File
@@ -193,7 +193,7 @@ void PlayFanfareByFanfareNum(u8 fanfareNum)
{ {
u16 songNum; u16 songNum;
if(gQuestLogState == 2) if(gQuestLogState == QL_STATE_PLAYBACK)
{ {
sFanfareCounter = 0xFF; sFanfareCounter = 0xFF;
} }
@@ -362,7 +362,7 @@ void PlayCry4(u16 species, s8 pan, u8 mode)
void PlayCry7(u16 species, u8 mode) // exclusive to FR/LG void PlayCry7(u16 species, u8 mode) // exclusive to FR/LG
{ {
if (gQuestLogState != 2 && gQuestLogState != 3) if (!QL_IS_PLAYBACK_STATE)
{ {
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85); m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
PlayCryInternal(species, 0, CRY_VOLUME, 10, mode); PlayCryInternal(species, 0, CRY_VOLUME, 10, mode);
@@ -571,7 +571,7 @@ void PlayBGM(u16 songNum)
void PlaySE(u16 songNum) void PlaySE(u16 songNum)
{ {
if(gDisableMapMusicChangeOnMapLoad == 0 && gQuestLogState != 2) if(gDisableMapMusicChangeOnMapLoad == 0 && gQuestLogState != QL_STATE_PLAYBACK)
m4aSongNumStart(songNum); m4aSongNumStart(songNum);
} }
+1 -1
View File
@@ -390,7 +390,7 @@ void ShowStartMenu(void)
if (!IsUpdateLinkStateCBActive()) if (!IsUpdateLinkStateCBActive())
{ {
FreezeObjectEvents(); FreezeObjectEvents();
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
StopPlayerAvatar(); StopPlayerAvatar();
} }
OpenStartMenuWithFollowupFunc(Task_StartMenuHandleInput); OpenStartMenuWithFollowupFunc(Task_StartMenuHandleInput);
+2 -2
View File
@@ -523,7 +523,7 @@ void TextPrinterClearDownArrow(struct TextPrinter *textPrinter)
bool8 TextPrinterWaitAutoMode(struct TextPrinter *textPrinter) bool8 TextPrinterWaitAutoMode(struct TextPrinter *textPrinter)
{ {
struct TextPrinterSubStruct *subStruct = &textPrinter->subUnion.sub; struct TextPrinterSubStruct *subStruct = &textPrinter->subUnion.sub;
u8 delay = (gQuestLogState == 2) ? 50 : 120; u8 delay = (gQuestLogState == QL_STATE_PLAYBACK) ? 50 : 120;
if (subStruct->autoScrollDelay == delay) if (subStruct->autoScrollDelay == delay)
{ {
@@ -712,7 +712,7 @@ u16 RenderText(struct TextPrinter *textPrinter)
textPrinter->printerTemplate.currentChar++; textPrinter->printerTemplate.currentChar++;
currChar |= *textPrinter->printerTemplate.currentChar << 8; currChar |= *textPrinter->printerTemplate.currentChar << 8;
textPrinter->printerTemplate.currentChar++; textPrinter->printerTemplate.currentChar++;
if (gQuestLogState != 2 && gQuestLogState != 3) if (!QL_IS_PLAYBACK_STATE)
PlayBGM(currChar); PlayBGM(currChar);
return 2; return 2;
case 16: case 16:
+1 -1
View File
@@ -3461,7 +3461,7 @@ void InitUnionRoom(void)
struct UnkStruct_URoom * ptr; struct UnkStruct_URoom * ptr;
sUnionRoomPlayerName[0] = EOS; sUnionRoomPlayerName[0] = EOS;
if (gQuestLogState == 2 || gQuestLogState == 3) if (QL_IS_PLAYBACK_STATE)
return; return;
CreateTask(Task_InitUnionRoom, 0); CreateTask(Task_InitUnionRoom, 0);
sUnionRoomMain.uRoom = sUnionRoomMain.uRoom; // Needed to match. sUnionRoomMain.uRoom = sUnionRoomMain.uRoom; // Needed to match.
+1 -1
View File
@@ -598,7 +598,7 @@ static void Task_ResetObjectsRematchWantedState(u8 taskId)
if (task->data[0] == 0 && walkrun_is_standing_still() == TRUE) if (task->data[0] == 0 && walkrun_is_standing_still() == TRUE)
{ {
sub_805C270(); HandleEnforcedLookDirectionOnPlayerStopMoving();
task->data[0] = 1; task->data[0] = 1;
} }
+1 -1
View File
@@ -584,7 +584,7 @@ bool8 UpdateRepelCounter(void)
if (InUnionRoom() == TRUE) if (InUnionRoom() == TRUE)
return FALSE; return FALSE;
if (gQuestLogState == 2) if (gQuestLogState == QL_STATE_PLAYBACK)
return FALSE; return FALSE;
steps = VarGet(VAR_REPEL_STEP_COUNT); steps = VarGet(VAR_REPEL_STEP_COUNT);