fancydialogs: Fix wrong dialog open permission and allow console to open dialog on players (#76)

This commit is contained in:
Goldy
2025-06-28 14:23:25 +02:00
committed by GitHub
parent 6afe93e92c
commit eb5eca03c8
2 changed files with 14 additions and 7 deletions

View File

@@ -47,17 +47,23 @@ public final class DialogCMD {
@Command("dialog open <dialog>")
@Description("Opens a dialog (for a player) by its ID")
@CommandPermission("fancydialogs.commands.registry.unregister")
@CommandPermission("fancydialogs.commands.dialog.open")
public void open(
Player actor,
BukkitCommandActor actor,
Dialog dialog,
@Optional EntitySelector<Player> target
) {
if (target == null) {
dialog.open(actor);
translator.translate("commands.dialog.open.self")
.replace("id", dialog.getId())
.send(actor);
if (actor.isPlayer()) {
dialog.open(actor.asPlayer());
translator.translate("commands.dialog.open.self")
.replace("id", dialog.getId())
.send(actor.sender());
} else {
translator.translate("commands.dialog.open.console_requires_target")
.replace("id", dialog.getId())
.send(actor.sender());
}
} else {
for (Player player : target) {
dialog.open(player);
@@ -71,7 +77,7 @@ public final class DialogCMD {
translator.translate("commands.dialog.open.other")
.replace("id", dialog.getId())
.replace("target", playersStr)
.send(actor);
.send(actor.sender());
}
}
}

View File

@@ -7,6 +7,7 @@ messages:
open:
self: "<dark_gray> <gray>Opened dialog {warningColor}{id}<gray>."
other: "<dark_gray> <gray>Opened dialog {warningColor}{id}<gray> for {target}."
console_requires_target: "<dark_gray> <gray>Console must specify a target player to open dialog {warningColor}{id}<gray>. Use: /dialog open {id} <player>"
list:
empty: "<dark_gray> <gray>There are no dialogs registered."
header: "<dark_gray> <gray>Registered dialogs:"