Esempio n. 1
0
        /// <summary>
        /// 计算装备主属性值
        /// </summary>
        /// <param name="itemFielInfo">装备数据</param>
        /// <param name="index">装备主属性索引</param>
        /// <param name="isBefore">是否装备前的值</param>
        /// <param name="isNormal">是否普通强化</param>
        /// <returns></returns>
        private int EquipMainProp(ItemData itemData, EquipmentEntity equipmentEntity, int index, bool isBefore)
        {
            EquipmentData equipItemData;
            int           normalStrengthenLv = equipmentEntity.EQUIP_FIELD_STRONGE_LEVEL;
            int           starStrengthenLv   = equipmentEntity.EQUIP_FIELD_START_LEVEL;

            equipItemData = ItemDataManager.Instance.GetItemData(itemData._goodID) as EquipmentData;
            if (!isBefore)
            {
                equipItemData = ItemDataManager.Instance.GetItemData(equipItemData.UpgradeID) as EquipmentData;
            }


            StrengthParameter strengthParameter     = equipItemData._StrengthParameter[index];
            StrengthParameter starStrengthParameter = equipItemData._StartStrengthParameter[index];

            int normalMainProAdd = normalStrengthenLv == 0 || normalStrengthenLv > CommonDefineManager.Instance.CommonDefine.StrengthLimit?0:strengthParameter.Value[normalStrengthenLv - 1];

            int normalMainProAddForStar = starStrengthenLv == 0 || starStrengthenLv > CommonDefineManager.Instance.CommonDefine.StartStrengthLimit?0:starStrengthParameter.Value[starStrengthenLv - 1];

            int sourceMainProValue = 0;

            string[] effects = equipItemData._vectEffects.Split('|');
            sourceMainProValue = int.Parse(effects[index].Split('+')[1]);
            return(sourceMainProValue + normalMainProAdd + normalMainProAddForStar);
        }
Esempio n. 2
0
    /// <summary>
    /// 计算装备主属性值
    /// </summary>
    /// <param name="itemFielInfo">装备数据</param>
    /// <param name="index">装备主属性索引</param>
    /// <param name="isBefore">是否装备前的值</param>
    /// <param name="isNormal">是否普通强化</param>
    /// <returns></returns>
    private static int EquipMainProp(ItemData itemData, EquipmentEntity equipmentEntity, int index, bool isBefore, bool isNormal)
    {
        EquipmentData equipItemData = itemData as EquipmentData;

        if (itemData == null)
        {
            return(0);
        }
        int normalStrengthenLv = 0;
        int starStrengthenLv   = 0;

        if (equipmentEntity.ITEM_FIELD_CONTAINER != 0)
        {
            normalStrengthenLv = PlayerDataManager.Instance.GetEquipmentStrengthLevel((EquiptSlotType)int.Parse(equipItemData._vectEquipLoc)); // equipmentEntity.EQUIP_FIELD_STRONGE_LEVEL;
            starStrengthenLv   = PlayerDataManager.Instance.GetEquipmentStarLevel((EquiptSlotType)int.Parse(equipItemData._vectEquipLoc));     // equipmentEntity.EQUIP_FIELD_START_LEVEL;
        }


        if (!isBefore)
        {
            if (isNormal)
            {
                normalStrengthenLv += 1;
            }
            else
            {
                starStrengthenLv += 1;
            }
        }

        //var equipItemData = ItemDataManager.Instance.GetItemData(itemData._goodID) as EquipmentData;
        StrengthParameter strengthParameter     = equipItemData._StrengthParameter[index];
        StrengthParameter starStrengthParameter = equipItemData._StartStrengthParameter[index];
        int normalMainProAdd = normalStrengthenLv == 0 || normalStrengthenLv > CommonDefineManager.Instance.CommonDefine.StrengthLimit?0:strengthParameter.Value[normalStrengthenLv - 1];

        int normalMainProAddForStar = starStrengthenLv == 0 || starStrengthenLv > CommonDefineManager.Instance.CommonDefine.StartStrengthLimit?0:starStrengthParameter.Value[starStrengthenLv - 1];

        //float startAddPercent = 0;  //新版装备强化,不再加星级加成数值  2014-6-9  新版又加上星阶加成,但不再手百分比,计算方法与普通强化一样

        int sourceMainProValue = 0;

        sourceMainProValue = int.Parse(GetEffNameOrValue(equipItemData, index, false));
//		switch (index)
//		{
//		case 0:
//			sourceMainProValue =
//			break;
//		case 1:
//			sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE1_VALUE;
//			break;
//		}
//		var procValue = (itemData as EquipmentData)._lThresholdValue;   //强化阀值在2014-6-9取消
//
//		normalMainProAdd += Mathf.FloorToInt((Mathf.Max(normalStrengthenLv, procValue) - procValue) * 0.05f * sourceMainProValue);

        //TraceUtil.Log("index:" + index + " 基础属性:" + sourceMainProValue + "  isBefore:" + isBefore + " AddValue:" + normalMainProAdd);
        //return Mathf.FloorToInt((sourceMainProValue + normalMainProAdd+normalMainProAddForStar) * (1 + startAddPercent));
        return(sourceMainProValue + normalMainProAdd + normalMainProAddForStar);
    }
