diff --git a/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/Reforges.java b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/Reforges.java index 4c3f4df..ef1edd3 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/Reforges.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/Reforges.java @@ -4,6 +4,7 @@ import com.google.common.collect.BiMap; import com.google.common.collect.HashBiMap; import com.google.common.collect.ImmutableSet; import com.willfp.eco.core.config.updating.ConfigUpdater; +import com.willfp.reforges.reforges.reforges.ReforgeAcute; import com.willfp.reforges.reforges.reforges.ReforgeAerobic; import com.willfp.reforges.reforges.reforges.ReforgeAffluent; import com.willfp.reforges.reforges.reforges.ReforgeDurable; @@ -62,6 +63,7 @@ public class Reforges { public static final Reforge DURABLE = new ReforgeDurable(); public static final Reforge IMMEDIATE = new ReforgeImmediate(); public static final Reforge PROSPECTING = new ReforgeProspecting(); + public static final Reforge ACUTE = new ReforgeAcute(); /** * Get all registered {@link Reforge}s. diff --git a/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/meta/ReforgeTarget.java b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/meta/ReforgeTarget.java index f9af20b..a8d770c 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/meta/ReforgeTarget.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/meta/ReforgeTarget.java @@ -45,6 +45,11 @@ public class ReforgeTarget { */ public static final ReforgeTarget PICKAXE = new ReforgeTarget("pickaxe"); + /** + * Axes. + */ + public static final ReforgeTarget AXE = new ReforgeTarget("axe"); + /** * All registered targets. */ @@ -57,6 +62,7 @@ public class ReforgeTarget { REGISTERED.add(TRIDENT); REGISTERED.add(BOW); REGISTERED.add(PICKAXE); + REGISTERED.add(AXE); update(ReforgesPlugin.getInstance()); } diff --git a/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/reforges/ReforgeAcute.java b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/reforges/ReforgeAcute.java new file mode 100644 index 0000000..291ba59 --- /dev/null +++ b/eco-core/core-plugin/src/main/java/com/willfp/reforges/reforges/reforges/ReforgeAcute.java @@ -0,0 +1,29 @@ +package com.willfp.reforges.reforges.reforges; + +import com.willfp.eco.util.NumberUtils; +import com.willfp.reforges.reforges.Reforge; +import com.willfp.reforges.reforges.Reforges; +import com.willfp.reforges.reforges.meta.ReforgeTarget; +import org.bukkit.entity.LivingEntity; +import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.jetbrains.annotations.NotNull; + +public class ReforgeAcute extends Reforge { + public ReforgeAcute() { + super("acute"); + } + + @Override + public ReforgeTarget[] getTarget() { + return new ReforgeTarget[]{ReforgeTarget.AXE}; + } + + @Override + public void onMeleeAttack(@NotNull final LivingEntity attacker, + @NotNull final LivingEntity victim, + @NotNull final EntityDamageByEntityEvent event) { + if (NumberUtils.randFloat(0, 100) < this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "chance")) { + event.setDamage(event.getDamage() * this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "multiplier")); + } + } +} diff --git a/eco-core/core-plugin/src/main/resources/config.yml b/eco-core/core-plugin/src/main/resources/config.yml index d11f139..c8c7526 100644 --- a/eco-core/core-plugin/src/main/resources/config.yml +++ b/eco-core/core-plugin/src/main/resources/config.yml @@ -90,6 +90,13 @@ targets: - golden_pickaxe - diamond_pickaxe - netherite_pickaxe + axe: + - wooden_axe + - stone_axe + - iron_axe + - golden_axe + - diamond_axe + - netherite_axe melee: - wooden_axe - stone_axe diff --git a/eco-core/core-plugin/src/main/resources/reforges/acute.yml b/eco-core/core-plugin/src/main/resources/reforges/acute.yml new file mode 100644 index 0000000..70a80e5 --- /dev/null +++ b/eco-core/core-plugin/src/main/resources/reforges/acute.yml @@ -0,0 +1,17 @@ +# +# Acute Reforge +# + +name: "Acute" +enabled: true +description: "&a2%&r chance to deal &atriple&r damage" + +stone-config: + requires-stone: false + texture: '' + craftable: false + recipe: [] + +config: + chance: 2 + multiplier: 3 \ No newline at end of file