57 lines
1.5 KiB
C++
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;
|
|
|
|
|
|
};
|
|
|