internal void SetFilter(TypeEquipmentCharacter _typeFilter) { Debug.Log("type filter " + _typeFilter); _myTypeBag = _typeFilter; FliterByTypeEquipment(_myTypeBag); gameObject.SetActive(true); }
public void FliterByTypeEquipment(TypeEquipmentCharacter _type) { int _myCurrentLevel = int.Parse(SplitDataFromServe._heroCurrentPLay.level); if (_myEquipItems == null) { _myEquipItems = new List <EquipmentItem>(); } else { _myEquipItems.Clear(); } SplitDataFromServe._listEquipmentInBag.ForEach((EquipmentItem item) => { //Debug.Log(item.idTypeEquipment + " | " + item.typeItem); if (item.levelRequired <= _myCurrentLevel && SplitDataFromServe._listSuitableEquipment.Contains(item.idTypeEquipment)) { if (_type == TypeEquipmentCharacter.Weapon || _type == TypeEquipmentCharacter.OffhandWeapon)//vũ khí { if (item.typeItem == TypeEquipmentCharacter.Weapon || item.typeItem == TypeEquipmentCharacter.OffhandWeapon) { _myEquipItems.Add(item); } } else if (item.typeItem == _type) { _myEquipItems.Add(item); } } }); }
internal void MappingTempItemToItem(TypeEquipmentCharacter slot, EquipmentItem _tempItem) { switch (slot) { case TypeEquipmentCharacter.Head: headItem = _tempItem; break; case TypeEquipmentCharacter.Weapon: weaponItem = _tempItem; break; case TypeEquipmentCharacter.Shield: shieldItem = _tempItem; break; case TypeEquipmentCharacter.OffhandWeapon: shieldItem = _tempItem; break; case TypeEquipmentCharacter.Torso: torsoItem = _tempItem; break; case TypeEquipmentCharacter.Leg: legItem = _tempItem; break; case TypeEquipmentCharacter.Gloves: glovesItem = _tempItem; break; case TypeEquipmentCharacter.Boots: bootsItem = _tempItem; break; case TypeEquipmentCharacter.Belt: beltItem = _tempItem; break; case TypeEquipmentCharacter.Amulet: amuletItem = _tempItem; break; case TypeEquipmentCharacter.Ring: ringItem = _tempItem; break; case TypeEquipmentCharacter.Buff: buffItem = _tempItem; break; case TypeEquipmentCharacter.Avatar: avatarItem = _tempItem; break; } }
internal EquipmentItem MappingTypeItemToItem(TypeEquipmentCharacter slot) { switch (slot) { case TypeEquipmentCharacter.Head: return(headItem); case TypeEquipmentCharacter.Weapon: return(weaponItem); case TypeEquipmentCharacter.Shield: return(shieldItem); case TypeEquipmentCharacter.OffhandWeapon: return(shieldItem); case TypeEquipmentCharacter.Torso: return(torsoItem); case TypeEquipmentCharacter.Leg: return(legItem); case TypeEquipmentCharacter.Gloves: return(glovesItem); case TypeEquipmentCharacter.Boots: return(bootsItem); case TypeEquipmentCharacter.Belt: return(beltItem); case TypeEquipmentCharacter.Amulet: return(amuletItem); case TypeEquipmentCharacter.Ring: return(ringItem); case TypeEquipmentCharacter.Buff: return(buffItem); case TypeEquipmentCharacter.Avatar: return(avatarItem); } return(null); }
public static TypeEquipmentCharacter ConvertIdItemToType(int typeEquipped, int typeChild, int idClass, bool isEquipped) { TypeEquipmentCharacter tempType = TypeEquipmentCharacter.None; switch (typeEquipped) { case 1: if (isEquipped) { if (idClass == 1 || idClass == 5 || idClass == 7) { tempType = TypeEquipmentCharacter.OffhandWeapon; } else { tempType = TypeEquipmentCharacter.Shield; } } else { tempType = TypeEquipmentCharacter.Shield; } break; case 2: tempType = TypeEquipmentCharacter.Ring; break; case 3: tempType = TypeEquipmentCharacter.Amulet; break; case 4: case 5: case 6: case 7: case 8: case 9: case 10: case 11: tempType = TypeEquipmentCharacter.Weapon; break; case 12: case 13: case 14: switch (typeChild) { case 1: tempType = TypeEquipmentCharacter.Head; break; case 2: tempType = TypeEquipmentCharacter.Torso; break; case 3: tempType = TypeEquipmentCharacter.Leg; break; case 4: tempType = TypeEquipmentCharacter.Belt; break; case 5: tempType = TypeEquipmentCharacter.Gloves; break; case 6: tempType = TypeEquipmentCharacter.Boots; break; } break; } return(tempType); }
public EquipmentItem(int _idItem, int _idItemInit, TypeEquipmentCharacter _typeItem, ClassCharacterItem _classItem, int idType, int _idGroupSet, string _name, int _lvlRequired, int _lvlUpgraded, int _priceItem, int rareItem) { idItem = _idItem; idItemInit = _idItemInit; typeItem = _typeItem; classItem = _classItem; idTypeEquipment = idType; idGroupSetItems = _idGroupSet; nameItem = _name; levelRequired = _lvlRequired; levelUpgraded = _lvlUpgraded; priceItem = _priceItem; this.rarelyItem = rareItem; }
public EquipmentItem(EquipmentItem _archetype) { idItem = _archetype.idItem; idItemInit = _archetype.idItemInit; typeItem = _archetype.typeItem; classItem = _archetype.classItem; idTypeEquipment = _archetype.idTypeEquipment; rarelyItem = _archetype.rarelyItem; idGroupSetItems = _archetype.idGroupSetItems; nameItem = _archetype.nameItem; levelRequired = _archetype.levelRequired; levelUpgraded = _archetype.levelUpgraded; priceItem = _archetype.priceItem; indexes = new Dictionary <string, object>(_archetype.indexes); }
internal void EquipItem(TypeEquipmentCharacter slot, EquipmentItem newEquip) { if (newEquip.typeItem == slot || (slot == TypeEquipmentCharacter.OffhandWeapon && newEquip.typeItem == TypeEquipmentCharacter.Weapon) || (slot == TypeEquipmentCharacter.Weapon && newEquip.typeItem == TypeEquipmentCharacter.OffhandWeapon)) // Mặc đồ mới { if (CharacterInfo._instance._baseProperties.Level >= newEquip.levelRequired) { _tempItem = MappingTypeItemToItem(slot);// = newEquip; _tempItem = newEquip; _tempItem.typeItem = slot; MappingTempItemToItem(slot, _tempItem); _lastEquipmentChangeSlot = slot; _lastEquipmentChangeItem = newEquip; ChangeItemEvent(); } } }
public static string ConvertTypeItemToString(TypeEquipmentCharacter _type) { switch (_type) { case TypeEquipmentCharacter.Head: return("00"); case TypeEquipmentCharacter.Weapon: return("01"); case TypeEquipmentCharacter.Shield: return("02"); case TypeEquipmentCharacter.Torso: return("03"); case TypeEquipmentCharacter.Leg: return("04"); case TypeEquipmentCharacter.Gloves: return("05"); case TypeEquipmentCharacter.Boots: return("06"); case TypeEquipmentCharacter.Belt: return("07"); case TypeEquipmentCharacter.Amulet: return("08"); case TypeEquipmentCharacter.Ring: return("09"); case TypeEquipmentCharacter.Buff: return("10"); case TypeEquipmentCharacter.Avatar: return("11"); case TypeEquipmentCharacter.Gem: return("12"); case TypeEquipmentCharacter.AlchemyMaterial: return("13"); case TypeEquipmentCharacter.LuckMaterial: return("14"); case TypeEquipmentCharacter.HPRecovery: return("15"); case TypeEquipmentCharacter.Scroll: return("16"); case TypeEquipmentCharacter.VIPCard: return("17"); } return("99"); }
public List <EquipmentItem> FliterByTypeEquipment(TypeEquipmentCharacter _type) { _mapBagToFliter.Clear(); List <EquipmentItem> _newList = new List <EquipmentItem>(); int count = 0; _myItems.ForEach((EquipmentItem item) => { if (_type != TypeEquipmentCharacter.OffhandWeapon) { if (_type == TypeEquipmentCharacter.Weapon) { if (item.typeItem == _type || _type == TypeEquipmentCharacter.OffhandWeapon) { _mapBagToFliter.Add(count, _newList.Count); _newList.Add(item); } } else { if (item.typeItem == _type) { _mapBagToFliter.Add(count, _newList.Count); _newList.Add(item); } } } else { if (item.typeItem == TypeEquipmentCharacter.Weapon || item.typeItem == TypeEquipmentCharacter.OffhandWeapon) { _mapBagToFliter.Add(count, _newList.Count); _newList.Add(item); } } count++; }); return(_newList); }
internal int numberItem; // dành cho các item có số lượng : nguyên liệu,... public EquipmentItem() { idItem = 0; typeItem = TypeEquipmentCharacter.None; }
public static IEnumerator ExecuteRemoveItemOnHero(TypeEquipmentCharacter _typeItem, int idItem, System.Action <string> result) { WaitingPanelScript._instance.ShowWaiting(true); WWWForm form = new WWWForm(); form.AddField("idh", CharacterInfo._instance._baseProperties.idHero); form.AddField("idcode", CharacterInfo._instance._baseProperties.idCodeHero); switch (_typeItem) { case TypeEquipmentCharacter.Weapon: form.AddField("ide_weapon", 0); break; case TypeEquipmentCharacter.Head: form.AddField("ide_head", 0); break; case TypeEquipmentCharacter.Shield: form.AddField("ide_shield", 0); break; case TypeEquipmentCharacter.OffhandWeapon: form.AddField("ide_shield", 0); break; case TypeEquipmentCharacter.Gloves: form.AddField("ide_gloves", 0); break; case TypeEquipmentCharacter.Boots: form.AddField("ide_boots", 0); break; case TypeEquipmentCharacter.Torso: form.AddField("ide_torso", 0); break; case TypeEquipmentCharacter.Belt: form.AddField("ide_belt", 0); break; case TypeEquipmentCharacter.Leg: form.AddField("ide_leg", 0); break; case TypeEquipmentCharacter.Ring: form.AddField("ide_ring", 0); break; case TypeEquipmentCharacter.Amulet: form.AddField("ide_amulet", 0); break; case TypeEquipmentCharacter.Buff: form.AddField("ide_buff", 0); form.AddField("un_buff", idItem); //Debug.LogError("Buff không được phép tháo"); break; case TypeEquipmentCharacter.Avatar: //form.AddField("ide_avatar", 0); //form.AddField("un_avatar", idItem); Debug.LogError("Avatar không được phép tháo"); //Debug.Log(string.Format("idh| {0} idcode| {1} un_avatar|{2}", SplitDataFromServe._heroCurrentPLay.idh, SplitDataFromServe._heroCurrentPLay.idcode, idItem)); break; } // Upload to a cgi script WWW www = new WWW(serverURL + "/api/hero/wearweapon", form); yield return(www); WaitingPanelScript._instance.ShowWaiting(false); if (!string.IsNullOrEmpty(www.error)) { result("Error Code: " + www.error); } else { result(DataReturn(www.text)); } }
public static EquipmentItem CreateEquipmentItem(string data) { //Debug.Log(data); var N = SimpleJSON.JSON.Parse(data); int tempIdItem = N["ide"].AsInt; int tempIdInitItem = N["idie"].AsInt; string tempnameItem = N["name"].Value.ToString(); int templevelRequired = N["levelrequired"].AsInt; int templevelUpgrade = N["levelupgraded"].AsInt; int tempidSet = N["idsuit"].AsInt; int typeEquipped = N["typequipped"].AsInt; int typeChild = N["childtype"].AsInt; ClassCharacterItem _classCharacterItem = ClassCharacterItem.None; switch (typeEquipped) { case 12: _classCharacterItem = ClassCharacterItem.HeavyArmor; break; case 13: _classCharacterItem = ClassCharacterItem.SoftArmor; break; case 14: _classCharacterItem = ClassCharacterItem.ClothArmor; break; default: _classCharacterItem = ClassCharacterItem.None; break; } TypeEquipmentCharacter tempType = MappingData.ConvertIdItemToType(typeEquipped, typeChild, _heroCurrentPLay.idclass, false); int priceItem = N["sellprice"].AsInt; int rare = N["rateitem"].AsInt; EquipmentItem item = new EquipmentItem(tempIdItem, tempIdInitItem, tempType, _classCharacterItem, typeEquipped, tempidSet, tempnameItem, templevelRequired, templevelUpgrade, priceItem, rare); item.setValue("1", N["mindamage"].AsFloat); item.setValue("2", N["maxdamage"].AsFloat); item.setValue("3", N["minmagic"].AsFloat); item.setValue("4", N["maxmagic"].AsFloat); item.setValue("5", N["critmax"].AsFloat); item.setValue("6", N["multicastmax"].AsFloat); item.setValue("7", N["min_incrdamage"].AsFloat); item.setValue("8", N["max_incrdamage"].AsFloat); item.setValue("9", N["min_incrmagic"].AsFloat); item.setValue("10", N["max_incrmagic"].AsFloat); item.setValue("11", N["min_rate"].AsFloat); item.setValue("12", N["max_rate"].AsFloat); item.setValue("13", N["minparryrate"].AsFloat); item.setValue("14", N["maxparryrate"].AsFloat); item.setValue("15", N["min_block"].AsFloat); item.setValue("16", N["max_block"].AsFloat); item.setValue("17", N["minphydef"].AsFloat); item.setValue("18", N["maxphydef"].AsFloat); item.setValue("19", N["minmagicdef"].AsFloat); item.setValue("20", N["maxmagicdef"].AsFloat); item.setValue("21", N["minphyreduction"].AsFloat); item.setValue("22", N["maxphyreduction"].AsFloat); item.setValue("23", N["minmagicreduction"].AsFloat); item.setValue("24", N["maxmagicreduction"].AsFloat); item.setValue("25", N["minphyabsorb"].AsFloat); item.setValue("26", N["maxphyabsorb"].AsFloat); item.setValue("27", N["minmagicabsorb"].AsFloat); item.setValue("28", N["maxmagicabsorb"].AsFloat); item.setValue("listidproperty", N["listidproperty"].Value.ToString()); return(item); }
public static void ReadDetailDataHeroCurrentPlay(string data) { //Debug.Log(data); var N = SimpleJSON.JSON.Parse(data); _heroCurrentPLay = JsonUtility.FromJson <HeroCurrentPlay>(N["hero"].ToString()); int numberItemEquip = N["equipped"].Count; List <int> listIdWearEquipped = new List <int>(); for (int i = 0; i < N["wear_equipped"].Count; i++) { if (N["wear_equipped"][i].AsInt != 0) { listIdWearEquipped.Add(N["wear_equipped"][i].AsInt); } } List <EquipmentItem> _listEquippedInHero = new List <EquipmentItem>(); for (int i = 0; i < numberItemEquip; i++) { int tempIdItem = N["equipped"][i]["ide"].AsInt; int tempIdInitItem = N["equipped"][i]["idie"].AsInt; string tempnameItem = N["equipped"][i]["name"].Value; int templevelRequired = N["equipped"][i]["levelrequired"].AsInt; int templevelUpgrade = N["equipped"][i]["levelupgraded"].AsInt; int tempidSet = N["equipped"][i]["idsuit"].AsInt; int temTypeEquipped = N["equipped"][i]["typequipped"].AsInt; int temChildType = N["equipped"][i]["childtype"].AsInt; int typeEquipped = N["equipped"][i]["typequipped"].AsInt; int typeChild = N["equipped"][i]["childtype"].AsInt; ClassCharacterItem _classCharacterItem = ClassCharacterItem.None; switch (typeEquipped) { case 12: _classCharacterItem = ClassCharacterItem.HeavyArmor; break; case 13: _classCharacterItem = ClassCharacterItem.SoftArmor; break; case 14: _classCharacterItem = ClassCharacterItem.ClothArmor; break; default: _classCharacterItem = ClassCharacterItem.None; break; } TypeEquipmentCharacter tempType = MappingData.ConvertIdItemToType(typeEquipped, typeChild, _heroCurrentPLay.idclass, listIdWearEquipped.Contains(tempIdItem)); if (N["wear_equipped"]["ide_weapon"].AsInt == tempIdItem) { tempType = TypeEquipmentCharacter.Weapon; } else if (N["wear_equipped"]["ide_shield"].AsInt == tempIdItem) { if (_heroCurrentPLay.idclass == 1 || _heroCurrentPLay.idclass == 5 || _heroCurrentPLay.idclass == 7) { tempType = TypeEquipmentCharacter.OffhandWeapon; } else { tempType = TypeEquipmentCharacter.Shield; } } int priceItem = N["equipped"][i]["sellprice"].AsInt; int rare = N["equipped"][i]["rateitem"].AsInt; EquipmentItem item = new EquipmentItem(tempIdItem, tempIdInitItem, tempType, _classCharacterItem, typeEquipped, tempidSet, tempnameItem, templevelRequired, templevelUpgrade, priceItem, rare); item.setValue("1", N["equipped"][i]["mindamage"].AsFloat); item.setValue("2", N["equipped"][i]["maxdamage"].AsFloat); item.setValue("3", N["equipped"][i]["minmagic"].AsFloat); item.setValue("4", N["equipped"][i]["maxmagic"].AsFloat); item.setValue("5", N["equipped"][i]["critmax"].AsFloat); item.setValue("6", N["equipped"][i]["multicastmax"].AsFloat); item.setValue("7", N["equipped"][i]["min_incrdamage"].AsFloat); item.setValue("8", N["equipped"][i]["max_incrdamage"].AsFloat); item.setValue("9", N["equipped"][i]["min_incrmagic"].AsFloat); item.setValue("10", N["equipped"][i]["max_incrmagic"].AsFloat); item.setValue("11", N["equipped"][i]["min_rate"].AsFloat); item.setValue("12", N["equipped"][i]["max_rate"].AsFloat); item.setValue("13", N["equipped"][i]["minparryrate"].AsFloat); item.setValue("14", N["equipped"][i]["maxparryrate"].AsFloat); item.setValue("15", N["equipped"][i]["min_block"].AsFloat); item.setValue("16", N["equipped"][i]["max_block"].AsFloat); item.setValue("17", N["equipped"][i]["minphydef"].AsFloat); item.setValue("18", N["equipped"][i]["maxphydef"].AsFloat); item.setValue("19", N["equipped"][i]["minmagicdef"].AsFloat); item.setValue("20", N["equipped"][i]["maxmagicdef"].AsFloat); item.setValue("21", N["equipped"][i]["minphyreduction"].AsFloat); item.setValue("22", N["equipped"][i]["maxphyreduction"].AsFloat); item.setValue("23", N["equipped"][i]["minmagicreduction"].AsFloat); item.setValue("24", N["equipped"][i]["maxmagicreduction"].AsFloat); item.setValue("25", N["equipped"][i]["minphyabsorb"].AsFloat); item.setValue("26", N["equipped"][i]["maxphyabsorb"].AsFloat); item.setValue("27", N["equipped"][i]["minmagicabsorb"].AsFloat); item.setValue("28", N["equipped"][i]["maxmagicabsorb"].AsFloat); item.priceItem = N["equipped"][i]["sellprice"].AsInt; string _valueProperty = N["equipped"][i]["listidproperty"].Value; item.setValue("listidproperty", _valueProperty); if (_valueProperty.Equals("null") || _valueProperty.Equals("[]") || string.IsNullOrEmpty(_valueProperty)) { } else { try { var M = CoreLib.JSON.Parse(_valueProperty); foreach (KeyValuePair <string, CoreLib.JSONNode> _temp in M.AsObject) { //Debug.Log(_temp.Key.ToString()); item.setValue(_temp.Key.ToString(), float.Parse(_temp.Value.AsFloat.ToString())); } } catch (Exception e) { Debug.Log(e); Debug.Log(tempIdItem + " " + _valueProperty); } } //Debug.Log(item.typeItem); if (listIdWearEquipped.Contains(tempIdItem)) { _listEquippedInHero.Add(item); } else { _listEquipmentInBag.Add(item); } } int numberAvatar = N["avatar"].Count; for (int i = 0; i < numberAvatar; i++) { int tempIdItem = N["avatar"][i]["idha"].AsInt; //int tempIdInitItem = N["avatar"][i]["idia"].AsInt; string tempnameItem = N["avatar"][i]["name"].Value.ToString(); int templevelRequired = 1; int templevelUpgrade = int.Parse(N["avatar"][i]["level"].Value.ToString()); int tempidSet = 0; int priceItem = 0; int rare = 0; EquipmentItem item = new EquipmentItem(tempIdItem, 1, TypeEquipmentCharacter.Avatar, ClassCharacterItem.None, 0, tempidSet, tempnameItem, templevelRequired, templevelUpgrade, priceItem, rare); //Thêm các dòng trắng item.setValue("97", float.Parse(N["avatar"][i]["hp"].Value.ToString())); item.setValue("98", float.Parse(N["avatar"][i]["physical_damage"].Value.ToString())); item.setValue("99", float.Parse(N["avatar"][i]["magical_damage"].Value.ToString())); item.setValue("100", float.Parse(N["avatar"][i]["physical_absorption"].Value.ToString())); item.setValue("101", float.Parse(N["avatar"][i]["magical_absorption"].Value.ToString())); item.setValue("999", N["avatar"][i]["maxlist"].AsInt); item.setValue("listidproperty", N["avatar"][i]["listidproperty"].Value.ToString()); try { var M = SimpleJSON.JSON.Parse(N["avatar"][i]["listidproperty"].Value.ToString()); foreach (KeyValuePair <string, SimpleJSON.JSONNode> _temp in M.AsObject) { //Debug.Log(_temp.Key.ToString()); item.setValue(_temp.Key.ToString(), float.Parse(_temp.Value.AsFloat.ToString())); } } catch (Exception e) { } //check trong túi hay người if (listIdWearEquipped.Contains(tempIdItem)) { _listEquippedInHero.Add(item); } else { _listEquipmentInBag.Add(item); } } int numberBuff = N["buff"].Count; for (int i = 0; i < numberBuff; i++) { int tempIdItem = N["buff"][i]["idbf"].AsInt; int tempIdInit = N["buff"][i]["idibf"].AsInt; string tempnameItem = N["buff"][i]["name"].Value.ToString(); int templevelRequired = 1; int templevelUpgrade = int.Parse(N["buff"][i]["level"].Value.ToString()); int tempidSet = 0; int priceItem = N["buff"][i]["sellprice"].AsInt; int rare = 0; EquipmentItem item = new EquipmentItem(tempIdItem, tempIdInit, TypeEquipmentCharacter.Buff, ClassCharacterItem.None, 0, tempidSet, tempnameItem, templevelRequired, templevelUpgrade, priceItem, rare); float _rate = N["buff"][i]["rate"].AsFloat; int _idRate = MappingData.ConvertIdBuffToAttribute(tempIdInit); item.setValue(_idRate.ToString(), _rate); //check trong túi hay người if (listIdWearEquipped.Contains(tempIdItem)) { _listEquippedInHero.Add(item); } else { _listEquipmentInBag.Add(item); } } _equipmentCurrentHero = new EquipmentsCharacter(_listEquippedInHero); }
internal bool isHaveItem(TypeEquipmentCharacter slot) { return(MappingTypeItemToItem(slot).idItem == 0 ? false : true); }
public static void ReadDetailDataHeroEnemyPlay(string data) { var N = SimpleJSON.JSON.Parse(data); _heroEnemyPlay = JsonUtility.FromJson <HeroCurrentPlay>(N["hero"].ToString()); int numberItemEquip = N["equipped"].Count; List <int> listIdWearEquipped = new List <int>(); for (int i = 0; i < N["wear_equipped"].Count; i++) { if (N["wear_equipped"][i].AsInt != 0) { listIdWearEquipped.Add(N["wear_equipped"][i].AsInt); } } List <EquipmentItem> _listEquippedInHero = new List <EquipmentItem>(); for (int i = 0; i < numberItemEquip; i++) { if (listIdWearEquipped.Contains(N["equipped"][i]["ide"].AsInt)) { int tempIdItem = N["equipped"][i]["ide"].AsInt; int tempIdInitItem = N["equipped"][i]["idie"].AsInt; string tempnameItem = N["equipped"][i]["name"].Value; int templevelRequired = N["equipped"][i]["levelrequired"].AsInt; int templevelUpgrade = N["equipped"][i]["levelupgraded"].AsInt; int tempidSet = N["equipped"][i]["idsuit"].AsInt; int temTypeEquipped = N["equipped"][i]["typequipped"].AsInt; int temChildType = N["equipped"][i]["childtype"].AsInt; //TypeEquipmentCharacter tempType = GetSlotWearEquipped(data, tempIdItem, _heroEnemyPlay.idclass); int priceItem = N["equipped"][i]["sellprice"].AsInt; int rareItem = N["equipped"][i]["rateitem"].AsInt; int typeEquipped = N["equipped"][i]["typequipped"].AsInt; int typeChild = N["equipped"][i]["childtype"].AsInt; ClassCharacterItem _classCharacterItem = ClassCharacterItem.None; switch (typeEquipped) { case 12: _classCharacterItem = ClassCharacterItem.HeavyArmor; break; case 13: _classCharacterItem = ClassCharacterItem.SoftArmor; break; case 14: _classCharacterItem = ClassCharacterItem.ClothArmor; break; default: _classCharacterItem = ClassCharacterItem.None; break; } TypeEquipmentCharacter tempType = MappingData.ConvertIdItemToType(typeEquipped, typeChild, _heroCurrentPLay.idclass, listIdWearEquipped.Contains(tempIdItem)); if (N["wear_equipped"]["ide_weapon"].AsInt == tempIdItem) { tempType = TypeEquipmentCharacter.Weapon; } else if (N["wear_equipped"]["ide_shield"].AsInt == tempIdItem) { if (_heroCurrentPLay.idclass == 1 || _heroCurrentPLay.idclass == 5 || _heroCurrentPLay.idclass == 7) { tempType = TypeEquipmentCharacter.OffhandWeapon; } else { tempType = TypeEquipmentCharacter.Shield; } } EquipmentItem item = new EquipmentItem(tempIdItem, tempIdInitItem, tempType, _classCharacterItem, typeEquipped, tempidSet, tempnameItem, templevelRequired, templevelUpgrade, priceItem, rareItem); item.setValue("1", N["equipped"][i]["mindamage"].AsFloat); item.setValue("2", N["equipped"][i]["maxdamage"].AsFloat); item.setValue("3", N["equipped"][i]["minmagic"].AsFloat); item.setValue("4", N["equipped"][i]["maxmagic"].AsFloat); item.setValue("5", N["equipped"][i]["critmax"].AsFloat); item.setValue("6", N["equipped"][i]["multicastmax"].AsFloat); item.setValue("7", N["equipped"][i]["min_incrdamage"].AsFloat); item.setValue("8", N["equipped"][i]["max_incrdamage"].AsFloat); item.setValue("9", N["equipped"][i]["min_incrmagic"].AsFloat); item.setValue("10", N["equipped"][i]["max_incrmagic"].AsFloat); item.setValue("11", N["equipped"][i]["min_rate"].AsFloat); item.setValue("12", N["equipped"][i]["max_rate"].AsFloat); item.setValue("13", N["equipped"][i]["minparryrate"].AsFloat); item.setValue("14", N["equipped"][i]["maxparryrate"].AsFloat); item.setValue("15", N["equipped"][i]["min_block"].AsFloat); item.setValue("16", N["equipped"][i]["max_block"].AsFloat); item.setValue("17", N["equipped"][i]["minphydef"].AsFloat); item.setValue("18", N["equipped"][i]["maxphydef"].AsFloat); item.setValue("19", N["equipped"][i]["minmagicdef"].AsFloat); item.setValue("20", N["equipped"][i]["maxmagicdef"].AsFloat); item.setValue("21", N["equipped"][i]["minphyreduction"].AsFloat); item.setValue("22", N["equipped"][i]["maxphyreduction"].AsFloat); item.setValue("23", N["equipped"][i]["minmagicreduction"].AsFloat); item.setValue("24", N["equipped"][i]["maxmagicreduction"].AsFloat); item.setValue("25", N["equipped"][i]["minphyabsorb"].AsFloat); item.setValue("26", N["equipped"][i]["maxphyabsorb"].AsFloat); item.setValue("27", N["equipped"][i]["minmagicabsorb"].AsFloat); item.setValue("28", N["equipped"][i]["maxmagicabsorb"].AsFloat); item.setValue("listidproperty", N["equipped"][i]["maxmagicabsorb"].Value.ToString()); _listEquippedInHero.Add(item); } } _equipmentCurrentEnemy = new EquipmentsCharacter(_listEquippedInHero); }
public EquipmentItem(int id, TypeEquipmentCharacter _type) { idItem = id; typeItem = _type; levelRequired = 0; }
private void BtnItemInforClick() { string param = ItemInforController.Message; if (!isActiveStorageUI) { return; } if (param.Equals("UseItem")) { StartCoroutine(ServerAdapter.UseItemInShop(CharacterInfo._instance._baseProperties.idHero, CharacterInfo._instance._baseProperties.idCodeHero, int.Parse(SplitDataFromServe._listItemInBag[idItemSelected].getValue("idht").ToString()), 1, result => { if (result.StartsWith("Error")) { TextNotifyScript.instance.SetData(result); } else { var N = SimpleJSON.JSON.Parse(result); int idItem = int.Parse(SplitDataFromServe._listItemInBag[idItemSelected].getValue("idit").ToString()); if (idItem == 31) //dùng thẻ protect { long timeSticks = long.Parse(N["timeprotection"].Value); DateTime _timeActive = new DateTime(timeSticks * 10000000 + new DateTime(1969, 12, 31, 12, 0, 0).Ticks); _rewardItem.SetData("Used Item: " + SplitDataFromServe._listItemInBag[idItemSelected].getValue("name").ToString(), "Time Active: " + _timeActive.ToLocalTime()); } else if (idItem >= 65 && idItem <= 68) //dùng thẻ { long timeSticks = long.Parse(N["timedaypremium"].Value); DateTime _timeActive = new DateTime(timeSticks * 10000000 + new DateTime(1969, 12, 31, 12, 0, 0).Ticks); _rewardItem.SetData("Used Item: " + SplitDataFromServe._listItemInBag[idItemSelected].getValue("name").ToString(), "Time Active: " + _timeActive.ToLocalTime()); } else if (idItem == 70) //reset skill point { SplitDataFromServe._heroSkill.Clear(); int numberSkillPoint = N["skillpoint"].AsInt; CharacterInfo._instance._skillPoints += numberSkillPoint; _rewardItem.SetData("Used Item: " + SplitDataFromServe._listItemInBag[idItemSelected].getValue("name").ToString(), "Skill point return: " + numberSkillPoint); } SplitDataFromServe.SubItemInBag(idItemSelected, 1); DisplayItemInBag(); } })); } else if (param.Equals("SellItem")) { _infoItemPanel.SetData(false, SplitDataFromServe._listItemInBag[idItemSelected], _listSlotItem[idItemSelected]._iconImg.sprite); } else if (param.Equals("UpdateEquipment")) { DisplayEquipmentInBag(); } else if (param.Equals("SellEquipment"))//Chọn đồ { if (SplitDataFromServe._listEquipmentInBag[idItemSelected].typeItem == TypeEquipmentCharacter.Buff) { StartCoroutine(ServerAdapter.SellBuff(CharacterInfo._instance._baseProperties.idHero, CharacterInfo._instance._baseProperties.idCodeHero, SplitDataFromServe._listEquipmentInBag[idItemSelected].idItem, result => { if (result.StartsWith("Error")) { TextNotifyScript.instance.SetData(result); } else { var N = SimpleJSON.JSON.Parse(result); CharacterInfo._instance._baseProperties.Gold += N["plusgold"].AsInt; this.PostEvent(EventID.OnPropertiesChange); SplitDataFromServe._listEquipmentInBag.RemoveAt(idItemSelected); DisplayEquipmentInBag(); } })); } else { StartCoroutine(ServerAdapter.SellEquipment(CharacterInfo._instance._baseProperties.idHero, CharacterInfo._instance._baseProperties.idCodeHero, SplitDataFromServe._listEquipmentInBag[idItemSelected].idItem, result => { if (result.StartsWith("Error")) { TextNotifyScript.instance.SetData(result); } else { var N = SimpleJSON.JSON.Parse(result); CharacterInfo._instance._baseProperties.Gold += N["plusgold"].AsInt; this.PostEvent(EventID.OnPropertiesChange); SplitDataFromServe._listEquipmentInBag.RemoveAt(idItemSelected); DisplayEquipmentInBag(); } })); } } else if (param.Equals("ReplaceEquipmentFromBag")) { _myEquipment = SplitDataFromServe._listEquipmentInBag[idItemSelected]; isCanUse = true; _myTypeBag = _myEquipment.typeItem; if (_myEquipment.levelRequired <= _myCurrentLevel && SplitDataFromServe._listSuitableEquipment.Contains(_myEquipment.idTypeEquipment)) { if (_myEquipment.typeItem == TypeEquipmentCharacter.Weapon) { if (!CharacterInfo._instance._baseProperties._classCharacter.Equals(MappingData.GetSuitableClassForWeapon(_myEquipment.idTypeEquipment))) { isCanUse = false; } } } else { isCanUse = false; } //Debug.Log("is can use this equipment " + isCanUse); if (isCanUse) { StartCoroutine(ServerAdapter.ExecuteChangeEquipment(_myEquipment, result => { if (result.StartsWith("Error")) { TextNotifyScript.instance.SetData(result); } else { _tempItem = _equipmentsCharacter.MappingTypeItemToItem(_myTypeBag); if (_tempItem != null) { SplitDataFromServe._listEquipmentInBag.Add(_tempItem); } _equipmentsCharacter.EquipItem(_myTypeBag, _myEquipment); SplitDataFromServe._listEquipmentInBag.Remove(_myEquipment); //CharacterInfo._instance._baseProperties.AddBonusItem(_myEquipItems[id]); DisplayEquipmentInBag(); } })); } } }