From f64e9e3be57151adb19d2cd4ae7b34228e85765b Mon Sep 17 00:00:00 2001 From: lvxinran Date: Thu, 19 Dec 2019 11:55:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=B7=E5=AE=AB=E9=A2=86=E5=A5=96=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logic/mission/event/MissionEventDistributor.java | 3 +++ .../logic/mission/main/MissingRoomMissionType.java | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java index cbea7e916..9da27907f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java @@ -357,6 +357,9 @@ public class MissionEventDistributor { MissionState missionState = missionStateChangeInfo.getMissionState(); int state = missionState.getState(); int progress = 0; + if(gameMisionType==GameMisionType.MISSINGROOMMISSION){ + continue; + } if(gameMisionType == GameMisionType.COPYMISSION || gameMisionType == GameMisionType.TREASUREMISSION || gameMisionType == GameMisionType.SEVENMISSION || gameMisionType == GameMisionType.BLOODYMISSION){ progress = missionStateChangeInfo.getProgress(); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/main/MissingRoomMissionType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/main/MissingRoomMissionType.java index 3f31b4bfc..5069f26d4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/main/MissingRoomMissionType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/main/MissingRoomMissionType.java @@ -63,16 +63,20 @@ public class MissingRoomMissionType extends AbstractMissionType{ MissionStateChangeInfo stateChangeInfo = new MissionStateChangeInfo(missionId, MissionState.REWARD, reward(missionId)); missionTypeEnumListMap.add(stateChangeInfo); } else { + List reward = new ArrayList<>(); for (Integer id : getFinishMissionIds()) { if(missingTime.get(id)==-1){ continue; } if (missingTime.get(id)==0||missingTime.get(id) <= TimeUtils.now() / 1000) { missingTime.put(id,-1); - MissionStateChangeInfo stateChangeInfo = new MissionStateChangeInfo(id, MissionState.REWARD, reward(id)); - missionTypeEnumListMap.add(stateChangeInfo); + for(int[] re: reward(id)){ + reward.add(re); + } } } + MissionStateChangeInfo stateChangeInfo = new MissionStateChangeInfo(missionId, MissionState.REWARD,reward.toArray(new int[reward.size()][])); + missionTypeEnumListMap.add(stateChangeInfo); } }