鸿蒙阵breaId修复
parent
986d8049f1
commit
46d3b765e2
|
@ -170,7 +170,7 @@ public class Hero extends MongoBase {
|
|||
// 如果鸿蒙碑开启 返回鸿蒙系统中神将返回鸿蒙碑等级
|
||||
if (heroManager.getHongmengTablet() > 0){
|
||||
// 存在共鸣或者使者
|
||||
if (heroManager.getResonances().values().contains(id) ||heroManager.getHongmengGuards().values().contains(id)) {
|
||||
if (heroManager.getResonances().values().contains(id) || heroManager.getHongmengGuards().values().contains(id)) {
|
||||
// 鸿蒙碑超过等级上限,返回鸿蒙碑等级
|
||||
if (heroManager.getHongmengTablet() <= config.getOpenLevel()){
|
||||
return heroManager.getHongmengTablet();
|
||||
|
@ -274,7 +274,7 @@ public class Hero extends MongoBase {
|
|||
*/
|
||||
public int getBreakIdByHongMeng(HeroManager heroManager){
|
||||
// 英雄在共鸣池中
|
||||
if (heroManager.getResonances().values().contains(id)) {
|
||||
if (heroManager.getResonances().values().contains(id) || heroManager.getHongmengGuards().values().contains(id)) {
|
||||
return HeroLogic.getInstance().calRobotBreaByLevel(templateId, getLevel(heroManager));
|
||||
}
|
||||
return breakId;
|
||||
|
|
|
@ -1261,15 +1261,28 @@ public class HeroLogic{
|
|||
*/
|
||||
public int calRobotBreaByLevel(int heroTid,int heroLevel){
|
||||
SCHero scHero = SCHero.getsCHero().get(heroTid);
|
||||
int star = scHero.getStar();
|
||||
Map<Integer, SCHeroRankUpConfig> scHeroRankUpConfigByType = STableManager.getFigureConfig(HeroStaticConfig.class).getScHeroRankUpConfigByShow(GlobalsDef.BREAK_TYPE,scHero.getStar());
|
||||
if(scHeroRankUpConfigByType == null){
|
||||
return 0;
|
||||
}
|
||||
for(SCHeroRankUpConfig scHeroRankUpConfig : scHeroRankUpConfigByType.values()){
|
||||
if (heroLevel >= scHeroRankUpConfig.getLimitLevel() && heroLevel <= scHeroRankUpConfig.getOpenLevel()){
|
||||
return scHeroRankUpConfig.getId();
|
||||
// 排序
|
||||
Set<Map.Entry<Integer, SCHeroRankUpConfig>> entries = scHeroRankUpConfigByType.entrySet();
|
||||
ArrayList<Map.Entry<Integer, SCHeroRankUpConfig>> list = new ArrayList<>(entries);
|
||||
Collections.sort(list, new Comparator<Map.Entry<Integer, SCHeroRankUpConfig>>() {
|
||||
@Override
|
||||
public int compare(Map.Entry<Integer, SCHeroRankUpConfig> o1, Map.Entry<Integer, SCHeroRankUpConfig> o2) {
|
||||
//逆序 就用后面的参数 - 前面的参数
|
||||
return o2.getValue().getOpenLevel() - o1.getValue().getOpenLevel();
|
||||
}
|
||||
});
|
||||
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
Map.Entry<Integer, SCHeroRankUpConfig> entry = list.get(i);
|
||||
SCHeroRankUpConfig value = entry.getValue();
|
||||
if (heroLevel >= value.getOpenLevel()){
|
||||
return value.getId();
|
||||
}
|
||||
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue