From 4f45aa9c5d8bd7c1c63df4292e8a6b39c951f74b Mon Sep 17 00:00:00 2001 From: wangyuan Date: Fri, 25 Jan 2019 18:33:38 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=8A=BD=E5=8D=A1=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=B6=88=E8=80=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- conf/server/LotterySetting.txt | 10 ++++---- .../ljsd/jieling/config/SLotterySetting.java | 6 ++++- .../ljsd/jieling/logic/hero/HeroLogic.java | 24 ++++++++++++++----- .../com/ljsd/jieling/util/MessageUtil.java | 2 +- 4 files changed, 29 insertions(+), 13 deletions(-) diff --git a/conf/server/LotterySetting.txt b/conf/server/LotterySetting.txt index 60cbe0c8b..f2135d487 100644 --- a/conf/server/LotterySetting.txt +++ b/conf/server/LotterySetting.txt @@ -1,6 +1,6 @@ -Id OrderBoxOpenTime OrderBoxContinue OrderBoxInterval OrderBoxPool DiamondBoxInterval Cost GetHerosInterval DiamondBoxContain TenTimesMustGetItem PerCount +Id OrderBoxOpenTime OrderBoxContinue OrderBoxInterval OrderBoxPool DiamondBoxInterval CostItem GetHerosInterval DiamondBoxContain TenTimesMustGetItem PerCount int int int int mut,int#int,1 int mut,int#int,1 int mut,int#int,2 mut,int#int,2 int -1 56 48 120 11#12#13#14 0 3#10 0 null null 10 -2 56 48 120 11#12#13#14 0 3#1 0 null null 1 -11 0 0 0 null 0 220 150 1#100 3#1 10 -12 0 0 0 null 2160 2200 0 1#100 null 1 +1 56 48 120 11#12#13#14 0 20#10 0 null null 10 +2 56 48 120 11#12#13#14 0 20#1 0 null null 1 +11 0 0 0 null 0 19#10 150 1#100 3#1 10 +12 0 0 0 null 2160 19#1 0 1#100 null 1 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/config/SLotterySetting.java b/serverlogic/src/main/java/com/ljsd/jieling/config/SLotterySetting.java index 4413df164..bc61139a9 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/config/SLotterySetting.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/config/SLotterySetting.java @@ -28,6 +28,8 @@ public class SLotterySetting implements BaseConfig { private int[][] tenTimesMustGetItem; + private int[] costItem; + private int perCount; private static Map sLotterySettingByType; @@ -89,5 +91,7 @@ public class SLotterySetting implements BaseConfig { return perCount; } - + public int[] getCostItem() { + return costItem; + } } \ No newline at end of file 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 b7a9522ad..9c08e411c 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 @@ -28,10 +28,11 @@ public class HeroLogic { } + public void random(ISession session,int type) throws Exception { int uid = session.getUid(); + User user = UserManager.getUser(uid); SLotterySetting sLotterySetting = SLotterySetting.getsLotterySettingMap().get(type); - //检验消耗 //筛选卡池 StringBuilder reward = new StringBuilder(); @@ -40,8 +41,21 @@ public class HeroLogic { boolean isSpecial = false; if(sLotterySetting.getOrderBoxPool()!=null && sLotterySetting.getOrderBoxPool().length>0){ pooId = getOrderBoxPoolId(sLotterySetting); + if(pooId == 0){ + MessageUtil.sendErrorResponse(session, 1, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,""); + return; + } isSpecial = true; } + + //检验消耗 + int [][] costItems = new int[][]{sLotterySetting.getCostItem()}; + boolean enoughCost = ItemUtil.itemCost(user, costItems); + if(!enoughCost){ + MessageUtil.sendErrorResponse(session, 1, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,"道具不足"); + return; + } + for(int i=0;i Date: Fri, 25 Jan 2019 19:13:07 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=94=99=E8=AF=AF=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 4 ++-- .../src/main/java/com/ljsd/jieling/util/MessageUtil.java | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) 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 9c08e411c..5f86eaa3e 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 @@ -42,7 +42,7 @@ public class HeroLogic { if(sLotterySetting.getOrderBoxPool()!=null && sLotterySetting.getOrderBoxPool().length>0){ pooId = getOrderBoxPoolId(sLotterySetting); if(pooId == 0){ - MessageUtil.sendErrorResponse(session, 1, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,""); + MessageUtil.sendErrorResponse(session, 0, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,""); return; } isSpecial = true; @@ -52,7 +52,7 @@ public class HeroLogic { int [][] costItems = new int[][]{sLotterySetting.getCostItem()}; boolean enoughCost = ItemUtil.itemCost(user, costItems); if(!enoughCost){ - MessageUtil.sendErrorResponse(session, 1, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,"道具不足"); + MessageUtil.sendErrorResponse(session, 0, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,"道具不足"); return; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java index ec9f12b38..20afaf28f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java @@ -85,9 +85,10 @@ public class MessageUtil { public static void sendErrorResponse(ISession session,int errorCode,int msgId,String errMsg) throws Exception { GeneratedMessage generatedMessage = null; - if(errorCode!=1 && !StringUtil.isEmpty(errMsg)){ - generatedMessage = CommonProto.ErrorResponse.newBuilder().setErrCode(errorCode).setErrMsg(errMsg).build(); + if( null == errMsg){ + errMsg=""; } + generatedMessage = CommonProto.ErrorResponse.newBuilder().setErrCode(errorCode).setErrMsg(errMsg).build(); LOGGER.error("send error msg,the uid={},the msgId={},the errMsg={}",session.getUid(),msgId,errMsg); byte[] byteBuf = wrappedBuffer(session.getUid(), session.getToken(), session.getIndex(), errorCode,msgId, generatedMessage);