using Milimoe.FunGame.Core.Interface.Entity;
using Milimoe.FunGame.Core.Library.Constant;
using Milimoe.FunGame.Core.Model;
namespace Milimoe.FunGame.Core.Entity
{
public abstract class BaseEntity : IBaseEntity
{
///
/// 实体的数字 ID
///
public virtual long Id { get; set; } = 0;
///
/// 实体的唯一 ID
///
public virtual Guid Guid { get; set; } = Guid.Empty;
///
/// 实体的名称
///
public virtual string Name { get; set; } = "";
///
/// 实体的当前状态(关联数据库操作)
///
public EntityState EntityState { get; set; } = EntityState.Unchanged;
///
/// 实体所用的游戏平衡常数
///
public EquilibriumConstant GameplayEquilibriumConstant { get; set; } = General.GameplayEquilibriumConstant;
///
/// 比较两个实体是否相同
///
///
///
public abstract bool Equals(IBaseEntity? other);
///
/// 获取实体的 Id.Name
///
///
public string GetIdName()
{
return Id + "." + Name;
}
}
}