feat(enemy): 攻击能力射程 Gizmo(选中可见)+ category==Attack 的 rangeRadius 自检
This commit is contained in:
@@ -182,6 +182,20 @@ namespace BaseGames.Enemies.Abilities
|
||||
$"实际 = {(_config != null ? _config.GetType().Name : "null")}。请重建为正确的子类 SO。", this);
|
||||
return null;
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
/// <summary>选中时绘制攻击射程范围(编辑器可视化辅助,不影响运行时)。</summary>
|
||||
private void OnDrawGizmosSelected()
|
||||
{
|
||||
if (_config == null || _config.category != AbilityCategory.Attack || _config.rangeRadius <= 0f) return;
|
||||
float sign = transform.localScale.x < 0f ? -1f : 1f;
|
||||
Vector3 origin = transform.position
|
||||
+ new Vector3(_config.rangeOffset.x * sign, _config.rangeOffset.y, 0f);
|
||||
UnityEditor.Handles.color = new Color(1f, 0.4f, 0.2f, 0.9f);
|
||||
UnityEditor.Handles.DrawWireDisc(origin, Vector3.forward, _config.rangeRadius);
|
||||
UnityEditor.Handles.Label(origin, $"{_config.abilityId} range");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>WaitForSeconds 池(架构 §10 GC 优化)。能力协程统一通过此获取等待指令。</summary>
|
||||
|
||||
Reference in New Issue
Block a user