Class ArgumentTypes

java.lang.Object
io.papermc.paper.command.brigadier.argument.ArgumentTypes

public final class ArgumentTypes extends Object
Vanilla Minecraft includes several custom ArgumentTypes that are recognized by the client. Many of these argument types include client-side completions and validation, and some include command signing context.

This class allows creating instances of these types for use in plugin commands, with friendly API result types.

CustomArgumentType is provided for customizing parsing or result types server-side, while sending the vanilla argument type to the client.

Since:
1.20.6
  • Method Details

    • entity

      public static com.mojang.brigadier.arguments.ArgumentType<EntitySelectorArgumentResolver> entity()
      Represents a selector that can capture any single entity.
      Returns:
      argument that takes one entity
      Since:
      1.20.6
    • entities

      public static com.mojang.brigadier.arguments.ArgumentType<EntitySelectorArgumentResolver> entities()
      Represents a selector that can capture multiple entities.
      Returns:
      argument that takes multiple entities
      Since:
      1.20.6
    • player

      public static com.mojang.brigadier.arguments.ArgumentType<PlayerSelectorArgumentResolver> player()
      Represents a selector that can capture a singular player entity.
      Returns:
      argument that takes one player
      Since:
      1.20.6
    • players

      public static com.mojang.brigadier.arguments.ArgumentType<PlayerSelectorArgumentResolver> players()
      Represents a selector that can capture multiple player entities.
      Returns:
      argument that takes multiple players
      Since:
      1.20.6
    • playerProfiles

      public static com.mojang.brigadier.arguments.ArgumentType<PlayerProfileListResolver> playerProfiles()
      A selector argument that provides a list of player profiles.
      Returns:
      player profile argument
      Since:
      1.20.6
    • blockPosition

      public static com.mojang.brigadier.arguments.ArgumentType<BlockPositionResolver> blockPosition()
      A block position argument.
      Returns:
      block position argument
      Since:
      1.20.6
    • columnBlockPosition

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<ColumnBlockPositionResolver> columnBlockPosition()
      A column block position argument.
      Returns:
      column block position argument
      Since:
      1.21.8
    • blockInWorldPredicate

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<BlockInWorldPredicate> blockInWorldPredicate()
      A block predicate argument.
      Returns:
      block predicate argument
      Since:
      1.21.8
    • finePosition

      public static com.mojang.brigadier.arguments.ArgumentType<FinePositionResolver> finePosition()
      A fine position argument.
      Returns:
      fine position argument
      Since:
      1.21
      See Also:
    • finePosition

      public static com.mojang.brigadier.arguments.ArgumentType<FinePositionResolver> finePosition(boolean centerIntegers)
      A fine position argument.
      Parameters:
      centerIntegers - if whole numbers should be centered (+0.5)
      Returns:
      fine position argument
      Since:
      1.21
    • columnFinePosition

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<ColumnFinePositionResolver> columnFinePosition()
      A column fine position argument.
      Returns:
      column fine position argument
      Since:
      1.21.8
      See Also:
    • columnFinePosition

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<ColumnFinePositionResolver> columnFinePosition(boolean centerIntegers)
      A column fine position argument.
      Parameters:
      centerIntegers - if whole numbers should be centered (+0.5)
      Returns:
      column fine position argument
      Since:
      1.21.8
    • rotation

      public static com.mojang.brigadier.arguments.ArgumentType<RotationResolver> rotation()
      A rotation argument.
      Returns:
      rotation argument
      Since:
      1.21.4
    • angle

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<AngleResolver> angle()
      An angle argument.
      Returns:
      angle argument
      Since:
      1.21.8
    • axes

      @Experimental public static com.mojang.brigadier.arguments.ArgumentType<AxisSet> axes()
      An argument used to resolve a set of axes.
      Returns:
      a set of axes.
      Since:
      1.21.8
      See Also:
    • blockState

      public static com.mojang.brigadier.arguments.ArgumentType<BlockState> blockState()
      A blockstate argument which will provide rich parsing for specifying the specific block variant and then the block entity NBT if applicable.
      Returns:
      argument
      Since:
      1.20.6
    • itemStack

      public static com.mojang.brigadier.arguments.ArgumentType<ItemStack> itemStack()
      An ItemStack argument which provides rich parsing for specifying item material and item NBT information.
      Returns:
      argument
      Since:
      1.20.6
    • itemPredicate

      public static com.mojang.brigadier.arguments.ArgumentType<ItemStackPredicate> itemPredicate()
      An item predicate argument.
      Returns:
      argument
      Since:
      1.20.6
    • namedColor

      public static com.mojang.brigadier.arguments.ArgumentType<NamedTextColor> namedColor()
      An argument for parsing NamedTextColors.
      Returns:
      argument
      Since:
      1.20.6
    • hexColor

      public static com.mojang.brigadier.arguments.ArgumentType<TextColor> hexColor()
      A hex color argument.
      Returns:
      argument
      Since:
      1.21.7
    • component

      public static com.mojang.brigadier.arguments.ArgumentType<Component> component()
      A component argument.
      Returns:
      argument
      Since:
      1.20.6
    • style

      public static com.mojang.brigadier.arguments.ArgumentType<Style> style()
      A style argument.
      Returns:
      argument
      Since:
      1.20.6
    • signedMessage

      public static com.mojang.brigadier.arguments.ArgumentType<SignedMessageResolver> signedMessage()
      A signed message argument. This argument can be resolved to retrieve the underlying signed message.
      Returns:
      argument
      Since:
      1.20.6
    • scoreboardDisplaySlot

      public static com.mojang.brigadier.arguments.ArgumentType<DisplaySlot> scoreboardDisplaySlot()
      A scoreboard display slot argument.
      Returns:
      argument
      Since:
      1.20.6
    • namespacedKey

      public static com.mojang.brigadier.arguments.ArgumentType<NamespacedKey> namespacedKey()
      A namespaced key argument.
      Returns:
      argument
      Since:
      1.20.6
    • key

      public static com.mojang.brigadier.arguments.ArgumentType<Key> key()
      A key argument.
      Returns:
      argument
      Since:
      1.20.6
    • integerRange

      public static com.mojang.brigadier.arguments.ArgumentType<IntegerRangeProvider> integerRange()
      An inclusive range of integers that may be unbounded on either end.
      Returns:
      argument
      Since:
      1.20.6
    • doubleRange

      public static com.mojang.brigadier.arguments.ArgumentType<DoubleRangeProvider> doubleRange()
      An inclusive range of doubles that may be unbounded on either end.
      Returns:
      argument
      Since:
      1.20.6
    • world

      public static com.mojang.brigadier.arguments.ArgumentType<World> world()
      A world argument.
      Returns:
      argument
      Since:
      1.20.6
    • gameMode

      public static com.mojang.brigadier.arguments.ArgumentType<GameMode> gameMode()
      A game mode argument.
      Returns:
      argument
      Since:
      1.20.6
    • heightMap

      public static com.mojang.brigadier.arguments.ArgumentType<HeightMap> heightMap()
      An argument for getting a heightmap type.
      Returns:
      argument
      Since:
      1.20.6
    • uuid

      public static com.mojang.brigadier.arguments.ArgumentType<UUID> uuid()
      A uuid argument.
      Returns:
      argument
      Since:
      1.20.6
    • objectiveCriteria

      public static com.mojang.brigadier.arguments.ArgumentType<Criteria> objectiveCriteria()
      An objective criteria argument
      Returns:
      argument
      Since:
      1.20.6
    • entityAnchor

      public static com.mojang.brigadier.arguments.ArgumentType<LookAnchor> entityAnchor()
      An entity anchor argument.
      Returns:
      argument
      Since:
      1.20.6
    • time

      public static com.mojang.brigadier.arguments.ArgumentType<Integer> time()
      A time argument, returning the number of ticks.

      Examples:

      • "1d"
      • "5s"
      • "2"
      • "6t"
      Returns:
      argument
      Since:
      1.20.6
    • time

      public static com.mojang.brigadier.arguments.ArgumentType<Integer> time(int mintime)
      A time argument, returning the number of ticks.

      Examples:

      • "1d"
      • "5s"
      • "2"
      • "6t"
      Parameters:
      mintime - The minimum time required for this argument.
      Returns:
      argument
      Since:
      1.20.6
    • templateMirror

      public static com.mojang.brigadier.arguments.ArgumentType<Mirror> templateMirror()
      A template mirror argument
      Returns:
      argument
      Since:
      1.20.6
      See Also:
    • templateRotation

      public static com.mojang.brigadier.arguments.ArgumentType<StructureRotation> templateRotation()
      A template rotation argument.
      Returns:
      argument
      Since:
      1.20.6
      See Also:
    • resource

      public static <T> com.mojang.brigadier.arguments.ArgumentType<T> resource(RegistryKey<T> registryKey)
      An argument for a resource in a Registry.
      Type Parameters:
      T - the registry value type
      Parameters:
      registryKey - the registry's key
      Returns:
      argument
      Since:
      1.20.6
    • resourceKey

      public static <T> com.mojang.brigadier.arguments.ArgumentType<TypedKey<T>> resourceKey(RegistryKey<T> registryKey)
      An argument for a typed key for a Registry.
      Type Parameters:
      T - the registry value type
      Parameters:
      registryKey - the registry's key
      Returns:
      argument
      Since:
      1.20.6
      See Also: