using System.ComponentModel.DataAnnotations;

namespace ET.Server
{
    public static class PLAYER
    {
        public const int initLevel = 1;
        public const int initSp = 5000;
        public const int initGold = 0; // 1000000;
        public const int initTicket = 0; // 1000000;
        public const int initPrimaryDiamond = 0;
        public const int initDiamond = 0; // 1000000;
        public const int initEnergy = 1000;
        public const int initFriendly = 0;
        public const int initVip = 0;
        public const int initHp = 999999;
        public const int initMp = 999999;
        public const int initPrestige = 0;
        public const int initCharm = 100;
        public const int maxNum = 4; // 最多角色数量
    }

    /// <summary>
    /// 性别类型
    /// </summary>
    public enum SexType: byte
    {
        Man = 0,
        Woman = 1,
    }

    /// <summary>
    /// 职业类型
    /// </summary>
    public enum PlayerProType: byte
    {
        /** 通用 **/
        COMMON = 0,
        /** 苍刃 **/
        CANG_LANG = 1,
        /** 御剑 **/
        YU_JIAN = 2,
        /** 剑仙 **/
        YI_XIAN = 3,
        /** 神剑 **/
        SHEN_JIAN = 4,
        /** 道灵 **/
        LI_NHU = 5,
    }

    /// <summary>
    /// 出生类型
    /// </summary>
    public enum BORN_TYPE
    {
        HISTORY = 0,
        NORMAL = 1,
        BORN = 2,
        HISTORY_Dungeon_ReLogin = 3,
    }

    public enum AreaForce
    {
        None = 0,
        MONSTER = 1,
        FORCEA = 2,
        FORCEB = 3,
    }

    /// <summary>
    /// 地图玩法类型
    /// </summary>
    public enum MapType
    {
        /** 无 **/
        None = 0,
        /** 主城|野外 **/
        NORMAL = 1,
        /** 副本 **/
        FIGHT_LEVEL = 2,
        // >100属于跨服地图玩法
        /** 跨服野外场景 **/
        CROSS_NORMAL = 101,
    }

    /// <summary>
    /// 进入场景时候情况区分
    /// </summary>
    public enum ENTER_TYPE: byte
    {
        /** 默认 **/
        NONE = 0,
        /** 重连 **/
        RE_LOGIN = 1,
        /** 场景人数已满,踢出场景 **/
        SCENE_PLAYER_MAX = 2,
    }

    public enum ENTER_STATE
    {
        /** 切场景 **/
        changeArea = 1,
        /** 登陆游戏 **/
        online = 2,
    }

    public enum PkModel
    {
        /** PVP-PKModel表格 和平不攻击任何玩家*/
        Peace = 0,
        /** 和平不攻击任何玩家*/
        Justice = 1,
        /** 只攻击黑黄红名玩家*/
        Force = 2,
        /** 只攻击非本仙盟玩家*/
        Guild = 3,
        /** 只攻击非本队伍玩家*/
        Team = 4,
        /** 只攻击非本服玩家*/
        Server = 5,
        /** 攻击所有玩家*/
        All = 6,
    }

    /**
	 * 技能类型
	 */
    public enum SkillType
    {
        /** 主动技能 **/
        ACTIVE = 1,
        /** 宠物给主人增加的 **/
        PET_GIVE_ACTIVE = 2,
        /** 普攻 **/
        NORMAL = 3,
        /** 玩家被动 **/
        PLAYER_PASSIVE = 4,
        /** 宠物 给人的被动 **/
        PET_GIVE_PASSIVE = 5,
        CARD_SKILL = 6,
    }

    /**
	 * 0:回城复活;1:原地复活;2:出生点复活;3:复活点复活;4:技能复活;5.随机点复活
	 */
    public enum ReliveType
    {
        /** 回城复活 */
        CITY = 0,
        /** 原地复活 */
        NOW = 1,
        /** 出生点复活 */
        BORN = 2,
        /** 复活点复活 */
        PLACE = 3,
        /** 技能复活 */
        SKILL = 4,
        /** 随机点复活 */
        RANDOM = 5,
    }

