Class CommandContext

All Implemented Interfaces:
org.kingdoms.locale.ContextualMessageSender, org.kingdoms.locale.provider.MessageContextProvider
Direct Known Subclasses:
CommandTabContext, KingdomsCommandModule

public class CommandContext extends SimpleContextualMessageSender
  • Field Details

  • Constructor Details

  • Method Details

    • arg

      public String arg(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index)
    • argIsAny

      public boolean argIsAny(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index, String... options)
    • joinArgs

      public String joinArgs()
    • joinArgs

      public String joinArgs(String delimiter)
    • joinArgs

      public String joinArgs(String delimiter, @org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int fromIndex)
    • hasPermission

      public boolean hasPermission()
    • requireYesNo

      public void requireYesNo(Duration expiresIn, org.kingdoms.commands.general.admin.CommandSession.SessionCallback callback)
    • requireYesNo

      public void requireYesNo(Messenger confirmationMessage)
    • requireConfirmation

      public boolean requireConfirmation(@NonNull Messenger confirmMessage)
      Returns:
      true if the user hasn't confirmed, otherwise false.
    • getCommand

      public KingdomsCommand getCommand()
    • parseInt

      public Integer parseInt(int index, Messenger argName, boolean allowNegative)
    • setLoggingLevel

      public void setLoggingLevel(CommandLoggingLevel loggingLevel)
    • getLoggingLevel

      public CommandLoggingLevel getLoggingLevel()
    • sendMessage

      public void sendMessage(org.bukkit.command.CommandSender sender, Messenger lang, Object... edits)
    • sendError

      public void sendError(@NotNull @NotNull Messenger lang, @Nullable @Nullable Object... edits)
    • parseBool

      public Boolean parseBool(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index)
    • arg

      public String arg(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index, String def)
    • debug

      public CommandContext debug(String msg)
    • nextArg

      public int nextArg()
    • previousArg

      public int previousArg()
    • lastArgumentPosition

      public int lastArgumentPosition()
    • nextString

      public String nextString()
    • nextNamespace

      public org.kingdoms.constants.namespace.Namespace nextNamespace()
    • getNumberModifierType

      protected CommandContext.SetterType getNumberModifierType(String setterTypeStr)
    • numberModifier

      @NotNull public @NotNull org.kingdoms.utils.internal.numbers.AnyNumber numberModifier(String argumentName, Number currentValue, org.kingdoms.utils.internal.numbers.NumberConstraint... constraints)
      Returns:
      the final amount to be set.
    • durationModifier

      public org.kingdoms.utils.internal.numbers.AnyNumber durationModifier(String argumentName, Duration currentValue)
      Returns:
      the final amount to be set.
    • generalSelector

      public <T extends Group> @Nullable T generalSelector(boolean targetNation)
      This function checks for seleectors for the sender's language and the english since all commands executed from configs must use the English format for consistency.
    • fail

      public CommandResult fail(Messenger lang)
    • getResult

      @Internal public Messenger getResult()
    • wrongUsage

      public CommandUserError wrongUsage()
    • assertPlayer

      public boolean assertPlayer()
    • assertEnabledWorld

      public boolean assertEnabledWorld()
    • var

      @NotNull public @NotNull CommandContext var(@NotNull @NotNull String variable, @Nullable @Nullable Object replacement)
    • getPlugin

      public Kingdoms getPlugin()
    • getArgs

      public String[] getArgs()
    • senderAsPlayer

      public org.bukkit.entity.Player senderAsPlayer()
      Overrides:
      senderAsPlayer in class SimpleContextualMessageSender
    • hasArgs

      public boolean hasArgs(@org.checkerframework.common.value.qual.IntRange(from=1L, to=5L) int len)
      Checks if this command has the provided number of arguments.
      Parameters:
      len - the amount of command arguments.
    • requireArgs

      public boolean requireArgs(@org.checkerframework.common.value.qual.IntRange(from=1L, to=5L) int len)
    • emptyError

      protected CommandUserError emptyError()
    • error

      public CommandUserError error(Messenger error)
    • required

      public @NonNull String required(String name)
    • optional

      public @Nullable String optional(String name)
    • mapArguments

      public void mapArguments()
    • assertHasKingdom

      public boolean assertHasKingdom()
    • assertPublicKingdom

      public boolean assertPublicKingdom()
    • assertHasNation

      public boolean assertHasNation()
    • lang

      public Messenger lang(String... entries)
    • argsLengthEquals

      public boolean argsLengthEquals(int len)
    • isAtArg

      public boolean isAtArg(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index)
    • isAtCurrentParameter

      public boolean isAtCurrentParameter()
    • hasMoreParameters

      public boolean hasMoreParameters()
    • getParameterPosition

      public @org.checkerframework.common.value.qual.IntRange(from=1L, to=5L) int getParameterPosition()
    • intArg

      public int intArg(@org.checkerframework.common.value.qual.IntRange(from=0L, to=5L) int index)
    • isNumber

      public boolean isNumber(int index)
    • getDouble

      public Double getDouble(int index)
    • getInt

      public Integer getInt(int index)
    • getNumber

      public org.kingdoms.utils.internal.numbers.AnyNumber getNumber(int index, boolean integerOnly, boolean positiveOnly, Messenger argName)
    • getNumber

      public org.kingdoms.data.Pair<org.kingdoms.utils.internal.numbers.AnyNumber,Messenger> getNumber(int index, Messenger argName, org.kingdoms.utils.internal.numbers.NumberConstraint... constraints)
    • getKingdomPlayer

      public KingdomPlayer getKingdomPlayer()
    • getKingdom

      public Kingdom getKingdom()
    • getKingdom

      public Kingdom getKingdom(int index)
    • getNation

      public Nation getNation(int index)
    • argEquals

      public boolean argEquals(int index, KingdomsLang lang)
    • argEquals

      public boolean argEquals(int index, String str)
    • getMessageReceiver

      public org.bukkit.command.CommandSender getMessageReceiver()
      Specified by:
      getMessageReceiver in interface org.kingdoms.locale.ContextualMessageSender
      Overrides:
      getMessageReceiver in class SimpleContextualMessageSender
    • hasPermission

      public boolean hasPermission(KingdomsDefaultPluginPermission permission)
    • hasPermission

      public boolean hasPermission(KingdomsDefaultPluginPermission permission, boolean checkAdmin)
    • isAdmin

      public boolean isAdmin()
    • getPlayer

      public @Nullable org.bukkit.entity.Player getPlayer(int index)
    • getPlayer

      public @Nullable org.bukkit.entity.Player getPlayer(int index, boolean exact)
    • getOfflinePlayer

      public @Nullable org.bukkit.OfflinePlayer getOfflinePlayer(int index)