Merge branch 'master' of 60.1.1.230:backend/jieling_server
commit
d0e785b44a
|
@ -206,6 +206,9 @@ public class MapLogic {
|
|||
if (doingMissions.containsKey(doingMissionId)) {
|
||||
Mission mission = doingMissions.get(doingMissionId);
|
||||
missions.add(mission);
|
||||
for (Map.Entry<Integer, Cell> missionEntry : mission.getMissionInfos().entrySet()) {
|
||||
newMap.put(missionEntry.getKey(), missionEntry.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -256,9 +259,6 @@ public class MapLogic {
|
|||
// 任务触发的事件点
|
||||
for (Mission mission : missions) {
|
||||
if (mission.getMapPoints().containsKey(mapPointConfig.getId())) {
|
||||
for (Map.Entry<Integer, Cell> missionEntry : mission.getMissionInfos().entrySet()) {
|
||||
newMap.put(missionEntry.getKey(), missionEntry.getValue());
|
||||
}
|
||||
Cell cellValue = new Cell(xy, mission.getMapPoints().get(mapPointConfig.getId()), mapPointConfig.getId());
|
||||
newMap.put(xy, cellValue);
|
||||
}
|
||||
|
@ -769,6 +769,8 @@ public class MapLogic {
|
|||
mapManager.setCurXY(0);
|
||||
mapManager.setCurMapId(0);
|
||||
mapManager.setTotalStep(0);
|
||||
mapManager.setTriggerXY(0);
|
||||
mapManager.setFoodBuffers(new ArrayList<>());
|
||||
TemporaryItems temporaryItems = mapManager.getTemporaryItems();
|
||||
if (temporaryItems != null) {
|
||||
ItemUtil.addTemporaryItemToBag(user, temporaryItems, needTemporaryItem);
|
||||
|
|
|
@ -41,6 +41,16 @@ public class BehaviorUtil {
|
|||
needDelete.add(entry.getKey());
|
||||
}
|
||||
}
|
||||
Map<Integer, Mission> doingMissions = user.getMissionManager().getDoingMissions();
|
||||
for (Map.Entry<Integer, Mission> entry : doingMissions.entrySet()) {
|
||||
Mission mission = entry.getValue();
|
||||
Map<Integer, Cell> missionInfos = mission.getMissionInfos();
|
||||
for (Integer xy : needDelete) {
|
||||
if (missionInfos.containsKey(xy)){
|
||||
mission.removeMissionInfos(xy);
|
||||
}
|
||||
}
|
||||
}
|
||||
for (Integer xy : needDelete) {
|
||||
mapInfo.remove(xy);
|
||||
}
|
||||
|
|
|
@ -70,9 +70,7 @@ public class DunBehavior extends BaseBehavior {
|
|||
mission.setMissionStep(0);
|
||||
mission.getMissionInfos().putAll(newDunEvents);
|
||||
mission.setMissionInfo(mapManager.getCurXY() + "#" + behaviorTypeValues[0][2]);
|
||||
Map<Integer, Mission> doingMissions = user.getMissionManager().getDoingMissions();
|
||||
doingMissions.put(behaviorTypeValues[0][0], mission);
|
||||
user.getMissionManager().updateDoingMissions(doingMissions);
|
||||
user.getMissionManager().updateOneDoingMissions(behaviorTypeValues[0][0], mission);
|
||||
CommonProto.Mission missionProto = MapLogic.getInstance().getMission(mission);
|
||||
eventUpdateResponse.addMission(missionProto);
|
||||
CrossMapCell crossMapInfo = mapManager.getCrossMapInfos().get(mapManager.getCurMapId());
|
||||
|
|
|
@ -24,9 +24,7 @@ public class OpenAppointMissionBehavior extends BaseBehavior {
|
|||
mission.setMissionStep(0);
|
||||
mission.setOpen(true);
|
||||
mission.setMissionInfo(user.getMapManager().getCurMapId() + "#" + behaviorTypeValues[0][0]);
|
||||
Map<Integer, Mission> doingMissions = user.getMissionManager().getDoingMissions();
|
||||
doingMissions.put(behaviorTypeValues[0][0], mission);
|
||||
user.getMissionManager().updateDoingMissions(doingMissions);
|
||||
user.getMissionManager().updateOneDoingMissions(behaviorTypeValues[0][0], mission);
|
||||
CommonProto.Mission missionProto = MapLogic.getInstance().getMission(mission);
|
||||
eventUpdateResponse.addMission(missionProto);
|
||||
return true;
|
||||
|
|
|
@ -8,8 +8,6 @@ import com.ljsd.jieling.protocols.CommonProto;
|
|||
import com.ljsd.jieling.protocols.MapInfoProto;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Component
|
||||
public class OpenNotDoMissionBehavior extends BaseBehavior {
|
||||
@Override
|
||||
|
@ -24,9 +22,7 @@ public class OpenNotDoMissionBehavior extends BaseBehavior {
|
|||
mission.setMissionStep(0);
|
||||
mission.setOpen(false);
|
||||
mission.setMissionInfo(user.getMapManager().getCurMapId() + "#" + behaviorTypeValues[0][0]);
|
||||
Map<Integer, Mission> doingMissions = user.getMissionManager().getDoingMissions();
|
||||
doingMissions.put(behaviorTypeValues[0][0], mission);
|
||||
user.getMissionManager().updateDoingMissions(doingMissions);
|
||||
user.getMissionManager().updateOneDoingMissions(behaviorTypeValues[0][0], mission);
|
||||
CommonProto.Mission missionProto = MapLogic.getInstance().getMission(mission);
|
||||
eventUpdateResponse.addMission(missionProto);
|
||||
return true;
|
||||
|
|
|
@ -47,6 +47,11 @@ public class Mission extends MongoBase {
|
|||
this.missionInfos.put(xy, cell);
|
||||
}
|
||||
|
||||
public void removeMissionInfos(int xy) throws Exception {
|
||||
removeString(getMongoKey() + ".missionInfos." + xy);
|
||||
this.missionInfos.remove(xy);
|
||||
}
|
||||
|
||||
public String getMissionInfo() {
|
||||
return missionInfo;
|
||||
}
|
||||
|
|
|
@ -107,9 +107,7 @@ public class MissionLogic {
|
|||
if (mission.getMissionInfo() != null) {
|
||||
checkMissionReturn.newEventId = mission.getMissionInfo();
|
||||
}
|
||||
Map<Integer, Mission> doingMissions = user.getMissionManager().getDoingMissions();
|
||||
doingMissions.remove(mission.getMissionId());
|
||||
user.getMissionManager().updateDoingMissions(doingMissions);
|
||||
user.getMissionManager().removeDoingMissions(mission.getMissionId());
|
||||
Set<Integer> finishMissions = user.getMissionManager().getFinishMissions();
|
||||
finishMissions.add(mission.getMissionId());
|
||||
user.getMissionManager().updateFinishMissions(finishMissions);
|
||||
|
|
|
@ -35,16 +35,17 @@ public class MissionManager extends MongoBase {
|
|||
return takeRewardMissions;
|
||||
}
|
||||
|
||||
public void updateDoingMissions(Map<Integer, Mission> doingMissions) throws Exception {
|
||||
this.doingMissions = doingMissions;
|
||||
updateString( "doingMissions", doingMissions);
|
||||
}
|
||||
|
||||
public void updateOneDoingMissions(int missionId, Mission mission) throws Exception {
|
||||
mission.init(this.getRootId(), getMongoKey() + ".doingMissions." + missionId);
|
||||
this.doingMissions.put(missionId, mission);
|
||||
updateString( "doingMissions." + missionId, mission);
|
||||
}
|
||||
|
||||
public void removeDoingMissions(int missionId) throws Exception {
|
||||
this.doingMissions.remove(missionId);
|
||||
removeString( getMongoKey() + ".doingMissions." + missionId);
|
||||
}
|
||||
|
||||
public void updateFinishMissions(Set<Integer> finishMissions) throws Exception {
|
||||
this.finishMissions = finishMissions;
|
||||
updateString( "finishMissions", finishMissions);
|
||||
|
|
Loading…
Reference in New Issue