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); }
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 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); }