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 {