Files
tiny_tackle_heroes/Assets/_Project/Scripts/Constants/CombatFeedbackSettings.cs
T

50 lines
2.8 KiB
C#

using UnityEngine;
namespace BumpCombat.Constants
{
[CreateAssetMenu(menuName = "BumpCombat/Constants/Combat Feedback")]
public sealed class CombatFeedbackSettings : ScriptableObject
{
[Header("히트스톱 (초)")]
[Min(0f)] public float NormalHitStopDuration = 0.045f;
[Min(0f)] public float BackHitStopDuration = 0.06f;
[Min(0f)] public float DashHitStopDuration = 0.055f;
[Min(0f)] public float StrongDashHitStopDuration = 0.075f;
[Min(0f)] public float DamageHitStopDuration = 0.04f;
[Header("타격·피격 표시 (초)")]
[Min(0f)] public float FlashDuration = 0.07f;
[Min(0f)] public float DamageFlashDuration = 0.12f;
[Min(0f)] public float ImpactDuration = 0.14f;
[Min(0f)] public float SlashDuration = 0.11f;
[Min(0f)] public float AfterimageDuration = 0.16f;
[Min(0f)] public float InvulnerabilityBlinkInterval = 0.06f;
[Range(0f, 1f)] public float InvulnerabilityBlinkAlpha = 0.35f;
[Header("카메라 흔들림")]
[Tooltip("흔들림 지속시간 (초)"), Min(0f)] public float CameraShakeDuration = 0.12f;
[Tooltip("일반 흔들림 크기 (픽셀)"), Min(0f)] public float CameraShakePixels = 3f;
[Tooltip("강한 흔들림 크기 (픽셀)"), Min(0f)] public float HeavyCameraShakePixels = 5f;
[Tooltip("강한 피격으로 표시하는 넉백 거리 (유닛)"), Min(0f)] public float HeavyKnockbackThreshold = 1f;
[Header("무적 적 몸통박치기 표시")]
[Tooltip("유지시간 (초)"), Min(0f)] public float BlockedBumpHoldDuration = 0.08f;
[Tooltip("사라지는 시간 (초)"), Min(0f)] public float BlockedBumpFadeDuration = 0.04f;
[Tooltip("수직 오프셋 (유닛)")] public float BlockedBumpVerticalOffset = 0.35f;
[Header("가드 차단 불꽃")]
[Tooltip("유지시간 (초)"), Min(0f)] public float GuardBlockImpactHoldDuration = 0.08f;
[Tooltip("사라지는 시간 (초)"), Min(0f)] public float GuardBlockImpactFadeDuration = 0.1f;
[Tooltip("최소 생성 간격 (초)"), Min(0f)] public float GuardBlockImpactInterval = 0.08f;
[Tooltip("공격자 방향 오프셋 (유닛)"), Min(0f)] public float GuardBlockImpactOffset = 0.35f;
[Header("동시 표시 제한")]
[Tooltip("무거운 일회성 효과의 최대 동시 개수"), Min(1)] public int MaxConcurrentHeavyEffects = 12;
[Header("회오리 이동 버프 잔상")]
[Tooltip("최소 생성 간격 (초)"), Min(0.001f)] public float CycloneAfterimageInterval = 0.06f;
[Tooltip("잔상 유지시간 (초)"), Min(0f)] public float CycloneAfterimageDuration = 0.22f;
[Tooltip("최대 동시 잔상 수"), Min(1)] public int MaxCycloneAfterimages = 4;
}
}