Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WorldEdit goes on an adventure #1480

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion buildSrc/src/main/kotlin/LibsConfig.kt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ fun Project.applyLibrariesConfiguration() {
group = "${rootProject.group}.worldedit-libs"

val relocations = mapOf(
"net.kyori.text" to "com.sk89q.worldedit.util.formatting.text",
"net.kyori.adventure.text" to "com.sk89q.worldedit.util.formatting.text",
"net.kyori.minecraft" to "com.sk89q.worldedit.util.kyori"
)

Expand Down
1 change: 0 additions & 1 deletion buildSrc/src/main/kotlin/PlatformConfig.kt
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import net.minecrell.gradle.licenser.LicenseExtension
import org.gradle.api.JavaVersion
import org.gradle.api.Project
import org.gradle.api.plugins.JavaPluginConvention
Expand Down
4 changes: 2 additions & 2 deletions buildSrc/src/main/kotlin/Versions.kt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import org.gradle.api.Project

object Versions {
const val TEXT = "3.0.4"
const val TEXT_EXTRAS = "3.0.6"
const val ADVENTURE = "4.0.0-SNAPSHOT"
const val ADVENTURE_EXTRAS = "4.0.0-SNAPSHOT"
const val PISTON = "0.5.6"
const val AUTO_VALUE = "1.7"
const val JUNIT = "5.6.1"
Expand Down
7 changes: 7 additions & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,10 @@ listOf("bukkit", "core", "forge", "sponge", "fabric", "cli").forEach {
include("worldedit-libs:core:ap")

include("worldedit-core:doctools")

if (gradle.plugins.none { "JetGradlePlugin" in it.javaClass.name }) {
includeBuild("../Piston") {
dependencySubstitution {
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@

import javax.annotation.Nullable;

import static com.sk89q.worldedit.util.formatting.text.Component.translatable;

/**
* A biome registry for Bukkit.
*/
Expand All @@ -39,7 +41,7 @@ class BukkitBiomeRegistry implements BiomeRegistry {

@Override
public Component getRichName(BiomeType biomeType) {
return TranslatableComponent.of(
return translatable(
TranslationManager.makeTranslationKey("biome", biomeType.getId())
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,6 @@
import com.sk89q.worldedit.session.SessionKey;
import com.sk89q.worldedit.util.Location;
import com.sk89q.worldedit.util.auth.AuthorizationException;
import com.sk89q.worldedit.util.formatting.WorldEditText;
import com.sk89q.worldedit.util.formatting.text.Component;
import com.sk89q.worldedit.util.formatting.text.TextComponent;
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.block.Block;
Expand All @@ -40,8 +35,6 @@
import java.util.Locale;
import java.util.UUID;

import static com.google.common.base.Preconditions.checkNotNull;

public class BukkitBlockCommandSender extends AbstractNonPlayerActor implements Locatable {

private static final String UUID_PREFIX = "CMD";
Expand All @@ -52,8 +45,7 @@ public class BukkitBlockCommandSender extends AbstractNonPlayerActor implements
private final UUID uuid;

public BukkitBlockCommandSender(WorldEditPlugin plugin, BlockCommandSender sender) {
checkNotNull(plugin);
checkNotNull(sender);
super(plugin.getAudiences().audience(sender)::sendMessage);

this.plugin = plugin;
this.sender = sender;
Expand All @@ -66,43 +58,6 @@ public String getName() {
return sender.getName();
}

@Override
@Deprecated
public void printRaw(String msg) {
for (String part : msg.split("\n")) {
sender.sendMessage(part);
}
}

@Override
@Deprecated
public void print(String msg) {
for (String part : msg.split("\n")) {
print(TextComponent.of(part, TextColor.LIGHT_PURPLE));
}
}

@Override
@Deprecated
public void printDebug(String msg) {
for (String part : msg.split("\n")) {
print(TextComponent.of(part, TextColor.GRAY));
}
}

@Override
@Deprecated
public void printError(String msg) {
for (String part : msg.split("\n")) {
print(TextComponent.of(part, TextColor.RED));
}
}

@Override
public void print(Component component) {
TextAdapter.sendMessage(sender, WorldEditText.format(component, getLocale()));
}

@Override
public Locale getLocale() {
return WorldEdit.getInstance().getConfiguration().defaultLocale;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,13 @@
import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.extension.platform.AbstractNonPlayerActor;
import com.sk89q.worldedit.session.SessionKey;
import com.sk89q.worldedit.util.formatting.WorldEditText;
import com.sk89q.worldedit.util.formatting.text.Component;
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import java.util.Locale;
import java.util.UUID;
import javax.annotation.Nullable;

import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;

public class BukkitCommandSender extends AbstractNonPlayerActor {

Expand All @@ -43,14 +38,11 @@ public class BukkitCommandSender extends AbstractNonPlayerActor {
private static final UUID DEFAULT_ID = UUID.fromString("a233eb4b-4cab-42cd-9fd9-7e7b9a3f74be");

private final CommandSender sender;
private final WorldEditPlugin plugin;

public BukkitCommandSender(WorldEditPlugin plugin, CommandSender sender) {
checkNotNull(plugin);
checkNotNull(sender);
super(plugin.getAudiences().audience(sender)::sendMessage);
checkArgument(!(sender instanceof Player), "Cannot wrap a player");

this.plugin = plugin;
this.sender = sender;
}

Expand All @@ -64,43 +56,6 @@ public String getName() {
return sender.getName();
}

@Override
@Deprecated
public void printRaw(String msg) {
for (String part : msg.split("\n")) {
sender.sendMessage(part);
}
}

@Override
@Deprecated
public void print(String msg) {
for (String part : msg.split("\n")) {
sender.sendMessage("§d" + part);
}
}

@Override
@Deprecated
public void printDebug(String msg) {
for (String part : msg.split("\n")) {
sender.sendMessage("§7" + part);
}
}

@Override
@Deprecated
public void printError(String msg) {
for (String part : msg.split("\n")) {
sender.sendMessage("§c" + part);
}
}

@Override
public void print(Component component) {
TextAdapter.sendMessage(sender, WorldEditText.format(component, getLocale()));
}

@Override
public String[] getGroups() {
return new String[0];
Expand All @@ -127,7 +82,6 @@ public CommandSender getSender() {
@Override
public SessionKey getSessionKey() {
return new SessionKey() {
@Nullable
@Override
public String getName() {
return sender.getName();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,20 +31,16 @@
import com.sk89q.worldedit.math.Vector3;
import com.sk89q.worldedit.session.SessionKey;
import com.sk89q.worldedit.util.HandSide;
import com.sk89q.worldedit.util.formatting.WorldEditText;
import com.sk89q.worldedit.util.formatting.component.TextUtils;
import com.sk89q.worldedit.util.formatting.text.Component;
import com.sk89q.worldedit.util.formatting.text.TextComponent;
import com.sk89q.worldedit.util.formatting.text.TranslatableComponent;
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
import com.sk89q.worldedit.util.formatting.text.event.ClickEvent;
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
import com.sk89q.worldedit.world.World;
import com.sk89q.worldedit.world.block.BaseBlock;
import com.sk89q.worldedit.world.block.BlockStateHolder;
import com.sk89q.worldedit.world.block.BlockTypes;
import com.sk89q.worldedit.world.gamemode.GameMode;
import com.sk89q.worldedit.world.gamemode.GameModes;
import net.kyori.adventure.audience.Audience;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.entity.Player;
Expand All @@ -54,8 +50,13 @@
import java.util.UUID;
import javax.annotation.Nullable;

import static com.sk89q.worldedit.util.formatting.text.Component.text;
import static com.sk89q.worldedit.util.formatting.text.Component.translatable;
import static com.sk89q.worldedit.util.formatting.text.event.ClickEvent.openUrl;

public class BukkitPlayer extends AbstractPlayerActor {

private final Audience audience;
private final Player player;
private final WorldEditPlugin plugin;

Expand All @@ -64,6 +65,8 @@ public BukkitPlayer(Player player) {
}

public BukkitPlayer(WorldEditPlugin plugin, Player player) {
super(plugin.getAudiences().player(player)::sendMessage);
this.audience = plugin.getAudiences().player(player);
this.plugin = plugin;
this.player = player;
}
Expand Down Expand Up @@ -104,43 +107,6 @@ public void giveItem(BaseItemStack itemStack) {
player.getInventory().addItem(BukkitAdapter.adapt(itemStack));
}

@Override
@Deprecated
public void printRaw(String msg) {
for (String part : msg.split("\n")) {
player.sendMessage(part);
}
}

@Override
@Deprecated
public void print(String msg) {
for (String part : msg.split("\n")) {
player.sendMessage("§d" + part);
}
}

@Override
@Deprecated
public void printDebug(String msg) {
for (String part : msg.split("\n")) {
player.sendMessage("§7" + part);
}
}

@Override
@Deprecated
public void printError(String msg) {
for (String part : msg.split("\n")) {
player.sendMessage("§c" + part);
}
}

@Override
public void print(Component component) {
TextAdapter.sendMessage(player, WorldEditText.format(component, getLocale()));
}

@Override
public boolean trySetPosition(Vector3 pos, float pitch, float yaw) {
return player.teleport(new Location(player.getWorld(), pos.getX(), pos.getY(),
Expand Down Expand Up @@ -232,9 +198,12 @@ public Locale getLocale() {
@Override
public void sendAnnouncements() {
if (WorldEditPlugin.getInstance().getBukkitImplAdapter() == null) {
printError(TranslatableComponent.of("worldedit.version.bukkit.unsupported-adapter",
TextComponent.of("https://enginehub.org/worldedit/#downloads", TextColor.AQUA)
.clickEvent(ClickEvent.openUrl("https://enginehub.org/worldedit/#downloads"))));
printError(translatable(
"worldedit.version.bukkit.unsupported-adapter",
text()
.content("https://enginehub.org/worldedit/#downloads")
.color(NamedTextColor.AQUA)
.clickEvent(openUrl("https://enginehub.org/worldedit/#downloads"))));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
import com.sk89q.worldedit.world.item.ItemType;
import com.sk89q.worldedit.world.weather.WeatherTypes;
import io.papermc.lib.PaperLib;
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
import org.bstats.bukkit.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.Material;
Expand Down Expand Up @@ -118,10 +119,12 @@ public class WorldEditPlugin extends JavaPlugin implements TabCompleter {
private BukkitImplAdapter bukkitAdapter;
private BukkitServerInterface server;
private BukkitConfiguration config;
private BukkitAudiences audiences;

@Override
public void onLoad() {
INSTANCE = this;
audiences = BukkitAudiences.create(this);

//noinspection ResultOfMethodCallIgnored
getDataFolder().mkdirs();
Expand Down Expand Up @@ -441,6 +444,15 @@ public BukkitConfiguration getLocalConfiguration() {
return config;
}

/**
* Get the audience provider for this plugin.
*
* @return the audience provider
*/
public BukkitAudiences getAudiences() {
return audiences;
}

/**
* Get the permissions resolver in use.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ public void printError(String msg) {

@Override
public void print(Component component) {
print(PlainComponentSerializer.INSTANCE.serialize(WorldEditText.format(component, getLocale())));
print(PlainComponentSerializer.plain().serialize(WorldEditText.format(component, getLocale())));
}

@Override
Expand Down