Removed most unnecessary toArray conversions.

This commit is contained in:
MobiusDevelopment 2019-11-22 12:05:24 +00:00
parent 859a1720ce
commit e58550493c
36 changed files with 197 additions and 231 deletions

View File

@ -58,7 +58,7 @@ public class AdminCommands extends Thread
private static AdminCommands _instance;
private static ClientThread clientShut;
private static int secondsShut;
private static Skill[] adminSkills;
private static Collection<Skill> adminSkills;
private static String _characterToManipulate;
public static AdminCommands getInstance()
@ -1173,7 +1173,6 @@ public class AdminCommands extends Thread
{
PlayerInstance activeChar = client.getActiveChar();
PlayerInstance player = World.getInstance().getPlayer(_characterToManipulate);
Skill[] skills = player.getAllSkills();
NpcHtmlMessage adminReply = new NpcHtmlMessage(5);
StringBuffer replyMSG = new StringBuffer("<html><title>Remove skills of " + player.getName() + "</title>");
replyMSG.append("<body>");
@ -1184,7 +1183,7 @@ public class AdminCommands extends Thread
replyMSG.append("<center>Click on the skill you wish to remove:</center>");
replyMSG.append("<center><table>");
replyMSG.append("<tr><td><center>Name:</center></td><td></td><td>Lvl:</td><td></td><td>Id:</td></tr>");
for (Skill skill : skills)
for (Skill skill : player.getAllSkills())
{
replyMSG.append("<tr><td><a action=\"bypass -h admin_remove_skill " + skill.getId() + "\">" + skill.getName() + "</a></td><td></td><td>" + skill.getLevel() + "</td><td></td><td>" + skill.getId() + "</td></tr>");
}
@ -1236,16 +1235,15 @@ public class AdminCommands extends Thread
}
else
{
int i;
Skill[] skills = player.getAllSkills();
Collection<Skill> skills = player.getAllSkills();
adminSkills = activeChar.getAllSkills();
for (i = 0; i < adminSkills.length; ++i)
for (Skill skill : adminSkills)
{
activeChar.removeSkill(adminSkills[i]);
activeChar.removeSkill(skill);
}
for (i = 0; i < skills.length; ++i)
for (Skill skill : skills)
{
activeChar.addSkill(skills[i]);
activeChar.addSkill(skill);
}
SystemMessage smA = new SystemMessage(614);
smA.addString("You now have all the skills of " + player.getName() + ".");
@ -1266,23 +1264,22 @@ public class AdminCommands extends Thread
}
else
{
int i;
Skill[] skills = player.getAllSkills();
for (i = 0; i < skills.length; ++i)
Collection<Skill> skills = player.getAllSkills();
for (Skill skill : skills)
{
player.removeSkill(skills[i]);
player.removeSkill(skill);
}
for (i = 0; i < activeChar.getAllSkills().length; ++i)
for (Skill skill : activeChar.getAllSkills())
{
player.addSkill(activeChar.getAllSkills()[i]);
player.addSkill(skill);
}
for (i = 0; i < skills.length; ++i)
for (Skill skill : skills)
{
activeChar.removeSkill(skills[i]);
activeChar.removeSkill(skill);
}
for (i = 0; i < adminSkills.length; ++i)
for (Skill skill : adminSkills)
{
activeChar.addSkill(adminSkills[i]);
activeChar.addSkill(skill);
}
SystemMessage sm = new SystemMessage(614);
sm.addString("[GM]" + activeChar.getName() + " has updated your skills.");

View File

@ -21,6 +21,7 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;
@ -119,8 +120,8 @@ public class CharTemplateTable
return _templates.get(classId);
}
public CharTemplate[] getAllTemplates()
public Collection<CharTemplate> getAllTemplates()
{
return _templates.values().toArray(new CharTemplate[_templates.size()]);
return _templates.values();
}
}

View File

@ -23,6 +23,8 @@ import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -215,16 +217,18 @@ public class SkillTreeTable
return skill;
}
public SkillLearn[] getAvailableSkills(PlayerInstance cha)
public Collection<SkillLearn> getAvailableSkills(PlayerInstance cha)
{
List<SkillLearn> result = new ArrayList<>();
List<SkillLearn> skills = _skillTrees.get(cha.getClassId());
if (skills == null)
{
_log.warning("Skilltree for class " + cha.getClassId() + " is not defined !");
return new SkillLearn[0];
return Collections.emptyList();
}
Skill[] oldSkills = cha.getAllSkills();
// TODO: Remove toArray.
Skill[] oldSkills = cha.getAllSkills().toArray(new Skill[cha.getAllSkills().size()]);
for (int i = 0; i < skills.size(); ++i)
{
SkillLearn temp = skills.get(i);
@ -252,6 +256,6 @@ public class SkillTreeTable
}
result.add(temp);
}
return result.toArray(new SkillLearn[result.size()]);
return result;
}
}

View File

