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 90dcd5717..5af489aee 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 @@ -49,6 +49,8 @@ public class ActivityLogic implements IEventHandler{ private Set openActivityIds = new HashSet<>(); + private Set prepareActivityIds = new HashSet<>(); + private int secretBoxSeasonTimes = 0; //秘盒赛季 @Override @@ -59,6 +61,10 @@ public class ActivityLogic implements IEventHandler{ } } + public Set getPrepareActivityIds() { + return prepareActivityIds; + } + public void flushEveryDay(User user, PlayerInfoProto.FivePlayerUpdateIndication.Builder fBuilder) throws Exception { //跟新签到天数 @@ -133,6 +139,16 @@ public class ActivityLogic implements IEventHandler{ } } } + long prepareTime = ToolsUtil.getEndTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, sGlobalActivity.getGapTime()); + if(now>endTime&&now endTime) { if (openActivityIds.contains(sGlobalActivity.getId())) { @@ -255,12 +271,6 @@ public class ActivityLogic implements IEventHandler{ for (SGlobalActivity sGlobalActivity : sGlobalActivityMap.values()) { int activityId = sGlobalActivity.getId(); if (openActivityIds.contains(activityId)) { -// if(sGlobalActivity.getGapTime()>0){ -// long endTime = ToolsUtil.getEndTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),userCreateTime, sGlobalActivity.getGapTime()); -// if(TimeUtils.now()>=endTime){ -// goRewardActivity(user,activityId,builder,false); -// } -// } int[] ifOpen = sGlobalActivity.getIfOpen(); if(ifOpen!=null && ifOpen.length>0){ if(ifOpen[0]==1){ //创角 @@ -354,6 +364,15 @@ public class ActivityLogic implements IEventHandler{ checkActivityOfUser(user, null); List activityInfoList = getActivityInfos(user.getActivityManager().getActivityMissionMap(), createTime); PlayerInfoProto.GetAllActivityResponse.Builder builder = PlayerInfoProto.GetAllActivityResponse.newBuilder(); + + if(!prepareActivityIds.isEmpty()){ + for(int id:prepareActivityIds){ + SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id); + long prepareTime = ToolsUtil.getEndTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, sGlobalActivity.getGapTime()); + activityInfoList.add(CommonProto.ActivityInfo.newBuilder().setActivityId(id).setEndTime((int)(prepareTime/1000)).build()); + } + } + builder.addAllActivityInfo(activityInfoList); sendLuckWheelPool(user,session); MessageUtil.sendMessage(session, 1, rewardResponseValue, builder.build(), true); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/LimitRandomCardActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/LimitRandomCardActivity.java index c21b21102..aef4b22b2 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/LimitRandomCardActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/LimitRandomCardActivity.java @@ -69,9 +69,6 @@ public class LimitRandomCardActivity extends AbstractActivity { @Override public void onActivityEnd() throws Exception { SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id); - if(sGlobalActivity.getOpenRanking()==0){ - return; - } List sActivityRankingReward = SActivityRankingReward.getsActivityRankingRewardMapByActivityId(id); if(null==sActivityRankingReward) return;