private static void AddWeaponIntoRsp(GetEquipmentDataRsp rsp, int addNum) { List <WeaponMetaData> itemList = WeaponMetaDataReader.GetItemList(); int num = 0; foreach (WeaponMetaData data in itemList) { num++; if (num > addNum) { break; } Weapon item = new Weapon(); item.set_unique_id(GenerateNewUid()); item.set_id((uint)data.ID); item.set_level(1); item.set_exp(0); rsp.get_weapon_list().Add(item); num++; } List <AvatarMetaData> list2 = AvatarMetaDataReader.GetItemList(); _weaponUidSet = new Dictionary <int, uint>(); foreach (AvatarMetaData data2 in list2) { WeaponMetaData weaponMetaDataByKey = WeaponMetaDataReader.GetWeaponMetaDataByKey(data2.initialWeapon); Weapon weapon2 = new Weapon(); weapon2.set_unique_id(GenerateNewUid()); weapon2.set_id((uint)weaponMetaDataByKey.ID); weapon2.set_level(1); weapon2.set_exp(0); rsp.get_weapon_list().Add(weapon2); _weaponUidSet[data2.avatarID] = weapon2.get_unique_id(); } }
public WeaponDataItem(int uid, WeaponMetaData weaponMetaData) { base.uid = uid; this._metaData = weaponMetaData; base.ID = this._metaData.ID; base.rarity = this._metaData.rarity; base.level = 1; this.durability = this._metaData.durabilityMax; base.exp = 0; base.number = 1; if (this._metaData != null) { this.skills = this.GetSkills(); } }
private List <WeaponMetaData> GetAllWeaponData() { List <WeaponMetaData> itemList = WeaponMetaDataReader.GetItemList(); List <WeaponMetaData> list2 = new List <WeaponMetaData>(); int num = 0; int count = itemList.Count; while (num < count) { WeaponMetaData item = itemList[num]; if (!ItempediaData.IsInBlacklist(item.ID) && (item.subRarity == 0)) { list2.Add(item); } num++; } return(list2); }
private void ReturnMaterial(StorageDataItemBase input) { WeaponDataItem item = input as WeaponDataItem; List <int> evoPath = WeaponMetaDataReaderExtend.GetEvoPath(item.ID); int num = 0; foreach (int num2 in evoPath) { int accumulateExp = 0; if (num2 == item.ID) { int expType = item.GetExpType(); int exp = item.exp; accumulateExp = EquipmentLevelMetaDataReaderExtend.GetAccumulateExp(item.level, expType) + exp; } else { WeaponMetaData weaponMetaDataByKey = WeaponMetaDataReader.GetWeaponMetaDataByKey(num2); int type = weaponMetaDataByKey.expType; accumulateExp = EquipmentLevelMetaDataReaderExtend.GetAccumulateExp(weaponMetaDataByKey.maxLv, type); } num += accumulateExp; } float num9 = Singleton <PlayerModule> .Instance.playerData.disjoin_equipment_back_exp_percent * 0.01f; int num11 = (int)(num * num9); int[] numArray = new int[] { 0xbbc, 0xbbb, 0xbba, 0xbb9 }; foreach (int num12 in numArray) { float gearExpProvideBase = ItemMetaDataReader.GetItemMetaDataByKey(num12).gearExpProvideBase; float num15 = MaterialExpBonusMetaDataReader.GetMaterialExpBonusMetaDataByKey(num12).weaponExpBonus * 0.01f; int num16 = (int)(gearExpProvideBase * num15); int num17 = num11 / num16; num11 = num11 % num16; if (num17 > 0) { this.AddItem(num12, num17); } } }
public StorageDataItemBase GetDummyStorageItemData() { if (this._dummyStorageItemData == null) { if (this._itemData is WeaponMetaData) { WeaponMetaData weaponMetaData = (WeaponMetaData)this._itemData; this._dummyStorageItemData = new WeaponDataItem(0, weaponMetaData); this._dummyStorageItemData.level = weaponMetaData.maxLv; } else if (this._itemData is StigmataMetaData) { StigmataMetaData stigmataMetaData = (StigmataMetaData)this._itemData; this._dummyStorageItemData = new StigmataDataItem(0, stigmataMetaData); this._dummyStorageItemData.level = stigmataMetaData.maxLv; ((StigmataDataItem)this._dummyStorageItemData).SetAffixSkill(true, 0, 0); } else if (this._itemData is ItemMetaData) { this._dummyStorageItemData = new MaterialDataItem((ItemMetaData)this._itemData); } } return(this._dummyStorageItemData); }