From b216901c43268b7cc675bc6254f31c2f89cf50e9 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Wed, 14 Oct 2020 10:00:35 +0100 Subject: [PATCH] Added 1.16 artifacts --- .../ecoenchants/artifact/AshArtifact.java | 16 +++++++ .../ecoenchants/artifact/CrimsonArtifact.java | 16 +++++++ .../ecoenchants/artifact/SoulArtifact.java | 16 +++++++ .../artifact/SoulFireArtifact.java | 16 +++++++ .../ecoenchants/artifact/TearArtifact.java | 16 +++++++ .../ecoenchants/artifact/WarpedArtifact.java | 16 +++++++ .../enchantments/itemtypes/Artifact.java | 13 ++++- .../enchants/artifact/ashartifact.yml | 47 +++++++++++++++++++ .../enchants/artifact/crimsonartifact.yml | 47 +++++++++++++++++++ .../enchants/artifact/soulartifact.yml | 47 +++++++++++++++++++ .../enchants/artifact/soulfireartifact.yml | 47 +++++++++++++++++++ .../enchants/artifact/tearartifact.yml | 47 +++++++++++++++++++ .../enchants/artifact/warpedartifact.yml | 47 +++++++++++++++++++ Plugin/src/main/resources/plugin.yml | 25 ++++++++++ 14 files changed, 414 insertions(+), 2 deletions(-) create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/AshArtifact.java create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/CrimsonArtifact.java create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulArtifact.java create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulFireArtifact.java create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/TearArtifact.java create mode 100644 Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/WarpedArtifact.java create mode 100644 Plugin/src/main/resources/enchants/artifact/ashartifact.yml create mode 100644 Plugin/src/main/resources/enchants/artifact/crimsonartifact.yml create mode 100644 Plugin/src/main/resources/enchants/artifact/soulartifact.yml create mode 100644 Plugin/src/main/resources/enchants/artifact/soulfireartifact.yml create mode 100644 Plugin/src/main/resources/enchants/artifact/tearartifact.yml create mode 100644 Plugin/src/main/resources/enchants/artifact/warpedartifact.yml diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/AshArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/AshArtifact.java new file mode 100644 index 00000000..6282c5f7 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/AshArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class AshArtifact extends Artifact { + public AshArtifact() { + super( + "ash_artifact", + 5.0, + Particle.WHITE_ASH, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/CrimsonArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/CrimsonArtifact.java new file mode 100644 index 00000000..3744b068 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/CrimsonArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class CrimsonArtifact extends Artifact { + public CrimsonArtifact() { + super( + "crimson_artifact", + 5.0, + Particle.CRIMSON_SPORE, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulArtifact.java new file mode 100644 index 00000000..4a954d61 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class SoulArtifact extends Artifact { + public SoulArtifact() { + super( + "soul_artifact", + 5.0, + Particle.SOUL, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulFireArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulFireArtifact.java new file mode 100644 index 00000000..a8c90359 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/SoulFireArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class SoulFireArtifact extends Artifact { + public SoulFireArtifact() { + super( + "soul_fire_artifact", + 5.0, + Particle.SOUL_FIRE_FLAME, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/TearArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/TearArtifact.java new file mode 100644 index 00000000..f95ac2d8 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/TearArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class TearArtifact extends Artifact { + public TearArtifact() { + super( + "tear_artifact", + 5.0, + Particle.DRIPPING_OBSIDIAN_TEAR, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/WarpedArtifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/WarpedArtifact.java new file mode 100644 index 00000000..1d326970 --- /dev/null +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/ecoenchants/artifact/WarpedArtifact.java @@ -0,0 +1,16 @@ +package com.willfp.ecoenchants.enchantments.ecoenchants.artifact; + +import com.willfp.ecoenchants.enchantments.itemtypes.Artifact; +import com.willfp.ecoenchants.util.optional.Prerequisite; +import org.bukkit.Particle; + +public final class WarpedArtifact extends Artifact { + public WarpedArtifact() { + super( + "warped_artifact", + 5.0, + Particle.WARPED_SPORE, + new Prerequisite[]{Prerequisite.MinVer1_16} + ); + } +} \ No newline at end of file diff --git a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/itemtypes/Artifact.java b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/itemtypes/Artifact.java index cec04666..6902163d 100644 --- a/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/itemtypes/Artifact.java +++ b/Plugin/src/main/java/com/willfp/ecoenchants/enchantments/itemtypes/Artifact.java @@ -8,6 +8,7 @@ import com.willfp.ecoenchants.enchantments.EcoEnchants; import com.willfp.ecoenchants.enchantments.util.EnchantChecks; import com.willfp.ecoenchants.nms.TridentStack; import com.willfp.ecoenchants.util.NumberUtils; +import com.willfp.ecoenchants.util.optional.Prerequisite; import org.bukkit.Location; import org.bukkit.Particle; import org.bukkit.block.Block; @@ -33,11 +34,19 @@ public abstract class Artifact extends EcoEnchant { private final Particle.DustOptions extra; protected Artifact(String key, double version, Particle particle) { - this(key, version, particle, null); + this(key, version, particle, null, new Prerequisite[]{} ); } protected Artifact(String key, double version, Particle particle, Particle.DustOptions extra) { - super(new EcoEnchantBuilder(key, EnchantmentType.ARTIFACT, version)); + this(key, version, particle, extra, new Prerequisite[]{}); + } + + protected Artifact(String key, double version, Particle particle, Prerequisite[] prerequisites) { + this(key, version, particle, null, prerequisites); + } + + protected Artifact(String key, double version, Particle particle, Particle.DustOptions extra, Prerequisite[] prerequisites) { + super(new EcoEnchantBuilder(key, EnchantmentType.ARTIFACT, version), prerequisites); this.particle = particle; this.extra = extra; } diff --git a/Plugin/src/main/resources/enchants/artifact/ashartifact.yml b/Plugin/src/main/resources/enchants/artifact/ashartifact.yml new file mode 100644 index 00000000..279faafa --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/ashartifact.yml @@ -0,0 +1,47 @@ +# +# Ash Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Ash Artifact" +description: Creates basalt deltas particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/enchants/artifact/crimsonartifact.yml b/Plugin/src/main/resources/enchants/artifact/crimsonartifact.yml new file mode 100644 index 00000000..e147f424 --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/crimsonartifact.yml @@ -0,0 +1,47 @@ +# +# Crimson Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Crimson Artifact" +description: Creates crimson forest particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/enchants/artifact/soulartifact.yml b/Plugin/src/main/resources/enchants/artifact/soulartifact.yml new file mode 100644 index 00000000..e2bc533d --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/soulartifact.yml @@ -0,0 +1,47 @@ +# +# Soul Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Soul Artifact" +description: Creates soul particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/enchants/artifact/soulfireartifact.yml b/Plugin/src/main/resources/enchants/artifact/soulfireartifact.yml new file mode 100644 index 00000000..e464c0ef --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/soulfireartifact.yml @@ -0,0 +1,47 @@ +# +# Soul Fire Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Soul Fire Artifact" +description: Creates soul flame particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/enchants/artifact/tearartifact.yml b/Plugin/src/main/resources/enchants/artifact/tearartifact.yml new file mode 100644 index 00000000..fa639ba6 --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/tearartifact.yml @@ -0,0 +1,47 @@ +# +# Tear Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Tear Artifact" +description: Creates crying obsidian particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/enchants/artifact/warpedartifact.yml b/Plugin/src/main/resources/enchants/artifact/warpedartifact.yml new file mode 100644 index 00000000..98730915 --- /dev/null +++ b/Plugin/src/main/resources/enchants/artifact/warpedartifact.yml @@ -0,0 +1,47 @@ +# +# Warped Artifact EcoEnchant +# + +config-version: 5.0 # Don't edit this. + +name: "Warped Artifact" +description: Creates warped forest particles. +enabled: true + +obtaining: + table: true + villager: true + loot: true + rarity: epic + +general-config: + targets: + - pickaxe + - sword + - axe + - elytra + - bow + - crossbow + - trident + grindstoneable: true + conflicts: [] + +config: + # For Attack + radius: 1 + y-delta: 0.07 + radius-multiplier: 5 + + # For Arrows + Tridents + particle-tick-delay: 2 + + # For Pickaxes + amount: 10 + on-blocks: + - diamond_ore + - gold_ore + - lapis_ore + - redstone_ore + - iron_ore + - obsidian + - ancient_debris \ No newline at end of file diff --git a/Plugin/src/main/resources/plugin.yml b/Plugin/src/main/resources/plugin.yml index 6a8070f0..441116a4 100644 --- a/Plugin/src/main/resources/plugin.yml +++ b/Plugin/src/main/resources/plugin.yml @@ -243,6 +243,13 @@ permissions: ecoenchants.fromtable.inaccuracycurse: true ecoenchants.fromtable.respirator: true ecoenchants.fromtable.fetching: true + ecoenchants.fromtable.economical: true + ecoenchants.fromtable.soulfireartifact: true + ecoenchants.fromtable.soulartifact: true + ecoenchants.fromtable.crimsonartifact: true + ecoenchants.fromtable.warpedartifact: true + ecoenchants.fromtable.ashartifact: true + ecoenchants.fromtable.tearartifact: true ecoenchants.updateannounce: description: Informs admins of a new update @@ -856,4 +863,22 @@ permissions: default: true ecoenchants.fromtable.economical: description: Allows getting economical from an enchanting table + default: true + ecoenchants.fromtable.soulfireartifact: + description: Allows getting soul fire artifact from an enchanting table + default: true + ecoenchants.fromtable.soulartifact: + description: Allows getting soul artifact from an enchanting table + default: true + ecoenchants.fromtable.crimsonartifact: + description: Allows getting crimson artifact from an enchanting table + default: true + ecoenchants.fromtable.warpedartifact: + description: Allows getting warped artifact from an enchanting table + default: true + ecoenchants.fromtable.ashartifact: + description: Allows getting ash artifact from an enchanting table + default: true + ecoenchants.fromtable.tearartifact: + description: Allows getting tear artifact from an enchanting table default: true \ No newline at end of file