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 c13edb67b..401bcb957 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 @@ -185,13 +185,13 @@ public class HeroLogic { } } - boolean isSpecial = false; + if(sLotterySetting.getOrderBoxPool()!=null && sLotterySetting.getOrderBoxPool().length>0){ pooId = getOrderBoxPoolId(sLotterySetting); if(pooId == 0){ throw new ErrorCodeException(ErrorCode.newDefineCode("pooId 0")); } - isSpecial =true; + } //检验消耗 @@ -234,31 +234,26 @@ public class HeroLogic { int j=0; for(int i=0;i list = SLotterySpecialConfig.getLotterySpecialConfigListByType(1,id); + boolean isMergePool = false; if (list == null) { list = SLotterySpecialConfig.getLotterySpecialConfigListByType(2,sLotterySetting.getMergePool()); if(list == null){ return 0; } + isMergePool = true; } int poolId = 0; @@ -306,6 +303,9 @@ public class HeroLogic { poolId = data.getpool_id(); break; } + if(isMergePool){ + continue; + } if (randCount % data.getCount() != 0) { continue; } @@ -321,7 +321,7 @@ public class HeroLogic { return poolId; } - private int getPooId(SLotterySetting sLotterySetting, int pooId) throws Exception { + private int getPooId(SLotterySetting sLotterySetting) throws Exception { int[][] diamondBoxContain = sLotterySetting.getDiamondBoxContain(); int totalWeight = 0; for(int i=0;i