Миграция с v1.2 на v1.3
Миграция с v1.2 на v1.3
Автоматически переведённая страница
К сожалению, на полный ручной перевод у нас не хватает ресурсов.
Если вы увидели ошибку — отправьте пул-риквест с исправлениями (ссылка для редактирования в конце страницы).
В ct.js v1.3 был представлен концепт камеры. Раньше для перемещения области просмотра использовались параметры ct.room.x
и ct.room.y
. Теперь эти параметры являются только для чтения, а перемещение области просмотра осуществляется с помощью параметров ct.camera
.
Камера имеет дополнительные функции, такие как масштабирование, вращение области просмотра и добавление эффекта дрожи экрана.
В ней также были введены понятия координат игры и координат пользовательского интерфейса. Коротко говоря, "координаты игры" — это те координаты, которые вы использовали раньше, они используются для объектов, расположенных в игровом мире;, а "координаты пользовательского интерфейса" предназначены исключительно для слоев пользовательского интерфейса. Подробнее об этом можно прочитать здесь.
Поэтому:
- вместо
ct.room.x
используйте0
для координат пользовательского интерфейса иct.camera.getTopLeftCorner()[0]
для координат игры; - вместо
ct.room.y
используйте0
для координат пользовательского интерфейса иct.camera.getTopLeftCorner()[1]
для координат игры; - вместо
ct.viewWidth
используйтеct.camera.width
для координат пользовательского интерфейса иct.camera.getBoundingBox().width
для координат игры; - вместо
ct.viewHeight
используйтеct.camera.heght
для координат пользовательского интерфейса иct.camera.getBoundingBox().heght
для координат игры.
Для их комбинаций, таких как ct.room.x + ct.viewWidth
, лучше использовать специальные функции и параметры камеры. Например, ct.room.x + ct.viewWidth
будет равно ct.camera.width
в координатах пользовательского интерфейса и ct.camera.left
в координатах игры (хотя при работе с вращенными камерами вам нужно будет использовать ct.camera.getTopLeftCorner
и ct.camera.getBottomLeftCorner
).
Примечание
Если вы создаете пользовательский интерфейс, лучше использовать автоматическое выравнивание и слои пользовательского интерфейса, описанные здесь, так как они более мощные инструменты при работе со координатами экрана.
Совет
Вам также следует рассмотреть использование ct.camera.moveTo
и ct.camera.teleportTo
для перемещения камеры. Подробнее об их эффектах можно прочитать здесь.
Совет
Параметры ct.viewWidth
и ct.viewHeight
по-прежнему работают, но являются устаревшими и отражают значения ct.camera.width
и ct.camera.height
. Параметры ct.view*
будут удалены в следующей крупной версии.
Кроме того:
- используйте
ct.camera.follow
вместоct.room.follow
; - используйте
ct.camera.shiftX
иct.camera.shiftY
вместоct.room.followShiftX
иct.room.followShiftY
; - используйте
ct.camera.drift
вместоct.room.followDrift
; - используйте
ct.camera.borderX
иct.camera.borderY
вместоct.room.borderX
иct.room.borderY
; - используйте
ct.camera.borderX = ct.camera.borderY = null;
вместоct.room.center = true;
.
Изменения в встроенных модулях
ct.mouse
и ct.touch
теперь имеют дополнительные методы и параметры, например, ct.mouse.xui
, ct.mouse.hui
и ct.touch.hoversUi
. Полный список новых параметров см. в документации этих модулей.