5#include "CoreMinimal.h"
7#include "GameFramework/HUD.h"
8#include "ProjectXHUD.generated.h"
26 virtual void BeginPlay()
override;
27 virtual void EndPlay(
const EEndPlayReason::Type EndPlayReason)
override;
28 virtual void DrawHUD()
override;
29 virtual void ShowHUD()
override;
30 virtual void PlayerDeath();
32 UFUNCTION(BlueprintCallable, Category =
"Menus")
34 UFUNCTION(BlueprintCallable, Category =
"Menus")
35 UAdvancedUserWidget* CreateMenuWidget(TSubclassOf<UAdvancedUserWidget> WidgetClass, int32 ZOrder = 1);
37 UFUNCTION(BlueprintCallable, Category =
"HUD")
39 UFUNCTION(BlueprintCallable, Category =
"HUD")
40 void RemoveHUDUserWidget(UUserWidget*
Widget);
42 UFUNCTION(BlueprintPure, Category =
"Accessors")
43 UUserWidget* GetWidgetByType(TSubclassOf<UUserWidget> WidgetClass)
const;
45 UFUNCTION(BlueprintCallable, Category =
"HUD")
46 UReticleWidget* UpdateReticleWidget(TSubclassOf<UReticleWidget> WidgetClass);
48 UFUNCTION(BlueprintCallable, Category =
"HUD")
49 void OpenPostGameMenu();
50 UFUNCTION(BlueprintCallable, Category =
"HUD")
51 void ShowMatchResultWidget();
52 UFUNCTION(BlueprintCallable, Category =
"HUD")
54 UFUNCTION(BlueprintCallable, Category =
"HUD")
55 void OpenFollowScreen();
56 UFUNCTION(BlueprintCallable,Category =
"HUD")
57 void CloseQuickChat();
58 UFUNCTION(BlueprintCallable, Category =
"HUD")
59 void ToggleNVIDIAReflexStats(
bool bVisibility);
60 UFUNCTION(BlueprintPure, Category =
HUD)
62 UFUNCTION(BlueprintPure, Category =
HUD)
63 UUserWidget* GetMapWidget()
const {
return GetWidgetByType(MapWidgetClass); }
64 UFUNCTION(BlueprintPure, Category =
HUD)
66 UFUNCTION(BlueprintImplementableEvent, Category =
"HUD")
68 UFUNCTION(BlueprintCallable, Category =
HUD)
69 virtual
void DeferredOpenMap(
float Delay = -1.f);
74 UPROPERTY(BlueprintAssignable)
75 FOnHUDVisibilityChanged OnHUDVisibilityChanged;
79 void DrawProjectileDebug();
84 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
86 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
88 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
90 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
92 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
94 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
96 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
98 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
100 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
102 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
104 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
106 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
107 TSubclassOf<UUserWidget> GameModeWidgetClass;
108 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
110 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
112 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
114 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
116 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
117 TSubclassOf<UUserWidget> FollowWidgetClass;
118 UPROPERTY(EditDefaultsOnly)
119 TSubclassOf<AActor> InGameLoadoutDisplayClass;
120 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Menus", meta = (AllowPrivateAccess = true))
131 UPROPERTY(EditDefaultsOnly, Category = "
Debug", meta = (AllowPrivateAccess = true))
132 class UFont* DebugFont = NULL;
134 UPROPERTY(EditDefaultsOnly, Category = "UI", meta = (AllowPrivateAccess = true))
135 float PostGameUIDelay = 5.0f;
137 UPROPERTY(EditDefaultsOnly, Category = "UI", meta = (AllowPrivateAccess = true))
138 float PodiumDuration = 10.0f;
140 UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "UI", meta = (AllowPrivateAccess = true))
141 float TimeBeforeShowingMapOnDeath = 12.0f;
145 UFUNCTION(BlueprintPure, Category = "UI", meta = (WorldContext = "WorldContextObject"))
146 static
AProjectXHUD* GetHUD(const UObject* WorldContextObject, const int32 Slot = 0);
147 UFUNCTION(BlueprintCallable, Category = "UI", meta = (WorldContext = "WorldContextObject"))
148 static
UContextMenuWidget* CreateContextMenu(const UObject* WorldContextObject, TArray<
FContextMenuOption> const ContextMenuOptions, const FText Title, const
bool bIsDismissable = true, const UObject* ContextObject =
nullptr);
149 UFUNCTION(BlueprintCallable, Category = "UI", meta = (WorldContext = "WorldContextObject"))
150 static
UContextMenuWidget* CreateGlobalMessageDialogue(const UObject* WorldContextObject, const
FContextMenuOption ContextMenuOption1, const
FContextMenuOption ContextMenuOption2, const FText Title, const FText Message, const
bool bIsDismissable = true, const UObject* ContextObject =
nullptr);
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnHUDVisibilityChanged, bool, bShowHUD)
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnHUDDestroyed)
Definition: ProjectXHUD.h:20
TSubclassOf< UAdvancedUserWidget > GetDeployScreenWidget() const
Definition: ProjectXHUD.h:72
TSubclassOf< AActor > GetDisplayMeshClass() const
Definition: ProjectXHUD.h:73
Definition: ProjectXGameViewportClient.h:23