Files
zeling_v2/Assets/_Game/Scripts/Parry/ParryConfigSO.cs

39 lines
1.7 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using UnityEngine;
namespace BaseGames.Parry
{
/// <summary>
/// 弹反系统配置资产(架构 06_CombatModule §9
/// 可通过 Assets/Create/Combat/ParryConfig 创建。
/// </summary>
[CreateAssetMenu(menuName = "BaseGames/Combat/ParryConfig", fileName = "ParryConfig")]
public class ParryConfigSO : ScriptableObject
{
[Header("阶段时长(秒)")]
public float StartupDuration = 0.05f; // 前摇:按键到弹反窗口开启的延迟
public float WindowDuration = 0.28f; // Active弹反有效窗口时长
public float EndlagDuration = 0.10f; // 后摇:窗口结束到恢复的延迟
public float CounterWindowDuration = 0.5f; // 弹反成功后的反击窗口时长
[Header("完美弹反判定")]
public float PerfectParryThreshold = 0.05f; // Active 开始后的完美弹反窗口(秒)
[Header("冷却")]
public float ParryCooldown = 0.3f; // 两次弹反之间的最短间隔(秒)
[Header("灵力奖励")]
public int SoulGainOnParry = 33; // 普通弹反获得灵力
public int SoulGainOnPerfect = 50; // 完美弹反额外获得灵力
[Header("反击伤害")]
public float ParryCounterMultiplier = 3.0f; // 弹反反击伤害倍率
[Header("子弹时间(完美弹反)")]
public float BulletTimeScale = 0.25f; // 触发时的时间缩放比例
public float BulletTimeDuration = 0.2f; // 子弹时间持续时长(秒,实际时间)
[Header("硬直")]
public float StaggerDuration = 0.8f; // 被弹反敌人的受击硬直时长(秒)
}
}