Example #1
0
 public void AddAttribute(InscriptionAttribute attribute)
 {
     if (_inscriptionAttribute == null)
     {
         _inscriptionAttribute = new List <InscriptionAttribute>();
     }
     _inscriptionAttribute.Add(attribute);
 }
Example #2
0
        private InscriptionAttribute ChangeAttribute(InscriptionAttribute a)
        {
            InscriptionAttribute b = new InscriptionAttribute();

            b.attributeId   = a.attributeId;
            b.attributeName = a.attributeName;
            b.attribueValue = a.attribueValue;
            b.valueType     = a.valueType;
            return(b);
        }
Example #3
0
        /// <summary>
        /// 计算符文的综合属性
        /// </summary>
        public void CalculatedAttribute()
        {
            if (_inscriptionAttribue == null)
            {
                _inscriptionAttribue = new SortedDictionary <int, InscriptionAttribute>();
            }
            _inscriptionAttribue.Clear();
            foreach (KeyValuePair <int, Inscription> incriptionItem in _greenInscription)
            {
                foreach (InscriptionAttribute attributeItem in incriptionItem.Value.inscriptionAttribute)
                {
                    if (_inscriptionAttribue.ContainsKey(attributeItem.attributeId))
                    {
                        _inscriptionAttribue[attributeItem.attributeId].attribueValue += attributeItem.attribueValue;
                    }
                    else
                    {
                        InscriptionAttribute a = ChangeAttribute(attributeItem);
                        _inscriptionAttribue.Add(attributeItem.attributeId, a);
                    }
                }
            }

            foreach (KeyValuePair <int, Inscription> incriptionItem in _redInsription)
            {
                foreach (InscriptionAttribute attributeItem in incriptionItem.Value.inscriptionAttribute)
                {
                    if (_inscriptionAttribue.ContainsKey(attributeItem.attributeId))
                    {
                        _inscriptionAttribue[attributeItem.attributeId].attribueValue += attributeItem.attribueValue;
                    }
                    else
                    {
                        InscriptionAttribute a = ChangeAttribute(attributeItem);
                        _inscriptionAttribue.Add(attributeItem.attributeId, a);
                    }
                }
            }

            foreach (KeyValuePair <int, Inscription> incriptionItem in blueInscription)
            {
                foreach (InscriptionAttribute attributeItem in incriptionItem.Value.inscriptionAttribute)
                {
                    if (_inscriptionAttribue.ContainsKey(attributeItem.attributeId))
                    {
                        _inscriptionAttribue[attributeItem.attributeId].attribueValue += attributeItem.attribueValue;
                    }
                    else
                    {
                        InscriptionAttribute a = ChangeAttribute(attributeItem);
                        _inscriptionAttribue.Add(attributeItem.attributeId, a);
                    }
                }
            }
        }
Example #4
0
 /// <summary>
 /// 添加铭文时,更新属性
 /// </summary>
 /// <param name="inscription"></param>
 private void AddAttribueUpdate(Inscription inscr)
 {
     if (_inscriptionAttribue == null)
     {
         _inscriptionAttribue = new SortedDictionary <int, InscriptionAttribute>();
     }
     foreach (InscriptionAttribute attributeItem in inscr.inscriptionAttribute)
     {
         //Debug.Log("id:"+attributeItem.attributeId);
         //Debug.Log("value:"+attributeItem.attribueValue);
         if (_inscriptionAttribue.ContainsKey(attributeItem.attributeId))
         {
             _inscriptionAttribue[attributeItem.attributeId].attribueValue += attributeItem.attribueValue;
         }
         else
         {
             InscriptionAttribute a = ChangeAttribute(attributeItem);
             _inscriptionAttribue.Add(attributeItem.attributeId, a);
         }
     }
 }