#include <ScenarioCutsceneWidget.h>
◆ UScenarioCutsceneWidget()
| UScenarioCutsceneWidget::UScenarioCutsceneWidget |
( |
const FObjectInitializer & |
ObjectInitializer | ) |
|
14 : Super(ObjectInitializer)
15{
16 SetIsFocusable(true);
17}
◆ AdvanceCutscene()
| void UScenarioCutsceneWidget::AdvanceCutscene |
( |
| ) |
|
111{
113 {
115 {
117 }
118 else
119 {
121 }
122 }
124 {
126 }
128 {
129
130 }
131}
◆ ApplyCutsceneLine()
| void UScenarioCutsceneWidget::ApplyCutsceneLine |
( |
const FText & |
SpeakerNameText, |
|
|
const FText & |
DialogTextValue, |
|
|
const FText & |
CutscenePathText |
|
) |
| |
|
private |
135{
137 {
138 DialogBox->SetVisibility(ESlateVisibility::Visible);
139 }
140 else
141 {
143 }
144
146 {
148 SpeakerName->SetJustification(ETextJustify::Center);
149 }
150 else
151 {
153 }
154
157}
#define LOG_ERROR(Category, Format,...)
Definition CK_UE.h:40
#define NAMEOF_VAR(Expr)
Definition CK_UE.h:34
◆ ConfigureTypewriter()
| FORCEINLINE void UScenarioCutsceneWidget::ConfigureTypewriter |
( |
bool |
bInUseTypewriter, |
|
|
float |
InCharactersPerSecond |
|
) |
| |
◆ FinishCutscene()
| void UScenarioCutsceneWidget::FinishCutscene |
( |
| ) |
|
|
private |
257{
259 {
260 return;
261 }
262
265}
◆ FinishTypingCurrentLine()
| void UScenarioCutsceneWidget::FinishTypingCurrentLine |
( |
| ) |
|
|
private |
241{
243 {
244 return;
245 }
246
253}
◆ GetCutsceneState()
◆ IsAdvanceInputKey()
| FORCEINLINE bool UScenarioCutsceneWidget::IsAdvanceInputKey |
( |
const FKey & |
Key | ) |
const |
|
private |
139{
140 return Key == EKeys::SpaceBar;
141}
◆ IsCutsceneFinished()
| FORCEINLINE bool UScenarioCutsceneWidget::IsCutsceneFinished |
( |
| ) |
const |
◆ NativeConstruct()
| void UScenarioCutsceneWidget::NativeConstruct |
( |
| ) |
|
|
overridevirtual |
21{
22 Super::NativeConstruct();
24}
◆ NativeOnKeyDown()
| FReply UScenarioCutsceneWidget::NativeOnKeyDown |
( |
const FGeometry & |
InGeometry, |
|
|
const FKeyEvent & |
InKeyEvent |
|
) |
| |
|
overridevirtual |
60{
62 {
64 return FReply::Handled();
65 }
66 else
67 {
68 return Super::NativeOnKeyDown(InGeometry, InKeyEvent);
69 }
70}
◆ NativeOnMouseButtonDown()
| FReply UScenarioCutsceneWidget::NativeOnMouseButtonDown |
( |
const FGeometry & |
InGeometry, |
|
|
const FPointerEvent & |
InMouseEvent |
|
) |
| |
|
overridevirtual |
74{
75 if (InMouseEvent.GetEffectingButton() == EKeys::LeftMouseButton)
76 {
78 return FReply::Handled();
79 }
80 else
81 {
82 return Super::NativeOnMouseButtonDown(InGeometry, InMouseEvent);
83 }
84}
◆ NativeTick()
| void UScenarioCutsceneWidget::NativeTick |
( |
const FGeometry & |
MyGeometry, |
|
|
float |
InDeltaTime |
|
) |
| |
|
overridevirtual |
28{
29 Super::NativeTick(MyGeometry, InDeltaTime);
30
32 {
33 return;
34 }
35
37 {
39 return;
40 }
41
43
45 const FText VisibleDialogText = FText::FromString(
CurrentDialogString.Left(VisibleCharacterCount));
46
49
51 {
52 return;
53 }
54
56}
◆ OnCutsceneDialogTextChanged()
| void UScenarioCutsceneWidget::OnCutsceneDialogTextChanged |
( |
const FText & |
DialogTextValue | ) |
|
|
protected |
◆ OnCutsceneFinished()
| void UScenarioCutsceneWidget::OnCutsceneFinished |
( |
| ) |
|
|
protected |
◆ OnCutsceneLineChanged()
| void UScenarioCutsceneWidget::OnCutsceneLineChanged |
( |
const FDT_ScenarioCutsceneTable & |
CutsceneRow, |
|
|
const FText & |
SpeakerNameText, |
|
|
const FText & |
DialogTextValue, |
|
|
const FText & |
CutscenePathText |
|
) |
| |
|
protected |
◆ OnCutsceneStarted()
| void UScenarioCutsceneWidget::OnCutsceneStarted |
( |
| ) |
|
|
protected |
◆ OnCutsceneWaitingInput()
| void UScenarioCutsceneWidget::OnCutsceneWaitingInput |
( |
| ) |
|
|
protected |
◆ SetCutsceneImageInternal()
| void UScenarioCutsceneWidget::SetCutsceneImageInternal |
( |
const FText & |
CutscenePathText | ) |
|
|
private |
175{
177 {
179 return;
180 }
181
182 const FString CutscenePath = CutscenePathText.ToString();
183
184 if (CutscenePath.IsEmpty())
185 {
187 return;
188 }
189
190 UTexture2D* CutsceneTexture = LoadObject<UTexture2D>(nullptr, *CutscenePath);
191
192 if (IsValid(CutsceneTexture))
193 {
196 }
197 else
198 {
200 LOG_WARNING(LogCK,
"Cutscene texture 로드 실패: %s", *CutscenePath);
201 }
202}
#define LOG_WARNING(Category, Format,...)
Definition CK_UE.h:39
◆ SetDialogTextInternal()
| void UScenarioCutsceneWidget::SetDialogTextInternal |
( |
const FText & |
DialogTextValue | ) |
|
|
private |
161{
163 {
165 DialogText->SetJustification(ETextJustify::Center);
166 }
167 else
168 {
170 }
171}
◆ ShowCurrentLine()
| void UScenarioCutsceneWidget::ShowCurrentLine |
( |
| ) |
|
|
private |
206{
208 {
210 return;
211 }
212
214 const FText SpeakerNameText = FText::FromName(CurrentRow.
Character_Name);
215 const FText FullDialogText = FText::FromName(CurrentRow.
Cutscene_Dialog);
216
219
221 {
227 }
228 else
229 {
236 }
237}
Definition DT_ScenarioCutsceneTable.h:10
FText Cutscene_Path
Definition DT_ScenarioCutsceneTable.h:41
FName Cutscene_Dialog
Definition DT_ScenarioCutsceneTable.h:38
FName Character_Name
Definition DT_ScenarioCutsceneTable.h:35
◆ SkipCutscene()
| FORCEINLINE void UScenarioCutsceneWidget::SkipCutscene |
( |
| ) |
|
◆ StartCutscene()
88{
94
96 SetKeyboardFocus();
97
99 {
101 }
102 else
103 {
106 }
107}
◆ bUseTypewriter
| bool UScenarioCutsceneWidget::bUseTypewriter = false |
|
private |
◆ CharactersPerSecond
| float UScenarioCutsceneWidget::CharactersPerSecond = 40.0f |
|
private |
◆ CurrentDialogString
| FString UScenarioCutsceneWidget::CurrentDialogString |
|
private |
◆ CurrentRowIndex
| int32 UScenarioCutsceneWidget::CurrentRowIndex = INDEX_NONE |
|
private |
◆ CutsceneImage
| TObjectPtr<UImage> UScenarioCutsceneWidget::CutsceneImage |
|
protected |
◆ CutsceneRows
◆ CutsceneState
◆ DialogBox
| TObjectPtr<UWidget> UScenarioCutsceneWidget::DialogBox |
|
protected |
◆ DialogText
| TObjectPtr<UTextBlock> UScenarioCutsceneWidget::DialogText |
|
protected |
◆ SpeakerName
| TObjectPtr<UTextBlock> UScenarioCutsceneWidget::SpeakerName |
|
protected |
◆ TypingProgress
| float UScenarioCutsceneWidget::TypingProgress = 0.0f |
|
private |
이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: