Space Plunder
Loading...
Searching...
No Matches
PlayerControllerInterface.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 "UObject/Interface.h"
8#include "PlayerControllerInterface.generated.h"
9
10
11UINTERFACE(NotBlueprintable)
12class BASEHELPERS_API UPlayerControllerInterface : public UInterface
13{
14 GENERATED_BODY()
15};
16
20class BASEHELPERS_API IPlayerControllerInterface
21{
22 GENERATED_BODY()
23
24public:
25
26 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
27 virtual bool RegisterLayer(const FGameplayTag LayerName, UUserWidget* LayerWidget) = 0;
28 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
29 virtual UUserWidget* PushContentToLayer(const FGameplayTag LayerName, const TSoftClassPtr<UUserWidget> WidgetClass) = 0;
30 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
31 virtual bool PopContentFromLayer(const FGameplayTag LayerName) = 0;
32 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
33 virtual bool ClearLayer(const FGameplayTag LayerName) = 0;
34 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
35 virtual bool ToggleWidget(const FGameplayTag LayerName, UUserWidget* Widget) = 0;
36 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
37 virtual UUserWidget* AddWidgetToLayer(const FGameplayTag LayerName, const TSoftClassPtr<UUserWidget> WidgetClass) = 0;
38 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
39 virtual UUserWidget* GetContentFromLayer(const FGameplayTag LayerName, const TSoftClassPtr<UUserWidget> WidgetClass) = 0;
40 UFUNCTION(BlueprintCallable, Category="HUD|Layout")
41 virtual UUserWidget* AddWidgetToLayerWithSlot(const FGameplayTag LayerName, const FGameplayTag SlotTag, const TSoftClassPtr<UUserWidget> WidgetClass) = 0;
42
43 UFUNCTION(BlueprintCallable, Category="HUD")
44 virtual void OpenRadialMenu(const FRadialMenuData& Data) = 0;
46 UFUNCTION(BlueprintCallable, Category="HUD")
47 virtual int32 CloseRadialMenu() = 0;
48 UFUNCTION(BlueprintCallable, Category="HUD")
49 virtual bool GetIsRadialMenuOpen() const = 0;
50
51 UFUNCTION(BlueprintCallable, Category="Controller")
52 virtual void SetCharacterMode(const FGameplayTag& Mode) = 0;
53 UFUNCTION(BlueprintCallable, Category="Controller")
54 virtual FGameplayTag GetCharacterMode() const = 0;
55
56
57 UFUNCTION(BlueprintCallable, Category="Controller")
58 virtual FVector2D GetLookAxis() const = 0;
59 UFUNCTION(BlueprintCallable, Category="Controller")
60 virtual FVector2D GetMoveAxis() const = 0;
61
62 //** @ TODO MOve These to General Controller interface so can use on AI //
63 // UFUNCTION(BlueprintCallable, Category="Controller")
64 // virtual FVector GetPawnLocation() const = 0;
65 // UFUNCTION(BlueprintCallable, Category="Controller")
66 // virtual void GetControllerViewPoint(FVector& out_Location, FRotator& out_Rotation) const = 0;
67 UFUNCTION(BlueprintCallable, Category="Controller")
68 virtual FVector2D GetScreenCenter() const = 0;
69
70 // GetPlayerViewPoint(Location, Rotation);/
71 //@ TODO this should just be POP Widget, by FGameplayTag
72 UFUNCTION(BlueprintCallable, Category="Controller")
73 virtual void ToggleGameLog() = 0;
74};
Definition PlayerControllerInterface.h:21
Definition PlayerControllerInterface.h:13
Definition RadialWheelData.h:100