Rivescript выдает ошибку для объекта JavaScript - PullRequest
0 голосов
/ 22 декабря 2019

Я написал программу с использованием Javafx и rivescript. В rivescript я пытаюсь использовать этот код, в котором, когда пользователь вводит слово «угадай», бот вызывает объект javascript randomnum, который выдает случайное число от 1 до 10. Затем бот просит пользователя ввести число между1 и 10, и если пользователь вводит правильный ответ, бот поздравляет его, в противном случае он просит его указать большее или меньшее число. Проблема в том, что приведенный ниже код не работает так, как я хочу. Когда пользователь вводит любое число, программа отображает это сообщение об ошибке:

Exception in thread "JavaFX Application Thread" java.util.regex.PatternSyntaxException: Illegal repetition near index 42
^(?:(?:\s|\b)+(?:.+?)(?:\s|\b)+|(?:\s|\b)+){__call__}randomnum{/__call__}(?:(?:\s|\b)+(?:.+?)(?:\s|\b)+|(?:\s|\b)+)$

, вот код:

    > object randomnum javascript
            var a = Math.floor(Math.random() * 10)+ 1;
            return a;
    < object

    + guess
    - <set result=<call>randomnum</call>> Give a number between 1 and 10  {topic=correctguess}

    > topic correctguess
    + [*] <get result> [*]
    - Well done! {topic=random}

    + #
    * <star> > <get result> => Give a smaller number
    * <star> < <get result> => Give a bigger number
    < topic

Есть ли у кого-нибудь какие-либо предложения о том, как этот код будет работать правильно? Спасибо!

...