8000 Rework PlayerArgument, OfflinePlayerArgument and AsyncOfflinePlayerAr… · CommandAPI/CommandAPI@62f3317 · GitHub
[go: up one dir, main page]

Skip to content

Commit 62f3317

Browse files
committed
Rework PlayerArgument, OfflinePlayerArgument and AsyncOfflinePlayerArgument to be more inline with Paper
1 parent d0ccd77 commit 62f3317

File tree

52 files changed

+432
-148
lines changed
  • nms
  • commandapi-spigot-documentation-code/src/main
  • commandapi-spigot-nms
  • commandapi-spigot-plugin-mojang-mapped/src/main/java/dev/jorel/commandapi
  • commandapi-spigot-plugin/src/main/java/dev/jorel/commandapi
  • commandapi-testing/commandapi-testing-paper/src/main/java/dev/jorel/commandapi/testing
  • Some content is hidden

    Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

    52 files changed

    +432
    -148
    lines changed

    commandapi-core/src/main/java/dev/jorel/commandapi/arguments/CommandAPIArgumentType.java

    Lines changed: 0 additions & 5 deletions
    Original file line numberDiff line numberDiff line change
    @@ -219,11 +219,6 @@ public enum CommandAPIArgumentType {
    219219
    */
    220220
    OBJECTIVE_CRITERIA("minecraft:objective_criteria"),
    221221

    222-
    /**
    223-
    * The OfflinePlayerArgument
    224-
    */
    225-
    OFFLINE_PLAYER("api:offline_player"),
    226-
    227222
    /**
    228223
    * The ParticleArgument
    229224
    */

    commandapi-kotlin/commandapi-kotlin-bukkit/src/main/kotlin/dev/jorel/commandapi/kotlindsl/CommandAPICommandDSL.kt

    Lines changed: 0 additions & 5 deletions
    Original file line numberDiff line numberDiff line change
    @@ -4,9 +4,7 @@ package dev.jorel.commandapi.kotlindsl
    44

    55
    import dev.jorel.commandapi.*
    66
    import dev.jorel.commandapi.arguments.*
    7-
    import org.bukkit.command.CommandSender
    87
    import org.bukkit.plugin.java.JavaPlugin
    9-
    import java.util.function.Predicate
    108

    119
    inline fun commandAPICommand(name: String, command: CommandAPICommand.() -> Unit = {}) = CommandAPICommand(name).apply(command).register()
    1210
    inline fun commandAPICommand(name: String, namespace: String, command: CommandAPICommand.() -> Unit = {}) = CommandAPICommand(name).apply(command).register(namespace)
    @@ -55,9 +53,6 @@ inline fun CommandAPICommand.entitySelectorArgumentOneEntity(nodeName: String, o
    5553
    inline fun CommandAPICommand.entitySelectorArgumentManyEntities(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(EntitySelectorArgument.ManyEntities(nodeName, allowEmpty).setOptional(optional).apply(block))
    5654
    inline fun CommandAPICommand.entitySelectorArgumentOnePlayer(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(EntitySelectorArgument.OnePlayer(nodeName).setOptional(optional).apply(block))
    5755
    inline fun CommandAPICommand.entitySelectorArgumentManyPlayers(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(EntitySelectorArgument.ManyPlayers(nodeName, allowEmpty).setOptional(optional).apply(block))
    58-
    inline fun CommandAPICommand.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(PlayerArgument(nodeName).setOptional(optional).apply(block))
    59-
    inline fun CommandAPICommand.offlinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(OfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    60-
    inline fun CommandAPICommand.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(AsyncOfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    6156
    inline fun CommandAPICommand.entityTypeArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(EntityTypeArgument(nodeName).setOptional(optional).apply(block))
    6257

    6358
    // Scoreboard arguments

    commandapi-kotlin/commandapi-kotlin-bukkit/src/main/kotlin/dev/jorel/commandapi/kotlindsl/CommandTreeDSL.kt

    Lines changed: 0 additions & 7 deletions
    Original file line numberDiff line numberDiff line change
    @@ -4,7 +4,6 @@ import dev.jorel.commandapi.*
    44
    import dev.jorel.commandapi.arguments.*
    55
    import org.bukkit.command.CommandSender
    66
    import org.bukkit.plugin.java.JavaPlugin
    7-
    import java.util.function.Predicate
    87

    98
    const val WILL_NOT_REGISTER = "will-not-reg"
    109

    @@ -62,9 +61,6 @@ inline fun CommandTree.entitySelectorArgumentOneEntity(nodeName: String, optiona
    6261
    inline fun CommandTree.entitySelectorArgumentManyEntities(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(EntitySelectorArgument.ManyEntities(nodeName, allowEmpty).setOptional(optional).apply(block))
    6362
    inline fun CommandTree.entitySelectorArgumentOnePlayer(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(EntitySelectorArgument.OnePlayer(nodeName).setOptional(optional).apply(block))
    6463
    inline fun CommandTree.entitySelectorArgumentManyPlayers(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(EntitySelectorArgument.ManyPlayers(nodeName, allowEmpty).setOptional(optional).apply(block))
    65-
    inline fun CommandTree.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(PlayerArgument(nodeName).setOptional(optional).apply(block))
    66-
    inline fun CommandTree.offlinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(OfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    67-
    inline fun CommandTree.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(AsyncOfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    6864
    inline fun CommandTree.entityTypeArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(EntityTypeArgument(nodeName).setOptional(optional).apply(block))
    6965

    7066
    // Scoreboard arguments
    @@ -168,9 +164,6 @@ inline fun Argument<*>.entitySelectorArgumentOneEntity(nodeName: String, optiona
    168164
    inline fun Argument<*>.entitySelectorArgumentManyEntities(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(EntitySelectorArgument.ManyEntities(nodeName, allowEmpty).setOptional(optional).apply(block))
    169165
    inline fun Argument<*>.entitySelectorArgumentOnePlayer(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(EntitySelectorArgument.OnePlayer(nodeName).setOptional(optional).apply(block))
    170166
    inline fun Argument<*>.entitySelectorArgumentManyPlayers(nodeName: String, allowEmpty: Boolean = true, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(EntitySelectorArgument.ManyPlayers(nodeName, allowEmpty).setOptional(optional).apply(block))
    171-
    inline fun Argument<*>.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(PlayerArgument(nodeName).setOptional(optional).apply(block))
    172-
    inline fun Argument<*>.offlinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(OfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    173-
    inline fun Argument<*>.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(AsyncOfflinePlayerArgument(nodeName).setOptional(optional).apply(block))
    174167
    inline fun Argument<*>.entityTypeArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(EntityTypeArgument(nodeName).setOptional(optional).apply(block))
    175168

    176169
    // Scoreboard arguments

    commandapi-kotlin/commandapi-kotlin-paper/src/main/kotlin/dev/jorel/commandapi/kotlindsl/PaperCommandAPICommandDSL.kt

    Lines changed: 4 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -2,10 +2,14 @@ package dev.jorel.commandapi.kotlindsl
    22

    33
    import dev.jorel.commandapi.CommandAPICommand
    44
    import dev.jorel.commandapi.arguments.Argument
    5+
    import dev.jorel.commandapi.arguments.AsyncPlayerProfileArgument
    56
    import dev.jorel.commandapi.arguments.ChatArgument
    67
    import dev.jorel.commandapi.arguments.ChatColorArgument
    78
    import dev.jorel.commandapi.arguments.ChatComponentArgument
    9+
    import dev.jorel.commandapi.arguments.PlayerProfileArgument
    810

    911
    inline fun CommandAPICommand.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    1012
    inline fun CommandAPICommand.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    1113
    inline fun CommandAPICommand.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatArgument(nodeName).setOptional(optional).apply(block))
    14+
    inline fun CommandAPICommand.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    15+
    inline fun CommandAPICommand.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))

    commandapi-kotlin/commandapi-kotlin-paper/src/main/kotlin/dev/jorel/commandapi/kotlindsl/PaperCommandTreeDSL.kt

    Lines changed: 4 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -6,7 +6,11 @@ import dev.jorel.commandapi.arguments.*
    66
    inline fun CommandTree.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    77
    inline fun CommandTree.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    88
    inline fun CommandTree.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatArgument(nodeName).setOptional(optional).apply(block))
    9+
    inline fun CommandTree.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    10+
    inline fun CommandTree.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    911

    1012
    inline fun Argument<*>.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    1113
    inline fun Argument<*>.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    1214
    inline fun Argument<*>.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatArgument(nodeName).setOptional(optional).apply(block))
    15+
    inline fun Argument<*>.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    16+
    inline fun Argument<*>.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))

    commandapi-kotlin/commandapi-kotlin-spigot/src/main/kotlin/dev/jorel/commandapi/kotlindsl/SpigotCommandAPICommandDSL.kt

    Lines changed: 4 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -2,10 +2,14 @@ package dev.jorel.commandapi.kotlindsl
    22

    33
    import dev.jorel.commandapi.CommandAPICommand
    44
    import dev.jorel.commandapi.arguments.Argument
    5+
    import dev.jorel.commandapi.arguments.AsyncPlayerProfileArgument
    56
    import dev.jorel.commandapi.arguments.ChatArgument
    67
    import dev.jorel.commandapi.arguments.ChatColorArgument
    78
    import dev.jorel.commandapi.arguments.ChatComponentArgument
    9+
    import dev.jorel.commandapi.arguments.PlayerProfileArgument
    810

    911
    inline fun CommandAPICommand.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    1012
    inline fun CommandAPICommand.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    1113
    inline fun CommandAPICommand.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(ChatArgument(nodeName).setOptional(optional).apply(block))
    14+
    inline fun CommandAPICommand.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    15+
    inline fun CommandAPICommand.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandAPICommand = withArguments(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))

    commandapi-kotlin/commandapi-kotlin-spigot/src/main/kotlin/dev/jorel/commandapi/kotlindsl/SpigotCommandTreeDSL.kt

    Lines changed: 4 additions & 0 deletions
    Original file line numberDiff line numberDiff line change
    @@ -6,7 +6,11 @@ import dev.jorel.commandapi.arguments.*
    66
    inline fun CommandTree.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    77
    inline fun CommandTree.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    88
    inline fun CommandTree.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(ChatArgument(nodeName).setOptional(optional).apply(block))
    9+
    inline fun CommandTree.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    10+
    inline fun CommandTree.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): CommandTree = then(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    911

    1012
    inline fun Argument<*>.chatColorArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatColorArgument(nodeName).setOptional(optional).apply(block))
    1113
    inline fun Argument<*>.chatComponentArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatComponentArgument(nodeName).setOptional(optional).apply(block))
    1214
    inline fun Argument<*>.chatArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(ChatArgument(nodeName).setOptional(optional).apply(block))
    15+
    inline fun Argument<*>.playerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(PlayerProfileArgument(nodeName).setOptional(optional).apply(block))
    16+
    inline fun Argument<*>.asyncOfflinePlayerArgument(nodeName: String, optional: Boolean = false, block: Argument<*>.() -> Unit = {}): Argument<*> = then(AsyncPlayerProfileArgument(nodeName).setOptional(optional).apply(block))

    commandapi-platforms/commandapi-bukkit/commandapi-bukkit-core/src/main/java/dev/jorel/commandapi/nms/NMS.java

    Lines changed: 0 additions & 2 deletions
    Original file line numberDiff line numberDiff line change
    @@ -363,8 +363,6 @@ public abstract Objective getObjective(CommandContext<CommandListenerWrapper> cm
    363363

    364364
    public abstract ParticleData<?> getParticle(CommandContext<CommandListenerWrapper> cmdCtx, String key);
    365365

    366-
    public abstract Player getPlayer(CommandContext<CommandListenerWrapper> cmdCtx, String key) throws CommandSyntaxException;
    367-
    368366
    public abstract OfflinePlayer getOfflinePlayer(CommandContext<CommandListenerWrapper> cmdCtx, String key)
    369367
    throws CommandSyntaxException;
    370368

    commandapi-platforms/commandapi-bukkit/commandapi-bukkit-nms/commandapi-bukkit-nms-common/src/main/java/dev/jorel/commandapi/nms/NMS_Common.java

    Lines changed: 0 additions & 10 deletions
    Original file line numberDiff line numberDiff line change
    @@ -369,16 +369,6 @@ public final OfflinePlayer getOfflinePlayer(CommandContext<CommandSourceStack> c
    369369
    return Bukkit.getOfflinePlayer(GameProfileArgument.getGameProfiles(cmdCtx, key).iterator().next().getId());
    370370
    }
    371371

    372-
    @Override
    373-
    public final Player getPlayer(CommandContext<CommandSourceStack> cmdCtx, String key) throws CommandSyntaxException {
    374-
    Player target = Bukkit.getPlayer(GameProfileArgument.getGameProfiles(cmdCtx, key).iterator().next().getId());
    375-
    if (target == null) {
    376-
    throw GameProfileArgument.ERROR_UNKNOWN_PLAYER.create();
    377-
    } else {
    378-
    return target;
    379-
    }
    380-
    }
    381-
    382372
    @Override
    383373
    public final int getTime(CommandContext<CommandSourceStack> cmdCtx, String key) {
    384374
    return cmdCtx.getArgument(key, Integer.class);

    commandapi-platforms/commandapi-bukkit/commandapi-bukkit-test-toolkit/src/test/java/dev/jorel/commandapi/arguments/ProfileArgumentTypeTests.java

    Lines changed: 1 addition & 1 deletion
    Original file line numberDiff line numberDiff line change
    @@ -30,7 +30,7 @@ private void registerCommand(boolean offlinePlayer) {
    3030
    .withArguments(
    3131
    offlinePlayer ?
    3232
    new OfflinePlayerArgument("offline") :
    33-
    new PlayerArgument("player")
    33+
    new PlayerProfileArgument("player")
    3434
    )
    3535
    .executes(DEFAULT_EXECUTOR)
    3636
    .register();

    0 commit comments

    Comments
     (0)
    0