Space Plunder
Loading...
Searching...
No Matches
STT_FindRandomPatrolPoint.h
Go to the documentation of this file.
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "StateTreeTaskBase.h"
6#include "STT_FindRandomPatrolPoint.generated.h"
7
8
12USTRUCT()
14{
15 GENERATED_BODY()
16
17 UPROPERTY(EditAnywhere, Category="Parameter", meta=(ToolTip="Wait time at Patrol point."))
18 float WaitTime = 2.0f;
19 UPROPERTY(EditAnywhere, Category="Parameter")
20 FVector MoveTargetLocation = FVector::ZeroVector;
21 UPROPERTY(EditAnywhere, Category="Parameter")
22 bool bBridgeAvailable = false;
23 UPROPERTY(EditAnywhere, Category="Parameter")
24 AActor* NextPatrolPoint = nullptr;
25 UPROPERTY(EditAnywhere, Category="Parameter")
26 AActor* NextBridgePatrolPoint = nullptr;
27};
28
29
33USTRUCT(meta = (DisplayName = "Find Random Patrol Point"))
34struct FStateTree_FindRandomPatrolPoint : public FStateTreeTaskCommonBase
35{
36 GENERATED_BODY()
37
40 virtual const UStruct* GetInstanceDataType() const override { return FInstanceDataType::StaticStruct(); }
41
42
43 virtual EStateTreeRunStatus EnterState(FStateTreeExecutionContext& Context, const FStateTreeTransitionResult& Transition) const override;
44
45 virtual void ExitState(FStateTreeExecutionContext& Context, const FStateTreeTransitionResult& Transition) const override;
46
47 UPROPERTY(EditAnywhere, Category="Parameter|Debugging")
48 bool bDebuggingMode = false;
49 UPROPERTY(EditAnywhere, Category="Parameter|Debugging")
50 bool bShowText = true;
51 UPROPERTY(EditAnywhere, Category="Parameter|Debugging")
52 float PointSize = 20.0f;
53 UPROPERTY(EditAnywhere, Category="Parameter|Debugging")
54 FColor TraceColor = FColor::Green;
55 UPROPERTY(EditAnywhere, Category="Parameter|Debugging")
56 FColor TargetPatrolPointColor = FColor::Red;
57
58
59 // UPROPERTY(EditAnywhere, Category="Output", meta=(ToolTip="Wait time at Patrol point."))
60 // float WaitTime;
61 // UPROPERTY(EditAnywhere, Category="Output")
62 // FVector MoveTargetLocation;
63 // UPROPERTY(EditAnywhere, Category="Output")
64 // bool bBridgeAvailable;
65 // UPROPERTY(EditAnywhere, Category="Output")
66 // AActor* NextPatrolPoint;
67 // UPROPERTY(EditAnywhere, Category="Output")
68 // AActor* NextBridgePatrolPoint;
69
70 UPROPERTY(EditAnywhere, Category="Parameter", meta=(ToolTip="The size of the radius that the AI will look for a pathpoint in."))
71 float Radius = 2000.0f;
72 UPROPERTY(EditAnywhere, Category="Parameter", meta=(ToolTip="Object collision channel to filter for, used to find Patrol Points and not every object in the world."))
73 TEnumAsByte<EObjectTypeQuery> ObjectChannelToUse = ObjectTypeQuery1;
74
75
76};
77
Definition STT_FindRandomPatrolPoint.h:35
Definition STT_FindRandomPatrolPoint.h:14