diff --git a/Assets/_Game/Scripts/Editor/Combat/WeaponHitBoxWizard.cs b/Assets/_Game/Scripts/Editor/Combat/WeaponHitBoxWizard.cs index 497f19e..f1cea57 100644 --- a/Assets/_Game/Scripts/Editor/Combat/WeaponHitBoxWizard.cs +++ b/Assets/_Game/Scripts/Editor/Combat/WeaponHitBoxWizard.cs @@ -2,6 +2,7 @@ using System.IO; using UnityEditor; using UnityEngine; using BaseGames.Combat; +using BaseGames.Feedback; using BaseGames.Player; namespace BaseGames.Editor.Combat @@ -12,11 +13,14 @@ namespace BaseGames.Editor.Combat /// /// 生成路径规范:Assets/_Game/Prefabs/Weapons/WPN_{weaponId}_HitBox.prefab /// Prefab 结构: - /// [WPN_{weaponId}_HitBox] ← WeaponHitBoxInstance + /// [WPN_{weaponId}_HitBox] ← WeaponHitBoxInstance + WeaponFeedback(武器本地反馈:命中粒子/音效/破风) /// ├── [HitBox_Ground] ← Collider2D(IsTrigger, 形状可选) + HitBox, Layer=PlayerHitBox /// ├── [HitBox_Up] /// ├── [HitBox_Down] /// └── [HitBox_Air] + /// + /// WeaponFeedback 的 MMF_Player 反馈链留待 Inspector 编排; + /// 缺失该组件时 WeaponHitBoxInstance 会静默落到 NullFeedbackPlayer(无武器级表现)。 /// public class WeaponHitBoxWizard : ScriptableWizard { @@ -101,6 +105,9 @@ namespace BaseGames.Editor.Combat // ── 构建 Prefab ──────────────────────────────────────────────── var root = new GameObject(prefabName); var instance = root.AddComponent(); + // 武器本地反馈(WeaponHitBoxInstance.Awake 经 GetComponentInChildren() 获取); + // MMF_Player 反馈链留待 Inspector 编排 + root.AddComponent(); var so = new SerializedObject(instance); void AddDirection(bool enabled, string nodeName, string fieldName, ColliderShape shape)