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 f934e43a9..7c2007273 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 @@ -2667,6 +2667,18 @@ public class HeroLogic { } } } + // 法宝聚灵总星级增加属性 + Map trumpStarMap = STableManager.getConfig(STrumpStar.class); + // 按照累计星数倒叙排列 + List trumpStars = trumpStarMap.values().stream().sorted(Comparator.comparing(STrumpStar::getStarNum).reversed()).collect(Collectors.toList()); + // 玩家全部的总星级 + int sumStar = heroManager.getFaBaoSoulMap().values().stream().mapToInt(v -> v).sum(); + for (STrumpStar star : trumpStars) { + if (sumStar >= star.getStarNum()){ + combinedAttribute(star.getPropList(), heroAllAttribute); + break; + } + } //玩家皮肤加成 for (Map.Entry entry : user.getPlayerInfoManager().getUserSkinValidTime().entrySet()) { if (!SPlayerHeadIcon.getHeadIconMap().containsKey(entry.getKey())) { diff --git a/tablemanager/src/main/java/config/STrumpStar.java b/tablemanager/src/main/java/config/STrumpStar.java new file mode 100644 index 000000000..6a3dd7fd0 --- /dev/null +++ b/tablemanager/src/main/java/config/STrumpStar.java @@ -0,0 +1,37 @@ +package config; + +import manager.STableManager; +import manager.Table; + +import java.util.Map; + +@Table(name ="TrumpStar") +public class STrumpStar implements BaseConfig { + + private int id; + + private int starNum; + + private int[][] propList; + + + @Override + public void init() throws Exception { + + } + + + public int getId() { + return id; + } + + public int getStarNum() { + return starNum; + } + + public int[][] getPropList() { + return propList; + } + + +} \ No newline at end of file