Nakatomi/Source/Nakatomi/EnemyCharacter.h

46 lines
921 B
C
Raw Normal View History

2023-02-03 01:29:14 +00:00
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "NakatomiCharacter.h"
#include "BehaviorTree/BehaviorTreeComponent.h"
#include "RandomWeaponParameters.h"
2023-02-03 01:29:14 +00:00
#include "EnemyCharacter.generated.h"
/**
*
*/
UCLASS()
class NAKATOMI_API AEnemyCharacter : public ANakatomiCharacter
{
GENERATED_BODY()
2023-02-03 01:29:14 +00:00
private:
UPROPERTY(EditDefaultsOnly, Meta = (AllowPrivateAccess = "true"))
UBehaviorTree* BehaviourTree;
2023-06-23 21:06:18 +01:00
UPROPERTY(VisibleAnywhere)
URandomWeaponParameters* RandomWeaponParameters;
2023-02-03 01:29:14 +00:00
FTimerHandle CooldownTimerHandle;
2023-02-03 01:29:14 +00:00
public:
AEnemyCharacter();
UBehaviorTree* GetBehaviourTree();
virtual void OnFire() override;
void WeaponCooldownHandler();
2023-02-03 01:29:14 +00:00
protected:
virtual void BeginPlay() override;
private:
virtual void CalculateHits(TArray<FHitResult>* hits) override;
virtual void ProcessHits(TArray<FHitResult> hits) override;
2023-02-03 01:29:14 +00:00
};