/// <summary> /// 通过网络包创建装备信息 /// </summary> /// <param name="net_info"></param> /// <returns></returns> public EquipInfo CreateEquipFromNet(PkgGoodsInfo net_info, uint bind = 0) { // pre check if (!IsEquipEidExist(net_info.gid)) { GameDebug.LogWarning("装备Eid找不到:" + net_info.gid); return(null); } var equip = new EquipInfo(net_info); equip.Bind = bind; // // foreach (var ap_attr in net_info.equip.effects) // { // equip.EffectAttrs.Add(ap_attr.id, ap_attr.vals, ap_attr.ep_type); // } // // foreach (var base_attr in net_info.equip.base_attrs) // { // equip.BasicAttrs.Add(base_attr.attr_id, base_attr.val, 0); // } // // // // equip.StrongLv = net_info.equip.sgth_lv; // equip.StrongAdd = (float)net_info.equip.sgth_rate / 100.0f;//除100得到真实值 // equip.StrongStar = EquipHelper.GetStrongStar(net_info.equip.sgth_rate , net_info.equip.sgth_lv); // equip.GemInfo = net_info.equip.gems; // equip.WashScore = net_info.equip.enchant_score; // // equip.ProtectedTime = net_info.protect_time; // equip.DisEnableTime = net_info.equip.disable_time; return(equip); }
void OnBagAdd(CEventBaseArgs data) { mIsBuyingDrug = false; PkgGoodsInfo pkgGoodsInfo = data.arg as PkgGoodsInfo; if (pkgGoodsInfo != null) { if (mAutoSellGoods == true) { Goods goods = ItemManager.Instance.GetGoodsForBagByOId(pkgGoodsInfo.oid); CheckAndSellGoods(goods); } } }
/// <summary> /// 通过网络包更新现有装备 /// </summary> /// <param name="equip"></param> /// <param name="net_info"></param> protected void UpdateEquipFromNet(EquipInfo equip, PkgGoodsInfo net_info) { equip.LegendAttrs.Clear(); // foreach (var ap_attr in net_info.equip.effects) // { // // 只更新附魔后的属性 // equip.EffectAttrs.Add(ap_attr.id, ap_attr.vals, ap_attr.ep_type); // } // // equip.BasicAttrs.Clear(); // foreach (var base_attr in net_info.equip.base_attrs) // { // equip.BasicAttrs.Add(base_attr.attr_id, base_attr.val , 0); // } // equip.Bind = net_info.bind; // equip.StrongLv = net_info.equip.sgth_lv; // equip.StrongAdd = (float)net_info.equip.sgth_rate / 100.0f;//除100得到真实值 // equip.StrongStar = EquipHelper.GetStrongStar(net_info.equip.sgth_rate , net_info.equip.sgth_lv); // equip.GemInfo = net_info.equip.gems; // equip.WashScore = net_info.equip.enchant_score; // // equip.ProtectedTime = net_info.protect_time; // equip.DisEnableTime = net_info.equip.disable_time; // 更新附魔状态 //foreach (var ap_attr in net_info.ap_attrs) //{ // equip.EquipAttrs.SetEquipAttrEnchant(ap_attr.id, ap_attr.is_enc == 1); //} // FIXME 确定下更新装备信息时,其基础属性会不会变 ClientEventMgr.Instance.FireEvent((int)ClientEvent.CE_EQUIP_INFO_CHANGED, new CEventBaseArgs(equip)); if (equip.IsInstalled) { ClientEventMgr.Instance.FireEvent((int)ClientEvent.CE_INSTALLED_EQUIP_INFO_CHANGED, new CEventBaseArgs(equip)); } }