5#include "GameplayTagContainer.h"
6#include "ExtendedDatas.generated.h"
22#pragma region Attack Combo Datas
31 UPROPERTY(EditDefaultsOnly, Category =
"Combo")
32 TObjectPtr<UAnimMontage> ComboMontage;
34 UPROPERTY(EditDefaultsOnly, Category = "Combo")
35 FString MontageSectionNamePrefix;
37 UPROPERTY(EditDefaultsOnly, Category = "Combo")
38 uint8 MaxComboCount = 0;
48 UPROPERTY(EditDefaultsOnly, Category =
"Animation")
49 TObjectPtr<UAnimMontage> PlayMontage;
58 UPROPERTY(EditDefaultsOnly, Category =
"Animation")
59 TMap<FGameplayTag, TObjectPtr<UAnimMontage>> PlayMontageMap;
68 UPROPERTY(EditDefaultsOnly, Category =
"Animation")
69 TObjectPtr<UAnimMontage> PlayMontage;
78 UPROPERTY(EditDefaultsOnly, Category =
"Cooldown", meta = (Categories =
"Cooldown"))
79 FGameplayTag CooldownTag;
81 UPROPERTY(EditDefaultsOnly, Category = "Cooldown")
82 float CooldownDuration = 1.0f;
84 UPROPERTY(EditDefaultsOnly, Category = "Cost")
85 float CostValue = 0.0f;
99 UPROPERTY(EditDefaultsOnly, Category =
"Rotation", meta = (ClampMin =
"0.0", ToolTip =
"공격 전 대상을 추적하며 회전하는 시간", Units = s))
100 float RotationDuration = 1.5f;
102 UPROPERTY(EditDefaultsOnly, Category = "Rotation", meta = (ClampMin = "0.0", ToolTip = "회전 보간 속도 계수입니다. 초당 회전 각도가 아니며, 값이 클수록 목표 방향을 빠르게 따라갑니다. 0이면 목표 방향으로 즉시 회전."))
103 float TurnSpeed = 10.0f;
105 UPROPERTY(EditDefaultsOnly, Category = "Rotation", meta = (ClampMin = "0.0", ToolTip = "목표 방향을 바라본 것으로 판단할 수평 각도 오차"))
106 float Tolerance = 0.0f;
115 UPROPERTY(EditDefaultsOnly, Category =
"DashAttack|Hit", meta = (ClampMin =
"1"))
116 int32 CombatHitDataIndex = 1;
118 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Section")
119 FName DashSectionName = FName("Dash_Start");
121 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Section")
122 FName EndSectionName = FName("Dash_End");
124 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Section", meta = (Categories = "Event"))
125 FGameplayTag ReadyEventTag;
127 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Move", meta = (ClampMin = "0.0"))
128 float DashSpeed = 1800.0f;
130 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Move", meta = (ClampMin = "0.0"))
131 float MaxDashDistance = 1400.0f;
133 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Rotation")
136 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Warning", meta = (ClampMin = "0.0"))
137 float WarningDuration = 3.0f;
139 UPROPERTY(EditDefaultsOnly, Category = "DashAttack|Decal")
149 UPROPERTY(EditDefaultsOnly, Category =
"RangedAttack|Hit", meta = (ClampMin =
"1"))
150 int32 CombatHitDataIndex = 1;
152 UPROPERTY(EditDefaultsOnly, Category = "RangedAttack", meta = (ToolTip = "발사체 클래스 선택"))
155 UPROPERTY(EditDefaultsOnly, Category = "RangedAttack", meta = (ToolTip = "발사체 메시 컴포넌트 태그"))
156 FName ProjectileComponentTag;
158 UPROPERTY(EditDefaultsOnly, Category = "RangedAttack", meta = (ToolTip = "발사체가 생성될 소켓 이름"))
159 FName ProjectileSpawnSocketName;
168 UPROPERTY(EditDefaultsOnly, Category =
"BossPattern|Section")
169 FName EndSectionName = FName("Section_End");
171 UPROPERTY(EditDefaultsOnly, Category = "BossPattern|Event", meta = (Categories = "Event"))
172 FGameplayTag LoopStartEventTag;
174 UPROPERTY(EditDefaultsOnly, Category = "BossPattern|Trace")
175 FVector TraceTransformLocalOffset = FVector(300.0f, 0.0f, 0.0f);
177 UPROPERTY(EditDefaultsOnly, Category = "BossPattern|Warning", meta = (ClampMin = "0.0"))
178 float WarningDuration = 2.0f;
180 UPROPERTY(EditDefaultsOnly, Category = "BossPattern|Warning", meta = (ClampMin = "1"))
181 int32 WarningDecalDataIndex = 2;
183 UPROPERTY(EditDefaultsOnly, Category = "BossPattern|Warning")
190#pragma region Skill Datas
199 UPROPERTY(EditDefaultsOnly, Category =
"Charge")
200 TObjectPtr<UDataTable> ChargePhaseDataTable;
202 UPROPERTY(EditDefaultsOnly, Category = "Charge")
203 TArray<TObjectPtr<UAnimMontage>> AttackMontages;
205 UPROPERTY(EditDefaultsOnly, Category = "
Audio", meta = (Categories = "
Audio.SFX"))
206 FGameplayTag ChargeLoopAudioTag;
216 UPROPERTY(EditDefaultsOnly, Category =
"WeaponRequest", meta = (Categories =
"Weapon"))
229 UPROPERTY(EditDefaultsOnly, Category =
"WarpStrike|Phase")
230 FName PreparingSectionName = FName("Preparing");
233 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Phase")
237 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Phase")
238 FName StrikeSectionName = FName("Strike");
241 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike")
242 bool bIgnorePawnCollisionDuringWarp = true;
244 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Move")
245 TObjectPtr<UCurveFloat> StrikeMoveProgressCurve;
247 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Move", meta = (ClampMin = "0.0"))
248 float StrikeMoveDuration = 0.25f;
251 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Phase", meta = (ClampMin = "0.0"))
252 float HoldingDuration = 0.1f;
255 UPROPERTY(EditDefaultsOnly, Category = "WarpStrike|Phase", meta = (ClampMin = "0.0"))
256 float StrikeMotionWarpDelay = 0.0f;
274 UPROPERTY(EditDefaultsOnly, Instanced, Category =
"WeaponRequest|Target")
277 UPROPERTY(EditDefaultsOnly, Instanced, Category = "WeaponRequest|Pull")
281 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Target", meta = (ClampMin = "0.0"))
282 float MaxImpactDistance = 2000.0f;
285 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Target", meta = (ClampMin = "0.0"))
286 float ImpactObstructionOffset = 150.0f;
289 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Path")
290 float SpawnHeightAboveImpact = 2000.0f;
293 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Path")
294 float SpawnLateralOffset = 700.0f;
297 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Path")
298 float SpawnForwardOffset = 350.0f;
301 UPROPERTY(EditDefaultsOnly, Category = "WeaponRequest|Pull", meta = (ClampMin = "0.0"))
302 float WeaponLaunchDelay = 3.0f;
313 UPROPERTY(EditDefaultsOnly, Category =
"StarField")
314 float PullRadius = 800.f;
317 UPROPERTY(EditDefaultsOnly, Category = "StarField")
318 float PullStrength = 1500.f;
321 UPROPERTY(EditDefaultsOnly, Category = "StarField")
322 float PullZComponent = 0.15f;
325 UPROPERTY(EditDefaultsOnly, Category = "StarField")
326 TEnumAsByte<ECollisionChannel> OverlapChannel = ECC_Pawn;
329 UPROPERTY(EditDefaultsOnly, Category = "StarField")
330 TArray<TSubclassOf<UGameplayEffect>> AreaEffects;
333 UPROPERTY(EditDefaultsOnly, Category = "StarField", meta = (ClampMin = "0.0"))
334 float PullDuration = 1.5f;
337 UPROPERTY(EditDefaultsOnly, Category = "StarField", meta = (ClampMin = "0.0"))
338 float PullInterval = 0.1f;
Definition DamagedProjectile.h:12
Definition WeaponProjectile.h:18
Definition TargetSelector.h:46
Definition TickableProjectileActionBase.h:16
Definition ExtendedDatas.h:27
Definition ExtendedDatas.h:164
Definition ExtendedDatas.h:17
Definition ExtendedDatas.h:111
Definition ExtendedDatas.h:145
Definition ExtendedDatas.h:64
Definition ExtendedDatas.h:54
Definition PatternWarningDecalData.h:43
Definition PatternWarningDecalData.h:33
Definition ExtendedDatas.h:44
Definition ExtendedDatas.h:195
Definition ExtendedDatas.h:74
Definition ExtendedDatas.h:270
Definition ExtendedDatas.h:308
Definition ExtendedDatas.h:224
Definition ExtendedDatas.h:263
Definition ExtendedDatas.h:90
FORCEINLINE float GetTolerance() const
Definition ExtendedDatas.h:96
FORCEINLINE float GetRotationDuration() const
Definition ExtendedDatas.h:94
FORCEINLINE float GetTurnSpeed() const
Definition ExtendedDatas.h:95
Definition ExtendedDatas.h:212