【成就优化】根据开服时间决定服务器内的成就
parent
b4ad96bba7
commit
7c0c66be39
|
@ -514,7 +514,12 @@ public class MissionLoigc {
|
|||
Set<Integer> doingMissionIds = achievementMissionTypMap.getDoingMissionIds();
|
||||
Set<Integer> finishMissionIds = achievementMissionTypMap.getFinishMissionIds();
|
||||
BitSet rewardedMissionIds = achievementMissionTypMap.getRewardedMissionIds();
|
||||
// 过滤出 配置日期(不含)前开服的可见
|
||||
long openTime = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime());
|
||||
for (SAchievementConfig sAchievementConfig : STableManager.getConfig(SAchievementConfig.class).values()) {
|
||||
if (sAchievementConfig.getEffectTime() != 0 && openTime >= sAchievementConfig.getEffectTime()) {
|
||||
continue;
|
||||
}
|
||||
int state = 2;
|
||||
int missionId = sAchievementConfig.getId();
|
||||
int progrss = sAchievementConfig.getValues()[1][0];
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.ljsd.jieling.logic.mission.event;
|
||||
|
||||
import com.ljsd.GameApplication;
|
||||
import config.*;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
|
@ -13,6 +14,7 @@ import com.ljsd.jieling.util.MessageUtil;
|
|||
import manager.STableManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
@ -622,6 +624,7 @@ public class MissionEventDistributor {
|
|||
if(missionStateChangeInfos.isEmpty()){
|
||||
return;
|
||||
}
|
||||
long openTime = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime());
|
||||
for(MissionStateChangeInfo missionStateChangeInfo : missionStateChangeInfos){
|
||||
MissionState missionState = missionStateChangeInfo.getMissionState();
|
||||
int state = missionState.getState();
|
||||
|
@ -665,8 +668,11 @@ public class MissionEventDistributor {
|
|||
}
|
||||
|
||||
if(gameMisionType == GameMisionType.ACHIEVEMISSION){
|
||||
SAchievementConfig achievementConfig = STableManager.getConfig(SAchievementConfig.class).get(missionStateChangeInfo.getMissionId());
|
||||
progress= achievementConfig.getValues()[1][0];
|
||||
SAchievementConfig sAchievementConfig = STableManager.getConfig(SAchievementConfig.class).get(missionStateChangeInfo.getMissionId());
|
||||
if (sAchievementConfig.getEffectTime() != 0 && openTime >= sAchievementConfig.getEffectTime()) {
|
||||
continue;
|
||||
}
|
||||
progress= sAchievementConfig.getValues()[1][0];
|
||||
}
|
||||
|
||||
if(gameMisionType == GameMisionType.SEVENMISSION){
|
||||
|
|
|
@ -2,6 +2,7 @@ package config;
|
|||
|
||||
import manager.STableManager;
|
||||
import manager.Table;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
|
@ -16,7 +17,10 @@ public class SAchievementConfig implements BaseConfig {
|
|||
|
||||
private int[][] reward;
|
||||
|
||||
public static Map<Integer, Set<Integer>> setTMap;
|
||||
private String effectData;
|
||||
|
||||
private long effectTime;
|
||||
|
||||
public static Map<Integer, List<SAchievementConfig>> sTaskConfigByTypeMap;
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
|
@ -24,6 +28,10 @@ public class SAchievementConfig implements BaseConfig {
|
|||
Map<Integer, List<SAchievementConfig>> configListTmp = new HashMap<>();
|
||||
for(SAchievementConfig sAchievementConfig : configTmp.values()){
|
||||
int taskType = sAchievementConfig.getType();
|
||||
String effectData = sAchievementConfig.getEffectData();
|
||||
if (effectData != null && !effectData.isEmpty()) {
|
||||
sAchievementConfig.setEffectTime(TimeUtils.parseTimeToMiles(effectData,TimeUtils.Stand_CeHua_Data_format));
|
||||
}
|
||||
if(!configListTmp.containsKey(taskType)){
|
||||
configListTmp.put(taskType,new ArrayList<>());
|
||||
}
|
||||
|
@ -49,11 +57,15 @@ public class SAchievementConfig implements BaseConfig {
|
|||
return reward;
|
||||
}
|
||||
|
||||
public static Map<Integer, List<SAchievementConfig>> getsTaskConfigByTypeMap() {
|
||||
return sTaskConfigByTypeMap;
|
||||
public long getEffectTime() {
|
||||
return effectTime;
|
||||
}
|
||||
|
||||
public static void setsTaskConfigByTypeMap(Map<Integer, List<SAchievementConfig>> sTaskConfigByTypeMap) {
|
||||
SAchievementConfig.sTaskConfigByTypeMap = sTaskConfigByTypeMap;
|
||||
public void setEffectTime(long effectTime) {
|
||||
this.effectTime = effectTime;
|
||||
}
|
||||
|
||||
public String getEffectData() {
|
||||
return effectData;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue