战力前后端不一致 bug

back_recharge
jiahuiwen 2022-03-29 10:10:06 +08:00
parent 18c2ef0b7b
commit 02134b84c8
3 changed files with 13 additions and 12 deletions

View File

@ -56,7 +56,7 @@ public class Hero extends MongoBase implements Comparable<Hero>,Cloneable {
private int godSoulLv;
private int propertyId;
private int propertyId; // 阵营id人 佛 妖 道)
//被神魂绑定英雄 英雄动态id:英雄神魂等级(反绑)
private Map<String,Integer>godSoulBeBindMap=new HashMap<>();
@ -478,6 +478,10 @@ public class Hero extends MongoBase implements Comparable<Hero>,Cloneable {
}
public int getPropertyId() {
if (propertyId == 0) {
SCHero scHero = SCHero.getsCHero().get(templateId);
return scHero.getPropertyName();
}
return propertyId;
}

View File

@ -833,32 +833,29 @@ public class CombatLogic {
List<TeamPosHeroInfo> teamPosHeroInfos = user.getTeamPosManager().getTeamPosForHero().get(teamId);
//找出上场的Id
List<Integer> heroFind = new ArrayList<>(teamPosHeroInfos.size());
List<Hero> heroFind = new ArrayList<>(teamPosHeroInfos.size());
for(TeamPosHeroInfo key :teamPosHeroInfos){
// 大闹天宫
if(teamId==TeamEnum.EXPEDITION_TEAM.getTeamId()&&user.getExpeditionManager().getHeroMap().containsKey(key.getHeroId())){
heroFind.add(user.getExpeditionManager().getHeroMap().get(key.getHeroId()).getTemplateId());
heroFind.add(user.getExpeditionManager().getHeroMap().get(key.getHeroId()));
continue;
}
// 四灵试炼
if (FourChallengeLogic.isFourChallengeTeam(teamId)){
HelpHero helpHero = HelpHeroLogic.getHelpHeroByHeroId(user.getId(), key.getHeroId());
if (helpHero != null){
heroFind.add(helpHero.getHero().getTemplateId());
heroFind.add(helpHero.getHero());
continue;
}
}
Hero hero = user.getHeroManager().getHero(key.getHeroId());
heroFind.add(hero.getTemplateId());
heroFind.add(hero);
}
Map<Integer,Integer> propertiesMap = new HashMap<>();
for(Integer heroId:heroFind){
if(null==SCHero.sCHero.get(heroId)){
LOGGER.error("Exception ::::"+heroId);
}
int propertyName = SCHero.sCHero.get(heroId).getPropertyName();
propertiesMap.put(propertyName,propertiesMap.getOrDefault(propertyName,0)+1);
for (Hero hero : heroFind) {
int propertyName = hero.getPropertyId();
propertiesMap.put(propertyName, propertiesMap.getOrDefault(propertyName, 0) + 1);
}
propertiesMap = sortByValueDescending(propertiesMap);
// for(Map.Entry<Integer,Integer> entry :propertiesMap.entrySet()){

View File

@ -108,7 +108,7 @@ public enum PassiveskillCalEnum {
if (localHero==null) {
continue;
}
if(hero.getPropertyId()==value[0]){
if(localHero.getPropertyId()==value[0]){
haveNum++;
}
}