Space Plunder
Loading...
Searching...
No Matches
InteractionContextWidget.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 "Blueprint/UserWidget.h"
8#include "InteractionContextWidget.generated.h"
9
10struct FInteractionData;
14UCLASS()
15class INTERACTION_API UInteractionContextWidget : public UUserWidget, public IInteractionHUD
16{
17 GENERATED_BODY()
18
19public:
20 UInteractionContextWidget(const FObjectInitializer& ObjectInitializer);
21
22
23 virtual bool Initialize() override;
24
25 virtual void NativeConstruct() override;
26
27 virtual void SetAiming(const bool bValue) override;
28
29 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
30 void StartedAiming();
31 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
32 void StoppedAiming();
33
34
35 virtual void StartFocusOnObject(const FString& ObjectName, const FInteractionData& InteractionData) override;
36 virtual void StartFocusOnCharacter(const FString& CharacterName, const FInteractionData& InteractionData) override;
37 virtual void ShowCustomPrompt(const FInteractionData& InteractionData) override;
38 virtual void SetSelectedInteraction(const int32 Index) override;
39 virtual void StartSelection(const float Time) override;
40 virtual void StopSelection() override;
41 virtual void HideCustomPrompt() override;
42 virtual void EndFocus() override;
43
44
45
46 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
47 void OnStartFocusOnObject(const FString& ObjectName, const FInteractionData& InteractionData);
48 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
49 void OnStartFocusOnCharacter(const FString& CharacterName, const FInteractionData& InteractionData);
50 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
51 void OnShowCustomPrompt(const FInteractionData& InteractionData);
52 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
53 void OnHideCustomPrompt();
54 UFUNCTION(BlueprintImplementableEvent, BlueprintCallable, Category="Interaction")
55 void OnEndFocus();
56
57
58 UWidget* GetCurrentSelection() const;
59
60protected:
61
62
63 int32 SelectedIndex = 0;
64
65
66 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta=(BindWidget), Category="Interaction")
67 class UOverlay* ContextOverlay = nullptr;
68 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta=(BindWidget), Category="Interaction")
69 class UVerticalBox* ContextVerticalBox = nullptr;
70 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta=(BindWidget), Category="Interaction")
71 class UVerticalBox* PromptVerticalBox = nullptr;
72
73private:
74
75 TSubclassOf<class UInteractionTypeWidget> InteractionTypeWidgetClass;
76
77 FInteractionData CurrentInteractionData;
78
79
80};
UCLASS(Blueprintable, BlueprintType, ClassGroup=(BucciGames), meta=(BlueprintSpawnableComponent)) class CHATSYSTEM_API UChatSystemComponent
Definition ChatSystemComponent.h:13
Definition InteractionHUD.h:17
Definition Interaction.Build.cs:6
Definition InteractionContextWidget.h:16
Definition InteractionTypeWidget.h:14
Definition BaseData.h:420