summaryrefslogtreecommitdiff
path: root/include/event_object_movement.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/event_object_movement.h')
-rw-r--r--include/event_object_movement.h50
1 files changed, 23 insertions, 27 deletions
diff --git a/include/event_object_movement.h b/include/event_object_movement.h
index ddccfe39b..cc45f1531 100644
--- a/include/event_object_movement.h
+++ b/include/event_object_movement.h
@@ -19,7 +19,8 @@ enum SpinnerRunnerFollowPatterns
RUNFOLLOW_SOUTH_EAST_WEST
};
-struct UnkStruct_085094AC {
+struct UnkStruct_085094AC
+{
const union AnimCmd *const *anims;
u8 animPos[4];
};
@@ -45,28 +46,6 @@ struct UnkStruct_085094AC {
#define GROUND_EFFECT_FLAG_HOT_SPRINGS (1 << 18)
#define GROUND_EFFECT_FLAG_SEAWEED (1 << 19)
-#define movement_type_def(setup, table) \
-static u8 setup##_callback(struct EventObject *, struct Sprite *);\
-void setup(struct Sprite *sprite)\
-{\
- UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, setup##_callback);\
-}\
-static u8 setup##_callback(struct EventObject *eventObject, struct Sprite *sprite)\
-{\
- return table[sprite->data[1]](eventObject, sprite);\
-}
-
-#define movement_type_empty_callback(setup) \
-static u8 setup##_callback(struct EventObject *, struct Sprite *);\
-void setup(struct Sprite *sprite)\
-{\
- UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, setup##_callback);\
-}\
-static u8 setup##_callback(struct EventObject *eventObject, struct Sprite *sprite)\
-{\
- return 0;\
-}
-
struct PairedPalettes
{
u16 tag;
@@ -75,14 +54,14 @@ struct PairedPalettes
struct LockedAnimEventObjects
{
- u8 eventObjectIds[NUM_EVENT_OBJECTS];
+ u8 eventObjectIds[EVENT_OBJECTS_COUNT];
u8 count;
};
extern const struct SpriteFrameImage gEventObjectPicTable_PechaBerryTree[];
extern const u8 gReflectionEffectPaletteMap[];
-void sub_808D438(void);
+void ResetEventObjects(void);
u8 GetMoveDirectionAnimNum(u8);
u8 GetEventObjectIdByLocalIdAndMap(u8, u8, u8);
bool8 TryGetEventObjectIdByLocalIdAndMap(u8, u8, u8, u8 *);
@@ -143,9 +122,27 @@ u8 GetCollisionFlagsAtCoords(struct EventObject *eventObject, s16 x, s16 y, u8 d
u8 GetFaceDirectionMovementAction(u32);
u8 GetWalkNormalMovementAction(u32);
u8 GetWalkFastMovementAction(u32);
+u8 GetRideWaterCurrentMovementAction(u32);
u8 GetWalkFastestMovementAction(u32);
+u8 GetPlayerRunMovementAction(u32);
u8 GetJumpInPlaceMovementAction(u32);
+u8 GetAcroWheelieFaceDirectionMovementAction(u32);
+u8 GetAcroPopWheelieFaceDirectionMovementAction(u32);
+u8 GetAcroEndWheelieFaceDirectionMovementAction(u32);
+u8 GetAcroWheelieHopFaceDirectionMovementAction(u32);
+u8 GetAcroWheelieHopDirectionMovementAction(u32);
+u8 GetAcroWheelieJumpDirectionMovementAction(u32);
+u8 GetJumpInPlaceTurnAroundMovementAction(u32);
+u8 GetAcroWheelieInPlaceDirectionMovementAction(u32);
+u8 GetAcroPopWheelieMoveDirectionMovementAction(u32);
+u8 GetAcroWheelieMoveDirectionMovementAction(u32);
+u8 GetAcroEndWheelieMoveDirectionMovementAction(u32);
+u8 GetFishingDirectionAnimNum(u8 direction);
+u8 GetAcroWheelieDirectionAnimNum(u8 direction);
+u8 GetFishingBiteDirectionAnimNum(u8 direction);
+u8 GetFishingNoCatchDirectionAnimNum(u8 direction);
bool8 EventObjectSetHeldMovement(struct EventObject *eventObject, u8 specialAnimId);
+void EventObjectForceSetHeldMovement(struct EventObject *eventObject, u8 movementActionId);
bool8 EventObjectIsMovementOverridden(struct EventObject *eventObject);
u8 EventObjectCheckHeldMovementStatus(struct EventObject *eventObject);
u8 EventObjectGetHeldMovementActionId(struct EventObject *eventObject);
@@ -162,9 +159,7 @@ u8 ZCoordToPriority(u8);
void EventObjectUpdateZCoord(struct EventObject *pObject);
void SetObjectSubpriorityByZCoord(u8, struct Sprite *, u8);
bool8 IsZCoordMismatchAt(u8, s16, s16);
-void UpdateEventObjectSpriteSubpriorityAndVisibility(struct Sprite *);
void UnfreezeEventObject(struct EventObject *);
-void oamt_npc_ministep_reset(struct Sprite *, u8, u8);
u8 FindLockedEventObjectIndex(struct EventObject *);
bool8 obj_npc_ministep(struct Sprite *sprite);
bool8 sub_80976EC(struct Sprite *sprite);
@@ -194,6 +189,7 @@ u16 GetObjectPaletteTag(u8 palSlot);
void UpdateEventObjectSpriteVisibility(struct Sprite *sprite, bool8 invisible);
s16 sub_809773C(s16 a1);
s16 sub_8097728(s16 a1);
+void CameraObjectReset2(void);
void MovementType_None(struct Sprite *);
void MovementType_LookAround(struct Sprite *);