七界战斗
parent
8ba37641ba
commit
5d341b4a1c
|
@ -34,6 +34,7 @@ import java.util.stream.Collectors;
|
|||
* @author hj
|
||||
* 七界试炼挑战
|
||||
*/
|
||||
@SuppressWarnings("ALL")
|
||||
public class SevenWorldFightHandler implements IFightEventProcesor {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(SevenWorldFightHandler.class);
|
||||
|
||||
|
@ -188,16 +189,26 @@ public class SevenWorldFightHandler implements IFightEventProcesor {
|
|||
int monsterGroup = stage.getMonsterGroup();
|
||||
Map<Integer, List<CommonProto.FightUnitInfo>> monsterByGroup = FightUtil.makeMonsterGroup(monsterGroup);
|
||||
// 技能处理
|
||||
for (List<CommonProto.FightUnitInfo> value : monsterByGroup.values()) {
|
||||
for (CommonProto.FightUnitInfo info : value) {
|
||||
monsterSkills(user,stage,info);
|
||||
Map<Integer, List<CommonProto.FightUnitInfo>> map = new HashMap<>();
|
||||
// 遍历
|
||||
for (Map.Entry<Integer, List<CommonProto.FightUnitInfo>> entry : monsterByGroup.entrySet()) {
|
||||
List<CommonProto.FightUnitInfo> infos = new ArrayList<>();
|
||||
// 队伍信息
|
||||
for (CommonProto.FightUnitInfo info : entry.getValue()) {
|
||||
// 重新打包封装,因为需要处理技能
|
||||
CommonProto.FightUnitInfo.Builder builder = info.toBuilder();
|
||||
monsterSkills(user,stage,builder);
|
||||
infos.add(builder.build());
|
||||
}
|
||||
map.put(entry.getKey(),infos);
|
||||
}
|
||||
monsterByGroup.clear();
|
||||
monsterByGroup = null;
|
||||
// 灵兽
|
||||
List<CommonProto.FightUnitInfo> monsterPokemonByGroup = MonsterUtil.getMonsterPokemonByGroup(monsterGroup);
|
||||
List<CommonProto.FightTeamInfo> monsterTeamList = new ArrayList<>(nums);
|
||||
for(int i=0;i<nums;i++){
|
||||
List<CommonProto.FightTeamInfo> monsterGroupList = BehaviorUtil.getFightTeamInfos(monsterByGroup,monsterPokemonByGroup, i);
|
||||
List<CommonProto.FightTeamInfo> monsterGroupList = BehaviorUtil.getFightTeamInfos(map,monsterPokemonByGroup,i);
|
||||
monsterTeamList.addAll(monsterGroupList);
|
||||
}
|
||||
return monsterTeamList;
|
||||
|
@ -208,7 +219,7 @@ public class SevenWorldFightHandler implements IFightEventProcesor {
|
|||
* @param user
|
||||
* @param monster
|
||||
*/
|
||||
private static void monsterSkills(User user,SQijieStage stage, CommonProto.FightUnitInfo monster){
|
||||
private static void monsterSkills(User user,SQijieStage stage, CommonProto.FightUnitInfo.Builder monster){
|
||||
List<Integer> relicSkills = relicSkills(user, Integer.parseInt(monster.getUnitId()), monster.getPosition(), 0);
|
||||
StringBuilder str = new StringBuilder();
|
||||
// 原本的技能
|
||||
|
@ -224,7 +235,7 @@ public class SevenWorldFightHandler implements IFightEventProcesor {
|
|||
}
|
||||
// 遗物技能
|
||||
relicSkills.forEach(v->str.append(HeroLogic.DIVISION).append(v));
|
||||
monster.toBuilder().setUnitSkillIds(str.toString());
|
||||
monster.setUnitSkillIds(str.toString());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue