This site works best with JavaScript enabled. Please enable JavaScript to get the best experience from this site.
As of 1.13 @ selectors are no longer automatically parsed before commands are sent to plugins. Therefore each plugin is required to parse it's commands for selectors using the new API before attempting to handle the commands.
md_5 made an example of said API usage called SelectEverywhere: https://www.spigotmc.org/resources/selecteverywhere.64475/
Please implement into MyCommand as many commands that used selectors in MyCmd are now broken.
Example:MyCmd Custom command:
greet: command: /greet type: RUN_COMMAND runcmd: - '$broadcasttext$&eGreetings $arg1 !!' required_args: 1
Command block:
/greet @p
Expected output:
Greetings L3thalBunny !!
ACTUAL Output:
Greetings @p !!
I've implemented it in the latest 5.5.0 build. Let me know.
In the latest update i've done to the build i've tryed to make it effective only when the command is of mycommand, but in this case the command block doesn't work. Putting it like that SelectEverywhere will take action on every plugin command. If i find a way to make it works in the commandblock ok, or i'm probably going to remove it.
Anyway, can't you just put SelectEverywhere.jar inside the plugin folder? It should work fine for every plugin.
Added in 5.5.0
Yeah SelectEverywhere adds very basic generic selector support for SINGLE-PERSON/SINGLE-ENTITY selectors. It does not support multiple-entity selectors like the all-players selector @a. I wouldn't worry about trying to handle command blocks, just add support for all MyCmd commands to handle selectors appropriately.
Example:The command block successfully passes "greet @p" to MyCommand and with SelectEverywhere the @p would result in nearest player BUT, if say command block had "greet @a", SelectEverywhere would do nothing and MyCmd would get one command for "greet @a" instead of multiple commands of "greet {player}" for all players online. MyCmd should recognize the @a or @e and then re-submit the parsed command for all qualified entites.
I'll update and test next weekend, a little busy this week.
@p works for sure, from player and console respectively. So i did nothing, because what i've implemented probably works as the SelectEverywhere.
Basically @a should work like "executefor: ONLINE_PLAYERS", and run the command for everyone. SelectEverywhere at the end of the day just replace the placeholder and end there.
Tested it on:git-Spigot-03bd4b0-342194e (MC: 1.14.1) (Implementing API version 1.14.1-R0.1-SNAPSHOT) (most recent)MyCommand: v5.5.0 (most recent)
No other plugins, clean install.
Custom Command:
test: command: /test type: RUN_COMMAND runcmd: - '/tellraw LethalBunni ["your arg: $arg1"]' required_args: 1 register: true
/test @p
Expected Output:
your arg: LethalBunni
Actual Output:
your arg: @p
Command block not working for me :(
Typing the command manually however DOES work BUT only with @p.. When I had two players online and i tried /test @a output was: "your arg @a"
To post a comment, please login or register a new account.