修改魂印计算属性

back_recharge
wangyuan 2020-04-15 14:51:11 +08:00
parent 734b7cb055
commit 322f1735b7
2 changed files with 29 additions and 5 deletions

View File

@ -999,6 +999,14 @@ public class HeroLogic{
}
}
}
//魂印
Map<Integer, Integer> soulEquipByPositionMap = hero.getSoulEquipByPositionMap();
Map<Integer, SEquipConfig> config = STableManager.getConfig(SEquipConfig.class);
soulEquipByPositionMap.values().forEach(e->{
if(config.get(e).getPassiveSkill()!=0){
skillList.add(config.get(e).getPassiveSkill());
}
});
//法宝技能
int[] equipTalismana = tempHero.getEquipTalismana();
if(hero.getStar()<equipTalismana[0]){
@ -1017,8 +1025,11 @@ public class HeroLogic{
public StringBuilder getHeroSkills(User user,Hero hero, StringBuilder sb){
List<Integer> heroSkillList = getHeroSkillList(user, hero);
heroSkillList.forEach(skillId->{
sb.append(skillId).append(DIVISION);
heroSkillList.forEach(skill->{
SPassiveSkillLogicConfig config = SPassiveSkillLogicConfig.getConfig(skill);
if(config!=null &&config.getEffectiveRange()==1){
sb.append(skill).append(DIVISION);
}
});
return sb;
}
@ -1301,6 +1312,12 @@ public class HeroLogic{
combinedAttribute(property,heroAllAttribute);
}
Map<Integer, Integer> soulEquipByPositionMap = hero.getSoulEquipByPositionMap();
Map<Integer, SEquipConfig> equipConfigMap = STableManager.getConfig(SEquipConfig.class);
soulEquipByPositionMap.values().forEach(e->{
combinedAttribute( equipConfigMap.get(e).getProperty(),heroAllAttribute);
});
//阵营光环加成
if(!isForce){
if(teamId!=0){
@ -1312,6 +1329,7 @@ public class HeroLogic{
}
}
}
//被动技能加成
List<Integer> heroSkillList = CombatLogic.getInstance().passiveskillEffect(user, hero,teamId);
Map<Integer, Integer> heroSkillAdMap = new HashMap<>();
@ -1328,9 +1346,9 @@ public class HeroLogic{
}
calInteractAdd(heroAllAttribute);
heroSkillList.forEach(skill->{
SPassiveSkillLogicConfig config = SPassiveSkillLogicConfig.getConfig(skill);
if(config.getValue()[2] ==4){
PassiveskillCalEnum.calEnumMap.get(config.getType()).getPassiveSkillProcessor().process(config,hero,heroAllAttribute,heroSkillAdMap);
SPassiveSkillLogicConfig configTmp = SPassiveSkillLogicConfig.getConfig(skill);
if(configTmp.getValue()[2] ==4){
PassiveskillCalEnum.calEnumMap.get(configTmp.getType()).getPassiveSkillProcessor().process(configTmp,hero,heroAllAttribute,heroSkillAdMap);
}
});
if(!heroSkillAdMap.isEmpty()){

View File

@ -19,6 +19,8 @@ public class SEquipConfig implements BaseConfig {
private int[] propertyMin;
private int[][] property;
private int[] propertyMax;
private int[] pool;
@ -160,4 +162,8 @@ public class SEquipConfig implements BaseConfig {
public int getPassiveSkill() {
return passiveSkill;
}
public int[][] getProperty() {
return property;
}
}