diff --git a/pom.xml b/pom.xml
index 7f2d059..c986c16 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.modnmetl
virtualrealty
- 2.2.2
+ 2.2.3
jar
A plot creation and management plugin for Minecraft
diff --git a/src/main/java/com/modnmetl/virtualrealty/commands/vrplot/subcommand/ItemSubCommand.java b/src/main/java/com/modnmetl/virtualrealty/commands/vrplot/subcommand/ItemSubCommand.java
index 1e54e18..725f358 100644
--- a/src/main/java/com/modnmetl/virtualrealty/commands/vrplot/subcommand/ItemSubCommand.java
+++ b/src/main/java/com/modnmetl/virtualrealty/commands/vrplot/subcommand/ItemSubCommand.java
@@ -62,6 +62,8 @@ public void exec(CommandSender sender, Command command, String label, String[] a
}
Map.Entry floorData;
Map.Entry borderData;
+ String[] floorMaterialData = args[5 - backwardArgs].split(":");
+ String[] borderMaterialData = args[6 - backwardArgs].split(":");
if (VirtualRealty.legacyVersion) {
if (isNatural) {
floorData = new AbstractMap.SimpleEntry<>(Material.AIR.name(), (byte)0);
@@ -70,11 +72,15 @@ public void exec(CommandSender sender, Command command, String label, String[] a
if (args[5 - backwardArgs].equalsIgnoreCase("default")) {
floorData = new AbstractMap.SimpleEntry<>(plotSize.getFloorMaterial().name(), plotSize.getFloorData());
} else
- floorData = new AbstractMap.SimpleEntry<>(Material.valueOf(args[5 - backwardArgs].split(":")[0].toUpperCase()).name(), Byte.valueOf(args[5 - backwardArgs].split(":")[1]));
+ floorData = new AbstractMap.SimpleEntry<>(
+ Material.valueOf(args[5 - backwardArgs].split(":")[0].toUpperCase()).name(),
+ floorMaterialData.length > 1 ? Byte.valueOf(args[5 - backwardArgs].split(":")[1]) : 0);
if (args[6 - backwardArgs].equalsIgnoreCase("default")) {
borderData = new AbstractMap.SimpleEntry<>(plotSize.getBorderMaterial().name(), plotSize.getBorderData());
} else
- borderData = new AbstractMap.SimpleEntry<>(Material.valueOf(args[6 - backwardArgs].split(":")[0].toUpperCase()).name(), Byte.valueOf(args[6 - backwardArgs].split(":")[1]));
+ borderData = new AbstractMap.SimpleEntry<>(
+ Material.valueOf(args[6 - backwardArgs].split(":")[0].toUpperCase()).name(),
+ borderMaterialData.length > 1 ? Byte.valueOf(args[6 - backwardArgs].split(":")[1]) : 0);
}
} else {
if (isNatural) {
@@ -82,13 +88,21 @@ public void exec(CommandSender sender, Command command, String label, String[] a
borderData = new AbstractMap.SimpleEntry<>(Material.AIR.createBlockData().getAsString(), (byte)0);
} else {
if (args[5 - backwardArgs].equalsIgnoreCase("default")) {
- floorData = new AbstractMap.SimpleEntry<>(plotSize.getFloorMaterial().createBlockData().getAsString(), (byte) 0);
+ floorData = new AbstractMap.SimpleEntry<>(
+ plotSize.getFloorMaterial().createBlockData().getAsString(),
+ (byte) 0);
} else
- floorData = new AbstractMap.SimpleEntry<>(Material.valueOf(args[5 - backwardArgs].toUpperCase()).createBlockData().getAsString(), (byte) 0);
+ floorData = new AbstractMap.SimpleEntry<>(
+ Material.valueOf(args[5 - backwardArgs].toUpperCase()).createBlockData().getAsString(),
+ (byte) 0);
if (args[6 - backwardArgs].equalsIgnoreCase("default")) {
- borderData = new AbstractMap.SimpleEntry<>(plotSize.getBorderMaterial().createBlockData().getAsString(), (byte) 0);
+ borderData = new AbstractMap.SimpleEntry<>(
+ plotSize.getBorderMaterial().createBlockData().getAsString(),
+ (byte) 0);
} else
- borderData = new AbstractMap.SimpleEntry<>(Material.valueOf(args[6 - backwardArgs].toUpperCase()).createBlockData().getAsString(), (byte) 0);
+ borderData = new AbstractMap.SimpleEntry<>(
+ Material.valueOf(args[6 - backwardArgs].toUpperCase()).createBlockData().getAsString(),
+ (byte) 0);
}
}
int additionalDays = Integer.parseInt(args[7-backwardArgs]);
diff --git a/src/main/java/com/modnmetl/virtualrealty/listeners/protection/PlotProtectionListener.java b/src/main/java/com/modnmetl/virtualrealty/listeners/protection/PlotProtectionListener.java
index 549890c..62eb3b6 100644
--- a/src/main/java/com/modnmetl/virtualrealty/listeners/protection/PlotProtectionListener.java
+++ b/src/main/java/com/modnmetl/virtualrealty/listeners/protection/PlotProtectionListener.java
@@ -27,6 +27,7 @@
import org.bukkit.event.vehicle.VehicleDestroyEvent;
import org.bukkit.event.world.StructureGrowEvent;
import org.bukkit.inventory.EquipmentSlot;
+import org.bukkit.material.Crops;
import org.bukkit.permissions.Permission;
import java.util.ArrayList;
@@ -94,7 +95,11 @@ public void onCropInteract(PlayerInteractEvent e) {
Player player = e.getPlayer();
if (e.getAction() != Action.PHYSICAL) return;
if (e.getClickedBlock() == null) return;
- if (e.getClickedBlock().getType() != Material.FARMLAND) return;
+ if (VirtualRealty.legacyVersion) {
+ if (e.getClickedBlock().getType() == Material.getMaterial("CROPS")) return;
+ } else {
+ if (e.getClickedBlock().getType() != Material.FARMLAND) return;
+ }
Plot plot = PlotManager.getPlot(e.getClickedBlock().getLocation());
if (plot == null) return;
if (hasPermission(player, PLOT_BUILD)) return;
diff --git a/src/main/java/com/modnmetl/virtualrealty/sql/Database.java b/src/main/java/com/modnmetl/virtualrealty/sql/Database.java
index afde87a..b422b4a 100644
--- a/src/main/java/com/modnmetl/virtualrealty/sql/Database.java
+++ b/src/main/java/com/modnmetl/virtualrealty/sql/Database.java
@@ -3,19 +3,15 @@
import com.modnmetl.virtualrealty.VirtualRealty;
import com.modnmetl.virtualrealty.configs.PluginConfiguration;
import com.zaxxer.hikari.HikariDataSource;
-import lombok.Data;
import lombok.Getter;
-import lombok.Setter;
import org.sqlite.SQLiteDataSource;
import javax.sql.DataSource;
import java.io.File;
import java.io.PrintWriter;
import java.sql.Connection;
-import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
-import java.util.logging.Level;
public class Database {