【任务】参与日常副本次数,完不成

back_recharge
wangyuan 2020-05-18 11:25:26 +08:00
parent 9c373c3b2a
commit 7e360f4d71
9 changed files with 36 additions and 3 deletions

View File

@ -19,18 +19,19 @@ public class WorldBossTreasureStaticConfig extends AbstractClassStaticConfig {
@Override
public void figureConfigs() {
/* Map<Integer, SWorldBossTreasureConfig> config = STableManager.getConfig(SWorldBossTreasureConfig.class);
Map<Integer, SWorldBossTreasureConfig> config = STableManager.getConfig(SWorldBossTreasureConfig.class);
Map<Integer,Set<SWorldBossTreasureConfig>> idsByPeriodsTmp = new HashMap<>();
config.forEach((id,item)->{
int[] activityIds = item.getActivityId();
Set<SWorldBossTreasureConfig> ids = idsByPeriodsTmp.putIfAbsent(activityIds[0], new HashSet<>());
idsByPeriodsTmp.putIfAbsent(activityIds[0], new HashSet<>());
Set<SWorldBossTreasureConfig> ids = idsByPeriodsTmp.get(activityIds[0]);
for(int i=1;i<activityIds.length;i++){
idsByPeriodsTmp.putIfAbsent(activityIds[i],ids);
}
ids.add(item);
});
sWorldBossTreasureConfigByIdMap = config;
idsByPeriods = idsByPeriodsTmp;*/
idsByPeriods = idsByPeriodsTmp;
}

View File

@ -3416,6 +3416,7 @@ public class MapLogic {
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
}
user.getUserMissionManager().onGameEvent(user,GameEvent.DAILY_CHALLENGE,sDailyChallengeConfig.getType());
MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build());
}
}

View File

@ -130,6 +130,7 @@ public class CumulationData {
public Map<Integer,Integer> finishMissionTimes = new HashMap<>();//完成迷宫寻宝%品质%次
public Map<Integer,Integer> loginTimesDay = new HashMap<>();//每日登陆次数
public Map<Integer,Integer> servenGiftTimes = new HashMap<>();//每日登陆次数
public Map<Integer,Integer> dailyChallengeMap = new HashMap<>();//每日挑战副本

View File

@ -82,4 +82,5 @@ public enum GameEvent {
EXPEDITION_TIMES,//完成猎妖之路节点
BUY_SEVEN_GIFT,//购买七日礼包
DAILY_CHALLENGE,//日常副本挑战
}

View File

@ -762,6 +762,13 @@ public class MissionLoigc {
case SEVEN_GIFT_BUY:
count = cumulationData.servenGiftTimes.get(missionSubType[0]);
break;
case FINISIN_DAILY_CHALLENGE_TIMES:
if(missionSubType[0] == 0){
count = (int)(cumulationData.dailyChallengeMap.values().stream().collect(Collectors.summarizingInt(x->x)).getSum());
}else{
count = cumulationData.dailyChallengeMap.get(missionSubType[0]);
}
break;
default:
count = 0;
break;

View File

@ -91,6 +91,7 @@ public enum MissionType {
LUCKY_WHEELS_TIMES(83),//幸运探宝%次
FINISH_EXPEDITION_HERO_TIMES(84),//完成猎妖之路次数达到
SEVEN_GIFT_BUY(86),//购买7日狂欢福利礼包%s次七日狂欢积分
FINISIN_DAILY_CHALLENGE_TIMES(87),//完成%s类型0为不限类型的日常副本%s次
;
@ -256,6 +257,8 @@ public enum MissionType {
return FINISH_EXPEDITION_HERO_TIMES;
case 86:
return SEVEN_GIFT_BUY;
case 87:
return FINISIN_DAILY_CHALLENGE_TIMES;
default:
return null;
}

View File

@ -117,6 +117,7 @@ public class DataManagerDistributor {
judges.put(MissionType.FINISH_EXPEDITION_HERO_TIMES,new ExpeditionManager());
judges.put(MissionType.LOGIN_TIMES,new LoginTimeManager());
judges.put(MissionType.SEVEN_GIFT_BUY,new SevenGiftManager());
judges.put(MissionType.FINISIN_DAILY_CHALLENGE_TIMES,new FinishDailyChallengeManger());

View File

@ -0,0 +1,13 @@
package com.ljsd.jieling.logic.mission.data;
import com.ljsd.jieling.logic.dao.CumulationData;
import com.ljsd.jieling.logic.mission.MissionType;
public class FinishDailyChallengeManger implements BaseDataManager{
@Override
public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) {
int type = (int) parm[0];
data.dailyChallengeMap.put(type,data.dailyChallengeMap.getOrDefault(type, 0)+1);
return new CumulationData.Result(missionType);
}
}

View File

@ -334,6 +334,11 @@ public class MissionEventDistributor {
typeList.add(MissionType.SEVEN_GIFT_BUY);
eventEnumListMap.put(GameEvent.BUY_SEVEN_GIFT,typeList);
eventProcessor.put(GameEvent.BUY_SEVEN_GIFT,new CumulationDataEventProcessor());
typeList = new ArrayList<>();
typeList.add(MissionType.FINISIN_DAILY_CHALLENGE_TIMES);
eventEnumListMap.put(GameEvent.DAILY_CHALLENGE,typeList);
eventProcessor.put(GameEvent.DAILY_CHALLENGE,new CumulationDataEventProcessor());
}
public static final ThreadLocal<Map<GameMisionType, List<MissionStateChangeInfo>>> threadMissionChangeList =