Support for fixed safe enchant level.
This commit is contained in:
@@ -59,6 +59,7 @@ public abstract class AbstractEnchantItem
|
||||
private final CrystalType _grade;
|
||||
private final int _minEnchantLevel;
|
||||
private final int _maxEnchantLevel;
|
||||
private final int _safeEnchantLevel;
|
||||
private final double _bonusRate;
|
||||
|
||||
public AbstractEnchantItem(StatSet set)
|
||||
@@ -75,6 +76,7 @@ public abstract class AbstractEnchantItem
|
||||
_grade = set.getEnum("targetGrade", CrystalType.class, CrystalType.NONE);
|
||||
_minEnchantLevel = set.getInt("minEnchant", 0);
|
||||
_maxEnchantLevel = set.getInt("maxEnchant", 127);
|
||||
_safeEnchantLevel = set.getInt("safeEnchant", 0);
|
||||
_bonusRate = set.getDouble("bonusRate", 0);
|
||||
}
|
||||
|
||||
@@ -131,6 +133,14 @@ public abstract class AbstractEnchantItem
|
||||
return _maxEnchantLevel;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the safe enchant level of this scroll/item
|
||||
*/
|
||||
public int getSafeEnchant()
|
||||
{
|
||||
return _safeEnchantLevel;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param itemToEnchant the item to be enchanted
|
||||
* @param supportItem
|
||||
|
@@ -187,6 +187,12 @@ public class EnchantScroll extends AbstractEnchantItem
|
||||
LOGGER.warning(getClass().getSimpleName() + ": Couldn't find enchant item group for scroll: " + getId() + " requested by: " + player);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ((getSafeEnchant() > 0) && (enchantItem.getEnchantLevel() < getSafeEnchant()))
|
||||
{
|
||||
return 100;
|
||||
}
|
||||
|
||||
return group.getChance(enchantItem.getEnchantLevel());
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user