Space Plunder
Loading...
Searching...
No Matches
InteractableActor.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"
6#include "Actors/ActorBase.h"
7#include "GameFramework/Actor.h"
9#include "InteractableActor.generated.h"
10
11DECLARE_LOG_CATEGORY_EXTERN(LogInteractableActor, Display, All);
12
13UCLASS()
14class INTERACTION_API AInteractableActor : public AActorBase
15{
16 GENERATED_BODY()
17
18public:
20
21 //~~~ Interaction ~~////
22 UFUNCTION()
23 virtual void ReceiveStartFocus(AActor* Caller);
24 UFUNCTION()
25 virtual void ReceiveEndFocus(AActor* Caller);
26 UFUNCTION()
27 virtual void ReceiveOnInteract(AActor* Caller, const EInteractionType InteractionType);
28 UFUNCTION()
29 virtual void ReceiveOnEndInteract(AActor* Caller);
30 UFUNCTION()
31 virtual void ReceiveOnOverlap(AActor* Caller);
32 UFUNCTION()
33 virtual void ReceiveOnEndOverlap(AActor* Caller);
34 UFUNCTION()
35 virtual void ReceiveToggleSwitch(AActor* Caller, const bool bOn);
36 //~~~ Interaction ~~////
37
38
39
40 // virtual FString GetObjectDisplayName() const override {return DisplayName;};
41 // virtual void SetGravityEnabled(const bool bValue) override;
42 // UFUNCTION(BlueprintNativeEvent, Category = "Base Helpers")
43 // void SetGravityEnabledEvent(const bool bValue);
44 // virtual bool GetIsCharacter() const override {return false;};
45
46 // UFUNCTION(BlueprintCallable, Category = "Interaction")
47 // virtual bool GetIsActorOverlapping() const {return bActorOverlapped;};
48 // UFUNCTION(BlueprintCallable, Category = "Interaction")
49 // virtual void SetIsActorOverlapping(const bool bValue) {bActorOverlapped = bValue;};
50
51
52
53
54protected:
55 virtual void BeginPlay() override;
56 virtual void Tick(float DeltaTime) override;
57
58 virtual void SetMeshOutline(const bool bValue);
59
60
61
62 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Interaction")
63 class UInteractableActorComponent* InteractableActorComponent;
64 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Interaction|Audio")
65 class UAudioReactionComponent* AudioReactionComponent;
66 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Interaction|AI")
67 class UAIPerceptionStimuliSourceComponent* PerceptionStimuliComponent;
68
69 //- Will return Actor Location as Default //
70 // UFUNCTION(BlueprintNativeEvent, Category = "Interaction")
71 // FVector GetCustomInteractionLocation() const;
72
73};
EInteractionType
Definition BaseData.h:149
UCLASS(Blueprintable, BlueprintType, ClassGroup=(BucciGames), meta=(BlueprintSpawnableComponent)) class CHATSYSTEM_API UChatSystemComponent
Definition ChatSystemComponent.h:13
DECLARE_LOG_CATEGORY_EXTERN(LogInteractableActor, Display, All)
Definition ActorBase.h:15
Definition InteractableActor.h:15
Definition Interaction.Build.cs:6