Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Решено Denizen, не работает оператор If

SlityKozel

Ньюби
Баллы
1
‏ ‏ Доброго времени суток. Я создаю сервер на 1.7.10 с ядром Thermos 1614 (использую Java 8) с плагинами и модами. Мне понадобился Denizen, и я установил последнюю подходящую версию (из тех, что нашёл):‏
0.9.5-SNAPSHOT.
Здесь меня устраивает всё, кроме оператора If. Скрипты, содержащие его, работают некорректно. Я попробовал запустить максимально простую программу, чтобы понять причину:

clicc:
‏ ‏ ‏ ‏ type: assignment
‏ ‏ ‏ ‏ actions:
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ on assignment:
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ - trigger name:click state:true
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ on click:
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ - if <player.has_flag[killmepls]>:
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ - hurt player 20
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ - else:
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ - narrate 'nope'
‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏ ‏- narrate 'AAA'

Предварительно, разумеется, назначил его НИПу и пометил себя как killmepls при помощи иного скрипта.
После нажатия ПКМ урон мне не наносится; в чате высвечивается только "ААА", исходя из чего я сделал вывод, что команда if и всё, что к ней относится, просто не выполняется. Это подтвердила и консоль (шаг с проверкой условия был пропущен). Никакая ошибка при этом не высвечивается.
Сколько искал решение проблемы, так и не понял, что делать. Пожалуйста, помогите, кому не сложно; я новичок, и с подобными плагинами ранее не имел дело.
Предложения по переходу на более новые версии игры попрошу оставить, мне нужна именно 1.7.10 = )
Заранее благодарю.

[ИЗМЕНЕНО]:
Всё, разобрался. Я ориентировался на подсветку кода в Visual Studio Code и официальную документацию, а она учитывает только последние версии плагина.
Исправил скрипт, заключив действия после проверки условия в фигурные скобки.
Спасибо за внимание.
​
 
Последнее редактирование:

Поделиться этой страницей

Назад
Верх