Added debug widget
This commit is contained in:
parent
fc9bbec5d2
commit
bf16d0f2dc
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -5,7 +5,9 @@
|
|||
|
||||
#include "Announcement.h"
|
||||
#include "CharacterOverlay.h"
|
||||
#include "DebugWidget.h"
|
||||
#include "Blueprint/UserWidget.h"
|
||||
#include "Components/TextBlock.h"
|
||||
|
||||
void ABlasterHUD::BeginPlay()
|
||||
{
|
||||
|
@ -32,6 +34,17 @@ void ABlasterHUD::AddAnnouncement()
|
|||
}
|
||||
}
|
||||
|
||||
void ABlasterHUD::AddDebugWidget()
|
||||
{
|
||||
APlayerController* PlayerController = GetOwningPlayerController();
|
||||
if (PlayerController && DebugWidgetClass)
|
||||
{
|
||||
DebugWidget = CreateWidget<UDebugWidget>(PlayerController, DebugWidgetClass);
|
||||
DebugWidget->DebugMsg1->SetText(FText::FromString(TEXT("Test")));
|
||||
DebugWidget->AddToViewport();
|
||||
}
|
||||
}
|
||||
|
||||
void ABlasterHUD::DrawHUD()
|
||||
{
|
||||
Super::DrawHUD();
|
||||
|
|
|
@ -33,6 +33,7 @@ public:
|
|||
virtual void DrawHUD() override;
|
||||
void AddCharacterOverlay();
|
||||
void AddAnnouncement();
|
||||
void AddDebugWidget();
|
||||
|
||||
UPROPERTY(EditAnywhere, Category = "Player Stats")
|
||||
TSubclassOf<class UUserWidget> CharacterOverlayClass;
|
||||
|
@ -40,6 +41,12 @@ public:
|
|||
UPROPERTY()
|
||||
class UCharacterOverlay* CharacterOverlay;
|
||||
|
||||
UPROPERTY()
|
||||
class UDebugWidget* DebugWidget;
|
||||
|
||||
UPROPERTY(EditAnywhere, Category = "Widget")
|
||||
TSubclassOf<class UUserWidget> DebugWidgetClass;
|
||||
|
||||
UPROPERTY(EditAnywhere, Category = "Announcements")
|
||||
TSubclassOf<class UUserWidget> AnnouncementClass;
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
|
||||
#include "DebugWidget.h"
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "Blueprint/UserWidget.h"
|
||||
#include "DebugWidget.generated.h"
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
UCLASS()
|
||||
class BLASTER_API UDebugWidget : public UUserWidget
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
class UTextBlock* DebugMsg1;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
UTextBlock* DebugMsg2;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
UTextBlock* DebugMsg3;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
UTextBlock* DebugMsg4;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
UTextBlock* DebugMsg5;
|
||||
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
UTextBlock* DebugMsg6;
|
||||
|
||||
|
||||
};
|
|
@ -8,6 +8,7 @@
|
|||
#include "Blaster/HUD/Announcement.h"
|
||||
#include "Blaster/HUD/BlasterHUD.h"
|
||||
#include "Blaster/HUD/CharacterOverlay.h"
|
||||
#include "Blaster/HUD/DebugWidget.h"
|
||||
#include "Components/ProgressBar.h"
|
||||
#include "Components/TextBlock.h"
|
||||
#include "GameFramework/GameMode.h"
|
||||
|
@ -37,6 +38,12 @@ void ABlasterPlayerController::Tick(float DeltaTime)
|
|||
SetHUDTime();
|
||||
CheckTimeSync(DeltaTime);
|
||||
PollInit();
|
||||
|
||||
if (DebugWidget)
|
||||
{
|
||||
SetDebugMsg1(TEXT("ServerTime: "), FString::Printf(TEXT("%02f"), GetServerTime()));
|
||||
SetDebugMsg2(TEXT("ClientServerDelta: "), FString::Printf(TEXT("%02f"), ClientServerDelta));
|
||||
}
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::CheckTimeSync(float DeltaTime)
|
||||
|
@ -74,6 +81,7 @@ void ABlasterPlayerController::ClientJoinMidgame_Implementation(FName StateOfMat
|
|||
if (BlasterHUD && MatchState == MatchState::WaitingToStart)
|
||||
{
|
||||
BlasterHUD->AddAnnouncement();
|
||||
BlasterHUD->AddDebugWidget();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -217,6 +225,42 @@ void ABlasterPlayerController::SetHUDAnnouncementCountdown(float CountdownTime)
|
|||
}
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg1(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg1;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg1->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg2(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg2;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg2->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg3(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg3;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg3->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg4(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg4;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg4->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg5(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg5;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg5->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetDebugMsg6(FString Key, FString Value)
|
||||
{
|
||||
bool bHUDValid = BlasterHUD && BlasterHUD->DebugWidget && BlasterHUD->DebugWidget->DebugMsg6;
|
||||
if (bHUDValid) BlasterHUD->DebugWidget->DebugMsg6->SetText(FText::FromString(Key.Append(Value)));
|
||||
}
|
||||
|
||||
void ABlasterPlayerController::SetHUDTime()
|
||||
{
|
||||
float TimeLeft = 0.f;
|
||||
|
@ -252,6 +296,14 @@ void ABlasterPlayerController::SetHUDTime()
|
|||
|
||||
void ABlasterPlayerController::PollInit()
|
||||
{
|
||||
if (DebugWidget == nullptr)
|
||||
{
|
||||
if (BlasterHUD && BlasterHUD->DebugWidget)
|
||||
{
|
||||
DebugWidget = BlasterHUD->DebugWidget;
|
||||
}
|
||||
}
|
||||
|
||||
if (CharacterOverlay == nullptr)
|
||||
{
|
||||
if (BlasterHUD && BlasterHUD->CharacterOverlay)
|
||||
|
|
|
@ -27,6 +27,12 @@ public:
|
|||
void SetHUDCarriedAmmo(int32 Ammo);
|
||||
void SetHUDMatchCountdown(float CountdownTime);
|
||||
void SetHUDAnnouncementCountdown(float CountdownTime);
|
||||
void SetDebugMsg1(FString Key, FString Value);
|
||||
void SetDebugMsg2(FString Key, FString Value);
|
||||
void SetDebugMsg3(FString Key, FString Value);
|
||||
void SetDebugMsg4(FString Key, FString Value);
|
||||
void SetDebugMsg5(FString Key, FString Value);
|
||||
void SetDebugMsg6(FString Key, FString Value);
|
||||
|
||||
// Synced with server world clock
|
||||
virtual float GetServerTime();
|
||||
|
@ -84,6 +90,9 @@ private:
|
|||
UFUNCTION()
|
||||
void OnRep_MatchState();
|
||||
|
||||
UPROPERTY()
|
||||
class UDebugWidget* DebugWidget;
|
||||
|
||||
UPROPERTY()
|
||||
class UCharacterOverlay* CharacterOverlay;
|
||||
bool bInitializeCharacterOverlay = false;
|
||||
|
|
Loading…
Reference in New Issue