Example #1
0
        /// <summary>
        /// 加精铸属性
        /// </summary>
        /// <param name="equipmentProperty"></param>
        /// <param name="quality"></param>
        /// <returns></returns>
        public PrecisionCastingPropertyEntity AddPrecisionCastingProperty(EquipmentProperty equipmentProperty, int quality, bool isActivity = false)
        {
            PrecisionCastingPropertyEntity plus = null;

            //限制
            for (int i = 0; i < 10; i++)
            {
                plus = RandomPrecisionCastingProperty(quality, isActivity);
                if (plus.PropertyQuality == 4)
                {
                    if (!CheckProperty(equipmentProperty, plus))
                    {
                        return(plus);
                    }
                }
                else
                {
                    if (!HaveSameProperty(equipmentProperty, plus))
                    {
                        return(plus);
                    }
                }
            }
            return(plus);
        }
Example #2
0
        bool CheckProperty(EquipmentProperty equipmentProperty, PrecisionCastingPropertyEntity plus)
        {
            if (IsHadOrangeProperty(equipmentProperty))
            {
                return(true);
            }

            if (HaveSameProperty(equipmentProperty, plus))
            {
                return(true);
            }
            return(false);
        }
Example #3
0
 //检查是否有相同的属性存在
 bool HaveSameProperty(EquipmentProperty equipmentProperty, PrecisionCastingPropertyEntity entity)
 {
     return(equipmentProperty.PrecisionCastingPropertis.Exists(d => d.PropertyId == entity.PropertyId));
 }