Files
zeling_v2/Assets/_Game/Scripts/Enemies/EnemyStatsSO.cs

38 lines
1.1 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using UnityEngine;
namespace BaseGames.Enemies
{
/// <summary>
/// 敌人属性配置 SO架构 07_EnemyModule §2
/// </summary>
[CreateAssetMenu(menuName = "BaseGames/Enemies/EnemyStats")]
public class EnemyStatsSO : ScriptableObject
{
[Header("生命")]
public int MaxHP = 50;
[Header("防御")]
public int Defense = 0;
[Header("移动")]
public float WalkSpeed = 2f;
public float RunSpeed = 4f;
[Header("战斗")]
public int AttackDamage = 10;
public float AttackRange = 1.5f;
public float AttackCooldown = 1f;
public float DetectRange = 6f;
[Header("击退(作为来源时)")]
public float KnockbackForce = 5f;
public float HitStunDuration = 0.3f;
[Header("视线检测BatchLOSSystem")]
[Tooltip("相对 transform.position 的眼睛偏移量")]
public Vector2 EyeOffset = new Vector2(0f, 0.8f);
[Tooltip("遮挡 LOS 的物理图层")]
public LayerMask LOSBlockingMask = 1; // Default layer
}
}