diff --git a/src/main/java/com/gmail/nossr50/config/Config.java b/src/main/java/com/gmail/nossr50/config/Config.java new file mode 100644 index 000000000..f8600bdaa --- /dev/null +++ b/src/main/java/com/gmail/nossr50/config/Config.java @@ -0,0 +1,450 @@ +package com.gmail.nossr50.config; + +import com.gmail.nossr50.mcMMO; +import com.gmail.nossr50.datatypes.HUDType; + +public class Config extends ConfigLoader{ + + /* + * GENERAL SETTINGS + */ + + /* General Settings */ + public static String locale; + public static Boolean enableMotd, statsTracking, eventCallback; + public static int saveInterval; + + /* mySQL */ + public static boolean getUseMySQL() { return config.getBoolean("MySQL.Enabled", false); } + public static String getMySQLTablePrefix() { return config.getString("MySQL.Database.TablePrefix", "mcmmo_"); } + public static String getMySQLDatabaseName() { return config.getString("MySQL.Database.Name", "DatabaseName"); } + public static String getMySQLUserName() { return config.getString("MySQL.Database.User_Name", "UserName"); } //Really should be labeled under MySQL.User_Name instead... + public static int getMySQLServerPort() { return config.getInt("MySQL.Server.Port", 3306); } + public static String getMySQLServerName() { return config.getString("MySQL.Server.Address", "localhost"); } + public static String getMySQLUserPassword() { + if (config.getString("MySQL.Database.User_Password", null) != null) { + return config.getString("MySQL.Database.User_Password", null); + } + else { + return ""; + } + } + + /* Commands */ + public static Boolean xplockEnable, xprateEnable, mccEnable, mcmmoEnable, + partyEnable, inviteEnable, acceptEnable, inspectEnable, + mcstatsEnable, addxpEnable, ptpEnable, mmoeditEnable, + mcremoveEnable, mcgodEnable, mcabilityEnable, mctopEnable, + addlevelsEnable, mcrefreshEnable, aEnable, pEnable; + public static int ptpCommandCooldown; + public static Boolean donateMessage; + + /* Tool Level Requirements */ + public static Boolean perLevelTools; + public static int sAxe, sHoe, sShovel, sSword, sPickaxe; + public static int iAxe, iHoe, iShovel, iSword, iPickaxe; + public static int gAxe, gHoe, gShovel, gSword, gPickaxe; + public static int dAxe, dHoe, dShovel, dSword, dPickaxe; + + /* Items */ + public static Boolean chimaeraWingEnable; + public static int chimaeraId, feathersConsumedByChimaeraWing; + + /* + * ABILITY SETTINGS + */ + + /* General Settings */ + public static Boolean enableOnlyActivateWhenSneaking, enableAbilityMessages, enableAbilities; + + /* Durability Settings */ + public static Boolean toolsLoseDurabilityFromAbilities; + public static int abilityDurabilityLoss; + + /* Cooldowns */ + public static int superBreakerCooldown, blastMiningCooldown, greenTerraCooldown, + gigaDrillBreakerCooldown, treeFellerCooldown, berserkCooldown, + serratedStrikeCooldown, skullSplitterCooldown; + + /* Thresholds */ + public static int treeFellerThreshold; + + /* + * SKILL SETTINGS + */ + + /* Tool Requirements */ + public static Boolean miningrequirespickaxe, excavationRequiresShovel, woodcuttingrequiresaxe; + + /* Excavation */ + public static int mbase; + + /* Fishing */ + public static Boolean fishingDrops; + public static int fishingTier1, fishingTier2, fishingTier3, fishingTier4, fishingTier5; + public static int mfishing; + + /* Herbalism */ + public static Boolean herbalismHungerBonus, wheatRegrowth; + public static int mmelon, mcactus, mmushroom, mflower, msugar, mpumpkin, mwheat, mvines, mlilypad, mnetherwart; + public static Boolean enableCobbleToMossy, enableSmoothToMossy, enableDirtToGrass; + + /* Mining */ + public static int msandstone, mgold, mdiamond, miron, mredstone, mlapis, mobsidian, mnetherrack, mglowstone, mcoal, mstone, mendstone, mmossstone; + public static int detonatorID; + + /* Repair */ + public static Boolean repairArmor, repairTools; + public static Boolean anvilmessages; + public static int rWood, rStone, rIron, rGold, rDiamond, rString, rLeather; + public static int anvilID; + public static int repairStoneLevel, repairIronLevel, repairGoldLevel, repairDiamondLevel, repairStringLevel; + + /* Taming */ + public static int mtameWolf, mtameOcelot; + public static int bonesConsumedByCOTW, fishConsumedByCOTW; + + /* Woodcutting */ + public static int moak, mbirch, mspruce, mjungle; + + /* Arcane Forging */ + public static Boolean mayDowngradeEnchants, mayLoseEnchants; + public static int arcaneRank1, arcaneRank2, arcaneRank3, arcaneRank4; + public static int downgradeRank1, downgradeRank2, downgradeRank3, downgradeRank4; + public static int keepEnchantsRank1, keepEnchantsRank2, keepEnchantsRank3, keepEnchantsRank4; + + /* Level Caps */ + public static int getLevelCapAcrobatics() { return config.getInt("Skills.Acrobatics.Level_Cap", 0); } + public static int getLevelCapArchery() { return config.getInt("Skills.Archery.Level_Cap", 0); } + public static int getLevelCapAxes() { return config.getInt("Skills.Axes.Level_Cap", 0); } + public static int getLevelCapExcavation() { return config.getInt("Skills.Excavation.Level_Cap", 0); } + public static int getLevelCapFishing() { return config.getInt("Skills.Fishing.Level_Cap", 0); } + public static int getLevelCapHerbalism() { return config.getInt("Skills.Herbalism.Level_Cap", 0); } + public static int getLevelCapMining() { return config.getInt("Skills.Mining.Level_Cap", 0); } + public static int getLevelCapRepair() { return config.getInt("Skills.Repair.Level_Cap", 0); } + public static int getLevelCapSwords() { return config.getInt("Skills.Swords.Level_Cap", 0); } + public static int getLevelCapTaming() { return config.getInt("Skills.Taming.Level_Cap", 0); } + public static int getLevelCapUnarmed() { return config.getInt("Skills.Unarmed.Level_Cap", 0); } + public static int getLevelCapWoodcutting() { return config.getInt("Skills.Woodcutting.Level_Cap", 0); } + public static int getPowerLevelCap() { return config.getInt("General.Power_Level_Cap", 0); } + + /* + * XP SETTINGS + */ + + /* General Settings */ + public static Boolean xpGainsMobSpawners, pvpxp; + public static int xpGainMultiplier; + + /* Combat XP Multipliers */ + public static double getPlayerVersusPlayerXP() { return config.getDouble("Experience.Gains.Multiplier.PVP", 1.0); } + + public static double getAnimalsXP() { return config.getDouble("Experience.Combat.Multiplier.Animals", 1.0); } + public static double getCreeperXP() { return config.getDouble("Experience.Combat.Multiplier.Creeper", 4.0); } + public static double getSkeletonXP() { return config.getDouble("Experience.Combat.Multiplier.Skeleton", 2.0); } + public static double getSpiderXP() { return config.getDouble("Experience.Combat.Multiplier.Spider", 3.0); } + public static double getGhastXP() { return config.getDouble("Experience.Combat.Multiplier.Ghast", 3.0); } + public static double getSlimeXP() { return config.getDouble("Experience.Combat.Multiplier.Slime", 2.0); } + public static double getZombieXP() { return config.getDouble("Experience.Combat.Multiplier.Zombie", 2.0); } + public static double getPigZombieXP() { return config.getDouble("Experience.Combat.Multiplier.Pig_Zombie", 3.0); } + public static double getEndermanXP() { return config.getDouble("Experience.Combat.Multiplier.Enderman", 2.0); } + public static double getCaveSpiderXP() { return config.getDouble("Experience.Combat.Multiplier.Cave_Spider", 3.0); } + public static double getSilverfishXP() { return config.getDouble("Experience.Combat.Multiplier.Silverfish", 3.0); } + public static double getBlazeXP() { return config.getDouble("Experience.Combat.Multiplier.Blaze", 3.0); } + public static double getMagmaCubeXP() { return config.getDouble("Experience.Combat.Multiplier.Magma_Cube", 2.0); } + public static double getEnderDragonXP() { return config.getDouble("Experience.Combat.Multiplier.Ender_Dragon", 8.0); } + public static double getIronGolemXP() { return config.getDouble("Experience.Combat.Multiplier.Iron_Golem", 2.0); } + + /* XP Formula Multiplier */ + public static double getFormulaMultiplierTaming() { return config.getDouble("Experience.Formula.Multiplier.Taming", 1.0); } + public static double getFormulaMultiplierMining() { return config.getDouble("Experience.Formula.Multiplier.Mining", 1.0); } + public static double getFormulaMultiplierRepair() { return config.getDouble("Experience.Formula.Multiplier.Repair", 1.0); } + public static double getFormulaMultiplierWoodcutting() { return config.getDouble("Experience.Formula.Multiplier.Woodcutting", 1.0); } + public static double getFormulaMultiplierUnarmed() { return config.getDouble("Experience.Formula.Multiplier.Unarmed", 1.0); } + public static double getFormulaMultiplierHerbalism() { return config.getDouble("Experience.Formula.Multiplier.Herbalism", 1.0); } + public static double getFormulaMultiplierExcavation() { return config.getDouble("Experience.Formula.Multiplier.Excavation", 1.0); } + public static double getFormulaMultiplierArchery() { return config.getDouble("Experience.Formula.Multiplier.Archery", 1.0); } + public static double getFormulaMultiplierSwords() { return config.getDouble("Experience.Formula.Multiplier.Swords", 1.0); } + public static double getFormulaMultiplierAxes() { return config.getDouble("Experience.Formula.Multiplier.Axes", 1.0); } + public static double getFormulaMultiplierAcrobatics() { return config.getDouble("Experience.Formula.Multiplier.Acrobatics", 1.0); } + public static double getFormulaMultiplierFishing() { return config.getDouble("Experience.Formula.Multiplier.Fishing", 1.0); } + + /* + * SPOUT SETTINGS + */ + + public static boolean spoutEnabled; + public static boolean getShowPowerLevelForSpout() { return config.getBoolean("Spout.HUD.Show_Power_Level", true); } + + /* Spout Party HUD */ + public static Boolean showDisplayName, showFaces, partybar; + + /* Spout XP Bar */ + public static Boolean xpbar, xpicon; + public static int xpbar_x, xpbar_y, xpicon_x, xpicon_y; + + /* Spout HUD Colors */ + public static double getSpoutRetroHUDXPBorderRed() { return config.getDouble("Spout.HUD.Retro.Colors.Border.RED", 0.0); } + public static double getSpoutRetroHUDXPBorderGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Border.GREEN", 0.0); } + public static double getSpoutRetroHUDXPBorderBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Border.BLUE", 0.0); } + public static double getSpoutRetroHUDXPBackgroundRed() { return config.getDouble("Spout.HUD.Retro.Colors.Background.RED", 0.75); } + public static double getSpoutRetroHUDXPBackgroundGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Background.GREEN", 0.75); } + public static double getSpoutRetroHUDXPBackgroundBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Background.BLUE", 0.75); } + + public static double getSpoutRetroHUDAcrobaticsRed() { return config.getDouble("Spout.HUD.Retro.Colors.Acrobatics.RED", 0.3); } + public static double getSpoutRetroHUDAcrobaticsGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Acrobatics.GREEN", 0.3); } + public static double getSpoutRetroHUDAcrobaticsBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Acrobatics.BLUE", 0.75); } + public static double getSpoutRetroHUDArcheryRed() { return config.getDouble("Spout.HUD.Retro.Colors.Archery.RED", 0.3); } + public static double getSpoutRetroHUDArcheryGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Archery.GREEN", 0.3); } + public static double getSpoutRetroHUDArcheryBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Archery.BLUE", 0.75); } + public static double getSpoutRetroHUDAxesRed() { return config.getDouble("Spout.HUD.Retro.Colors.Axes.RED", 0.3); } + public static double getSpoutRetroHUDAxesGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Axes.GREEN", 0.3); } + public static double getSpoutRetroHUDAxesBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Axes.BLUE", 0.75); } + public static double getSpoutRetroHUDExcavationRed() { return config.getDouble("Spout.HUD.Retro.Colors.Excavation.RED", 0.3); } + public static double getSpoutRetroHUDExcavationGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Excavation.GREEN", 0.3); } + public static double getSpoutRetroHUDExcavationBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Excavation.BLUE", 0.75); } + public static double getSpoutRetroHUDHerbalismRed() { return config.getDouble("Spout.HUD.Retro.Colors.Herbalism.RED", 0.3); } + public static double getSpoutRetroHUDHerbalismGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Herbalism.GREEN", 0.3); } + public static double getSpoutRetroHUDHerbalismBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Herbalism.BLUE", 0.75); } + public static double getSpoutRetroHUDMiningRed() { return config.getDouble("Spout.HUD.Retro.Colors.Mining.RED", 0.3); } + public static double getSpoutRetroHUDMiningGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Mining.GREEN", 0.3); } + public static double getSpoutRetroHUDMiningBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Mining.BLUE", 0.75); } + public static double getSpoutRetroHUDRepairRed() { return config.getDouble("Spout.HUD.Retro.Colors.Repair.RED", 0.3); } + public static double getSpoutRetroHUDRepairGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Repair.GREEN", 0.3); } + public static double getSpoutRetroHUDRepairBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Repair.BLUE", 0.75); } + public static double getSpoutRetroHUDSwordsRed() { return config.getDouble("Spout.HUD.Retro.Colors.Swords.RED", 0.3); } + public static double getSpoutRetroHUDSwordsGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Swords.GREEN", 0.3); } + public static double getSpoutRetroHUDSwordsBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Swords.BLUE", 0.75); } + public static double getSpoutRetroHUDTamingRed() { return config.getDouble("Spout.HUD.Retro.Colors.Taming.RED", 0.3); } + public static double getSpoutRetroHUDTamingGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Taming.GREEN", 0.3); } + public static double getSpoutRetroHUDTamingBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Taming.BLUE", 0.75); } + public static double getSpoutRetroHUDUnarmedRed() { return config.getDouble("Spout.HUD.Retro.Colors.Unarmed.RED", 0.3); } + public static double getSpoutRetroHUDUnarmedGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Unarmed.GREEN", 0.3); } + public static double getSpoutRetroHUDUnarmedBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Unarmed.BLUE", 0.75); } + public static double getSpoutRetroHUDWoodcuttingRed() { return config.getDouble("Spout.HUD.Retro.Colors.Woodcutting.RED", 0.3); } + public static double getSpoutRetroHUDWoodcuttingGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Woodcutting.GREEN", 0.3); } + public static double getSpoutRetroHUDWoodcuttingBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Woodcutting.BLUE", 0.75); } + public static double getSpoutRetroHUDFishingRed() { return config.getDouble("Spout.HUD.Retro.Colors.Fishing.RED", 0.3); } + public static double getSpoutRetroHUDFishingGreen() { return config.getDouble("Spout.HUD.Retro.Colors.Fishing.GREEN", 0.3); } + public static double getSpoutRetroHUDFishingBlue() { return config.getDouble("Spout.HUD.Retro.Colors.Fishing.BLUE", 0.75); } + + /* + * CONFIG LOADING + */ + + public static HUDType defaulthud; + + public Config(mcMMO plugin) { + super(plugin, "config.yml"); + config = plugin.getConfig(); + } + + @Override + public void load() { + + // If it doesn't exist, copy it from the .jar + if (!configFile.exists()) { + dataFolder.mkdir(); + plugin.saveDefaultConfig(); + } + + addDefaults(); + loadKeys(); + } + + @Override + protected void loadKeys() { + plugin.getLogger().info("Loading mcMMO config.yml File..."); + + // Setup default HUD + String temp = config.getString("Spout.HUD.Default", "STANDARD"); + for (HUDType x : HUDType.values()) { + if (x.toString().equalsIgnoreCase(temp)) { + defaulthud = x; + } + } + + enableAbilityMessages = config.getBoolean("Abilities.Messages", true); + enableAbilities = config.getBoolean("Abilities.Enabled", true); + + donateMessage = config.getBoolean("Commands.mcmmo.Donate_Message", true); + xpGainsMobSpawners = config.getBoolean("Experience.Gains.Mobspawners.Enabled", false); + + bonesConsumedByCOTW = config.getInt("Skills.Taming.Call_Of_The_Wild.Bones_Required", 10); + fishConsumedByCOTW = config.getInt("Skills.Taming.Call_Of_The_Wild.Fish_Required", 10); + + xpbar = config.getBoolean("Spout.XP.Bar.Enabled", true); + xpicon = config.getBoolean("Spout.XP.Icon.Enabled", true); + xpbar_x = config.getInt("Spout.XP.Bar.X_POS", 95); + xpbar_y = config.getInt("Spout.XP.Bar.Y_POS", 6); + xpicon_x = config.getInt("Spout.XP.Icon.X_POS", 78); + xpicon_y = config.getInt("Spout.XP.Icon.Y_POS", 2); + + showFaces = config.getBoolean("Spout.Party.HUD.Show_Faces", true); + showDisplayName = config.getBoolean("Spout.Party.HUD.Show_Display_Name", false); + partybar = config.getBoolean("Spout.Party.HUD.Enabled", true); + + mbase = config.getInt("Experience.Excavation.Base", 40); + + msugar = config.getInt("Experience.Herbalism.Sugar_Cane", 30); + mwheat = config.getInt("Experience.Herbalism.Wheat", 50); + mcactus = config.getInt("Experience.Herbalism.Cactus", 30); + mpumpkin = config.getInt("Experience.Herbalism.Pumpkin", 20); + mflower = config.getInt("Experience.Herbalism.Flowers", 100); + mmushroom = config.getInt("Experience.Herbalism.Mushrooms", 150); + mmelon = config.getInt("Experience.Herbalism.Melon", 20); + mnetherwart = config.getInt("Experience.Herbalism.Nether_Wart", 50); + mlilypad = config.getInt("Experience.Herbalism.Lily_Pads", 100); + mvines = config.getInt("Experience.Herbalism.Vines", 10); + herbalismHungerBonus = config.getBoolean("Skills.Herbalism.Hunger_Bonus", true); + wheatRegrowth = config.getBoolean("Skills.Herbalism.Instant_Wheat_Regrowth", true); + + moak = config.getInt("Experience.Woodcutting.Oak", 70); + mbirch = config.getInt("Experience.Woodcutting.Birch", 90); + mspruce = config.getInt("Experience.Woodcutting.Spruce", 80); + mjungle = config.getInt("Experience.Woodcutting.Jungle", 100); + + mgold = config.getInt("Experience.Mining.Gold", 250); + mdiamond = config.getInt("Experience.Mining.Diamond", 750); + miron = config.getInt("Experience.Mining.Iron", 250); + mredstone = config.getInt("Experience.Mining.Redstone", 150); + mlapis = config.getInt("Experience.Mining.Lapis", 400); + mobsidian = config.getInt("Experience.Mining.Obsidian", 150); + mnetherrack = config.getInt("Experience.Mining.Netherrack", 30); + mglowstone = config.getInt("Experience.Mining.Glowstone", 30); + mcoal = config.getInt("Experience.Mining.Coal", 100); + mstone = config.getInt("Experience.Mining.Stone", 30); + msandstone = config.getInt("Experience.Mining.Sandstone", 30); + mendstone = config.getInt("Experience.Mining.End_Stone", 150); + mmossstone = config.getInt("Experience.Mining.Moss_Stone", 30); + + mtameWolf = config.getInt("Experience.Taming.Animal_Taming.Wolf", 250); + mtameOcelot = config.getInt("Experience.Taming.Animal_Taming.Ocelot", 500); + + mfishing = config.getInt("Experience.Fishing.Base", 800); + + enableOnlyActivateWhenSneaking = config.getBoolean("Abilities.Activation.Only_Activate_When_Sneaking", false); + + greenTerraCooldown = config.getInt("Abilities.Cooldowns.Green_Terra", 240); + superBreakerCooldown = config.getInt("Abilities.Cooldowns.Super_Breaker", 240); + gigaDrillBreakerCooldown = config.getInt("Abilities.Cooldowns.Giga_Drill_Breaker", 240); + treeFellerThreshold = config.getInt("Abilities.Limits.Tree_Feller_Threshold", 500); + treeFellerCooldown = config.getInt("Abilities.Cooldowns.Tree_Feller", 240); + berserkCooldown = config.getInt("Abilities.Cooldowns.Berserk", 240); + serratedStrikeCooldown = config.getInt("Abilities.Cooldowns.Serrated_Strikes", 240); + skullSplitterCooldown = config.getInt("Abilities.Cooldowns.Skull_Splitter", 240); + blastMiningCooldown = config.getInt("Abilities.Cooldowns.Blast_Mining", 60); + + locale = config.getString("General.Locale", "en_us"); + enableMotd = config.getBoolean("General.MOTD_Enabled", true); + saveInterval = config.getInt("General.Save_Interval", 10); + statsTracking = config.getBoolean("General.Stats_Tracking", true); + eventCallback = config.getBoolean("General.Event_Callback", true); + perLevelTools = config.getBoolean("General.Per_Level_Tools", false); + + enableCobbleToMossy = config.getBoolean("Skills.Herbalism.Green_Thumb.Cobble_To_Mossy", true); + enableSmoothToMossy = config.getBoolean("Skills.Herbalism.Green_Thumb.SmoothBrick_To_MossyBrick", true); + enableDirtToGrass = config.getBoolean("Skills.Herbalism.Green_Thumb.Dirt_To_Grass", true); + + xpGainMultiplier = config.getInt("Experience.Gains.Multiplier.Global", 1); + toolsLoseDurabilityFromAbilities = config.getBoolean("Abilities.Tools.Durability_Loss_Enabled", true); + abilityDurabilityLoss = config.getInt("Abilities.Tools.Durability_Loss", 2); + + feathersConsumedByChimaeraWing = config.getInt("Items.Chimaera_Wing.Feather_Cost", 10); + chimaeraId = config.getInt("Items.Chimaera_Wing.Item_ID", 288); + chimaeraWingEnable = config.getBoolean("Items.Chimaera_Wing.Enabled", true); + dAxe = config.getInt("Items.Diamond.Axe", 750); + dHoe = config.getInt("Items.Diamond.Hoe", 750); + dShovel = config.getInt("Items.Diamond.Shovel", 750); + dSword = config.getInt("Items.Diamond.Sword", 750); + dPickaxe = config.getInt("Items.Diamond.Pickaxe", 750); + gAxe = config.getInt("Items.Gold.Axe", 500); + gHoe = config.getInt("Items.Gold.Hoe", 500); + gShovel = config.getInt("Items.Gold.Shovel", 500); + gSword = config.getInt("Items.Gold.Sword", 500); + gPickaxe = config.getInt("Items.Gold.Pickaxe", 500); + iAxe = config.getInt("Items.Iron.Axe", 250); + iHoe = config.getInt("Items.Iron.Hoe", 250); + iShovel = config.getInt("Items.Iron.Shovel", 250); + iSword = config.getInt("Items.Iron.Sword", 250); + iPickaxe = config.getInt("Items.Iron.Pickaxe", 250); + sAxe = config.getInt("Items.Stone.Axe", 0); + sHoe = config.getInt("Items.Stone.Hoe", 0); + sShovel = config.getInt("Items.Stone.Shovel", 0); + sSword = config.getInt("Items.Stone.Sword", 0); + sPickaxe = config.getInt("Items.Stone.Pickaxe", 0); + + pvpxp = config.getBoolean("Experience.PVP.Rewards", true); + + miningrequirespickaxe = config.getBoolean("Skills.Mining.Requires_Pickaxe", true); + excavationRequiresShovel = config.getBoolean("Skills.Excavation.Requires_Shovel", true); + woodcuttingrequiresaxe = config.getBoolean("Skills.Woodcutting.Requires_Axe", true); + repairArmor = config.getBoolean("Skills.Repair.Can_Repair_Armor", true); + repairTools = config.getBoolean("Skills.Repair.Can_Repair_Tools", true); + repairDiamondLevel = config.getInt("Skills.Repair.Diamond.Level_Required", 50); + repairIronLevel = config.getInt("Skills.Repair.Iron.Level_Required", 0); + repairGoldLevel = config.getInt("Skills.Repair.Gold.Level_Required", 0); + repairStoneLevel = config.getInt("Skills.Repair.Stone.Level_Required", 0); + repairStringLevel = config.getInt("Skills.Repair.String.Level_Required", 0); + + + + anvilmessages = config.getBoolean("Skills.Repair.Anvil_Messages", true); + anvilID = config.getInt("Skills.Repair.Anvil_ID", 42); + + rGold = config.getInt("Skills.Repair.Gold.ID", 266); + rStone = config.getInt("Skills.Repair.Stone.ID", 4); + rWood = config.getInt("Skills.Repair.Wood.ID", 5); + rDiamond = config.getInt("Skills.Repair.Diamond.ID", 264); + rIron = config.getInt("Skills.Repair.Iron.ID", 265); + rString = config.getInt("Skills.Repair.String.ID", 287); + rLeather = config.getInt("Skills.Repair.Leather.ID", 334); + + mayDowngradeEnchants = config.getBoolean("Arcane_Forging.Downgrades.Enabled", true); + downgradeRank1 = config.getInt("Arcane_Forging.Downgrades.Chance.Rank_1", 75); + downgradeRank2 = config.getInt("Arcane_Forging.Downgrades.Chance.Rank_2", 50); + downgradeRank3 = config.getInt("Arcane_Forging.Downgrades.Chance.Rank_3", 25); + downgradeRank4 = config.getInt("Arcane_Forging.Downgrades.Chance.Rank_4", 15); + mayLoseEnchants = config.getBoolean("Arcane_Forging.May_Lose_Enchants", true); + keepEnchantsRank1 = config.getInt("Arcane_Forging.Keep_Enchants.Chance.Rank_1", 10); + keepEnchantsRank2 = config.getInt("Arcane_Forging.Keep_Enchants.Chance.Rank_2", 20); + keepEnchantsRank3 = config.getInt("Arcane_Forging.Keep_Enchants.Chance.Rank_3", 30); + keepEnchantsRank4 = config.getInt("Arcane_Forging.Keep_Enchants.Chance.Rank_4", 40); + arcaneRank1 = config.getInt("Arcane_Forging.Rank_Levels.Rank_1", 100); + arcaneRank2 = config.getInt("Arcane_Forging.Rank_Levels.Rank_2", 250); + arcaneRank3 = config.getInt("Arcane_Forging.Rank_Levels.Rank_3", 500); + arcaneRank4 = config.getInt("Arcane_Forging.Rank_Levels.Rank_4", 750); + + fishingDrops = config.getBoolean("Fishing.Drops_Enabled", true); + fishingTier1 = config.getInt("Fishing.Tier_Levels.Tier1", 0); + fishingTier2 = config.getInt("Fishing.Tier_Levels.Tier2", 200); + fishingTier3 = config.getInt("Fishing.Tier_Levels.Tier3", 400); + fishingTier4 = config.getInt("Fishing.Tier_Levels.Tier4", 600); + fishingTier5 = config.getInt("Fishing.Tier_Levels.Tier5", 800); + + xplockEnable = config.getBoolean("Commands.xplock.Enabled", true); + xprateEnable = config.getBoolean("Commands.xprate.Enabled", true); + mctopEnable = config.getBoolean("Commands.mctop.Enabled", true); + addxpEnable = config.getBoolean("Commands.addxp.Enabled", true); + addlevelsEnable = config.getBoolean("Commands.addlevels.Enabled", true); + mcabilityEnable = config.getBoolean("Commands.mcability.Enabled", true); + mcrefreshEnable = config.getBoolean("Commands.mcrefresh.Enabled", true); + mcmmoEnable = config.getBoolean("Commands.mcmmo.Enabled", true); + mccEnable = config.getBoolean("Commands.mcc.Enabled", true); + mcgodEnable = config.getBoolean("Commands.mcgod.Enabled", true); + mcstatsEnable = config.getBoolean("Commands.mcstats.Enabled", true); + mmoeditEnable = config.getBoolean("Commands.mmoedit.Enabled", true); + mcremoveEnable = config.getBoolean("Commands.mcremove.Enable", true); + ptpEnable = config.getBoolean("Commands.ptp.Enabled", true); + partyEnable = config.getBoolean("Commands.party.Enabled", true); + inspectEnable = config.getBoolean("Commands.inspect.Enabled", true); + inviteEnable = config.getBoolean("Commands.invite.Enabled", true); + acceptEnable = config.getBoolean("Commands.accept.Enabled", true); + aEnable = config.getBoolean("Commands.a.Enabled", true); + pEnable = config.getBoolean("Commands.p.Enabled", true); + + ptpCommandCooldown = config.getInt("Commands.ptp.Cooldown", 30); + + detonatorID = config.getInt("Skills.Mining.Detonator_ID", 259); + } +} \ No newline at end of file