Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
UDamageTextWidget 클래스 참조

UDamageTextWidget가 질 책임은 NumberWidget을 관리하는 것 . 더 자세히 ...

#include <DamageTextWidget.h>

UDamageTextWidget에 대한 상속 다이어그램 :
Inheritance graph
UDamageTextWidget에 대한 협력 다이어그램:
Collaboration graph

Public 멤버 함수

bool TryPreAllocation (int32 DamageStringLength)
 
void SetAndShowDamageText (const int32 DamageStringLength, const TArray< UTexture2D * > NumberTextures)
 
FORCEINLINE int32 GetDamageTextCount ()
 
FORCEINLINE float GetActiveInterval ()
 
- UUserWidgetBase(으)로부터 상속된 Public 멤버 함수
virtual void SetAbilitySystemComponent (AActor *InOwner)
 
virtual UAbilitySystemComponent * GetAbilitySystemComponent () const override
 
virtual void OnPushedToLayer ()
 
virtual void OnPoppedFromLayer ()
 
virtual void OnActivated ()
 
virtual void OnDeactivated ()
 
void Activate ()
 
void Deactivate ()
 
FORCEINLINE FGameplayTag GetLayerTag () const
 
FORCEINLINE void SetLayerTag (const FGameplayTag InTag)
 
FORCEINLINE bool IsPrimary () const
 
FORCEINLINE void SetPrimary (const bool InPrimary)
 
FORCEINLINE EWidgetState GetWidgetState () const
 
FORCEINLINE void SetWidgetState (const EWidgetState InState)
 
FORCEINLINE UWaitForWidgetActivationGetActivationHandle ()
 
FORCEINLINE bool HasAppearanceAnim () const
 
FORCEINLINE bool HasDisappearanceAnim () const
 

Protected 멤버 함수

virtual void NativeConstruct () override
 
UWrapBoxSlot * SpawnDamageNumberWidgets (int32 Index, UTexture2D *NumberTexture)
 
void OnFinishedDamageNumberTextAnimation (UDamageNumberWidget *Widget, EWidgetState AnimState)
 
void ScheduleDamageNumberSpawns (int32 DamageStringLength, const TArray< UTexture2D * > &NumberTextures)
 
- UUserWidgetBase(으)로부터 상속된 Protected 멤버 함수
virtual void OnWidgetActivated ()
 
virtual void OnWidgetDeactivated ()
 
void OnPushedToLayer_Internal ()
 
void OnPoppedFromLayer_Internal ()
 
void OnActivated_Internal ()
 
void OnDeactivated_Internal ()
 

Protected 속성

float ActiveInterval = 0.1f
 
TSubclassOf< UDamageNumberWidgetDamageNumberWidgetClass
 
TObjectPtr< UWrapBox > DamageTextureContainer
 
TArray< TObjectPtr< UDamageNumberWidget > > CachedDamageNumberWidgets
 
int32 FinishedDamageNumberWidgetCount = 0
 
- UUserWidgetBase(으)로부터 상속된 Protected 속성
EWidgetState WidgetState
 
TObjectPtr< UAbilitySystemComponent > ASC
 
FGameplayTag LayerTag
 
bool bPrimary = false
 
TObjectPtr< UWidgetAnimation > AppearanceAnim
 
TObjectPtr< UWidgetAnimation > DisappearanceAnim
 

상세한 설명

UDamageTextWidget가 질 책임은 NumberWidget을 관리하는 것 .

멤버 함수 문서화

◆ GetActiveInterval()

FORCEINLINE float UDamageTextWidget::GetActiveInterval ( )
inline
37 {
38 return ActiveInterval;
39 }
float ActiveInterval
Definition DamageTextWidget.h:56

◆ GetDamageTextCount()

FORCEINLINE int32 UDamageTextWidget::GetDamageTextCount ( )
inline
31 {
32 return CachedDamageNumberWidgets.Num();
33 }
TArray< TObjectPtr< UDamageNumberWidget > > CachedDamageNumberWidgets
Definition DamageTextWidget.h:65

◆ NativeConstruct()

void UDamageTextWidget::NativeConstruct ( )
overrideprotectedvirtual
25{
26 Super::NativeConstruct();
27
28 LayerTag = TAG_UI_LAYER_HUD;
29}
FGameplayTag LayerTag
Definition UserWidgetBase.h:126

◆ OnFinishedDamageNumberTextAnimation()

