public HeroEquipmentFormat GetEquipmentAfterReinforced(int selectLevel, HeroEquipmentFormat equipmentData) { HeroEquipmentFormat _newEquipment = equipmentData.CloneEx(); var _equipmentReinforceRangeList = EquipmentReinforceValueRangeTableReader.Instance.DefaultCachedList; var _equipmentReinforceRange = _equipmentReinforceRangeList [selectLevel]; // normal reinforce if (selectLevel <= (int)EQUIPMENT_REINFORCE_LEVEL.REINFORCE_BIG) { var _attributeOffset = ReinforcementByIncreaseAttributeValue(equipmentData, _equipmentReinforceRange); _newEquipment.EquipmentAttributeOffsetList.Add(_attributeOffset); } //miracle reinforce else if (selectLevel == (int)EQUIPMENT_REINFORCE_LEVEL.REINFORCE_MIRACLE) { //if base attribute list count is less than 4, add a attribute into base attribute list if (equipmentData.EquipmentAttributeBaseList.Count < EquipmentOthers.EQUIPMENT_REINFORCE_ATTRIBUTE_BASE_LIST_MAX) { var _attributeNew = ReinforcementByIncreaseAttributeType(equipmentData); _newEquipment.EquipmentAttributeBaseList.Add(_attributeNew); } // if base attribute list count is 4, same with normal but with different randon range else if (equipmentData.EquipmentAttributeBaseList.Count == EquipmentOthers.EQUIPMENT_REINFORCE_ATTRIBUTE_BASE_LIST_MAX) { var _attributeOffset = ReinforcementByIncreaseAttributeValue(equipmentData, _equipmentReinforceRange); _newEquipment.EquipmentAttributeOffsetList.Add(_attributeOffset); } } _newEquipment.ReinforcementLevel += 1; return(_newEquipment); }
public EquipmentAttribute ReinforcementByIncreaseAttributeType(HeroEquipmentFormat equipmentData) { var _randAttributeTypeList = EquipmentReinforceAttributeRangeTableReader.Instance.DefaultCachedList; List <EquipmentReinforceAttributeRangeTable> attributeRandomList = _randAttributeTypeList.CloneEx(); for (int i = 0; i < _randAttributeTypeList.Count; i++) { for (int j = 0; j < equipmentData.EquipmentAttributeBaseList.Count; j++) { //remove the type that already existed if (_randAttributeTypeList [i].AttributeType == equipmentData.EquipmentAttributeBaseList [j].AttributeType) { attributeRandomList.Remove(_randAttributeTypeList [i]); } } } //rand the new type from type list except the types that already exist int _randTypeIndex = Random.Range(0, attributeRandomList.Count); ATTRIBUTE_TYPE _randType = _randAttributeTypeList [_randTypeIndex].AttributeType; //rand the value int _randValue = Random.Range(_randAttributeTypeList [_randTypeIndex].RandMin, _randAttributeTypeList [_randTypeIndex].RandMax + 1); EquipmentAttribute _attributeOffset = new EquipmentAttribute(_randType, _randValue); return(_attributeOffset); }
public HeroEquipmentSaveDataFormat(HeroEquipmentFormat equipmentGameData) { this.DBEquipmentID = equipmentGameData.DBEquipmentID; this.ReinforcementLevel = equipmentGameData.ReinforcementLevel; this.EquipmentAttributeBaseList = equipmentGameData.EquipmentAttributeBaseList.CloneEx(); this.EquipmentAttributeOffsetList = equipmentGameData.EquipmentAttributeOffsetList.CloneEx(); }
public EquipmentAttribute ReinforcementByIncreaseAttributeValue(HeroEquipmentFormat equipmentData, EquipmentReinforceValueRangeTable equipmentReinforceRange) { //random a type to reinforce int _randTypeID = Random.Range(0, equipmentData.EquipmentAttributeBaseList.Count); int _normalAttribute = equipmentData.EquipmentAttributeBaseList [_randTypeID].Attribute; ATTRIBUTE_TYPE _type = equipmentData.EquipmentAttributeBaseList [_randTypeID].AttributeType; //random value of the type double _randOffset = System.Math.Round(Random.Range(equipmentReinforceRange.RandMin, equipmentReinforceRange.RandMax), 2); int _value = equipmentReinforceRange.Base + Mathf.FloorToInt((float)(_normalAttribute * _randOffset)); EquipmentAttribute _attributeOffset = new EquipmentAttribute(_type, _value); return(_attributeOffset); }
public void LoadDataToDisplay(HeroEquipmentFormat equipmentData) { ReinforcementLevel.Clear(); EquipmentIcon.IconDisplayOrNot(false); EquipmentName.NoEquipmentMessage(); for (int i = 0; i < AttributeList.Length; i++) { AttributeList [i].DataClear(); } this.selfEquipmentData = equipmentData; if (this.selfEquipmentData != null) { if (this.selfEquipmentData.ReinforcementLevel > 0) { ReinforcementLevel.ShowAttributeNum(this.selfEquipmentData.ReinforcementLevel, true); } EquipmentIcon.IconDisplayOrNot(true); EquipmentIcon.ShowEquipmentIcon(this.selfEquipmentData.TexturePath, this.selfEquipmentData.TextureIconID); var _equipmentString = new MultiLangString <EquipmentStringsTable> ((ushort)this.selfEquipmentData.DBEquipmentID, EquipmentStringsTableReader.Instance); EquipmentName.ShowEquipmentName(_equipmentString); var _attributeBaseList = this.selfEquipmentData.EquipmentAttributeBaseList; var _attributeOffsetList = this.selfEquipmentData.EquipmentAttributeOffsetList; for (int i = 0; i < _attributeBaseList.Count; i++) { EquipmentAttribute _attributeOffset = new EquipmentAttribute(_attributeBaseList[i].AttributeType, 0); for (int j = 0; j < _attributeOffsetList.Count; j++) { if (_attributeOffsetList [j].AttributeType == _attributeBaseList [i].AttributeType) { _attributeOffset.Attribute += _attributeOffsetList [j].Attribute; } } AttributeList [i].AttributeDisplay(_attributeBaseList[i], _attributeOffset); } } }
public HeroEquipmentFormat GetEquipment(int heroSlotID, EQUIPMENT_TYPE equipmentType) { if (UserSaveDataManager.Instance == null) { UserSaveDataManager.Instance.InitUserData(); } HeroDataFormat _hero = GetHeroData(heroSlotID); if (_hero == null) { return(null); } HeroEquipmentFormat _equipment = _hero.EquipmentList.Find(item => { return(item.EquipmentType == equipmentType); }); return(_equipment); }
public void SetDataForDisplay(HeroDataFormat heroDataFormat, HeroEquipmentFormat equipmentEquipped) { HeroAttributeFormat _heroAttributeFinal = heroDataFormat.AttributesWithEquipments; HPView.DataDisplayImmediately(_heroAttributeFinal.HPMax); RESView.DataDisplayImmediately(_heroAttributeFinal.RES); ATKView.DataDisplayImmediately(_heroAttributeFinal.ATK); MAGView.DataDisplayImmediately(_heroAttributeFinal.MAG); DEFView.DataDisplayImmediately(_heroAttributeFinal.DEF); ACView.DataDisplayImmediately(_heroAttributeFinal.AC); CRIView.DataDisplayImmediately(_heroAttributeFinal.CRI); PENView.DataDisplayImmediately(_heroAttributeFinal.PEN); HITView.DataDisplayImmediately(_heroAttributeFinal.HIT); AVDView.DataDisplayImmediately(_heroAttributeFinal.AVD); STRView.DataDisplayImmediately(_heroAttributeFinal.STR); INTView.DataDisplayImmediately(_heroAttributeFinal.INT); VITView.DataDisplayImmediately(_heroAttributeFinal.VIT); DEXView.DataDisplayImmediately(_heroAttributeFinal.DEX); EquipmentIcon.ShowEquipmentIcon(equipmentEquipped.TexturePath, equipmentEquipped.TextureIconID); }
public HeroEquipmentFormat GetRandomEquipmentByQualityGrade(EQUIPMENT_TYPE equipmentType, int quality) { var _equipmentTableList = EquipmentTableReader.Instance.FindDefault(equipmentType, (short)quality); int _weightMax = 0; for (int i = 0; i < _equipmentTableList.Count; i++) { _weightMax += _equipmentTableList [i].Weights; } int _random = Random.Range(1, _weightMax + 1); EquipmentTable _equipmentTable = null; int point = 0; for (int i = 0; i < _equipmentTableList.Count; i++) { if (point <= _random && _random <= point + _equipmentTableList [i].Weights) { _equipmentTable = _equipmentTableList [i].CloneEx(); break; } point += _equipmentTableList [i].Weights; } var _equipmentAttributeList = EquipmentAttributesTableReader.Instance.FindDefaultByEquipmentID(_equipmentTable.ID); List <EquipmentAttribute> equipmentAttributeBaseList = new List <EquipmentAttribute> (); for (int i = 0; i < _equipmentAttributeList.Count; i++) { int attribute = CalculateAttributeOffSet(_equipmentAttributeList[i].ParameterA, _equipmentAttributeList[i].ParameterB); equipmentAttributeBaseList.Add(new EquipmentAttribute(_equipmentAttributeList[i].AttributeType, attribute)); } List <EquipmentAttribute> _equipmentAttrubuteOffsetList = new List <EquipmentAttribute>(); HeroEquipmentFormat _heroEquipment = new HeroEquipmentFormat(_equipmentTable, equipmentAttributeBaseList, _equipmentAttrubuteOffsetList); return(_heroEquipment); }
public void DisplayWithUnequippedEquipment(HeroDataFormat heroDataFormat, HeroEquipmentFormat equipmentTakeOff) { var _heroAttributes = heroDataFormat.Attributes; List <HeroEquipmentFormat> _newEquipmentList = new List <HeroEquipmentFormat> (); _newEquipmentList.Add(equipmentTakeOff); for (int i = 0; i < heroDataFormat.EquipmentList.Count; i++) { if (heroDataFormat.EquipmentList [i].EquipmentType != equipmentTakeOff.EquipmentType) { _newEquipmentList.Add(heroDataFormat.EquipmentList [i]); } } var _attributesWithNewEquipmentList = HeroDataManager.Instance.CalculateAttributesWithEquipments(_heroAttributes, _newEquipmentList.Cast <CommonEquipmentFormat>().ToList()); var _attributesWithEquippedEquipmentList = heroDataFormat.AttributesWithEquipments; HPView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.HPMax, _attributesWithNewEquipmentList.HPMax); RESView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.RES, _attributesWithNewEquipmentList.RES); ATKView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.ATK, _attributesWithNewEquipmentList.ATK); MAGView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.MAG, _attributesWithNewEquipmentList.MAG); DEFView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.DEF, _attributesWithNewEquipmentList.DEF); ACView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.AC, _attributesWithNewEquipmentList.AC); CRIView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.CRI, _attributesWithNewEquipmentList.CRI); PENView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.PEN, _attributesWithNewEquipmentList.PEN); HITView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.HIT, _attributesWithNewEquipmentList.HIT); AVDView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.AVD, _attributesWithNewEquipmentList.AVD); STRView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.STR, _attributesWithNewEquipmentList.STR); INTView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.INT, _attributesWithNewEquipmentList.INT); VITView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.VIT, _attributesWithNewEquipmentList.VIT); DEXView.DataDisplayWithFormatWhenDifferent(_attributesWithEquippedEquipmentList.DEX, _attributesWithNewEquipmentList.DEX); EquipmentIcon.ShowEquipmentIcon(equipmentTakeOff.TexturePath, equipmentTakeOff.TextureIconID); }
public EquipmentReinforceData(HeroDataFormat heroData, HeroEquipmentFormat heroEquipmentData) { this.HeroData = heroData; this.HeroEquipmentData = heroEquipmentData; }
public EquipmentBuildData(EQUIPMENT_TYPE equipmentType, HeroDataFormat heroData, HeroEquipmentFormat heroEquipmentData) { this.EquipmentType = equipmentType; this.HeroData = heroData; this.HeroEquipmentData = heroEquipmentData; }