Вставить регион и заменить сундуки WE API

  • Автор темы Автор темы Snowmaze
  • Дата начала Дата начала

Snowmaze

Участник
Пользователь
Баллы
36
Мне нужно вставить регион скопированный с помощью //copy и заменить в нём сундуки на воздух. Как можно сделать? Версия 1.12.2
 
Вот сурсы, если че.

Код:
package wg;

import org.bukkit.plugin.java.JavaPlugin;
import com.sk89q.worldedit.WorldEdit;

public class Main extends JavaPlugin {

    @Override
    public void onEnable() {
        WorldEdit.getInstance().getEventBus().register(new MyEventHandler());
    }
}

Код:
package wg;

import com.sk89q.worldedit.event.extent.EditSessionEvent;
import com.sk89q.worldedit.util.eventbus.Subscribe;
import com.sk89q.worldedit.EditSession;

public class MyEventHandler {
    @Subscribe
    public void onEditSessionChange(EditSessionEvent event) {
        if (event.getStage() == EditSession.Stage.BEFORE_CHANGE) {
            event.setExtent(new DelegateExtent(event.getExtent()));
        }
    }
}

Код:
package wg;

import org.bukkit.Bukkit;
import org.bukkit.Material;

import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.extent.AbstractDelegateExtent;
import com.sk89q.worldedit.extent.Extent;
import com.sk89q.worldedit.math.BlockVector3;
import com.sk89q.worldedit.world.block.BlockStateHolder;

public class DelegateExtent extends AbstractDelegateExtent {
    public DelegateExtent(Extent extent) {
        super(extent);
    }

    @Override
    public boolean setBlock(BlockVector3 location, BlockStateHolder block) throws WorldEditException {
        if (block.getAsString().contains("minecraft:chest")) {
            return super.setBlock(location, BukkitAdapter.adapt(Bukkit.createBlockData(Material.AIR)));
        }
        return super.setBlock(location, block);
    }
}
 
А какую там версию API тогда надо и как это сделать под эту версию? Я бы сам посмотрел как всё это сделать, но сайт с доками WE API почему-то лежит(
spigot 1.13.2 или выше. Тогда заведется.
 
Ну тогда не ко мне. Сорян. Я поделился тем, что делал себе. То был плагин на защиту бедрока на карте от донатеров с set.
Спасибо за помощь! Я попробую всё-таки под 1.13.2 пока сделать
 
Ну тогда не ко мне. Сорян. Я поделился тем, что делал себе. То был плагин на защиту бедрока на карте от донатеров с set.
А ещё вопросик, есть способ забиндить замену сундуков на отдельные команды типа //paste и //stack? А то на все в итоге работает
 
Назад
Верх