Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.gon_bao.fawetest;
- import com.sk89q.worldedit.EditSession;
- import com.sk89q.worldedit.WorldEdit;
- import com.sk89q.worldedit.WorldEditException;
- import com.sk89q.worldedit.bukkit.BukkitWorld;
- import com.sk89q.worldedit.extent.clipboard.Clipboard;
- import com.sk89q.worldedit.extent.clipboard.io.ClipboardFormat;
- import com.sk89q.worldedit.extent.clipboard.io.ClipboardFormats;
- import com.sk89q.worldedit.extent.clipboard.io.ClipboardReader;
- import com.sk89q.worldedit.function.operation.Operation;
- import com.sk89q.worldedit.function.operation.Operations;
- import com.sk89q.worldedit.math.BlockVector3;
- import com.sk89q.worldedit.session.ClipboardHolder;
- import com.sk89q.worldedit.world.World;
- import org.bukkit.Location;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.plugin.Plugin;
- import org.bukkit.plugin.java.JavaPlugin;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- public class Main extends JavaPlugin {
- Plugin plugin;
- public void onEnable() {
- plugin = this;
- }
- public void onDisable() {
- plugin = null;
- }
- public boolean onCommand(CommandSender commandSender, Command command, String s, String[] strings) {
- if (commandSender instanceof Player) {
- if (command.getName().equalsIgnoreCase("fawetest")) {
- Player player = (Player) commandSender;
- World world = new BukkitWorld(player.getLocation().getWorld());
- Location playerLocation = player.getLocation();
- BlockVector3 position = BlockVector3.at(playerLocation.getBlockX(), playerLocation.getBlockY(), playerLocation.getBlockZ());
- File file = new File(plugin.getDataFolder() + "/schematic.schem");
- if (file.exists()) {
- ClipboardFormat clipboardFormat = ClipboardFormats.findByFile(file);
- Clipboard clipboard = null;
- try (ClipboardReader clipboardReader = clipboardFormat.getReader(new FileInputStream(file))) {
- clipboard = clipboardReader.read();
- } catch (IOException e) {
- e.printStackTrace();
- return true;
- }
- ClipboardHolder clipboardHolder = new ClipboardHolder(clipboard);
- try (EditSession editSession = WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1)) {
- Operation operation = clipboardHolder.createPaste(editSession).to(position).ignoreAirBlocks(true).build();
- Operations.complete(operation);
- editSession.flushSession();
- } catch (WorldEditException e) {
- e.printStackTrace();
- return true;
- }
- }
- return true;
- }
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement