using System; using Sirenix.OdinInspector; using UnityEngine; // ReSharper disable once CheckNamespace namespace BlueWaterProject { public enum EIndicatorType { NONE, RADIUS, AREA, CONE, LINE } [Serializable] public class ActiveSkillData { [field: Tooltip("이름")] [field: SerializeField] public string Name { get; set; } [field: Tooltip("표기할 이름")] [field: SerializeField] public string DisplayName { get; set; } [field: Tooltip("스킬 설명")] [field: TextArea] [field: SerializeField] public string Description { get; set; } [field: Tooltip("재사용 대기 시간")] [field: SerializeField] public float Cooldown { get; set; } [field: Tooltip("시전 시간")] [field: SerializeField] public float CastingTime { get; set; } [field: Tooltip("CastingType == 0, 제자리 멈춰서 스킬 시전, 시전 중 이동불가\n" + "CastingType == 1, 스킬을 사용한 위치에서 스킬 시전, 캐릭터 움직임 가능\n" + "CastingType == 2, 스킬 시전 중 움직일 수 있으며, 스킬이 캐릭터를 따라옴")] [field: ShowIf("@CastingTime > 0")] [field: Range(0, 2)] [field: SerializeField] public int CastingType { get; set; } [field: Tooltip("지속 시간")] [field: SerializeField] public float Duration { get; set; } [field: Tooltip("공격력")] [field: SerializeField] public float Damage { get; set; } [field: Tooltip("공격 사거리")] [field: SerializeField] public float Range { get; set; } [field: Tooltip("공격 가능한 최대 개체 수")] [field: SerializeField] public int MaxAttackTargets { get; set; } [field: SerializeField] public ParticleSystem ExplodeEffect { get; set; } } }