using System; using UnityEngine; namespace BaseGames.Equipment { /// /// 攻击速度加成护符效果(架构 09_ProgressionModule §5)。 /// 修改 PlayerStats.AnimatorSpeedMultiplier,动画控制器查询该倒数应用速度。 /// [Serializable] public class AttackSpeedEffect : ICharmEffect { [Range(0.1f, 2.0f)] public float speedMultiplier = 1.2f; // 动画速度倍率(1.2 = 加速 20%) public void OnEquip(EquipmentContext ctx) { ctx.Stats?.AddAnimatorSpeedBonus(speedMultiplier - 1f); } public void OnUnequip(EquipmentContext ctx) { ctx.Stats?.RemoveAnimatorSpeedBonus(speedMultiplier - 1f); } public string GetEffectDescription() => $"攻击速度 +{(speedMultiplier - 1f) * 100:0}%"; } }