diff --git a/pom.xml b/pom.xml index 8c9776e..7bc59b0 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.craftaro UltimateTimber - 3.0.0 + 3.2.0 UltimateTimber Give your players a new and exciting way to chop down trees @@ -35,7 +35,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.4.1 + 3.5.3 @@ -74,10 +74,10 @@ false **/nms/v*/** + **/third_party/net/kyori/** **/third_party/org/apache/** - **/third_party/net/kyori/** **/third_party/com/zaxxer/** **/third_party/org/jooq/** **/third_party/org/mariadb/** @@ -118,7 +118,7 @@ com.craftaro CraftaroCore - 3.0.0-SNAPSHOT + 3.5.0-SNAPSHOT compile diff --git a/src/main/java/com/craftaro/ultimatetimber/commands/CommandReload.java b/src/main/java/com/craftaro/ultimatetimber/commands/CommandReload.java index 15d5533..2b844af 100644 --- a/src/main/java/com/craftaro/ultimatetimber/commands/CommandReload.java +++ b/src/main/java/com/craftaro/ultimatetimber/commands/CommandReload.java @@ -38,6 +38,6 @@ public class CommandReload extends AbstractCommand { @Override public String getDescription() { - return this.plugin.getLocale().getMessage("command.reload.description").getMessage(); + return this.plugin.getLocale().getMessage("command.reload.description").getMessage().toString(); } } diff --git a/src/main/java/com/craftaro/ultimatetimber/commands/CommandToggle.java b/src/main/java/com/craftaro/ultimatetimber/commands/CommandToggle.java index 6f685c2..f1f1b38 100644 --- a/src/main/java/com/craftaro/ultimatetimber/commands/CommandToggle.java +++ b/src/main/java/com/craftaro/ultimatetimber/commands/CommandToggle.java @@ -42,7 +42,7 @@ public class CommandToggle extends AbstractCommand { @Override public String getDescription() { - return this.plugin.getLocale().getMessage("command.toggle.description").getMessage(); + return this.plugin.getLocale().getMessage("command.toggle.description").getMessage().toString(); } } diff --git a/src/main/java/com/craftaro/ultimatetimber/manager/TreeFallManager.java b/src/main/java/com/craftaro/ultimatetimber/manager/TreeFallManager.java index 8d3b179..fcb0fc7 100644 --- a/src/main/java/com/craftaro/ultimatetimber/manager/TreeFallManager.java +++ b/src/main/java/com/craftaro/ultimatetimber/manager/TreeFallManager.java @@ -161,13 +161,30 @@ public class TreeFallManager extends Manager implements Listener { sstack.addDamage(player, toolDamage, true); //Destroy item if durability is less than 0 - ItemMeta meta = sstack.getItem().getItemMeta(); - if (meta instanceof Damageable) { - Damageable damageable = (Damageable)meta; + ItemStack itemStack = sstack.getItem(); + ItemMeta meta = itemStack.getItemMeta(); + boolean isDamageableAvailable = false; + try { + Class.forName("org.bukkit.inventory.meta.Damageable"); + isDamageableAvailable = true; + } catch (ClassNotFoundException e) { + isDamageableAvailable = false; + } + if (isDamageableAvailable && meta instanceof org.bukkit.inventory.meta.Damageable) { + org.bukkit.inventory.meta.Damageable damageable = (org.bukkit.inventory.meta.Damageable) meta; int damage = damageable.getDamage(); - if (damage >= sstack.getItem().getType().getMaxDurability()) { - //Break tool + if (damage >= itemStack.getType().getMaxDurability()) { player.getInventory().setItemInMainHand(null); + } else { + itemStack.setItemMeta(meta); + } + } else { + short currentDurability = itemStack.getDurability(); + short maxDurability = itemStack.getType().getMaxDurability(); + if (currentDurability >= maxDurability) { + player.getInventory().setItemInMainHand(null); + } else { + itemStack.setDurability(currentDurability); } } } diff --git a/src/main/resources/zh_CN.lang b/src/main/resources/zh_CN.lang new file mode 100644 index 0000000..016263d --- /dev/null +++ b/src/main/resources/zh_CN.lang @@ -0,0 +1,29 @@ +######################################################### +# 参考 By https://www.mcbbs.net/thread-1297859-1-1.html # +# command.give.not-a-player # +# command.give.given # +# command.give.no-axe # +######################################################### + +# 一般信息 +general: + nametag: + prefix: '&8[&6UltimateTimber&8] ' + nopermission: '&c你没有权限' +# 命令消息 +command: + reload: + description: '&8 - &a/ut reload &7 - 配置已重载' + reloaded: '&7配置和语言环境文件已重新加载' + toggle: + description: '&8 - &a/ut toggle &7 - 切换砍树模式' + enabled: '&7Chopping Mode: &a开启' + disabled: '&7Chopping Mode: &c关闭' + give: + not-a-player: '&c你貌似并非一个玩家' + given: '&f给予玩家 &a%player%' + no-axe: '&cAxe 加载失败惹' +# 事件消息 +event: + 'on': + cooldown: '&e冷却中, 暂不能砍树哦'