Add CommandTestblock.genericTestblockCommand
Dieser Commit ist enthalten in:
Ursprung
9e899fe195
Commit
7b3be4ae1e
@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
package de.steamwar.bausystem.world.regions;
|
package de.steamwar.bausystem.world.regions;
|
||||||
|
|
||||||
|
import com.google.common.collect.Sets;
|
||||||
import com.sk89q.worldedit.EditSession;
|
import com.sk89q.worldedit.EditSession;
|
||||||
import com.sk89q.worldedit.WorldEdit;
|
import com.sk89q.worldedit.WorldEdit;
|
||||||
import com.sk89q.worldedit.WorldEditException;
|
import com.sk89q.worldedit.WorldEditException;
|
||||||
@ -40,6 +41,8 @@ import org.bukkit.Bukkit;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
class Region_15 {
|
class Region_15 {
|
||||||
@ -77,6 +80,9 @@ class Region_15 {
|
|||||||
e.setBlocks(new CuboidRegion(RegionUtils_15.toBlockVector3(pasteOptions.getMinPoint()), RegionUtils_15.toBlockVector3(pasteOptions.getMaxPoint())), BlockTypes.AIR.getDefaultState().toBaseBlock());
|
e.setBlocks(new CuboidRegion(RegionUtils_15.toBlockVector3(pasteOptions.getMinPoint()), RegionUtils_15.toBlockVector3(pasteOptions.getMaxPoint())), BlockTypes.AIR.getDefaultState().toBaseBlock());
|
||||||
}
|
}
|
||||||
Operations.completeBlindly(ch.createPaste(e).to(v).ignoreAirBlocks(pasteOptions.isIgnoreAir()).build());
|
Operations.completeBlindly(ch.createPaste(e).to(v).ignoreAirBlocks(pasteOptions.isIgnoreAir()).build());
|
||||||
|
if (pasteOptions.isReset() && pasteOptions.getWaterLevel() != 0) {
|
||||||
|
e.replaceBlocks(new CuboidRegion(RegionUtils_15.toBlockVector3(pasteOptions.getMinPoint()), RegionUtils_15.toBlockVector3(pasteOptions.getMaxPoint()).withY(pasteOptions.getWaterLevel())), new HashSet<>(Arrays.asList(BlockTypes.AIR.getDefaultState().toBaseBlock())), BlockTypes.WATER.getDefaultState().toBaseBlock());
|
||||||
|
}
|
||||||
return e;
|
return e;
|
||||||
} catch (WorldEditException e) {
|
} catch (WorldEditException e) {
|
||||||
throw new SecurityException(e.getMessage(), e);
|
throw new SecurityException(e.getMessage(), e);
|
||||||
|
@ -59,6 +59,11 @@ public class PasteOptions {
|
|||||||
*/
|
*/
|
||||||
private Point maxPoint = null;
|
private Point maxPoint = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Used in 1.15
|
||||||
|
*/
|
||||||
|
private int waterLevel = 0;
|
||||||
|
|
||||||
public PasteOptions(boolean rotate) {
|
public PasteOptions(boolean rotate) {
|
||||||
this.rotate = rotate;
|
this.rotate = rotate;
|
||||||
}
|
}
|
||||||
|
@ -69,11 +69,6 @@ public class CommandTestblock extends SWCommand {
|
|||||||
schematicTestblockCommand(p, s, RegionExtensionType.NORMAL);
|
schematicTestblockCommand(p, s, RegionExtensionType.NORMAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Register
|
|
||||||
public void schematicTestblockCommand(Player p, RegionExtensionType regionExtensionType, String s) {
|
|
||||||
schematicTestblockCommand(p, s, regionExtensionType);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Register
|
@Register
|
||||||
public void schematicTestblockCommand(Player p, String s, RegionExtensionType regionExtensionType) {
|
public void schematicTestblockCommand(Player p, String s, RegionExtensionType regionExtensionType) {
|
||||||
if (!permissionCheck(p)) return;
|
if (!permissionCheck(p)) return;
|
||||||
|
@ -151,7 +151,7 @@ public class Prototype {
|
|||||||
public EditSession reset(Region region, Schematic schem, boolean ignoreAir, Color color, boolean reset) throws IOException, NoClipboardException {
|
public EditSession reset(Region region, Schematic schem, boolean ignoreAir, Color color, boolean reset) throws IOException, NoClipboardException {
|
||||||
PasteOptions pasteOptions;
|
PasteOptions pasteOptions;
|
||||||
if (reset) {
|
if (reset) {
|
||||||
pasteOptions = new PasteOptions(rotate ^ (schem != null && (schem.getSchemType().fightType() || schem.getSchemType().check())), ignoreAir, color, true, getMinPoint(region, RegionExtensionType.EXTENSION), getMaxPoint(region, RegionExtensionType.EXTENSION));
|
pasteOptions = new PasteOptions(rotate ^ (schem != null && (schem.getSchemType().fightType() || schem.getSchemType().check())), ignoreAir, color, true, getMinPoint(region, RegionExtensionType.EXTENSION), getMaxPoint(region, RegionExtensionType.EXTENSION), waterLevel);
|
||||||
} else {
|
} else {
|
||||||
pasteOptions = new PasteOptions(rotate ^ (schem != null && (schem.getSchemType().fightType() || schem.getSchemType().check())), ignoreAir, color);
|
pasteOptions = new PasteOptions(rotate ^ (schem != null && (schem.getSchemType().fightType() || schem.getSchemType().check())), ignoreAir, color);
|
||||||
}
|
}
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren