From ce5a23492e79ab02ac1c7b27fc483bdd8da4a348 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 14:03:23 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=8A=A9=E6=88=98=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=EF=BC=8C=E5=AE=9D=E7=89=A9=E6=8A=A5null=EF=BC=8C=E5=B7=B2?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/util/CBean2Proto.java | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index b93f73429..1430a42a0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -232,23 +232,33 @@ public class CBean2Proto { return lists; } + /** + * 编译助战状态 + * @param propertyItems 装备列表 + * @return proto对象 + */ + private static List buildHelpFightEquip(List propertyItems){ + List resultEquip = new ArrayList<>(); + if (propertyItems != null && !propertyItems.isEmpty()){ + for (PropertyItem item : propertyItems) { + if (item == null){ + continue; + } + resultEquip.add(getPropertyEquipProto(item)); + } + } + return resultEquip; + } + /** * 助战,redis类型转proto */ public static CommonProto.HelpFightList helpHeroProto(HelpHero helpHero) throws Exception { User otherUser = UserManager.getUser(helpHero.getUid()); // 魂宝灵宝 - List jewels = new ArrayList<>(); - List jewel = helpHero.getJewels(); - if (jewel != null && !jewel.isEmpty()){ - jewel.forEach(item->jewels.add(getPropertyEquipProto(item))); - } + List jewels = buildHelpFightEquip(helpHero.getJewels()); // 法相 - List faxiang = new ArrayList<>(); - List faxiangs = helpHero.getFaxiangs(); - if (faxiangs != null && !faxiangs.isEmpty()){ - faxiangs.forEach(item->faxiang.add(getPropertyEquipProto(item))); - } + List faxiang = buildHelpFightEquip(helpHero.getFaxiangs()); // 装备详细信息 List equips = new ArrayList<>(); Map equip = helpHero.getHero().getEquipByPositionMap(); @@ -286,7 +296,7 @@ public class CBean2Proto { * 助战,hero对象转redis类型 * 存入redis时调用 */ - public static HelpHero heroToHelpHero(User user,Hero hero) throws Exception { + public static HelpHero heroToHelpHero(User user,Hero hero) { // 获取神将类型 HelpTypeEnum type = HelpTypeEnum.getType(hero.getPropertyId()); // 英雄镜像 @@ -296,7 +306,6 @@ public class CBean2Proto { List jewels = clonePropertyItemList(equipManager, heroVo.getJewelInfo()); // 法相 List faxiangs = clonePropertyItemList(equipManager, heroVo.getFaxiangList()); - // 结果返回,援助类型不在这里写 HelpHero helpHero = new HelpHero(); helpHero.setUid(user.getId()); From 1566463f65fcf1ab486cc74d396d04f92fcdf39c Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 14:04:19 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E6=98=9F=E7=BA=A7?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mission/data/EspecialStarManager.java | 21 +++++++++++-------- .../data/UpAllBaublesLvDataManager.java | 4 ++-- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java index a4f69e102..559f73615 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java @@ -1,15 +1,26 @@ package com.ljsd.jieling.logic.mission.data; +import com.ljsd.jieling.logic.dao.Baubles; import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.EquipManager; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.mission.MissionType; -import java.util.Map; +import java.util.HashMap; +import java.util.List; public class EspecialStarManager extends AbstractDataManager { @Override public boolean isFinish(User user, CumulationData data, int[][] cfgValue, Object... parm) { + EquipManager equipManager = user.getEquipManager(); + List baublesList = equipManager.getBaublesList(); + HashMap map = new HashMap<>(); + for (Baubles baubles : baublesList) { + int star = baubles.getLevel() / 10; + map.merge(star,1,Integer::sum); + } + data.setEspecialEquipStar(map); return data.getEspecialEquipStar(cfgValue[0][0]) >= cfgValue[1][0]; } @@ -20,14 +31,6 @@ public class EspecialStarManager extends AbstractDataManager { @Override public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { - int equipStar = ((int) parm[0])/10; - Map especialEquipStar = data.getEspecialEquipStar(); - - if(especialEquipStar.containsKey(equipStar)){ - especialEquipStar.merge(equipStar,1,Integer::sum); - }else{ - especialEquipStar.put(equipStar,1); - } return new CumulationData.Result(missionType); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java index db0ad39cc..f2ace77ae 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java @@ -26,14 +26,14 @@ public class UpAllBaublesLvDataManager extends AbstractDataManager{ @Override public boolean isFinish(User user,CumulationData data, int[][] cfgValue, Object... parm) { - if(data.getBaubles_all_level() ==cfgValue[1][0]){ + if(data.getBaubles_all_level() == cfgValue[1][0]){ return true; } Map> teamPosForHero = user.getTeamPosManager().getTeamPosForHero(); HeroManager heroManager = user.getHeroManager(); EquipManager equipManager = user.getEquipManager(); for (Map.Entry> entry:teamPosForHero.entrySet()){ - List teamPosHeroInfos =entry.getValue(); + List teamPosHeroInfos = entry.getValue(); if(teamPosHeroInfos.size()!=6){ continue; }