CraftBook Version
5.0.0-SNAPSHOT
Platform Version
26.1.2-60-main@b4682bf
Confirmations
Bug Description
Not enclosing the line-content parameter of the /signcopy-command throws an exception.
[07:50:03 ERROR]: [org.enginehub.craftbook.PlatformCommandManager] An unexpected error while handling a CraftBook command
java.lang.IllegalStateException: Too many values present
at com.google.common.base.Preconditions.checkState(Preconditions.java:513) ~[guava-33.5.0-jre.jar:?]
at worldedit-bukkit-8.0.0-SNAPSHOT-dist.jar//org.enginehub.piston.CommandValue.asSingle(CommandValue.java:109) ~[?:?]
at craftbook-bukkit-5.0.0-SNAPSHOT-dist.jar//org.enginehub.craftbook.mechanics.signcopier.SignEditCommandsRegistration.extract$text(SignEditCommandsRegistration.java:153) ~[?:?]
at craftbook-bukkit-5.0.0-SNAPSHOT-dist.jar//org.enginehub.craftbook.mechanics.signcopier.SignEditCommandsRegistration.cmd$edit(SignEditCommandsRegistration.java:119) ~[?:?]
at worldedit-bukkit-8.0.0-SNAPSHOT-dist.jar//org.enginehub.piston.CommandManager.execute(CommandManager.java:157) ~[?:?]
at craftbook-bukkit-5.0.0-SNAPSHOT-dist.jar//org.enginehub.craftbook.PlatformCommandManager.handleCommand(PlatformCommandManager.java:157) ~[?:?]
at craftbook-bukkit-5.0.0-SNAPSHOT-dist.jar//org.enginehub.craftbook.bukkit.CraftBookPlugin.onCommand(CraftBookPlugin.java:251) ~[?:?]
at worldedit-bukkit-8.0.0-SNAPSHOT-dist.jar//com.sk89q.bukkit.util.DynamicPluginCommand.execute(DynamicPluginCommand.java:55) ~[?:?]
at io.papermc.paper.command.brigadier.bukkit.BukkitCommandNode$BukkitBrigCommand.run(BukkitCommandNode.java:83) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at com.mojang.brigadier.context.ContextChain.runExecutable(ContextChain.java:73) ~[brigadier-1.3.10.jar:?]
at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:30) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(ExecuteCommand.java:13) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.execution.UnboundEntryAction.lambda$bind$0(UnboundEntryAction.java:8) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.execution.CommandQueueEntry.execute(CommandQueueEntry.java:5) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.execution.ExecutionContext.runCommandQueue(ExecutionContext.java:104) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.Commands.executeCommandInContext(Commands.java:469) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.Commands.performCommand(Commands.java:377) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.commands.Commands.performCommand(Commands.java:365) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.network.ServerGamePacketListenerImpl.performUnsignedChatCommand(ServerGamePacketListenerImpl.java:2426) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$0(ServerGamePacketListenerImpl.java:2399) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:205) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1569) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:194) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:179) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1549) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1543) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.recordTaskExecutionTimeWhileWaiting(MinecraftServer.java:1273) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1389) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:304) ~[paper-26.1.2.jar:26.1.2-60-b4682bf]
at java.base/java.lang.Thread.run(Thread.java:1474) ~[?:?]
Expected Behavior
In the worst case, print a proper error - but to be frank, I'd rather have the plugin simply collect the arguments without requiring enclosing quotes, as it is obvious that that's what the player wants, based on the fact that it is the last parameter - no ambiguity there. In general, having to use said quotes is a big confusion to many of our players.
Reproduction Steps
- Copy a sign
- Run
/signcopy edit 1 first second
Anything Else?
No response
CraftBook Version
5.0.0-SNAPSHOT
Platform Version
26.1.2-60-main@b4682bf
Confirmations
Bug Description
Not enclosing the line-content parameter of the
/signcopy-command throws an exception.Expected Behavior
In the worst case, print a proper error - but to be frank, I'd rather have the plugin simply collect the arguments without requiring enclosing quotes, as it is obvious that that's what the player wants, based on the fact that it is the last parameter - no ambiguity there. In general, having to use said quotes is a big confusion to many of our players.
Reproduction Steps
/signcopy edit 1 first secondAnything Else?
No response