From 563d25312d2fcbb92b1016d0a0ca97f989d358ec Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:41:58 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=89=B9=E8=AE=AD=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E8=8B=B1=E9=9B=84=E6=97=A0=E6=B3=95=E5=81=9A=E6=9D=90=E6=96=99?= =?UTF-8?q?=E6=B6=88=E8=80=97=E6=88=96=E5=88=86=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 4 +--- .../main/java/com/ljsd/jieling/logic/item/ItemLogic.java | 6 +++++- 2 files changed, 6 insertions(+), 4 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 4dd7bf8d2..d7f85fa6a 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 @@ -1525,9 +1525,7 @@ public class HeroLogic { //判断编队 for (HeroInfoProto.ConsumeMaterial consumeMaterial1 : consumeMaterialsList) { List heroIdsList = new ArrayList<>(); - consumeMaterial1.getHeroIdsList().stream() - .filter(v -> v.getType() == 1) - .forEach(v -> heroIdsList.add(v.getItemId())); + consumeMaterial1.getHeroIdsList().stream().filter(v -> v.getType() == 1).forEach(v -> heroIdsList.add(v.getItemId())); ErrorCode err = null; if (!heroIdsList.isEmpty()) { err = ItemLogic.getInstance().checkHeroResolve(heroIdsList, user); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index 31ef62225..23dbb730c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -484,8 +484,9 @@ public class ItemLogic { for (String id : heroIdsList) { Hero hero = user.getHeroManager().getHero(id); + Training training = hero.getTraining(); int maxLv = STrain.getMaxLv(hero.getTemplateId()); - if (hero.getTraining().getLv() == maxLv){ + if (training.getLv() == maxLv){ throw new ErrorCodeException(ErrorCode.SERVER_DEFINE, "特训满级英雄无法分解"); } } @@ -533,6 +534,9 @@ public class ItemLogic { if (hero.getIsLock() == 1) { return ErrorCode.ITEM_DECOMPOSE_HERO_LOCK; } + if (hero.getTraining().getIsTraining() == 1){ + return ErrorCode.HERO_UN_MATCH; + } if(teamCheck){ int[] teamId = SSpecialConfig.getOnceArrayValue(SSpecialConfig.HERO_RESOLVE_LICENCE); boolean battleArray = HeroLogic.getInstance().isBattleArray(user, heroId, teamId); From 86ae37c1264c3db49f631d5720743ab3994f5e06 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:44:21 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=89=B9=E8=AE=AD=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E8=8B=B1=E9=9B=84=E6=97=A0=E6=B3=95=E5=81=9A=E6=9D=90=E6=96=99?= =?UTF-8?q?=E6=B6=88=E8=80=97=E6=88=96=E5=88=86=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 3 +-- .../main/java/com/ljsd/jieling/logic/item/ItemLogic.java | 6 +++--- 2 files changed, 4 insertions(+), 5 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 d7f85fa6a..4b6261d74 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 @@ -4544,8 +4544,7 @@ public class HeroLogic { User user = UserManager.getUser(uid); List heroList = new ArrayList<>(1); heroList.add(heroId); - boolean teamCheck = false; - ErrorCode err = ItemLogic.getInstance().checkHeroResolve(heroList, user, teamCheck); + ErrorCode err = ItemLogic.getInstance().checkHeroResolve(heroList, user, false); if (null != err) { throw new ErrorCodeException(err); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index 23dbb730c..d2a57effe 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -534,10 +534,10 @@ public class ItemLogic { if (hero.getIsLock() == 1) { return ErrorCode.ITEM_DECOMPOSE_HERO_LOCK; } - if (hero.getTraining().getIsTraining() == 1){ - return ErrorCode.HERO_UN_MATCH; - } if(teamCheck){ + if (hero.getTraining().getIsTraining() == 1){ + return ErrorCode.HERO_UN_MATCH; + } int[] teamId = SSpecialConfig.getOnceArrayValue(SSpecialConfig.HERO_RESOLVE_LICENCE); boolean battleArray = HeroLogic.getInstance().isBattleArray(user, heroId, teamId); if (!battleArray) { From 32ce67a2b34ced28ec82181c94831a29a48cee40 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:45:44 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ljsd/jieling/logic/item/ItemLogic.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index d2a57effe..3e3ae12f7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -521,7 +521,16 @@ public class ItemLogic { // return tempReturn; // } - public ErrorCode checkHeroResolve(List heroIdsList, User user,boolean teamCheck) { + /** + * 检查英雄是否符合要求 + * @param heroIdsList + * @param user + * @param teamCheck + * true: 分解 + * false:归元 + * @return + */ + public ErrorCode checkHeroResolve(List heroIdsList, User user, boolean teamCheck) { HeroManager heroManager = user.getHeroManager(); if (heroIdsList.isEmpty()) { return ErrorCode.ITEM_DECOMPOSE_HERO_NO;