Retail configurable prohibition for henna premium slot.

This commit is contained in:
MobiusDev
2017-10-18 23:09:09 +00:00
parent 7f8cbb25be
commit 19e7469695
9 changed files with 69 additions and 0 deletions

View File

@@ -1121,6 +1121,7 @@ public final class Config
public static float PREMIUM_RATE_SPOIL_CHANCE;
public static float PREMIUM_RATE_SPOIL_AMOUNT;
public static boolean PREMIUM_HENNA_SLOT_ENABLED;
public static boolean PREMIUM_HENNA_SLOT_ALL_DYES;
public static Map<Integer, Float> PREMIUM_RATE_DROP_CHANCE_BY_ID;
public static Map<Integer, Float> PREMIUM_RATE_DROP_AMOUNT_BY_ID;
public static boolean PC_CAFE_ENABLED;
@@ -2567,6 +2568,7 @@ public final class Config
PREMIUM_RATE_SPOIL_CHANCE = PremiumSystem.getFloat("PremiumRateSpoilChance", 2);
PREMIUM_RATE_SPOIL_AMOUNT = PremiumSystem.getFloat("PremiumRateSpoilAmount", 1);
PREMIUM_HENNA_SLOT_ENABLED = PremiumSystem.getBoolean("EnablePremiumHennaSlot", true);
PREMIUM_HENNA_SLOT_ALL_DYES = PremiumSystem.getBoolean("EnableAnyHennaAtPremiumSlot", false);
final String[] premiumDropChanceMultiplier = PremiumSystem.getString("PremiumRateDropChanceByItemId", "").split(";");
PREMIUM_RATE_DROP_CHANCE_BY_ID = new HashMap<>(premiumDropChanceMultiplier.length);
if (!premiumDropChanceMultiplier[0].isEmpty())

View File

@@ -7942,6 +7942,22 @@ public final class L2PcInstance extends L2Playable
{
for (int i = 1; i < 5; i++)
{
// Check for retail premium dyes slot
if (!Config.PREMIUM_HENNA_SLOT_ALL_DYES)
{
if (i == 4)
{
if ((_henna[3] != null) || (henna.getDyeItemId() < 23825) || (henna.getDyeItemId() > 23830))
{
return false;
}
}
else if ((henna.getDyeItemId() > 23824) && (henna.getDyeItemId() < 23831))
{
continue;
}
}
if (_henna[i - 1] == null)
{
_henna[i - 1] = henna;