using UnityEngine; namespace BaseGames.Combat { /// /// 抛射物配置 ScriptableObject。描述一类抛射物的运动、伤害与对象池参数。 /// [CreateAssetMenu(menuName = "BaseGames/Combat/ProjectileConfig")] public class ProjectileConfigSO : ScriptableObject { [Header("伤害")] public DamageSourceSO DamageSource; [Tooltip("命中目标多少次后回收。1 = 命中即消失(默认);>1 = 穿透 N 个目标;<=0 = 无限穿透直至寿命结束。")] public int MaxHits = 1; [Header("运动")] public float Speed = 12f; public float Lifetime = 5f; public float LaunchAngleDeg = 45f; public float GravityScale = 1f; public float HomingStrength = 4f; [Header("对象池")] public string PoolKey; [Header("弹反")] public float ParrySpeedMultiplier = 1.2f; public float ParryDamageMultiplier = 2.0f; } }