Compare commits

..

9 Commits

Author SHA1 Message Date
ffebffec77 Extract method 2023-10-03 10:15:56 +01:00
1e9a27ccea fix: load flags after we is initliased
- fixes #4073
 - it could be possible to add a callback in the WE initilised event listener, but that overcomplicates it a bit and this is fine tbh
2023-10-01 11:45:31 +01:00
d95c74d8c9 Addresses issues related to maven publish scm block (#4179)
- Fixes https://github.com/IntellectualSites/PlotSquared/issues/4158
- Fixes https://github.com/IntellectualSites/PlotSquared/issues/4159
- Resolves https://github.com/IntellectualSites/PlotSquared/issues/4160
2023-10-01 11:54:47 +02:00
c1555ddbc7 Fix #isAccessible() deprecation in HybridPlotWorld (#4177)
Fixes https://github.com/IntellectualSites/PlotSquared/issues/4165
2023-10-01 11:50:19 +02:00
4fe0c586d9 Address deprecated URL instantiation (#4178)
Fixes https://github.com/IntellectualSites/PlotSquared/issues/4166
2023-10-01 11:50:12 +02:00
aae6ea4fee Update dependency net.kyori:adventure-platform-bukkit to v4.3.1 (#4182)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-01 11:50:03 +02:00
385d018504 Update worldedit to v7.2.16 (#4183)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-01 11:49:53 +02:00
f4def082c1 Update dependency cloud.commandframework:cloud-services to v1.8.4 (#4175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-01 11:25:05 +02:00
69c9f1df83 Update dependency me.clip:placeholderapi to v2.11.4 (#4176)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-01 11:24:58 +02:00
10 changed files with 53 additions and 27 deletions

View File

@ -35,7 +35,7 @@ import org.bukkit.scheduler.BukkitTask;
import javax.net.ssl.HttpsURLConnection;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URI;
public class UpdateUtility implements Listener {
@ -59,8 +59,9 @@ public class UpdateUtility implements Listener {
public void updateChecker() {
task = Bukkit.getScheduler().runTaskTimerAsynchronously(this.javaPlugin, () -> {
try {
HttpsURLConnection connection = (HttpsURLConnection) new URL(
HttpsURLConnection connection = (HttpsURLConnection) URI.create(
"https://api.spigotmc.org/simple/0.2/index.php?action=getResource&id=77506")
.toURL()
.openConnection();
connection.setRequestMethod("GET");
JsonObject result = new JsonParser()

View File

@ -84,7 +84,7 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Files;
@ -210,9 +210,10 @@ public class PlotSquared {
try {
URL logurl = PlotSquared.class.getProtectionDomain().getCodeSource().getLocation();
this.jarFile = new File(
new URL(logurl.toURI().toString().split("\\!")[0].replaceAll("jar:file", "file"))
.toURI().getPath());
} catch (MalformedURLException | URISyntaxException | SecurityException e) {
URI.create(
logurl.toURI().toString().split("\\!")[0].replaceAll("jar:file", "file"))
.getPath());
} catch (URISyntaxException | SecurityException e) {
e.printStackTrace();
this.jarFile = new File(this.platform.getDirectory().getParentFile(), "PlotSquared.jar");
if (!this.jarFile.exists()) {

View File

@ -41,6 +41,7 @@ import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import org.checkerframework.checker.nullness.qual.NonNull;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.util.Collections;
import java.util.List;
@ -116,7 +117,7 @@ public class Load extends SubCommand {
}
final URL url;
try {
url = new URL(Settings.Web.URL + "saves/" + player.getUUID() + '/' + schematic);
url = URI.create(Settings.Web.URL + "saves/" + player.getUUID() + '/' + schematic).toURL();
} catch (MalformedURLException e) {
e.printStackTrace();
player.sendMessage(TranslatableCaption.of("web.load_failed"));

View File

@ -40,6 +40,7 @@ import net.kyori.adventure.text.minimessage.tag.Tag;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import org.checkerframework.checker.nullness.qual.NonNull;
import java.net.URI;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
@ -130,8 +131,7 @@ public class SchematicCmd extends SubCommand {
if (location.startsWith("url:")) {
try {
UUID uuid = UUID.fromString(location.substring(4));
URL base = new URL(Settings.Web.URL);
URL url = new URL(base, "uploads/" + uuid + ".schematic");
URL url = URI.create(Settings.Web.URL + "uploads/" + uuid + ".schematic").toURL();
schematic = this.schematicHandler.getSchematic(url);
} catch (Exception e) {
e.printStackTrace();

View File

@ -189,7 +189,7 @@ public class HybridPlotWorld extends ClassicPlotWorld {
}
Object value;
try {
final boolean accessible = field.isAccessible();
final boolean accessible = field.canAccess(this);
field.setAccessible(true);
value = field.get(this);
field.setAccessible(accessible);

View File

@ -51,6 +51,8 @@ import com.plotsquared.core.util.MathMan;
import com.plotsquared.core.util.PlotExpression;
import com.plotsquared.core.util.RegionUtil;
import com.plotsquared.core.util.StringMan;
import com.plotsquared.core.util.task.TaskManager;
import com.plotsquared.core.util.task.TaskTime;
import com.sk89q.worldedit.math.BlockVector2;
import com.sk89q.worldedit.math.BlockVector3;
import com.sk89q.worldedit.regions.CuboidRegion;
@ -391,6 +393,28 @@ public abstract class PlotArea implements ComponentLike {
}
}
this.spawnEggs = config.getBoolean("event.spawn.egg");
this.spawnCustom = config.getBoolean("event.spawn.custom");
this.spawnBreeding = config.getBoolean("event.spawn.breeding");
if (PlotSquared.get().isWeInitialised()) {
loadFlags(config);
} else {
ConsolePlayer.getConsole().sendMessage(
TranslatableCaption.of("flags.delaying_loading_area_flags"),
TagResolver.resolver("area", Tag.inserting(Component.text(this.id == null ? this.worldName : this.id)))
);
TaskManager.runTaskLater(() -> loadFlags(config), TaskTime.ticks(1));
}
loadConfiguration(config);
}
private void loadFlags(ConfigurationSection config) {
ConsolePlayer.getConsole().sendMessage(
TranslatableCaption.of("flags.loading_area_flags"),
TagResolver.resolver("area", Tag.inserting(Component.text(this.id == null ? this.worldName : this.id)))
);
List<String> flags = config.getStringList("flags.default");
if (flags.isEmpty()) {
flags = config.getStringList("flags");
@ -411,10 +435,6 @@ public abstract class PlotArea implements ComponentLike {
TagResolver.resolver("flags", Tag.inserting(Component.text(flags.toString())))
);
this.spawnEggs = config.getBoolean("event.spawn.egg");
this.spawnCustom = config.getBoolean("event.spawn.custom");
this.spawnBreeding = config.getBoolean("event.spawn.breeding");
List<String> roadflags = config.getStringList("road.flags");
if (roadflags.isEmpty()) {
roadflags = new ArrayList<>();
@ -426,14 +446,12 @@ public abstract class PlotArea implements ComponentLike {
}
}
}
this.roadFlags = roadflags.size() > 0;
this.roadFlags = !roadflags.isEmpty();
parseFlags(this.getRoadFlagContainer(), roadflags);
ConsolePlayer.getConsole().sendMessage(
TranslatableCaption.of("flags.road_flags"),
TagResolver.resolver("flags", Tag.inserting(Component.text(roadflags.toString())))
);
loadConfiguration(config);
}
public abstract void loadConfiguration(ConfigurationSection config);

View File

@ -83,6 +83,7 @@ import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
import java.nio.channels.Channels;
@ -144,7 +145,7 @@ public abstract class SchematicHandler {
}
final URL url;
try {
url = new URL(Settings.Web.URL + "?key=" + uuid + "&type=" + extension);
url = URI.create(Settings.Web.URL + "?key=" + uuid + "&type=" + extension).toURL();
} catch (MalformedURLException e) {
e.printStackTrace();
whenDone.run();
@ -153,7 +154,7 @@ public abstract class SchematicHandler {
TaskManager.runTaskAsync(() -> {
try {
String boundary = Long.toHexString(System.currentTimeMillis());
URLConnection con = new URL(website).openConnection();
URLConnection con = URI.create(website).toURL().openConnection();
con.setDoOutput(true);
con.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
try (OutputStream output = con.getOutputStream();
@ -498,9 +499,10 @@ public abstract class SchematicHandler {
public List<String> getSaves(UUID uuid) {
String rawJSON;
try {
String website = Settings.Web.URL + "list.php?" + uuid.toString();
URL url = new URL(website);
URLConnection connection = new URL(url.toString()).openConnection();
URLConnection connection = URI.create(
Settings.Web.URL + "list.php?" + uuid.toString())
.toURL()
.openConnection();
connection.setRequestProperty("User-Agent", "Mozilla/5.0");
try (BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()))) {
rawJSON = reader.lines().collect(Collectors.joining());

View File

@ -631,6 +631,8 @@
"flags.flag_error_double": "Flag value must be a decimal number.",
"flags.flag_error_music": "Flag value must be a valid music disc ID.",
"flags.flag_error_title": "Flag value must be in the format </red><grey>\"A title\" \"The subtitle\"</grey><red>.",
"flags.delaying_loading_area_flags": "<prefix><gray>Delaying loading flags for area `</gray><dark_aqua><area></dark_aqua><gray>` as WorldEdit is not initialised yet.</gray>",
"flags.loading_area_flags": "<prefix><gray>Loading flags for area: </gray><dark_aqua><area></dark_aqua>",
"flags.area_flags": "<prefix><gray>Area flags: </gray><dark_aqua><flags></dark_aqua>",
"flags.road_flags": "<prefix><gray>Road flags: </gray><dark_aqua><flags></dark_aqua>",
"commands.description.add": "<gray>Allow a user to build in a plot while the plot owner is online.</gray>",

View File

@ -171,8 +171,9 @@ subprojects {
scm {
url.set("https://github.com/IntellectualSites/PlotSquared")
connection.set("scm:https://IntellectualSites@github.com/IntellectualSites/PlotSquared.git")
developerConnection.set("scm:git://github.com/IntellectualSites/PlotSquared.git")
connection.set("scm:git:https://github.com/IntellectualSites/PlotSquared.git")
developerConnection.set("scm:git:git@github.com:IntellectualSites/PlotSquared.git")
tag.set("${project.version}")
}
issueManagement {

View File

@ -8,13 +8,13 @@ gson = "2.10"
guava = "31.1-jre"
snakeyaml = "2.0"
adventure = "4.14.0"
adventure-bukkit = "4.3.0"
adventure-bukkit = "4.3.1"
log4j = "2.19.0"
# Plugins
worldedit = "7.2.15"
worldedit = "7.2.16"
fawe = "2.7.1"
placeholderapi = "2.11.3"
placeholderapi = "2.11.4"
luckperms = "5.4"
essentialsx = "2.20.1"
mvdwapi = "3.1.1"