Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions patches/api/0326-More-CommandBlock-API.patch
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,14 @@ Subject: [PATCH] More CommandBlock API

diff --git a/src/main/java/io/papermc/paper/command/CommandBlockHolder.java b/src/main/java/io/papermc/paper/command/CommandBlockHolder.java
new file mode 100644
index 0000000000000000000000000000000000000000..09e57f495e3cbf3c6f434d12ab34830862faeb88
index 0000000000000000000000000000000000000000..948f1a2e3992c4290fb9d3f7b813fdb376a7fdf7
--- /dev/null
+++ b/src/main/java/io/papermc/paper/command/CommandBlockHolder.java
@@ -0,0 +1,58 @@
@@ -0,0 +1,67 @@
+package io.papermc.paper.command;
+
+import net.kyori.adventure.text.Component;
+import org.bukkit.command.CommandSender;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
Expand Down Expand Up @@ -67,6 +68,14 @@ index 0000000000000000000000000000000000000000..09e57f495e3cbf3c6f434d12ab348308
+ * @param successCount the success count
+ */
+ void setSuccessCount(int successCount);
+
+ /**
+ * Gets a command sender instance that can
+ * be used to run commands as this command block.
+ *
+ * @return a command sender
+ */
+ @NotNull CommandSender getCommandSender();
+}
diff --git a/src/main/java/org/bukkit/block/CommandBlock.java b/src/main/java/org/bukkit/block/CommandBlock.java
index 73dce588d1f7a5048300073bf8c2b14d6da1e857..d63da691fb8cfa04bb699adb2eb55278e8b76200 100644
Expand Down
18 changes: 12 additions & 6 deletions patches/server/0705-More-CommandBlock-API.patch
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,17 @@ Subject: [PATCH] More CommandBlock API

diff --git a/src/main/java/io/papermc/paper/commands/PaperCommandBlockHolder.java b/src/main/java/io/papermc/paper/commands/PaperCommandBlockHolder.java
new file mode 100644
index 0000000000000000000000000000000000000000..0b42306f17bf8850a13a51067c2d19e7583187e5
index 0000000000000000000000000000000000000000..20c4667d7dd2452e1d30b62c33a604f33d29a8f7
--- /dev/null
+++ b/src/main/java/io/papermc/paper/commands/PaperCommandBlockHolder.java
@@ -0,0 +1,33 @@
@@ -0,0 +1,39 @@
+package io.papermc.paper.commands;
+
+import io.papermc.paper.adventure.PaperAdventure;
+import io.papermc.paper.command.CommandBlockHolder;
+import net.kyori.adventure.text.Component;
+import net.minecraft.world.level.BaseCommandBlock;
+import org.bukkit.command.CommandSender;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
Expand All @@ -25,22 +26,27 @@ index 0000000000000000000000000000000000000000..0b42306f17bf8850a13a51067c2d19e7
+
+ @Override
+ default @NotNull Component lastOutput() {
+ return PaperAdventure.asAdventure(getCommandBlockHandle().getLastOutput());
+ return PaperAdventure.asAdventure(this.getCommandBlockHandle().getLastOutput());
+ }
+
+ @Override
+ default void lastOutput(@Nullable Component lastOutput) {
+ getCommandBlockHandle().setLastOutput(PaperAdventure.asVanilla(lastOutput));
+ this.getCommandBlockHandle().setLastOutput(PaperAdventure.asVanilla(lastOutput));
+ }
+
+ @Override
+ default int getSuccessCount() {
+ return getCommandBlockHandle().getSuccessCount();
+ return this.getCommandBlockHandle().getSuccessCount();
+ }
+
+ @Override
+ default void setSuccessCount(int successCount) {
+ getCommandBlockHandle().setSuccessCount(successCount);
+ this.getCommandBlockHandle().setSuccessCount(successCount);
+ }
+
+ @Override
+ default CommandSender getCommandSender() {
+ return this.getCommandBlockHandle().getBukkitSender(this.getCommandBlockHandle().createCommandSourceStack());
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftCommandBlock.java
Expand Down