fp: First draft swarming on entity

This commit is contained in:
2023-09-29 14:50:40 +10:00
parent 9fde0594e1
commit 3829a2bdc9
3 changed files with 96 additions and 28 deletions
+18 -8
View File
@@ -63,8 +63,25 @@ enum FP_GameWaypointArrive
FP_GameWaypointArrive_WhenWithinEntitySize,
};
enum FP_GameWaypointType
{
FP_GameWaypointType_At, // Move to the specified entity
FP_GameWaypointType_Side, // Move to the side of the entity specified by the direction
};
enum FP_GameDirection
{
FP_GameDirection_Up,
FP_GameDirection_Down,
FP_GameDirection_Left,
FP_GameDirection_Right,
FP_GameDirection_Count,
};
struct FP_GameWaypoint
{
FP_GameWaypointType type;
FP_GameDirection type_direction;
FP_GameEntityHandle entity;
FP_GameWaypointArrive arrive;
Dqn_f32 value;
@@ -93,14 +110,6 @@ struct FP_GameEntityAction
uint64_t end_at_clock_ms;
};
enum FP_GameDirection
{
FP_GameDirection_Up,
FP_GameDirection_Down,
FP_GameDirection_Left,
FP_GameDirection_Right,
};
struct FP_GameRenderSprite
{
Dqn_V2 offset;
@@ -134,6 +143,7 @@ struct FP_GameEntity
Dqn_FArray<FP_GameRenderSprite, 2> extra_cosmetic_anims;
FP_SentinelList<FP_GameWaypoint> waypoints;
FP_GameEntityHandle aggro_slot[FP_GameDirection_Count];
// NOTE: The entity hit box is positioned at the center of the entity.
Dqn_V2 local_hit_box_size;