diff --git a/Changelog.txt b/Changelog.txt index a498432cf..578abaf87 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -10,34 +10,72 @@ Key: Version 1.3.13-dev + Added Craftbukkit 1.4.6 compatibility + Added a configurable durability cap for ArmorImpact to advanced.yml - + Added version number to /mcmmo + + Added the version number to /mcmmo + + Added bats, giants, witches, withers, and wither skeletons to the mcMMO combat experience list, and makes their experience drops configurable + + Added the ability to track mobs spawned by mob spawners or the Taming ability when the chunks they are in unload and reload + + Added wooden button to the list of items that shouldn't trigger abilities = Fixed issue with missing default cases from several switch/case statements = Fixed issue with Mining using actual skill level rather than max skill level = Fixed some issues with static access = Fixed ItemStack deprecation issues = Fixed Async deprecation issues - = Fixed some issues with mySQL databases (non-alphanumeric characters preventing MySQL) - = Fixed skill commands displaying .x% instead of 0.x% - = Fixed Unbreaking enchantments being ignored when using Treefelling and when hit by Armor Impact + = Fixed a bug with MySQL databases (non-alphanumeric characters preventing MySQL access) + = Fixed a bug where the /skillreset command was broken + = Fixed a bug where skill commands displaying .x% instead of 0.x% + = Fixed a bug Unbreaking enchantments being ignored when using Treefelling and when hit by Armor Impact + = Fixed a bug where only 1 diamond was needed to fully repair a broken item: Repaired the Repair skill! + = Fixed a bug where a infinite loop of errors caused by mySQL database could cause the server to crash + = Fixed a bug where PartyChangeEvent was fired even when a player isn't able to change parties + = Fixed a bug which caused advanced.yml not to work for Swords + = Fixed a bug where Repair would remove enchantments but the glow effect remained + = Fixed a bug where dropped items did not retain custom NBT data + = Fixed a bug which caused a potentially infinite recursion in a btree structure + = Fixed a NPE with custom blocks ! GJ stopped being a lazy slacker and got stuff done + ! Changed code that uses SpoutPlugin to make it compatible with the latest version + ! Changed Reimplemented skill level and power level caps. - Removed dead code relating to null profiles - Removed unused imports Version 1.3.12 + Added Craftbukkit 1.4.5 compatibility + + Added the new 1.3.2 items, xp and double drops for Cocao beans & Emeralds, EnderChest to the list of blocks that shouldn't trigger abilities + Added new items from Minecraft 1.4 to Herbalism (potatoes & carrots) + + Added new configuration file for advanced users. + + Added new permission nodes to greenthumb for the 1.4 items + Added new mobs from Minecraft 1.4 checks for every ability + Added new active ability for Repair: Salvage + Added options to 'config.yml' configure shake chance + Added the option to negate experience earned for Herbalism while in a minecart to prevent afk leveling + Added Green thumb now converts cobble walls to mossy cobble walls + Added beacons and anvils to list of blocks that don't trigger abilities + + Added a configuration option to disable experience gains when in a minecraft for Acrobatics and Herbalism, to prevent AFK leveling + + Added a new passive ability for Fishing, Fishermans diet. Increases hunger restored from fish + + Added a feature to display all active perks on login ! Changed Fishing, Shake drops changed from guaranteed to based upon fishing level and perks ! Changed Woodcutting, the amount of experience earned when using Tree Feller on jungle trees has increased + ! Changed Herbalism double drop rates for melons and netherwart ! Changed filesystem usage, it's reduced a lot. Should help reduce lag on larger servers - = Fixed Woodcutting bug, excessive null chunk before earning Woodcutting experience - = Fixed a null pointer error related to skill cooldowns - = Fixed more NPE ?? Needs better explanation + ! Changed database connection handling. Support for aggressive connection timeouts, with exponential backoff for multiple failures + ! Changed Cobblestone walls are now mossy-able with Greenthumb + ! Changed the skull drop rates of the shake ability to 3% + = Fixed a NPE when Citizens perform certain tasks + = Fixed a NPE with Woodcutting, excessive null chunk before earning Woodcutting experience + = Fixed a NPE related to skill cooldowns + = Fixed a NPE when a players profile was null + = Fixed a NPE involving certain explosions + = Fixed a dupe bug when for players who were using a 'nuker' client + = Fixed a dupe bug where pistons were used to dupe ores + = Fixed a dupe bug with Salvage when players were in Creative mode + = Fixed a bug where the player was displayed an incorrect cooldown time + = Fixed a bug where players could earn experience when they were dealing 0 damage + = Fixed a bug where players could get double drops from mossified Cobblestone + = Fixed a bug where Herablism magically converted potatoes to carrots + = Fixed a bug where you couldn't modify the stats of offline players + = Fixed a bug where treefeller didn't work properly on tree's with side-way logs + = Fixed a bug where the Arcane forging downgrade chance should've been 0, but actually wasn't + = Fixed a bug where Fishing would sometimes give items with empty enchantments + = Fixed a bug where the lucky perk for Fishing was actually an unlucky perk - Removed nothing Version 1.3.11 diff --git a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java index f9a32ce3d..7ab839a42 100644 --- a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java +++ b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java @@ -99,17 +99,17 @@ public class AdvancedConfig extends ConfigLoader { public int getSuperRepairMaxLevel() { return config.getInt("Skills.Repair.SuperRepair_MaxBonusLevel", 1000); } /* SWORDS */ - public int getBleedChanceMax() { return config.getInt("Skills.Sword.Bleed_ChanceMax", 75); } - public int getBleedMaxBonusLevel() { return config.getInt("Skills.Sword.Bleed_MaxBonusLevel", 750); } - public int getBleedMaxTicks() { return config.getInt("Skills.Sword.Bleed_MaxTicks", 3); } - public int getBleedBaseTicks() { return config.getInt("Skills.Sword.Bleed_BaseTicks", 2); } + public int getBleedChanceMax() { return config.getInt("Skills.Swords.Bleed_ChanceMax", 75); } + 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); } - public int getCounterChanceMax() { return config.getInt("Skills.Sword.Counter_ChanceMax", 30); } - public int getCounterMaxBonusLevel() { return config.getInt("Skills.Sword.Counter_MaxBonusLevel", 600); } - public int getCounterModifier() { return config.getInt("Skills.Sword.Counter_DamageModifier", 2); } + public int getCounterChanceMax() { return config.getInt("Skills.Swords.Counter_ChanceMax", 30); } + public int getCounterMaxBonusLevel() { return config.getInt("Skills.Swords.Counter_MaxBonusLevel", 600); } + public int getCounterModifier() { return config.getInt("Skills.Swords.Counter_DamageModifier", 2); } - public int getSerratedStrikesModifier() { return config.getInt("Skills.Sword.SerratedStrikes_DamageModifier", 4); } - public int getSerratedStrikesTicks() { return config.getInt("Skills.Sword.SerratedStrikes_BleedTicks", 5); } + public int getSerratedStrikesModifier() { return config.getInt("Skills.Swords.SerratedStrikes_DamageModifier", 4); } + public int getSerratedStrikesTicks() { return config.getInt("Skills.Swords.SerratedStrikes_BleedTicks", 5); } /* TAMING */ public int getGoreChanceMax() { return config.getInt("Skills.Taming.Gore_ChanceMax", 100); } public int getGoreMaxBonusLevel() { return config.getInt("Skills.Taming.Gore_MaxBonusLevel", 1000); } diff --git a/src/main/java/com/gmail/nossr50/skills/gathering/WoodCutting.java b/src/main/java/com/gmail/nossr50/skills/gathering/WoodCutting.java index c588ceb37..5a11558d2 100644 --- a/src/main/java/com/gmail/nossr50/skills/gathering/WoodCutting.java +++ b/src/main/java/com/gmail/nossr50/skills/gathering/WoodCutting.java @@ -84,6 +84,8 @@ public class WoodCutting { if (health >= 2) { Combat.dealDamage(player, random.nextInt(health - 1)); } + inHand.setDurability((short) (inHand.getType().getMaxDurability())); + return; } } else if ((inHand.getDurability() + durabilityLoss >= inHand.getType().getMaxDurability()) || inHand.getType().equals(Material.AIR)) { @@ -94,6 +96,8 @@ public class WoodCutting { if (health >= 2) { Combat.dealDamage(player, random.nextInt(health - 1)); } + inHand.setDurability((short) (inHand.getType().getMaxDurability())); + return; } /* Damage the tool */ diff --git a/src/main/resources/advanced.yml b/src/main/resources/advanced.yml index 1191f3f79..10b3bebd3 100644 --- a/src/main/resources/advanced.yml +++ b/src/main/resources/advanced.yml @@ -77,8 +77,8 @@ Skills: Bleed_MaxBonusLevel: 750 Bleed_MaxTicks: 3 Bleed_BaseTicks: 2 - CounterAttack_ChanceMax: 30 - CounterAttack_MaxBonusLevel: 600 + Counter_ChanceMax: 30 + Counter_MaxBonusLevel: 600 Counter_DamageModifier: 2 SerratedStrikes_DamageModifier: 4 SerratedStrikes_BleedTicks: 5