Disable auto use on shortcut removal.

This commit is contained in:
MobiusDevelopment
2021-03-29 21:20:38 +00:00
parent 9afad75516
commit 043ae8f94e
6 changed files with 48 additions and 12 deletions

View File

@@ -17,6 +17,7 @@
package org.l2jmobius.gameserver.network.clientpackets;
import org.l2jmobius.commons.network.PacketReader;
import org.l2jmobius.gameserver.model.Shortcut;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
@@ -53,16 +54,21 @@ public class RequestShortCutDel implements IClientIncomingPacket
return;
}
// Store shortcut reference id.
final Shortcut shortcut = player.getShortCut(_slot, _page);
final int id = shortcut == null ? -1 : shortcut.getId();
// Delete the shortcut.
player.deleteShortCut(_slot, _page);
// Remove auto used ids.
if (_slot > 263)
{
AutoUseTaskManager.getInstance().removeAutoSupplyItem(player, _id);
AutoUseTaskManager.getInstance().removeAutoSupplyItem(player, id);
}
else
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, _id);
AutoUseTaskManager.getInstance().removeAutoSkill(player, id);
}
}
}