Merge branch 'master' into multi-kit
Dieser Commit ist enthalten in:
Commit
f760ce58d9
@ -64,6 +64,7 @@ public class SWException {
|
|||||||
reasons.add("Unsupported key:");
|
reasons.add("Unsupported key:");
|
||||||
reasons.add("ThrownPotion entity");
|
reasons.add("ThrownPotion entity");
|
||||||
reasons.add("Couldn't load custom particle");
|
reasons.add("Couldn't load custom particle");
|
||||||
|
reasons.add("Chunk file at [");
|
||||||
reasons.add("Ignoring unknown attribute");
|
reasons.add("Ignoring unknown attribute");
|
||||||
reasons.add("Skipping player strafe phase because no player was found");
|
reasons.add("Skipping player strafe phase because no player was found");
|
||||||
ignorereasons = Collections.unmodifiableList(reasons);
|
ignorereasons = Collections.unmodifiableList(reasons);
|
||||||
|
@ -220,6 +220,16 @@ public class Schematic {
|
|||||||
saveFromPlayer(player, true);
|
saveFromPlayer(player, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void saveFromBytes(byte[] bytes, boolean newFormat) {
|
||||||
|
Blob blob = SQL.blob();
|
||||||
|
try {
|
||||||
|
blob.setBytes(1, bytes);
|
||||||
|
updateDatabase(blob, newFormat);
|
||||||
|
} catch (SQLException e) {
|
||||||
|
throw new SecurityException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void saveFromPlayer(Player player, boolean newFormat) throws IOException, NoClipboardException {
|
private void saveFromPlayer(Player player, boolean newFormat) throws IOException, NoClipboardException {
|
||||||
Blob blob = SQL.blob();
|
Blob blob = SQL.blob();
|
||||||
VersionedRunnable.call(new VersionedRunnable(() -> {
|
VersionedRunnable.call(new VersionedRunnable(() -> {
|
||||||
@ -228,18 +238,18 @@ public class Schematic {
|
|||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
throw new RuntimeException(e.getMessage(), e);
|
throw new RuntimeException(e.getMessage(), e);
|
||||||
}
|
}
|
||||||
updateDatabase(blob, player, false);
|
updateDatabase(blob, false);
|
||||||
}, 8), new VersionedRunnable(() -> {
|
}, 8), new VersionedRunnable(() -> {
|
||||||
try {
|
try {
|
||||||
blob.setBytes(1, Schematic_14.getPlayerClipboard(player, newFormat));
|
blob.setBytes(1, Schematic_14.getPlayerClipboard(player, newFormat));
|
||||||
} catch (SQLException exception) {
|
} catch (SQLException exception) {
|
||||||
throw new RuntimeException(exception.getMessage(), exception);
|
throw new RuntimeException(exception.getMessage(), exception);
|
||||||
}
|
}
|
||||||
updateDatabase(blob, player, newFormat);
|
updateDatabase(blob, newFormat);
|
||||||
}, 14));
|
}, 14));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateDatabase(Blob blob, Player player, boolean newFormat) {
|
private void updateDatabase(Blob blob, boolean newFormat) {
|
||||||
SQL.update("UPDATE Schematic SET SchemData = ?, SchemFormat = ? WHERE SchemID = ?", blob, newFormat, schemID);
|
SQL.update("UPDATE Schematic SET SchemData = ?, SchemFormat = ? WHERE SchemID = ?", blob, newFormat, schemID);
|
||||||
schemFormat = newFormat;
|
schemFormat = newFormat;
|
||||||
}
|
}
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren