using Fantasy.Entitas;
using Fantasy.Helper;
using MongoDB.Bson.Serialization.Attributes;
using MongoDB.Bson.Serialization.Options;

namespace NB.Game;

/// <summary>
/// 玩家基本数据
/// </summary>
public sealed class Player : Entity
{
    /// <summary>
    /// 昵称
    /// </summary>
    [BsonElement("name")] public string NickName = "";

    /// <summary>
    /// 头像
    /// </summary>
    [BsonElement("head")] public string Head = "";

    /// <summary>
    /// 国家
    /// </summary>
    [BsonElement("ccy")] public string Country = "";

    /// <summary>
    /// 等级
    /// </summary>
    [BsonElement("lv")] public int Level;

    /// <summary>
    /// 当前经验
    /// </summary>
    [BsonElement("exp")] public int Exp;


    /// <summary>
    /// 星数
    /// </summary>
    [BsonElement("star")] public int Star;

    /// <summary>
    /// 高光数
    /// </summary>
    [BsonElement("high")] public int Highlight;

    /// <summary>
    /// vip状态
    /// </summary>
    [BsonElement("vip")] public int Vip;

    /// <summary>
    /// 获取时间
    /// </summary>
    [BsonElement("vTime")] public long VipGetTime;

    /// <summary>
    /// 失效时间
    /// </summary>
    [BsonElement("vExTime")] public long VipExpirationTime;


    [BsonIgnore] public long SessionRunTimeId;
}