Space Plunder
Loading...
Searching...
No Matches
UKillFeedWidget Class Reference

#include <KillFeedWidget.h>

Inheritance diagram for UKillFeedWidget:

Public Member Functions

 UKillFeedWidget (const FObjectInitializer &ObjectInitializer)
 
virtual bool Initialize () override
 
void AddKill (const FPlayerDeath &PlayerDeath)
 

Protected Attributes

class UScrollBox * ScrollBox
 
TMap< EDeathType, class UTexture2D * > DeathIconMap
 
int32 MaxMessages = 5
 
TSubclassOf< class UKillFeedMessageWidgetKillFeedMessageClass
 

Constructor & Destructor Documentation

◆ UKillFeedWidget()

UKillFeedWidget::UKillFeedWidget ( const FObjectInitializer & ObjectInitializer)
9 : Super(ObjectInitializer)
10{
11 const ConstructorHelpers::FClassFinder<UKillFeedMessageWidget> KillFeedMessageWidgetBP(TEXT("/MenuSystem/Widgets/Multiplayer/KillFeed/WBP_KillFeedMessage"));
12 if (!ensure(KillFeedMessageWidgetBP.Class != nullptr)) return;
13 KillFeedMessageClass = KillFeedMessageWidgetBP.Class;
14}
TSubclassOf< class UKillFeedMessageWidget > KillFeedMessageClass
Definition KillFeedWidget.h:36

Member Function Documentation

◆ AddKill()

void UKillFeedWidget::AddKill ( const FPlayerDeath & PlayerDeath)
27{
28 UKillFeedMessageWidget* KillFeedMessage = CreateWidget<UKillFeedMessageWidget>(GetOwningPlayer(), KillFeedMessageClass);
29 if(KillFeedMessage != nullptr)
30 {
31 KillFeedMessage->SetNames(PlayerDeath.Attacker, PlayerDeath.Victim);
32 if(DeathIconMap.Find(PlayerDeath.CauseOfDeath) != nullptr)
33 {
34 KillFeedMessage->SetDeathIcon(*DeathIconMap.Find(PlayerDeath.CauseOfDeath));
35 }
36 KillFeedMessage->SetTeamColors(PlayerDeath.AttackerTeamID, PlayerDeath.VictimTeamID);
37
38 if(ScrollBox->GetChildrenCount() >= MaxMessages)
39 {
40 ScrollBox->RemoveChildAt(0);
41 }
42 ScrollBox->AddChild(KillFeedMessage);
43 ScrollBox->ScrollToEnd();
44 }
45}
Definition KillFeedMessageWidget.h:11
void SetTeamColors(int32 AttackerTeamID, int32 VictimTeamID)
Definition KillFeedMessageWidget.cpp:57
void SetNames(FString AttackerName, FString VictimName)
Definition KillFeedMessageWidget.cpp:46
void SetDeathIcon(UTexture2D *Icon)
Definition KillFeedMessageWidget.cpp:29
class UScrollBox * ScrollBox
Definition KillFeedWidget.h:26
TMap< EDeathType, class UTexture2D * > DeathIconMap
Definition KillFeedWidget.h:28
int32 MaxMessages
Definition KillFeedWidget.h:33
FString Victim
Definition BaseData.h:619
FString Attacker
Definition BaseData.h:617
EDeathType CauseOfDeath
Definition BaseData.h:636
int32 AttackerTeamID
Definition BaseData.h:631
int32 VictimTeamID
Definition BaseData.h:633

◆ Initialize()

bool UKillFeedWidget::Initialize ( )
overridevirtual
17{
18 const bool Success = Super::Initialize();
19 if (!ensure(KillFeedMessageClass != nullptr)) return false;
20 if (!ensure(ScrollBox != nullptr)) return false;
21 if(!Success) return false;
22 ScrollBox->ScrollToEnd();
23 return true;
24}

Member Data Documentation

◆ DeathIconMap

TMap<EDeathType, class UTexture2D*> UKillFeedWidget::DeathIconMap
protected

◆ KillFeedMessageClass

TSubclassOf<class UKillFeedMessageWidget> UKillFeedWidget::KillFeedMessageClass
protected

◆ MaxMessages

int32 UKillFeedWidget::MaxMessages = 5
protected

◆ ScrollBox

class UScrollBox* UKillFeedWidget::ScrollBox
protected

The documentation for this class was generated from the following files: