/** * Get WorldEdit. * * @return an instance */ public WorldEdit getWorldEdit() { return WorldEdit.getInstance(); }
/** * Get the session for a player. * * @param player the player * @return the session */ public LocalSession getSession(EntityPlayerMP player) { checkNotNull(player); return WorldEdit.getInstance().getSessionManager().get(wrap(player)); }
/** * Get the session for a player. * * @param player the player * @return the session */ public LocalSession getSession(Player player) { checkNotNull(player); return WorldEdit.getInstance().getSessionManager().get(wrapPlayer(player)); }
@Nullable @Override public BlockState apply(@Nullable String input) { try { return WorldEdit.getInstance().getBlockFactory().parseFromInput(input, TO_BLOCK_CONTEXT).toImmutableState(); } catch (InputParseException e) { e.printStackTrace(); return null; } } });
/** * Gets the session for the player. * * @param player a player * @return a session */ public LocalSession getSession(Player player) { return WorldEdit.getInstance().getSessionManager().get(wrapPlayer(player)); }
/** * Remember an edit session. * * @param player a player * @param editSession an edit session */ public void remember(Player player, EditSession editSession) { com.sk89q.worldedit.entity.Player wePlayer = wrapPlayer(player); LocalSession session = WorldEdit.getInstance().getSessionManager().get(wePlayer); session.remember(editSession); editSession.flushSession(); WorldEdit.getInstance().flushBlockBag(wePlayer, editSession); }
/** * Gets the properties of this BlockType in a {@code key->property} mapping. * * @return The properties map */ public Map<String, ? extends Property<?>> getPropertyMap() { return updateField(properties, () -> ImmutableMap.copyOf(WorldEdit.getInstance().getPlatformManager() .queryCapability(Capability.GAME_HOOKS).getRegistries().getBlockRegistry().getProperties(this))); }
@Override public List<String> getSuggestions(CommandSource source, String arguments, @Nullable Location<org.spongepowered.api.world.World> targetPosition) throws CommandException { CommandSuggestionEvent weEvent = new CommandSuggestionEvent(SpongeWorldEdit.inst().wrapCommandSource(source), command.getPrimaryAlias() + " " + arguments); WorldEdit.getInstance().getEventBus().post(weEvent); return weEvent.getSuggestions(); } };
@Listener public void serverStopping(GameStoppingServerEvent event) { WorldEdit worldEdit = WorldEdit.getInstance(); worldEdit.getSessionManager().unload(); worldEdit.getPlatformManager().unregister(platform); }
@EventHandler public void serverStopping(FMLServerStoppingEvent event) { WorldEdit worldEdit = WorldEdit.getInstance(); worldEdit.getSessionManager().unload(); worldEdit.getPlatformManager().unregister(platform); }
@Override protected Set<ItemType> load() { return WorldEdit.getInstance().getPlatformManager() .queryCapability(Capability.GAME_HOOKS).getRegistries() .getItemCategoryRegistry().getAll(this); }
@Listener public void serverStarted(GameStartedServerEvent event) { WorldEdit.getInstance().getEventBus().post(new PlatformReadyEvent()); loadAdapter(); }
@Override protected Set<BlockType> load() { return WorldEdit.getInstance().getPlatformManager() .queryCapability(Capability.GAME_HOOKS).getRegistries() .getBlockCategoryRegistry().getAll(this); }
@Before public void setup() { Platform mockPlat = Mockito.mock(Platform.class); Mockito.when(mockPlat.getConfiguration()).thenReturn(new LocalConfiguration() { @Override public void load() { } }); WorldEdit.getInstance().getPlatformManager().register(mockPlat); }
@SubscribeEvent public void onCommandEvent(CommandEvent event) { if ((event.getSender() instanceof EntityPlayerMP)) { if (((EntityPlayerMP) event.getSender()).world.isRemote) return; String[] split = new String[event.getParameters().length + 1]; System.arraycopy(event.getParameters(), 0, split, 1, event.getParameters().length); split[0] = event.getCommand().getName(); com.sk89q.worldedit.event.platform.CommandEvent weEvent = new com.sk89q.worldedit.event.platform.CommandEvent(wrap((EntityPlayerMP) event.getSender()), Joiner.on(" ").join(split)); WorldEdit.getInstance().getEventBus().post(weEvent); } }
/** * Get the material for this BlockType. * * @return The material */ public BlockMaterial getMaterial() { return updateField(blockMaterial, () -> WorldEdit.getInstance().getPlatformManager() .queryCapability(Capability.GAME_HOOKS).getRegistries().getBlockRegistry().getMaterial(this)); }
/** * Gets the name of this block, or the ID if the name cannot be found. * * @return The name, or ID */ public String getName() { String name = WorldEdit.getInstance().getPlatformManager().queryCapability(Capability.GAME_HOOKS).getRegistries().getBlockRegistry().getName(this); if (name == null) { return getId(); } else { return name; } }
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onGamemode(PlayerGameModeChangeEvent event) { if (!plugin.getInternalPlatform().isHookingEvents()) { return; } // this will automatically refresh their session, we don't have to do anything WorldEdit.getInstance().getSessionManager().get(plugin.wrapPlayer(event.getPlayer())); }
@Override public EditSession getEditSession(World world, int maxBlocks, BlockBag blockBag, Player player) { if (WorldEdit.getInstance().getConfiguration().traceUnflushedSessions) { return new TracedEditSession(eventBus, world, maxBlocks, blockBag, new EditSessionEvent(world, player, maxBlocks, null)); } return new EditSession(eventBus, world, maxBlocks, blockBag, new EditSessionEvent(world, player, maxBlocks, null)); }
@Override public CommandResult process(CommandSource source, String arguments) throws org.spongepowered.api.command.CommandException { CommandEvent weEvent = new CommandEvent(SpongeWorldEdit.inst().wrapCommandSource(source), command.getPrimaryAlias() + " " + arguments); WorldEdit.getInstance().getEventBus().post(weEvent); return weEvent.isCancelled() ? CommandResult.success() : CommandResult.empty(); }