Skip to content

Commit 38e2a7a

Browse files
committed
WorldEdit goes on an adventure
1 parent 25957c4 commit 38e2a7a

47 files changed

Lines changed: 182 additions & 167 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

buildSrc/src/main/kotlin/LibsConfig.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ fun Project.applyLibrariesConfiguration() {
2727
group = "${rootProject.group}.worldedit-libs"
2828

2929
val relocations = mapOf(
30-
"net.kyori.text" to "com.sk89q.worldedit.util.formatting.text",
30+
"net.kyori.adventure.text" to "com.sk89q.worldedit.util.formatting.text",
3131
"net.kyori.minecraft" to "com.sk89q.worldedit.util.kyori"
3232
)
3333

buildSrc/src/main/kotlin/Versions.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import org.gradle.api.Project
22

33
object Versions {
4-
const val TEXT = "3.0.4"
5-
const val TEXT_EXTRAS = "3.0.6"
4+
const val ADVENTURE = "4.0.0-SNAPSHOT"
5+
const val ADVENTURE_EXTRAS = "4.0.0-SNAPSHOT"
66
const val PISTON = "0.5.6"
77
const val AUTO_VALUE = "1.7"
88
const val JUNIT = "5.6.1"

settings.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,8 @@ listOf("bukkit", "core", "forge", "sponge", "fabric", "cli").forEach {
99
include("worldedit-libs:core:ap")
1010

1111
include("worldedit-core:doctools")
12+
13+
includeBuild("../Piston") {
14+
dependencySubstitution {
15+
}
16+
}

worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/BukkitBlockCommandSender.java

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@
2929
import com.sk89q.worldedit.util.formatting.WorldEditText;
3030
import com.sk89q.worldedit.util.formatting.text.Component;
3131
import com.sk89q.worldedit.util.formatting.text.TextComponent;
32-
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
33-
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
32+
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
33+
import net.kyori.adventure.audience.Audience;
34+
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
3435
import org.bukkit.Bukkit;
3536
import org.bukkit.Material;
3637
import org.bukkit.block.Block;
@@ -46,6 +47,7 @@ public class BukkitBlockCommandSender extends AbstractNonPlayerActor implements
4647

4748
private static final String UUID_PREFIX = "CMD";
4849

50+
private final Audience audience;
4951
private final BlockCommandSender sender;
5052
private final WorldEditPlugin plugin;
5153
private final Location location;
@@ -55,6 +57,7 @@ public BukkitBlockCommandSender(WorldEditPlugin plugin, BlockCommandSender sende
5557
checkNotNull(plugin);
5658
checkNotNull(sender);
5759

60+
this.audience = BukkitAudiences.create(plugin).audience(sender);
5861
this.plugin = plugin;
5962
this.sender = sender;
6063
this.location = BukkitAdapter.adapt(sender.getBlock().getLocation());
@@ -78,29 +81,29 @@ public void printRaw(String msg) {
7881
@Deprecated
7982
public void print(String msg) {
8083
for (String part : msg.split("\n")) {
81-
print(TextComponent.of(part, TextColor.LIGHT_PURPLE));
84+
print(TextComponent.of(part, NamedTextColor.LIGHT_PURPLE));
8285
}
8386
}
8487

8588
@Override
8689
@Deprecated
8790
public void printDebug(String msg) {
8891
for (String part : msg.split("\n")) {
89-
print(TextComponent.of(part, TextColor.GRAY));
92+
print(TextComponent.of(part, NamedTextColor.GRAY));
9093
}
9194
}
9295

9396
@Override
9497
@Deprecated
9598
public void printError(String msg) {
9699
for (String part : msg.split("\n")) {
97-
print(TextComponent.of(part, TextColor.RED));
100+
print(TextComponent.of(part, NamedTextColor.RED));
98101
}
99102
}
100103

101104
@Override
102105
public void print(Component component) {
103-
TextAdapter.sendMessage(sender, WorldEditText.format(component, getLocale()));
106+
audience.sendMessage(WorldEditText.format(component, getLocale()));
104107
}
105108

106109
@Override

worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/BukkitCommandSender.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@
2424
import com.sk89q.worldedit.session.SessionKey;
2525
import com.sk89q.worldedit.util.formatting.WorldEditText;
2626
import com.sk89q.worldedit.util.formatting.text.Component;
27-
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
27+
import net.kyori.adventure.audience.Audience;
28+
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
2829
import org.bukkit.command.CommandSender;
2930
import org.bukkit.entity.Player;
3031

3132
import java.util.Locale;
3233
import java.util.UUID;
33-
import javax.annotation.Nullable;
3434

3535
import static com.google.common.base.Preconditions.checkArgument;
3636
import static com.google.common.base.Preconditions.checkNotNull;
@@ -42,15 +42,15 @@ public class BukkitCommandSender extends AbstractNonPlayerActor {
4242
*/
4343
private static final UUID DEFAULT_ID = UUID.fromString("a233eb4b-4cab-42cd-9fd9-7e7b9a3f74be");
4444

45+
private final Audience audience;
4546
private final CommandSender sender;
46-
private final WorldEditPlugin plugin;
4747

4848
public BukkitCommandSender(WorldEditPlugin plugin, CommandSender sender) {
4949
checkNotNull(plugin);
5050
checkNotNull(sender);
5151
checkArgument(!(sender instanceof Player), "Cannot wrap a player");
5252

53-
this.plugin = plugin;
53+
this.audience = BukkitAudiences.create(plugin).audience(sender);
5454
this.sender = sender;
5555
}
5656

@@ -98,7 +98,7 @@ public void printError(String msg) {
9898

9999
@Override
100100
public void print(Component component) {
101-
TextAdapter.sendMessage(sender, WorldEditText.format(component, getLocale()));
101+
audience.sendMessage(WorldEditText.format(component, getLocale()));
102102
}
103103

104104
@Override
@@ -127,7 +127,6 @@ public CommandSender getSender() {
127127
@Override
128128
public SessionKey getSessionKey() {
129129
return new SessionKey() {
130-
@Nullable
131130
@Override
132131
public String getName() {
133132
return sender.getName();

worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/BukkitPlayer.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,16 @@
3636
import com.sk89q.worldedit.util.formatting.text.Component;
3737
import com.sk89q.worldedit.util.formatting.text.TextComponent;
3838
import com.sk89q.worldedit.util.formatting.text.TranslatableComponent;
39-
import com.sk89q.worldedit.util.formatting.text.adapter.bukkit.TextAdapter;
4039
import com.sk89q.worldedit.util.formatting.text.event.ClickEvent;
41-
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
40+
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
4241
import com.sk89q.worldedit.world.World;
4342
import com.sk89q.worldedit.world.block.BaseBlock;
4443
import com.sk89q.worldedit.world.block.BlockStateHolder;
4544
import com.sk89q.worldedit.world.block.BlockTypes;
4645
import com.sk89q.worldedit.world.gamemode.GameMode;
4746
import com.sk89q.worldedit.world.gamemode.GameModes;
47+
import net.kyori.adventure.audience.Audience;
48+
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
4849
import org.bukkit.Bukkit;
4950
import org.bukkit.Location;
5051
import org.bukkit.entity.Player;
@@ -58,6 +59,7 @@ public class BukkitPlayer extends AbstractPlayerActor {
5859

5960
private final Player player;
6061
private final WorldEditPlugin plugin;
62+
private final Audience audience;
6163

6264
public BukkitPlayer(Player player) {
6365
this(WorldEditPlugin.getInstance(), player);
@@ -66,6 +68,7 @@ public BukkitPlayer(Player player) {
6668
public BukkitPlayer(WorldEditPlugin plugin, Player player) {
6769
this.plugin = plugin;
6870
this.player = player;
71+
this.audience = BukkitAudiences.create(plugin).player(player);
6972
}
7073

7174
@Override
@@ -138,7 +141,7 @@ public void printError(String msg) {
138141

139142
@Override
140143
public void print(Component component) {
141-
TextAdapter.sendMessage(player, WorldEditText.format(component, getLocale()));
144+
audience.sendMessage(WorldEditText.format(component, getLocale()));
142145
}
143146

144147
@Override
@@ -233,7 +236,7 @@ public Locale getLocale() {
233236
public void sendAnnouncements() {
234237
if (WorldEditPlugin.getInstance().getBukkitImplAdapter() == null) {
235238
printError(TranslatableComponent.of("worldedit.version.bukkit.unsupported-adapter",
236-
TextComponent.of("https://enginehub.org/worldedit/#downloads", TextColor.AQUA)
239+
TextComponent.of("https://enginehub.org/worldedit/#downloads", NamedTextColor.AQUA)
237240
.clickEvent(ClickEvent.openUrl("https://enginehub.org/worldedit/#downloads"))));
238241
}
239242
}

worldedit-cli/src/main/java/com/sk89q/worldedit/cli/CLICommandSender.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public void printError(String msg) {
103103

104104
@Override
105105
public void print(Component component) {
106-
print(PlainComponentSerializer.INSTANCE.serialize(WorldEditText.format(component, getLocale())));
106+
print(PlainComponentSerializer.plain().serialize(WorldEditText.format(component, getLocale())));
107107
}
108108

109109
@Override

worldedit-core/src/main/java/com/sk89q/worldedit/WorldEdit.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
import com.sk89q.worldedit.util.eventbus.EventBus;
5959
import com.sk89q.worldedit.util.formatting.text.TextComponent;
6060
import com.sk89q.worldedit.util.formatting.text.TranslatableComponent;
61-
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
61+
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
6262
import com.sk89q.worldedit.util.io.file.FileSelectionAbortedException;
6363
import com.sk89q.worldedit.util.io.file.FilenameException;
6464
import com.sk89q.worldedit.util.io.file.FilenameResolutionException;
@@ -751,14 +751,14 @@ public void runScript(Player player, File f, String[] args) throws WorldEditExce
751751
} catch (ScriptException e) {
752752
// non-exceptional return check
753753
if (!(Throwables.getRootCause(e) instanceof ReturnException)) {
754-
player.printError(TranslatableComponent.of("worldedit.script.failed", TextComponent.of(e.getMessage(), TextColor.WHITE)));
754+
player.printError(TranslatableComponent.of("worldedit.script.failed", TextComponent.of(e.getMessage(), NamedTextColor.WHITE)));
755755
logger.warn("Failed to execute script", e);
756756
}
757757
} catch (NumberFormatException | WorldEditException e) {
758758
throw e;
759759
} catch (Throwable e) {
760760
player.printError(TranslatableComponent.of("worldedit.script.failed-console", TextComponent.of(e.getClass().getCanonicalName(),
761-
TextColor.WHITE)));
761+
NamedTextColor.WHITE)));
762762
logger.warn("Failed to execute script", e);
763763
} finally {
764764
for (EditSession editSession : scriptContext.getEditSessions()) {

worldedit-core/src/main/java/com/sk89q/worldedit/command/ApplyBrushCommands.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
import com.sk89q.worldedit.util.TreeGenerator;
4242
import com.sk89q.worldedit.util.formatting.text.TextComponent;
4343
import com.sk89q.worldedit.util.formatting.text.TranslatableComponent;
44-
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
44+
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
4545
import com.sk89q.worldedit.util.formatting.text.format.TextDecoration;
4646
import org.enginehub.piston.CommandManager;
4747
import org.enginehub.piston.CommandManagerService;
@@ -124,7 +124,7 @@ public void item(CommandParameters parameters,
124124
@Arg(desc = "The direction in which the item will be applied", def = "up")
125125
@Direction(includeDiagonals = true)
126126
com.sk89q.worldedit.util.Direction direction) throws WorldEditException {
127-
player.print(TextComponent.builder().append("WARNING: ", TextColor.RED, TextDecoration.BOLD)
127+
player.print(TextComponent.builder().append("WARNING: ", NamedTextColor.RED, TextDecoration.BOLD)
128128
.append(TranslatableComponent.of("worldedit.brush.apply.item.warning")).build());
129129
setApplyBrush(parameters, player, localSession, new ItemUseFactory(item, direction));
130130
}

worldedit-core/src/main/java/com/sk89q/worldedit/command/ChunkCommands.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
import com.sk89q.worldedit.util.formatting.text.TextComponent;
4141
import com.sk89q.worldedit.util.formatting.text.TranslatableComponent;
4242
import com.sk89q.worldedit.util.formatting.text.event.ClickEvent;
43-
import com.sk89q.worldedit.util.formatting.text.format.TextColor;
43+
import com.sk89q.worldedit.util.formatting.text.format.NamedTextColor;
4444
import com.sk89q.worldedit.world.World;
4545
import com.sk89q.worldedit.world.storage.LegacyChunkStore;
4646
import com.sk89q.worldedit.world.storage.McRegionChunkStore;
@@ -173,8 +173,8 @@ public void deleteChunks(Actor actor, World world, LocalSession session,
173173
currentInfo.batches.stream().mapToInt(ChunkDeletionInfo.ChunkBatch::getChunkCount).sum())
174174
));
175175
}
176-
actor.print(TextComponent.of("You can mark more chunks for deletion, or to stop now, run: ", TextColor.LIGHT_PURPLE)
177-
.append(TextComponent.of("/stop", TextColor.AQUA)
176+
actor.print(TextComponent.of("You can mark more chunks for deletion, or to stop now, run: ", NamedTextColor.LIGHT_PURPLE)
177+
.append(TextComponent.of("/stop", NamedTextColor.AQUA)
178178
.clickEvent(ClickEvent.of(ClickEvent.Action.SUGGEST_COMMAND, "/stop"))));
179179
}
180180

0 commit comments

Comments
 (0)