mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 07:20:24 +01:00
More CommandBlock API
This commit is contained in:
parent
c8e36cb205
commit
b4f3eb5fa1
3 changed files with 59 additions and 2 deletions
|
@ -0,0 +1,57 @@
|
||||||
|
package io.papermc.paper.command;
|
||||||
|
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
|
import org.jspecify.annotations.NullMarked;
|
||||||
|
import org.jspecify.annotations.Nullable;
|
||||||
|
|
||||||
|
@NullMarked
|
||||||
|
public interface CommandBlockHolder {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the command that this CommandBlock will run when powered.
|
||||||
|
* This will never return null. If the CommandBlock does not have a
|
||||||
|
* command, an empty String will be returned instead.
|
||||||
|
*
|
||||||
|
* @return Command that this CommandBlock will run when activated.
|
||||||
|
*/
|
||||||
|
String getCommand();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the command that this CommandBlock will run when powered.
|
||||||
|
* Setting the command to null is the same as setting it to an empty
|
||||||
|
* String.
|
||||||
|
*
|
||||||
|
* @param command Command that this CommandBlock will run when activated.
|
||||||
|
*/
|
||||||
|
void setCommand(@Nullable String command);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the last output from this command block.
|
||||||
|
*
|
||||||
|
* @return the last output
|
||||||
|
*/
|
||||||
|
Component lastOutput();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the last output from this command block.
|
||||||
|
*
|
||||||
|
* @param lastOutput the last output
|
||||||
|
*/
|
||||||
|
void lastOutput(@Nullable Component lastOutput);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the success count from this command block.
|
||||||
|
* @see <a href="https://minecraft.wiki/wiki/Command_Block#Success_count">Command_Block#Success_count</a>
|
||||||
|
*
|
||||||
|
* @return the success count
|
||||||
|
*/
|
||||||
|
int getSuccessCount();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the success count from this command block.
|
||||||
|
* @see <a href="https://minecraft.wiki/wiki/Command_Block#Success_count">Command_Block#Success_count</a>
|
||||||
|
*
|
||||||
|
* @param successCount the success count
|
||||||
|
*/
|
||||||
|
void setSuccessCount(int successCount);
|
||||||
|
}
|
|
@ -6,7 +6,7 @@ import org.jetbrains.annotations.Nullable;
|
||||||
/**
|
/**
|
||||||
* Represents a captured state of a command block.
|
* Represents a captured state of a command block.
|
||||||
*/
|
*/
|
||||||
public interface CommandBlock extends TileState {
|
public interface CommandBlock extends TileState, io.papermc.paper.command.CommandBlockHolder { // Paper
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the command that this CommandBlock will run when powered.
|
* Gets the command that this CommandBlock will run when powered.
|
||||||
|
|
|
@ -4,7 +4,7 @@ import org.bukkit.entity.Minecart;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
public interface CommandMinecart extends Minecart {
|
public interface CommandMinecart extends Minecart, io.papermc.paper.command.CommandBlockHolder { // Paper
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the command that this CommandMinecart will run when activated.
|
* Gets the command that this CommandMinecart will run when activated.
|
||||||
|
|
Loading…
Reference in a new issue