using UnityEngine; using System.Collections.Generic; using Colosseum.Skills; namespace Colosseum.AI { public enum PatternStepType { Skill, Wait } [System.Serializable] public class PatternStep { public PatternStepType Type = PatternStepType.Skill; public SkillData Skill; [Min(0f)] public float Duration = 0.5f; } /// /// 보스 패턴 데이터. 순서대로 실행할 스텝(스킬 또는 대기) 목록과 쿨타임을 정의합니다. /// [CreateAssetMenu(fileName = "NewBossPattern", menuName = "Colosseum/Boss Pattern")] public class BossPatternData : ScriptableObject { [Header("패턴 정보")] [SerializeField] private string patternName; [Header("스텝 순서")] [SerializeField] private List steps = new List(); [Header("쿨타임")] [Min(0f)] [Tooltip("패턴 완료 후 다시 사용 가능해지기까지의 시간")] [SerializeField] private float cooldown = 5f; public string PatternName => patternName; public IReadOnlyList Steps => steps; public float Cooldown => cooldown; } }