10{
12
13 APawn* Pawn = nullptr;
14
15 if (AActor* OwnerActor = Cast<AActor>(Context.GetOwner()))
16 {
17 if (AAIController* Controller = Cast<AAIController>(OwnerActor))
18 {
19 Pawn = Controller->GetPawn();
20 }
21 else
22 {
23 Pawn = Cast<APawn>(OwnerActor);
24 }
25 }
26
27 if (Pawn == nullptr)
28 {
29 return;
30 }
31
32 Data.CachedPawn = Pawn;
33 Data.StrafeComponent = Pawn->FindComponentByClass<UEnemyStrafeComponent>();
34
35 if (UEnemyStrafeComponent* StrafeComponent = Data.StrafeComponent)
36 {
37 Data.StrafeSpeed = StrafeComponent->GetStrafeSpeed();
38 Data.StrafeDelay = StrafeComponent->GetStrafeDelay();
39 }
40}
FStrafeDataInstanceData FInstanceDataType
Definition Evaluator_StrafeData.h:38