haxis/Source/UnrealProject/Creatures/BehaviorTree/EnemyAIController.h

57 lines
1.5 KiB
C++

// Project Lab - NHTV Igad
#pragma once
#include "AIController.h"
#include "EnemyAIController.generated.h"
/**
*
*/
UCLASS()
class UNREALPROJECT_API AEnemyAIController : public AAIController
{
GENERATED_BODY()
public:
AEnemyAIController(const FObjectInitializer& PCIP);
UPROPERTY(transient)
class UBlackboardComponent* blackBoardComp;
UPROPERTY(transient)
class UBehaviorTreeComponent* behaviorTreeComp;
UPROPERTY(transient)
float climbSpeed;
virtual void Tick(float deltaTime)override;
virtual void Possess(APawn* pawn) override;
virtual void BeginInactiveState() override;
bool VerticleMoveTo(FVector destination,FVector direction, float acceptRadius);
bool JumpFence(FVector destination);
UFUNCTION(BlueprintCallable, Category = Behavior)
void SetVector(FVector vector, FName name);
UFUNCTION(BlueprintCallable, Category = Behavior)
void SetBool(bool boolean, FName name);
UFUNCTION(BlueprintCallable, Category = Behavior)
void SetTarget(class ANetworkCharacter* player);
UFUNCTION(BlueprintCallable, Category = Behavior)
class ANetworkCharacter* GetTarget();
UFUNCTION(BlueprintCallable, Category = Behavior)
FVector GetLocationTarget();
UFUNCTION(BlueprintCallable, Category = Behavior)
FVector GetHomeLocation();
UFUNCTION(BlueprintCallable, Category = Behavior)
FVector GetSelfLocation();
// UFUNCTION(BlueprintCallable, Category = Behavior)
// bool GetEnableTree();
UFUNCTION(BlueprintCallable, Category = Behavior)
bool GetClimbKey();
protected:
uint8 targetkey;
};