void UDamageTextWidget::OnFinishedDamageNumberTextAnimation ( UDamageNumberWidget Widget,
EWidgetState  AnimState 
)
protected
73{
74 if (Widget == nullptr)
75 {
76 LOG_ERROR(LogCK, "비상!");
77 return;
78 }
79
80 if (State != EWidgetState::Disappeared)
81 {
82 return;
83 }
84
86
87 if (FinishedDamageNumberWidgetCount < DamageTextureContainer->GetChildrenCount())
88 {
89 return;
90 }
91
93 Deactivate();
94}
#define LOG_ERROR(Category, Format,...)
Definition CK_UE.h:40
int32 FinishedDamageNumberWidgetCount
Definition DamageTextWidget.h:68
void Deactivate()
Definition UserWidgetBase.cpp:87
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ ScheduleDamageNumberSpawns()

void UDamageTextWidget::ScheduleDamageNumberSpawns ( int32  DamageStringLength,
const TArray< UTexture2D * > &  NumberTextures 
)
protected
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetAndShowDamageText()

void UDamageTextWidget::SetAndShowDamageText ( const int32  DamageStringLength,
const TArray< UTexture2D * >  NumberTextures 
)
13{
14 if (TryPreAllocation(DamageStringLength) == false)
15 {
16 LOG_ERROR(LogCK, "데미지 텍스처에 쓰일 텍스처들을 사전 캐싱에 실패했습니다. ");
17 return;
18 }
19
20 ScheduleDamageNumberSpawns(DamageStringLength, NumberTextures);
21}
void ScheduleDamageNumberSpawns(int32 DamageStringLength, const TArray< UTexture2D * > &NumberTextures)
bool TryPreAllocation(int32 DamageStringLength)
Definition DamageTextWidget.cpp:32
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ SpawnDamageNumberWidgets()

UWrapBoxSlot * UDamageTextWidget::SpawnDamageNumberWidgets ( int32  Index,
UTexture2D *  NumberTexture 
)
protected
51{
52 if (!ensureAlwaysMsgf(CachedDamageNumberWidgets[Index], TEXT("%s가 유요하지 않습니다. "), NAMEOF(UDamageNumberWidget)))
53 {
54 return nullptr;
55 }
56
57 UDamageNumberWidget* Widget = Cast<UDamageNumberWidget>(CachedDamageNumberWidgets[Index]);
58
59 if (!ensureAlwaysMsgf(Widget, TEXT("%s가 유요하지 않습니다. "), NAMEOF(UDamageNumberWidget)))
60 {
61 return nullptr;
62 }
63
64 UWrapBoxSlot* BoxSlot = DamageTextureContainer->AddChildToWrapBox(Widget);
65
66 Widget->SetDamageTexture(NumberTexture);
67 Widget->PlayDamageAnimation();
68 return BoxSlot;
69}
#define NAMEOF(Type)
Definition CK_UE.h:30
Definition DamageNumberWidget.h:25
void PlayDamageAnimation()
Definition DamageNumberWidget.cpp:49
FORCEINLINE void SetDamageTexture(UTexture2D *Texture)
Definition DamageNumberWidget.h:32
TObjectPtr< UWrapBox > DamageTextureContainer
Definition DamageTextWidget.h:62
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ TryPreAllocation()

bool UDamageTextWidget::TryPreAllocation ( int32  DamageStringLength)
33{
34 if (CachedDamageNumberWidgets.Num() >= DamageStringLength)
35 {
36 return true;
37 }
38
39 for (int Idx = CachedDamageNumberWidgets.Num(); Idx < DamageStringLength; ++Idx)
40 {
41 UDamageNumberWidget* CreatedWidget = CreateWidget<UDamageNumberWidget>(this, DamageNumberWidgetClass.Get());
42 CachedDamageNumberWidgets.Add(CreatedWidget);
44 }
45
46 return true;
47}
FOnDamageAnimFinished OnDamageAnimFinished
Definition DamageNumberWidget.h:63
void OnFinishedDamageNumberTextAnimation(UDamageNumberWidget *Widget, EWidgetState AnimState)
Definition DamageTextWidget.cpp:72
TSubclassOf< UDamageNumberWidget > DamageNumberWidgetClass
Definition DamageTextWidget.h:59
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ ActiveInterval

float UDamageTextWidget::ActiveInterval = 0.1f
protected

◆ CachedDamageNumberWidgets

TArray<TObjectPtr<UDamageNumberWidget> > UDamageTextWidget::CachedDamageNumberWidgets
protected

◆ DamageNumberWidgetClass

TSubclassOf<UDamageNumberWidget> UDamageTextWidget::DamageNumberWidgetClass
protected

◆ DamageTextureContainer

TObjectPtr<UWrapBox> UDamageTextWidget::DamageTextureContainer
protected

◆ FinishedDamageNumberWidgetCount

int32 UDamageTextWidget::FinishedDamageNumberWidgetCount = 0
protected

이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: