using System; using BaseGames.Player; using BaseGames.Combat; using BaseGames.Core.Events; using BaseGames.Skills; using BaseGames.Feedback; namespace BaseGames.Equipment { /// /// 护符效果接口(架构 09_ProgressionModule §4)。 /// 所有护符效果均实现此接口,支持 [SerializeReference] 多态序列化。 /// public interface ICharmEffect { void OnEquip(EquipmentContext ctx); void OnUnequip(EquipmentContext ctx); string GetEffectDescription(); } /// /// 护符效果上下文:避免接口直接依赖具体 Manager 类(架构 09_ProgressionModule §4)。 /// public struct EquipmentContext { public PlayerStats Stats; public PlayerFeedback Feedback; public IEventChannelRegistry Events; // SO 事件频道注册表 public SkillModifierRegistry SkillMods; // 技能修改器注册表 public WeaponManager WeaponMgr; // 武器切换管理器 } }