|
@@ -43,6 +43,8 @@ public class EquipTemplateService {
|
|
|
|
|
|
final MongoTemplate mongoTemplate;
|
|
final MongoTemplate mongoTemplate;
|
|
|
|
|
|
|
|
+ final EquipQualityService equipQualityService;
|
|
|
|
+
|
|
final EquipEntryTemplateService equipEntryTemplateService;
|
|
final EquipEntryTemplateService equipEntryTemplateService;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -140,8 +142,7 @@ public class EquipTemplateService {
|
|
//生成随机属性
|
|
//生成随机属性
|
|
List<EquipEntry> equipEntryList =
|
|
List<EquipEntry> equipEntryList =
|
|
resetRandomEntryList(
|
|
resetRandomEntryList(
|
|
- equipTemplate.getEquipPropertyRandomMin(),
|
|
|
|
- equipTemplate.getEquipPropertyRandomMax(),
|
|
|
|
|
|
+ equipTemplate.getQuality(),
|
|
equipTemplate.getLevel(),
|
|
equipTemplate.getLevel(),
|
|
equipTemplate.getPosition()
|
|
equipTemplate.getPosition()
|
|
);
|
|
);
|
|
@@ -162,8 +163,6 @@ public class EquipTemplateService {
|
|
equipTemplate.getEquipPropertyBasicMin(),
|
|
equipTemplate.getEquipPropertyBasicMin(),
|
|
equipTemplate.getEquipPropertyBasicMax()))
|
|
equipTemplate.getEquipPropertyBasicMax()))
|
|
.equipPropertyFixedList(equipPropertyFixedList)
|
|
.equipPropertyFixedList(equipPropertyFixedList)
|
|
- .equipPropertyRandomMin(equipTemplate.getEquipPropertyRandomMin())
|
|
|
|
- .equipPropertyRandomMax(equipTemplate.getEquipPropertyRandomMax())
|
|
|
|
.equipPropertyRandomList(equipEntryList)
|
|
.equipPropertyRandomList(equipEntryList)
|
|
.build();
|
|
.build();
|
|
}
|
|
}
|
|
@@ -185,19 +184,25 @@ public class EquipTemplateService {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 重新生成随机属性
|
|
* 重新生成随机属性
|
|
- * @param numMin 最少条数
|
|
|
|
- * @param numMax 最大条数
|
|
|
|
|
|
+ * @param quality 装备品质
|
|
* @param level 装备要求等级
|
|
* @param level 装备要求等级
|
|
* @param position 部位
|
|
* @param position 部位
|
|
* @return List<EquipEntry> 装备词条列表
|
|
* @return List<EquipEntry> 装备词条列表
|
|
*/
|
|
*/
|
|
- public List<EquipEntry> resetRandomEntryList(int numMin,int numMax,int level,String position){
|
|
|
|
|
|
+ public List<EquipEntry> resetRandomEntryList(String quality,int level,String position){
|
|
|
|
+ List<EquipEntry> equipEntryList = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ EquipQuality equipQuality = equipQualityService.findByQuality(quality);
|
|
|
|
+ if (equipQuality==null||(equipQuality.getRandomNumMax()==0)){
|
|
|
|
+ return equipEntryList;
|
|
|
|
+ }
|
|
//随机属性的条数
|
|
//随机属性的条数
|
|
- int randomCount = RandomKit.randomFromInt(
|
|
|
|
- numMin,
|
|
|
|
- numMax+1);
|
|
|
|
|
|
+// int randomCount = RandomKit.randomFromInt(
|
|
|
|
+// equipQuality.getRandomNumMin(),
|
|
|
|
+// equipQuality.getRandomNumMax()+1);
|
|
|
|
+
|
|
|
|
+ int randomCount = equipQuality.getRandomNumMin() + RandomKit.weightRandom(equipQuality.getPrizeWeightArr());
|
|
//生成随机属性
|
|
//生成随机属性
|
|
- List<EquipEntry> equipEntryList = new ArrayList<>();
|
|
|
|
if(randomCount>0) {
|
|
if(randomCount>0) {
|
|
equipEntryList = equipEntryTemplateService.randomEntryBatch(
|
|
equipEntryList = equipEntryTemplateService.randomEntryBatch(
|
|
level,
|
|
level,
|