神将神魂绑定逻辑修改提交
parent
a389d200f5
commit
afa7a8932a
|
@ -37,14 +37,11 @@ public class HeroGodSoulBindRequestHandler extends BaseHandler<HeroInfoProto.Her
|
||||||
throw new ErrorCodeException(ErrorCode.GOD_SOUL_BIND);
|
throw new ErrorCodeException(ErrorCode.GOD_SOUL_BIND);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
upHero.setGodSoulBindMap(1,godSoulLv,bindHeroList);
|
||||||
for (String _bindHeroId : bindHeroList) {
|
for (String _bindHeroId : bindHeroList) {
|
||||||
Hero bindHero=heroManager.getHero(_bindHeroId);
|
Hero bindHero=heroManager.getHero(_bindHeroId);
|
||||||
bindHero.setGodSoulBeBindMap(1,heroId,godSoulLv);
|
bindHero.setGodSoulBeBindMap(1,heroId,godSoulLv);
|
||||||
}
|
}
|
||||||
upHero.setGodSoulBindMap(1,godSoulLv,bindHeroList);
|
|
||||||
for (String bindHeroId : bindHeroList) {
|
|
||||||
heroManager.getHero(bindHeroId).setGodSoulBeBindMap(1,heroId,godSoulLv);
|
|
||||||
}
|
|
||||||
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.HERO_GOD_SOUL_BIND_RESPONSE_VALUE, null,true);
|
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.HERO_GOD_SOUL_BIND_RESPONSE_VALUE, null,true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,12 +7,14 @@ import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import com.ljsd.jieling.logic.hero.HongMengAttributeEnum;
|
import com.ljsd.jieling.logic.hero.HongMengAttributeEnum;
|
||||||
import config.SLikeAbilityConfig;
|
import config.SLikeAbilityConfig;
|
||||||
import config.SSpecialConfig;
|
import config.SSpecialConfig;
|
||||||
import org.omg.CORBA.PUBLIC_MEMBER;
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
public class HeroManager extends MongoBase {
|
public class HeroManager extends MongoBase {
|
||||||
|
|
||||||
|
private static final Logger LOGGER = LoggerFactory.getLogger(HeroManager.class);
|
||||||
/**
|
/**
|
||||||
* 玩家英雄列表
|
* 玩家英雄列表
|
||||||
*/
|
*/
|
||||||
|
@ -252,13 +254,33 @@ public class HeroManager extends MongoBase {
|
||||||
if (heroMap.containsKey(heroId)){
|
if (heroMap.containsKey(heroId)){
|
||||||
removeString(getMongoKey()+".heroMap." + heroId);
|
removeString(getMongoKey()+".heroMap." + heroId);
|
||||||
Poster.getPoster().dispatchEvent(new RemoveHeroEvent(uid,heroId));
|
Poster.getPoster().dispatchEvent(new RemoveHeroEvent(uid,heroId));
|
||||||
|
removeHeroGodSoul(heroId);
|
||||||
heroMap.remove(heroId);
|
heroMap.remove(heroId);
|
||||||
try {
|
try {
|
||||||
if(UserManager.getUser(uid).getPlayerInfoManager().getMaxforceHero().equals(heroId)){
|
if(UserManager.getUser(uid).getPlayerInfoManager().getMaxforceHero().equals(heroId)){
|
||||||
UserManager.getUser(uid).getPlayerInfoManager().setMaxforceHero("");
|
UserManager.getUser(uid).getPlayerInfoManager().setMaxforceHero("");
|
||||||
}
|
}
|
||||||
}catch (Exception e){}
|
}catch (Exception e){
|
||||||
|
LOGGER.info("removeHero uid={},heroId={},Exception={}",uid,heroId,e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
///移除英雄设置相关神魂信息
|
||||||
|
public void removeHeroGodSoul(String heroId){
|
||||||
|
Hero hero= heroMap.get(heroId);
|
||||||
|
Map<Integer, List<String>>godSoulBindMap=hero.getGodSoulBindMap();
|
||||||
|
for (Map.Entry<Integer, List<String>> integerListEntry : godSoulBindMap.entrySet()) {
|
||||||
|
List<String>heroList=integerListEntry.getValue();
|
||||||
|
for (String bindId : heroList) {
|
||||||
|
Hero bingHero= heroMap.get(bindId);
|
||||||
|
bingHero.setGodSoulBeBindMap(2,heroId,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Map<String,Integer>godSoulBeBindMap=hero.getGodSoulBeBindMap();
|
||||||
|
for (Map.Entry<String, Integer> stringIntegerEntry : godSoulBeBindMap.entrySet()) {
|
||||||
|
Hero bingHero= heroMap.get(stringIntegerEntry.getKey());
|
||||||
|
bingHero.setGodSoulBindMap(2,stringIntegerEntry.getValue(),null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue