diff --git a/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_training.java b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_training.java new file mode 100644 index 000000000..4a582147f --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_training.java @@ -0,0 +1,23 @@ +package com.ljsd.jieling.kefu; + +import com.ljsd.jieling.logic.dao.Hero; +import com.ljsd.jieling.logic.dao.Training; +import com.ljsd.jieling.logic.dao.root.User; + +//training uid heroId lv +public class Cmd_training extends GmRoleAbstract { + @Override + public boolean exec(String[] args) throws Exception { + + String heroId = args[0]; + int lv = Integer.parseInt(args[1]); + + User user = getUser(); + Hero hero = user.getHeroManager().getHero(heroId); + Training training = hero.getTraining(); + training.setLv(lv); + hero.setTraining(training); + + return true; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java index b35679d32..15220f835 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java @@ -656,6 +656,11 @@ public class EquipLogic { } num += config.getGift(); } + // 特训增加的额外收集值 + int maxHeroNum = TrainingLogic.getInstance().getTrainingMaxHeroNum(user); + int value = SSpecialConfig.getIntegerValue("Train_Gift_shouji"); + num += (maxHeroNum * value); + return num; } @@ -676,11 +681,6 @@ public class EquipLogic { break; } } - - // 特训额外增加的格子 - int maxHeroNum = TrainingLogic.getInstance().getTrainingMaxHeroNum(user); - resultBox+=maxHeroNum; - return resultBox; } 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 7b24a8693..31ef62225 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 @@ -481,6 +481,15 @@ public class ItemLogic { if (null != errorMags) { throw new ErrorCodeException(errorMags); } + + for (String id : heroIdsList) { + Hero hero = user.getHeroManager().getHero(id); + int maxLv = STrain.getMaxLv(hero.getTemplateId()); + if (hero.getTraining().getLv() == maxLv){ + throw new ErrorCodeException(ErrorCode.SERVER_DEFINE, "特训满级英雄无法分解"); + } + } + CommonProto.Drop.Builder drop = HeroLogic.getInstance().disbandHeroDrop(user, heroIdsList, BIReason.DECOMPOS_HERO_REWARD); for (String id : heroIdsList) { // 删除英雄