Преобразования и переходы в Python (Transforms and Transitions in Python)
Перейти к навигации
Перейти к поиску
Язык программирования Python может использоваться для создания новых преобразований и переходов для использования в скриптах Ren'Py.
Преобразования (Transforms)[править | править код]
Преобразование – вызываемый Python, который при вызове с отображаемым объектом возвращает другой отображаемый объект.
Например:
init python:
# Это преобразование, которое использует правое и
# левое преобразования.
def right_or_left(d):
if switch:
return right(d)
else:
return left(d)
Эквивалентом ATL-преобразования в языке Python является объект Transform.
- class Transform(child=None, function=None, **properties)
- Преобразование применяет к своему дочернему элементу такие операции, как обрезка, вращение, масштабирование и альфа-смешивание. У объекта преобразования есть поля, соответствующие свойствам преобразования, которые он применяет к своему дочернему объекту.
- child
- Дочерний элемент, к которому применяется преобразование.
- function
- Если принимает значение не None, то это функция, которая вызывается при отображении преобразования. Функция вызывается с тремя аргументами:
- объект преобразования.
- указанное время, которое представляет собой количество секунд, прошедшее с момента начала выполнения функции.
- время анимации, которое представляет собой количество секунд, в течение которых объект с такими же тегом отображается на экране.
- Функция должна вернуть задержку в секундах, после которой она будет вызвана снова, или значение None для повторного вызова в начале следующего взаимодействия.
- Дополнительные аргументы принимаются в качестве значений для задания свойств преобразования.
- hide_request
- При вызове функции присваивается значение True, чтобы показать, что преобразование скрыто.
- hide_response
- Если hide_request принимает значение True, можно установить значение False, чтобы предотвратить скрытие преобразования.
- set_child(child)
- Вызовите этот метод с новым child, чтобы изменить дочерний элемент этого преобразования.
- update()
- Следует вызывать, когда поле свойства преобразования обновляется вне метода обратного вызова, чтобы убедиться, что изменение вступает в силу.
Переходы (Transitions)[править | править код]
Переход – вызываемый Python, который при вызове с двумя именованными аргументами возвращает отображаемый объект, который выполняет эффект перехода. Два именованных аргумента:
- old_widget
- Отображаемый объект, представляющий старый экран.
- new_widget
- Отображаемый объект, представляющий новый экран.
Возвращаемый отображаемый объект должен иметь поле delay, содержащее данные о количестве секунд, в течение которых должен выполняться переход.
Например:
init python:
def dissolve_or_pixellate(old_widget=None, new_widget=None):
if persistent.want_pixellate:
return pixellate(old_widget=old_widget, new_widget=new_widget)
else:
return dissolve(old_widget=old_widget, new_widget=new_widget)
Источник[править | править код]
Статья "Transforms and Transitions in Python" на английском языке.
На главную страницу | Официальная документация движка | Вернуться к началу статьи |