diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/ovh/sad/snowcore/Snowcore.java b/src/main/java/ovh/sad/snowcore/Snowcore.java
index 6aa91b9..690910e 100644
--- a/src/main/java/ovh/sad/snowcore/Snowcore.java
+++ b/src/main/java/ovh/sad/snowcore/Snowcore.java
@@ -139,9 +139,11 @@ public final class Snowcore extends JavaPlugin {
for (int z = minZ; z <= maxZ; z++) {
for (int y = maxY; y >= minY; y--) {
Block block = world.getBlockAt(x, y, z);
+ Material type = block.getType();
- // Only care about full snow blocks as the base
- if (block.getType() != Material.SNOW_BLOCK) continue;
+ if (type != Material.STONE
+ && type != Material.TUFF
+ && type != Material.ANDESITE) continue;
Block above = world.getBlockAt(x, y + 1, z);
Material aboveType = above.getType();
@@ -251,7 +253,7 @@ public final class Snowcore extends JavaPlugin {
Snowcore.snowify(
world,
new Location(world, 39, 127, 157),
- new Location(world, 8, 139, 215)
+ new Location(world, 8, 148, 215)
);
Bukkit.broadcast(snowing);
diff --git a/src/main/java/ovh/sad/snowcore/commands/SellCommand.java b/src/main/java/ovh/sad/snowcore/commands/SellCommand.java
index 684f117..1677e5c 100644
--- a/src/main/java/ovh/sad/snowcore/commands/SellCommand.java
+++ b/src/main/java/ovh/sad/snowcore/commands/SellCommand.java
@@ -26,6 +26,33 @@ public class SellCommand implements BasicCommand {
@Override
public void execute(CommandSourceStack source, String[] args) {
+ if(args.length == 1 && args[0].equals("inv")) {
+ Player player = (Player) Objects.requireNonNull(source.getExecutor());
+
+ var inv = player.getInventory();
+
+ double finalPrice = 0d;
+
+ for (int slot = 0; slot < 35; slot++) {
+ ItemStack item = inv.getItem(slot);
+
+ if (item == null || item.getType().isAir()) continue;
+
+ boolean prices = Prices.hasSellPrice(item.getType());
+
+ if(prices) {
+ double price = (Prices.getSellPrice(item.getType())/2) * item.getAmount();
+
+ finalPrice += price;
+
+ inv.setItem(slot, null);
+ }
+ }
+
+ Snowcore.econ.depositPlayer(player, finalPrice);
+ player.sendMessage(Component.text("Sold items for §a" + finalPrice + "§r! §o§c-50% due to /sell inv being used.."));
+ return;
+ }
AtomicBoolean sold = new AtomicBoolean(false);
Gui gui = Gui.gui()
.title(Component.text("Sell Items"))
diff --git a/src/main/java/ovh/sad/snowcore/commands/SnowifyCommand.java b/src/main/java/ovh/sad/snowcore/commands/SnowifyCommand.java
index e3f962d..a4e457e 100644
--- a/src/main/java/ovh/sad/snowcore/commands/SnowifyCommand.java
+++ b/src/main/java/ovh/sad/snowcore/commands/SnowifyCommand.java
@@ -19,7 +19,7 @@ public class SnowifyCommand implements BasicCommand {
Snowcore.snowify(
world,
new Location(world, 39, 127, 157),
- new Location(world, 8, 139, 215)
+ new Location(world, 8, 148, 215)
);
}
diff --git a/src/main/java/ovh/sad/snowcore/items/Tool.java b/src/main/java/ovh/sad/snowcore/items/Tool.java
index 707ab9d..d775509 100644
--- a/src/main/java/ovh/sad/snowcore/items/Tool.java
+++ b/src/main/java/ovh/sad/snowcore/items/Tool.java
@@ -3,6 +3,7 @@ package ovh.sad.snowcore.items;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
import org.bukkit.Material;
+import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
@@ -87,6 +88,10 @@ public abstract class Tool> {
definedAbilities.stream().filter(a -> a.byDefault).toList());
meta.setEnchantmentGlintOverride(true);
+ meta.setUnbreakable(true);
+ meta.addEnchant(Enchantment.EFFICIENCY, 3, false);
+ meta.addItemFlags(ItemFlag.HIDE_UNBREAKABLE);
+ meta.addItemFlags(ItemFlag.HIDE_ENCHANTS);
item.setItemMeta(meta);
return item;
@@ -133,6 +138,10 @@ public abstract class Tool> {
meta.lore(lore);
meta.setEnchantmentGlintOverride(true);
+ meta.setUnbreakable(true);
+ meta.addEnchant(Enchantment.EFFICIENCY, 3, false);
+ meta.addItemFlags(ItemFlag.HIDE_UNBREAKABLE);
+ meta.addItemFlags(ItemFlag.HIDE_ENCHANTS);
item.setItemMeta(meta);
return item;
diff --git a/src/main/java/ovh/sad/snowcore/listeners/InteractListener.java b/src/main/java/ovh/sad/snowcore/listeners/InteractListener.java
index 05cf66d..f6bcb4b 100644
--- a/src/main/java/ovh/sad/snowcore/listeners/InteractListener.java
+++ b/src/main/java/ovh/sad/snowcore/listeners/InteractListener.java
@@ -204,6 +204,9 @@ public class InteractListener implements Listener {
} else {
name = Component.text(def.type.name, NamedTextColor.YELLOW);
lore.add(Component.text("Cost: " + (int) def.baseCost + "$", NamedTextColor.GOLD));
+
+ lore.add(Component.text(def.type.description.replaceAll("%maxValue%", String.valueOf(def.maxValue)), NamedTextColor.GOLD));
+
lore.add(Component.text("Click to unlock", NamedTextColor.GRAY));
}