Сцены (комнаты) - полный перевод справки
2012-02-23 11:07:00 (читать в оригинале)
Перевод английской справки по Tululoo Game Maker.Статья о комнатах в Tululoo Game Maker.Эта статья гораздо более важна, поэтому я её переведу прежде статей о ресурсах.
Вообще уровни в Tululoo называются сценами, но, видимо, из-за яростного копирования функций с YoYo, они во всех функциях оказались комнатами :)
Следующие переменные дают базовую информацию о комнате:
- room_current - ID текущей комнаты
- room_width - ширина текущей комнаты
- room_height - высота текущей комнаты
- room_speed - максимальное количество кадров в секунду.
- fps - реальное количество кадров в секунду. Авторы программы заметили, что в версии 1.2.0 иногда FPS в разы меньше истинного, т.е. производительность выше отображаемой.
Данные переменные отвечают за вид (отображаемый регион) комнаты:
- room_viewport_x - положение левого-верхнего угла вида по горизонтали
- room_viewport_y - положение левого-верхнего угла вида по вертикали
- room_viewport_width - ширина вида
- room_viewport_height - высота вида
- room_viewport_object - указывает, за каким объектом должен следить вид
- room_viewport_hborder - отступ от экрана, начиная с которого вид перемещается за объектом (по горизонтали)
- room_viewport_vborder - отступ от экрана, начиная с которого вид перемещается за объектом (по вертикали)
В версии 1.2.8 я обнаружил баг в сохранении - граница следования за объектом по вертикали не сохранялась. Сохранялась только по горизонтали. Мелочь, конечно, но я из-за этой маленькой ошибки в движке пол-часа думал, что ошибка у меня!
Ошибку легко исправить добавлением следующего кусочка кода в код создания героя или контроллера:
room_viewport_vborder = room_viewport_hborder;
Следующие переменные влияют на прорисовку комнат:
- room_background - указывает фон сцены
- room_background_color_red, room_background_color_green, room_background_color_blue - указывают цвет фона, если не указано изображение
- room_background_tile_stretch - указывает, растягивать ли фон по всей комнате или нет
- room_background_tile_x - указывает, нужно ли размножить изображение по ширине
- room_background_tile_y - указывает, нужно ли размножить изображение по высоте
Также есть функции для перехода по комнатам:
- room_goto(room) - переходит на указанную комнату
- room_restart() - перезапускает комнату
- room_goto_next() - переходит к следующей комнате
- room_goto_previous() - переходит к предыдущей комнате
- room_goto_first() - переходит к самой первой комнате (указанной в редакторе)
- room_goto_last() - переходит к последней комнате (указанной в редакторе)