删除无尽副本任务

master_huanxiang
PC-202302260912\Administrator 2023-07-20 15:28:39 +08:00
parent cd6ce783cf
commit e55c2e593d
2 changed files with 83 additions and 103 deletions

View File

@ -67,7 +67,7 @@ public class UserMissionManager extends MongoBase {
private AchieveMissionIdsType achievementMissionTypMap = new AchieveMissionIdsType();
private JadeDynastyMissionType jadeDynastyMissionType = new JadeDynastyMissionType();//破阵诛仙任务
private CowFlySkyMissionType cowFlySkyMissionType = new CowFlySkyMissionType();// 牛气冲天活动任务
private EndlessMissionType endlessMissionType = new EndlessMissionType();//无尽副本
// private EndlessMissionType endlessMissionType = new EndlessMissionType();//无尽副本
private MistyTripMissionType mistyTripMissionType = new MistyTripMissionType();//缥缈之旅
private HomeMissionType homeMissionType = new HomeMissionType();//家园任务
private DonghaiXunxianMissionType donghaiXunxianMission = new DonghaiXunxianMissionType();//东海寻仙
@ -84,7 +84,7 @@ public class UserMissionManager extends MongoBase {
private CumulationData achievementMap = new CumulationData();
private CumulationData jadeDynastyCumulationData = new CumulationData();//破阵诛仙日数据
private CumulationData jadeDynastyWeekCumulationData = new CumulationData();//破阵诛仙周数据
private CumulationData endlessTask = new CumulationData();//无尽副本任务数据
// private CumulationData endlessTask = new CumulationData();//无尽副本任务数据
private CumulationData mistyTripCumulationData = new CumulationData();//缥缈之旅数据
private CumulationData donghaiXunxianData = new CumulationData();//东海寻仙数据
@ -251,26 +251,26 @@ public class UserMissionManager extends MongoBase {
cowFlySkyMissionType.getDoingMissionIds().addAll(arro);
updateString("cowFlySkyMissionType", cowFlySkyMissionType);
break;
case ENDLESS_MISSION_REFRESH:
Set<Integer> endlessTask;
if(TimeUtils.isSameMonth2(GameApplication.serverConfig.getCacheOpenTime(),TimeUtils.now())){
int days = new Date(GameApplication.serverConfig.getCacheOpenTime()).getDate();//当月第几天
endlessTask = STableManager.getConfig(SEndlessTask.class).values().stream().filter(n->days >=n.
getViewDateUp()&& days <=n.getViewDataDown()).map(SEndlessTask::getId).collect(Collectors.toSet());
}else{
endlessTask = STableManager.getConfig(SEndlessTask.class).values().stream().filter(n->n.getViewDateUp() == 1).
map(SEndlessTask::getId).collect(Collectors.toSet());
}
endlessMissionType.getDoingMissionIds().clear();
endlessMissionType.getFinishMissionIds().clear();
endlessMissionType.getRewardedMissionIds().clear();
endlessMissionType.getDoingMissionIds().addAll(endlessTask);
this.endlessTask= new CumulationData();
updateString("endlessMissionType", endlessMissionType);
updateString("endlessTask", this.endlessTask);
break;
// case ENDLESS_MISSION_REFRESH:
//
// Set<Integer> endlessTask;
// if(TimeUtils.isSameMonth2(GameApplication.serverConfig.getCacheOpenTime(),TimeUtils.now())){
// int days = new Date(GameApplication.serverConfig.getCacheOpenTime()).getDate();//当月第几天
// endlessTask = STableManager.getConfig(SEndlessTask.class).values().stream().filter(n->days >=n.
// getViewDateUp()&& days <=n.getViewDataDown()).map(SEndlessTask::getId).collect(Collectors.toSet());
// }else{
// endlessTask = STableManager.getConfig(SEndlessTask.class).values().stream().filter(n->n.getViewDateUp() == 1).
// map(SEndlessTask::getId).collect(Collectors.toSet());
// }
// endlessMissionType.getDoingMissionIds().clear();
// endlessMissionType.getFinishMissionIds().clear();
// endlessMissionType.getRewardedMissionIds().clear();
// endlessMissionType.getDoingMissionIds().addAll(endlessTask);
// this.endlessTask= new CumulationData();
// updateString("endlessMissionType", endlessMissionType);
// updateString("endlessTask", this.endlessTask);
//
// break;
case MISTY_TRIP_REFRESH:
//任务开始
Set<Integer> journeyWithWind = STableManager.getConfig(SJourneyWithWind.class).keySet();
@ -492,10 +492,10 @@ public class UserMissionManager extends MongoBase {
updateString("cowFlySkyMissionType",cowFlySkyMissionType);
break;
}
case ENDLESS_MISSION_REWARD:{
endlessMissionType.rewardMission((int)parm[0], missionTypeEnumListMap.get(GameMisionType.ENDLESS_MISSION));
updateString("endlessMissionType",endlessMissionType);
}
// case ENDLESS_MISSION_REWARD:{
// endlessMissionType.rewardMission((int)parm[0], missionTypeEnumListMap.get(GameMisionType.ENDLESS_MISSION));
// updateString("endlessMissionType",endlessMissionType);
// }
case EXPLORE_REWARD:{
exploreMissionType.rewardMission((int)parm[0], missionTypeEnumListMap.get(GameMisionType.EXPLORE));
updateString("exploreMissionType",exploreMissionType);
@ -621,17 +621,17 @@ public class UserMissionManager extends MongoBase {
}
}
if(!endlessMissionType.getDoingMissionIds().isEmpty() ){
Map<Integer, SEndlessTask> endlessConfig = STableManager.getConfig(SEndlessTask.class);
if(endlessConfig!=null&&endlessConfig.size()!=0){
CumulationData.Result result= endlessTask.updateData(missionType, parm);
if(result!=null){
endlessMissionType.calCumulationDataResult(user,result,missionTypeEnumListMap.get(GameMisionType.ENDLESS_MISSION),endlessTask);
updateString("endlessTask",endlessTask);
updateString("endlessMissionType",endlessMissionType);
}
}
}
// if(!endlessMissionType.getDoingMissionIds().isEmpty() ){
// Map<Integer, SEndlessTask> endlessConfig = STableManager.getConfig(SEndlessTask.class);
// if(endlessConfig!=null&&endlessConfig.size()!=0){
// CumulationData.Result result= endlessTask.updateData(missionType, parm);
// if(result!=null){
// endlessMissionType.calCumulationDataResult(user,result,missionTypeEnumListMap.get(GameMisionType.ENDLESS_MISSION),endlessTask);
// updateString("endlessTask",endlessTask);
// updateString("endlessMissionType",endlessMissionType);
// }
// }
// }
// 东海寻仙
if (!donghaiXunxianMission.getDoingMissionIds().isEmpty()){
CumulationData.Result result = donghaiXunxianData.updateData(missionType, parm);
@ -928,14 +928,6 @@ public class UserMissionManager extends MongoBase {
return cowFlySkyMissionType;
}
public EndlessMissionType getEndlessMissionType() {
return endlessMissionType;
}
public CumulationData getEndlessTask() {
return endlessTask;
}
public MistyTripMissionType getMistyTripMissionType() {
return mistyTripMissionType;
}
@ -952,23 +944,11 @@ public class UserMissionManager extends MongoBase {
return donghaiXunxianMission;
}
public void setDonghaiXunxianMission(DonghaiXunxianMissionType donghaiXunxianMission) {
this.donghaiXunxianMission = donghaiXunxianMission;
}
public CumulationData getDonghaiXunxianData() {
return donghaiXunxianData;
}
public void setDonghaiXunxianData(CumulationData donghaiXunxianData) {
this.donghaiXunxianData = donghaiXunxianData;
}
public ExploreMissionType getExploreMissionType() {
return exploreMissionType;
}
public void setExploreMissionType(ExploreMissionType exploreMissionType) {
this.exploreMissionType = exploreMissionType;
}
}

View File

@ -524,52 +524,52 @@ public class MissionLoigc {
}
public static void getEndlessMission(User user,List<CommonProto.UserMissionInfo> missionList){
EndlessMissionType missionType = user.getUserMissionManager().getEndlessMissionType();
// 进行中
Set<Integer> doingMissionIds = missionType.getDoingMissionIds();
// 可领取
Set<Integer> finishMissionIds = missionType.getFinishMissionIds();
// 已领取
BitSet rewardedMissionIds = missionType.getRewardedMissionIds();
Collection<SEndlessTask> values = STableManager.getConfig(SEndlessTask.class).values();
CumulationData treasureCumulationData = user.getUserMissionManager().getEndlessTask();
values.forEach(v->{
int id = v.getId();
SEndlessTask config = STableManager.getConfig(SEndlessTask.class).get(id);
int day =new Date(GameApplication.serverConfig.getCacheOpenTime()).getDate();//当月第几天
boolean isAdd = false;
if(TimeUtils.isSameMonth2(GameApplication.serverConfig.getCacheOpenTime(),TimeUtils.now())){
if(day >= config.getViewDateUp() && day <= config.getViewDataDown()){
isAdd = true;
}
}else{
if(1 == config.getViewDateUp()){
isAdd = true;
}
}
if(isAdd){
CommonProto.UserMissionInfo.Builder info = CommonProto.UserMissionInfo.newBuilder();
info.setMissionId(id);
info.setType(GameMisionType.ENDLESS_MISSION.getType());
if (doingMissionIds.contains(id)){
info.setState(MissionState.DOING.getState());
int doingProgress = getDoingProgress(user, treasureCumulationData, config.getType(), config.getValues()[0]);
info.setProgress(doingProgress);
}
if (finishMissionIds.contains(id)){
int finishProgress = config.getValues()[1][0];
info.setState(MissionState.FINISH.getState());
info.setProgress(finishProgress);
}
if (rewardedMissionIds.get(id)){
info.setState(MissionState.REWARD.getState());
}
missionList.add(info.build());
}
});
// EndlessMissionType missionType = user.getUserMissionManager().getEndlessMissionType();
//
// // 进行中
// Set<Integer> doingMissionIds = missionType.getDoingMissionIds();
// // 可领取
// Set<Integer> finishMissionIds = missionType.getFinishMissionIds();
// // 已领取
// BitSet rewardedMissionIds = missionType.getRewardedMissionIds();
//
// Collection<SEndlessTask> values = STableManager.getConfig(SEndlessTask.class).values();
// CumulationData treasureCumulationData = user.getUserMissionManager().getEndlessTask();
//
// values.forEach(v->{
// int id = v.getId();
// SEndlessTask config = STableManager.getConfig(SEndlessTask.class).get(id);
// int day =new Date(GameApplication.serverConfig.getCacheOpenTime()).getDate();//当月第几天
// boolean isAdd = false;
// if(TimeUtils.isSameMonth2(GameApplication.serverConfig.getCacheOpenTime(),TimeUtils.now())){
// if(day >= config.getViewDateUp() && day <= config.getViewDataDown()){
// isAdd = true;
// }
// }else{
// if(1 == config.getViewDateUp()){
// isAdd = true;
// }
// }
// if(isAdd){
// CommonProto.UserMissionInfo.Builder info = CommonProto.UserMissionInfo.newBuilder();
// info.setMissionId(id);
// info.setType(GameMisionType.ENDLESS_MISSION.getType());
// if (doingMissionIds.contains(id)){
// info.setState(MissionState.DOING.getState());
// int doingProgress = getDoingProgress(user, treasureCumulationData, config.getType(), config.getValues()[0]);
// info.setProgress(doingProgress);
// }
// if (finishMissionIds.contains(id)){
// int finishProgress = config.getValues()[1][0];
// info.setState(MissionState.FINISH.getState());
// info.setProgress(finishProgress);
// }
// if (rewardedMissionIds.get(id)){
// info.setState(MissionState.REWARD.getState());
// }
// missionList.add(info.build());
// }
// });
}
public static void getMistyTripMission(User user,List<CommonProto.UserMissionInfo> missionList){