map gm
parent
741c60fccf
commit
77a480f955
|
@ -1,5 +1,6 @@
|
|||
package com.ljsd.jieling.handler.GameGM;
|
||||
|
||||
import com.ljsd.jieling.config.SAccomplishmentConfig;
|
||||
import com.ljsd.jieling.config.SCHero;
|
||||
import com.ljsd.jieling.config.SCHeroRankUpConfig;
|
||||
import com.ljsd.jieling.config.SCMapConfig;
|
||||
|
@ -8,6 +9,9 @@ import com.ljsd.jieling.db.mongo.MongoUtil;
|
|||
import com.ljsd.jieling.globals.Global;
|
||||
import com.ljsd.jieling.globals.GlobalGm;
|
||||
import com.ljsd.jieling.handler.BaseHandler;
|
||||
import com.ljsd.jieling.handler.map.MapLogic;
|
||||
import com.ljsd.jieling.handler.map.MapManager;
|
||||
import com.ljsd.jieling.handler.map.MapMission;
|
||||
import com.ljsd.jieling.logic.dao.Hero;
|
||||
import com.ljsd.jieling.logic.dao.Mail;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
|
@ -22,9 +26,7 @@ import com.ljsd.jieling.util.TimeUtils;
|
|||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
@Component
|
||||
|
@ -87,14 +89,18 @@ public class GMRequestHandler extends BaseHandler{
|
|||
case GlobalGm.OPEN_MAP:
|
||||
SCMapConfig scMapConfig = SCMapConfig.getsCMapSize().get(100 + prarm1);
|
||||
Set<Integer> missionIds = new HashSet<>();
|
||||
MapManager mapManager = cUser.getMapManager();
|
||||
Map<Integer, MapMission> allMissionProgress = mapManager.getAllMissionProgress();
|
||||
int curMapId = mapManager.getCurMapId();
|
||||
if (scMapConfig != null) {
|
||||
for (int i = 0; i <= prarm1; i++) {
|
||||
for (int i = 1; i <= prarm1; i++) {
|
||||
int mapId = 100 + i;
|
||||
SCMapConfig crossMap = SCMapConfig.getsCMapSize().get(mapId);
|
||||
cUser.getPlayerInfoManager().setMapId(mapId);
|
||||
if (crossMap.getOpenRule() != null && crossMap.getOpenRule().length > 0) {
|
||||
missionIds.add(crossMap.getOpenRule()[0]);
|
||||
}
|
||||
initFininshMapMission(mapManager,mapId);
|
||||
}
|
||||
}
|
||||
cUser.getMissionManager().updateFinishMissions(missionIds);
|
||||
|
@ -123,4 +129,22 @@ public class GMRequestHandler extends BaseHandler{
|
|||
itemMap.put(itemId,itemNum);
|
||||
ItemUtil.addItem(cUser,itemMap,dropBuilder);
|
||||
}
|
||||
|
||||
private void initFininshMapMission( MapManager mapManager,int mapId){
|
||||
List<SAccomplishmentConfig> sAccomplishmentConfigs = SAccomplishmentConfig.getsAccomplishmentConfigByMapId(mapId);
|
||||
if( sAccomplishmentConfigs == null){
|
||||
return;
|
||||
}
|
||||
Map<Integer,Integer> missionProgress = new HashMap<>();
|
||||
int totalWeight = 0;
|
||||
for(SAccomplishmentConfig sAccomplishmentConfig : sAccomplishmentConfigs){
|
||||
int id = sAccomplishmentConfig.getId();
|
||||
int value = sAccomplishmentConfig.getValues()[1];
|
||||
missionProgress.put(id,value);
|
||||
totalWeight+=sAccomplishmentConfig.getScore();
|
||||
}
|
||||
MapMission mapMission = new MapMission(mapId,missionProgress);
|
||||
mapMission.setTotalWeight(totalWeight);
|
||||
mapManager.addMapMission(mapMission);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue