Выражения
При добавлении условия или действия в событие, рядом с некоторыми полями есть следующие значки:
Эти значки показывают, что поле принимает выражение.
Есть несколько типов выражений:
Note
Вы можете переключаться с чисел на текст или с текста на числа с функциями.
Tip
Полный список функциональных выражений, которые GDevelop предоставляет по умолчанию, см. в expressions reference.
Числа
Когда рядом с полем появляется следующий значок, это поле принимает числовое выражение:
Числовое выражение - это число.
Следующие значения являются примерами числовых выражений:
0
-10
25.5
Вы также можете использовать математические операторы для сложения, вычитания, умножения и деления чисел:
2+2
3-1
10*10
99/3
Это полный список операторов:
+
(добавить)-
(вычесть)*
(умножить)/
(подилить)
Tip
В одном выражении можно использовать несколько операторов.
Текст
Когда рядом с полем появляется следующий значок, это поле принимает выражение текста:
Текстовое выражение - это строка текста.
Следующие значения являются примерами текстовых выражений:
"Привет мир!"
"Это текстовое выражение"
"GDevelop это круто!"
Все текстовые выражения должны быть заключены в двойные кавычки. Без двойных кавычек GDevelop предполагает, что значение является функцией, что, скорее всего, приведет к ошибке.
Вы можете использовать оператор +
для объединения двух или более строк текста. Например, «Привет» + «Мир» превращается в «ПриветМир». Остальные операторы недопустимы при работе с текстом.
Функции
Часто необходимо вычислять сложные значения, с которыми математические операторы не могут справиться. Например, если событие влияет на положение игрока, игра должна динамически вычислять координаты X и Y игрока.
Вот здесь и пригодятся функции.
Вы можете использовать функции для динамического вычисления комплексных значений во время игры. Например, функции X
иY
вычисляют координаты объекта:
ИмяОбъекта.X()
ИмяОбъекта.Y()
Использование функции часто называют вызовом функции.
Tip
Если вы знакомы с формулами в электронных таблицах, функциями в языках программирования или функциями в математике, знайте, что функции в GDevelop ведут себя аналогичным образом.
Синтаксис
Есть три типа функций:
- Функции без объектов
- Функции с объектами
- Функции с объектами и поведением
Каждый тип функции немного отличается синтаксисом.
Функции без объектов
Некоторые функции существуют независимо от объектов и поведений. Для вызова этих функций ваша сцена не нуждается в каких-либо объектах или поведениях.
Вот несколько примеров функций без объектов:
CurrentSceneName()
- Получите название текущей сцены.FileSystem::DesktopPath()
- Получите путь к каталогу «ПК».ToNumber(<number>)
- Преобразуйте строку в число.
Note
GDevelop использует синтаксис ::
для функций, связанных с * пространством имен *. Например, все функции файловой системы имеют префикс FileSystem ::. Это помогает организовать связанные функции. Синтаксис ::
не влияет на поведение функции.
Функции с объектами
Некоторые функции вызываются для объектов. Это означает, что функция влияет на конкретный объект или извлекает данные о нем.
Вот несколько примеров функций с объектами:
<object>.Angle()
- Получите угол объекта (в градусах).<object>.Layer()
- Получите имя слоя, на котором находится объект.<object>.ObjectName()
- Получите название объекта.
Функции с объектами и поведением
Некоторые функции вызываются для поведения объекта. Это означает, что функция влияет или извлекает данные о конкретном поведении, связанном с объектом.
Вот несколько примеров функций с объектами и поведениями:
<объект>.Pathfinding::Speed()
<объект>.Physics2::Friction()
<объект>.PlatformerObject::Gravity()
Arguments
Некоторые функции принимают аргументы. аргумент - это значение, которое:
- можно передать в функцию
- влияет на вывод функции
Например, функция ToString
преобразует число в строку, но ничего не может сделать, если вы не предоставите ей число. Это число - аргумент. В следующем примере аргументом является число 42:
ToNumber(42)
Некоторые функции, такие как функция MouseX, принимают несколько аргументов:
MouseX(слой, камера)
Если функция принимает несколько аргументов, каждый аргумент должен быть разделен запятыми и предоставлен в указанном порядке.
Возвращаемые значения
Когда функция вычисляет значение, она возвращает это значение. Это значение является выходом функции. Например, если координата X объекта равна 42
, функцияObjectName.X ()
возвращает42
.
Функции могут возвращать числа или строки. Тип значения, возвращаемого функцией, определяет, можно ли использовать функцию в поле. Например, функция ToString возвращает строку, поэтому ее нельзя использовать в поле, которое ожидает число, а функция ToNumber возвращает число, поэтому ее нельзя использовать в поле, которое ожидает текст.