using System; using UnityEngine; using Animancer; using BaseGames.Combat; namespace BaseGames.Boss { /// /// Boss 单个技能的所有数据,包括攻击模式、弱点窗口、互动标签等。 /// [CreateAssetMenu(menuName = "BaseGames/Boss/BossSkill")] public class BossSkillSO : ScriptableObject { [Header("元信息")] public string skillId; public string displayName; [TextArea(1, 4)] public string designNote; [Header("技能分类")] public BossSkillCategory category; public BossSkillType skillType; [Header("阶段可用性")] [Tooltip("空数组 = 全阶段可用")] public int[] availablePhaseIndices; [Header("核心攻击动作引用")] public AttackPatternSO[] attackPatterns; [Header("弱点窗口(至少 1 个)")] public VulnerabilityWindow[] vulnerabilityWindows; [Header("互动标签")] public InteractionTag interactionTags; [Header("连段")] public SkillSequenceSO sequenceOnHit; public SkillSequenceSO sequenceOnMiss; [Header("玩家反制接口")] public PlayerCounterResponse[] counterResponses; [Header("场景联动")] public ArenaEventTrigger[] arenaEvents; [Header("Boss 资源")] public BossResourceCost resourceCost; public bool buildsRage; [Header("霸体配置")] public PoiseWindowConfig poiseWindow; [Header("动画")] public ClipTransition skillAnimation; [Header("冷却")] [Min(0f)] public float cooldown; } }