From 64c4efcd7eea424dea5c4acffdb0bc31fe58350a Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Tue, 25 Oct 2022 21:17:32 +0000 Subject: [PATCH] Auto peel packet fix and small addition. Contributed by Index. --- .../itemhandlers/ExtractableItems.java | 20 +++++++++++++------ .../autopeel/ExStopItemAutoPeel.java | 2 +- .../itemhandlers/ExtractableItems.java | 20 +++++++++++++------ .../autopeel/ExStopItemAutoPeel.java | 2 +- 4 files changed, 30 insertions(+), 14 deletions(-) diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java index 21ff367cef..eb58ce4ad1 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java @@ -39,6 +39,7 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.autopeel.ExResultItemAutoPeel; +import org.l2jmobius.gameserver.network.serverpackets.autopeel.ExStopItemAutoPeel; /** * Extractable Items handler. @@ -240,15 +241,22 @@ public class ExtractableItems implements IItemHandler } final AutoPeelRequest request = player.getRequest(AutoPeelRequest.class); - if ((request != null) && request.isProcessing()) + if (request != null) { - request.setProcessing(false); - final List rewards = new LinkedList<>(); - for (Entry entry : extractedItems.entrySet()) + if (request.isProcessing()) { - rewards.add(new ItemHolder(entry.getKey().getId(), entry.getValue())); + request.setProcessing(false); + final List rewards = new LinkedList<>(); + for (Entry entry : extractedItems.entrySet()) + { + rewards.add(new ItemHolder(entry.getKey().getId(), entry.getValue())); + } + player.sendPacket(new ExResultItemAutoPeel(true, request.getTotalPeelCount(), request.getRemainingPeelCount() - 1, rewards)); + } + else + { + player.sendPacket(new ExStopItemAutoPeel(false)); } - player.sendPacket(new ExResultItemAutoPeel(true, request.getTotalPeelCount(), request.getRemainingPeelCount() - 1, rewards)); } return true; diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java index fa182b8155..adc40a289b 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java @@ -35,7 +35,7 @@ public class ExStopItemAutoPeel implements IClientOutgoingPacket @Override public boolean write(PacketWriter packet) { - OutgoingPackets.EX_RESULT_ITEM_AUTO_PEEL.writeId(packet); + OutgoingPackets.EX_STOP_ITEM_AUTO_PEEL.writeId(packet); packet.writeC(_result ? 1 : 0); return true; } diff --git a/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java b/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java index 21ff367cef..eb58ce4ad1 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java +++ b/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/itemhandlers/ExtractableItems.java @@ -39,6 +39,7 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.autopeel.ExResultItemAutoPeel; +import org.l2jmobius.gameserver.network.serverpackets.autopeel.ExStopItemAutoPeel; /** * Extractable Items handler. @@ -240,15 +241,22 @@ public class ExtractableItems implements IItemHandler } final AutoPeelRequest request = player.getRequest(AutoPeelRequest.class); - if ((request != null) && request.isProcessing()) + if (request != null) { - request.setProcessing(false); - final List rewards = new LinkedList<>(); - for (Entry entry : extractedItems.entrySet()) + if (request.isProcessing()) { - rewards.add(new ItemHolder(entry.getKey().getId(), entry.getValue())); + request.setProcessing(false); + final List rewards = new LinkedList<>(); + for (Entry entry : extractedItems.entrySet()) + { + rewards.add(new ItemHolder(entry.getKey().getId(), entry.getValue())); + } + player.sendPacket(new ExResultItemAutoPeel(true, request.getTotalPeelCount(), request.getRemainingPeelCount() - 1, rewards)); + } + else + { + player.sendPacket(new ExStopItemAutoPeel(false)); } - player.sendPacket(new ExResultItemAutoPeel(true, request.getTotalPeelCount(), request.getRemainingPeelCount() - 1, rewards)); } return true; diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java index fa182b8155..adc40a289b 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/network/serverpackets/autopeel/ExStopItemAutoPeel.java @@ -35,7 +35,7 @@ public class ExStopItemAutoPeel implements IClientOutgoingPacket @Override public boolean write(PacketWriter packet) { - OutgoingPackets.EX_RESULT_ITEM_AUTO_PEEL.writeId(packet); + OutgoingPackets.EX_STOP_ITEM_AUTO_PEEL.writeId(packet); packet.writeC(_result ? 1 : 0); return true; }