Esempio n. 3
0
        /// <summary>
        /// 计算装备主属性值
        /// </summary>
        /// <param name="itemFielInfo">装备数据</param>
        /// <param name="index">装备主属性索引</param>
        /// <param name="isBefore">是否装备前的值</param>
        /// <param name="isNormal">是否普通强化</param>
        /// <returns></returns>
        private int EquipMainProp(ItemData itemData, EquipmentEntity equipmentEntity, int index, bool isBefore, bool isNormal)
        {
            int normalStrengthenLv = equipmentEntity.EQUIP_FIELD_STRONGE_LEVEL;
            int starStrengthenLv   = equipmentEntity.EQUIP_FIELD_START_LEVEL;

            if (!isBefore)
            {
                if (isNormal)
                {
                    normalStrengthenLv += 1;
                }
                else
                {
                    starStrengthenLv += 1;
                }
            }

            var equipItemData = ItemDataManager.Instance.GetItemData(itemData._goodID) as EquipmentData;
            StrengthParameter strengthParameter = equipItemData._StrengthParameter[index];

            int normalMainProAdd = normalStrengthenLv == 0 || normalStrengthenLv > CommonDefineManager.Instance.CommonDefine.StrengthLimit?0:strengthParameter.Value[normalStrengthenLv - 1];

            float startAddPercent = 0;  //新版装备强化,不再加星级加成数值
            //float startAddPercent = 0.05f * starStrengthenLv;

            int sourceMainProValue = 0;

            switch (index)
            {
            case 0:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE0_VALUE;
                break;

            case 1:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE1_VALUE;
                break;
            }
            var procValue = (itemData as EquipmentData)._lThresholdValue;

            normalMainProAdd += Mathf.FloorToInt((Mathf.Max(normalStrengthenLv, procValue) - procValue) * 0.05f * sourceMainProValue);

            //TraceUtil.Log("index:" + index + " 基础属性:" + sourceMainProValue + "  isBefore:" + isBefore + " AddValue:" + normalMainProAdd);
            return(Mathf.FloorToInt((sourceMainProValue + normalMainProAdd) * (1 + startAddPercent)));
        }
Esempio n. 4
0
    /// <summary>
    /// 获取装备升星强化加成
    /// </summary>
    /// <returns>The normal main pro add for star.</returns>
    static int GetNormalMainProAddForStar(ItemFielInfo itemFielInfo, int index)
    {
        if (itemFielInfo == null)
        {
            return(0);
        }
        int starStrengthenLv;

        if (itemFielInfo.sSyncContainerGoods_SC.uidGoods != 0)
        {
            starStrengthenLv = PlayerDataManager.Instance.GetEquipmentStarLevel((EquiptSlotType)int.Parse((itemFielInfo.LocalItemData as EquipmentData)._vectEquipLoc));// itemFielInfo.equipmentEntity.EQUIP_FIELD_START_LEVEL;
        }
        else
        {
            starStrengthenLv = 0;
        }
        var equipItemData = ItemDataManager.Instance.GetItemData(itemFielInfo.LocalItemData._goodID) as EquipmentData;
        StrengthParameter starStrengthParameter = equipItemData._StartStrengthParameter[index];
        int normalMainProAddForStar             = starStrengthenLv == 0 || starStrengthenLv > CommonDefineManager.Instance.CommonDefine.StartStrengthLimit?0:starStrengthParameter.Value[starStrengthenLv - 1];

        return(normalMainProAddForStar);
    }
