Space Plunder
Loading...
Searching...
No Matches
ShipBrainController.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 "CoreMinimal.h"
7#include "ShipBrainController.generated.h"
8
9struct FActorPerceptionUpdateInfo;
10struct FAIStimulus;
14UCLASS()
15class AITOOLKIT_API AShipBrainController : public AAIControllerBase
16{
17 GENERATED_BODY()
18
19public:
20
22
23
24 void UpdatePerceptionDetails() const;
25
26protected:
27
28 virtual void BeginPlay() override;
29
30 virtual void OnPossess(APawn* InPawn) override;
31
32
33 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Perception")
34 class UAdvancedAIPerceptionComponent* AIPerceptionComponent;
35
36 // UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "AI")
37 // class UAISenseConfig_Sight* SightConfig;
38 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "AI")
39 class UAISenseConfig_Hearing* HearingConfig;
40 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "AI")
41 class UAISenseConfig_Prediction* PredictionConfig;
42 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "AI")
43 class UAISenseConfig_Team* TeamConfig;
44 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "AI")
45 class UAISenseConfig_Actions* ActionsConfig;
46
47
48 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
49 void OnForgottenStimulusBP(FAIStimulus Stimulus);
50 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
51 void OnTargetPerceptionForgottenBP(AActor* Actor);
52 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
53 void OnPerceptionUpdatedBP(const TArray<AActor*>& UpdatedActors);
54
55 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
56 void OnTargetPerceptionUpdatedBP(AActor* Actor, FAIStimulus Stimulus);
57 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
58 void OnTargetPerceptionInfoUpdatedBP(FActorPerceptionUpdateInfo UpdateInfo);
59
60 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
61 void OnTargetSightUpdated(AActor* Actor, FAIStimulus Stimulus);
62 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
63 void OnTargetHearingUpdated(AActor* Actor, FAIStimulus Stimulus);
64 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
65 void OnTargetPredictionUpdated(AActor* Actor, FAIStimulus Stimulus);
66 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
67 void OnTargetDamageUpdated(AActor* Actor, FAIStimulus Stimulus);
68 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
69 void OnTargetTeamUpdated(AActor* Actor, FAIStimulus Stimulus);
70 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
71 void OnTargetTouchUpdated(AActor* Actor, FAIStimulus Stimulus);
72 UFUNCTION(BlueprintImplementableEvent, Category="Perception")
73 void OnTargetActionUpdated(AActor* Actor, FAIStimulus Stimulus);
74
75 //- Perception functions Bind //
76 UFUNCTION()
77 void ForgottenStimulus(FAIStimulus Stimulus);
78 UFUNCTION()
79 void TargetPerceptionForgotten(AActor* Actor);
80 UFUNCTION()
81 void PerceptionUpdated(const TArray<AActor*>& UpdatedActors);
82 UFUNCTION()
83 void TargetPerceptionUpdated(AActor* Actor, FAIStimulus Stimulus);
84 UFUNCTION()
85 void TargetPerceptionInfoUpdated(const FActorPerceptionUpdateInfo& UpdateInfo);
86
87
88 //- Seperate Senses //
89 void TargetSightUpdated(AActor* Actor, const FAIStimulus& Stimulus);
90 void TargetHearingUpdated(AActor* Actor, const FAIStimulus& Stimulus);
91 void TargetPredictionUpdated(AActor* Actor, const FAIStimulus& Stimulus);
92 void TargetDamageUpdated(AActor* Actor, const FAIStimulus& Stimulus);
93 void TargetTeamUpdated(AActor* Actor, const FAIStimulus& Stimulus);
94 void TargetTouchUpdated(AActor* Actor, const FAIStimulus& Stimulus);
95 void TargetActionUpdated(AActor* Actor, const FAIStimulus& Stimulus);
96
97 UFUNCTION()
98 void CharacterDeath();
99
100};
UCLASS(Blueprintable, BlueprintType, ClassGroup=(BucciGames), meta=(BlueprintSpawnableComponent)) class CHATSYSTEM_API UChatSystemComponent
Definition ChatSystemComponent.h:13
Definition AIControllerBase.h:15
Definition ShipBrainController.h:16
Definition AISenseConfig_Actions.h:17
Definition AdvancedAIPerceptionComponent.h:15