Separate premium henna slot availability check.

This commit is contained in:
MobiusDevelopment
2019-09-10 11:44:20 +00:00
parent e32a96a306
commit 14253af191
7 changed files with 168 additions and 84 deletions

View File

@ -57,18 +57,6 @@ public class RequestHennaEquip implements IClientIncomingPacket
return;
}
int totalEmptySlots = player.getHennaEmptySlots();
if ((Config.PREMIUM_HENNA_SLOT_ENABLED_FOR_ALL || player.hasPremiumStatus()) && Config.PREMIUM_HENNA_SLOT_ENABLED && (player.getClassId().level() > 1) && (player.getHenna(4) == null))
{
totalEmptySlots++;
}
if (totalEmptySlots == 0)
{
player.sendPacket(SystemMessageId.NO_SLOT_EXISTS_TO_DRAW_THE_SYMBOL);
client.sendPacket(ActionFailed.STATIC_PACKET);
return;
}
final Henna henna = HennaData.getInstance().getHenna(_symbolId);
if (henna == null)
{
@ -77,6 +65,30 @@ public class RequestHennaEquip implements IClientIncomingPacket
return;
}
if (henna.isPremium())
{
if ((Config.PREMIUM_HENNA_SLOT_ENABLED_FOR_ALL || player.hasPremiumStatus()) && Config.PREMIUM_HENNA_SLOT_ENABLED && (player.getClassId().level() > 1))
{
if (player.getHenna(4) != null)
{
player.sendPacket(SystemMessageId.NO_SLOT_EXISTS_TO_DRAW_THE_SYMBOL);
client.sendPacket(ActionFailed.STATIC_PACKET);
return;
}
}
else
{
client.sendPacket(ActionFailed.STATIC_PACKET);
return;
}
}
else if (player.getHennaEmptySlots() == 0)
{
player.sendPacket(SystemMessageId.NO_SLOT_EXISTS_TO_DRAW_THE_SYMBOL);
client.sendPacket(ActionFailed.STATIC_PACKET);
return;
}
final long count = player.getInventory().getInventoryItemCount(henna.getDyeItemId(), -1);
if (henna.isAllowedClass(player.getClassId()) && (count >= henna.getWearCount()) && (player.getAdena() >= henna.getWearFee()) && player.addHenna(henna))
{