mirror of
https://github.com/FancyInnovations/FancyPlugins.git
synced 2025-12-06 07:43:36 +00:00
fancydialogs: Add quick actions command
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
icon: dot
|
icon: dot
|
||||||
order: 9
|
order: 8
|
||||||
---
|
---
|
||||||
|
|
||||||

|

|
||||||
|
|||||||
15
docs/src/fancydialogs/commands/quickactions.md
Normal file
15
docs/src/fancydialogs/commands/quickactions.md
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
icon: dot
|
||||||
|
order: 9
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
# /QuickActions
|
||||||
|
|
||||||
|
## Open the quick actions dialog
|
||||||
|
|
||||||
|
Opens the quick actions dialog, which allows players to perform various actions quickly.
|
||||||
|
|
||||||
|
- **Syntax**: `/quickactions` or `/qa`
|
||||||
|
- **Permissions**: `fancydialogs.commands.quickactions`
|
||||||
@@ -8,6 +8,7 @@ import com.fancyinnovations.fancydialogs.api.FancyDialogs;
|
|||||||
import com.fancyinnovations.fancydialogs.api.data.DialogData;
|
import com.fancyinnovations.fancydialogs.api.data.DialogData;
|
||||||
import com.fancyinnovations.fancydialogs.commands.DialogCMD;
|
import com.fancyinnovations.fancydialogs.commands.DialogCMD;
|
||||||
import com.fancyinnovations.fancydialogs.commands.FancyDialogsCMD;
|
import com.fancyinnovations.fancydialogs.commands.FancyDialogsCMD;
|
||||||
|
import com.fancyinnovations.fancydialogs.commands.QuickActionsCMD;
|
||||||
import com.fancyinnovations.fancydialogs.commands.TutorialCMD;
|
import com.fancyinnovations.fancydialogs.commands.TutorialCMD;
|
||||||
import com.fancyinnovations.fancydialogs.commands.types.DialogCommandType;
|
import com.fancyinnovations.fancydialogs.commands.types.DialogCommandType;
|
||||||
import com.fancyinnovations.fancydialogs.config.FDFeatureFlags;
|
import com.fancyinnovations.fancydialogs.config.FDFeatureFlags;
|
||||||
@@ -222,6 +223,7 @@ public class FancyDialogsPlugin extends JavaPlugin implements FancyDialogs {
|
|||||||
Lamp<BukkitCommandActor> lamp = lampBuilder.build();
|
Lamp<BukkitCommandActor> lamp = lampBuilder.build();
|
||||||
|
|
||||||
lamp.register(FancyDialogsCMD.INSTANCE);
|
lamp.register(FancyDialogsCMD.INSTANCE);
|
||||||
|
lamp.register(QuickActionsCMD.INSTANCE);
|
||||||
lamp.register(DialogCMD.INSTANCE);
|
lamp.register(DialogCMD.INSTANCE);
|
||||||
lamp.register(TutorialCMD.INSTANCE);
|
lamp.register(TutorialCMD.INSTANCE);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,39 @@
|
|||||||
|
package com.fancyinnovations.fancydialogs.commands;
|
||||||
|
|
||||||
|
import com.fancyinnovations.fancydialogs.FancyDialogsPlugin;
|
||||||
|
import com.fancyinnovations.fancydialogs.api.Dialog;
|
||||||
|
import de.oliver.fancylib.translations.Translator;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import revxrsal.commands.annotation.Command;
|
||||||
|
import revxrsal.commands.annotation.Description;
|
||||||
|
import revxrsal.commands.bukkit.annotation.CommandPermission;
|
||||||
|
|
||||||
|
public final class QuickActionsCMD {
|
||||||
|
|
||||||
|
public static final QuickActionsCMD INSTANCE = new QuickActionsCMD();
|
||||||
|
|
||||||
|
private final FancyDialogsPlugin plugin = FancyDialogsPlugin.get();
|
||||||
|
private final Translator translator = FancyDialogsPlugin.get().getTranslator();
|
||||||
|
|
||||||
|
private QuickActionsCMD() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Command({"quickactions", "qa"})
|
||||||
|
@Description("Opens the quick actions menu")
|
||||||
|
@CommandPermission("fancydialogs.commands.quickactions")
|
||||||
|
public void onQuickActionsOpen(
|
||||||
|
final Player actor
|
||||||
|
) {
|
||||||
|
String dialogID = plugin.getFancyDialogsConfig().getQuickActionsDialogID();
|
||||||
|
Dialog dialog = plugin.getDialogRegistry().get(dialogID);
|
||||||
|
if (dialog == null) {
|
||||||
|
plugin.getFancyLogger().error("Quick Actions dialog with ID '" + dialogID + "' not found.");
|
||||||
|
translator.translate("dialog.not_found")
|
||||||
|
.replace("id", dialogID)
|
||||||
|
.send(actor);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
dialog.open(actor);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user