From 61c961d073662cf1117d734f3b24bf8c0fdaf4a4 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Mon, 20 Jul 2020 14:12:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B9=B8=E8=BF=90=E6=8E=A2=E5=AE=9D=E6=AC=A1?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GetPlayerInfoHandler.java | 2 ++ .../activity/GetLuckWheelRandHandler.java | 23 +++++++++++++++---- .../jieling/logic/activity/ActivityLogic.java | 4 +++- .../ljsd/jieling/logic/dao/PlayerManager.java | 11 +++++++++ .../src/main/java/config/SSpecialConfig.java | 1 + 5 files changed, 36 insertions(+), 5 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index c6e2380d9..89bfbac42 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -178,6 +178,8 @@ public class GetPlayerInfoHandler extends BaseHandler{ .addAllMonthinfos(PlayerLogic.getInstance().getMonthCardInfo(user)) .addAllDailyChallengeInfo(playerInfoManager.getDailyPass()) .setExpeditionLeve(user.getExpeditionManager().getExpeditionLeve()) + .setHadLuckTime( user.getPlayerInfoManager().getLuckWheelLimitTime()) + .setHadAdvanceLuckTime(user.getPlayerInfoManager().getLuckAdvanceWheelLimitTime()) .build(); ReportUtil.onReportEvent(user, ReportEventEnum.APP_LOGIN.getType()); try { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/GetLuckWheelRandHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/GetLuckWheelRandHandler.java index a6303a76d..e49a89e6f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/GetLuckWheelRandHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/GetLuckWheelRandHandler.java @@ -73,11 +73,26 @@ public class GetLuckWheelRandHandler extends BaseHandler100){ - throw new ErrorCodeException( ErrorCode.SERVER_DEFINE_SELF,"不可超出每日探宝上限次数!"); + + int cfgTime = SSpecialConfig.getIntegerValue(SSpecialConfig.LUCKYTURNDAILYLIMIT); + if(sGlobalActivity.getType() == 30){ + int luckWheelLimitTime = user.getPlayerInfoManager().getLuckWheelLimitTime(); + if(luckWheelLimitTime+time>cfgTime){ + throw new ErrorCodeException( ErrorCode.SERVER_DEFINE_SELF,"不可超出每日探宝上限次数!"); + } + user.getPlayerInfoManager().setLuckWheelLimitTime(luckWheelLimitTime+time); + }else { + int luckWheelLimitTime = user.getPlayerInfoManager().getLuckAdvanceWheelLimitTime(); + if(luckWheelLimitTime+time>cfgTime){ + throw new ErrorCodeException( ErrorCode.SERVER_DEFINE_SELF,"不可超出每日探宝上限次数!"); + } + user.getPlayerInfoManager().setLuckAdvanceWheelLimitTime(luckWheelLimitTime+time); } - user.getPlayerInfoManager().setLuckWheelLimitTime(luckWheelLimitTime+time); + + + + + int luckId; int lastpos=1; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java index 40b354fdc..c17709763 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java @@ -89,6 +89,7 @@ public class ActivityLogic implements IEventHandler{ ActivityLogic.getInstance().resumeActivity(user, ActivityType.RECHARGE_SUM_DAY); user.getPlayerInfoManager().setRechargedaily(0); user.getPlayerInfoManager().setLuckWheelLimitTime(0); + user.getPlayerInfoManager().setLuckAdvanceWheelLimitTime(0); updateActivityMissionProgress(user, ActivityType.SevenLogin, 1); Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.LOGIN_TIMES.getType(),1)); @@ -632,7 +633,8 @@ public class ActivityLogic implements IEventHandler{ int endTime = (int) (ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),createTime, 2) / 1000); List missionInfos = abstractActivity.getAllMissInfo(activityMission); fBuilder.addActivityInfo(CommonProto.ActivityInfo.newBuilder().setValue(activityMission.getV()).setActivityId(activityId).addAllMission(missionInfos).setStartTime(startTime).setEndTime(endTime).setReallyOpen(activityMission.getOpenType()).build()); - + fBuilder.setHadLuckTime( user.getPlayerInfoManager().getLuckWheelLimitTime()); + fBuilder.setHadAdvanceLuckTime(user.getPlayerInfoManager().getLuckAdvanceWheelLimitTime()); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java index f685d37f4..aa8d4c9bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java @@ -106,6 +106,7 @@ public class PlayerManager extends MongoBase { private Set proudInfo = new HashSet<>(); private int luckWheelLimitTime; + private int luckAdvanceWheelLimitTime; public PlayerManager(){ this.setRootCollection(User._COLLECTION_NAME); @@ -716,4 +717,14 @@ public class PlayerManager extends MongoBase { updateString("luckWheelLimitTime",luckWheelLimitTime); this.luckWheelLimitTime = luckWheelLimitTime; } + + + public int getLuckAdvanceWheelLimitTime() { + return luckAdvanceWheelLimitTime; + } + + public void setLuckAdvanceWheelLimitTime(int luckAdvanceWheelLimitTime) { + updateString("luckAdvanceWheelLimitTime",luckAdvanceWheelLimitTime); + this.luckAdvanceWheelLimitTime = luckAdvanceWheelLimitTime; + } } diff --git a/tablemanager/src/main/java/config/SSpecialConfig.java b/tablemanager/src/main/java/config/SSpecialConfig.java index da1b9d063..a6ba918f1 100644 --- a/tablemanager/src/main/java/config/SSpecialConfig.java +++ b/tablemanager/src/main/java/config/SSpecialConfig.java @@ -66,6 +66,7 @@ public class SSpecialConfig implements BaseConfig { public static final String REWARD_OF_WORSHIP = "reward_of_worship";//膜拜获得金币奖励 public static final String DISCOUNT_LEVEL= "discount_level";//限时折扣推送等级#推送间隔等级 public static final String GUILD_WAR_ISOPEN = "Guild_war_isopen";//老公会战是否开启 + public static final String LUCKYTURNDAILYLIMIT = "LuckyTurnDailyLimit";//幸运探宝每日上限 @Override public void init() throws Exception {