Payback 0.0.1
CK Graduation Project
로딩중...
검색중...
일치하는것 없음
DamageTextWidget.h
이 파일의 문서화 페이지로 가기
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UI/UserWidgetBase.h"
7#include "DamageTextWidget.generated.h"
8
9class UWrapBoxSlot;
10class UWrapBox;
12class UTextBlock;
13
15
16UCLASS()
17class CK_UE_API UDamageTextWidget : public UUserWidgetBase
18{
19 GENERATED_BODY()
20
21public:
22 bool TryPreAllocation(int32 DamageStringLength);
23
24public:
25 UFUNCTION(BlueprintCallable, Category = "DamageText")
26 void SetAndShowDamageText(const int32 DamageStringLength, const TArray<UTexture2D*> NumberTextures);
27
28public:
29 UFUNCTION(BlueprintPure, Category = "DamageText")
30 FORCEINLINE int32 GetDamageTextCount()
31 {
32 return CachedDamageNumberWidgets.Num();
33 }
34
35 UFUNCTION(BlueprintPure, Category = "DamageText")
36 FORCEINLINE float GetActiveInterval()
37 {
38 return ActiveInterval;
39 }
40
41protected:
42 virtual void NativeConstruct() override;
43
44 UFUNCTION(BlueprintCallable, Category = "DamageText")
45 UWrapBoxSlot* SpawnDamageNumberWidgets(int32 Index, UTexture2D* NumberTexture);
46
47 UFUNCTION()
48 void OnFinishedDamageNumberTextAnimation(UDamageNumberWidget* Widget, EWidgetState AnimState);
49
50 UFUNCTION(BlueprintImplementableEvent, Category = "DamageText")
51 void ScheduleDamageNumberSpawns(int32 DamageStringLength, const TArray<UTexture2D*>& NumberTextures);
52
53protected:
54 //Number 위젯들을 활성화시키는 간격.
55 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DamageText", meta = (ClampMin = 0.01f, ClampMax = 2.0f))
56 float ActiveInterval = 0.1f;
57
58 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DamageText")
59 TSubclassOf<UDamageNumberWidget> DamageNumberWidgetClass;
60
61 UPROPERTY(BlueprintReadWrite, Category = "DamageText", meta = (BindWidget))
62 TObjectPtr<UWrapBox> DamageTextureContainer;
63
64 UPROPERTY(Transient)
65 TArray<TObjectPtr<UDamageNumberWidget>> CachedDamageNumberWidgets;
66
67protected:
68 int32 FinishedDamageNumberWidgetCount = 0;
69};
EWidgetState
Definition UserWidgetBase.h:19
Definition DamageNumberWidget.h:25
UDamageTextWidget가 질 책임은 NumberWidget을 관리하는 것 .
Definition DamageTextWidget.h:18
Definition UserWidgetBase.h:33