Removal of enhanced inventory methods.
This commit is contained in:
@@ -16,7 +16,8 @@
|
||||
*/
|
||||
package ai.others.GameAssistant;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.gameserver.cache.HtmCache;
|
||||
import org.l2jmobius.gameserver.data.xml.MultisellData;
|
||||
@@ -326,7 +327,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_1":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 1) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 1) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -357,7 +365,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_2":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 2) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 2) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -388,7 +403,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_3":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 3) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 3) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -419,7 +441,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_4":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 4) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 4) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -450,7 +479,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_5":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 5) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 5) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -481,7 +517,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_6":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 6) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 6) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -512,7 +555,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_7":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 7) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 7) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -543,7 +593,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_8":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 8) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 8) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -574,7 +631,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_9":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 9) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 9) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -605,7 +669,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_black_sayha_cloak_10":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 10) && (item.getId() == BLACK_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 10) && (item.getId() == BLACK_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -648,7 +719,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_1":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 1) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 1) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -679,7 +757,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_2":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 2) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 2) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -710,7 +795,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_3":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 3) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 3) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -741,7 +833,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_4":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 4) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 4) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -772,7 +871,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_5":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 5) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 5) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -803,7 +909,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_6":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 6) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 6) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -834,7 +947,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_7":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 7) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 7) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -865,7 +985,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_8":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 8) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 8) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -896,7 +1023,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_9":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 9) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 9) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -927,7 +1061,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_white_sayha_cloak_10":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 10) && (item.getId() == WHITE_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 10) && (item.getId() == WHITE_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -970,7 +1111,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_1":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 1) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 1) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1001,7 +1149,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_2":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 2) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 2) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1032,7 +1187,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_3":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 3) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 3) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1063,7 +1225,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_4":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 4) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 4) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1094,7 +1263,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_5":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 5) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 5) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1125,7 +1301,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_6":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 6) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 6) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1156,7 +1339,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_7":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 7) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 7) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1187,7 +1377,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_8":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 8) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 8) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1218,7 +1415,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_9":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 9) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 9) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
@@ -1249,7 +1453,14 @@ public class GameAssistant extends AbstractNpcAI
|
||||
}
|
||||
case "exc_red_sayha_cloak_10":
|
||||
{
|
||||
final Collection<ItemInstance> cloaks = player.getInventory().getItems(item -> (item.getEnchantLevel() == 10) && (item.getId() == RED_SAYHA_CLOAK));
|
||||
final List<ItemInstance> cloaks = new ArrayList<>();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if ((item.getEnchantLevel() == 10) && (item.getId() == RED_SAYHA_CLOAK))
|
||||
{
|
||||
cloaks.add(item);
|
||||
}
|
||||
}
|
||||
if (cloaks.isEmpty())
|
||||
{
|
||||
player.sendPacket(new ExPremiumManagerShowHtml(HtmCache.getInstance().getHtm(player, "data/scripts/ai/others/GameAssistant/no_cloak.html")));
|
||||
|
||||
@@ -138,7 +138,7 @@ public class RestorationRandom extends AbstractEffect
|
||||
}
|
||||
else
|
||||
{
|
||||
for (ItemInstance itemInstance : player.getInventory().getItemsByItemId(entry.getKey().getId()))
|
||||
for (ItemInstance itemInstance : player.getInventory().getAllItemsByItemId(entry.getKey().getId()))
|
||||
{
|
||||
playerIU.addModifiedItem(itemInstance);
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ public class OpEncumberedSkillCondition implements ISkillCondition
|
||||
}
|
||||
|
||||
final PlayerInstance player = caster.getActingPlayer();
|
||||
final int currentSlotsPercent = calcPercent(player.getInventoryLimit(), player.getInventory().getSize(item -> !item.isQuestItem()));
|
||||
final int currentSlotsPercent = calcPercent(player.getInventoryLimit(), player.getInventory().getNonQuestSize());
|
||||
final int currentWeightPercent = calcPercent(player.getMaxLoad(), player.getCurrentLoad());
|
||||
return (currentSlotsPercent >= _slotsPercent) && (currentWeightPercent >= _weightPercent);
|
||||
}
|
||||
|
||||
@@ -148,24 +148,24 @@ public class Q10290_ATripBegins extends Quest
|
||||
showOnScreenMsg(player, NpcStringId.YOU_VE_GOT_ADVENTURER_S_BRACELET_AND_ADVENTURER_S_TALISMAN_NCOMPLETE_THE_TUTORIAL_AND_TRY_TO_USE_THE_TALISMAN, ExShowScreenMessage.TOP_CENTER, 10000);
|
||||
addExpAndSp(player, (ExperienceData.getInstance().getExpForLevel(25) + 100) - player.getExp(), 42000);
|
||||
// TODO: find a better way to do this: Tempfix for not giving items when already have them in inventory (bugging abort and re-accepting).
|
||||
if (player.getInventory().getItemsByItemId(BSOE_EVENT.getId()).size() <= 20)
|
||||
if (player.getInventory().getAllItemsByItemId(BSOE_EVENT.getId()).size() <= 20)
|
||||
{
|
||||
// 20 due other quest rewards? Need to see for a possible to add a variable here.
|
||||
giveItems(player, BSOE_EVENT);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURERS_BRACELET.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURERS_BRACELET.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURERS_BRACELET);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURERS_TALISMAN);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(SCROLL_OF_ENCHANT_ADEN_WEAPON.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(SCROLL_OF_ENCHANT_ADEN_WEAPON.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, SCROLL_OF_ENCHANT_ADEN_WEAPON);
|
||||
}
|
||||
|
||||
@@ -73,11 +73,11 @@ public class Q10971_TalismanEnchant extends Quest
|
||||
qs.startQuest();
|
||||
player.sendPacket(new ExTutorialShowId(47));
|
||||
// TODO: Find a better way to do this: Tempfix for not giving items when already have them in inventory (bugging abort and re-accepting).
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURERS_TALISMAN);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, SCROLL_OF_ENCHANT_ADVENTURERS_TALISMAN);
|
||||
}
|
||||
@@ -100,7 +100,7 @@ public class Q10971_TalismanEnchant extends Quest
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURERS_TALISMAN.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURERS_TALISMAN.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
|
||||
@@ -81,7 +81,7 @@ public class Q10973_EnchantingAgathions extends Quest
|
||||
if (qs.isStarted())
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(TRAVELER_AGATHION_GRIFFIN))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(TRAVELER_AGATHION_GRIFFIN))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
|
||||
@@ -80,11 +80,11 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
{
|
||||
qs.startQuest();
|
||||
// TODO: Find a better way to do this: Tempfix for not giving items when already have them in inventory (bugging abort and re-accepting).
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURER_SHEEP_HAT.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURER_SHEEP_HAT.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURER_SHEEP_HAT);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(ENCHANT_SCROLL_ADVENTURER_SHEEP_HAT.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ENCHANT_SCROLL_ADVENTURER_SHEEP_HAT.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ENCHANT_SCROLL_ADVENTURER_SHEEP_HAT);
|
||||
}
|
||||
@@ -96,7 +96,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_SHEEP_HAT.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_SHEEP_HAT.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
@@ -118,11 +118,11 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
{
|
||||
qs.startQuest();
|
||||
// TODO: Find a better way to do this: Tempfix for not giving items when already have them in inventory (bugging abort and re-accepting).
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURER_BELT.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURER_BELT.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURER_BELT);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(ENCHANT_SCROLL_ADVENTURER_BELT.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ENCHANT_SCROLL_ADVENTURER_BELT.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ENCHANT_SCROLL_ADVENTURER_BELT);
|
||||
}
|
||||
@@ -134,7 +134,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_BELT.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_BELT.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
@@ -156,11 +156,11 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
{
|
||||
qs.startQuest();
|
||||
// TODO: Find a better way to do this: Tempfix for not giving items when already have them in inventory (bugging abort and re-accepting).
|
||||
if (player.getInventory().getItemsByItemId(ADVENTURER_CLOAK.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ADVENTURER_CLOAK.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ADVENTURER_CLOAK);
|
||||
}
|
||||
if (player.getInventory().getItemsByItemId(ENCHANT_SCROLL_ADVENTURER_CLOAK.getId()).isEmpty())
|
||||
if (player.getInventory().getAllItemsByItemId(ENCHANT_SCROLL_ADVENTURER_CLOAK.getId()).isEmpty())
|
||||
{
|
||||
giveItems(player, ENCHANT_SCROLL_ADVENTURER_CLOAK);
|
||||
}
|
||||
@@ -172,7 +172,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
if (qs.isCond(3))
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_CLOAK.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_CLOAK.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
@@ -221,7 +221,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
case 1:
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_SHEEP_HAT.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_SHEEP_HAT.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
@@ -243,7 +243,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
case 2:
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_BELT.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_BELT.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
@@ -265,7 +265,7 @@ public class Q10974_NewStylishEquipment extends Quest
|
||||
case 3:
|
||||
{
|
||||
boolean foundEnchant = false;
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getItemsByItemId(ADVENTURER_CLOAK.getId()))
|
||||
SEARCH: for (ItemInstance item : player.getInventory().getAllItemsByItemId(ADVENTURER_CLOAK.getId()))
|
||||
{
|
||||
if (item.getEnchantLevel() > 0)
|
||||
{
|
||||
|
||||
@@ -393,7 +393,7 @@ public class CastleManorManager implements IXmlReader, IStorable
|
||||
final ItemContainer cwh = owner.getWarehouse();
|
||||
for (CropProcure crop : _procureNext.get(castleId))
|
||||
{
|
||||
if ((crop.getStartAmount() > 0) && (cwh.getItemsByItemId(getSeedByCrop(crop.getId()).getMatureId()) == null))
|
||||
if ((crop.getStartAmount() > 0) && (cwh.getAllItemsByItemId(getSeedByCrop(crop.getId()).getMatureId()) == null))
|
||||
{
|
||||
slots++;
|
||||
}
|
||||
|
||||
@@ -332,7 +332,13 @@ public class PetInstance extends Summon
|
||||
{
|
||||
if (_inventory != null)
|
||||
{
|
||||
return _inventory.getItems(item -> (item.getItemLocation() == ItemLocation.PET_EQUIP) && (item.getItem().getBodyPart() == Item.SLOT_R_HAND)).stream().findAny().orElse(null);
|
||||
for (ItemInstance item : _inventory.getItems())
|
||||
{
|
||||
if ((item.getItemLocation() == ItemLocation.PET_EQUIP) && (item.getItem().getBodyPart() == Item.SLOT_R_HAND))
|
||||
{
|
||||
return item;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -12991,7 +12991,7 @@ public class PlayerInstance extends Playable
|
||||
*/
|
||||
public boolean isInventoryUnder90(boolean includeQuestInv)
|
||||
{
|
||||
return (_inventory.getSize(item -> !item.isQuestItem() || includeQuestInv) <= (getInventoryLimit() * 0.9));
|
||||
return (includeQuestInv ? _inventory.getSize() : _inventory.getNonQuestSize()) <= (getInventoryLimit() * 0.9);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -13001,7 +13001,7 @@ public class PlayerInstance extends Playable
|
||||
*/
|
||||
public boolean isInventoryUnder80(boolean includeQuestInv)
|
||||
{
|
||||
return (_inventory.getSize(item -> !item.isQuestItem() || includeQuestInv) <= (getInventoryLimit() * 0.8));
|
||||
return (includeQuestInv ? _inventory.getSize() : _inventory.getNonQuestSize()) <= (getInventoryLimit() * 0.8);
|
||||
}
|
||||
|
||||
public boolean havePetInvItems()
|
||||
|
||||
@@ -42,7 +42,7 @@ public class ConditionPlayerInvSize extends Condition
|
||||
{
|
||||
if (effector.getActingPlayer() != null)
|
||||
{
|
||||
return effector.getActingPlayer().getInventory().getSize(i -> !i.isQuestItem()) <= (effector.getActingPlayer().getInventoryLimit() - _size);
|
||||
return effector.getActingPlayer().getInventory().getNonQuestSize() <= (effector.getActingPlayer().getInventoryLimit() - _size);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@ public class ConditionTargetInvSize extends Condition
|
||||
if ((effected != null) && effected.isPlayer())
|
||||
{
|
||||
final PlayerInstance target = effected.getActingPlayer();
|
||||
return target.getInventory().getSize(i -> !i.isQuestItem()) <= (target.getInventoryLimit() - _size);
|
||||
return target.getInventory().getNonQuestSize() <= (target.getInventoryLimit() - _size);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.ItemInfo;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.itemcontainer.Inventory;
|
||||
import org.l2jmobius.gameserver.model.itemcontainer.ItemContainer;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
|
||||
/**
|
||||
* A modified version of {@link MultisellListHolder} that may include altered data of the original and other dynamic data resulted from players' interraction.
|
||||
@@ -54,21 +55,24 @@ public class PreparedMultisellListHolder extends MultisellListHolder
|
||||
_itemInfos = new ArrayList<>();
|
||||
|
||||
// Only do the match up on equippable items that are not currently equipped. For each appropriate item, produce a set of entries for the multisell list.
|
||||
inventory.getItems(item -> !item.isEquipped() && (item.isArmor() || item.isWeapon())).forEach(item ->
|
||||
for (ItemInstance item : inventory.getItems())
|
||||
{
|
||||
// Check ingredients of each entry to see if it's an entry we'd like to include.
|
||||
for (MultisellEntryHolder entry : list.getEntries())
|
||||
if (!item.isEquipped() && (item.isArmor() || item.isWeapon()))
|
||||
{
|
||||
for (ItemChanceHolder holder : entry.getIngredients())
|
||||
// Check ingredients of each entry to see if it's an entry we'd like to include.
|
||||
for (MultisellEntryHolder entry : list.getEntries())
|
||||
{
|
||||
if (holder.getId() == item.getId())
|
||||
for (ItemChanceHolder holder : entry.getIngredients())
|
||||
{
|
||||
_entries.add(entry);
|
||||
_itemInfos.add(new ItemInfo(item));
|
||||
if (holder.getId() == item.getId())
|
||||
{
|
||||
_entries.add(entry);
|
||||
_itemInfos.add(new ItemInfo(item));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1084,7 +1084,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
synchronized (item)
|
||||
{
|
||||
if (!_items.containsKey(item.getObjectId()))
|
||||
if (!_items.contains(item))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
@@ -1119,7 +1119,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
synchronized (item)
|
||||
{
|
||||
if (!_items.containsKey(item.getObjectId()))
|
||||
if (!_items.contains(item))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
@@ -2146,7 +2146,7 @@ public abstract class Inventory extends ItemContainer
|
||||
protected void refreshWeight()
|
||||
{
|
||||
long weight = 0;
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if ((item != null) && (item.getItem() != null))
|
||||
{
|
||||
@@ -2189,9 +2189,9 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
|
||||
ItemInstance arrow = null;
|
||||
for (ItemInstance item : getItems())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.isEtcItem() && (item.getItem().getCrystalTypePlus() == bow.getCrystalTypePlus()) && (item.getEtcItem().getItemType() == EtcItemType.ARROW))
|
||||
if (item.isEtcItem() && (item.getEtcItem().getItemType() == EtcItemType.ARROW) && (item.getItem().getCrystalTypePlus() == bow.getCrystalTypePlus()))
|
||||
{
|
||||
arrow = item;
|
||||
break;
|
||||
@@ -2210,9 +2210,9 @@ public abstract class Inventory extends ItemContainer
|
||||
public ItemInstance findBoltForCrossBow(Item crossbow)
|
||||
{
|
||||
ItemInstance bolt = null;
|
||||
for (ItemInstance item : getItems())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.isEtcItem() && (item.getItem().getCrystalTypePlus() == crossbow.getCrystalTypePlus()) && (item.getEtcItem().getItemType() == EtcItemType.BOLT))
|
||||
if (item.isEtcItem() && (item.getEtcItem().getItemType() == EtcItemType.BOLT) && (item.getItem().getCrystalTypePlus() == crossbow.getCrystalTypePlus()))
|
||||
{
|
||||
bolt = item;
|
||||
break;
|
||||
@@ -2231,9 +2231,9 @@ public abstract class Inventory extends ItemContainer
|
||||
public ItemInstance findElementalOrbForPistols(Item pistols)
|
||||
{
|
||||
ItemInstance orb = null;
|
||||
for (ItemInstance item : getItems())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.isEtcItem() && (item.getItem().getCrystalTypePlus() == pistols.getCrystalTypePlus()) && (item.getEtcItem().getItemType() == EtcItemType.ELEMENTAL_ORB))
|
||||
if (item.isEtcItem() && (item.getEtcItem().getItemType() == EtcItemType.ELEMENTAL_ORB) && (item.getItem().getCrystalTypePlus() == pistols.getCrystalTypePlus()))
|
||||
{
|
||||
orb = item;
|
||||
break;
|
||||
|
||||
@@ -22,9 +22,6 @@ import java.sql.ResultSet;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
@@ -45,7 +42,8 @@ public abstract class ItemContainer
|
||||
{
|
||||
protected static final Logger LOGGER = Logger.getLogger(ItemContainer.class.getName());
|
||||
|
||||
protected final Map<Integer, ItemInstance> _items = new ConcurrentHashMap<>();
|
||||
protected final List<ItemInstance> _items = new ArrayList<>(1);
|
||||
private int _questItemSize = 0;
|
||||
|
||||
protected ItemContainer()
|
||||
{
|
||||
@@ -77,28 +75,19 @@ public abstract class ItemContainer
|
||||
}
|
||||
|
||||
/**
|
||||
* @param filterValue
|
||||
* @param filters
|
||||
* @return the quantity of quest items in the inventory
|
||||
*/
|
||||
public int getQuestSize()
|
||||
{
|
||||
return _questItemSize;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the quantity of items in the inventory
|
||||
*/
|
||||
@SafeVarargs
|
||||
public final int getSize(Predicate<ItemInstance> filterValue, Predicate<ItemInstance>... filters)
|
||||
public int getNonQuestSize()
|
||||
{
|
||||
Predicate<ItemInstance> filter = filterValue;
|
||||
for (Predicate<ItemInstance> additionalFilter : filters)
|
||||
{
|
||||
filter = filter.and(additionalFilter);
|
||||
}
|
||||
|
||||
int count = 0;
|
||||
for (ItemInstance item : _items.values())
|
||||
{
|
||||
if (filter.test(item))
|
||||
{
|
||||
count++;
|
||||
}
|
||||
}
|
||||
return count;
|
||||
return _items.size() - _questItemSize;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -107,33 +96,7 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public Collection<ItemInstance> getItems()
|
||||
{
|
||||
return getItems(i -> true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the items in inventory filtered by filter.
|
||||
* @param filterValue the filter
|
||||
* @param filters multiple filters
|
||||
* @return the filtered items in inventory
|
||||
*/
|
||||
@SafeVarargs
|
||||
public final Collection<ItemInstance> getItems(Predicate<ItemInstance> filterValue, Predicate<ItemInstance>... filters)
|
||||
{
|
||||
Predicate<ItemInstance> filter = filterValue;
|
||||
for (Predicate<ItemInstance> additionalFilter : filters)
|
||||
{
|
||||
filter = filter.and(additionalFilter);
|
||||
}
|
||||
|
||||
final List<ItemInstance> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items.values())
|
||||
{
|
||||
if (filter.test(item))
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return _items;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -142,7 +105,7 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public ItemInstance getItemByItemId(int itemId)
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.getId() == itemId)
|
||||
{
|
||||
@@ -156,9 +119,17 @@ public abstract class ItemContainer
|
||||
* @param itemId the item Id
|
||||
* @return the items list from inventory by using its itemId
|
||||
*/
|
||||
public Collection<ItemInstance> getItemsByItemId(int itemId)
|
||||
public Collection<ItemInstance> getAllItemsByItemId(int itemId)
|
||||
{
|
||||
return getItems(i -> i.getId() == itemId);
|
||||
final List<ItemInstance> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (itemId == item.getId())
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,7 +138,14 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public ItemInstance getItemByObjectId(int objectId)
|
||||
{
|
||||
return _items.get(objectId);
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (objectId == item.getObjectId())
|
||||
{
|
||||
return item;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -191,7 +169,7 @@ public abstract class ItemContainer
|
||||
public long getInventoryItemCount(int itemId, int enchantLevel, boolean includeEquipped)
|
||||
{
|
||||
long count = 0;
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if ((item.getId() == itemId) && ((item.getEnchantLevel() == enchantLevel) || (enchantLevel < 0)) && (includeEquipped || !item.isEquipped()))
|
||||
{
|
||||
@@ -210,7 +188,7 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public boolean haveItemForSelfResurrection()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.getItem().isAllowSelfResurrection())
|
||||
{
|
||||
@@ -412,7 +390,7 @@ public abstract class ItemContainer
|
||||
|
||||
synchronized (item)
|
||||
{
|
||||
if (!_items.containsKey(item.getObjectId()))
|
||||
if (!_items.contains(item))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
@@ -560,9 +538,12 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public void destroyAllItems(String process, PlayerInstance actor, Object reference)
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
synchronized (_items)
|
||||
{
|
||||
destroyItem(process, item, actor, reference);
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
destroyItem(process, item, actor, reference);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -571,7 +552,7 @@ public abstract class ItemContainer
|
||||
*/
|
||||
public long getAdena()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.getId() == Inventory.ADENA_ID)
|
||||
{
|
||||
@@ -583,7 +564,7 @@ public abstract class ItemContainer
|
||||
|
||||
public long getBeautyTickets()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.getId() == Inventory.BEAUTY_TICKET_ID)
|
||||
{
|
||||
@@ -599,7 +580,15 @@ public abstract class ItemContainer
|
||||
*/
|
||||
protected void addItem(ItemInstance item)
|
||||
{
|
||||
_items.put(item.getObjectId(), item);
|
||||
synchronized (_items)
|
||||
{
|
||||
if (item.isQuestItem())
|
||||
{
|
||||
_questItemSize++;
|
||||
}
|
||||
|
||||
_items.add(item);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -609,7 +598,15 @@ public abstract class ItemContainer
|
||||
*/
|
||||
protected boolean removeItem(ItemInstance item)
|
||||
{
|
||||
return _items.remove(item.getObjectId()) != null;
|
||||
synchronized (_items)
|
||||
{
|
||||
if (item.isQuestItem())
|
||||
{
|
||||
_questItemSize--;
|
||||
}
|
||||
|
||||
return _items.remove(item);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -626,7 +623,7 @@ public abstract class ItemContainer
|
||||
{
|
||||
if (getOwner() != null)
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.updateDatabase(true);
|
||||
item.stopAllTasks();
|
||||
@@ -643,7 +640,7 @@ public abstract class ItemContainer
|
||||
{
|
||||
if (getOwner() != null)
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.updateDatabase(true);
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ public class Mail extends ItemContainer
|
||||
public void setNewMessageId(int messageId)
|
||||
{
|
||||
_messageId = messageId;
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.setItemLocation(getBaseLocation(), messageId);
|
||||
}
|
||||
@@ -76,7 +76,7 @@ public class Mail extends ItemContainer
|
||||
|
||||
public void returnToWh(ItemContainer wh)
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (wh == null)
|
||||
{
|
||||
@@ -103,7 +103,7 @@ public class Mail extends ItemContainer
|
||||
@Override
|
||||
public void updateDatabase()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.updateDatabase(true);
|
||||
}
|
||||
@@ -146,7 +146,7 @@ public class Mail extends ItemContainer
|
||||
@Override
|
||||
public void deleteMe()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.updateDatabase(true);
|
||||
item.stopAllTasks();
|
||||
|
||||
@@ -114,7 +114,7 @@ public class PetInventory extends Inventory
|
||||
{
|
||||
super.restore();
|
||||
// check for equipped items from other pets
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (item.isEquipped() && !item.getItem().checkCondition(_owner, _owner, false))
|
||||
{
|
||||
@@ -125,7 +125,7 @@ public class PetInventory extends Inventory
|
||||
|
||||
public void transferItemsToOwner()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
getOwner().transferItem("return", item.getObjectId(), item.getCount(), getOwner().getOwner().getInventory(), getOwner().getOwner(), getOwner());
|
||||
}
|
||||
|
||||
@@ -23,10 +23,8 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
@@ -58,9 +56,7 @@ public class PlayerInventory extends Inventory
|
||||
private ItemInstance _adena;
|
||||
private ItemInstance _ancientAdena;
|
||||
private ItemInstance _beautyTickets;
|
||||
|
||||
private Collection<Integer> _blockItems = null;
|
||||
|
||||
private InventoryBlockType _blockMode = InventoryBlockType.NONE;
|
||||
|
||||
public PlayerInventory(PlayerInstance owner)
|
||||
@@ -132,7 +128,7 @@ public class PlayerInventory extends Inventory
|
||||
public Collection<ItemInstance> getUniqueItems(boolean allowAdena, boolean allowAncientAdena, boolean onlyAvailable)
|
||||
{
|
||||
final List<ItemInstance> list = new ArrayList<>();
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (!allowAdena && (item.getId() == ADENA_ID))
|
||||
{
|
||||
@@ -159,15 +155,6 @@ public class PlayerInventory extends Inventory
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param itemId
|
||||
* @return
|
||||
*/
|
||||
public Collection<ItemInstance> getAllItemsByItemId(int itemId)
|
||||
{
|
||||
return getAllItemsByItemId(itemId, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the list of all items in inventory that have a given item id.
|
||||
* @param itemId : ID of item
|
||||
@@ -176,7 +163,15 @@ public class PlayerInventory extends Inventory
|
||||
*/
|
||||
public Collection<ItemInstance> getAllItemsByItemId(int itemId, boolean includeEquipped)
|
||||
{
|
||||
return getItems(i -> (i.getId() == itemId) && (includeEquipped || !i.isEquipped()));
|
||||
final List<ItemInstance> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if ((itemId == item.getId()) && (includeEquipped || !item.isEquipped()))
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -198,7 +193,15 @@ public class PlayerInventory extends Inventory
|
||||
*/
|
||||
public Collection<ItemInstance> getAllItemsByItemId(int itemId, int enchantment, boolean includeEquipped)
|
||||
{
|
||||
return getItems(i -> (i.getId() == itemId) && (i.getEnchantLevel() == enchantment) && (includeEquipped || !i.isEquipped()));
|
||||
final List<ItemInstance> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if ((itemId == item.getId()) && (item.getEnchantLevel() == enchantment) && (includeEquipped || !item.isEquipped()))
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -209,18 +212,24 @@ public class PlayerInventory extends Inventory
|
||||
*/
|
||||
public Collection<ItemInstance> getAvailableItems(boolean allowAdena, boolean allowNonTradeable, boolean feightable)
|
||||
{
|
||||
return getItems(i ->
|
||||
final List<ItemInstance> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if (!i.isAvailable(_owner, allowAdena, allowNonTradeable) || !canManipulateWithItemId(i.getId()))
|
||||
if (!item.isAvailable(_owner, allowAdena, allowNonTradeable) || !canManipulateWithItemId(item.getId()))
|
||||
{
|
||||
return false;
|
||||
continue;
|
||||
}
|
||||
else if (feightable)
|
||||
{
|
||||
return (i.getItemLocation() == ItemLocation.INVENTORY) && i.isFreightable();
|
||||
if ((item.getItemLocation() == ItemLocation.INVENTORY) && item.isFreightable())
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
return true;
|
||||
});
|
||||
result.add(item);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -230,13 +239,19 @@ public class PlayerInventory extends Inventory
|
||||
*/
|
||||
public Collection<TradeItem> getAvailableItems(TradeList tradeList)
|
||||
{
|
||||
//@formatter:off
|
||||
return _items.values().stream()
|
||||
.filter(i -> i.isAvailable(_owner, false, false))
|
||||
.map(tradeList::adjustAvailableItem)
|
||||
.filter(Objects::nonNull)
|
||||
.collect(Collectors.toCollection(ArrayList::new));
|
||||
//@formatter:on
|
||||
final List<TradeItem> result = new ArrayList<>();
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
if ((item != null) && item.isAvailable(_owner, false, false))
|
||||
{
|
||||
final TradeItem adjItem = tradeList.adjustAvailableItem(item);
|
||||
if (adjItem != null)
|
||||
{
|
||||
result.add(adjItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -246,7 +261,7 @@ public class PlayerInventory extends Inventory
|
||||
public void adjustAvailableItem(TradeItem item)
|
||||
{
|
||||
boolean notAllEquipped = false;
|
||||
for (ItemInstance adjItem : getItemsByItemId(item.getItem().getId()))
|
||||
for (ItemInstance adjItem : getAllItemsByItemId(item.getItem().getId()))
|
||||
{
|
||||
if (adjItem.isEquipable())
|
||||
{
|
||||
@@ -734,10 +749,10 @@ public class PlayerInventory extends Inventory
|
||||
{
|
||||
final int[][] paperdoll = new int[Inventory.PAPERDOLL_TOTALSLOTS][4];
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement statement2 = con.prepareStatement("SELECT object_id,item_id,loc_data,enchant_level FROM items WHERE owner_id=? AND loc='PAPERDOLL'"))
|
||||
PreparedStatement ps = con.prepareStatement("SELECT object_id,item_id,loc_data,enchant_level FROM items WHERE owner_id=? AND loc='PAPERDOLL'"))
|
||||
{
|
||||
statement2.setInt(1, objectId);
|
||||
try (ResultSet invdata = statement2.executeQuery())
|
||||
ps.setInt(1, objectId);
|
||||
try (ResultSet invdata = ps.executeQuery())
|
||||
{
|
||||
while (invdata.next())
|
||||
{
|
||||
@@ -835,7 +850,7 @@ public class PlayerInventory extends Inventory
|
||||
|
||||
public boolean validateCapacity(long slots, boolean questItem)
|
||||
{
|
||||
return ((slots == 0) && !Config.AUTO_LOOT_SLOT_LIMIT) || questItem ? (getSize(item -> item.isQuestItem()) + slots) <= _owner.getQuestInventoryLimit() : (getSize(item -> !item.isQuestItem()) + slots) <= _owner.getInventoryLimit();
|
||||
return ((slots == 0) && !Config.AUTO_LOOT_SLOT_LIMIT) || questItem ? (getQuestSize() + slots) <= _owner.getQuestInventoryLimit() : (getNonQuestSize() + slots) <= _owner.getInventoryLimit();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -947,7 +962,7 @@ public class PlayerInventory extends Inventory
|
||||
*/
|
||||
public void applyItemSkills()
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
item.giveSkillsToOwner();
|
||||
item.applyEnchantStats();
|
||||
|
||||
@@ -85,7 +85,7 @@ public class PlayerRefund extends ItemContainer
|
||||
{
|
||||
try
|
||||
{
|
||||
for (ItemInstance item : _items.values())
|
||||
for (ItemInstance item : _items)
|
||||
{
|
||||
ItemTable.getInstance().destroyItem("ClearRefund", item, getOwner(), null);
|
||||
item.updateDatabase(true);
|
||||
|
||||
@@ -291,10 +291,13 @@ public class SkillCaster implements Runnable
|
||||
// Reduce talisman mana on skill use
|
||||
if ((_skill.getReferenceItemId() > 0) && (ItemTable.getInstance().getTemplate(_skill.getReferenceItemId()).getBodyPart() == Item.SLOT_DECO))
|
||||
{
|
||||
final ItemInstance talisman = caster.getInventory().getItems(i -> i.getId() == _skill.getReferenceItemId(), ItemInstance::isEquipped).stream().findAny().orElse(null);
|
||||
if (talisman != null)
|
||||
for (ItemInstance item : caster.getInventory().getItems())
|
||||
{
|
||||
talisman.decreaseMana(false, talisman.useSkillDisTime());
|
||||
if (item.isEquipped() && (item.getId() == _skill.getReferenceItemId()))
|
||||
{
|
||||
item.decreaseMana(false, item.useSkillDisTime());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ public class RequestChangeAttributeItem implements IClientIncomingPacket
|
||||
player.sendPacket(msg);
|
||||
final InventoryUpdate iu = new InventoryUpdate();
|
||||
iu.addModifiedItem(item);
|
||||
for (ItemInstance i : player.getInventory().getItemsByItemId(_consumeItemId))
|
||||
for (ItemInstance i : player.getInventory().getAllItemsByItemId(_consumeItemId))
|
||||
{
|
||||
iu.addItem(i);
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ public class BuyList extends AbstractItemPacket
|
||||
_listId = list.getListId();
|
||||
_list = list.getProducts();
|
||||
_money = player.getAdena();
|
||||
_inventorySlots = player.getInventory().getItems(item -> !item.isQuestItem()).size();
|
||||
_inventorySlots = player.getInventory().getNonQuestSize();
|
||||
_castleTaxRate = castleTaxRate;
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,9 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
@@ -30,7 +32,7 @@ import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
*/
|
||||
public class ExBuySellList extends AbstractItemPacket
|
||||
{
|
||||
private final Collection<ItemInstance> _sellList;
|
||||
private final List<ItemInstance> _sellList = new ArrayList<>();
|
||||
private Collection<ItemInstance> _refundList = null;
|
||||
private final boolean _done;
|
||||
private final int _inventorySlots;
|
||||
@@ -38,8 +40,14 @@ public class ExBuySellList extends AbstractItemPacket
|
||||
public ExBuySellList(PlayerInstance player, boolean done)
|
||||
{
|
||||
final Summon pet = player.getPet();
|
||||
_sellList = player.getInventory().getItems(item -> !item.isEquipped() && item.isSellable() && ((pet == null) || (item.getObjectId() != pet.getControlObjectId())));
|
||||
_inventorySlots = player.getInventory().getItems(item -> !item.isQuestItem()).size();
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if (!item.isEquipped() && item.isSellable() && ((pet == null) || (item.getObjectId() != pet.getControlObjectId())))
|
||||
{
|
||||
_sellList.add(item);
|
||||
}
|
||||
}
|
||||
_inventorySlots = player.getInventory().getNonQuestSize();
|
||||
if (player.hasRefund())
|
||||
{
|
||||
_refundList = player.getRefund().getItems();
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@@ -30,13 +31,19 @@ public class ExQuestItemList extends AbstractItemPacket
|
||||
{
|
||||
private final int _sendType;
|
||||
private final PlayerInstance _player;
|
||||
private final Collection<ItemInstance> _items;
|
||||
private final List<ItemInstance> _items = new ArrayList<>();
|
||||
|
||||
public ExQuestItemList(int sendType, PlayerInstance player)
|
||||
{
|
||||
_sendType = sendType;
|
||||
_player = player;
|
||||
_items = player.getInventory().getItems(ItemInstance::isQuestItem);
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if (item.isQuestItem())
|
||||
{
|
||||
_items.add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@@ -25,12 +26,18 @@ import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
public class ExShowBaseAttributeCancelWindow implements IClientOutgoingPacket
|
||||
{
|
||||
private final Collection<ItemInstance> _items;
|
||||
private final List<ItemInstance> _items = new ArrayList<>();
|
||||
private long _price;
|
||||
|
||||
public ExShowBaseAttributeCancelWindow(PlayerInstance player)
|
||||
{
|
||||
_items = player.getInventory().getItems(ItemInstance::hasAttributes);
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if (item.hasAttributes())
|
||||
{
|
||||
_items.add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
@@ -28,13 +28,19 @@ public class ItemList extends AbstractItemPacket
|
||||
{
|
||||
private final int _sendType;
|
||||
private final PlayerInstance _player;
|
||||
private final List<ItemInstance> _items;
|
||||
private final List<ItemInstance> _items = new ArrayList<>();
|
||||
|
||||
public ItemList(int sendType, PlayerInstance player)
|
||||
{
|
||||
_sendType = sendType;
|
||||
_player = player;
|
||||
_items = player.getInventory().getItems(item -> !item.isQuestItem()).stream().collect(Collectors.toList());
|
||||
for (ItemInstance item : player.getInventory().getItems())
|
||||
{
|
||||
if (!item.isQuestItem())
|
||||
{
|
||||
_items.add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user