diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/family/GuildSkillLevelUpHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/GuildSkillLevelUpHandler.java index abccc2408..9cf65fd9d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/family/GuildSkillLevelUpHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/GuildSkillLevelUpHandler.java @@ -22,6 +22,6 @@ public class GuildSkillLevelUpHandler extends BaseHandler skillInfo= user.getGuildMyInfo().getGuildSkill(); + Map> typeMap = SGuildTechnology.technologyMap.get(type); + if(skillInfo.getOrDefault(type, 0)!=beforeLevel||afterLevel>600) + throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); int size = typeMap.size(); - int[][] consume; - if(!skillInfo.containsKey(type)){ - consume = typeMap.get(1).get(0).getConsume(); - }else{ - int level = skillInfo.get(type); - consume = typeMap.get(level%size+1).get(level/size).getConsume(); - if(typeMap.get(level%size+1).get(level/size+1)==null){ - throw new ErrorCodeException(ErrorCode.HERO_LEVE_MAX); + + + Map consumeMap = new HashMap<>(2); + int baseLevel = beforeLevel / size;//100->16 + int nextIndex = beforeLevel % size;//100->4 + + int afterBaseLevel =afterLevel / size; + int afterNextIndex = afterLevel % size; +// if(){ +// }else{ +// int level = skillInfo.get(type); +// consume = typeMap.get(level%size+1).get(level/size).getConsume(); +// if(typeMap.get(level%size+1).get(level/size+1)==null){ +// throw new ErrorCodeException(ErrorCode.HERO_LEVE_MAX); +// } +// } + while(baseLevel