@ -120,8 +120,7 @@ public class CommunityBoardManager
}
htmlCode.append("<tr>" + title + "<td>" + name + "</td></tr>");
htmlCode.append("<tr><td><br></td></tr>");
ClanMember[] members = clan.getMembers();
for (ClanMember member : members)
for (ClanMember member : clan.getMembers())
{
if (member.getName() == clan.getLeaderName())
{

View File

@ -20,6 +20,7 @@ package org.l2jmobius.gameserver.model;
import java.io.File;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@ -99,25 +100,23 @@ public class Clan
_members.remove(name);
}
public ClanMember[] getMembers()
public Collection<ClanMember> getMembers()
{
return _members.values().toArray(new ClanMember[_members.size()]);
return _members.values();
}
public PlayerInstance[] getOnlineMembers(String exclude)
public Collection<PlayerInstance> getOnlineMembers(String exclude)
{
List<PlayerInstance> result = new ArrayList<>();
Iterator<ClanMember> iter = _members.values().iterator();
while (iter.hasNext())
for (ClanMember member : _members.values())
{
ClanMember temp = iter.next();
if (!temp.isOnline() || temp.getName().equals(exclude))
if (!member.isOnline() || member.getName().equals(exclude))
{
continue;
}
result.add(temp.getPlayerInstance());
result.add(member.getPlayerInstance());
}
return result.toArray(new PlayerInstance[result.size()]);
return result;
}
public int getAllyId()
@ -191,7 +190,6 @@ public class Clan
FileWriter out = null;
try
{
int i;
out = new FileWriter(clanFile);
out.write("#clanId;clanName;clanLevel;hasCastle;hasHideout;allianceId;allianceName\r\n");
out.write(getClanId() + ";");
@ -202,28 +200,27 @@ public class Clan
out.write(getAllyId() + ";");
out.write("none\r\n");
out.write("#memberName;memberLevel;classId;objectId\r\n");
ClanMember[] members = getMembers();
for (i = 0; i < members.length; ++i)
for (ClanMember member : getMembers())
{
if (members[i].getObjectId() != getLeaderId())
if (member.getObjectId() != getLeaderId())
{
continue;
}
out.write(members[i].getName() + ";");
out.write(members[i].getLevel() + ";");
out.write(members[i].getClassId() + ";");
out.write(members[i].getObjectId() + "\r\n");
out.write(member.getName() + ";");
out.write(member.getLevel() + ";");
out.write(member.getClassId() + ";");
out.write(member.getObjectId() + "\r\n");
}
for (i = 0; i < members.length; ++i)
for (ClanMember member : getMembers())
{
if (members[i].getObjectId() == getLeaderId())
if (member.getObjectId() == getLeaderId())
{
continue;
}
out.write(members[i].getName() + ";");
out.write(members[i].getLevel() + ";");
out.write(members[i].getClassId() + ";");
out.write(members[i].getObjectId() + "\r\n");
out.write(member.getName() + ";");
out.write(member.getLevel() + ";");
out.write(member.getClassId() + ";");
out.write(member.getObjectId() + "\r\n");
}
}
catch (Exception e)

View File

@ -18,6 +18,7 @@
package org.l2jmobius.gameserver.model;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
@ -56,9 +57,9 @@ public class Inventory
return _items.size();
}
public ItemInstance[] getItems()
public Collection<ItemInstance> getItems()
{
return _items.toArray(new ItemInstance[_items.size()]);
return _items;
}
public ItemInstance addItem(ItemInstance newItem)
@ -131,7 +132,7 @@ public class Inventory
refreshWeight();
}
public ItemInstance[] unEquipItemInBodySlot(int slot)
public Collection<ItemInstance> unEquipItemInBodySlot(int slot)
{
List<ItemInstance> unequipedItems = new ArrayList<>();
// _log.fine("--- unequip body slot:" + slot);
@ -196,8 +197,8 @@ public class Inventory
}
case 16384:
{
this.unEquipSlot(unequipedItems, 8);
this.unEquipSlot(7);
unEquipSlot(unequipedItems, 8);
unEquipSlot(7);
pdollSlot = 14;
break;
}
@ -216,21 +217,20 @@ public class Inventory
pdollSlot = 0;
}
}
this.unEquipSlot(unequipedItems, pdollSlot);
return unequipedItems.toArray(new ItemInstance[unequipedItems.size()]);
unEquipSlot(unequipedItems, pdollSlot);
return unequipedItems;
}
public ItemInstance[] unEquipItemOnPaperdoll(int pdollSlot)
public Collection<ItemInstance> unEquipItemOnPaperdoll(int pdollSlot)
{
List<ItemInstance> unequipedItems = new ArrayList<>();
// _log.fine("--- unequip body slot:" + pdollSlot);
if (pdollSlot == 14)
{
this.unEquipSlot(unequipedItems, 8);
this.unEquipSlot(7);
unEquipSlot(unequipedItems, 8);
unEquipSlot(7);
}
this.unEquipSlot(unequipedItems, pdollSlot);
return unequipedItems.toArray(new ItemInstance[unequipedItems.size()]);
unEquipSlot(unequipedItems, pdollSlot);
return unequipedItems;
}
public List<ItemInstance> equipItem(ItemInstance item)
@ -242,17 +242,17 @@ public class Inventory
case 16384:
{
ItemInstance arrow;
this.unEquipSlot(changedItems, 8);
ItemInstance old1 = this.unEquipSlot(14);
unEquipSlot(changedItems, 8);
ItemInstance old1 = unEquipSlot(14);
if (old1 != null)
{
changedItems.add(old1);
this.unEquipSlot(7);
this.unEquipSlot(changedItems, 8);
unEquipSlot(7);
unEquipSlot(changedItems, 8);
}
else
{
this.unEquipSlot(changedItems, 7);
unEquipSlot(changedItems, 7);
}
setPaperdollItem(7, item);
setPaperdollItem(14, item);
@ -267,25 +267,25 @@ public class Inventory
}
case 256:
{
ItemInstance old1 = this.unEquipSlot(14);
ItemInstance old1 = unEquipSlot(14);
if (old1 != null)
{
this.unEquipSlot(changedItems, 7);
unEquipSlot(changedItems, 7);
}
this.unEquipSlot(changedItems, 8);
unEquipSlot(changedItems, 8);
setPaperdollItem(8, item);
break;
}
case 128:
{
if (this.unEquipSlot(changedItems, 14))
if (unEquipSlot(changedItems, 14))
{
this.unEquipSlot(changedItems, 8);
this.unEquipSlot(7);
unEquipSlot(changedItems, 8);
unEquipSlot(7);
}
else
{
this.unEquipSlot(changedItems, 7);
unEquipSlot(changedItems, 7);
}
setPaperdollItem(7, item);
break;
@ -302,7 +302,7 @@ public class Inventory
setPaperdollItem(2, item);
break;
}
this.unEquipSlot(changedItems, 1);
unEquipSlot(changedItems, 1);
setPaperdollItem(1, item);
break;
}
@ -318,26 +318,26 @@ public class Inventory
setPaperdollItem(5, item);
break;
}
this.unEquipSlot(changedItems, 4);
unEquipSlot(changedItems, 4);
setPaperdollItem(4, item);
break;
}
case 8:
{
this.unEquipSlot(changedItems, 3);
unEquipSlot(changedItems, 3);
setPaperdollItem(3, item);
break;
}
case 32768:
{
this.unEquipSlot(changedItems, 10);
this.unEquipSlot(changedItems, 11);
unEquipSlot(changedItems, 10);
unEquipSlot(changedItems, 11);
setPaperdollItem(10, item);
break;
}
case 1024:
{
this.unEquipSlot(changedItems, 10);
unEquipSlot(changedItems, 10);
setPaperdollItem(10, item);
break;
}
@ -346,39 +346,39 @@ public class Inventory
ItemInstance chest = getPaperdollItem(10);
if ((chest != null) && (chest.getItem().getBodyPart() == 32768))
{
this.unEquipSlot(changedItems, 10);
unEquipSlot(changedItems, 10);
}
this.unEquipSlot(changedItems, 11);
unEquipSlot(changedItems, 11);
setPaperdollItem(11, item);
break;
}
case 4096:
{
this.unEquipSlot(changedItems, 12);
unEquipSlot(changedItems, 12);
setPaperdollItem(12, item);
break;
}
case 512:
{
this.unEquipSlot(changedItems, 9);
unEquipSlot(changedItems, 9);
setPaperdollItem(9, item);
break;
}
case 64:
{
this.unEquipSlot(changedItems, 6);
unEquipSlot(changedItems, 6);
setPaperdollItem(6, item);
break;
}
case 1:
{
this.unEquipSlot(changedItems, 0);
unEquipSlot(changedItems, 0);
setPaperdollItem(0, item);
break;
}
case 8192:
{
this.unEquipSlot(changedItems, 13);
unEquipSlot(changedItems, 13);
setPaperdollItem(13, item);
break;
}

