diff --git a/pom.xml b/pom.xml
index 671d32b..e207e93 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
smeths.and.rhetorical
MedCraft
- 1.3.5.3
+ 1.3.5.4
MedCraft
https://www.spigotmc.org/resources/bandagecraft.6760
diff --git a/src/main/java/me/smeths/and/rhetorical/Handlers/BandageHandler.java b/src/main/java/me/smeths/and/rhetorical/Handlers/BandageHandler.java
index 6c01d7b..9db47fb 100644
--- a/src/main/java/me/smeths/and/rhetorical/Handlers/BandageHandler.java
+++ b/src/main/java/me/smeths/and/rhetorical/Handlers/BandageHandler.java
@@ -2,6 +2,7 @@
import me.smeths.and.rhetorical.ItemManager.ItemLoader;
import me.smeths.and.rhetorical.MedCraft;
+import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.attribute.Attribute;
@@ -26,12 +27,12 @@ public BandageHandler(final Player p) {
}
bandagingPlayers.put(p, new BukkitRunnable()
{
- Location position = p.getLocation();
+ final Location position = p.getLocation();
final int total = 60;
int progress = 0;
- int duration = 20 * MedCraft.getPlugin().getConfig().getInt("Bandage.Regen-Time");
- int amplifier = MedCraft.getPlugin().getConfig().getInt("Bandage.Regen-Amplifier");
- int multiplier = MedCraft.getPlugin().getConfig().getInt("Bandage.Warmup-Speed");
+ final int duration = 20 * MedCraft.getPlugin().getConfig().getInt("Bandage.Regen-Time");
+ final int amplifier = MedCraft.getPlugin().getConfig().getInt("Bandage.Regen-Amplifier");
+ final int multiplier = MedCraft.getPlugin().getConfig().getInt("Bandage.Warmup-Speed");
public void cancel()
{
@@ -41,17 +42,23 @@ public void run()
{
boolean cancelled = p.getLocation().distance(this.position) > 0.75D;
- if ((this.progress > 60) || (cancelled))
+ if ((this.progress > total) || (cancelled))
{
if (cancelled) {
p.getInventory().addItem(ItemLoader.getBandageItem());
}
BandageHandler.bandagingPlayers.remove(p);
cancel();
- } else if (this.progress == 60) {
- if (p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue())
+ } else if (this.progress == total) {
+ if (MedCraft.getPlugin().getConfig().getBoolean("Bandage.PerformCMD") == true && MedCraft.getPlugin().getConfig().getBoolean("Bandage.ConsoleCMD") == true && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
- else {
+ Bukkit.dispatchCommand(Bukkit.getConsoleSender(), String.valueOf(MedCraft.getPlugin().getConfig().get("Bandage.CMD")).replace("[playername]", p.getName()));
+ } else if (MedCraft.getPlugin().getConfig().getBoolean("Bandage.PerformCMD") == true && MedCraft.getPlugin().getConfig().getBoolean("Bandage.ConsoleCMD") == false && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
+ p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
+ Bukkit.dispatchCommand(p.getPlayer(),String.valueOf(MedCraft.getPlugin().getConfig().get("Bandage.CMD")).replace("[playername]", p.getName()));
+ } else if (MedCraft.getPlugin().getConfig().getBoolean("Bandage.PerformCMD") == false && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
+ p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
+ } else {
p.getInventory().addItem(ItemLoader.getBandageItem());
BandageHandler.bandagingPlayers.remove(p);
cancel();
diff --git a/src/main/java/me/smeths/and/rhetorical/Handlers/MedKitHandler.java b/src/main/java/me/smeths/and/rhetorical/Handlers/MedKitHandler.java
index f40a159..3defbd4 100644
--- a/src/main/java/me/smeths/and/rhetorical/Handlers/MedKitHandler.java
+++ b/src/main/java/me/smeths/and/rhetorical/Handlers/MedKitHandler.java
@@ -2,6 +2,7 @@
import me.smeths.and.rhetorical.ItemManager.ItemLoader;
import me.smeths.and.rhetorical.MedCraft;
+import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.attribute.Attribute;
@@ -52,9 +53,15 @@ public void run()
MedKitHandler.MedKitPlayers.remove(p);
cancel();
} else if (this.progress == 60) {
- if (p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue())
+ if (MedCraft.getPlugin().getConfig().getBoolean("MedKit.PerformCMD") == true && MedCraft.getPlugin().getConfig().getBoolean("MedKit.ConsoleCMD") == true && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
- else {
+ Bukkit.dispatchCommand(Bukkit.getConsoleSender(), String.valueOf(MedCraft.getPlugin().getConfig().get("MedKit.CMD")).replace("[playername]", p.getName()));
+ } else if (MedCraft.getPlugin().getConfig().getBoolean("MedKit.PerformCMD") == true && MedCraft.getPlugin().getConfig().getBoolean("MedKit.ConsoleCMD") == false && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
+ p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
+ Bukkit.dispatchCommand(p.getPlayer(),String.valueOf(MedCraft.getPlugin().getConfig().get("MedKit.CMD")).replace("[playername]", p.getName()));
+ } else if (MedCraft.getPlugin().getConfig().getBoolean("MedKit.PerformCMD") == false && p.getHealth() < Objects.requireNonNull(p.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getValue()) {
+ p.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, duration, amplifier));
+ } else {
p.getInventory().addItem(ItemLoader.getMedKitItem());
MedKitHandler.MedKitPlayers.remove(p);
cancel();
diff --git a/src/main/java/me/smeths/and/rhetorical/ItemManager/ItemLoader.java b/src/main/java/me/smeths/and/rhetorical/ItemManager/ItemLoader.java
index 8b46552..6177613 100644
--- a/src/main/java/me/smeths/and/rhetorical/ItemManager/ItemLoader.java
+++ b/src/main/java/me/smeths/and/rhetorical/ItemManager/ItemLoader.java
@@ -5,11 +5,16 @@
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.NamespacedKey;
+import org.bukkit.enchantments.Enchantment;
+import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.plugin.Plugin;
+import java.util.ArrayList;
+import java.util.List;
+
public class ItemLoader {
private Plugin medCraft = MedCraft.getPlugin();
private static ItemLoader instance;
@@ -48,12 +53,16 @@ public static ItemStack getBandageItem() {
}
private void setupBandageItem() {
+ List Bandagelore = new ArrayList();
String BandageName = MedCraft.getPlugin().getConfig().getString("Bandage.Name");
bandageItem = new ItemStack(Material.getMaterial(MedCraft.getPlugin().getConfig().getString("Bandage.Material")), 1);
ItemMeta BandageMeta = bandageItem.getItemMeta();
BandageMeta.setCustomModelData(medCraft.getConfig().getInt("Bandage.ModelData"));
BandageMeta.setDisplayName(ChatColor.RESET + ChatColor.translateAlternateColorCodes('&',BandageName));
- this.bandageItem.setItemMeta(BandageMeta);
+ BandageMeta.addEnchant(Enchantment.DURABILITY,1,true);
+ BandageMeta.addItemFlags(ItemFlag.HIDE_ENCHANTS);
+ Bandagelore.add(ChatColor.RESET + ChatColor.translateAlternateColorCodes('&',MedCraft.getPlugin().getConfig().getString("Bandage.Lore-1")));
+ bandageItem.setItemMeta(BandageMeta);
}
private void setupCraftedBandageItem() {
craftedbandageItem = new ItemStack(Material.getMaterial(MedCraft.getPlugin().getConfig().getString("Bandage.Material")), medCraft.getConfig().getInt("Bandage.Result-Amount"));
@@ -75,11 +84,16 @@ private void setupBandageRecipe() {
Bukkit.addRecipe(Bandagerecipe);
}
private void setupMedKitItem() {
+ List Medkitlore = new ArrayList();
String MedKitName = MedCraft.getPlugin().getConfig().getString("MedKit.Name");
MedKitItem = new ItemStack(Material.getMaterial(MedCraft.getPlugin().getConfig().getString("MedKit.Material")),1 );
ItemMeta MedKitMeta = MedKitItem.getItemMeta();
MedKitMeta.setCustomModelData(medCraft.getConfig().getInt("MedKit.ModelData"));
MedKitMeta.setDisplayName(ChatColor.RESET + ChatColor.translateAlternateColorCodes('&',MedKitName));
+ MedKitMeta.addEnchant(Enchantment.DURABILITY,1,true);
+ MedKitMeta.addItemFlags(ItemFlag.HIDE_ENCHANTS);
+ Medkitlore.add(ChatColor.RESET + ChatColor.translateAlternateColorCodes('&',MedCraft.getPlugin().getConfig().getString("MedKit.Lore-1")));
+ MedKitMeta.setLore(Medkitlore);
MedKitItem.setItemMeta(MedKitMeta);
}
private void setupCraftedMedKitItem() {
diff --git a/src/main/java/me/smeths/and/rhetorical/Listeners/MedCraftListeners.java b/src/main/java/me/smeths/and/rhetorical/Listeners/MedCraftListeners.java
index d4512da..58dc3f8 100644
--- a/src/main/java/me/smeths/and/rhetorical/Listeners/MedCraftListeners.java
+++ b/src/main/java/me/smeths/and/rhetorical/Listeners/MedCraftListeners.java
@@ -49,7 +49,8 @@ public void onPlayerUseMedKit(PlayerInteractEvent e) {
int heldslot = p.getInventory().getHeldItemSlot();
p.getInventory().setItem(heldslot, new ItemStack(Material.AIR));
p.updateInventory();
- new MedKitHandler(p); return;
+ new MedKitHandler(p);
+ return;
}
if (i.getAmount() >= 2 && p.hasPermission("medkit.use")) {
i.setAmount(i.getAmount() - 1);
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index c2643b0..b766106 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -1,10 +1,10 @@
Bandage:
Material: PAPER
- Warmup-Speed: 1
+ Warmup-Speed: 2
Result-Amount: 2
- movecancel-threshhold: 0.75D
ModelData: 16
Name: '&4ā&fBandage&4ā'
+ Lore-1: '&6Right/Left click to use this MedKit'
Regen-Time: 3
Regen-Amplifier: 1
Crafting-Material-top-left: AIR
@@ -16,12 +16,16 @@ Bandage:
Crafting-Material-bottom-left: AIR
Crafting-Material-bottom-middle: PAPER
Crafting-Material-bottom-right: AIR
+ PerformCMD: false
+ ConsoleCMD: true
+ CMD: 'tell [playername] your server admin did not configure this plugin'
MedKit:
Material: PAPER
Warmup-Speed: 1
Result-Amount: 1
ModelData: 18
Name: '&cā&fMedKit&cā'
+ Lore-1: '&6Right/Left click to use this MedKit'
Regen-Time: 6
Regen-Amplifier: 2
Crafting-Material-top-left: PAPER
@@ -33,3 +37,6 @@ MedKit:
Crafting-Material-bottom-left: PAPER
Crafting-Material-bottom-middle: PAPER
Crafting-Material-bottom-right: PAPER
+ PerformCMD: false
+ ConsoleCMD: true
+ CMD: 'tell [playername] your server admin did not configure this plugin'
\ No newline at end of file
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 95edc30..910b121 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -1,10 +1,14 @@
name: MedCraft
main: me.smeths.and.rhetorical.MedCraft
author: smeths&rhetorical
-version: 1.3.5.3
+version: 1.3.5.4
api-version: 1.13
-commands:
- MedCraft:
- description: MedCraft Command!
- usage: /MedCraft
- aliases: [meds]
\ No newline at end of file
+permissions:
+ bandage.craft:
+ default: op
+ bandage.use:
+ default: op
+ medkit.craft:
+ default: op
+ medkit.user:
+ default: op
\ No newline at end of file