鸿蒙阵,魂宝灵宝计算修改

back_recharge
duhui 2021-02-20 16:51:30 +08:00
parent cc588bd1c1
commit a4f7cb971f
1 changed files with 33 additions and 34 deletions

View File

@ -3733,7 +3733,8 @@ public class HeroLogic{
// 装备 // 装备
hongmengEquip(hongMengAddAttributeEquip, hero); hongmengEquip(hongMengAddAttributeEquip, hero);
// 魂宝 灵宝 // 魂宝 灵宝
soulOrSpirit(soulEquip, spiritEquip, equipMap, hero); soulOrSpirit(soulEquip, 1, equipMap, hero);
soulOrSpirit(spiritEquip, 2, equipMap, hero);
// 法宝 // 法宝
especialAdd(especialEquipLevel, hero); especialAdd(especialEquipLevel, hero);
} }
@ -3853,45 +3854,43 @@ public class HeroLogic{
/** /**
* 鸿 * 鸿
* @param soulEquip * @param jewelEquip
* @param spiritEquip * @param type 1 2
* @param equipMap * @param equipMap
* @param hero * @param hero
*/ */
public void soulOrSpirit(HongMengAddAttribute soulEquip, HongMengAddAttribute spiritEquip, Map<String, PropertyItem> equipMap, Hero hero) { private void soulOrSpirit(HongMengAddAttribute jewelEquip, int type, Map<String, PropertyItem> equipMap, Hero hero) {
if (hero.getJewelInfo().isEmpty()) { // 记录器,玩家是否拥有这件装备
soulEquip.value = -1; boolean result = true;
spiritEquip.value = -1; // 遍历英雄身上的魂宝和灵宝
soulEquip.heroTid = 0;
spiritEquip.heroTid = 0;
} else {
for (String jewel : hero.getJewelInfo()) { for (String jewel : hero.getJewelInfo()) {
// 玩家装备表里是否存在
PropertyItem propertyItem = equipMap.get(jewel); PropertyItem propertyItem = equipMap.get(jewel);
if (propertyItem == null) { if (propertyItem != null){
soulEquip.value = -1;
soulEquip.heroTid = 0;
spiritEquip.value = -1;
spiritEquip.heroTid = 0;
break;
} else {
SJewelConfig config = STableManager.getConfig(SJewelConfig.class).get(propertyItem.getEquipId()); SJewelConfig config = STableManager.getConfig(SJewelConfig.class).get(propertyItem.getEquipId());
if (config == null) { // location 1魂宝 2灵宝
continue; if (config != null && config.getLocation() == type) {
} result = false;
// getLocation 1魂宝 2灵宝 if (propertyItem.getLevel() < jewelEquip.value){
if (config.getLocation() == 1) { jewelEquip.value = propertyItem.getLevel();
if (propertyItem.getLevel() < soulEquip.value){ jewelEquip.heroTid = hero.getTemplateId();
soulEquip.value = propertyItem.getLevel();
soulEquip.heroTid = hero.getTemplateId();
}
} else {
if (propertyItem.getLevel() < spiritEquip.value){
spiritEquip.value = propertyItem.getLevel();
spiritEquip.heroTid = hero.getTemplateId();
} }
} }
} }
} }
if (result){
notJewelInit(jewelEquip);
}
}
/**
*
* @param jewels
*/
private void notJewelInit(HongMengAddAttribute... jewels){
for (int i = 0; i < jewels.length; i++) {
jewels[i].value = -1;
jewels[i].heroTid = 0;
} }
} }