Решено Как создать команду /try с помощью плагина MyCommand

Статус
Закрыто для дальнейших ответов.

ToxaEagle123

Активный участник
Пользователь
Баллы
61
Ник в Minecraft
ToxaEagle123
Всем привет, нужно создать команду try "действие". Например игрок прописывает:
"/try Взламываю сейф" и ему выходит сообщение "удалось" или "не удалось" рандомно.
Также желательно чтобы этот текст "удалось" или "не удалось" показывалось всем в глобальном чате.
 
Всем привет, нужно создать команду try "действие". Например игрок прописывает:
"/try Взламываю сейф" и ему выходит сообщение "удалось" или "не удалось" рандомно.
Также желательно чтобы этот текст "удалось" или "не удалось" показывалось всем в глобальном чате.

Код:
try:
  command: /try
  type: RUN_CONSOLE_RANDOM
  runcmd:
  - '$broadcasttext$ &7$player: $multiargs | &aУдачно'
  - '$broadcasttext$ &7$player: $multiargs | &cНеудачно'
  permission-required: false
  required_args: 1
  register: true
  error-message: '&cИспользование: /try <действие>'

Результат выполнения:
 
Код:
try:
  command: /try
  type: RUN_CONSOLE_RANDOM
  runcmd:
  - '$broadcasttext$ &7$player: $multiargs | &aУдачно'
  - '$broadcasttext$ &7$player: $multiargs | &cНеудачно'
  permission-required: false
  required_args: 1
  register: true
  error-message: '&cИспользование: /try <действие>'

Результат выполнения:
Спасибо за ответ! Команда работает, но когда пытаюсь написать действие на русском </try Взломал кейс> выдает эту ошибку - "Your input contains not allowed characters" На русском - "
Ваш ввод содержит недопустимые символы". Потом попытался в конфиге разрешить русские буквы:

#Manage what characters an user can type changing the regex pattern.
REGEX:
PATTERN: "^[-a-zA-Z0-9&._,а-А ]+"

Но после этого команда вообще перестала работать.
 
Последнее редактирование:
Это вроде связано с последним обновлением MyCmd. Я юзаю чуть более старую версию, где ещё нет этой функции, поэтому всё работает. Возможно, что-то неверно введено в паттерне. В Regex к сожалению не шарю
 
Неверная регулярка
Попробуйте вот так:
^[a-zA-Zа-яА-ЯёЁ_\s]+
Русские, латинские, пробел и символ подчёркивания
 
Неверная регулярка
Попробуйте вот так:
^[a-zA-Zа-яА-ЯёЁ_\s]+
Русские, латинские, пробел и символ подчёркивания

[15:20:31 ERROR]: Cannot load plugins/MyCommand/config.yml
org.bukkit.configuration.InvalidConfigurationException: while scanning a double-quoted scalar
in 'string', line 56, column 12:
PATTERN: "^[a-zA-Zа-яА-ЯёЁ_\s]+"
^
found unknown escape character s(115)
in 'string', line 56, column 31:
PATTERN: "^[a-zA-Zа-яА-ЯёЁ_\s]+"
^
at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:59) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:160) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:128) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:186) ~[patched_1.16.4.jar:git-Paper-291]
at it.emmerrei.mycommand.InitializeConfigFiles.checkConfig(InitializeConfigFiles.java:199) ~[?:?]
at it.emmerrei.mycommand.Main.onEnable(Main.java:296) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:380) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:483) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugin(CraftServer.java:501) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.enablePlugins(CraftServer.java:415) ~[patched_1.16.4.jar:git-Paper-291]
at net.minecraft.server.v1_16_R3.MinecraftServer.loadWorld(MinecraftServer.java:468) ~[patched_1.16.4.jar:git-Paper-291]
at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:239) ~[patched_1.16.4.jar:git-Paper-291]
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:940) ~[patched_1.16.4.jar:git-Paper-291]
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:177) ~[patched_1.16.4.jar:git-Paper-291]
at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: org.yaml.snakeyaml.scanner.ScannerException: while scanning a double-quoted scalar
in 'string', line 56, column 12:
PATTERN: "^[a-zA-Zа-яА-ЯёЁ_\s]+"
^
found unknown escape character s(115)
in 'string', line 56, column 31:
PATTERN: "^[a-zA-Zа-яА-ЯёЁ_\s]+"
^
at org.yaml.snakeyaml.scanner.ScannerImpl.scanFlowScalarNonSpaces(ScannerImpl.java:1895) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.scanner.ScannerImpl.scanFlowScalar(ScannerImpl.java:1829) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchFlowScalar(ScannerImpl.java:1027) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchDouble(ScannerImpl.java:1009) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:394) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:227) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingValue.produce(ParserImpl.java:586) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:136) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeValueNode(Composer.java:257) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeMappingChildren(Composer.java:248) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:236) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:162) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeValueNode(Composer.java:257) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeMappingChildren(Composer.java:248) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:236) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:162) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.getNode(Composer.java:95) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:119) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleDataaseConstructor.java:150) ~[patched_1.16.4.jar:git-Paper-291](B
at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:472) ~[patched_1.16.4.jar:git-Paper-291]
at org.yaml.snakeyaml.Yaml.load(Yaml.java:398) ~[patched_1.16.4.jar:git-Paper-291]
at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:57) ~[patched_1.16.4.jar:git-Paper-291]
... 15 more
 
Неверная регулярка
Попробуйте вот так:
^[a-zA-Zа-яА-ЯёЁ_\s]+
Русские, латинские, пробел и символ подчёркивания

Команда теперь работает, но при попытке написать русскими буквами, выходи та же ошибка "Ваш текст содержит недопустимые символы".
 
UP
Все еще нужна помощь.
Может попробовать в паттерне написать просто * (типо все символы) и проверить, если оно так работает, просто с этой регуляркой не работал, не знаю правильно ли это
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх Низ