From 37072b1f494a1d5aeeddf54a9ce6ae76a5e832b0 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Sun, 1 Dec 2024 17:06:35 +0100 Subject: [PATCH] Fixes... --- .../de/steamwar/core/FlatteningWrapper14.java | 2 +- .../src/de/steamwar/core/WorldEditWrapper14.java | 16 ++++++---------- .../src/de/steamwar/core/WorldEditWrapper8.java | 13 +------------ .../src/de/steamwar/core/ErrorHandler.java | 2 +- .../src/de/steamwar/core/WorldEditWrapper.java | 10 ++++++---- 5 files changed, 15 insertions(+), 28 deletions(-) diff --git a/SpigotCore/SpigotCore_14/src/de/steamwar/core/FlatteningWrapper14.java b/SpigotCore/SpigotCore_14/src/de/steamwar/core/FlatteningWrapper14.java index b7a9bf7f..9d807498 100644 --- a/SpigotCore/SpigotCore_14/src/de/steamwar/core/FlatteningWrapper14.java +++ b/SpigotCore/SpigotCore_14/src/de/steamwar/core/FlatteningWrapper14.java @@ -294,7 +294,7 @@ public class FlatteningWrapper14 implements FlatteningWrapper.IFlatteningWrapper ItemStack head = new ItemStack(Material.PLAYER_HEAD, 1); SkullMeta headmeta = (SkullMeta) head.getItemMeta(); assert headmeta != null; - headmeta.setOwningPlayer(Bukkit.getOfflinePlayer(player.startsWith(".") ? player.substring(1) : player)); + headmeta.setOwningPlayer(Bukkit.getOfflinePlayer((player.startsWith(".") ? player.substring(1) : player).replaceAll("ยง.", ""))); headmeta.setDisplayName(player); head.setItemMeta(headmeta); return head; diff --git a/SpigotCore/SpigotCore_14/src/de/steamwar/core/WorldEditWrapper14.java b/SpigotCore/SpigotCore_14/src/de/steamwar/core/WorldEditWrapper14.java index ae0130ab..cd116bac 100644 --- a/SpigotCore/SpigotCore_14/src/de/steamwar/core/WorldEditWrapper14.java +++ b/SpigotCore/SpigotCore_14/src/de/steamwar/core/WorldEditWrapper14.java @@ -63,16 +63,12 @@ public class WorldEditWrapper14 implements WorldEditWrapper { @Override public InputStream getPlayerClipboard(Player player, boolean schemFormat) { return WorldEditWrapper.getPlayerClipboard(player, schemFormat, (outputStream, clipboard, clipboardHolder) -> { - try { - if(schemFormat){ - ClipboardWriter writer = SCHEM.getWriter(outputStream); - writer.write(clipboard); - writer.close(); - }else{ - SCHEMATIC.getWriter(outputStream).write(clipboard); - } - } catch (Exception e) { - throw new RuntimeException(e.getMessage(), e); + if(schemFormat){ + ClipboardWriter writer = SCHEM.getWriter(outputStream); + writer.write(clipboard); + writer.close(); + }else{ + SCHEMATIC.getWriter(outputStream).write(clipboard); } }); } diff --git a/SpigotCore/SpigotCore_8/src/de/steamwar/core/WorldEditWrapper8.java b/SpigotCore/SpigotCore_8/src/de/steamwar/core/WorldEditWrapper8.java index e62e7e3f..f3fc2800 100644 --- a/SpigotCore/SpigotCore_8/src/de/steamwar/core/WorldEditWrapper8.java +++ b/SpigotCore/SpigotCore_8/src/de/steamwar/core/WorldEditWrapper8.java @@ -37,33 +37,22 @@ import com.sk89q.worldedit.regions.CuboidRegion; import com.sk89q.worldedit.regions.Region; import com.sk89q.worldedit.session.ClipboardHolder; import com.sk89q.worldedit.world.registry.WorldData; -import de.steamwar.sql.NoClipboardException; import org.bukkit.entity.Player; import java.io.IOException; import java.io.InputStream; -import java.io.PipedInputStream; -import java.io.PipedOutputStream; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.logging.Level; import java.util.stream.Collectors; -import java.util.zip.GZIPInputStream; public class WorldEditWrapper8 implements WorldEditWrapper { @Override public InputStream getPlayerClipboard(Player player, boolean schemFormat) { return WorldEditWrapper.getPlayerClipboard(player, schemFormat, (outputStream, clipboard, clipboardHolder) -> - { - try { - ClipboardFormat.SCHEMATIC.getWriter(outputStream).write(clipboard, clipboardHolder.getWorldData()); - } catch (IOException e) { - throw new RuntimeException(e); - } - }); + ClipboardFormat.SCHEMATIC.getWriter(outputStream).write(clipboard, clipboardHolder.getWorldData())); } @Override diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/ErrorHandler.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/ErrorHandler.java index 62a7f2b7..c9585847 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/ErrorHandler.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/ErrorHandler.java @@ -77,7 +77,7 @@ public class ErrorHandler extends Handler { return; try { - //SWException.log(message, stacktrace); + SWException.log(message, stacktrace); } catch (SecurityException e) { Core.getInstance().getLogger().log(Level.INFO, "Could not log error in database", e); } diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldEditWrapper.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldEditWrapper.java index 0d94049c..87906944 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldEditWrapper.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldEditWrapper.java @@ -22,10 +22,8 @@ package de.steamwar.core; import com.sk89q.worldedit.EmptyClipboardException; import com.sk89q.worldedit.bukkit.WorldEditPlugin; import com.sk89q.worldedit.extent.clipboard.Clipboard; -import com.sk89q.worldedit.extent.clipboard.io.ClipboardFormat; import com.sk89q.worldedit.session.ClipboardHolder; import de.steamwar.sql.NoClipboardException; -import org.apache.logging.log4j.util.TriConsumer; import com.sk89q.worldedit.math.transform.Transform; import com.sk89q.worldedit.regions.Region; import org.bukkit.Bukkit; @@ -51,7 +49,7 @@ public interface WorldEditWrapper { return (WorldEditPlugin) Bukkit.getPluginManager().getPlugin("WorldEdit"); } - public static InputStream getPlayerClipboard(Player player, boolean schemFormat, TriConsumer consumer) { + public static InputStream getPlayerClipboard(Player player, boolean schemFormat, SchematicWriter consumer) { ClipboardHolder clipboardHolder; try { clipboardHolder = WorldEditWrapper.getWorldEditPlugin().getSession(player).getClipboard(); @@ -73,7 +71,7 @@ public interface WorldEditWrapper { new Thread(() -> { try { - consumer.accept(outputStream, clipboard, clipboardHolder); + consumer.write(outputStream, clipboard, clipboardHolder); } catch (Exception e) { Core.getInstance().getLogger().log(Level.SEVERE, "Could not write schematic", e); } @@ -86,4 +84,8 @@ public interface WorldEditWrapper { return inputStream; } + + public static interface SchematicWriter { + void write(OutputStream outputStream, Clipboard clipboard, ClipboardHolder holder) throws IOException; + } }