Currently any time we create a new move target action we replicate FReplicatedAgentMoveTargetData which has a bunch of properties which are only specific to NavMesh move, e.g. CachedPreviousActionLocation. We should find a way to replicate the NavMesh move properties only when relevant. One way to do this would be:
[ ] Split this struct into two and replicate only the necessary ones when needed.
[ ] Split the NavMesh move related logic in TMassClientBubbleMoveTargetHandler into a new TMassClientBubbleNavMeshMoveHandler.
[ ] when we're updating move target, mark items dirty only in TMassClientBubbleMoveTargetHandler
[ ] when we're updating NavMesh move, mark items dirty in TMassClientBubbleNavMeshMoveHandler
This may become irrelevant due to https://github.com/HaywireInteractive/OnAllFronts-Public/issues/920. Consider if we should skip it.
Currently any time we create a new move target action we replicate FReplicatedAgentMoveTargetData which has a bunch of properties which are only specific to NavMesh move, e.g. CachedPreviousActionLocation. We should find a way to replicate the NavMesh move properties only when relevant. One way to do this would be: