diff options
Diffstat (limited to 'include/event_object_movement.h')
-rw-r--r-- | include/event_object_movement.h | 84 |
1 files changed, 55 insertions, 29 deletions
diff --git a/include/event_object_movement.h b/include/event_object_movement.h index f2e7bd325..dac5ed8e8 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -22,6 +22,18 @@ enum SpinnerRunnerFollowPatterns { RUNFOLLOW_SOUTH_EAST_WEST }; +struct UnkStruct_083A3698 +{ + const union AnimCmd *const *anims; + u8 animPos[4]; +}; + +struct PairedPalettes +{ + u16 tag; + const u16 *data; +}; + // Exported RAM declarations // Exported ROM declarations @@ -30,74 +42,88 @@ void sub_808D438(void); u8 GetObjectEventIdByLocalIdAndMap(u8, u8, u8); bool8 TryGetObjectEventIdByLocalIdAndMap(u8, u8, u8, u8 *); u8 GetObjectEventIdByXY(s16, s16); -void ObjectEventSetDirection(struct ObjectEvent *, u8); +void SetObjectEventDirection(struct ObjectEvent *, u8); u8 sub_808D4F4(void); void RemoveObjectEventByLocalIdAndMap(u8, u8, u8); -void npc_load_two_palettes__no_record(u16, u8); -void npc_load_two_palettes__and_record(u16, u8); -void sub_805F7C4(u8, u8, u8, s16, s16); -void pal_patch_for_npc(u16, u8); +void LoadPlayerObjectReflectionPalette(u16, u8); +void LoadSpecialObjectReflectionPalette(u16, u8); +void TryMoveObjectEventToMapCoords(u8, u8, u8, s16, s16); +void PatchObjectPalette(u16, u8); void sub_808E16C(s16, s16); void sub_808F28C(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat); -void sub_8092FF0(s16, s16, s16 *, s16 *); -u8 ObjectEventDirectionToImageAnimId(u8); -void sub_80930E0(s16 *, s16 *, s16, s16); -void ObjectEventClearAnim(struct ObjectEvent *); -void ObjectEventClearAnimIfSpecialAnimActive(struct ObjectEvent *); +void sub_8063AD4(s16, s16, s16 *, s16 *); +u8 GetFaceDirectionAnimNum(u8); +void sub_8063BC4(s16 *, s16 *, s16, s16); +void ObjectEventClearHeldMovement(struct ObjectEvent *); +void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *); void SpawnObjectEventsInView(s16, s16); u8 sprite_new(u8, u8, s16, s16, u8, u8); u8 AddPseudoObjectEvent(u16, SpriteCallback, s16, s16, u8); u8 TrySpawnObjectEvent(u8 localId, u8 mapNum, u8 mapGroup); u8 SpawnSpecialObjectEventParameterized(u8, u8, u8, s16, s16, u8); u8 SpawnSpecialObjectEvent(struct ObjectEventTemplate *); -void sub_8093038(s16, s16, s16 *, s16 *); +void SetSpritePosToMapCoords(s16, s16, s16 *, s16 *); void CameraObjectReset1(void); void CameraObjectReset2(void); void ObjectEventSetGraphicsId(struct ObjectEvent *, u8); void ObjectEventTurn(struct ObjectEvent *, u8); void ObjectEventTurnByLocalIdAndMap(u8, u8, u8, u8); -void ObjectEventForceSetSpecialAnim(struct ObjectEvent *, u8); -u8 sub_8064270(u8 a0); +void ObjectEventForceSetHeldMovement(struct ObjectEvent *, u8); const struct ObjectEventGraphicsInfo *GetObjectEventGraphicsInfo(u8); void npc_by_local_id_and_map_set_field_1_bit_x20(u8, u8, u8, u8); -void gpu_pal_allocator_reset__manage_upper_four(void); +void FreeAndReserveObjectSpritePalettes(void); void sub_808E82C(u8, u8, u8, s16, s16); void sub_805F400(u8, u8, u8); void sub_805F3A8(u8, u8, u8, u8); void sub_808E75C(s16, s16); -void ObjectEventGetLocalIdAndMap(struct ObjectEvent *, u8 *, u8 *, u8 *); -void npc_coords_shift(struct ObjectEvent *, s16, s16); +void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup); +void ShiftObjectEventCoords(struct ObjectEvent *, s16, s16); void sub_808EB08(struct ObjectEvent *, s16, s16); -void sub_805FE94(u8, u8, u8); -void ObjectEventStep(struct ObjectEvent *, struct Sprite *, bool8(struct ObjectEvent *, struct Sprite *)); +void TryOverrideObjectEventTemplateCoords(u8, u8, u8); +void UpdateObjectEventCurrentMovement(struct ObjectEvent *, struct Sprite *, bool8(struct ObjectEvent *, struct Sprite *)); u8 ObjectEventFaceOppositeDirection(struct ObjectEvent *, u8); u8 GetOppositeDirection(u8); -u8 GetStepInPlaceDelay4AnimId(u32); +u8 GetWalkInPlaceFastMovementAction(u32); u8 GetStepInPlaceDelay8AnimId(u32); -u8 GetStepInPlaceDelay16AnimId(u32); +u8 GetWalkInPlaceNormalMovementAction(u32); +u8 GetWalkInPlaceSlowMovementAction(u32); u8 GetStepInPlaceDelay32AnimId(u32); -u8 npc_block_way(struct ObjectEvent *, s16, s16, u32); +u8 GetCollisionAtCoords(struct ObjectEvent *, s16, s16, u32); void MoveCoords(u8, s16 *, s16 *); -bool8 ObjectEventIsSpecialAnimActive(struct ObjectEvent *); +bool8 ObjectEventIsHeldMovementActive(struct ObjectEvent *); u8 ObjectEventClearHeldMovementIfFinished(struct ObjectEvent *); u8 GetObjectEventIdByXYZ(u16 x, u16 y, u8 z); void sub_8063E28(struct ObjectEvent *, struct Sprite *); bool8 ObjectEventSetHeldMovement(struct ObjectEvent *, u8); -void npc_coords_shift_still(struct ObjectEvent *); -void sub_805FE7C(struct ObjectEvent *, u8); +void ShiftStillObjectEventCoords(struct ObjectEvent *); +void OverrideMovementTypeForObjectEvent(const struct ObjectEvent *, u8); void SetTrainerMovementType(struct ObjectEvent *, u8); -u8 sub_80634F0(u8 direction); -u8 sub_8063500(u8 a0); +u8 GetFishingNoCatchDirectionAnimNum(u8 direction); +u8 GetFishingBiteDirectionAnimNum(u8 a0); void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 a1); u8 sub_805EB44(u8, u8, s16, s16); -void npc_paltag_set_load(u8 mode); +void InitObjectEventPalettes(u8 mode); bool8 ObjectEventIsMovementOverridden(struct ObjectEvent *objectEvent); u8 ObjectEventCheckHeldMovementStatus(struct ObjectEvent *objectEvent); -u8 sub_8063F84(u8 direction); +u8 GetWalkNormalMovementAction(u32); +u8 GetWalkFastMovementAction(u32); +u8 GetWalkFastestMovementAction(u32); +u8 sub_8063F2C(u32 direction); u8 GetTrainerFacingDirectionMovementType(u8 direction); -void CameraObjectSetFollowedObjectId(u8 spriteId); +u8 GetFaceDirectionMovementAction(u32); +void CameraObjectSetFollowedObjectId(u8 objectId); void UnfreezeObjectEvents(void); void sub_8069058(u8, u8); +void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8); +u8 GetSlideMovementAction(u32); +u8 GetJumpInPlaceMovementAction(u32); +u8 GetJumpMovementAction(u32); +u8 GetJump2MovementAction(u32); +bool8 sub_8068BCC(struct Sprite *sprite); +void sub_8068D1C(struct Sprite *, u8, u8, u8); +u8 sub_8068D3C(struct Sprite *); +u8 sub_8068DC4(struct Sprite *); + // Exported data declarations |