Make use of LinkedList for SkillTreeData results.

This commit is contained in:
MobiusDevelopment
2023-01-08 10:55:12 +00:00
parent 1f0c68dc1d
commit 7f1d8a5dc2
31 changed files with 542 additions and 543 deletions

View File

@@ -17,7 +17,6 @@
package org.l2jmobius.gameserver.data.xml;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
@@ -524,7 +523,7 @@ public class SkillTreeData implements IXmlReader
*/
private List<SkillLearn> getAvailableSkills(Player player, ClassId classId, boolean includeByFs, boolean includeAutoGet, boolean includeRequiredItems, ISkillsHolder holder)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
final Map<Integer, SkillLearn> skills = getCompleteClassSkillTree(classId);
if (skills.isEmpty())
{
@@ -604,7 +603,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableAutoGetSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
final Map<Integer, SkillLearn> skills = getCompleteClassSkillTree(player.getClassId());
if (skills.isEmpty())
{
@@ -647,7 +646,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableFishingSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
final Race playerRace = player.getRace();
for (SkillLearn skill : _fishingSkillTree.values())
{
@@ -683,7 +682,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableCollectSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
for (SkillLearn skill : _collectSkillTree.values())
{
final Skill oldSkill = player.getSkills().get(skill.getSkillId());
@@ -709,7 +708,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableTransferSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
ClassId classId = player.getClassId();
// If new classes are implemented over 3rd class, a different way should be implemented.
if (classId.level() == 3)
@@ -740,7 +739,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableTransformSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
final Race race = player.getRace();
for (SkillLearn skill : _transformSkillTree.values())
{
@@ -770,7 +769,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailablePledgeSkills(Clan clan)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
for (SkillLearn skill : _pledgeSkillTree.values())
{
if (!skill.isResidencialSkill() && (clan.getLevel() >= skill.getGetLevel()))
@@ -837,7 +836,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableSubPledgeSkills(Clan clan)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
for (SkillLearn skill : _subPledgeSkillTree.values())
{
if ((clan.getLevel() >= skill.getGetLevel()) && clan.isLearnableSubSkill(skill.getSkillId(), skill.getSkillLevel()))
@@ -855,7 +854,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableSubClassSkills(Player player)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
for (SkillLearn skill : _subClassSkillTree.values())
{
if (player.getLevel() >= skill.getGetLevel())
@@ -892,7 +891,7 @@ public class SkillTreeData implements IXmlReader
*/
public List<SkillLearn> getAvailableResidentialSkills(int residenceId)
{
final List<SkillLearn> result = new ArrayList<>();
final List<SkillLearn> result = new LinkedList<>();
for (SkillLearn skill : _pledgeSkillTree.values())
{
if (skill.isResidencialSkill() && skill.getResidenceIds().contains(residenceId))
@@ -1190,7 +1189,7 @@ public class SkillTreeData implements IXmlReader
}
// Race specific skills from Fishing and Transformation skill trees.
final List<Integer> list = new ArrayList<>();
final List<Integer> list = new LinkedList<>();
_skillsByRaceHashCodes = new HashMap<>(Race.values().length);
for (Race r : Race.values())
{