blob: 30c0205f18df2f41fd5ce89d28cbef00a6289cbb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#pragma warning disable CS0282
#if MODULE_ENTITIES
using Unity.Entities;
using UnityEngine;
namespace Pathfinding.ECS {
using Pathfinding;
[UpdateBefore(typeof(FollowerControlSystem))]
[UpdateInGroup(typeof(AIMovementSystemGroup))]
[RequireMatchingQueriesForUpdate]
public partial struct SyncDestinationTransformSystem : ISystem {
public void OnCreate (ref SystemState state) {}
public void OnDestroy (ref SystemState state) {}
public void OnUpdate (ref SystemState systemState) {
foreach (var(point, destinationSetter) in SystemAPI.Query<RefRW<DestinationPoint>, AIDestinationSetter>()) {
if (destinationSetter.target != null) {
point.ValueRW = new DestinationPoint {
destination = destinationSetter.target.position,
facingDirection = destinationSetter.useRotation ? destinationSetter.target.forward : Vector3.zero
};
}
}
}
}
}
#endif
|