Display
Дисплей это как монитор, но в Scrap Mechanic. Позволяет вам отрисовать что-угодно, используя компьютер.
Дисплей это единственный компонент, который может вызвать кучу лагов! Поскольку единственный способ рендеринга пикселей — это эффекты, слишком много эффектов означает большую задержку. Хотя оптимизация у нас очень хорошая. Мы предлагаем сделать любую графику на нашем дисплее простой или не использовать множество цветов.
Использование большого количества цветов снизит производительность вашей игры даже после оптимизации!
Структуры
TouchData
Она содержит информацию о взаимодействии пользователя с дисплеем, или же "нажатии на дислпей"
Поля
x
[ number ] X координата нажатия.y
[ number ] Y координата нажатия.state
[ 1|2|3 ] Состояние нажатия. 1 - только нажал, 2 - держит, 3 - отпустил.
PixelTable
Информация о пикселе, который вы хотите отрисовать, что-то вроде инструкции.
{
x = 1, -- X координата пикселя
y = 1, -- Y координата пикселя
color = sm.color.new("ff0000") -- Цвет пикселя
}
Эта отрисует пиксель 1x1 на координатах (1, 1).
Функции
drawPixel
Display.drawPixel( x, y, color )
Рисует один пиксель на заданных координатах и цветом.
Аргументы:
- x [ number ] X координата пикселя.
- y [ number ] Y координата пикселя.
- color [ Color|string ] Цвет пикселя в шестнадцатеричном представлении.
drawFromTable
Display.drawFromTable( tbl )
Рисует фигуры и текст, основываясь на предоставленной таблице.
Аргументы:
- tbl [ PixelTable[] ] Все инструкции для выполнения
clear
Display.clear( color )
Очищает дисплей заданным цветом.
Аргументы:
- color [ Color|string ] Цвет в шестнадцатеричном формате для заливки экрана. (Если
nil
, то очистит стандартным цветом)
drawLine
Display.drawLine( x, y, x1, y1, color )
Рисует линию между двумя точками заданным цветом.
Аргументы:
- x [ number ] X координата первой точки.
- y [ number ] Y координата первой точки.
- x1 [ number ] X координата второй точки.
- y1 [ number ] Y координата второй точки.
- color [ Color|string ] Цвет линии в шестнадцатеричном формате.
drawCircle
Display.drawCircle( x, y, radius, color )
Рисует окружность с центром в заданной точке, радиусом и цветом.
Аргументы:
- x [ number ] X координата центра окружности.
- y [ number ] Y координата центра окружности.
- radius [ number ] Радиус окружности.
- color [ Color|string ] Цвет круга в шестнадцатеричном формате.
drawFilledCircle
Display.drawFilledCircle( x, y, radius, color )
Рисует залитую окружность с цен тром в заданной точке, радиусом и цветом.
Аргументы:
- x [ number ] X координата центра окружности.
- y [ number ] Y координата центра окружности.
- radius [ number ] Радиус окружности.
- color [ Color|string ] Цвет круга в шестнадцатеричном формате.
drawTriangle
Display.drawTriangle( x1, y1, x2, y2, x3, y3, color )
Рисует треугольник с заданными вершинами и цветом. Аргументы:
- x1 [ number ] X координата первой вершины.
- y1 [ number ] Y координата первой вершины.
- x2 [ number ] X координата второй вершины.
- y2 [ number ] Y координата второй вершины.
- x3 [ number ] X координата третей вершины.
- y3 [ number ] Y координата третей вершины.
- color [ Color|string ] Цвет треугольника в шестнадцатеричном формате.