From e1ad8231d1fcbe3a92abef7217b964f1b0deda0c Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Fri, 13 Oct 2023 16:30:22 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A4=BC=E7=89=A9=E5=9B=9E=E6=BB=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/logic/hero/HeroLogic.java | 34 ++++--------------- 1 file changed, 7 insertions(+), 27 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 220b96f83..118468e20 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -3052,39 +3052,19 @@ public class HeroLogic { private void applyGiftEquipAttribute(Map heroAllAttribute, Hero hero, User user){ // ... 礼物装备 ... - HashMap giftAttrMap = new HashMap<>(); - Map configMap = SEquipConfig.equipConfigMap; - int heroGiftUp = 0; - - // 主角属性计算,并计算对英雄礼物加成值 + Set heroGiftEquipList = hero.getHeroGiftEquipList(); Set playerGiftEquipList = user.getPlayerInfoManager().getPlayerGiftEquipList(); - for (Integer id : playerGiftEquipList) { + HashSet set = new HashSet<>(); + set.addAll(heroGiftEquipList); + set.addAll(playerGiftEquipList); + Map configMap = SEquipConfig.equipConfigMap; + for (Integer id : set) { SEquipConfig config = configMap.get(id); if (config == null){ continue; } - heroGiftUp += config.getHeroGitUp(); - if (config.getProperty() != null){ - for (int[] ints : config.getProperty()) { - giftAttrMap.put(ints[0], giftAttrMap.getOrDefault(ints[0],0L)+ints[1]); - } - } + combinedAttribute(config.getProperty(), heroAllAttribute); } - - // 英雄属性计算 - Set heroGiftEquipList = hero.getHeroGiftEquipList(); - for (Integer id : heroGiftEquipList) { - SEquipConfig config = configMap.get(id); - if (config == null || config.getProperty() == null){ - continue; - } - for (int[] ints : config.getProperty()) { - long value = Math.round(ints[1] * (1 + heroGiftUp / 10000d)); - giftAttrMap.put(ints[0], giftAttrMap.getOrDefault(ints[0],0L)+value); - } - } - - combinedAttribute(giftAttrMap, heroAllAttribute); } /**