2012-11-21 21:49:54 +01:00
package com.gmail.nossr50.config ;
2013-07-29 00:37:13 +02:00
import java.util.ArrayList ;
2013-10-01 14:57:21 +02:00
import java.util.Arrays ;
2013-07-29 00:37:13 +02:00
import java.util.List ;
2013-10-01 14:57:21 +02:00
import com.gmail.nossr50.skills.fishing.Fishing ;
import com.gmail.nossr50.skills.mining.BlastMining ;
import com.gmail.nossr50.skills.repair.ArcaneForging ;
import com.gmail.nossr50.skills.smelting.Smelting ;
2013-02-24 06:18:01 +01:00
public class AdvancedConfig extends AutoUpdateConfigLoader {
2012-11-21 21:49:54 +01:00
private static AdvancedConfig instance ;
2012-12-24 22:56:25 +01:00
2012-11-21 21:49:54 +01:00
private AdvancedConfig ( ) {
super ( " advanced.yml " ) ;
2013-08-20 21:51:12 +02:00
validate ( ) ;
2012-11-21 21:49:54 +01:00
}
2013-01-26 23:01:55 +01:00
2012-11-21 21:49:54 +01:00
public static AdvancedConfig getInstance ( ) {
if ( instance = = null ) {
instance = new AdvancedConfig ( ) ;
}
2013-01-26 23:01:55 +01:00
2012-11-21 21:49:54 +01:00
return instance ;
}
2012-12-24 22:56:25 +01:00
2012-11-26 01:40:42 +01:00
@Override
2013-08-20 21:51:12 +02:00
protected boolean validateKeys ( ) {
2013-07-29 00:37:13 +02:00
// Validate all the settings!
List < String > reason = new ArrayList < String > ( ) ;
/* GENERAL */
if ( getAbilityLength ( ) < 1 ) {
reason . add ( " Skills.General.Ability_IncreaseLevel should be at least 1! " ) ;
}
if ( getEnchantBuff ( ) < 1 ) {
reason . add ( " Skills.General.Ability_EnchantBuff should be at least 1! " ) ;
}
/* ACROBATICS */
if ( getDodgeChanceMax ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Dodge_ChanceMax should be at least 1! " ) ;
}
if ( getDodgeMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Dodge_MaxBonusLevel should be at least 1! " ) ;
}
if ( getDodgeDamageModifier ( ) < = 1 ) {
2013-08-11 15:55:25 +02:00
reason . add ( " Skills.Acrobatics.Dodge_DamageModifier should be greater than 1! " ) ;
2013-07-29 00:37:13 +02:00
}
if ( getRollChanceMax ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Roll_ChanceMax should be at least 1! " ) ;
}
if ( getRollMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Roll_MaxBonusLevel should be at least 1! " ) ;
}
if ( getRollDamageThreshold ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Roll_DamageThreshold should be at least 0! " ) ;
}
if ( getGracefulRollChanceMax ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.GracefulRoll_ChanceMax should be at least 1! " ) ;
}
if ( getGracefulRollMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.GracefulRoll_MaxBonusLevel should be at least 1! " ) ;
}
if ( getGracefulRollDamageThreshold ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.GracefulRoll_DamageThreshold should be at least 0! " ) ;
}
if ( getDodgeXPModifier ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Dodge_XP_Modifier should be at least 0! " ) ;
}
if ( getRollXPModifier ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Roll_XP_Modifier should be at least 0! " ) ;
}
if ( getFallXPModifier ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Fall_XP_Modifier should be at least 0! " ) ;
}
/* ARCHERY */
if ( getSkillShotIncreaseLevel ( ) < 1 ) {
reason . add ( " Skills.Archery.SkillShot_IncreaseLevel should be at least 1! " ) ;
}
if ( getSkillShotIncreasePercentage ( ) < = 0 ) {
reason . add ( " Skills.Archery.SkillShot_IncreasePercentage should be greater than 0! " ) ;
}
if ( getSkillShotBonusMax ( ) < 0 ) {
reason . add ( " Skills.Archery.SkillShot_MaxBonus should be at least 0! " ) ;
}
if ( getDazeBonusMax ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Daze_MaxChance should be at least 1! " ) ;
}
if ( getDazeMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Daze_MaxBonusLevel should be at least 1! " ) ;
}
if ( getDazeModifier ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Daze_BonusDamage should be at least 0! " ) ;
}
if ( getRetrieveChanceMax ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Retrieve_MaxBonus should be at least 1! " ) ;
}
if ( getRetrieveMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Acrobatics.Retrieve_MaxBonusLevel should be at least 1! " ) ;
}
if ( getForceMultiplier ( ) < 0 ) {
reason . add ( " Skills.Acrobatics.Force_Multiplier should be at least 0! " ) ;
}
/* AXES */
if ( getBonusDamageAxesBonusMax ( ) < 1 ) {
reason . add ( " Skills.Axes.DamageIncrease_MaxBonus should be at least 1! " ) ;
}
if ( getBonusDamageAxesMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Axes.DamageIncrease_MaxBonusLevel should be at least 1! " ) ;
}
if ( getAxesCriticalChance ( ) < 1 ) {
reason . add ( " Skills.Axes.AxesCritical_MaxChance should be at least 1! " ) ;
}
if ( getAxesCriticalMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Axes.AxesCritical_MaxBonusLevel should be at least 1! " ) ;
}
if ( getAxesCriticalPVPModifier ( ) < 1 ) {
reason . add ( " Skills.Axes.AxesCritical_PVP_Modifier should be at least 1! " ) ;
}
if ( getAxesCriticalPVEModifier ( ) < 1 ) {
reason . add ( " Skills.Axes.AxesCritical_PVE_Modifier should be at least 1! " ) ;
}
if ( getGreaterImpactChance ( ) < 1 ) {
reason . add ( " Skills.Axes.GreaterImpact_Chance should be at least 1! " ) ;
}
if ( getGreaterImpactModifier ( ) < 1 ) {
reason . add ( " Skills.Axes.GreaterImpact_KnockbackModifier should be at least 1! " ) ;
}
if ( getGreaterImpactBonusDamage ( ) < 1 ) {
reason . add ( " Skills.Axes.GreaterImpact_BonusDamage should be at least 1! " ) ;
}
if ( getArmorImpactIncreaseLevel ( ) < 1 ) {
reason . add ( " Skills.Axes.ArmorImpact_IncreaseLevel should be at least 1! " ) ;
}
if ( getImpactChance ( ) < 1 ) {
reason . add ( " Skills.Axes.ArmorImpact_Chance should be at least 1! " ) ;
}
if ( getArmorImpactMaxDurabilityDamage ( ) < 1 ) {
reason . add ( " Skills.Axes.ArmorImpact_MaxPercentageDurabilityDamage should be at least 1! " ) ;
}
if ( getSkullSplitterModifier ( ) < 1 ) {
reason . add ( " Skills.Axes.SkullSplitter_DamagerModifier should be at least 1! " ) ;
}
/* FISHING */
2013-10-01 14:57:21 +02:00
List < Fishing . Tier > fishingTierList = Arrays . asList ( Fishing . Tier . values ( ) ) ;
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
for ( Fishing . Tier tier : fishingTierList ) {
if ( getFishingTierLevel ( tier ) < 0 ) {
reason . add ( " Skills.Fishing.Tier_Levels.Tier " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getShakeChance ( tier ) < 0 ) {
reason . add ( " Skills.Fishing.Shake_Chance.Rank_ " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getFishingVanillaXPModifier ( tier ) < 0 ) {
reason . add ( " Skills.Fishing.VanillaXPBoost.Rank_ " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( tier ! = Fishing . Tier . EIGHT ) {
Fishing . Tier nextTier = fishingTierList . get ( fishingTierList . indexOf ( tier ) - 1 ) ;
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getFishingTierLevel ( tier ) > = getFishingTierLevel ( nextTier ) ) {
reason . add ( " Skills.Fishing.Tier_Levels.Tier " + tier . toNumerical ( ) + " should be less than Skills.Fishing.Tier_Levels.Tier " + nextTier . toNumerical ( ) + " ! " ) ;
}
if ( getShakeChance ( tier ) > getShakeChance ( nextTier ) ) {
reason . add ( " Skills.Fishing.Shake_Chance.Rank_ " + tier . toNumerical ( ) + " should be less than or equal to Skills.Fishing.Shake_Chance.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getFishingVanillaXPModifier ( tier ) > getFishingVanillaXPModifier ( nextTier ) ) {
reason . add ( " Skills.Fishing.VanillaXPBoost.Rank_ " + tier . toNumerical ( ) + " should be less than or equal to Skills.Fishing.VanillaXPBoost.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
}
2013-09-30 16:59:54 +02:00
}
2013-07-29 00:37:13 +02:00
if ( getFishingMagicMultiplier ( ) < = 0 ) {
reason . add ( " Skills.Fishing.MagicHunter_Multiplier should be greater than 0! " ) ;
}
if ( getFishermanDietRankChange ( ) < 1 ) {
reason . add ( " Skills.Fishing.Fisherman_Diet_RankChange should be at least 1! " ) ;
}
if ( getIceFishingUnlockLevel ( ) < 1 ) {
reason . add ( " Skills.Fishing.Ice_Fishing_UnlockLevel should be at least 1! " ) ;
}
/* HERBALISM */
if ( getFarmerDietRankChange ( ) < 1 ) {
reason . add ( " Skills.Herbalism.Farmer_Diet_RankChange should be at least 1! " ) ;
}
if ( getGreenThumbStageChange ( ) < 1 ) {
reason . add ( " Skills.Herbalism.GreenThumb_StageChange should be at least 1! " ) ;
}
if ( getGreenThumbChanceMax ( ) < 1 ) {
reason . add ( " Skills.Herbalism.GreenThumb_ChanceMax should be at least 1! " ) ;
}
if ( getGreenThumbMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Herbalism.GreenThumb_MaxBonusLevel should be at least 1! " ) ;
}
if ( getHerbalismDoubleDropsChanceMax ( ) < 1 ) {
reason . add ( " Skills.Herbalism.DoubleDrops_ChanceMax should be at least 1! " ) ;
}
if ( getHerbalismDoubleDropsMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Herbalism.DoubleDrops_MaxBonusLevel should be at least 1! " ) ;
}
if ( getHylianLuckChanceMax ( ) < 1 ) {
reason . add ( " Skills.Herbalism.HylianLuck_ChanceMax should be at least 1! " ) ;
}
if ( getHylianLuckMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Herbalism.HylianLuck_MaxBonusLevel should be at least 1! " ) ;
}
if ( getShroomThumbChanceMax ( ) < 1 ) {
reason . add ( " Skills.Herbalism.ShroomThumb_ChanceMax should be at least 1! " ) ;
}
if ( getShroomThumbMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Herbalism.ShroomThumb_MaxBonusLevel should be at least 1! " ) ;
}
/* MINING */
if ( getMiningDoubleDropChance ( ) < 1 ) {
reason . add ( " Skills.Mining.DoubleDrops_ChanceMax should be at least 1! " ) ;
}
if ( getMiningDoubleDropMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Mining.DoubleDrops_MaxBonusLevel should be at least 1! " ) ;
}
2013-10-01 14:57:21 +02:00
List < BlastMining . Tier > blastMiningTierList = Arrays . asList ( BlastMining . Tier . values ( ) ) ;
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
for ( BlastMining . Tier tier : blastMiningTierList ) {
if ( getBlastMiningRankLevel ( tier ) < 0 ) {
reason . add ( " Skills.Mining.BlastMining_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getBlastDamageDecrease ( tier ) < 0 ) {
reason . add ( " Skills.Mining.BlastDamageDecrease_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getOreBonus ( tier ) < 0 ) {
reason . add ( " Skills.Mining.OreBonus_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getDebrisReduction ( tier ) < 0 ) {
reason . add ( " Skills.Mining.DebrisReduction_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getDropMultiplier ( tier ) < 0 ) {
reason . add ( " Skills.Mining.DropMultiplier_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getBlastRadiusModifier ( tier ) < 0 ) {
reason . add ( " Skills.Mining.BlastRadiusModifier_Rank " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( tier ! = BlastMining . Tier . EIGHT ) {
BlastMining . Tier nextTier = blastMiningTierList . get ( blastMiningTierList . indexOf ( tier ) - 1 ) ;
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getBlastMiningRankLevel ( tier ) > = getBlastMiningRankLevel ( nextTier ) ) {
reason . add ( " Skills.Mining.BlastMining_Rank " + tier . toNumerical ( ) + " should be less than Skills.Mining.BlastMining_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getBlastDamageDecrease ( tier ) > getBlastDamageDecrease ( nextTier ) ) {
reason . add ( " Skills.Mining.BlastDamageDecrease_Rank " + tier . toNumerical ( ) + " should be less than or equal to Skills.Mining.BlastDamageDecrease_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getOreBonus ( tier ) > getOreBonus ( nextTier ) ) {
reason . add ( " Skills.Mining.OreBonus_Rank " + tier . toNumerical ( ) + " should be less than or equal to Skills.Mining.OreBonus_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getDebrisReduction ( tier ) > getDebrisReduction ( nextTier ) ) {
reason . add ( " Skills.Mining.DebrisReduction_Rank " + tier . toNumerical ( ) + " should be less than or equal to Skills.Mining.DebrisReduction_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getDropMultiplier ( tier ) > getDropMultiplier ( nextTier ) ) {
reason . add ( " Skills.Mining.DropMultiplier_Rank " + tier . toNumerical ( ) + " should be less than or equal to Skills.Mining.DropMultiplier_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getBlastRadiusModifier ( tier ) > getBlastRadiusModifier ( nextTier ) ) {
reason . add ( " Skills.Mining.BlastRadiusModifier_Rank " + tier . toNumerical ( ) + " should be less than or equal to Skills.Mining.BlastRadiusModifier_Rank " + nextTier . toNumerical ( ) + " ! " ) ;
}
}
2013-07-29 00:37:13 +02:00
}
/* REPAIR */
if ( getRepairMasteryMaxBonus ( ) < 1 ) {
reason . add ( " Skills.Repair.RepairMastery_MaxBonusPercentage should be at least 1! " ) ;
}
if ( getRepairMasteryMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Repair.RepairMastery_MaxBonusLevel should be at least 1! " ) ;
}
if ( getSuperRepairChanceMax ( ) < 1 ) {
reason . add ( " Skills.Repair.SuperRepair_ChanceMax should be at least 1! " ) ;
}
if ( getSuperRepairMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Repair.SuperRepair_MaxBonusLevel should be at least 1! " ) ;
}
if ( getSalvageUnlockLevel ( ) < 1 ) {
reason . add ( " Skills.Repair.Salvage_UnlockLevel should be at least 1! " ) ;
}
2013-10-01 14:57:21 +02:00
List < ArcaneForging . Tier > arcaneForgingTierList = Arrays . asList ( ArcaneForging . Tier . values ( ) ) ;
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
for ( ArcaneForging . Tier tier : arcaneForgingTierList ) {
if ( getArcaneForgingRankLevel ( tier ) < 0 ) {
reason . add ( " Skills.Repair.Arcane_Forging.Rank_Levels.Rank_ " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getArcaneForgingDowngradeChance ( tier ) < 0 | | getArcaneForgingDowngradeChance ( tier ) > 100 ) {
reason . add ( " Skills.Repair.Arcane_Forging.Downgrades.Chance.Rank_ " + tier . toNumerical ( ) + " only accepts values from 0 to 100! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getArcaneForgingKeepEnchantsChance ( tier ) < 0 | | getArcaneForgingKeepEnchantsChance ( tier ) > 100 ) {
reason . add ( " Skills.Repair.Arcane_Forging.Keep_Enchants.Chance.Rank_ " + tier . toNumerical ( ) + " only accepts values from 0 to 100! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( tier ! = ArcaneForging . Tier . EIGHT ) {
ArcaneForging . Tier nextTier = arcaneForgingTierList . get ( arcaneForgingTierList . indexOf ( tier ) - 1 ) ;
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getArcaneForgingRankLevel ( tier ) > = getArcaneForgingRankLevel ( nextTier ) ) {
reason . add ( " Skills.Repair.Arcane_Forging.Rank_Levels.Rank_ " + tier . toNumerical ( ) + " should be less than Skills.Repair.Arcane_Forging.Rank_Levels.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getArcaneForgingDowngradeChance ( nextTier ) > getArcaneForgingDowngradeChance ( tier ) ) {
reason . add ( " Skills.Repair.ArcaneForging.Downgrades.Chance.Rank_ " + nextTier . toNumerical ( ) + " should be less than or equal to Skills.Repair.ArcaneForging.Downgrades.Chance.Rank_ " + tier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getArcaneForgingKeepEnchantsChance ( tier ) > getArcaneForgingKeepEnchantsChance ( nextTier ) ) {
reason . add ( " Skills.Repair.Arcane_Forging.Keep_Enchants.Chance.Rank_ " + tier . toNumerical ( ) + " should be less than or equal to Skills.Repair.Arcane_Forging.Keep_Enchants.Chance.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
}
2013-09-30 16:59:54 +02:00
}
2013-07-29 00:37:13 +02:00
/* SMELTING */
if ( getBurnModifierMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Smelting.FuelEfficiency_MaxBonusLevel should be at least 1! " ) ;
}
if ( getBurnTimeMultiplier ( ) < 1 ) {
reason . add ( " Skills.Smelting.FuelEfficiency_Multiplier should be at least 1! " ) ;
}
if ( getSecondSmeltMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Smelting.SecondSmelt_MaxBonusLevel should be at least 1! " ) ;
}
if ( getSecondSmeltMaxChance ( ) < 1 ) {
reason . add ( " Skills.Smelting.SecondSmelt_MaxBonusChance should be at least 1! " ) ;
}
if ( getFluxMiningUnlockLevel ( ) < 1 ) {
reason . add ( " Skills.Smelting.FluxMining_UnlockLevel should be at least 1! " ) ;
}
if ( getFluxMiningChance ( ) < 1 ) {
reason . add ( " Skills.Smelting.FluxMining_Chance should be at least 1! " ) ;
}
2013-10-01 14:57:21 +02:00
List < Smelting . Tier > smeltingTierList = Arrays . asList ( Smelting . Tier . values ( ) ) ;
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
for ( Smelting . Tier tier : smeltingTierList ) {
if ( getSmeltingVanillaXPBoostRankLevel ( tier ) < 0 ) {
reason . add ( " Skills.Smelting.VanillaXPBoost.Rank_Levels.Rank_ " + tier . toNumerical ( ) + " should be at least 0! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( getSmeltingVanillaXPBoostMultiplier ( tier ) < 1 ) {
reason . add ( " Skills.Smelting.VanillaXPBoost.XP_Multiplier.Rank_ " + tier . toNumerical ( ) + " should be at least 1! " ) ;
}
2013-09-30 16:59:54 +02:00
2013-10-01 14:57:21 +02:00
if ( tier ! = Smelting . Tier . EIGHT ) {
Smelting . Tier nextTier = smeltingTierList . get ( smeltingTierList . indexOf ( tier ) - 1 ) ;
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getSmeltingVanillaXPBoostRankLevel ( tier ) > = getSmeltingVanillaXPBoostRankLevel ( nextTier ) ) {
reason . add ( " Skills.Smelting.VanillaXPBoost.Rank_Levels.Rank_ " + tier . toNumerical ( ) + " should be less than Skills.Smelting.VanillaXPBoost.Rank_Levels.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
2013-07-29 00:37:13 +02:00
2013-10-01 14:57:21 +02:00
if ( getSmeltingVanillaXPBoostMultiplier ( tier ) > getSmeltingVanillaXPBoostRankLevel ( nextTier ) ) {
reason . add ( " Skills.Smelting.VanillaXPBoost.XP_Multiplier.Rank_ " + tier . toNumerical ( ) + " should be less than or equal to Skills.Smelting.VanillaXPBoost.XP_Multiplier.Rank_ " + nextTier . toNumerical ( ) + " ! " ) ;
}
}
2013-09-30 16:59:54 +02:00
}
2013-07-29 00:37:13 +02:00
/* SWORDS */
if ( getBleedChanceMax ( ) < 1 ) {
reason . add ( " Skills.Swords.Bleed_ChanceMax should be at least 1! " ) ;
}
if ( getBleedMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Swords.Bleed_MaxBonusLevel should be at least 1! " ) ;
}
if ( getBleedMaxTicks ( ) < 1 ) {
reason . add ( " Skills.Swords.Bleed_MaxTicks should be at least 1! " ) ;
}
if ( getBleedMaxTicks ( ) < getBleedBaseTicks ( ) ) {
reason . add ( " Skills.Swords.Bleed_MaxTicks should be at least Skills.Swords.Bleed_BaseTicks! " ) ;
}
if ( getBleedBaseTicks ( ) < 1 ) {
reason . add ( " Skills.Swords.Bleed_BaseTicks should be at least 1! " ) ;
}
if ( getCounterChanceMax ( ) < 1 ) {
reason . add ( " Skills.Swords.Counter_ChanceMax should be at least 1! " ) ;
}
if ( getCounterMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Swords.Counter_MaxBonusLevel should be at least 1! " ) ;
}
if ( getCounterModifier ( ) < 1 ) {
reason . add ( " Skills.Swords.Counter_DamageModifier should be at least 1! " ) ;
}
if ( getSerratedStrikesModifier ( ) < 1 ) {
reason . add ( " Skills.Swords.SerratedStrikes_DamageModifier should be at least 1! " ) ;
}
if ( getSerratedStrikesTicks ( ) < 1 ) {
reason . add ( " Skills.Swords.SerratedStrikes_BleedTicks should be at least 1! " ) ;
}
/* TAMING */
if ( getGoreChanceMax ( ) < 1 ) {
reason . add ( " Skills.Taming.Gore_ChanceMax should be at least 1! " ) ;
}
if ( getGoreMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Taming.Gore_MaxBonusLevel should be at least 1! " ) ;
}
if ( getGoreBleedTicks ( ) < 1 ) {
reason . add ( " Skills.Taming.Gore_BleedTicks should be at least 1! " ) ;
}
if ( getGoreModifier ( ) < 1 ) {
reason . add ( " Skills.Taming.Gore_Modifier should be at least 1! " ) ;
}
if ( getFastFoodUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.FastFood_UnlockLevel should be at least 1! " ) ;
}
if ( getFastFoodChance ( ) < 1 ) {
reason . add ( " Skills.Taming.FastFood_Chance should be at least 1! " ) ;
}
if ( getEnviromentallyAwareUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.EnvironmentallyAware_UnlockLevel should be at least 1! " ) ;
}
if ( getThickFurUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.ThickFur_UnlockLevel should be at least 1! " ) ;
}
if ( getThickFurModifier ( ) < 1 ) {
reason . add ( " Skills.Taming.ThickFur_Modifier should be at least 1! " ) ;
}
if ( getHolyHoundUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.HolyHound_UnlockLevel should be at least 1! " ) ;
}
if ( getShockProofUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.ShockProof_UnlockLevel should be at least 1! " ) ;
}
if ( getShockProofModifier ( ) < 1 ) {
reason . add ( " Skills.Taming.ShockProof_Modifier should be at least 1! " ) ;
}
if ( getSharpenedClawsUnlock ( ) < 1 ) {
reason . add ( " Skills.Taming.SharpenedClaws_UnlockLevel should be at least 1! " ) ;
}
if ( getSharpenedClawsBonus ( ) < 1 ) {
reason . add ( " Skills.Taming.SharpenedClaws_Bonus should be at least 1! " ) ;
}
/* UNARMED */
if ( getDisarmChanceMax ( ) < 1 ) {
reason . add ( " Skills.Unarmed.Disarm_ChanceMax should be at least 1! " ) ;
}
if ( getDisarmMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Unarmed.Disarm_MaxBonusLevel should be at least 1! " ) ;
}
if ( getDeflectChanceMax ( ) < 1 ) {
reason . add ( " Skills.Unarmed.Deflect_ChanceMax should be at least 1! " ) ;
}
if ( getDeflectMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Unarmed.Deflect_MaxBonusLevel should be at least 1! " ) ;
}
if ( getIronGripChanceMax ( ) < 1 ) {
reason . add ( " Skills.Unarmed.IronGrip_ChanceMax should be at least 1! " ) ;
}
if ( getIronGripMaxBonusLevel ( ) < 1 ) {
reason . add ( " Skills.Unarmed.IronGrip_MaxBonusLevel should be at least 1! " ) ;
}
2013-08-18 08:41:39 +02:00
if ( getIronArmMinBonus ( ) < 0 ) {
reason . add ( " Skills.Unarmed.IronArm_BonusMin should be at least 0! " ) ;
}
2013-07-29 00:37:13 +02:00
if ( getIronArmMaxBonus ( ) < 0 ) {
reason . add ( " Skills.Unarmed.IronArm_BonusMax should be at least 0! " ) ;
}
2013-08-18 08:41:39 +02:00
if ( getIronArmMaxBonus ( ) < getIronArmMinBonus ( ) ) {
reason . add ( " Skills.Unarmed.IronArm_BonusMax should be greater than or equal to Skills.Unarmed.IronArm_BonusMin! " ) ;
}
2013-07-29 00:37:13 +02:00
if ( getIronArmIncreaseLevel ( ) < 1 ) {
reason . add ( " Skills.Unarmed.IronArm_IncreaseLevel should be at least 1! " ) ;
}
/* WOODCUTTING */
if ( getLeafBlowUnlockLevel ( ) < 1 ) {
reason . add ( " Skills.Woodcutting.LeafBlower_UnlockLevel should be at least 1! " ) ;
}
if ( getWoodcuttingDoubleDropChance ( ) < 1 ) {
reason . add ( " Skills.Woodcutting.DoubleDrops_ChanceMax should be at least 1! " ) ;
}
if ( getWoodcuttingDoubleDropMaxLevel ( ) < 1 ) {
reason . add ( " Skills.Woodcutting.DoubleDrops_MaxBonusLevel should be at least 1! " ) ;
}
/* KRAKEN */
if ( getKrakenTriesBeforeRelease ( ) < 1 ) {
reason . add ( " Kraken.Tries_Before_Release should be at least 1! " ) ;
}
if ( getKrakenHealth ( ) < 1 ) {
reason . add ( " Kraken.Health should be at least 1! " ) ;
}
if ( getKrakenAttackInterval ( ) < 1 ) {
reason . add ( " Kraken.Attack_Interval_Seconds should be at least 1! " ) ;
}
if ( getKrakenAttackDamage ( ) < 1 ) {
reason . add ( " Kraken.Attack_Damage should be at least 1! " ) ;
}
2013-08-20 21:51:12 +02:00
return noErrorsInConfig ( reason ) ;
2013-07-29 00:37:13 +02:00
}
2013-02-22 19:39:47 +01:00
2013-08-20 21:51:12 +02:00
@Override
protected void loadKeys ( ) { }
2012-11-26 01:40:42 +01:00
/* GENERAL */
public int getAbilityLength ( ) { return config . getInt ( " Skills.General.Ability_IncreaseLevel " , 50 ) ; }
2013-07-29 00:37:13 +02:00
public int getEnchantBuff ( ) { return config . getInt ( " Skills.General.Ability_EnchantBuff " , 5 ) ; }
2012-12-24 22:56:25 +01:00
2012-11-21 21:49:54 +01:00
/* ACROBATICS */
2013-01-14 18:41:39 +01:00
public double getDodgeChanceMax ( ) { return config . getDouble ( " Skills.Acrobatics.Dodge_ChanceMax " , 20 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getDodgeMaxBonusLevel ( ) { return config . getInt ( " Skills.Acrobatics.Dodge_MaxBonusLevel " , 800 ) ; }
2013-09-12 20:18:13 +02:00
public double getDodgeDamageModifier ( ) { return config . getDouble ( " Skills.Acrobatics.Dodge_DamageModifier " , 2 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-01-14 18:41:39 +01:00
public double getRollChanceMax ( ) { return config . getDouble ( " Skills.Acrobatics.Roll_ChanceMax " , 100 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getRollMaxBonusLevel ( ) { return config . getInt ( " Skills.Acrobatics.Roll_MaxBonusLevel " , 1000 ) ; }
2013-09-12 20:18:13 +02:00
public double getRollDamageThreshold ( ) { return config . getDouble ( " Skills.Acrobatics.Roll_DamageThreshold " , 7 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-01-14 18:41:39 +01:00
public double getGracefulRollChanceMax ( ) { return config . getDouble ( " Skills.Acrobatics.GracefulRoll_ChanceMax " , 100 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getGracefulRollMaxBonusLevel ( ) { return config . getInt ( " Skills.Acrobatics.GracefulRoll_MaxBonusLevel " , 500 ) ; }
2013-09-12 20:18:13 +02:00
public double getGracefulRollDamageThreshold ( ) { return config . getDouble ( " Skills.Acrobatics.GracefulRoll_DamageThreshold " , 14 . 0D ) ; }
2012-11-21 21:49:54 +01:00
2012-11-26 01:40:42 +01:00
public int getDodgeXPModifier ( ) { return config . getInt ( " Skills.Acrobatics.Dodge_XP_Modifier " , 120 ) ; }
public int getRollXPModifier ( ) { return config . getInt ( " Skills.Acrobatics.Roll_XP_Modifier " , 80 ) ; }
public int getFallXPModifier ( ) { return config . getInt ( " Skills.Acrobatics.Fall_XP_Modifier " , 120 ) ; }
2012-12-24 22:56:25 +01:00
2013-10-07 15:53:32 +02:00
public double getFeatherFallXPModifier ( ) { return config . getDouble ( " Skills.Acrobatics.FeatherFall_Multiplier " , 2 . 0 ) ; }
2012-11-21 21:49:54 +01:00
/* ARCHERY */
2012-11-26 01:40:42 +01:00
public int getSkillShotIncreaseLevel ( ) { return config . getInt ( " Skills.Archery.SkillShot_IncreaseLevel " , 50 ) ; }
public double getSkillShotIncreasePercentage ( ) { return config . getDouble ( " Skills.Archery.SkillShot_IncreasePercentage " , 0 . 1D ) ; }
public double getSkillShotBonusMax ( ) { return config . getDouble ( " Skills.Archery.SkillShot_MaxBonus " , 2 . 0D ) ; }
2013-09-11 17:33:49 +02:00
public double getSkillShotDamageMax ( ) { return config . getDouble ( " Skills.Archery.SkillShot_MaxDamage " , 9 . 0D ) ; }
2012-11-21 21:49:54 +01:00
2013-01-14 18:41:39 +01:00
public double getDazeBonusMax ( ) { return config . getDouble ( " Skills.Archery.Daze_MaxChance " , 50 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getDazeMaxBonusLevel ( ) { return config . getInt ( " Skills.Archery.Daze_MaxBonusLevel " , 1000 ) ; }
2013-09-12 20:18:13 +02:00
public double getDazeModifier ( ) { return config . getDouble ( " Skills.Archery.Daze_BonusDamage " , 4 . 0D ) ; }
2012-11-21 21:49:54 +01:00
2013-01-14 18:41:39 +01:00
public double getRetrieveChanceMax ( ) { return config . getDouble ( " Skills.Archery.Retrieve_MaxBonus " , 100 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getRetrieveMaxBonusLevel ( ) { return config . getInt ( " Skills.Archery.Retrieve_MaxBonusLevel " , 1000 ) ; }
2012-12-24 22:56:25 +01:00
2013-05-15 07:19:14 +02:00
public double getForceMultiplier ( ) { return config . getDouble ( " Skills.Archery.Force_Multiplier " , 2 . 0D ) ; }
2012-11-21 21:49:54 +01:00
/* AXES */
2013-09-12 20:18:13 +02:00
public double getBonusDamageAxesBonusMax ( ) { return config . getDouble ( " Skills.Axes.DamageIncrease_MaxBonus " , 4 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getBonusDamageAxesMaxBonusLevel ( ) { return config . getInt ( " Skills.Axes.DamageIncrease_MaxBonusLevel " , 200 ) ; }
2012-11-21 21:49:54 +01:00
2013-01-14 17:55:43 +01:00
public double getAxesCriticalChance ( ) { return config . getDouble ( " Skills.Axes.AxesCritical_MaxChance " , 37 . 50D ) ; }
2012-11-26 01:40:42 +01:00
public int getAxesCriticalMaxBonusLevel ( ) { return config . getInt ( " Skills.Axes.AxesCritical_MaxBonusLevel " , 750 ) ; }
2013-01-14 17:55:43 +01:00
public double getAxesCriticalPVPModifier ( ) { return config . getDouble ( " Skills.Axes.AxesCritical_PVP_Modifier " , 1 . 5D ) ; }
public double getAxesCriticalPVEModifier ( ) { return config . getDouble ( " Skills.Axes.AxesCritical_PVE_Modifier " , 2 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-01-14 18:41:39 +01:00
public double getGreaterImpactChance ( ) { return config . getDouble ( " Skills.Axes.GreaterImpact_Chance " , 25 . 0D ) ; }
2013-09-12 20:18:13 +02:00
public double getGreaterImpactModifier ( ) { return config . getDouble ( " Skills.Axes.GreaterImpact_KnockbackModifier " , 1 . 5D ) ; }
public double getGreaterImpactBonusDamage ( ) { return config . getDouble ( " Skills.Axes.GreaterImpact_BonusDamage " , 2 . 0D ) ; }
2012-12-02 22:54:03 +01:00
public int getArmorImpactIncreaseLevel ( ) { return config . getInt ( " Skills.Axes.ArmorImpact_IncreaseLevel " , 50 ) ; }
2013-02-26 21:59:16 +01:00
public double getImpactChance ( ) { return config . getDouble ( " Skills.Axes.ArmorImpact_Chance " , 25 . 0D ) ; }
2013-01-14 18:41:39 +01:00
public double getArmorImpactMaxDurabilityDamage ( ) { return config . getDouble ( " Skills.Axes.ArmorImpact_MaxPercentageDurabilityDamage " , 20 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-09-12 20:18:13 +02:00
public double getSkullSplitterModifier ( ) { return config . getDouble ( " Skills.Axes.SkullSplitter_DamagerModifier " , 2 . 0D ) ; }
2013-01-15 23:00:56 +01:00
2012-11-21 21:49:54 +01:00
/* EXCAVATION */
2012-11-26 01:40:42 +01:00
//Nothing to configure, everything is already configurable in config.yml
2012-12-24 22:56:25 +01:00
2012-11-21 21:49:54 +01:00
/* FISHING */
2013-10-01 14:57:21 +02:00
public int getFishingTierLevel ( Fishing . Tier tier ) { return config . getInt ( " Skills.Fishing.Rank_Levels.Rank_ " + tier . toNumerical ( ) ) ; }
public double getShakeChance ( Fishing . Tier tier ) { return config . getDouble ( " Skills.Fishing.Shake_Chance.Rank_ " + tier . toNumerical ( ) ) ; }
public int getFishingVanillaXPModifier ( Fishing . Tier tier ) { return config . getInt ( " Skills.Fishing.VanillaXPBoost.Rank_ " + tier . toNumerical ( ) ) ; }
2013-01-11 00:21:18 +01:00
2013-09-12 20:18:13 +02:00
public double getFishingMagicMultiplier ( ) { return config . getDouble ( " Skills.Fishing.MagicHunter_Multiplier " , 5 . 0D ) ; }
2013-01-13 13:05:53 +01:00
2013-01-22 06:47:56 +01:00
public int getFishermanDietRankChange ( ) { return config . getInt ( " Skills.Fishing.Fisherman_Diet_RankChange " , 200 ) ; }
2013-05-01 16:18:19 +02:00
public int getIceFishingUnlockLevel ( ) { return config . getInt ( " Skills.Fishing.Ice_Fishing_UnlockLevel " , 50 ) ; }
2012-11-21 21:49:54 +01:00
/* HERBALISM */
2013-01-22 06:47:56 +01:00
public int getFarmerDietRankChange ( ) { return config . getInt ( " Skills.Herbalism.Farmer_Diet_RankChange " , 200 ) ; }
2012-12-24 22:56:25 +01:00
2012-11-21 21:49:54 +01:00
public int getGreenThumbStageChange ( ) { return config . getInt ( " Skills.Herbalism.GreenThumb_StageChange " , 200 ) ; }
2013-01-22 07:52:34 +01:00
public double getGreenThumbChanceMax ( ) { return config . getDouble ( " Skills.Herbalism.GreenThumb_ChanceMax " , 100 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getGreenThumbMaxLevel ( ) { return config . getInt ( " Skills.Herbalism.GreenThumb_MaxBonusLevel " , 1500 ) ; }
2012-12-24 22:56:25 +01:00
2013-01-22 07:52:34 +01:00
public double getHerbalismDoubleDropsChanceMax ( ) { return config . getDouble ( " Skills.Herbalism.DoubleDrops_ChanceMax " , 100 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getHerbalismDoubleDropsMaxLevel ( ) { return config . getInt ( " Skills.Herbalism.DoubleDrops_MaxBonusLevel " , 1000 ) ; }
2012-12-24 22:56:25 +01:00
2013-01-22 07:52:34 +01:00
public double getHylianLuckChanceMax ( ) { return config . getDouble ( " Skills.Herbalism.HylianLuck_ChanceMax " , 10 . 0D ) ; }
2013-02-21 00:20:34 +01:00
public int getHylianLuckMaxLevel ( ) { return config . getInt ( " Skills.Herbalism.HylianLuck_MaxBonusLevel " , 1000 ) ; }
2013-01-22 07:52:34 +01:00
2013-02-25 15:58:25 +01:00
public double getShroomThumbChanceMax ( ) { return config . getDouble ( " Skills.Herbalism.ShroomThumb_ChanceMax " , 50 . 0D ) ; }
public int getShroomThumbMaxLevel ( ) { return config . getInt ( " Skills.Herbalism.ShroomThumb_MaxBonusLevel " , 1500 ) ; }
2012-11-21 21:49:54 +01:00
/* MINING */
2013-01-22 07:56:54 +01:00
public double getMiningDoubleDropChance ( ) { return config . getDouble ( " Skills.Mining.DoubleDrops_ChanceMax " , 100 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getMiningDoubleDropMaxLevel ( ) { return config . getInt ( " Skills.Mining.DoubleDrops_MaxBonusLevel " , 1000 ) ; }
2013-10-01 14:57:21 +02:00
public int getBlastMiningRankLevel ( BlastMining . Tier tier ) { return config . getInt ( " Skills.Mining.BlastMining_Rank " + tier . toNumerical ( ) ) ; }
public double getBlastDamageDecrease ( BlastMining . Tier tier ) { return config . getDouble ( " Skills.Mining.BlastDamageDecrease_Rank " + tier . toNumerical ( ) ) ; }
public double getOreBonus ( BlastMining . Tier tier ) { return config . getDouble ( " Skills.Mining.OreBonus_Rank " + tier . toNumerical ( ) ) ; }
public double getDebrisReduction ( BlastMining . Tier tier ) { return config . getDouble ( " Skills.Mining.DebrisReduction_Rank " + tier . toNumerical ( ) ) ; }
public int getDropMultiplier ( BlastMining . Tier tier ) { return config . getInt ( " Skills.Mining.DropMultiplier_Rank " + tier . toNumerical ( ) ) ; }
public double getBlastRadiusModifier ( BlastMining . Tier tier ) { return config . getDouble ( " Skills.Mining.BlastRadiusModifier_Rank " + tier . toNumerical ( ) ) ; }
2013-02-27 21:45:15 +01:00
2012-11-21 21:49:54 +01:00
/* REPAIR */
2013-01-22 18:26:35 +01:00
public double getRepairMasteryMaxBonus ( ) { return config . getDouble ( " Skills.Repair.RepairMastery_MaxBonusPercentage " , 200 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getRepairMasteryMaxLevel ( ) { return config . getInt ( " Skills.Repair.RepairMastery_MaxBonusLevel " , 1000 ) ; }
2013-01-22 18:26:35 +01:00
public double getSuperRepairChanceMax ( ) { return config . getDouble ( " Skills.Repair.SuperRepair_ChanceMax " , 100 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getSuperRepairMaxLevel ( ) { return config . getInt ( " Skills.Repair.SuperRepair_MaxBonusLevel " , 1000 ) ; }
2013-03-06 17:05:41 +01:00
public int getSalvageUnlockLevel ( ) { return config . getInt ( " Skills.Repair.Salvage_UnlockLevel " , 600 ) ; }
2012-12-24 22:56:25 +01:00
2013-01-11 00:21:18 +01:00
/* Arcane Forging */
2013-10-01 14:57:21 +02:00
public int getArcaneForgingRankLevel ( ArcaneForging . Tier tier ) { return config . getInt ( " Skills.Repair.Arcane_Forging.Rank_Levels.Rank_ " + tier . toNumerical ( ) ) ; }
2013-09-12 20:18:13 +02:00
2013-01-11 00:21:18 +01:00
public boolean getArcaneForgingEnchantLossEnabled ( ) { return config . getBoolean ( " Skills.Repair.Arcane_Forging.May_Lose_Enchants " , true ) ; }
2013-10-01 14:57:21 +02:00
public double getArcaneForgingKeepEnchantsChance ( ArcaneForging . Tier tier ) { return config . getDouble ( " Skills.Repair.Arcane_Forging.Keep_Enchants_Chance.Rank_ " + tier . toNumerical ( ) ) ; }
2013-09-30 16:59:54 +02:00
public boolean getArcaneForgingDowngradeEnabled ( ) { return config . getBoolean ( " Skills.Repair.Arcane_Forging.Downgrades_Enabled " , true ) ; }
2013-10-01 14:57:21 +02:00
public double getArcaneForgingDowngradeChance ( ArcaneForging . Tier tier ) { return config . getDouble ( " Skills.Repair.Arcane_Forging.Downgrades_Chance.Rank_ " + tier . toNumerical ( ) ) ; }
2013-01-11 00:21:18 +01:00
2013-01-23 23:07:26 +01:00
/* SMELTING */
public int getBurnModifierMaxLevel ( ) { return config . getInt ( " Skills.Smelting.FuelEfficiency_MaxBonusLevel " , 1000 ) ; }
public double getBurnTimeMultiplier ( ) { return config . getDouble ( " Skills.Smelting.FuelEfficiency_Multiplier " , 3 . 0D ) ; }
public int getSecondSmeltMaxLevel ( ) { return config . getInt ( " Skills.Smelting.SecondSmelt_MaxBonusLevel " , 1000 ) ; }
public double getSecondSmeltMaxChance ( ) { return config . getDouble ( " Skills.Smelting.SecondSmelt_MaxBonusChance " , 100 . 0D ) ; }
public int getFluxMiningUnlockLevel ( ) { return config . getInt ( " Skills.Smelting.FluxMining_UnlockLevel " , 250 ) ; }
public double getFluxMiningChance ( ) { return config . getDouble ( " Skills.Smelting.FluxMining_Chance " , 33 . 0D ) ; }
2013-10-01 14:57:21 +02:00
public int getSmeltingVanillaXPBoostRankLevel ( Smelting . Tier tier ) { return config . getInt ( " Skills.Smelting.VanillaXPBoost.Rank_Levels.Rank_ " + tier . toNumerical ( ) ) ; }
public int getSmeltingVanillaXPBoostMultiplier ( Smelting . Tier tier ) { return config . getInt ( " Skills.Smelting.VanillaXPBoost.XP_Multiplier.Rank_ " + tier . toNumerical ( ) ) ; }
2013-01-23 23:07:26 +01:00
2012-11-21 21:49:54 +01:00
/* SWORDS */
2013-01-22 16:48:10 +01:00
public double getBleedChanceMax ( ) { return config . getDouble ( " Skills.Swords.Bleed_ChanceMax " , 75 . 0D ) ; }
2012-12-31 18:40:15 +01:00
public int getBleedMaxBonusLevel ( ) { return config . getInt ( " Skills.Swords.Bleed_MaxBonusLevel " , 750 ) ; }
public int getBleedMaxTicks ( ) { return config . getInt ( " Skills.Swords.Bleed_MaxTicks " , 3 ) ; }
public int getBleedBaseTicks ( ) { return config . getInt ( " Skills.Swords.Bleed_BaseTicks " , 2 ) ; }
2012-11-21 21:49:54 +01:00
2013-08-20 23:23:49 +02:00
public boolean getCounterRequiresBlock ( ) { return config . getBoolean ( " Skills.Swords.Counter_RequiresBlock " ) ; }
2013-01-22 16:48:10 +01:00
public double getCounterChanceMax ( ) { return config . getDouble ( " Skills.Swords.Counter_ChanceMax " , 30 . 0D ) ; }
2012-12-31 18:40:15 +01:00
public int getCounterMaxBonusLevel ( ) { return config . getInt ( " Skills.Swords.Counter_MaxBonusLevel " , 600 ) ; }
2013-09-12 20:18:13 +02:00
public double getCounterModifier ( ) { return config . getDouble ( " Skills.Swords.Counter_DamageModifier " , 2 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-09-12 20:18:13 +02:00
public double getSerratedStrikesModifier ( ) { return config . getDouble ( " Skills.Swords.SerratedStrikes_DamageModifier " , 4 . 0D ) ; }
2012-12-31 18:40:15 +01:00
public int getSerratedStrikesTicks ( ) { return config . getInt ( " Skills.Swords.SerratedStrikes_BleedTicks " , 5 ) ; }
2013-01-13 13:05:53 +01:00
2012-11-21 21:49:54 +01:00
/* TAMING */
2013-09-12 20:18:13 +02:00
public double getGoreChanceMax ( ) { return config . getDouble ( " Skills.Taming.Gore_ChanceMax " , 100 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getGoreMaxBonusLevel ( ) { return config . getInt ( " Skills.Taming.Gore_MaxBonusLevel " , 1000 ) ; }
public int getGoreBleedTicks ( ) { return config . getInt ( " Skills.Taming.Gore_BleedTicks " , 2 ) ; }
2013-09-12 20:18:13 +02:00
public double getGoreModifier ( ) { return config . getDouble ( " Skills.Taming.Gore_Modifier " , 2 . 0D ) ; }
2012-11-21 21:49:54 +01:00
2012-11-26 01:40:42 +01:00
public int getFastFoodUnlock ( ) { return config . getInt ( " Skills.Taming.FastFood_UnlockLevel " , 50 ) ; }
2013-09-12 20:18:13 +02:00
public double getFastFoodChance ( ) { return config . getDouble ( " Skills.Taming.FastFood_Chance " , 50 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2012-11-26 01:40:42 +01:00
public int getEnviromentallyAwareUnlock ( ) { return config . getInt ( " Skills.Taming.EnvironmentallyAware_UnlockLevel " , 100 ) ; }
2012-11-21 21:49:54 +01:00
2012-11-26 01:40:42 +01:00
public int getThickFurUnlock ( ) { return config . getInt ( " Skills.Taming.ThickFur_UnlockLevel " , 250 ) ; }
2013-09-12 20:18:13 +02:00
public double getThickFurModifier ( ) { return config . getDouble ( " Skills.Taming.ThickFur_Modifier " , 2 . 0D ) ; }
2012-12-24 22:56:25 +01:00
2013-02-23 00:47:34 +01:00
public int getHolyHoundUnlock ( ) { return config . getInt ( " Skills.Taming.HolyHound_UnlockLevel " , 375 ) ; }
2012-11-26 01:40:42 +01:00
public int getShockProofUnlock ( ) { return config . getInt ( " Skills.Taming.ShockProof_UnlockLevel " , 500 ) ; }
2013-09-12 20:18:13 +02:00
public double getShockProofModifier ( ) { return config . getDouble ( " Skills.Taming.ShockProof_Modifier " , 6 . 0D ) ; }
2012-11-21 21:49:54 +01:00
2012-11-26 01:40:42 +01:00
public int getSharpenedClawsUnlock ( ) { return config . getInt ( " Skills.Taming.SharpenedClaws_UnlockLevel " , 750 ) ; }
2013-09-12 20:18:13 +02:00
public double getSharpenedClawsBonus ( ) { return config . getDouble ( " Skills.Taming.SharpenedClaws_Bonus " , 2 . 0D ) ; }
2013-01-13 13:05:53 +01:00
2012-11-21 21:49:54 +01:00
/* UNARMED */
2013-01-22 17:18:12 +01:00
public double getDisarmChanceMax ( ) { return config . getDouble ( " Skills.Unarmed.Disarm_ChanceMax " , 33 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getDisarmMaxBonusLevel ( ) { return config . getInt ( " Skills.Unarmed.Disarm_MaxBonusLevel " , 1000 ) ; }
2013-01-22 17:18:12 +01:00
public double getDeflectChanceMax ( ) { return config . getDouble ( " Skills.Unarmed.Deflect_ChanceMax " , 50 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getDeflectMaxBonusLevel ( ) { return config . getInt ( " Skills.Unarmed.Deflect_MaxBonusLevel " , 1000 ) ; }
2013-01-22 17:18:12 +01:00
public double getIronGripChanceMax ( ) { return config . getDouble ( " Skills.Unarmed.IronGrip_ChanceMax " , 100 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getIronGripMaxBonusLevel ( ) { return config . getInt ( " Skills.Unarmed.IronGrip_MaxBonusLevel " , 1000 ) ; }
2013-01-22 17:18:12 +01:00
2013-09-12 20:18:13 +02:00
public double getIronArmMinBonus ( ) { return config . getDouble ( " Skills.Unarmed.IronArm_BonusMin " , 3 . 0D ) ; }
public double getIronArmMaxBonus ( ) { return config . getDouble ( " Skills.Unarmed.IronArm_BonusMax " , 8 . 0D ) ; }
2012-11-26 01:40:42 +01:00
public int getIronArmIncreaseLevel ( ) { return config . getInt ( " Skills.Unarmed.IronArm_IncreaseLevel " , 50 ) ; }
2013-01-13 13:05:53 +01:00
2012-11-21 21:49:54 +01:00
/* WOODCUTTING */
public int getLeafBlowUnlockLevel ( ) { return config . getInt ( " Skills.Woodcutting.LeafBlower_UnlockLevel " , 100 ) ; }
2013-01-22 17:52:06 +01:00
public double getWoodcuttingDoubleDropChance ( ) { return config . getDouble ( " Skills.Woodcutting.DoubleDrops_ChanceMax " , 100 . 0D ) ; }
2012-11-21 21:49:54 +01:00
public int getWoodcuttingDoubleDropMaxLevel ( ) { return config . getInt ( " Skills.Woodcutting.DoubleDrops_MaxBonusLevel " , 1000 ) ; }
2012-12-24 22:56:25 +01:00
2013-05-02 13:56:29 +02:00
/* KRAKEN STUFF */
public boolean getKrakenEnabled ( ) { return config . getBoolean ( " Kraken.Enabled " , true ) ; }
2013-05-03 13:48:50 +02:00
public boolean getKrakenGlobalSoundsEnabled ( ) { return config . getBoolean ( " Kraken.Global_Sounds " , true ) ; }
2013-05-14 18:42:18 +02:00
public boolean getKrakenEscapeAllowed ( ) { return config . getBoolean ( " Kraken.Allow_Escaping " , false ) ; }
2013-05-02 13:56:29 +02:00
public int getKrakenTriesBeforeRelease ( ) { return config . getInt ( " Kraken.Tries_Before_Release " , 50 ) ; }
2013-09-12 20:18:13 +02:00
public double getKrakenHealth ( ) { return config . getDouble ( " Kraken.Health " , 50 . 0D ) ; }
2013-05-02 13:56:29 +02:00
public String getKrakenName ( ) { return config . getString ( " Kraken.Name " , " The Kraken " ) ; }
2013-09-12 21:53:43 +02:00
public String getServerUnleashMessage ( ) { return config . getString ( " Kraken.Unleashed_Message.Server " , " " ) ; }
public String getPlayerUnleashMessage ( ) { return config . getString ( " Kraken.Unleashed_Message.Player " , " " ) ; }
public String getPlayerDefeatMessage ( ) { return config . getString ( " Kraken.Defeated_Message.Killed " , " " ) ; }
public String getPlayerEscapeMessage ( ) { return config . getString ( " Kraken.Defeated_Message.Escape " , " " ) ; }
2013-05-02 13:56:29 +02:00
public int getKrakenAttackInterval ( ) { return config . getInt ( " Kraken.Attack_Interval_Seconds " , 1 ) ; }
2013-09-12 20:18:13 +02:00
public double getKrakenAttackDamage ( ) { return config . getDouble ( " Kraken.Attack_Damage " , 1 . 0D ) ; }
2012-11-21 21:49:54 +01:00
}