using CommonAI.Zone.Helper;

namespace CommonAI
{
    public class XmdsConstConfig
    {
        /// <summary>
        /// 单位子状态.
        /// </summary>
        public enum UnitSubState : byte
        {
            NONE = 0,
            YINSHENG = 1, //>=1都表示隐身,N标记隐身的区域
        }

        public static string GetSubStateActionName(byte state)
        {
            string ret = null;

            switch (state)
            {
                case (byte)UnitActionSubStatus.Stealth:
                    ret = "f_run02";
                    break;
                default: break;
            }

            return ret;
        }

        /// <summary>
        /// 战斗飘字类型.
        /// </summary>
        public enum BattleFloatTipsType : byte
        {
            MIAN_YI_SIWANG = 1,              //免疫死亡.
            ZHI_LIAO_SHANG_SHENG = 2,        //治疗上升.
            GONG_JI_SHANG_SHENG = 3,         //攻击上升.
            BAO_JI_SHANG_SHENG = 4,          //暴击上升.
            SHENG_DIAN_JIA = 5,              //胜点+1.
            FANG_YU_SHANG_SHENG = 6,         //防御上升.
        }

        /// <summary>
        /// 特殊状态标识.
        /// </summary>
        public enum SpecialState : byte
        {
            None = 0,                      //无.
            WANTED = 1,                      //悬赏.

        }

        //场景类型,
        public enum AreaType : byte
        {
            None                        = 0,                // 普通场景
            AreaFiled                   = 1,                // 野外
            AreaDungeon                 = 2,                // 副本
        }

        /// <summary>
        /// 自动战斗挂机模式:全图游走.
        /// </summary>
        public const string AUTO_GUARD_MODE_MAP = "map";
        /// <summary>
        /// 自动战斗挂机模式:定点.
        /// </summary>
        public const string AUTO_GUARD_MODE_POINT = "point";

        /// <summary>
        /// 当前状态无法骑乘.
        /// </summary>
        public const string TIPS_CAN_NOT_RIDE = "canNotRide";

        public const string TIPS_UNDER_ATTACK = "underAttack";
        public const string TIPS_BE_BUSY = "beBusy";
        public const string TIPS_MP_NOT_ENOUGH = "mpNotEnough";
        public const string TIPS_CAN_NOT_USE_SKILL = "canNotSkill";
        public const string TIPS_CAN_NOT_ENTER_SCENE = "canNotInterServer";
        public const string TIPS_REFINE_PUT_OK = "set_soul";
        public const string TIPS_REFINE_GET_OK = "get_soul";
        public const string TIPS_IN_PK_PROTECT = "safeguard";
        public const string TIPS_REFINE_BLINK = "refineItem_blink";
		public const string TIPS_FOLLOW_FAIL = "followfail";
		public const string TIPS_BAG_FULL = "bag_full";

		//随从召回提示操作过快
		public const string TIPS_CALL_BACK_BTN = "CallBackBtn";
        //不能移动状态下,不能释放位移技能
        public const string CANNOT_LAUNCH_DISPACEMENTSKILL = "cannotmove_canotlaunch_dispacementskill";
        //副本首次不能战斗.
        public const string TIPS_FIRST_CANNOT_AUTO = "first_cannot_auto";
		//该物品采集次数已达上限
		public const string TIPS_PICK_MAX = "pick_max";


		//自动拾取范围大小
		public const float AUTOPICK_RANGE = 13;

		//自动拾取范围大小,PVP
		public const int AUTOPICK_RANGE_PVP = 1;

		//游戏刷新帧
		public static int GAME_UPDATE_INTERVAL_MS = 0;

		// 模板ID
		public static readonly int DEFAULT_PET_TEMPLATE_ID = 500000;
		public static readonly int DEFAULT_PLAYER_TEMPLATE_ID = 500001;

		//数值上限
		public static readonly int DAMAGE_CHG_MAX = 9500;
		public static readonly int SKILL_CD_REDUCE_MAX = 8000;

		//默认不受【击飞, 黑洞效果控制】影响的体重值。 (>=即可)
		//攻击质量一般需要<=100(攻击力度  - 单位体重 > 0 才会才生受击效果)
		public static readonly int DEFAULT_WEIGHT = 100;


		//下面只是为了中转用的
		public static float PET_SHARE_MASTERDMG_RATIO = 0.2f;       //宠物分担玩家伤害系数
		public static float PET_HEALD_RATIO = 1.0f;
	}
}