Artem521 пишет:
С работой плагина разобрался, всё работает как надо. Но заметил одну проблему: "Hidden Choice Conditions" не работает вместе "YEP_ExtMesPack1".
В YEP_ExtMesPack1 есть свой код для скрытия пунктов меню, для него плагин от Hime не нужен.
В настройках YEP_ExtMesPack1 есть опция типа Choice 1 Show Switch, Choice 2 Show Switch, Choice 3 Show Switch, Choice 4 Show Switch и т.д. В этих пунктах можно выбрать переключатель для каждого пункта выборов:
Я советую выбрать какие-то номера, которые идут подряд. Например, от 11 до 30 (как у меня на скриншоте). Или от 101 до 120. Потом, если выбранный переключатель ВКЛючён, то выбор будет показываться. Если выключен — то не будет.
То есть проверка идёт
наоборот. Если у Hime надо писать условие
скрытия, то тут переключатель надо включать для
появления.
Переключатель можно включить таким кодом
$gameSwitches.setValue(11, УСЛОВИЕ);
//вместо 11 надо написать номер переключателя, связанного с первым выбором
В примере WhitePaper был такой скрипт:
hide_choice(1, "$gameSwitches.value(4) === true")
hide_choice(2, "$gameSwitches.value(4) === false || $gameSwitches.value(5) === true")
hide_choice(3, "$gameSwitches.value(6) === true")
hide_choice(4, "$gameSwitches.value(6) === false || $gameSwitches.value(7) === true")
Если мы будем использовать встроенную функцию из YEP_ExtMesPack1, то код будет таким (если для выборов используются переключатели №11, №12, №13 и №14):
$gameSwitches.setValue(11, $gameSwitches.value(4) === false);
$gameSwitches.setValue(12, $gameSwitches.value(4) === true && $gameSwitches.value(5) === false);
$gameSwitches.setValue(13, $gameSwitches.value(6) === false);
$gameSwitches.setValue(14, $gameSwitches.value(6) === true && $gameSwitches.value(7) === false);
Ну или так (это одно и то же, просто мне такой код больше нравится — он короче):
$gameSwitches.setValue(11, !$gameSwitches.value(4));
$gameSwitches.setValue(12, $gameSwitches.value(4) && !$gameSwitches.value(5));
$gameSwitches.setValue(13, !$gameSwitches.value(6));
$gameSwitches.setValue(14, $gameSwitches.value(6) && !$gameSwitches.value(7));
Ну, надеюсь, принцип понятен.
Вот полный пример от WhitePaper с использованием YEP_ExtMesPack1 вместо HIME_HiddenChoiceConditions (жирным выделено то, что изменилось):
◆Если:Мира: Как ты себя чувствуешь? теперь ВКЛ
◆Если:Мира: Где магазин? теперь ВКЛ
◆Сообщение:Midori(0), Окно, Низ
: :Привет!
◆Переход к метке:no choice
◆
:Конец
◆
:Конец
◆Скрипт:$gameSwitches.setValue(11, !$gameSwitches.value(4));
: :$gameSwitches.setValue(12, $gameSwitches.value(4) && !$gameSwitches.value(5));
: :$gameSwitches.setValue(13, !$gameSwitches.value(6));
: :$gameSwitches.setValue(14, $gameSwitches.value(6) && !$gameSwitches.value(7));
◆Сообщение:Midori(0), Окно, Низ
: :Привет!
◆Показать выбор:Кто ты?, Как ты себя чувствуешь?, Где мы находимся?, Где находится ближайший магазин? (Окно, Справа, #1, #2)
:Если Кто ты?
◆Сообщение:Midori(0), Окно, Низ
: :Я - Мира.
◆Переключатель:#0004 Мира: Кто ты? = ВКЛ
◆
:Если Как ты себя чувствуешь?
◆Сообщение:Midori(0), Окно, Низ
: :Нормально... А почему спрашиваешь?
◆Переключатель:#0005 Мира: Как ты себя чувствуешь? = ВКЛ
◆
:Если Где мы находимся?
◆Сообщение:Midori(0), Окно, Низ
: :На тестовой карте.
◆Переключатель:#0006 Мира: Где мы? = ВКЛ
◆
:Если Где находится ближайший магазин?
◆Сообщение:Midori(0), Окно, Низ
: :В другой игре.
◆Переключатель:#0007 Мира: Где магазин? = ВКЛ
◆
:Конец
◆Метка:no choice