Skip to content

Commit

Permalink
Rename anchors from commandUnregistration(Purpose) to `commandUnreg…
Browse files Browse the repository at this point in the history
…istration#` to fit with other documentation anchors.

Fix unregistration example alphabetization in relation to `commandTree`
  • Loading branch information
willkroboth committed Aug 11, 2023
1 parent bb43e1b commit 073334a
Show file tree
Hide file tree
Showing 3 changed files with 195 additions and 195 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1396,27 +1396,95 @@ void commandRegistration() {
/* ANCHOR_END: commandRegistration1 */
}

class commandTrees extends JavaPlugin {
{
/* ANCHOR: commandTrees1 */
new CommandTree("sayhi")
.executes((sender, args) -> {
sender.sendMessage("Hi!");
})
.then(new PlayerArgument("target")
.executes((sender, args) -> {
Player target = (Player) args.get("target");
target.sendMessage("Hi");
}))
.register();
/* ANCHOR_END: commandTrees1 */

/* ANCHOR: commandTrees2 */
new CommandTree("signedit")
.then(new LiteralArgument("set")
.then(new IntegerArgument("line_number", 1, 4)
.then(new GreedyStringArgument("text")
.executesPlayer((player, args) -> {
// /signedit set <line_number> <text>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
String text = (String) args.get("text");
sign.setLine(lineNumber - 1, text);
sign.update(true);
}))))
.then(new LiteralArgument("clear")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit clear <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
sign.setLine(lineNumber - 1, "");
sign.update(true);
})))
.then(new LiteralArgument("copy")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit copy <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
player.setMetadata("copied_sign_text", new FixedMetadataValue(this, sign.getLine(lineNumber - 1)));
})))
.then(new LiteralArgument("paste")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit copy <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
sign.setLine(lineNumber - 1, player.getMetadata("copied_sign_text").get(0).asString());
sign.update(true);
})))
.register();
/* ANCHOR_END: commandTrees2 */
}

public Sign getTargetSign(Player player) throws WrapperCommandSyntaxException {
Block block = player.getTargetBlock(null, 256);
if (block.getState() instanceof Sign sign) {
return sign;
} else {
throw CommandAPI.failWithString("You're not looking at a sign!");
}
}
}

class CommandUnregistration {
class UnregistrationBukkit extends JavaPlugin {
/* ANCHOR: commandUnregistrationBukkit */
/* ANCHOR: commandUnregistration1 */
@Override
public void onLoad() {
CommandAPIBukkit.unregister("version", true, true);
}
/* ANCHOR_END: commandUnregistrationBukkit */
/* ANCHOR_END: commandUnregistration1 */
}

class UnregistrationVanilla extends JavaPlugin {
/* ANCHOR: commandUnregistrationVanilla */
/* ANCHOR: commandUnregistration2 */
@Override
public void onEnable() {
CommandAPI.unregister("gamemode");
}
/* ANCHOR_END: commandUnregistrationVanilla */
/* ANCHOR_END: commandUnregistration2 */
}

class UnregistrationReplaceVanilla extends JavaPlugin {
/* ANCHOR: commandUnregistrationReplaceVanilla */
/* ANCHOR: commandUnregistration3 */
@Override
public void onEnable() {
CommandAPI.unregister("gamemode");
Expand All @@ -1429,29 +1497,29 @@ public void onEnable() {
})
.register();
}
/* ANCHOR_END: commandUnregistrationReplaceVanilla */
/* ANCHOR_END: commandUnregistration3 */
}

class UnregistrationPlugin extends JavaPlugin {
/* ANCHOR: commandUnregistrationPlugin */
/* ANCHOR: commandUnregistration4 */
@Override
public void onEnable() {
CommandAPIBukkit.unregister("luckperms:luckperms", false, true);
}
/* ANCHOR_END: commandUnregistrationPlugin */
/* ANCHOR_END: commandUnregistration4 */
}

class UnregistrationCommandAPI extends JavaPlugin {
/* ANCHOR: commandUnregistrationCommandAPI */
/* ANCHOR: commandUnregistration5 */
@Override
public void onEnable() {
CommandAPI.unregister("break");
}
/* ANCHOR_END: commandUnregistrationCommandAPI */
/* ANCHOR_END: commandUnregistration5 */
}

