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

#include <HitMarkerConfirmationWidget.h>

Inheritance diagram for UHitMarkerConfirmationWidget:
IHitMarkerInterface

Public Member Functions

 UHitMarkerConfirmationWidget (const FObjectInitializer &ObjectInitializer)
 
virtual void HitMarker (const AActor *ActorHit, const float Damage, const UDamageType *DamageType, const FName HitBone, const FVector HitLocation, const bool bKillingHit=false, const bool bInjuredPart=false) override
 
virtual void ReleaseSlateResources (bool bReleaseChildren) override
 

Public Attributes

float HitNotifyDuration = 0.4f
 
FSlateBrush PerHitMarkerImage
 
TMap< FGameplayTag, FSlateBrush > PerHitMarkerZoneOverrideImages
 
FSlateBrush AnyHitsMarkerImage
 

Protected Member Functions

virtual TSharedRef< SWidget > RebuildWidget () override
 

Private Attributes

TSharedPtr< SHitMarkerConfirmationWidgetMyMarkerWidget
 

Constructor & Destructor Documentation

◆ UHitMarkerConfirmationWidget()

UHitMarkerConfirmationWidget::UHitMarkerConfirmationWidget ( const FObjectInitializer & ObjectInitializer)
13 : Super(ObjectInitializer)
14{
15 SetVisibility(ESlateVisibility::HitTestInvisible);
16 bIsVolatile = true;
17 AnyHitsMarkerImage.DrawAs = ESlateBrushDrawType::NoDrawType;
18}
FSlateBrush AnyHitsMarkerImage
Definition HitMarkerConfirmationWidget.h:56

Member Function Documentation

◆ HitMarker()

void UHitMarkerConfirmationWidget::HitMarker ( const AActor * ActorHit,
const float Damage,
const UDamageType * DamageType,
const FName HitBone,
const FVector HitLocation,
const bool bKillingHit = false,
const bool bInjuredPart = false )
overridevirtual

Implements IHitMarkerInterface.

22{
23 if(MyMarkerWidget == nullptr){return;}
24 MyMarkerWidget->HitMarker(ActorHit, Damage, HitBone, HitLocation);
25}
TSharedPtr< SHitMarkerConfirmationWidget > MyMarkerWidget
Definition HitMarkerConfirmationWidget.h:60

◆ RebuildWidget()

TSharedRef< SWidget > UHitMarkerConfirmationWidget::RebuildWidget ( )
overrideprotectedvirtual
36{
37 UUserWidget* OuterUserWidget = GetTypedOuter<UUserWidget>();
38 FLocalPlayerContext DummyContext;
39 const FLocalPlayerContext& PlayerContextRef = (OuterUserWidget != nullptr) ? OuterUserWidget->GetPlayerContext() : DummyContext;
40
42 .PerHitMarkerImage(&(this->PerHitMarkerImage))
43 .AnyHitsMarkerImage(&(this->AnyHitsMarkerImage))
44 .HitNotifyDuration(this->HitNotifyDuration);
45
46 return MyMarkerWidget.ToSharedRef();
47}
Definition SHitMarkerConfirmationWidget.h:22
float HitNotifyDuration
Definition HitMarkerConfirmationWidget.h:44
TMap< FGameplayTag, FSlateBrush > PerHitMarkerZoneOverrideImages
Definition HitMarkerConfirmationWidget.h:52
FSlateBrush PerHitMarkerImage
Definition HitMarkerConfirmationWidget.h:48

◆ ReleaseSlateResources()

void UHitMarkerConfirmationWidget::ReleaseSlateResources ( bool bReleaseChildren)
overridevirtual
29{
30 Super::ReleaseSlateResources(bReleaseChildren);
31 if(MyMarkerWidget == nullptr){return;}
32 MyMarkerWidget.Reset();
33}

Member Data Documentation

◆ AnyHitsMarkerImage

FSlateBrush UHitMarkerConfirmationWidget::AnyHitsMarkerImage

The marker image to draw if there are any hits at all.

◆ HitNotifyDuration

float UHitMarkerConfirmationWidget::HitNotifyDuration = 0.4f

The duration (in seconds) to display hit notifies (they fade to transparent over this time)

◆ MyMarkerWidget

TSharedPtr<SHitMarkerConfirmationWidget> UHitMarkerConfirmationWidget::MyMarkerWidget
private

Internal slate widget representing the actual marker visuals

◆ PerHitMarkerImage

FSlateBrush UHitMarkerConfirmationWidget::PerHitMarkerImage

The marker image to draw for individual hit markers.

◆ PerHitMarkerZoneOverrideImages

TMap<FGameplayTag, FSlateBrush> UHitMarkerConfirmationWidget::PerHitMarkerZoneOverrideImages

Map from zone tag (e.g., weak spot) to override marker images for individual location hits.


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