mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2025-06-11 20:13:55 +00:00
This commit is contained in:
@ -19,17 +19,19 @@
|
||||
|
||||
package com.sk89q.worldedit.bukkit;
|
||||
|
||||
import com.sk89q.worldedit.blocks.BaseItem;
|
||||
import com.sk89q.worldedit.blocks.BaseItemStack;
|
||||
import com.sk89q.worldedit.extent.inventory.BlockBag;
|
||||
import com.sk89q.worldedit.extent.inventory.BlockBagException;
|
||||
import com.sk89q.worldedit.extent.inventory.OutOfBlocksException;
|
||||
import com.sk89q.worldedit.extent.inventory.OutOfSpaceException;
|
||||
import com.sk89q.worldedit.extent.inventory.SlottableBlockBag;
|
||||
import com.sk89q.worldedit.util.Location;
|
||||
import com.sk89q.worldedit.world.block.BlockState;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class BukkitPlayerBlockBag extends BlockBag {
|
||||
public class BukkitPlayerBlockBag extends BlockBag implements SlottableBlockBag {
|
||||
|
||||
private Player player;
|
||||
private ItemStack[] items;
|
||||
@ -61,6 +63,19 @@ public class BukkitPlayerBlockBag extends BlockBag {
|
||||
return player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseItem getItem(int slot) {
|
||||
loadInventory();
|
||||
return BukkitAdapter.adapt(items[slot]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setItem(int slot, BaseItem block) {
|
||||
loadInventory();
|
||||
BaseItemStack stack = block instanceof BaseItemStack ? (BaseItemStack) block : new BaseItemStack(block.getType(), block.getNbtData(), 1);
|
||||
items[slot] = BukkitAdapter.adapt(stack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fetchBlock(BlockState blockState) throws BlockBagException {
|
||||
if (blockState.getBlockType().getMaterial().isAir()) {
|
||||
|
@ -28,6 +28,7 @@ import com.sk89q.worldedit.entity.Player;
|
||||
import com.sk89q.worldedit.extension.platform.Actor;
|
||||
import com.sk89q.worldedit.util.Location;
|
||||
import com.sk89q.worldedit.util.command.CommandMapping;
|
||||
import com.sk89q.worldedit.util.command.Dispatcher;
|
||||
import com.sk89q.worldedit.world.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.event.Event.Result;
|
||||
@ -108,6 +109,8 @@ public class WorldEditListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
|
||||
public void onPlayerCommand(PlayerCommandSendEvent event) {
|
||||
Dispatcher dispatcher = plugin.getWorldEdit().getPlatformManager().getCommandManager().getDispatcher();
|
||||
if (dispatcher != null) {
|
||||
CommandLocals locals = new CommandLocals();
|
||||
locals.put(Actor.class, plugin.wrapCommandSender(event.getPlayer()));
|
||||
Set<String> toRemove = plugin.getWorldEdit().getPlatformManager().getCommandManager().getDispatcher().getCommands().stream()
|
||||
@ -115,6 +118,7 @@ public class WorldEditListener implements Listener {
|
||||
.map(CommandMapping::getPrimaryAlias)
|
||||
.collect(Collectors.toSet());
|
||||
event.getCommands().removeIf(toRemove::contains);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -19,6 +19,8 @@
|
||||
|
||||
package com.sk89q.worldedit.bukkit;
|
||||
|
||||
import com.bekvon.bukkit.residence.commands.message;
|
||||
import com.bekvon.bukkit.residence.containers.cmd;
|
||||
import com.boydti.fawe.Fawe;
|
||||
import com.boydti.fawe.bukkit.FaweBukkit;
|
||||
import com.boydti.fawe.bukkit.adapter.v1_13_1.Spigot_v1_13_R2;
|
||||
@ -183,8 +185,10 @@ public class WorldEditPlugin extends JavaPlugin { //implements TabCompleter
|
||||
PermissionsResolverManager.initialize(this); // Setup permission resolver
|
||||
|
||||
// Register CUI
|
||||
fail(() -> {
|
||||
getServer().getMessenger().registerIncomingPluginChannel(this, CUI_PLUGIN_CHANNEL, new CUIChannelListener(this));
|
||||
getServer().getMessenger().registerOutgoingPluginChannel(this, CUI_PLUGIN_CHANNEL);
|
||||
}, "Failed to register CUI");
|
||||
|
||||
// Now we can register events
|
||||
getServer().getPluginManager().registerEvents(new WorldEditListener(this), this);
|
||||
|
@ -30,67 +30,7 @@ limits:
|
||||
butcher-radius:
|
||||
default: -1
|
||||
maximum: -1
|
||||
disallowed-blocks:
|
||||
- "minecraft:oak_sapling"
|
||||
- "minecraft:jungle_sapling"
|
||||
- "minecraft:dark_oak_sapling:"
|
||||
- "minecraft:spruce_sapling"
|
||||
- "minecraft:birch_sapling"
|
||||
- "minecraft:acacia_sapling"
|
||||
- "minecraft:black_bed"
|
||||
- "minecraft:blue_bed"
|
||||
- "minecraft:brown_bed"
|
||||
- "minecraft:cyan_bed"
|
||||
- "minecraft:gray_bed"
|
||||
- "minecraft:green_bed"
|
||||
- "minecraft:light_blue_bed"
|
||||
- "minecraft:light_gray_bed"
|
||||
- "minecraft:lime_bed"
|
||||
- "minecraft:magenta_bed"
|
||||
- "minecraft:orange_bed"
|
||||
- "minecraft:pink_bed"
|
||||
- "minecraft:purple_bed"
|
||||
- "minecraft:red_bed"
|
||||
- "minecraft:white_bed"
|
||||
- "minecraft:yellow_bed"
|
||||
- "minecraft:powered_rail"
|
||||
- "minecraft:detector_rail"
|
||||
- "minecraft:grass"
|
||||
- "minecraft:dead_bush"
|
||||
- "minecraft:moving_piston"
|
||||
- "minecraft:piston_head"
|
||||
- "minecraft:sunflower"
|
||||
- "minecraft:rose_bush"
|
||||
- "minecraft:dandelion"
|
||||
- "minecraft:poppy"
|
||||
- "minecraft:brown_mushroom"
|
||||
- "minecraft:red_mushroom"
|
||||
- "minecraft:tnt"
|
||||
- "minecraft:torch"
|
||||
- "minecraft:fire"
|
||||
- "minecraft:redstone_wire"
|
||||
- "minecraft:wheat"
|
||||
- "minecraft:potatoes"
|
||||
- "minecraft:carrots"
|
||||
- "minecraft:melon_stem"
|
||||
- "minecraft:pumpkin_stem"
|
||||
- "minecraft:beetroots"
|
||||
- "minecraft:rail"
|
||||
- "minecraft:lever"
|
||||
- "minecraft:redstone_torch"
|
||||
- "minecraft:redstone_wall_torch"
|
||||
- "minecraft:repeater"
|
||||
- "minecraft:comparator"
|
||||
- "minecraft:stone_button"
|
||||
- "minecraft:birch_button"
|
||||
- "minecraft:acacia_button"
|
||||
- "minecraft:dark_oak_button"
|
||||
- "minecraft:jungle_button"
|
||||
- "minecraft:oak_button"
|
||||
- "minecraft:spruce_button"
|
||||
- "minecraft:cactus"
|
||||
- "minecraft:sugar_cane"
|
||||
- "minecraft:bedrock"
|
||||
disallowed-blocks: []
|
||||
|
||||
use-inventory:
|
||||
enable: false
|
||||
|
Reference in New Issue
Block a user