Esempio n. 5
0
        /// <summary>
        /// 计算装备主属性值
        /// </summary>
        /// <param name="itemFielInfo">装备数据</param>
        /// <param name="index">装备主属性索引</param>
        /// <param name="isBefore">是否装备前的值</param>
        /// <param name="isNormal">是否普通强化</param>
        /// <returns></returns>
        private int EquipMainProp(ItemData itemData, EquipmentEntity equipmentEntity, int index, bool isBefore, bool isNormal)
        {
            int normalStrengthenLv = equipmentEntity.EQUIP_FIELD_STRONGE_LEVEL;
            int starStrengthenLv   = equipmentEntity.EQUIP_FIELD_START_LEVEL;

            if (!isBefore)
            {
                if (isNormal)
                {
                    normalStrengthenLv += 1;
                }
                else
                {
                    starStrengthenLv += 1;
                }
            }

            var equipItemData = ItemDataManager.Instance.GetItemData(itemData._goodID) as EquipmentData;
            StrengthParameter strengthParameter = equipItemData._StrengthParameter[index];

            int normalMainProAdd = normalStrengthenLv == 0 || normalStrengthenLv > CommonDefineManager.Instance.CommonDefine.StrengthLimit?0:strengthParameter.Value[normalStrengthenLv - 1];
            //float startAddPercent = 0.05f * starStrengthenLv;
            float startAddPercent    = 0;
            int   sourceMainProValue = 0;

            switch (index)
            {
            case 0:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE0_VALUE;
                break;

            case 1:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE1_VALUE;
                break;
            }
            return(Mathf.FloorToInt((sourceMainProValue + normalMainProAdd) * (1 + startAddPercent)));
        }
Esempio n. 6
0
        /// <summary>
        /// 计算装备主属性值
        /// </summary>
        /// <param name="itemFielInfo">装备数据</param>
        /// <param name="index">装备主属性索引</param>
        /// <param name="isBefore">是否装备前的值</param>
        /// <param name="isNormal">是否普通强化</param>
        /// <returns></returns>
        static int EquipMainProp(ItemData itemData, EquipmentEntity equipmentEntity, int index, bool isBefore, bool isNormal, EquiptSlotType itemType)
        {
            int normalStrengthenLv = PlayerDataManager.Instance.GetEquipmentStrengthLevel(itemType);
            int starStrengthenLv   = PlayerDataManager.Instance.GetEquipmentStarLevel(itemType);

            if (!isBefore)
            {
                if (isNormal)
                {
                    normalStrengthenLv += 1;
                }
                else
                {
                    starStrengthenLv += 1;
                }
            }

            var equipItemData = ItemDataManager.Instance.GetItemData(itemData._goodID) as EquipmentData;
            StrengthParameter strengthParameter     = equipItemData._StrengthParameter[index];
            StrengthParameter starStrengthParameter = equipItemData._StartStrengthParameter[index];
            int   normalMainProAdd        = normalStrengthenLv == 0 || normalStrengthenLv > CommonDefineManager.Instance.CommonDefine.StrengthLimit?0:strengthParameter.Value[normalStrengthenLv - 1];
            int   normalMainProAddForStar = starStrengthenLv == 0 || starStrengthenLv > CommonDefineManager.Instance.CommonDefine.StartStrengthLimit?0:starStrengthParameter.Value[starStrengthenLv - 1];
            float startAddPercent         = 0;
            int   sourceMainProValue      = 0;

            switch (index)
            {
            case 0:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE0_VALUE;
                break;

            case 1:
                sourceMainProValue = equipmentEntity.EQUIP_FIELD_EFFECTBASE1_VALUE;
                break;
            }
            return(sourceMainProValue + normalMainProAdd + normalMainProAddForStar);
        }