Removed stream usage from AcquireSkillList serverpacket.

This commit is contained in:
MobiusDevelopment
2023-01-08 12:04:08 +00:00
parent 03b65b170b
commit a2d05fbf2d
26 changed files with 320 additions and 94 deletions

View File

@ -17,9 +17,8 @@
package org.l2jmobius.gameserver.network.serverpackets;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import org.l2jmobius.gameserver.data.xml.SkillTreeData;
import org.l2jmobius.gameserver.model.SkillLearn;
@ -61,7 +60,7 @@ public class AcquireSkillList extends ServerPacket
for (SkillLearn skill : _learnable)
{
writeInt(skill.getSkillId());
writeInt(skill.getSkillLevel()); // Main writeD, Essence writeH.
writeInt(skill.getSkillLevel()); // Main writeInt, Essence writeShort.
writeLong(skill.getLevelUpSp());
writeByte(skill.getGetLevel());
writeByte(skill.getDualClassLevel());
@ -74,12 +73,21 @@ public class AcquireSkillList extends ServerPacket
writeLong(item.get(0).getCount());
}
final Collection<Skill> removeSkills = skill.getRemoveSkills().stream().map(_player::getKnownSkill).filter(Objects::nonNull).collect(Collectors.toList());
final List<Skill> removeSkills = new LinkedList<>();
for (int id : skill.getRemoveSkills())
{
final Skill removeSkill = _player.getKnownSkill(id);
if (removeSkill != null)
{
removeSkills.add(removeSkill);
}
}
writeByte(removeSkills.size());
for (Skill removed : removeSkills)
{
writeInt(removed.getId());
writeInt(removed.getLevel()); // Main writeD, Essence writeH.
writeInt(removed.getLevel()); // Main writeInt, Essence writeShort.
}
}
}