diff --git a/serverlogic/src/main/java/com/ljsd/jieling/exception/ErrorCode.java b/serverlogic/src/main/java/com/ljsd/jieling/exception/ErrorCode.java index 17f587f37..cb593a939 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/exception/ErrorCode.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/exception/ErrorCode.java @@ -177,6 +177,7 @@ public enum ErrorCode implements IErrorCode { RIDING_SWARD_BET_TWO(146,"一轮比赛最多押注两次!"), PRACTICE_LEVE_DOWN(147,"修行等级不足"), GOD_SOUL_BIND(148,"选中英雄已被当前神魂绑定,操作失败"), + HANDLE_FAILED(149,"操作失败"), ; private static final Set CodeSet = new HashSet<>(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/HeroGodSoulBindRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/HeroGodSoulBindRequestHandler.java index 2c4fd0b13..b2a08a5b3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/HeroGodSoulBindRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/HeroGodSoulBindRequestHandler.java @@ -6,6 +6,7 @@ import com.ljsd.jieling.logic.dao.Hero; import com.ljsd.jieling.logic.dao.HeroManager; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.util.MessageUtil; import config.SCHero; @@ -33,8 +34,17 @@ public class HeroGodSoulBindRequestHandler extends BaseHandler,Cloneable { } ///检测该英雄是否已经被当前英雄绑定 - public boolean CheckGodSoulIsBind(String _heroId){ + public boolean CheckGodSoulIsBind(int level,String _heroId){ for (Map.Entry> listEntry : godSoulBindMap.entrySet()) { + if (listEntry.getKey()==level)continue; if (listEntry.getValue().contains(_heroId)){ return true; } 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 be3ebc913..c9510448e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -403,7 +403,14 @@ public class CBean2Proto { soulPoss.add(builder.build()); } } - + ListgodSoulList=new ArrayList<>(); + for (Map.Entry> godSoul : hero.getGodSoulBindMap().entrySet()) { + CommonProto.HeroGodSoulInfo godSoulInfo=CommonProto.HeroGodSoulInfo.newBuilder() + .setLevel(godSoul.getKey()) + .addAllHeros(godSoul.getValue()) + .build(); + godSoulList.add(godSoulInfo); + } return CommonProto.Hero .newBuilder() .setId(hero.getId()) @@ -421,6 +428,7 @@ public class CBean2Proto { .setCreatetype(hero.getCreateType()) .setChangeId(hero.getChangeId()) .setSkinId(hero.getSkin()) + .addAllGodSoulList(godSoulList) .build(); } diff --git a/tablemanager/src/main/java/config/SCHero.java b/tablemanager/src/main/java/config/SCHero.java index 33e196b85..74d633413 100644 --- a/tablemanager/src/main/java/config/SCHero.java +++ b/tablemanager/src/main/java/config/SCHero.java @@ -64,6 +64,12 @@ public class SCHero implements BaseConfig{ private int joinWishDay; + private int[][] soul; + + private int[][] soulSkill; + + private int isSoulOpen; + private Map secondaryFactorMap; private Map> skillListByStar; @@ -360,4 +366,16 @@ public class SCHero implements BaseConfig{ public int getJoinWishDay() { return joinWishDay; } + + public int[][] getSoul() { + return soul; + } + + public int[][] getSoulSkill() { + return soulSkill; + } + + public int getIsSoulOpen() { + return isSoulOpen; + } }