class UnregistrationBukkitHelp extends JavaPlugin {
/* ANCHOR: commandUnregistrationBukkitHelp */
/* ANCHOR: commandUnregistration6 */
@Override
public void onEnable() {
new BukkitRunnable() {
Expand All @@ -1461,11 +1529,11 @@ public void run() {
}
}.runTaskLater(this, 0);
}
/* ANCHOR_END: commandUnregistrationBukkitHelp */
/* ANCHOR_END: commandUnregistration6 */
}

class UnregistrationOnlyVanillaNamespace extends JavaPlugin {
/* ANCHOR: commandUnregistrationOnlyVanillaNamespace */
/* ANCHOR: commandUnregistration7 */
@Override
public void onEnable() {
new BukkitRunnable() {
Expand All @@ -1475,11 +1543,11 @@ public void run() {
}
}.runTaskLater(this, 0);
}
/* ANCHOR_END: commandUnregistrationOnlyVanillaNamespace */
/* ANCHOR_END: commandUnregistration7 */
}

class UnregistrationDealyedVanillaBad extends JavaPlugin {
/* ANCHOR: commandUnregistrationDealyedVanillaBad */
class UnregistrationDelayedVanillaBad extends JavaPlugin {
/* ANCHOR: commandUnregistration8 */
// NOT RECOMMENDED
@Override
public void onEnable() {
Expand All @@ -1490,11 +1558,11 @@ public void run() {
}
}.runTaskLater(this, 0);
}
/* ANCHOR_END: commandUnregistrationDealyedVanillaBad */
/* ANCHOR_END: commandUnregistration8 */
}

class UnregistrationDealyedVanillaBetter extends JavaPlugin {
/* ANCHOR: commandUnregistrationDealyedVanillaBetter */
class UnregistrationDelayedVanillaBetter extends JavaPlugin {
/* ANCHOR: commandUnregistration9 */
@Override
public void onEnable() {
new BukkitRunnable() {
Expand All @@ -1504,75 +1572,7 @@ public void run() {
}
}.runTaskLater(this, 0);
}
/* ANCHOR_END: commandUnregistrationDealyedVanillaBetter */
}
}

class commandTrees extends JavaPlugin {
{
/* ANCHOR: commandTrees1 */
new CommandTree("sayhi")
.executes((sender, args) -> {
sender.sendMessage("Hi!");
})
.then(new PlayerArgument("target")
.executes((sender, args) -> {
Player target = (Player) args.get("target");
target.sendMessage("Hi");
}))
.register();
/* ANCHOR_END: commandTrees1 */

/* ANCHOR: commandTrees2 */
new CommandTree("signedit")
.then(new LiteralArgument("set")
.then(new IntegerArgument("line_number", 1, 4)
.then(new GreedyStringArgument("text")
.executesPlayer((player, args) -> {
// /signedit set <line_number> <text>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
String text = (String) args.get("text");
sign.setLine(lineNumber - 1, text);
sign.update(true);
}))))
.then(new LiteralArgument("clear")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit clear <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
sign.setLine(lineNumber - 1, "");
sign.update(true);
})))
.then(new LiteralArgument("copy")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit copy <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
player.setMetadata("copied_sign_text", new FixedMetadataValue(this, sign.getLine(lineNumber - 1)));
})))
.then(new LiteralArgument("paste")
.then(new IntegerArgument("line_number", 1, 4)
.executesPlayer((player, args) -> {
// /signedit copy <line_number>
Sign sign = getTargetSign(player);
int lineNumber = (int) args.get("line_number");
sign.setLine(lineNumber - 1, player.getMetadata("copied_sign_text").get(0).asString());
sign.update(true);
})))
.register();
/* ANCHOR_END: commandTrees2 */
}

public Sign getTargetSign(Player player) throws WrapperCommandSyntaxException {
Block block = player.getTargetBlock(null, 256);
if (block.getState() instanceof Sign sign) {
return sign;
} else {
throw CommandAPI.failWithString("You're not looking at a sign!");
}
/* ANCHOR_END: commandUnregistration9 */
}
}

Expand Down
Loading

0 comments on commit 073334a

Please sign in to comment.