鸿蒙在修复

master_otnew
grimm 2023-12-26 15:47:42 +08:00
parent 91bf71e612
commit 3c5a876c6b
12 changed files with 57 additions and 51 deletions

View File

@ -159,7 +159,7 @@ public class ArenaChallengeHandler extends BaseHandler<ArenaInfoProto.ArenaChall
int position = info.getPosition();
Hero hero = user.getHeroManager().getHero(heroId);
builderHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel(user.getHeroManager()));
builderHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel());
heroes[position-1] = builderHero.toString();
}
PokemonManager pokemonManager = user.getPokemonManager();
@ -187,7 +187,7 @@ public class ArenaChallengeHandler extends BaseHandler<ArenaInfoProto.ArenaChall
int position = info.getPosition();
Hero hero = defUser.getHeroManager().getHero(heroId);
builderHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel(defUser.getHeroManager()));
builderHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel());
defHeroes[position-1] = builderHero.toString();
}

View File

@ -2332,7 +2332,7 @@ public class MapLogic {
response.addOpenMapId(map);
}
for (Map.Entry<String, Hero> heroEntry : heroManager.getEndlessHeroInfo().entrySet()) {
if (heroEntry.getValue().getLevel(user.getHeroManager()) < 20) {
if (heroEntry.getValue().getLevel() < 20) {
continue;
}
if (endlessHeroInfo.get(heroEntry.getKey()) == null) {
@ -2744,7 +2744,7 @@ public class MapLogic {
skinId = 0;
skinTime = 0;
}
TrailHero trailHero = new TrailHero(hero.getTemplateId(), HeroLogic.getInstance().calHeroNotBufferAttribute(user, hero, false, 0), hero.getStar(), heroSkill, hero.getLevel(user.getHeroManager()), hero.getGodSoulLv(),hero.getPropertyId());
TrailHero trailHero = new TrailHero(hero.getTemplateId(), HeroLogic.getInstance().calHeroNotBufferAttribute(user, hero, false, 0), hero.getStar(), heroSkill, hero.getLevel(), hero.getGodSoulLv(),hero.getPropertyId());
trailHero.setSkinId(skinId);
trailHero.setSkinTime(skinTime);
trailHero.setPosition(saveHero.getPosition());

View File

@ -63,7 +63,7 @@ public class Cmd_fixsj extends GmAbstract {
if(entry.getValue().get(hero.getTemplateId())<1){
continue;
}
if(hero.getLevel(heroManager)!=1){
if(hero.getLevel()!=1){
continue;
}
if(hero.getStar()!= SCHero.getsCHero().get(hero.getTemplateId()).getStar()){

View File

@ -67,7 +67,7 @@ public class BloodLogic {
}
}
int position = heroInfo.getPosition();
heroAllAttribute.put(heroInfo.getHeroId(), new FamilyHeroInfo(hero.getTemplateId(), hero.getLevel(user.getHeroManager()),hero.getStar(), heroAttributeMap,position,hero.getGodSoulLv(),hero.getPropertyId()));
heroAllAttribute.put(heroInfo.getHeroId(), new FamilyHeroInfo(hero.getTemplateId(), hero.getLevel(),hero.getStar(), heroAttributeMap,position,hero.getGodSoulLv(),hero.getPropertyId()));
}
return heroAllAttribute;
}

View File

@ -219,7 +219,10 @@ public class Hero extends MongoBase implements Comparable<Hero>,Cloneable {
/**
* 鸿鸿
*/
public int getLevel(HeroManager heroManager) {
public int getLevel() {
try {
int rootId = getRootId();
HeroManager heroManager = UserManager.getUser(rootId).getHeroManager();
// 英雄 配置表信息
SCHero scHero = SCHero.getsCHero().get(templateId);
int maxLevel = scHero.getMaxLevel();
@ -244,6 +247,9 @@ public class Hero extends MongoBase implements Comparable<Hero>,Cloneable {
return Math.min(hongMengAddAttribute.value, maxLevel);
}
}
} catch (Exception e) {
LOGGER.error("获取鸿蒙阵等级报错:{}",e.getMessage());
}
return level;
}
@ -316,11 +322,11 @@ public class Hero extends MongoBase implements Comparable<Hero>,Cloneable {
// 英雄在共鸣池中
if (heroManager.getHongmengTablet() > 0){
if (heroManager.getResonances().containsValue(id) || heroManager.getHongmengGuards().containsValue(id)) {
return HeroLogic.getInstance().calRobotBreakByLevel(templateId, getLevel(heroManager));
return HeroLogic.getInstance().calRobotBreakByLevel(templateId, getLevel());
}
}else{
if (heroManager.getResonances().containsValue(id)) {
return HeroLogic.getInstance().calRobotBreakByLevel(templateId, getLevel(heroManager));
return HeroLogic.getInstance().calRobotBreakByLevel(templateId, getLevel());
}
}
return breakId;

View File

@ -259,10 +259,10 @@ public class ExpeditionLogic {
//移除已经删除的hero
Set<String> removeId = heroHP.keySet().stream().filter(k -> {
if(heroMap.containsKey(k)) {
return heroMap.get(k).getLevel(user.getHeroManager()) < 20;
return heroMap.get(k).getLevel() < 20;
}
if(heroMapTemp.containsKey(k)) {
return heroMapTemp.get(k).getLevel(user.getHeroManager()) < 20;
return heroMapTemp.get(k).getLevel() < 20;
}
return !heroMap.containsKey(k) && !heroMapTemp.containsKey(k);
}).collect(Collectors.toSet());
@ -856,7 +856,7 @@ public class ExpeditionLogic {
}
}
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(),hero.getLevel(user.getHeroManager()), heroAttributeMap).toString();
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(),hero.getLevel(), heroAttributeMap).toString();
CommonProto.FightUnitInfo heroFightInfo = CommonProto.FightUnitInfo
.newBuilder()
.setUnitId(Integer.toString(hero.getTemplateId()))

View File

@ -357,7 +357,7 @@ public class FightUtil {
}
private static void getHeroPropertyBuid(User user, List<CommonProto.FightUnitInfo> heroFightInfos, TeamPosHeroInfo teamPosHeroInfo, Hero hero, Map<Integer, Long> heroAttributeMap, StringBuilder propertySb, String heroSkill) {
getHeroPropertyBuid2(heroFightInfos, teamPosHeroInfo, hero, heroAttributeMap, propertySb, heroSkill, hero.getLevel(user.getHeroManager()), hero.getStar(), hero.getGodSoulLv());
getHeroPropertyBuid2(heroFightInfos, teamPosHeroInfo, hero, heroAttributeMap, propertySb, heroSkill, hero.getLevel(), hero.getStar(), hero.getGodSoulLv());
}
private static void getHeroPropertyBuid2(List<CommonProto.FightUnitInfo> heroFightInfos, TeamPosHeroInfo teamPosHeroInfo, Hero hero, Map<Integer, Long> heroAttributeMap, StringBuilder propertySb, String heroSkill, int level, int star, int godSoulLv) {
@ -443,7 +443,7 @@ public class FightUtil {
StringBuilder skillSb = new StringBuilder();
StringBuilder propertySb = new StringBuilder();
String heroSkill = HeroLogic.getInstance().getHeroSkills(user, hero, skillSb).toString();
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(user.getHeroManager()), heroAttributeMap).toString();
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(), heroAttributeMap).toString();
CommonProto.FightUnitInfo heroFightInfo = CommonProto.FightUnitInfo
.newBuilder()
.setUnitId(Integer.toString(hero.getTemplateId()))
@ -612,7 +612,7 @@ public class FightUtil {
StringBuilder skillSb = new StringBuilder();
String heroSkill = HeroLogic.getInstance().getHeroSkills(userByRpc, hero, skillSb).toString();
Map<Integer, Long> attributeMap = HeroLogic.getInstance().calHeroNotBufferAttribute(userByRpc, hero, false, teamId);
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(userByRpc.getHeroManager()), attributeMap).toString();
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(), attributeMap).toString();
CommonProto.FightUnitInfo heroFightInfo = CommonProto.FightUnitInfo
.newBuilder()
.setUnitId(Integer.toString(hero.getTemplateId()))
@ -663,7 +663,7 @@ public class FightUtil {
StringBuilder stringBuilder = new StringBuilder();
StringBuilder propertySb = new StringBuilder();
String heroSkill = HeroLogic.getInstance().getYuxuHeroSkills(user, hero, yuxuHero,stringBuilder).toString();
getHeroPropertyBuid2(heroFightInfos, teamPosHeroInfo, hero, heroAttributeMap, propertySb, heroSkill, yuxuHero.getLevel(user.getHeroManager()), yuxuHero.getStar(), yuxuHero.getGodSoulLv());
getHeroPropertyBuid2(heroFightInfos, teamPosHeroInfo, hero, heroAttributeMap, propertySb, heroSkill, yuxuHero.getLevel(), yuxuHero.getStar(), yuxuHero.getGodSoulLv());
}
//玉虚不继承任何英雄外的技能
return CommonProto.FightTeamInfo.

View File

@ -57,7 +57,7 @@ public enum PassiveskillCalEnum {
float[] value = config.getValue();
int battlePropertyId = (int) value[0];
SPropertyConfig sPropertyConfig = SPropertyConfig.getsPropertyConfigByBattlePID(battlePropertyId);
int level = hero.getLevel(user.getHeroManager());
int level = hero.getLevel();
int times=level-100;
if(times<=0){
return;

View File

@ -235,7 +235,7 @@ public class HardStageLogic {
}
}
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(user.getHeroManager()), heroAttributeMap).toString();
String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getPropertyId(), hero.getLevel(), heroAttributeMap).toString();
CommonProto.FightUnitInfo heroFightInfo = CommonProto.FightUnitInfo
.newBuilder()
.setUnitId(Integer.toString(hero.getTemplateId()))

View File

@ -1391,7 +1391,7 @@ public class HeroLogic {
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
}
int oldLevel = hero.getLevel(user.getHeroManager());
int oldLevel = hero.getLevel();
//判断需要进行升级还是进行突破
Map<Integer, SCHeroRankUpConfig> scHeroRankUpConfigByType = STableManager.getFigureConfig(HeroStaticConfig.class).getScHeroRankUpConfigByShow(GlobalsDef.BREAK_TYPE, scHero.getStar());
SCHeroRankUpConfig scHeroRankUpConfig = null;
@ -1419,7 +1419,7 @@ public class HeroLogic {
}
breakId = scHeroRankUpConfig.getId();
} else {
if (hero.getLevel(user.getHeroManager()) > targetLevel) {
if (hero.getLevel() > targetLevel) {
throw new ErrorCodeException(ErrorCode.newDefineCode("level wrong"));
}
for (; oldLevel < targetLevel; oldLevel++) {
@ -1450,7 +1450,7 @@ public class HeroLogic {
//校验消耗
boolean result = ItemUtil.itemCost(user, consumeMap, BIReason.UP_HERO_LEVEL_CONSUME, hero.getTemplateId());
if (!result) {
int heroLevel = hero.getLevel(user.getHeroManager());
int heroLevel = hero.getLevel();
for (; oldLevel < targetLevel; oldLevel++) {
SHeroLevlConfig sHeroLevlConfig = SHeroLevlConfig.getsCHero().get(oldLevel);
if (!ItemUtil.itemCost(user, sHeroLevlConfig.getConsume(), BIReason.UP_HERO_LEVEL_CONSUME, hero.getTemplateId())) {
@ -1505,7 +1505,7 @@ public class HeroLogic {
}
Map<Integer, SCHeroRankUpConfig> scHeroRankUpConfigByType = STableManager.getFigureConfig(HeroStaticConfig.class).getScHeroRankUpConfigByShow(GlobalsDef.UP_STAR_TYPE, scHero.getStar());
SCHeroRankUpConfig scHeroRankUpConfig = scHeroRankUpConfigByType.get(oldStar);
if (targetHero.getLevel(user.getHeroManager()) < scHeroRankUpConfig.getLimitLevel()) {
if (targetHero.getLevel() < scHeroRankUpConfig.getLimitLevel()) {
throw new ErrorCodeException(ErrorCode.HERO_LEVE_DOWN);
}
@ -1567,7 +1567,7 @@ public class HeroLogic {
if (reportConsumeHero.length() > 0) {
reportConsumeHero.append("|");
}
reportConsumeHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel(user.getHeroManager()));
reportConsumeHero.append(hero.getTemplateId()).append("-").append(hero.getStar()).append("-").append(hero.getLevel());
if (1 == isSame && hero.getTemplateId() != targetHero.getTemplateId()) {
throw new ErrorCodeException(ErrorCode.HERO_UN_MATCH);
@ -1738,7 +1738,7 @@ public class HeroLogic {
Map<Integer, Long> result = new HashMap<>();
int templateId = hero.getTemplateId();
SCHero scHero = SCHero.getsCHero().get(templateId);
SHeroLevlConfig sHeroLevlConfig = SHeroLevlConfig.getsCHero().get(hero.getLevel(user.getHeroManager()));
SHeroLevlConfig sHeroLevlConfig = SHeroLevlConfig.getsCHero().get(hero.getLevel());
int[][] characterLevelPara = sHeroLevlConfig.getCharacterLevelPara();
Map<Integer, Object> paraForHero = getParaForHero(user, hero);
Map<Integer, Float> baseValueMap = new HashMap<>();
@ -1959,7 +1959,7 @@ public class HeroLogic {
private Map<Integer, Object> getParaForHero(User user, Hero hero) {
SCHero scHero = SCHero.getsCHero().get(hero.getTemplateId());
return getParaRate(scHero, hero.getStar(), hero.getLevel(user.getHeroManager()), hero.getBreakIdByHongMeng(user.getHeroManager()));
return getParaRate(scHero, hero.getStar(), hero.getLevel(), hero.getBreakIdByHongMeng(user.getHeroManager()));
}
private Map<Integer, Object> getParaForRobotHero(SCHero scHero, int level, int breakId) {
@ -2473,7 +2473,7 @@ public class HeroLogic {
} else {
heroAttributeMap = calHeroFinalAttributeWhenInMap(user, hero, false, teamId);
}
return getHeroPropertyBuilder(sb, hero.getPropertyId(), hero.getLevel(user.getHeroManager()), heroAttributeMap);
return getHeroPropertyBuilder(sb, hero.getPropertyId(), hero.getLevel(), heroAttributeMap);
}
public StringBuilder getHeroPropertyBuilder(StringBuilder sb, int propertyId, int heroLevel, Map<Integer, Long> heroAttributeMap) {
@ -4588,7 +4588,7 @@ public class HeroLogic {
itemId.add(item.getItemId());
itemNum.add((int) item.getItemNum());
});
ReportUtil.onReportEvent(user, ReportEventEnum.HERO_COMPOSITION.getType(), String.valueOf(hero.getTemplateId()), hero.getLevel(user.getHeroManager()), hero.getStar(), itemId, itemNum);
ReportUtil.onReportEvent(user, ReportEventEnum.HERO_COMPOSITION.getType(), String.valueOf(hero.getTemplateId()), hero.getLevel(), hero.getStar(), itemId, itemNum);
}
/**
@ -6356,13 +6356,13 @@ public class HeroLogic {
int num = Math.min(heroManager.getHeroMap().size(), averageNum);
// 获取玩家全部英雄
List<Hero> heroes = heroManager.getHeroMap().values().stream()
.sorted(Comparator.comparing(v -> v.getLevel(heroManager), Comparator.reverseOrder()))
.sorted(Comparator.comparing(v -> v.getLevel(), Comparator.reverseOrder()))
.collect(Collectors.toList())
.subList(0, num);
// 等级相加
int count = 0;
for (int i = 0; i < num; i++) {
count += heroes.get(i).getLevel(heroManager);
count += heroes.get(i).getLevel();
}
// 避免zero异常
if (count == 0) {

View File

@ -779,7 +779,7 @@ public class PlayerLogic {
teamOneTeamInfo.addTeam(CommonProto.TeamSimpleInfo.newBuilder()
.setHeroid(hero.getId())
.setHeroTid(hero.getTemplateId())
.setLevel(yuxuHero.getLevel(user.getHeroManager()))
.setLevel(yuxuHero.getLevel())
.setStar(yuxuHero.getStar())
.setPosition(heroInfo.getPosition())
.setSkinId(hero.getSkin())

View File

@ -357,7 +357,7 @@ public class CBean2Proto {
.newBuilder()
.setId(hero.getId())
.setHeroId(hero.getTemplateId())
.setLevel(hero.getOriginalLevel())
.setLevel(hero.getLevel())
.setStar(hero.getStar())
.setBreakId(hero.getBreakId())
.setStarBreakId(hero.getStarBreakId())
@ -1039,7 +1039,7 @@ public class CBean2Proto {
return CommonProto.TeamSimpleInfo.newBuilder()
.setHeroid(hero.getId())
.setHeroTid(hero.getTemplateId())
.setLevel(hero.getLevel(user.getHeroManager()))
.setLevel(hero.getLevel())
.setStar(hero.getStar())
.setPosition(position)
.setSkinId(hero.getSkin())