    public enum PlayerBtlData
    {
        [Display(Name = "生命")]
        MaxHP = 1,
        [Display(Name = "生命%")]
        HPPer = 2,
        [Display(Name = "攻击")]
        Attack = 3,
        [Display(Name = "攻击%")]
        AttackPer = 4,
        [Display(Name = "防御")]
        Def = 5,
        [Display(Name = "防御%")]
        DefPer = 6,
        [Display(Name = "穿透")]
        IgnoreDefense = 7,
        [Display(Name = "穿透%")]
        IgnoreDefensePer = 8,
        [Display(Name = "暴击率")]
        CritRate = 9,
        [Display(Name = "抗暴")]
        ResCrit = 10,
        [Display(Name = "抗暴% ")]
        ResCritPer = 11,
        [Display(Name = "抗暴率")]
        ResCritRate = 12,
        [Display(Name = "暴击伤害%")]
        CritDamage = 13,
        [Display(Name = "暴伤抵御%")]
        CritDamageRes = 14,
        [Display(Name = "玩家间伤害增加%")]
        IncAllDamage = 15, // 玩家之间
        [Display(Name = "玩家间伤害减免%")]
        AllDamageReduce = 16, // 玩家之间
        [Display(Name = "韧性%")]
        CtrlTimeReduce = 17,
        [Display(Name = "冷却缩减%")]
        SkillCD = 18,
        [Display(Name = "生命恢复")]
        HPRegen = 19,
        [Display(Name = "银两掉落")]
        ExdGold = 20, //--
        [Display(Name = "杀怪经验")]
        ExdExp = 21, //--
        [Display(Name = "恢复生命")]
        HPRecover = 22, //--废弃了,用HPRegen
        [Display(Name = "恢复生命%")]
        HPRecoverPer = 23, //--
        [Display(Name = "治疗效果")]
        HealEffect = 24,
        [Display(Name = "被治疗效果")]
        HealedEffect = 25,
        [Display(Name = "移动速度")]
        RunSpeed = 26, // 移动速度加成百分比, moveSpeed基础移速
        [Display(Name = "技能加成%")]
        SkillDamage = 27,
        [Display(Name = "攻击速度")]
        AttackSpeed = 28,
        [Display(Name = "控制增幅%")]
        ControlUp = 29,
        [Display(Name = "金属性攻击")]
        GoldAttack = 30,
        [Display(Name = "金属性防御")]
        GoldDefense = 31,
        [Display(Name = "木属性攻击")]
        WoodAttack = 32,
        [Display(Name = "木属性防御")]
        WoodDefense = 33,
        [Display(Name = "水属性攻击")]
        WaterAttack = 34,
        [Display(Name = "水属性防御")]
        WaterDefense = 35,
        [Display(Name = "火属性攻击")]
        FireAttack = 36,
        [Display(Name = "火属性防御")]
        FireDefense = 37,
        [Display(Name = "土属性攻击")]
        SoilAttack = 38,
        [Display(Name = "土属性防御")]
        SoilDefense = 39,
        [Display(Name = "对boss额外暴击率")]
        ToBossCritRate = 40,
        [Display(Name = "对boss额外暴击伤害")]
        ToBossCritDamage = 41,
        [Display(Name = "金克制")]
        GoldRestraint = 42,
        [Display(Name = "木克制")]
        WoodRestraint = 43,
        [Display(Name = "水克制")]
        WaterRestraint = 44,
        [Display(Name = "火克制")]
        FireRestraint = 45,
        [Display(Name = "土克制")]
        SoilRestraint = 46,
        [Display(Name = "金抵御")]
        GoldResist = 47,
        [Display(Name = "木抵御")]
        WoodResist = 48,
        [Display(Name = "水抵御")]
        WaterResist = 49,
        [Display(Name = "火抵御")]
        FireResist = 50,
        [Display(Name = "土抵御")]
        SoilResist = 51,
        [Display(Name = "杀意值")]
        PvpKillValue = 52,
        [Display(Name = "妖气等级")]
        YaoQiLevel = 53,
        [Display(Name = "普攻吸血")]
        NormalAtkLeech = 54,
        [Display(Name = "技能吸血")]
        ActiveAtkLeech = 55,
        [Display(Name = "神器主属性伤害加成")]
        ArtifactMainPer = 56,
        [Display(Name = "怪物伤害增益%")]
        FieldBossDamageAdd = 57, // Map表有areaType,副本,野外地图类型区分
        [Display(Name = "怪物伤害减免%")]
        DungeonMonsterDamageAdd = 58, // 2021.3.30修改,含义以备注为准
        [Display(Name = "杀意等级")]
        PvpKillLevel = 59,
        [Display(Name = "七杀克制")]
        MonsterRestraint1 = 60,
        [Display(Name = "离明克制")]
        MonsterRestraint2 = 61,
        [Display(Name = "夜耀克制")]
        MonsterRestraint3 = 62,
        [Display(Name = "昌曲克制")]
        MonsterRestraint4 = 63,
        [Display(Name = "沧海克制")]
        MonsterRestraint5 = 64,

        [Display(Name = "所有伤害加成")]
        AllAtak = 65,
        [Display(Name = "所有伤害抵御")]
        AllDef = 66,
    }
}