Пазлы логики (Logic)
Эти пазлы предоставляют условные выражения для выполнения различных вычислений или действий в зависимости от того, выполняется ли условие.
![](files/puzzles/puzzles-logic.jpg)
Содержание
Перечень пазлов
if / else
С помощью этих пазлов вы можете реализовать разветвление (поток управления) в своих пазлах.
![](files/puzzles/puzzles-logic-if-else.jpg)
Предположим, в вашей сцене есть куб и сфера. Когда пользователь кликает по сфере, вы хотите скрыть ее, но только если пользователь уже щелкал по кубу. Такой сценарий можно легко реализовать с помощью переменной для запоминания, был ли куб когда-либо кликнут:
![](files/puzzles/puzzles-logic-example.jpg)
Иногда необходимо сравнить переменную с несколькими значениями, и поэтому требуется больше ветвей. В этом случае вы можете расширить пазл if, нажав на значок шестеренки и перетащив дополнительные слоты: elseif или else.
![](files/puzzles/puzzles-logic-more-branching.jpg)
В результате вы сможете заполнить вновь созданные слоты любыми действиями, которые должны произойти в вашем сценарии:
![](files/puzzles/puzzles-logic-example4.jpg)
comparison
Этот пазл сравнивает два значения и выводит логическое значение как результат сравнения.
![](files/puzzles/puzzles-logic-comparison.jpg)
Вместо использования значений true / false, как в примере выше, вы можете использовать любые другие пазлы, такие как text, чтобы задать значение переменной. Однако в этом случае вам дополнительно понадобится пазл сравнения, чтобы иметь возможность проверять текстовые значения. Результат сравнения (true или false) затем передается в пазл if / else:
![](files/puzzles/puzzles-logic-example2.jpg)
Вот более продвинутый пример: скрыть сферу только в том случае, если пользователь кликнул по кубу 3 раза:
![](files/puzzles/puzzles-logic-example3.jpg)
logical operators AND / OR
Вы можете детализировать ваши сравнения, используя логические операторы AND / OR.
![](files/puzzles/puzzles-logic-operators-and-or-sample.jpg)
Пример:
![](files/puzzles/puzzles-logic-operators-and-or.jpg)
logical operator NOT
Вы можете отрицать результат логического выражения (преобразовывать true в false и обратно) с помощью логического оператора NOT.
![](files/puzzles/puzzles-logic-operator-not-sample.jpg)
Пример:
![](files/puzzles/puzzles-logic-operator-not.jpg)
true / false
Логические пазлы оперируют только двумя значениями, true и false, также известными как Булевы значения.
![](files/puzzles/puzzles-logic-true-false.jpg)
Эти значения выдаются на выходе пазла сравнения, а также логических операторов AND / OR и NOT, и поставляются в качестве входных данных для разветвленных пазловif / else и test.
null
Значение null, строго говоря, не имеет отношения к логической алгебре. Если переменная установлена в null, это означает, что она не установлена в true или false, а скорее оставлена "неопределенной".
![](files/puzzles/puzzles-logic-null-sample.jpg)
Вы можете использовать null для инициализации вновь созданной переменной.
![](files/puzzles/puzzles-logic-null.jpg)
test
Иногда вы можете сделать свои пазлы более компактными или более удобными в использовании, используя пазл test, который сразу возвращает значение.
![](files/puzzles/puzzles-logic-test-sample.jpg)
Пример:
![](files/puzzles/puzzles-logic-test.jpg)
Проблемы с пазлами?
Обращайтесь за помощью на наш форум!