Пример #1
0
        /// <summary>
        /// 物品属性叠加
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        public int GetItemFightPropertySum(FightPropertyType type)
        {
            if (type == FightPropertyType.MaxLength)
            {
                return(0);
            }

            int value = 0;

            // 如果装备武器不为null,则叠加武器属性
            if (equipedWeapon != null)
            {
                value += equipedWeapon.uniqueInfo.fightProperties[type];
            }

            // 叠加所有饰品属性
            foreach (Item item in items)
            {
                if (item != null && item.itemType == ItemType.Ornament)
                {
                    value += (item as Ornament).uniqueInfo.fightProperties[type];
                }
            }

            return(value);
        }
Пример #2
0
        public int this[FightPropertyType type]
        {
            get
            {
                switch (type)
                {
                case FightPropertyType.HP:
                    return(hp);

                case FightPropertyType.MP:
                    return(mp);

                case FightPropertyType.STR:
                    return(str);

                case FightPropertyType.MAG:
                    return(mag);

                case FightPropertyType.SKL:
                    return(skl);

                case FightPropertyType.SPD:
                    return(spd);

                case FightPropertyType.DEF:
                    return(def);

                case FightPropertyType.MDF:
                    return(mdf);

                default:
                    return(0);
                    //throw new IndexOutOfRangeException("Not Supported");
                }
            }
            //set
            //{
            //    switch (type)
            //    {
            //        case FightPropertyType.STR:
            //            str = value;
            //            break;
            //        case FightPropertyType.MAG:
            //            mag = value;
            //            break;
            //        case FightPropertyType.SKL:
            //            skl = value;
            //            break;
            //        case FightPropertyType.SPD:
            //            spd = value;
            //            break;
            //        case FightPropertyType.DEF:
            //            def = value;
            //            break;
            //        case FightPropertyType.MDF:
            //            mdf = value;
            //            break;
            //        default:
            //            throw new IndexOutOfRangeException("Not Supported");
            //    }
            //}
        }
Пример #3
0
 public void AddFightProperty(FightPropertyType type, int value)
 {
     self.fightProperties[type] += value;
 }
Пример #4
0
        public int this[FightPropertyType type] {
            get {
                switch (type)
                {
                case FightPropertyType.HP:
                    return(hp);

                case FightPropertyType.STR:
                    return(str);

                case FightPropertyType.MAG:
                    return(mag);

                case FightPropertyType.SKL:
                    return(skl);

                case FightPropertyType.SPD:
                    return(spd);

                case FightPropertyType.DEF:
                    return(def);

                case FightPropertyType.MDF:
                    return(mdf);

                default:
                    return(0);
                }
            }
            set {
                switch (type)
                {
                case FightPropertyType.STR:
                    str = value;
                    break;

                case FightPropertyType.MAG:
                    mag = value;
                    break;

                case FightPropertyType.SKL:
                    skl = value;
                    break;

                case FightPropertyType.SPD:
                    spd = value;
                    break;

                case FightPropertyType.DEF:
                    def = value;
                    break;

                case FightPropertyType.MDF:
                    mdf = value;
                    break;

                default:
                    throw new IndexOutOfRangeException("Not Supported");
                }
            }
        }