View File

@ -57,7 +57,7 @@ public class Party
private PlayerInstance getRandomMember()
{
return (PlayerInstance) _members.toArray()[Rnd.get(_members.size())];
return _members.get(Rnd.get(_members.size()));
}
public boolean isLeader(PlayerInstance player)
@ -67,18 +67,16 @@ public class Party
public void broadcastToPartyMembers(ServerBasePacket msg)
{
for (int i = 0; i < _members.size(); ++i)
for (PlayerInstance member : _members)
{
PlayerInstance member = _members.get(i);
member.sendPacket(msg);
}
}
public void broadcastToPartyMembers(PlayerInstance player, ServerBasePacket msg)
{
for (int i = 0; i < _members.size(); ++i)
for (PlayerInstance member : _members)
{
PlayerInstance member = _members.get(i);
if (member.equals(player))
{
continue;

View File

@ -108,8 +108,7 @@ public class World
public void removeVisibleObject(WorldObject object)
{
_visibleObjects.remove(object.getObjectId());
Object[] temp = object.getKnownObjects().toArray();
for (Object element : temp)
for (Object element : object.getKnownObjects())
{
WorldObject temp1 = (WorldObject) element;
temp1.removeKnownObject(object);

View File

@ -114,11 +114,10 @@ public class WorldObject implements Serializable
public void removeAllKnownObjects()
{
WorldObject[] notifyList = _knownObjects.toArray(new WorldObject[_knownObjects.size()]);
_knownObjects.clear();
for (WorldObject element : notifyList)
for (WorldObject object : _knownObjects)
{
element.removeKnownObject(this);
object.removeKnownObject(this);
}
}

View File

@ -321,8 +321,7 @@ public class Attackable extends NpcInstance
dropit.setZ(getZ() + 100);
dropit.setOnTheGround(true);
DropItem dis = new DropItem(dropit, getObjectId());
Creature[] players = broadcastPacket(dis);
for (Creature player : players)
for (Creature player : broadcastPacket(dis))
{
((PlayerInstance) player).addKnownObjectWithoutCreate(dropit);
}

View File

@ -20,6 +20,7 @@ package org.l2jmobius.gameserver.model.actor;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Set;
import java.util.Timer;
@ -1024,16 +1025,14 @@ public abstract class Creature extends WorldObject
return distance;
}
public Creature[] broadcastPacket(ServerBasePacket mov)
public Collection<PlayerInstance> broadcastPacket(ServerBasePacket mov)
{
Set<PlayerInstance> list = getKnownPlayers();
Creature[] players = list.toArray(new Creature[list.size()]);
// _log.fine("players to notify:" + players.length + " packet:" + mov.getType());
for (Creature player : players)
Set<PlayerInstance> nearby = getKnownPlayers();
for (Creature player : nearby)
{
player.sendPacket(mov);
}
return players;
return nearby;
}
public void sendPacket(ServerBasePacket mov)

View File

@ -426,8 +426,7 @@ public class PetInstance extends Creature
try
{
Inventory petInventory = getInventory();
ItemInstance[] items = petInventory.getItems();
for (ItemInstance giveit : items)
for (ItemInstance giveit : petInventory.getItems())
{
if (((giveit.getItem().getWeight() * giveit.getCount()) + _owner.getInventory().getTotalWeight()) < _owner.getMaxLoad())
{
@ -515,8 +514,7 @@ public class PetInstance extends Creature
{
try
{
ItemInstance[] items = getInventory().getItems();
for (ItemInstance item : items)
for (ItemInstance item : getInventory().getItems())
{
dropItemHere(item);
}
@ -538,8 +536,7 @@ public class PetInstance extends Creature
dropit.setZ(getZ() + 100);
dropit.setOnTheGround(true);
DropItem dis = new DropItem(dropit, getObjectId());
Creature[] players = broadcastPacket(dis);
for (Creature player : players)
for (Creature player : broadcastPacket(dis))
{
((PlayerInstance) player).addKnownObjectWithoutCreate(dropit);
}
@ -596,21 +593,20 @@ public class PetInstance extends Creature
{
if (getKnownObjects().size() != 0)
{
WorldObject[] knownobjects = _knownObjects.toArray(new WorldObject[_knownObjects.size()]);
for (int x = 0; x < knownobjects.length; ++x)
for (WorldObject object : _knownObjects)
{
if (!(getDistance(knownobjects[x].getX(), knownobjects[x].getY()) > 4000.0))
if (!(getDistance(object.getX(), object.getY()) > 4000.0))
{
continue;
}
if (knownobjects[x] instanceof MonsterInstance)
if (object instanceof MonsterInstance)
{
removeKnownObject(knownobjects[x]);
((MonsterInstance) knownobjects[x]).removeKnownObject(this);
removeKnownObject(object);
((MonsterInstance) object).removeKnownObject(this);
continue;
}
removeKnownObject(knownobjects[x]);
knownobjects[x].removeKnownObject(this);
removeKnownObject(object);
object.removeKnownObject(this);
}
}
updateKnownCounter = 0;

View File

@ -17,6 +17,7 @@
*/
package org.l2jmobius.gameserver.model.actor.instance;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@ -142,14 +143,14 @@ public class PlayerInstance extends Creature
return _skills.remove(skill.getId());
}
public Skill[] getAllSkills()
public Collection<Skill> getAllSkills()
{
return _skills.values().toArray(new Skill[_skills.values().size()]);
return _skills.values();
}
public ShortCut[] getAllShortCuts()
public Collection<ShortCut> getAllShortCuts()
{
return _shortCuts.values().toArray(new ShortCut[_shortCuts.values().size()]);
return _shortCuts.values();
}
public ShortCut getShortCut(int slot)

View File

@ -51,10 +51,8 @@ public class TrainerInstance extends NpcInstance
public void showSkillList(PlayerInstance player)
{
_log.fine("SkillList activated on: " + getObjectId());
SkillLearn[] skills = SkillTreeTable.getInstance().getAvailableSkills(player);
AquireSkillList asl = new AquireSkillList();
for (SkillLearn skill : skills)
for (SkillLearn skill : SkillTreeTable.getInstance().getAvailableSkills(player))
{
asl.addSkill(skill.getId(), skill.getLevel(), skill.getLevel(), skill.getSpCost(), 0);
}

View File

@ -221,10 +221,9 @@ public class ClientThread extends Thread
OutputStreamWriter out = null;
try
{
ShortCut[] scs = cha.getAllShortCuts();
out = new FileWriter(saveFile);
out.write("slot;type;id;level;unknown\r\n");
for (ShortCut sc : scs)
for (ShortCut sc : cha.getAllShortCuts())
{
out.write(sc.getSlot() + ";");
out.write(sc.getType() + ";");
@ -350,10 +349,9 @@ public class ClientThread extends Thread
OutputStreamWriter out = null;
try
{
ItemInstance[] items = cha.getInventory().getItems();
out = new FileWriter(saveFile);
out.write("objectId;itemId;name;count;price;equipSlot;\r\n");
for (ItemInstance item : items)
for (ItemInstance item : cha.getInventory().getItems())
{
out.write(item.getObjectId() + ";");
out.write(item.getItemId() + ";");
@ -392,10 +390,9 @@ public class ClientThread extends Thread
OutputStreamWriter out = null;
try
{
Skill[] skills = cha.getAllSkills();
out = new FileWriter(saveFile);
out.write("skillId;skillLevel;skillName\r\n");
for (Skill skill : skills)
for (Skill skill : cha.getAllSkills())
{
out.write(skill.getId() + ";");
out.write(skill.getLevel() + ";");

View File

@ -62,7 +62,7 @@ public class Action extends ClientBasePacket
}
else
{
_log.warning("object not found, oid " + objectId + " or player is dead");
// _log.warning("object not found, oid " + objectId + " or player is dead");
activeChar.sendPacket(new ActionFailed());
}
}

View File

@ -150,16 +150,14 @@ public class CharacterCreate extends ClientBasePacket
newChar.setCollisionHeight(template.getFColH());
}
ItemTable itemTable = ItemTable.getInstance();
Integer[] items = template.getItems();
for (Integer item2 : items)
for (Integer item2 : template.getItems())
{
ItemInstance item = itemTable.createItem(item2);
newChar.getInventory().addItem(item);
}
newChar.setTitle("");
newChar.setClanId(0);
SkillLearn[] startSkills = SkillTreeTable.getInstance().getAvailableSkills(newChar);
for (SkillLearn startSkill : startSkills)
for (SkillLearn startSkill : SkillTreeTable.getInstance().getAvailableSkills(newChar))
{
newChar.addSkill(SkillTable.getInstance().getInfo(startSkill.getId(), startSkill.getLevel()));
_log.fine("adding starter skill:" + startSkill.getId() + " / " + startSkill.getLevel());

View File

@ -49,29 +49,31 @@ public class EnterWorld extends ClientBasePacket
}
SystemMessage sm = new SystemMessage(34);
con.sendPacket(sm);
Announcements.getInstance().showAnnouncements(activeChar);
ItemList il = new ItemList(activeChar, false);
activeChar.sendPacket(il);
ShortCutInit sci = new ShortCutInit();
ShortCut[] shortcuts = activeChar.getAllShortCuts();
block5: for (ShortCut shortcut : shortcuts)
for (ShortCut shortcut : activeChar.getAllShortCuts())
{
switch (shortcut.getType())
{
case 3:
{
sci.addActionShotCut(shortcut.getSlot(), shortcut.getId(), shortcut.getUnk());
continue block5;
continue;
}
case 2:
{
sci.addSkillShotCut(shortcut.getSlot(), shortcut.getId(), shortcut.getLevel(), shortcut.getUnk());
continue block5;
continue;
}
case 1:
{
sci.addItemShotCut(shortcut.getSlot(), shortcut.getId(), shortcut.getUnk());
continue block5;
continue;
}
default:
{
@ -80,6 +82,7 @@ public class EnterWorld extends ClientBasePacket
}
}
con.sendPacket(sci);
UserInfo ui = new UserInfo(activeChar);
con.sendPacket(ui);
if (activeChar.isDead())
@ -98,8 +101,7 @@ public class EnterWorld extends ClientBasePacket
clan.getClanMember(activeChar.getName()).setPlayerInstance(activeChar);
SystemMessage msg = new SystemMessage(304);
msg.addString(activeChar.getName());
PlayerInstance[] clanMembers = clan.getOnlineMembers(activeChar.getName());
for (PlayerInstance clanMember : clanMembers)
for (PlayerInstance clanMember : clan.getOnlineMembers(activeChar.getName()))
{
clanMember.sendPacket(msg);
}

View File

@ -18,6 +18,7 @@
package org.l2jmobius.gameserver.network.clientpackets;
import java.io.IOException;
import java.util.Collection;
import org.l2jmobius.gameserver.data.SkillTable;
import org.l2jmobius.gameserver.data.SkillTreeTable;
@ -39,11 +40,10 @@ public class RequestAquireSkill extends ClientBasePacket
{
super(rawPacket);
PlayerInstance player = client.getActiveChar();
// Connection con = client.getConnection();
int id = readD();
int level = readD();
Skill skill = SkillTable.getInstance().getInfo(id, level);
SkillLearn[] skills = SkillTreeTable.getInstance().getAvailableSkills(player);
Collection<SkillLearn> skills = SkillTreeTable.getInstance().getAvailableSkills(player);
int _requiredSp = 0;
for (SkillLearn skill2 : skills)
{

View File

@ -40,9 +40,8 @@ public class RequestAquireSkillInfo extends ClientBasePacket
int id = readD();
int level = readD();
Skill skill = SkillTable.getInstance().getInfo(id, level);
SkillLearn[] skills = SkillTreeTable.getInstance().getAvailableSkills(activeChar);
int requiredSp = 0;
for (SkillLearn skill2 : skills)
for (SkillLearn skill2 : SkillTreeTable.getInstance().getAvailableSkills(activeChar))
{
if (skill2.getId() != id)
{

View File

@ -48,9 +48,8 @@ public class RequestDestroyItem extends ClientBasePacket
}
if ((itemToRemove = activeChar.getInventory().getItem(objectId)).isEquipped())
{
ItemInstance[] unequiped = activeChar.getInventory().unEquipItemOnPaperdoll(itemToRemove.getEquipSlot());
iu = new InventoryUpdate();
for (ItemInstance element : unequiped)
for (ItemInstance element : activeChar.getInventory().unEquipItemOnPaperdoll(itemToRemove.getEquipSlot()))
{
iu.addModifiedItem(element);
}

View File

@ -92,8 +92,7 @@ public class RequestDropItem extends ClientBasePacket
DropItem di = new DropItem(dropedItem, activeChar.getObjectId());
activeChar.sendPacket(di);
activeChar.addKnownObjectWithoutCreate(dropedItem);
Creature[] players = activeChar.broadcastPacket(di);
for (Creature player : players)
for (Creature player : activeChar.broadcastPacket(di))
{
((PlayerInstance) player).addKnownObjectWithoutCreate(dropedItem);
}

View File

@ -20,7 +20,6 @@ package org.l2jmobius.gameserver.network.clientpackets;
import java.io.IOException;
import org.l2jmobius.gameserver.model.Skill;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.network.ClientThread;
import org.l2jmobius.gameserver.network.serverpackets.SkillList;
@ -32,9 +31,7 @@ public class RequestSkillList extends ClientBasePacket
{
super(rawPacket);
SkillList response = new SkillList();
PlayerInstance cha = client.getActiveChar();
Skill[] skills = cha.getAllSkills();
for (Skill skill : skills)
for (Skill skill : client.getActiveChar().getAllSkills())
{
response.addSkill(skill.getId(), skill.getLevel(), skill.isPassive());
}

View File

@ -17,6 +17,8 @@
*/
package org.l2jmobius.gameserver.network.clientpackets;
import java.util.Collection;
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.network.ClientThread;
@ -35,7 +37,7 @@ public class RequestUnEquipItem extends ClientBasePacket
int slot = readD();
_log.fine("request unequip slot " + slot);
PlayerInstance activeChar = client.getActiveChar();
ItemInstance[] unequiped = activeChar.getInventory().unEquipItemInBodySlot(slot);
Collection<ItemInstance> unequiped = activeChar.getInventory().unEquipItemInBodySlot(slot);
InventoryUpdate iu = new InventoryUpdate();
for (ItemInstance element : unequiped)
{
@ -51,10 +53,10 @@ public class RequestUnEquipItem extends ClientBasePacket
activeChar.setAttackStatus(false);
CharInfo info = new CharInfo(activeChar);
activeChar.broadcastPacket(info);
if (unequiped.length > 0)
if (unequiped.size() > 0)
{
SystemMessage sm = new SystemMessage(417);
sm.addItemName(unequiped[0].getItemId());
sm.addItemName(unequiped.stream().findFirst().get().getItemId());
activeChar.sendPacket(sm);
}
}

View File

@ -17,13 +17,15 @@
*/
package org.l2jmobius.gameserver.network.serverpackets;
import java.util.Collection;
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
public class GMViewItemList extends ServerBasePacket
{
private static final String _S__AD_GMVIEWITEMLIST = "[S] AD GMViewItemList";
private final ItemInstance[] _items;
private final Collection<ItemInstance> _items;
private final String _playerName;
public GMViewItemList(PlayerInstance cha)
@ -38,18 +40,16 @@ public class GMViewItemList extends ServerBasePacket
writeC(173);
writeS(_playerName);
writeH(1);
int count = _items.length;
writeH(count);
for (int i = 0; i < count; ++i)
writeH(_items.size());
for (ItemInstance item : _items)
{
ItemInstance temp = _items[i];
writeH(temp.getItem().getType1());
writeD(temp.getObjectId());
writeD(temp.getItemId());
writeD(temp.getCount());
writeH(temp.getItem().getType2());
writeH(item.getItem().getType1());
writeD(item.getObjectId());
writeD(item.getItemId());
writeD(item.getCount());
writeH(item.getItem().getType2());
writeH(255);
if (temp.isEquipped())
if (item.isEquipped())
{
writeH(1);
}
@ -57,8 +57,8 @@ public class GMViewItemList extends ServerBasePacket
{
writeH(0);
}
writeD(temp.getItem().getBodyPart());
writeH(temp.getEnchantLevel());
writeD(item.getItem().getBodyPart());
writeH(item.getEnchantLevel());
writeH(0);
}
return getBytes();

View File

@ -49,9 +49,8 @@ public class GMViewPledgeInfo extends ServerBasePacket
writeD(_activeChar.getLevel());
writeD(0);
writeD(0);
ClanMember[] members = _clan.getMembers();
writeD(members.length - 1);
for (ClanMember member : members)
writeD(_clan.getMembers().size() - 1);
for (ClanMember member : _clan.getMembers())
{
if (member.getName().equals(_activeChar.getName()))
{

View File

@ -17,13 +17,15 @@
*/
package org.l2jmobius.gameserver.network.serverpackets;
import java.util.Collection;
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
public class ItemList extends ServerBasePacket
{
private static final String _S__27_ITEMLIST = "[S] 27 ItemList";
private final ItemInstance[] _items;
private final Collection<ItemInstance> _items;
private final boolean _showWindow;
public ItemList(PlayerInstance cha, boolean showWindow)
@ -32,7 +34,7 @@ public class ItemList extends ServerBasePacket
_showWindow = showWindow;
}
public ItemList(ItemInstance[] items, boolean showWindow)
public ItemList(Collection<ItemInstance> items, boolean showWindow)
{
_items = items;
_showWindow = showWindow;
@ -50,19 +52,16 @@ public class ItemList extends ServerBasePacket
{
writeH(0);
}
int count = _items.length;
writeH(count);
for (int i = 0; i < count; ++i)
writeH(_items.size());
for (ItemInstance item : _items)
{
ItemInstance temp = _items[i];
// _log.fine("item:" + temp.getItem().getName() + " type1:" + temp.getItem().getType1() + " type2:" + temp.getItem().getType2());
writeH(temp.getItem().getType1());
writeD(temp.getObjectId());
writeD(temp.getItemId());
writeD(temp.getCount());
writeH(temp.getItem().getType2());
writeH(item.getItem().getType1());
writeD(item.getObjectId());
writeD(item.getItemId());
writeD(item.getCount());
writeH(item.getItem().getType2());
writeH(255);
if (temp.isEquipped())
if (item.isEquipped())
{
writeH(1);
}
@ -70,8 +69,8 @@ public class ItemList extends ServerBasePacket
{
writeH(0);
}
writeD(temp.getItem().getBodyPart());
writeH(temp.getEnchantLevel());
writeD(item.getItem().getBodyPart());
writeH(item.getEnchantLevel());
writeH(0);
}
return getBytes();

View File

@ -17,37 +17,38 @@
*/
package org.l2jmobius.gameserver.network.serverpackets;
import java.util.Collection;
import org.l2jmobius.gameserver.model.actor.instance.ItemInstance;
import org.l2jmobius.gameserver.model.actor.instance.PetInstance;
public class PetItemList extends ServerBasePacket
{
private static final String _S__cb_PETITEMLIST = "[S] cb PetItemList";
private final PetInstance _cha;
private final Collection<ItemInstance> _items;
public PetItemList(PetInstance cha)
{
_cha = cha;
_items = _cha.getInventory().getItems();
}
@Override
public byte[] getContent()
{
writeC(203);
ItemInstance[] items = _cha.getInventory().getItems();
int count = items.length;
writeH(count);
for (int i = 0; i < count; ++i)
writeH(_items.size());
for (ItemInstance item : _items)
{
ItemInstance temp = items[i];
// _log.fine("item:" + temp.getItem().getName() + " type1:" + temp.getItem().getType1() + " type2:" + temp.getItem().getType2());
writeH(temp.getItem().getType1());
writeD(temp.getObjectId());
writeD(temp.getItemId());
writeD(temp.getCount());
writeH(temp.getItem().getType2());
writeH(item.getItem().getType1());
writeD(item.getObjectId());
writeD(item.getItemId());
writeD(item.getCount());
writeH(item.getItem().getType2());
writeH(255);
if (temp.isEquipped())
if (item.isEquipped())
{
writeH(1);
}
@ -55,8 +56,8 @@ public class PetItemList extends ServerBasePacket
{
writeH(0);
}
writeD(temp.getItem().getBodyPart());
writeH(temp.getEnchantLevel());
writeD(item.getItem().getBodyPart());
writeH(item.getEnchantLevel());
writeH(0);
}
return getBytes();

View File

@ -51,9 +51,8 @@ public class PledgeShowMemberListAll extends ServerBasePacket
writeD(0);
writeS("");
writeD(0);
ClanMember[] members = _clan.getMembers();
writeD(members.length - 1);
for (ClanMember member : members)
writeD(_clan.getMembers().size() - 1);
for (ClanMember member : _clan.getMembers())
{
if (member.getName().equals(_activeChar.getName()))
{

View File

@ -18,6 +18,7 @@
package org.l2jmobius.gameserver.network.serverpackets;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.l2jmobius.gameserver.model.TradeItem;
@ -45,7 +46,7 @@ public class PrivateBuyListBuy extends ServerBasePacket
writeD(_buyer.getObjectId());
writeD(_seller.getAdena());
List<TradeItem> buyerslist = _buyer.getBuyList();
ItemInstance[] sellerItems = _seller.getInventory().getItems();
Collection<ItemInstance> sellerItems = _seller.getInventory().getItems();
ArrayList<TradeItem> sellerslist = new ArrayList<>();
int count = buyerslist.size();
for (int i = 0; i < count; ++i)

View File

@ -41,13 +41,11 @@ public class PrivateSellListBuy extends ServerBasePacket
writeC(208);
writeD(_buyer.getObjectId());
writeD(_buyer.getAdena());
ItemInstance[] inventory = _buyer.getInventory().getItems();
TradeList list = new TradeList(0);
List<TradeItem> buyList = _buyer.getBuyList();
int count = _buyer.getInventory().getSize();
for (int i2 = 0; i2 < count; ++i2)
for (ItemInstance item : _buyer.getInventory().getItems())
{
ItemInstance item = inventory[i2];
if (item.isEquipped() || (item.getItem().getType2() == 3) || ((item.getItem().getType2() == 4) && (item.getItem().getType1() == 4)) || ((item.getItem().getType2() == 1) && (item.getItem().getType1() == 1)) || item.isEquipped())
{
continue;

View File

@ -43,13 +43,11 @@ public class PrivateSellListSell extends ServerBasePacket
writeC(179);
writeD(_seller.getObjectId());
writeD(_seller.getAdena());
ItemInstance[] inventory = _seller.getInventory().getItems();
TradeList list = new TradeList(0);
List<TradeItem> sellList = _seller.getSellList();
int count = _seller.getInventory().getSize();
for (i = 0; i < count; ++i)
for (ItemInstance item : _seller.getInventory().getItems())
{
ItemInstance item = inventory[i];
if (item.isEquipped() || (item.getItem().getType2() == 3) || ((item.getItem().getType2() == 4) && (item.getItem().getType1() == 4)) || ((item.getItem().getType2() == 1) && (item.getItem().getType1() == 1)) || item.isEquipped())
{
continue;

View File

@ -39,28 +39,22 @@ public class SellList extends ServerBasePacket
@Override
public byte[] getContent()
{
ItemInstance item;
int i;
writeC(28);
writeD(_money);
writeD(0);
ItemInstance[] inventory = _char.getInventory().getItems();
int count = _char.getInventory().getSize();
for (i = 0; i < count; ++i)
for (ItemInstance item : _char.getInventory().getItems())
{
item = inventory[i];
if (item.isEquipped() || (item.getItemId() == 57) || (item.getItem().getType2() == 3))
{
continue;
}
_selllist.add(item);
// _log.fine("item added to selllist: " + item.getItem().getName());
}
count = _selllist.size();
writeH(count);
for (i = 0; i < count; ++i)
for (ItemInstance item : _selllist)
{
item = _selllist.get(i);
writeH(item.getItem().getType1());
writeD(item.getObjectId());
writeD(item.getItemId());

View File

@ -39,11 +39,9 @@ public class TradeStart extends ServerBasePacket
{
writeC(46);
writeD(_me.getTransactionRequester().getObjectId());
ItemInstance[] inventory = _me.getInventory().getItems();
int count = _me.getInventory().getSize();
for (int i = 0; i < count; ++i)
for (ItemInstance item : _me.getInventory().getItems())
{
ItemInstance item = inventory[i];
if (item.isEquipped() || (item.getItem().getType2() == 3))
{
continue;

View File

@ -44,11 +44,9 @@ public class WareHouseDepositList extends ServerBasePacket
writeC(83);
writeD(_money);
List<ItemInstance> itemlist = new ArrayList<>();
ItemInstance[] inventory = _cha.getInventory().getItems();
int count = _cha.getInventory().getSize();
for (i = 0; i < count; ++i)
for (ItemInstance item : _cha.getInventory().getItems())
{
ItemInstance item = inventory[i];
if (item.isEquipped() || (item.getItem().getType2() == 3))
{
continue;

View File

@ -18,6 +18,7 @@
package org.l2jmobius.gameserver.templates;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
public class CharTemplate
@ -393,9 +394,9 @@ public class CharTemplate
_items.add(itemId);
}
public Integer[] getItems()
public Collection<Integer> getItems()
{
return _items.toArray(new Integer[_items.size()]);
return _items;
}
public void setCanCraft(int b)