// 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; };