Skip to content

components.Tilemap

vasili.kostin edited this page Aug 21, 2021 · 9 revisions

Наследуется от Container, и включает в себя все его свойства.

Tilemap - компонент для редактирования и эффективной отрисовки тайловых карт.

Редактируемые свойства:

image

Тип: String

Название изображения, которое будет использоваться в качестве текстуры тайловой карты. В редакторе свойств это поле выглядит в виде выпадающего списка, в котором находятся все изображения из папки img. В коде это свойство принимает строковое значение, которое является путем к файлу изображения, начиная от папки '/img/' проекта.

Заданная текстура будет поделена на тайлы, начиная с левого верхнего угла, горизонтальными рядами. Ширина каждого тайла определяется суммой полей tileW + wField. Высота - суммой tileH + hField. Каждому тайлу присваивается код изображения, начиная с нуля.


tilemap

Это поле хранит данные об изображении каждого тайла. В javascript обращение к этому полю не имеет смысла, так как информация о тайлах запрашивается и задается через соответствующие методы, описанные ниже. В редакторе свойств поле представляет из себя кнопку, открывающую Редактор тайловой карты с горячей клавишей (Ctrl + L).


rows

Тип: Number

Высота карты в тайлах.


columns

Тип: Number

Ширина карты в тайлах.


tileW

Тип: Number

Ширина тайла в пикселях.


tileH

Тип: Number

Высота тайла в пикселях.


wField

Тип: Number

Ширина поля перекрытия тайла в пикселях по оси x.

Для избежания эффекта "сетки", вызванного фильтрацией текстур, в Tilemap предусмотрено наложение одного тайла на другой. Увеличение значения данного поля увеличит ширину наложения. При этом увеличится область каждого тайла на исходной текстуре (будут добавлены поля слева и справа). Наложение позволяет использовать тайлы с неровными краями, что может быть использовано для эффекта перехода между разными тайлами.


hField

Тип: Number

Высота поля перекрытия тайла в пикселях по оси y.

Для избежания эффекта "сетки", вызванного фильтрацией текстур, в Tilemap предусмотрено наложение одного тайла на другой. Увеличение значения данного поля увеличит высоту наложения. При этом увеличится область каждого тайла на исходной текстуре (будет добавлены поля сверху и снизу). Наложение позволяет использовать тайлы с неровными краями, что может быть использовано для эффекта перехода между разными тайлами.


Методы:

getTile (x : Number, y : Number)

Возвращаемый тип: Number

Возвращает код изображения тайла по указанным координатам. -1 означает пустой тайл.


setTile (x : Number, y : Number, tileImageId : Number)

Устанавливает код изображения для тайла по указанным координатам. -1 очистит заданный тайл.


clear ()

Очищает все тайлы карты. Каждому тайлу будет присвоен код изображения -1;


createTypedMap()

Возвращаемый тип: Array<Number>

Возвращает массив, содержащий информацию о типе каждого тайла. Тип тайла получается на основе кода изображения. Формула преобразования кода изображения в тип тайла задается разработчиком через определение глобального объекта Tilemap.tileMapProcessor.

<- Предыдущая страница Следующая страница ->

Связанные темы:

редактор тайловых карт

Tilemap.tileMapProcessor

Компоненты

Редактируемые поля

Clone this wiki locally