活动热更延期增加遗留数据清理
parent
b83687ea23
commit
bf1ef4c1a3
|
@ -1,5 +1,6 @@
|
||||||
package com.ljsd.jieling.logic.activity;
|
package com.ljsd.jieling.logic.activity;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
import com.ljsd.GameApplication;
|
import com.ljsd.GameApplication;
|
||||||
import com.ljsd.jieling.config.clazzStaticCfg.CommonStaticConfig;
|
import com.ljsd.jieling.config.clazzStaticCfg.CommonStaticConfig;
|
||||||
import com.ljsd.jieling.core.VipPrivilegeType;
|
import com.ljsd.jieling.core.VipPrivilegeType;
|
||||||
|
@ -135,6 +136,10 @@ public class ActivityLogic implements IEventHandler{
|
||||||
long startTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 1);
|
long startTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 1);
|
||||||
long endTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 2);
|
long endTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 2);
|
||||||
if (now < startTime) {
|
if (now < startTime) {
|
||||||
|
//如果没到活动开启时间,但是openActivityIds里有了这个活动,证明是热更延迟开启的活动,需要清除掉
|
||||||
|
if (openActivityIds.contains(sGlobalActivity.getId())) {
|
||||||
|
openActivityIds.remove(sGlobalActivity.getId());
|
||||||
|
}
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
int[] ifOpen = sGlobalActivity.getIfOpen();
|
int[] ifOpen = sGlobalActivity.getIfOpen();
|
||||||
|
@ -347,6 +352,16 @@ public class ActivityLogic implements IEventHandler{
|
||||||
}else{
|
}else{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
} else if (activityMissionMap.containsKey(activityId)) {
|
||||||
|
//如果活动没有开启,但是玩家有这个活动的数据,则清除,并通知客户端活动关闭
|
||||||
|
long startTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),userCreateTime, 1);
|
||||||
|
if(TimeUtils.now() < startTime){
|
||||||
|
LOGGER.info("[活动延期,清除遗留玩家数据] [uid:{}] [activityId:{}] [activityType:{}] [activityStartTime:{}]",user.getId(),activityId,sGlobalActivity.getType(),sGlobalActivity.getStartTimeLong());
|
||||||
|
activityMissionMap.remove(activityId);
|
||||||
|
if (builder != null) {
|
||||||
|
builder.addCloseActivityId(activityId);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
int time = sGlobalActivity.getTime();
|
int time = sGlobalActivity.getTime();
|
||||||
if (time == ActivityType.OPEN_TYPE_ROLE) {
|
if (time == ActivityType.OPEN_TYPE_ROLE) {
|
||||||
|
|
Loading…
Reference in New Issue