mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-27 13:53:52 +01:00
Document some event object movement
This commit is contained in:
parent
802d2b2f0f
commit
756fad0e61
@ -237,11 +237,12 @@
|
|||||||
#define MOVEMENT_ACTION_WALK_RIGHT_AFFINE 0x97
|
#define MOVEMENT_ACTION_WALK_RIGHT_AFFINE 0x97
|
||||||
#define MOVEMENT_ACTION_LEVITATE 0x98
|
#define MOVEMENT_ACTION_LEVITATE 0x98
|
||||||
#define MOVEMENT_ACTION_STOP_LEVITATE 0x99
|
#define MOVEMENT_ACTION_STOP_LEVITATE 0x99
|
||||||
#define MOVEMENT_ACTION_DESTROY_EXTRA_TASK_IF_AT_TOP 0x9A
|
#define MOVEMENT_ACTION_STOP_LEVITATE_AT_TOP 0x9A
|
||||||
#define MOVEMENT_ACTION_FIGURE_8 0x9B
|
#define MOVEMENT_ACTION_FIGURE_8 0x9B
|
||||||
#define MOVEMENT_ACTION_FLY_UP 0x9C
|
#define MOVEMENT_ACTION_FLY_UP 0x9C
|
||||||
#define MOVEMENT_ACTION_FLY_DOWN 0x9D
|
#define MOVEMENT_ACTION_FLY_DOWN 0x9D
|
||||||
|
|
||||||
#define MOVEMENT_ACTION_STEP_END 0xFE
|
#define MOVEMENT_ACTION_STEP_END 0xFE
|
||||||
|
#define MOVEMENT_ACTION_NONE 0xFF
|
||||||
|
|
||||||
#endif // GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H
|
#endif // GUARD_CONSTANTS_EVENT_OBJECT_MOVEMENT_H
|
||||||
|
@ -86,9 +86,9 @@ 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);
|
||||||
void PatchObjectPalette(u16, u8);
|
void PatchObjectPalette(u16, u8);
|
||||||
void sub_808E16C(s16, s16);
|
void SpawnObjectEventsOnReturnToField(s16, s16);
|
||||||
void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat);
|
void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat);
|
||||||
void sub_8092FF0(s16, s16, s16 *, s16 *);
|
void GetMapCoordsFromSpritePos(s16, s16, s16 *, s16 *);
|
||||||
u8 GetFaceDirectionAnimNum(u8);
|
u8 GetFaceDirectionAnimNum(u8);
|
||||||
void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16);
|
void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16);
|
||||||
void ObjectEventClearHeldMovement(struct ObjectEvent *);
|
void ObjectEventClearHeldMovement(struct ObjectEvent *);
|
||||||
@ -110,7 +110,7 @@ void FreeAndReserveObjectSpritePalettes(void);
|
|||||||
void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
|
void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
|
||||||
void ResetObjectPriority(u8, u8, u8);
|
void ResetObjectPriority(u8, u8, u8);
|
||||||
void SetObjectPriority(u8, u8, u8, u8);
|
void SetObjectPriority(u8, u8, u8, u8);
|
||||||
void sub_808E75C(s16, s16);
|
void AllowObjectAtPosTriggerGroundEffects(s16, s16);
|
||||||
void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup);
|
void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup);
|
||||||
void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16);
|
void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16);
|
||||||
void MoveObjectEventToMapCoords(struct ObjectEvent *, s16, s16);
|
void MoveObjectEventToMapCoords(struct ObjectEvent *, s16, s16);
|
||||||
@ -175,16 +175,8 @@ bool8 IsZCoordMismatchAt(u8, s16, s16);
|
|||||||
void UnfreezeObjectEvent(struct ObjectEvent *);
|
void UnfreezeObjectEvent(struct ObjectEvent *);
|
||||||
u8 FindLockedObjectEventIndex(struct ObjectEvent *);
|
u8 FindLockedObjectEventIndex(struct ObjectEvent *);
|
||||||
bool8 obj_npc_ministep(struct Sprite *sprite);
|
bool8 obj_npc_ministep(struct Sprite *sprite);
|
||||||
bool8 sub_80976EC(struct Sprite *sprite);
|
|
||||||
void sub_80976DC(struct Sprite *, u8);
|
|
||||||
void sub_809783C(struct Sprite *, u8, u8, u8);
|
|
||||||
void DoShadowFieldEffect(struct ObjectEvent *);
|
|
||||||
u8 sub_809785C(struct Sprite *);
|
|
||||||
u8 sub_80978E4(struct Sprite *);
|
|
||||||
void SetAndStartSpriteAnim(struct Sprite *, u8, u8);
|
void SetAndStartSpriteAnim(struct Sprite *, u8, u8);
|
||||||
bool8 SpriteAnimEnded(struct Sprite *);
|
bool8 SpriteAnimEnded(struct Sprite *);
|
||||||
void CreateLevitateMovementTask(struct ObjectEvent *);
|
|
||||||
void DestroyExtraMovementTask(u8);
|
|
||||||
void UnfreezeObjectEvents(void);
|
void UnfreezeObjectEvents(void);
|
||||||
void FreezeObjectEventsExceptOne(u8 objectEventId);
|
void FreezeObjectEventsExceptOne(u8 objectEventId);
|
||||||
void TurnObjectEventSprite(u8, u8);
|
void TurnObjectEventSprite(u8, u8);
|
||||||
@ -195,7 +187,7 @@ u8 GetMoveDirectionFastAnimNum(u8);
|
|||||||
u8 GetMoveDirectionFasterAnimNum(u8);
|
u8 GetMoveDirectionFasterAnimNum(u8);
|
||||||
u8 GetMoveDirectionFastestAnimNum(u8);
|
u8 GetMoveDirectionFastestAnimNum(u8);
|
||||||
u8 GetLedgeJumpDirection(s16, s16, u8);
|
u8 GetLedgeJumpDirection(s16, s16, u8);
|
||||||
void CameraObjectSetFollowedObjectId(u8 objectId);
|
void CameraObjectSetFollowedSpriteId(u8 objectId);
|
||||||
u16 GetObjectPaletteTag(u8 palSlot);
|
u16 GetObjectPaletteTag(u8 palSlot);
|
||||||
void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible);
|
void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible);
|
||||||
s16 GetFigure8XOffset(s16 idx);
|
s16 GetFigure8XOffset(s16 idx);
|
||||||
|
@ -6,7 +6,7 @@ void ClearPlayerAvatarInfo(void);
|
|||||||
void SetPlayerAvatarExtraStateTransition(u8, u8);
|
void SetPlayerAvatarExtraStateTransition(u8, u8);
|
||||||
u8 GetPlayerAvatarGenderByGraphicsId(u8);
|
u8 GetPlayerAvatarGenderByGraphicsId(u8);
|
||||||
bool8 TestPlayerAvatarFlags(u8);
|
bool8 TestPlayerAvatarFlags(u8);
|
||||||
u8 GetPlayerAvatarObjectId(void);
|
u8 GetPlayerAvatarSpriteId(void);
|
||||||
void PlayerGetDestCoords(s16 *, s16 *);
|
void PlayerGetDestCoords(s16 *, s16 *);
|
||||||
u8 GetPlayerFacingDirection(void);
|
u8 GetPlayerFacingDirection(void);
|
||||||
u8 GetPlayerMovementDirection(void);
|
u8 GetPlayerMovementDirection(void);
|
||||||
|
@ -252,7 +252,7 @@ u8 MovementAction_AcroEndWheelieMoveRight_Step0(struct ObjectEvent *, struct Spr
|
|||||||
u8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_AcroEndWheelieMoveRight_Step1(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_Levitate_Step0(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_Levitate_Step0(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_StopLevitate_Step0(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_StopLevitate_Step0(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_DestroyExtraTaskIfAtTop_Step0(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_StoreAndLockAnim_Step0(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_Finish(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_Finish(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *, struct Sprite *);
|
u8 MovementAction_FreeAndUnlockAnim_Step0(struct ObjectEvent *, struct Sprite *);
|
||||||
@ -416,7 +416,7 @@ u8 (*const gMovementActionFuncs_WalkLeftAffine[])(struct ObjectEvent *, struct S
|
|||||||
u8 (*const gMovementActionFuncs_WalkRightAffine[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_WalkRightAffine[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_Levitate[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_Levitate[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_StopLevitate[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_StopLevitate[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_DestroyExtraTaskIfAtTop[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_StopLevitateAtTop[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_Figure8[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_Figure8[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_FlyUp[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_FlyUp[])(struct ObjectEvent *, struct Sprite *);
|
||||||
u8 (*const gMovementActionFuncs_FlyDown[])(struct ObjectEvent *, struct Sprite *);
|
u8 (*const gMovementActionFuncs_FlyDown[])(struct ObjectEvent *, struct Sprite *);
|
||||||
@ -576,7 +576,7 @@ u8 (*const *const gMovementActionFuncs[])(struct ObjectEvent *, struct Sprite *)
|
|||||||
[MOVEMENT_ACTION_WALK_RIGHT_AFFINE] = gMovementActionFuncs_WalkRightAffine,
|
[MOVEMENT_ACTION_WALK_RIGHT_AFFINE] = gMovementActionFuncs_WalkRightAffine,
|
||||||
[MOVEMENT_ACTION_LEVITATE] = gMovementActionFuncs_Levitate,
|
[MOVEMENT_ACTION_LEVITATE] = gMovementActionFuncs_Levitate,
|
||||||
[MOVEMENT_ACTION_STOP_LEVITATE] = gMovementActionFuncs_StopLevitate,
|
[MOVEMENT_ACTION_STOP_LEVITATE] = gMovementActionFuncs_StopLevitate,
|
||||||
[MOVEMENT_ACTION_DESTROY_EXTRA_TASK_IF_AT_TOP] = gMovementActionFuncs_DestroyExtraTaskIfAtTop,
|
[MOVEMENT_ACTION_STOP_LEVITATE_AT_TOP] = gMovementActionFuncs_StopLevitateAtTop,
|
||||||
[MOVEMENT_ACTION_FIGURE_8] = gMovementActionFuncs_Figure8,
|
[MOVEMENT_ACTION_FIGURE_8] = gMovementActionFuncs_Figure8,
|
||||||
[MOVEMENT_ACTION_FLY_UP] = gMovementActionFuncs_FlyUp,
|
[MOVEMENT_ACTION_FLY_UP] = gMovementActionFuncs_FlyUp,
|
||||||
[MOVEMENT_ACTION_FLY_DOWN] = gMovementActionFuncs_FlyDown,
|
[MOVEMENT_ACTION_FLY_DOWN] = gMovementActionFuncs_FlyDown,
|
||||||
@ -602,7 +602,7 @@ u8 (*const gMovementActionFuncs_FaceRight[])(struct ObjectEvent *, struct Sprite
|
|||||||
MovementAction_PauseSpriteAnim,
|
MovementAction_PauseSpriteAnim,
|
||||||
};
|
};
|
||||||
|
|
||||||
u8 (*const gUnknown_0850DEE8[])(u8) = {
|
static u8 (*const sDirectionAnimFuncsBySpeed[])(u8) = {
|
||||||
GetMoveDirectionAnimNum,
|
GetMoveDirectionAnimNum,
|
||||||
GetMoveDirectionFastAnimNum,
|
GetMoveDirectionFastAnimNum,
|
||||||
GetMoveDirectionFastAnimNum,
|
GetMoveDirectionFastAnimNum,
|
||||||
@ -1507,7 +1507,7 @@ u8 (*const gMovementActionFuncs_StopLevitate[])(struct ObjectEvent *, struct Spr
|
|||||||
MovementAction_Finish,
|
MovementAction_Finish,
|
||||||
};
|
};
|
||||||
|
|
||||||
u8 (*const gMovementActionFuncs_DestroyExtraTaskIfAtTop[])(struct ObjectEvent *, struct Sprite *) = {
|
u8 (*const gMovementActionFuncs_StopLevitateAtTop[])(struct ObjectEvent *, struct Sprite *) = {
|
||||||
MovementAction_DestroyExtraTaskIfAtTop_Step0,
|
MovementAction_StopLevitateAtTop_Step0,
|
||||||
MovementAction_Finish,
|
MovementAction_Finish,
|
||||||
};
|
};
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1678,18 +1678,27 @@ static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 of
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unused data. Feel free to remove.
|
// Unused, duplicates of data in event_object_movement.c
|
||||||
static const u8 sUnusedData[] =
|
static const s8 sFigure8XOffsets[FIGURE_8_LENGTH] = {
|
||||||
{
|
1, 2, 2, 2, 2, 2, 2, 2,
|
||||||
1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2,
|
2, 2, 2, 1, 2, 2, 1, 2,
|
||||||
1, 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 2,
|
2, 1, 2, 2, 1, 2, 1, 1,
|
||||||
1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1,
|
2, 1, 1, 2, 1, 1, 2, 1,
|
||||||
1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0,
|
1, 2, 1, 1, 1, 1, 1, 1,
|
||||||
1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0,
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1,
|
0, 1, 1, 1, 0, 1, 1, 0,
|
||||||
0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0,
|
1, 0, 1, 0, 1, 0, 0, 0,
|
||||||
1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
};
|
||||||
-1, 0, 0, -1, 0, 0, -1, 0, -1, -1, 0, -1,
|
|
||||||
-1, 0, -1, -1, -1, -1, -1, -1, -1, -2, 0, 0
|
static const s8 sFigure8YOffsets[FIGURE_8_LENGTH] = {
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 0,
|
||||||
|
1, 0, 1, 1, 0, 1, 1, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, -1, 0, 0, -1, 0, 0,
|
||||||
|
-1, 0, -1, -1, 0, -1, -1, 0,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, -2,
|
||||||
};
|
};
|
||||||
|
@ -722,9 +722,9 @@ static bool8 CanStopSurfing(s16 x, s16 y, u8 direction)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool8 ShouldJumpLedge(s16 x, s16 y, u8 z)
|
static bool8 ShouldJumpLedge(s16 x, s16 y, u8 direction)
|
||||||
{
|
{
|
||||||
if (GetLedgeJumpDirection(x, y, z) != 0)
|
if (GetLedgeJumpDirection(x, y, direction) != DIR_NONE)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
else
|
else
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@ -1192,7 +1192,7 @@ u8 GetPlayerAvatarFlags(void)
|
|||||||
return gPlayerAvatar.flags;
|
return gPlayerAvatar.flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 GetPlayerAvatarObjectId(void)
|
u8 GetPlayerAvatarSpriteId(void)
|
||||||
{
|
{
|
||||||
return gPlayerAvatar.spriteId;
|
return gPlayerAvatar.spriteId;
|
||||||
}
|
}
|
||||||
|
@ -1301,12 +1301,12 @@ void SpawnCameraObject(void)
|
|||||||
{
|
{
|
||||||
u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1, MOVEMENT_TYPE_FACE_DOWN, OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7, 3);
|
u8 obj = SpawnSpecialObjectEventParameterized(OBJ_EVENT_GFX_BOY_1, MOVEMENT_TYPE_FACE_DOWN, OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->pos.x + 7, gSaveBlock1Ptr->pos.y + 7, 3);
|
||||||
gObjectEvents[obj].invisible = TRUE;
|
gObjectEvents[obj].invisible = TRUE;
|
||||||
CameraObjectSetFollowedObjectId(gObjectEvents[obj].spriteId);
|
CameraObjectSetFollowedSpriteId(gObjectEvents[obj].spriteId);
|
||||||
}
|
}
|
||||||
|
|
||||||
void RemoveCameraObject(void)
|
void RemoveCameraObject(void)
|
||||||
{
|
{
|
||||||
CameraObjectSetFollowedObjectId(GetPlayerAvatarObjectId());
|
CameraObjectSetFollowedSpriteId(GetPlayerAvatarSpriteId());
|
||||||
RemoveObjectEventByLocalIdAndMap(OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
|
RemoveObjectEventByLocalIdAndMap(OBJ_EVENT_ID_CAMERA, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -326,7 +326,7 @@ bool8 FldEff_CutGrass(void)
|
|||||||
y = yAdd + gPlayerFacingPosition.y;
|
y = yAdd + gPlayerFacingPosition.y;
|
||||||
|
|
||||||
SetCutGrassMetatile(x, y);
|
SetCutGrassMetatile(x, y);
|
||||||
sub_808E75C(x, y);
|
AllowObjectAtPosTriggerGroundEffects(x, y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1298,7 +1298,7 @@ u8 CreateRecordMixingLights(void)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
struct Sprite *sprite = &gSprites[spriteId];
|
struct Sprite *sprite = &gSprites[spriteId];
|
||||||
sub_8092FF0(16, 13, &sprite->pos1.x, &sprite->pos1.y);
|
GetMapCoordsFromSpritePos(16, 13, &sprite->pos1.x, &sprite->pos1.y);
|
||||||
sprite->coordOffsetEnabled = TRUE;
|
sprite->coordOffsetEnabled = TRUE;
|
||||||
sprite->pos1.x += 16;
|
sprite->pos1.x += 16;
|
||||||
sprite->pos1.y += 2;
|
sprite->pos1.y += 2;
|
||||||
|
@ -54,7 +54,7 @@ static void StartSweetScentFieldEffect(void)
|
|||||||
PlaySE(SE_M_SWEET_SCENT);
|
PlaySE(SE_M_SWEET_SCENT);
|
||||||
CpuFastSet(gPlttBufferUnfaded, gPaletteDecompressionBuffer, 0x100);
|
CpuFastSet(gPlttBufferUnfaded, gPaletteDecompressionBuffer, 0x100);
|
||||||
CpuFastSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x100);
|
CpuFastSet(gPlttBufferFaded, gPlttBufferUnfaded, 0x100);
|
||||||
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 0, 8, RGB_RED);
|
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarSpriteId()].oam.paletteNum + 16)), 4, 0, 8, RGB_RED);
|
||||||
taskId = CreateTask(TrySweetScentEncounter, 0);
|
taskId = CreateTask(TrySweetScentEncounter, 0);
|
||||||
gTasks[taskId].data[0] = 0;
|
gTasks[taskId].data[0] = 0;
|
||||||
FieldEffectActiveListRemove(FLDEFF_SWEET_SCENT);
|
FieldEffectActiveListRemove(FLDEFF_SWEET_SCENT);
|
||||||
@ -76,7 +76,7 @@ static void TrySweetScentEncounter(u8 taskId)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
gTasks[taskId].func = FailSweetScentEncounter;
|
gTasks[taskId].func = FailSweetScentEncounter;
|
||||||
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarObjectId()].oam.paletteNum + 16)), 4, 8, 0, RGB_RED);
|
BeginNormalPaletteFade(~(1 << (gSprites[GetPlayerAvatarSpriteId()].oam.paletteNum + 16)), 4, 8, 0, RGB_RED);
|
||||||
TryStartMirageTowerPulseBlendEffect();
|
TryStartMirageTowerPulseBlendEffect();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -111,7 +111,7 @@ static void SpawnLinkPlayers(void);
|
|||||||
static void SetCameraToTrackGuestPlayer(void);
|
static void SetCameraToTrackGuestPlayer(void);
|
||||||
static void ResumeMap(bool32 arg0);
|
static void ResumeMap(bool32 arg0);
|
||||||
static void SetCameraToTrackPlayer(void);
|
static void SetCameraToTrackPlayer(void);
|
||||||
static void sub_8086A68(void);
|
static void InitObjectEventsReturnToField(void);
|
||||||
static void InitViewGraphics(void);
|
static void InitViewGraphics(void);
|
||||||
static void SetCameraToTrackGuestPlayer_2(void);
|
static void SetCameraToTrackGuestPlayer_2(void);
|
||||||
static void CreateLinkPlayerSprites(void);
|
static void CreateLinkPlayerSprites(void);
|
||||||
@ -1946,7 +1946,7 @@ static bool32 ReturnToFieldLocal(u8 *state)
|
|||||||
ResetMirageTowerAndSaveBlockPtrs();
|
ResetMirageTowerAndSaveBlockPtrs();
|
||||||
sub_80867D8();
|
sub_80867D8();
|
||||||
ResumeMap(FALSE);
|
ResumeMap(FALSE);
|
||||||
sub_8086A68();
|
InitObjectEventsReturnToField();
|
||||||
SetCameraToTrackPlayer();
|
SetCameraToTrackPlayer();
|
||||||
(*state)++;
|
(*state)++;
|
||||||
break;
|
break;
|
||||||
@ -1982,7 +1982,7 @@ static bool32 ReturnToFieldLink(u8 *state)
|
|||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
CreateLinkPlayerSprites();
|
CreateLinkPlayerSprites();
|
||||||
sub_8086A68();
|
InitObjectEventsReturnToField();
|
||||||
SetCameraToTrackGuestPlayer_2();
|
SetCameraToTrackGuestPlayer_2();
|
||||||
(*state)++;
|
(*state)++;
|
||||||
break;
|
break;
|
||||||
@ -2157,9 +2157,9 @@ static void InitObjectEventsLocal(void)
|
|||||||
TryRunOnWarpIntoMapScript();
|
TryRunOnWarpIntoMapScript();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8086A68(void)
|
static void InitObjectEventsReturnToField(void)
|
||||||
{
|
{
|
||||||
sub_808E16C(0, 0);
|
SpawnObjectEventsOnReturnToField(0, 0);
|
||||||
RotatingGate_InitPuzzleAndGraphics();
|
RotatingGate_InitPuzzleAndGraphics();
|
||||||
RunOnReturnToFieldMapScript();
|
RunOnReturnToFieldMapScript();
|
||||||
}
|
}
|
||||||
|
@ -754,7 +754,7 @@ static u8 RotatingGate_CreateGate(u8 gateId, s16 deltaX, s16 deltaY)
|
|||||||
sprite->data[0] = gateId;
|
sprite->data[0] = gateId;
|
||||||
sprite->coordOffsetEnabled = 1;
|
sprite->coordOffsetEnabled = 1;
|
||||||
|
|
||||||
sub_8092FF0(x + deltaX, y + deltaY, &sprite->pos1.x, &sprite->pos1.y);
|
GetMapCoordsFromSpritePos(x + deltaX, y + deltaY, &sprite->pos1.x, &sprite->pos1.y);
|
||||||
RotatingGate_HideGatesOutsideViewport(sprite);
|
RotatingGate_HideGatesOutsideViewport(sprite);
|
||||||
StartSpriteAffineAnim(sprite, RotatingGate_GetGateOrientation(gateId));
|
StartSpriteAffineAnim(sprite, RotatingGate_GetGateOrientation(gateId));
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user