特训中的英雄无法做材料消耗或分解

grimm 2023-12-25 15:41:58 +08:00
parent c313d27871
commit 563d25312d
2 changed files with 6 additions and 4 deletions

View File

@ -1525,9 +1525,7 @@ public class HeroLogic {
//判断编队
for (HeroInfoProto.ConsumeMaterial consumeMaterial1 : consumeMaterialsList) {
List<String> 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);

View File

@ -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);