Esempio n. 1
0
        /// <summary>
        /// 展示法宝装备Tips
        /// </summary>
        /// <returns></returns>
        public static void ShowMagicEquipTipsWindow(GoodsMagicEquip equip, string showType, uint magicId)
        {
            // 经验道具部位Id
            uint expPos = xc.GameConstHelper.GetUint("GAME_MAGIC_EQUIP_EXP_POS");

            if (equip.PosId == expPos)
            {
                UIManager.Instance.ShowWindow("UIGoodsTipsWindow", equip, showType);
            }
            else
            {
                UIManager.Instance.ShowWindow("UIMagicWeaponTipsWindow", equip, showType, magicId);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 根据typeId返回法宝装备背包总数量
        /// </summary>
        public static ulong GetGoodsNumForMagicEquipBagByTypeId(uint eid)
        {
            GoodsMagicEquip goods1 = null;
            List <ulong>    oids   = null;
            ulong           num    = 0;

            if (ItemManager.Instance.MagicEquipTypeIdAndOids.TryGetValue(eid, out oids) == true)
            {
                foreach (ulong oid in oids)
                {
                    if (ItemManager.Instance.MagicEquipGoodsOids.TryGetValue(oid, out goods1) == true)
                    {
                        num = num + goods1.num;
                    }
                }
            }
            return(num);
        }
Esempio n. 3
0
        /// <summary>
        ///  获取法宝装备强化属性
        /// </summary>
        public static ActorAttribute GetStrengthAttr(uint strengthLv, GoodsMagicEquip equip)
        {
            ActorAttribute ret = new ActorAttribute();

            uint lv = strengthLv;

            if (lv > equip.MaxStrengthLv)
            {
                lv = equip.MaxStrengthLv;
            }

            string        key = string.Format("{0}_{1}", (uint)equip.PosId, lv);
            List <string> rec = DBManager.Instance.QuerySqliteField <string>(GlobalConfig.DBFile, "data_magic_goods_str", "csv_id", key, "str_attrs");

            if (rec.Count == 0)
            {
                return(ret);
            }

            string raw = rec[0];

            raw = raw.Replace(" ", "");
            var matchs = Regex.Matches(raw, @"\{(\d+),(\d+)\}");

            foreach (Match _match in matchs)
            {
                if (_match.Success)
                {
                    uint attrId    = (DBTextResource.ParseUI(_match.Groups[1].Value));
                    uint attrValue = DBTextResource.ParseUI(_match.Groups[2].Value);
                    ret.Add(attrId, attrValue);
                }
            }

            return(ret);
        }