/// <summary> /// 检查玩家是否有意愿捡取该品质物品 /// </summary> /// <param name="tpid">物品配置ID</param> /// <returns></returns> public bool WillPick(uint tpid) { a3_ItemData itmData = a3_BagModel.getInstance().getItemDataById(tpid); int quality = itmData.quality; int bitQual = (1 << (quality - 1)); bool will = true; if (itmData.item_type == 1) {//道具 //will = ((bitQual & PickMat) != 0); var ap = XMLMgr.instance.GetSXML("autoplay"); string[] eqpcl = ap.GetNode("eqp_cailiao").getString("list").Split(','); string[] petcl = ap.GetNode("pet_cailiao").getString("list").Split(','); string[] wingcl = ap.GetNode("wing_cailiao").getString("list").Split(','); string[] summoncl = ap.GetNode("summon_cailiao").getString("list").Split(','); string[] drugscl = ap.GetNode("drugs").getString("list").Split(','); if (eqpcl.Contains(tpid.ToString()) && PickEqp_cailiao != 1) { will = false; } else if (petcl.Contains(tpid.ToString()) && PickPet_cailiao != 1) { will = false; } else if (wingcl.Contains(tpid.ToString()) && PickWing_cailiao != 1) { will = false; } else if (summoncl.Contains(tpid.ToString()) && PickSummon_cailiao != 1) { will = false; } else if (drugscl.Contains(tpid.ToString()) && PickDrugs != 1) { will = false; } else if (PickOther != 1) { will = false; } } else if (itmData.item_type == 2) {//装备 will = ((bitQual & PickEqp) != 0); } else if (tpid == 0) {//金币 if (PickGold != 1) { will = false; } } return(will); }
public void refreshViewData1(Variant v) { int num = v["carr"]; bool flag = v.ContainsKey("eqp"); if (flag) { this.m_roleDta.m_BodyID = 0; this.m_roleDta.m_BodyFXID = 0; this.m_roleDta.m_EquipColorID = 0u; this.m_roleDta.m_Weapon_LID = 0; this.m_roleDta.m_Weapon_LFXID = 0; this.m_roleDta.m_Weapon_RID = 0; this.m_roleDta.m_Weapon_RFXID = 0; foreach (Variant current in v["eqp"]._arr) { a3_ItemData itemDataById = ModelBase <a3_BagModel> .getInstance().getItemDataById(current["tpid"]); bool flag2 = itemDataById.equip_type == 3; if (flag2) { int tpid = (int)itemDataById.tpid; int bodyFXID = current["intensify"]; this.m_roleDta.m_BodyID = tpid; this.m_roleDta.m_BodyFXID = bodyFXID; uint equipColorID = 0u; bool flag3 = current.ContainsKey("colour"); if (flag3) { equipColorID = current["colour"]; } this.m_roleDta.m_EquipColorID = equipColorID; } bool flag4 = itemDataById.equip_type == 6; if (flag4) { int tpid2 = (int)itemDataById.tpid; int num2 = current["intensify"]; switch (num) { case 2: this.m_roleDta.m_Weapon_RID = tpid2; this.m_roleDta.m_Weapon_RFXID = num2; break; case 3: this.m_roleDta.m_Weapon_LID = tpid2; this.m_roleDta.m_Weapon_LFXID = num2; break; case 5: this.m_roleDta.m_Weapon_LID = tpid2; this.m_roleDta.m_Weapon_LFXID = num2; this.m_roleDta.m_Weapon_RID = tpid2; this.m_roleDta.m_Weapon_RFXID = num2; break; } } } } bool flag5 = v.ContainsKey("wing"); if (flag5) { this.m_roleDta.m_WindID = v["wing"]; } bool flag6 = v.ContainsKey("ach_title"); if (flag6) { base.title_id = v["ach_title"]; base.isactive = v["title_display"]._bool; PlayerNameUIMgr.getInstance().refreshTitlelv(this, base.title_id); } bool flag7 = v.ContainsKey("lvl"); if (flag7) { this.lvl = v["lvl"]; } bool flag8 = v.ContainsKey("combpt"); if (flag8) { this.combpt = v["combpt"]; } bool flag9 = v.ContainsKey("clname"); if (flag9) { this.clanName = v["clname"]; } ArrayList arrayList = new ArrayList(); arrayList.Add(this.m_unCID); arrayList.Add(this.combpt); bool flag10 = BaseProxy <FriendProxy> .getInstance() != null; if (flag10) { BaseProxy <FriendProxy> .getInstance().reFreshProfessionInfo(arrayList); } bool flag11 = OtherPlayerMgr._inst.VIEW_PLAYER_TYPE == 1 || this.m_isMain; if (flag11) { base.refreshViewType(BaseRole.VIEW_TYPE_ALL); } }
public override void refreshViewData(Variant v) { bool flag = !this.m_isMain && this.m_moveAgent != null && this.m_moveAgent.enabled; if (flag) { this.m_moveAgent.avoidancePriority = 48; } this.detailInfo = v; int num = v["carr"]; bool flag2 = v.ContainsKey("activate_count"); if (flag2) { this.m_roleDta.add_eff = false; bool flag3 = v["activate_count"] >= 10; if (flag3) { this.m_roleDta.add_eff = true; } } bool flag4 = v.ContainsKey("show_eqp"); if (flag4) { this.m_roleDta.m_BodyID = 0; this.m_roleDta.m_BodyFXID = 0; this.m_roleDta.m_EquipColorID = 0u; this.m_roleDta.m_Weapon_LID = 0; this.m_roleDta.m_Weapon_LFXID = 0; this.m_roleDta.m_Weapon_RID = 0; this.m_roleDta.m_Weapon_RFXID = 0; foreach (Variant current in v["show_eqp"]._arr) { a3_ItemData itemDataById = ModelBase <a3_BagModel> .getInstance().getItemDataById(current["tpid"]); bool flag5 = itemDataById.equip_type == 3; if (flag5) { int tpid = (int)itemDataById.tpid; int bodyFXID = current["stage"]; this.m_roleDta.m_BodyID = tpid; this.m_roleDta.m_BodyFXID = bodyFXID; uint equipColorID = 0u; bool flag6 = current.ContainsKey("colour"); if (flag6) { equipColorID = current["colour"]; } this.m_roleDta.m_EquipColorID = equipColorID; } bool flag7 = itemDataById.equip_type == 6; if (flag7) { int tpid2 = (int)itemDataById.tpid; int num2 = current["stage"]; switch (num) { case 2: this.m_roleDta.m_Weapon_RID = tpid2; this.m_roleDta.m_Weapon_RFXID = num2; break; case 3: this.m_roleDta.m_Weapon_LID = tpid2; this.m_roleDta.m_Weapon_LFXID = num2; break; case 5: this.m_roleDta.m_Weapon_LID = tpid2; this.m_roleDta.m_Weapon_LFXID = num2; this.m_roleDta.m_Weapon_RID = tpid2; this.m_roleDta.m_Weapon_RFXID = num2; break; } } } } bool flag8 = v.ContainsKey("wing"); if (flag8) { this.m_roleDta.m_WindID = v["wing"]["show_stage"]; } bool flag9 = v.ContainsKey("ach_title"); if (flag9) { base.title_id = v["ach_title"]; base.isactive = v["title_display"]._bool; PlayerNameUIMgr.getInstance().refreshTitlelv(this, base.title_id); } bool flag10 = v.ContainsKey("serial_kp"); if (flag10) { PlayerNameUIMgr.getInstance().refreserialCount(this, v["serial_kp"]); } bool flag11 = v.ContainsKey("rednm"); if (flag11) { base.rednm = v["rednm"]; PlayerNameUIMgr.getInstance().refreshNameColor(this, base.rednm); bool flag12 = SelfRole._inst != null && SelfRole._inst.m_LockRole != null && SelfRole._inst.m_LockRole.m_unIID == v["iid"]; if (flag12) { PkmodelAdmin.RefreshShow(SelfRole._inst.m_LockRole, false, true); } } bool flag13 = v.ContainsKey("strike_back_tm"); if (flag13) { base.hidbacktime = v["strike_back_tm"]; PlayerNameUIMgr.getInstance().refresHitback(this, (int)(base.hidbacktime - (uint)NetClient.instance.CurServerTimeStamp), false); } bool flag14 = v.ContainsKey("lvl"); if (flag14) { this.lvl = v["lvl"]; } bool flag15 = v.ContainsKey("combpt"); if (flag15) { this.combpt = v["combpt"]; } bool flag16 = v.ContainsKey("clname"); if (flag16) { this.clanName = v["clname"]; } ArrayList arrayList = new ArrayList(); arrayList.Add(this.m_unCID); arrayList.Add(this.combpt); bool flag17 = BaseProxy <FriendProxy> .getInstance() != null; if (flag17) { BaseProxy <FriendProxy> .getInstance().reFreshProfessionInfo(arrayList); } bool flag18 = OtherPlayerMgr._inst.VIEW_PLAYER_TYPE == 1 || this.m_isMain; if (flag18) { base.refreshViewType(BaseRole.VIEW_TYPE_ALL); } }
public bool WillPick(uint tpid) { a3_ItemData itemDataById = ModelBase <a3_BagModel> .getInstance().getItemDataById(tpid); int quality = itemDataById.quality; int num = 1 << quality - 1; bool result = true; bool flag = itemDataById.item_type == 1; if (flag) { SXML sXML = XMLMgr.instance.GetSXML("autoplay", ""); string[] source = sXML.GetNode("eqp_cailiao", "").getString("list").Split(new char[] { ',' }); string[] source2 = sXML.GetNode("pet_cailiao", "").getString("list").Split(new char[] { ',' }); string[] source3 = sXML.GetNode("wing_cailiao", "").getString("list").Split(new char[] { ',' }); string[] source4 = sXML.GetNode("summon_cailiao", "").getString("list").Split(new char[] { ',' }); string[] source5 = sXML.GetNode("drugs", "").getString("list").Split(new char[] { ',' }); bool flag2 = source.Contains(tpid.ToString()) && this.PickEqp_cailiao != 1; if (flag2) { result = false; } else { bool flag3 = source2.Contains(tpid.ToString()) && this.PickPet_cailiao != 1; if (flag3) { result = false; } else { bool flag4 = source3.Contains(tpid.ToString()) && this.PickWing_cailiao != 1; if (flag4) { result = false; } else { bool flag5 = source4.Contains(tpid.ToString()) && this.PickSummon_cailiao != 1; if (flag5) { result = false; } else { bool flag6 = source5.Contains(tpid.ToString()) && this.PickDrugs != 1; if (flag6) { result = false; } else { bool flag7 = this.PickOther != 1; if (flag7) { result = false; } } } } } } } else { bool flag8 = itemDataById.item_type == 2; if (flag8) { result = ((num & this.PickEqp) != 0); } else { bool flag9 = tpid == 0u; if (flag9) { bool flag10 = this.PickGold != 1; if (flag10) { result = false; } } } } return(result); }