Files
zeling_v2/Assets/_Game/Scripts/Enemies/EnemyCombat.cs
T

39 lines
1.0 KiB
C#

using UnityEngine;
using BaseGames.Combat;
namespace BaseGames.Enemies
{
/// <summary>
/// 敌人战斗组件(架构 07_EnemyModule §4)。
/// HitBox 按 AttackType 索引管理,动画事件触发 HitBox 开关。
/// </summary>
public class EnemyCombat : MonoBehaviour
{
[SerializeField] private HitBox[] _hitBoxes; // Inspector 按 AttackType 索引绑定
public void StartAttack(AttackType type)
{
int idx = (int)type;
EnableHitBox(idx);
}
public void EnableHitBox(int index)
{
if (_hitBoxes == null || index >= _hitBoxes.Length) return;
_hitBoxes[index]?.Activate();
}
public void DisableHitBox(int index)
{
if (_hitBoxes == null || index >= _hitBoxes.Length) return;
_hitBoxes[index]?.Deactivate();
}
public void DisableAllHitBoxes()
{
if (_hitBoxes == null) return;
foreach (var hb in _hitBoxes) hb?.Deactivate();
}
}
}