using System; using UnityEngine; using UnityEngine.AddressableAssets; using BaseGames.Combat; namespace BaseGames.Boss { /// /// 单个攻击图案的数据。伤害参数只写在此处,BossSkillSO 不存参数。 /// [CreateAssetMenu(menuName = "BaseGames/Boss/AttackPattern")] public class AttackPatternSO : ScriptableObject { [Header("输出")] public DamageSourceSO DamageSource; public float KnockbackAngle; [Header("弹幕(若为弹幕类型)")] public AssetReferenceGameObject ProjectilePrefab; public int ProjectileCount = 1; public float SpreadAngle = 0f; public float ProjectileSpeed = 8f; [Header("范围攻击(若为 AoE 类型)")] public float AoERadius; public Vector2 AoEOffset; [Header("时序")] [Min(0f)] public float WindupDuration; [Min(0f)] public float ActiveDuration; [Min(0f)] public float RecoveryDuration; } }