Update PS3.lua

This commit is contained in:
Igor Timofeev 2015-09-28 19:49:09 +03:00
parent 4cc38e841b
commit 8152b7d45b

View File

@ -13,39 +13,28 @@ local copyright = [[
]]
--Массив слоев
local layers = {
{
show = true,
name = "Mamu ebal",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
},
}
-- for i = 1, 10 do
-- table.insert(layers, {show = true, name = "Ahaha"..tostring(math.random(1, 9)), 0x00FFFF, 0xFF0000, 0x00, "B"})
-- end
--Массив главного изображения
local masterPixels = {}
local masterPixels = {
width = 40,
height = 17,
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x33ff66, 0x0092ff, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x336d3f, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x004936, 0x00926d, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0xff6d80, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x338592, 0x003f49, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x1e1e1e, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x004936, 0x339286, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x339286, 0x004936, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff4940, 0x004940, 0x00, " ", 0xff0000, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0x338592, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x003f49, 0xffffff, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0x004940, 0xffffff, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0xcc0000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x990000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0x660000, 0x004940, 0x00, " ", 0x660000, 0x004940, 0x00, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ", 0xffffff, 0xcccccc, 0xff, " ",
}
------------------------------------------------ Библиотеки --------------------------------------------------------------
@ -65,7 +54,6 @@ local gpu = component.gpu
--Базовая цветовая схема программы
local colors = {
toolbar = 0x535353,
layersToolbar = 0x4b4b4b,
toolbarInfo = 0x3d3d3d,
toolbarButton = 0x3d3d3d,
toolbarButtonText = 0xeeeeee,
@ -75,61 +63,54 @@ local colors = {
transparencyWhite = 0xffffff,
transparencyGray = 0xcccccc,
transparencyVariable = 0xffffff,
oldBackground = 0x0,
oldForeground = 0x0,
topMenu = 0xeeeeee,
topMenuText = 0x262626,
}
--Различные константы и размеры тулбаров и кликабельных зон
local sizes = {
widthOfLeftBar = 6,
widthOfRightBar = 20,
}
sizes.heightOfTopBar = 3
sizes.xSize, sizes.ySize = gpu.getResolution()
sizes.xStartOfDrawingArea = sizes.widthOfLeftBar + 1
sizes.xEndOfDrawingArea = sizes.xSize - sizes.widthOfRightBar
sizes.yStartOfDrawingArea = 2
sizes.yEndOfDrawingArea = sizes.ySize
sizes.xEndOfDrawingArea = sizes.xSize
sizes.yStartOfDrawingArea = 2 + sizes.heightOfTopBar
sizes.yEndOfDrawingArea = sizes.ySize - 1
sizes.widthOfDrawingArea = sizes.xEndOfDrawingArea - sizes.xStartOfDrawingArea + 1
sizes.heightOfDrawingArea = sizes.yEndOfDrawingArea - sizes.yStartOfDrawingArea + 1
sizes.heightOfLeftBar = sizes.ySize - 1
--Для правого тулбара
sizes.heightOfRightBar = sizes.heightOfLeftBar
sizes.xStartOfRightBar = sizes.xSize - sizes.widthOfRightBar + 1
sizes.yStartOfRightBar = 2
sizes.yStartOfLayers = sizes.yStartOfRightBar
sizes.heightOfLayers = sizes.ySize - sizes.yStartOfLayers - 1
sizes.heightOfOneLayer = 3
sizes.countOfLayers = math.floor(sizes.heightOfLayers / sizes.heightOfOneLayer)
--Для изображения
sizes.widthOfImage = 40
sizes.heightOfImage = 17
sizes.sizeOfPixelData = 4
sizes.xStartOfImage = 9
sizes.yStartOfImage = 3
sizes.yStartOfImage = 6
sizes.xEndOfImage = sizes.xStartOfImage + sizes.widthOfImage - 1
sizes.yEndOfImage = sizes.yStartOfImage + sizes.heightOfImage - 1
--Инструменты
sizes.heightOfInstrument = 3
sizes.yStartOfInstruments = 2
sizes.yStartOfInstruments = 2 + sizes.heightOfTopBar
local instruments = {
{"", "Move"},
{"", "Crop"},
-- {"⮜", "Move"},
-- {"✄", "Crop"},
{"", "Brush"},
{"", "Eraser"},
{"", "Text"},
}
local currentInstrument = 3
local currentLayer = 1
local currentInstrument = 1
local currentBackground = 0x000000
local currentForeground = 0xFFFFFF
local currentAlpha = 0x00
local currentForeground = 0xFF0000
local currentAlpha = 0x88
local currentSymbol = " "
local drawLayersFrom = 1
local currentBrushSize = 1
--Верхний тулбар
local topToolbar = {{"PS", 0xaaaaff}, {"Файл"}, {"Изображение"}, {"Инструменты"}, {"Фильтры"}}
local topToolbar = {{"PS", ecs.colors.blue}, {"Файл"}, {"Изображение"}, {"Инструменты"}, {"О программе"}}
------------------------------------------------ Функции отрисовки --------------------------------------------------------------
@ -154,7 +135,6 @@ local function drawTransparentPixel(xPos, yPos, i, j)
colors.transparencyVariable = colors.transparencyWhite
end
end
gpu.setBackground(colors.transparencyVariable)
gpu.set(xPos, yPos, " ")
end
@ -198,82 +178,40 @@ local function drawLeftBar()
drawColors()
end
local function drawLayers()
local function drawTopMenu()
ecs.square(1, 1, sizes.xSize, 1, colors.topMenu)
local xPos = 3
obj["Layers"] = {}
for i = 1, #topToolbar do
ecs.colorText(xPos, 1, topToolbar[i][2] or colors.topMenuText, topToolbar[i][1])
--Рисуем надпись "слои"
yPos = sizes.yStartOfLayers
ecs.square(sizes.xStartOfRightBar, yPos, sizes.widthOfRightBar, 1, colors.toolbarInfo)
ecs.colorText(sizes.xStartOfRightBar + 1, yPos, 0xffffff, "Слои ("..currentLayer.." из "..#layers..")")
yPos = yPos + 1
--Очищаем панель слоев
ecs.square(sizes.xStartOfRightBar, yPos, sizes.widthOfRightBar - 1, sizes.heightOfLayers, colors.toolbar)
--Рисуем скроллбар слоев
ecs.srollBar(sizes.xSize, yPos, 1, sizes.heightOfLayers, #layers, drawLayersFrom, 0xFFFFFF, ecs.colors.blue)
--Рисуем кнопочки слоев
local button1, button2, button3, button4, button5, button6 = "","","D","J","N","R"
local xPos = sizes.xStartOfRightBar + 2
local color = 0x000000
ecs.square(sizes.xStartOfRightBar, sizes.ySize, sizes.widthOfRightBar, 1, colors.layersToolbar)
if currentLayer > 1 then ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button1) else ecs.colorText(xPos, sizes.ySize, color, button1) end; xPos = xPos + 3
if currentLayer < #layers then ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button2) else ecs.colorText(xPos, sizes.ySize, color, button2) end; xPos = xPos + 3
ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button3); xPos = xPos + 3
if #layers > 1 then ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button4) else ecs.colorText(xPos, sizes.ySize, color, button4) end; xPos = xPos + 3
ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button5); xPos = xPos + 3
if #layers > 1 then ecs.colorText(xPos, sizes.ySize, colors.toolbarButtonText, button6) else ecs.colorText(xPos, sizes.ySize, color, button6) end; xPos = xPos + 3
--Рисуем сами слои
local color = colors.toolbar
gpu.setForeground(colors.toolbarButtonText)
local counter = 1
for i = drawLayersFrom, #layers do
if counter > sizes.countOfLayers then break end
--Если это текущий слой
if i == currentLayer then
color = 0x66b6ff
ecs.square(sizes.xStartOfRightBar, yPos, sizes.widthOfRightBar - 1, 3, color)
else
if i % 2 == 0 then
color = 0x666666
ecs.square(sizes.xStartOfRightBar, yPos, sizes.widthOfRightBar - 1, 3, color)
else
color = colors.toolbar
gpu.setBackground(color)
end
if i > 1 then
newObj("TopMenu", topToolbar[i][1], xPos, 1, xPos + unicode.len(topToolbar[i][1]) - 1, 1)
end
gpu.set(sizes.xStartOfRightBar + 1, yPos + 1, (function() if layers[i].show then return "" else return "" end end)())
gpu.set(sizes.xStartOfRightBar + 4, yPos + 1, ecs.stringLimit("end", layers[i].name, sizes.widthOfRightBar - 6))
newObj("Layers", i, sizes.xStartOfRightBar, yPos, sizes.xSize - 1, yPos + 2)
counter = counter + 1
yPos = yPos + 3
xPos = xPos + unicode.len(topToolbar[i][1]) + 2
end
end
local function drawRightBar()
ecs.square(sizes.xStartOfRightBar, sizes.yStartOfRightBar, sizes.widthOfRightBar, sizes.heightOfRightBar, colors.toolbar)
-- --Рисуем надпись "Кисть"
-- ecs.square(sizes.xStartOfRightBar, yPos, sizes.widthOfRightBar, 1, colors.toolbarInfo)
-- ecs.colorText(sizes.xStartOfRightBar + 1, yPos, 0xffffff, "Параметры кисти")
--Рисуем слои
drawLayers()
end
local topBarInputs = { {"Размер кисти", currentBrushSize}, {"Прозрачность", math.floor(currentAlpha / 2.55)}}
local function drawTopBar()
ecs.square(1, 1, sizes.xSize, 1, colors.toolbar)
local xPos = 3
local spaceBetween = 2
ecs.square(1, 2, sizes.xSize, sizes.heightOfTopBar, colors.toolbar)
local xPos, yPos = 3, 3
local limit = 8
for i = 1, #topToolbar do
ecs.colorText(xPos, 1, topToolbar[i][2] or 0xffffff, topToolbar[i][1])
xPos = xPos + unicode.len(topToolbar[i][1]) + spaceBetween
--ecs.error("сукак")
for i = 1, #topBarInputs do
ecs.colorTextWithBack(xPos, yPos, 0xeeeeee, colors.toolbar, topBarInputs[i][1])
xPos = xPos + unicode.len(topBarInputs[i][1]) + 1
ecs.inputText(xPos, yPos, limit, tostring(topBarInputs[i][2]), 0xffffff, 0x262626, true)
newObj("TopBarInputs", i, xPos, yPos, xPos + limit - 1, yPos, limit)
if i == 2 then xPos = xPos + 3 end
xPos = xPos + limit + 2
end
end
@ -290,31 +228,6 @@ local function createEmptyMasterPixels()
table.insert(masterPixels, 0xFF)
table.insert(masterPixels, " ")
end
--ecs.error("#masterPixels = "..#masterPixels)
end
local function mergeAllLayersToMasterPixels()
createEmptyMasterPixels()
--Перебираем все слои
local layer = #layers
while layer >= 1 do
--Если слой не скрыт
if layers[layer].show then
--Перебираем все пиксели в слоях
for iterator = 1, sizes.widthOfImage * sizes.heightOfImage * 4, 4 do
--Если альфа-канал в слое вообще существует, и если он меньше 0xFF, то смержить пиксель
if layers[layer][iterator + 2] ~= nil and layers[layer][iterator + 2] < 0xFF then
--Если в данном слое существует такой элемент по итератору, то заменить мастерпикселевский им, а если нет, то похуй
masterPixels[iterator] = layers[layer][iterator] or masterPixels[iterator]
masterPixels[iterator + 1] = layers[layer][iterator + 1] or masterPixels[iterator + 1]
masterPixels[iterator + 2] = layers[layer][iterator + 2] or masterPixels[iterator + 2]
masterPixels[iterator + 3] = layers[layer][iterator + 3] or masterPixels[iterator + 3]
end
end
end
layer = layer - 1
end
end
--Формула конвертации итератора массива в абсолютные координаты пикселя изображения
@ -347,41 +260,37 @@ local function console(text)
_, total, used = nil, nil, nil
end
local function drawPixel(x, y, i, j, iterator)
--Получаем данные о пикселе
local background, foreground, alpha, symbol = masterPixels[iterator], masterPixels[iterator + 1], masterPixels[iterator + 2], masterPixels[iterator + 3]
--Если пиксель не прозрачный
if alpha == 0x00 then
gpu.setBackground(background)
gpu.setForeground(foreground)
gpu.set(x, y, symbol)
--Если пиксель прозрачнее непрозрачного
elseif alpha > 0x00 then
--Рисуем прозрачный пиксель
drawTransparentPixel(x, y, i, j)
--Ебать я красавчик! Даже без гпу.гет() сделал!
gpu.setBackground(colorlib.alphaBlend(colors.transparencyVariable, background, alpha))
gpu.setForeground(foreground)
gpu.set(x, y, symbol)
end
background, foreground, alpha, symbol = nil, nil, nil, nil
end
local function drawImage()
--Стартовые нужности
local background, foreground, alpha, symbol = 0x000000, 0x000000, 0xFF, " "
local oldBackground, oldForeground = gpu.getBackground(), gpu.getForeground()
local xPixel, yPixel = 1, 1
local xPos, yPos = sizes.xStartOfImage, sizes.yStartOfImage
--Перебираем массив мастерпиксельса
for i = 1, #masterPixels, 4 do
--Если пиксель входит в разрешенную зону рисования
if xPos >= sizes.xStartOfDrawingArea and xPos <= sizes.xEndOfDrawingArea and yPos >= sizes.yStartOfDrawingArea and yPos <= sizes.yEndOfDrawingArea then
--Получаем данные о пикселе
background, foreground, alpha, symbol = masterPixels[i], masterPixels[i + 1], masterPixels[i + 2], masterPixels[i + 3]
--Если пиксель не прозрачный
if alpha == 0x00 then
--Если новый фон не равен старому, то сменить его
if background ~= oldBackground then oldBackground = background; gpu.setBackground(background) end
if foreground ~= oldForeground then oldForeground = foreground; gpu.setForeground(foreground) end
-- gpu.setBackground(background)
-- gpu.setForeground(foreground)
gpu.set(xPos, yPos, symbol)
--Если пиксель прозрачнее непрозрачного, но не настолько прозрачный, как совсем прозрачный
elseif alpha > 0x00 and alpha < 0xFF then
drawTransparentPixel(xPos, yPos, xPixel, yPixel)
--Ебать я красавчик! Даже без гпу.гет() сделал!
oldBackground = colorlib.alphaBlend(colors.transparencyVariable, background, alpha)
gpu.setBackground(oldBackground)
if foreground ~= oldForeground then oldForeground = foreground; gpu.setForeground(foreground) end
gpu.set(xPos, yPos, symbol)
--Если пиксель совсем прозрачный
else
drawTransparentPixel(xPos, yPos, xPixel, yPixel)
oldBackground = colors.transparencyVariable
end
--Рисуем пиксель
drawPixel(xPos, yPos, xPixel, yPixel, i)
end
--Всякие расчеты координат
xPixel = xPixel + 1
xPos = xPos + 1
@ -395,23 +304,22 @@ local function drawBackgroundAndImage()
end
local function drawAll()
--Очищаем экран
ecs.prepareToExit()
--Рисуем тулбары
drawBackground()
drawLeftBar()
drawRightBar()
drawTopBar()
--Создаем картинку
mergeAllLayersToMasterPixels()
drawTopMenu()
--Рисуем картинку
drawBackgroundAndImage()
--И консольку!
console("Весь интерфейс перерисован!")
end
------------------------------------------------ Функции расчета --------------------------------------------------------------
local function move(direction)
mergeAllLayersToMasterPixels()
if direction == "up" then
sizes.yStartOfImage = sizes.yStartOfImage - 2
elseif direction == "down" then
@ -421,15 +329,14 @@ local function move(direction)
elseif direction == "right" then
sizes.xStartOfImage = sizes.xStartOfImage + 2
end
drawBackgroundAndImage()
end
local function setPixel(iterator, background, foreground, alpha, symbol)
layers[currentLayer][iterator] = background
layers[currentLayer][iterator + 1] = foreground
layers[currentLayer][iterator + 2] = alpha
layers[currentLayer][iterator + 3] = symbol
masterPixels[iterator] = background
masterPixels[iterator + 1] = foreground
masterPixels[iterator + 2] = alpha
masterPixels[iterator + 3] = symbol
end
local function swapColors()
@ -454,7 +361,7 @@ local function inputText(x, y, limit)
end
ecs.invertedText(x + inputPos - 1, y + 1, "")--"▲","▼"
ecs.invertedText(x + inputPos - 1, y - 1, "")
ecs.adaptiveText(x, y, ecs.stringLimit("start", text, limit, false), currentForeground)
ecs.adaptiveText(x, y, ecs.stringLimit("start", text, limit, false), currentBackground)
end
drawThisShit()
@ -506,19 +413,78 @@ local function saveTextToPixels(x, y, text)
for i = 1, sText do
if x + i > sizes.widthOfImage then break end
iterator = convertCoordsToIterator(x + i, y)
setPixel(iterator, layers[currentLayer][iterator], currentForeground, currentAlpha, unicode.sub(text, i, i))
setPixel(iterator, masterPixels[iterator], currentBackground, masterPixels[iterator + 2], unicode.sub(text, i, i))
end
end
local function newLayer(name)
name = name or "Новый слой"
table.insert(layers, currentLayer, {["name"] = name, show = true})
local function flipVertical(massiv)
local newMassiv = {}
newMassiv.width, newMassiv.height = massiv.width, massiv.height
local iterator = #masterPixels
while iterator >= 1 do
table.insert(newMassiv, masterPixels[iterator - 3])
table.insert(newMassiv, masterPixels[iterator - 2])
table.insert(newMassiv, masterPixels[iterator - 1])
table.insert(newMassiv, masterPixels[iterator])
masterPixels[iterator], masterPixels[iterator - 1], masterPixels[iterator - 2], masterPixels[iterator - 3] = nil, nil, nil, nil
iterator = iterator - 4
end
return newMassiv
end
local function flipHorizontal( picture )
local blockSize = picture.width * 4
local buffer = nil
local startBlock = nil
local endPixel = nil
for j=1, picture.height, 1 do
startBlock = picture.width * 4 * (j-1)
for pixel=4, blockSize/2, 4 do
endPixel = blockSize-(pixel-4)
--Foreground
buffer = picture[pixel-3+startBlock]
picture[pixel-3+startBlock] = picture[endPixel-3+startBlock]
picture[endPixel-3+startBlock] = buffer
--Background
buffer = picture[pixel-2+startBlock]
picture[pixel-2+startBlock] = picture[endPixel-2+startBlock]
picture[endPixel-2+startBlock] = buffer
--Alpha
buffer = picture[pixel-1+startBlock]
picture[pixel-1+startBlock] = picture[endPixel-1+startBlock]
picture[endPixel-1+startBlock] = buffer
--Char
buffer = picture[pixel-0+startBlock]
picture[pixel-0+startBlock] = picture[endPixel-0+startBlock]
picture[endPixel-0+startBlock] = buffer
end
end
end
local function doFlip(horizontal)
if horizontal then
flipHorizontal(masterPixels)
else
masterPixels = flipVertical(masterPixels)
end
drawImage()
end
------------------------------------------------ Старт программы --------------------------------------------------------------
--Создаем пустой мастерпиксельс
createEmptyMasterPixels()
--createEmptyMasterPixels()
--Рисуем весь интерфейс
drawAll()
@ -535,56 +501,57 @@ while true do
local iterator = convertCoordsToIterator(x, y)
--Кисть
if currentInstrument == 3 then
if currentInstrument == 1 then
--Если нажата клавиша альт
if keyboard.isKeyDown(56) then
local _, _, gettedBackground = gpu.get(e[3], e[4])
currentBackground = gettedBackground
drawColors()
--Если обычная кисть, просто кисть, вообще всем кистям кисть
else
--Если у нас указан альфа-канал, то меняем фон на альфаБлендированный
if currentAlpha > 0x00 then
-------------------Запись в массив
--Если пиксель в массиве ни хуя не прозрачный, то оставляем его таким же, разве что цвет меняем на сблендированный
if masterPixels[iterator + 2] == 0x00 then
local _, _, gettedBackground = gpu.get(e[3], e[4])
gettedBackground = colorlib.alphaBlend(gettedBackground, currentBackground, currentAlpha)
gpu.setBackground(gettedBackground)
setPixel(iterator, gettedBackground, currentForeground, 0x00, currentSymbol)
--А если прозрачный ИЛИ ЕГО ВООБЩЕ НЕТ, то
else
gpu.setBackground(currentBackground)
end
--Ставим также цвет текста
gpu.setForeground(currentForeground)
--Ставим пиксель на экране
gpu.set(e[3], e[4], currentSymbol)
--Если пиксель в массиве ни хуя не прозрачный, то оставляем его таким же, разве что цвет меняем на сблендированный
if layers[currentLayer][iterator + 2] == 0x00 then
setPixel(iterator, gpu.getBackground(), currentForeground, 0x00, currentSymbol)
--А если прозрачный, то
else
if layers[currentLayer][iterator + 2] == 0xFF then
--Если его прозоачность максимальная
if masterPixels[iterator + 2] == 0xFF then
setPixel(iterator, currentBackground, currentForeground, currentAlpha, currentSymbol)
--Если не максимальная или ЕЕ ВООБЩЕ НЕТ
else
local alpha = layers[currentLayer][iterator + 2] - currentAlpha
local alpha = masterPixels[iterator + 2] - currentAlpha
if alpha < 0x00 then alpha = 0x00 end
setPixel(iterator, currentBackground, currentForeground, alpha, currentSymbol)
end
end
-------------------Отрисовка на экране
drawPixel(e[3], e[4], x, y, iterator)
--Пишем что-то в консоли
console("Кисть: клик на точку "..e[3].."x"..e[4]..", координаты в изображении: "..x.."x"..y..", индекс массива изображения: "..iterator)
end
--Ластик
elseif currentInstrument == 4 then
elseif currentInstrument == 2 then
drawTransparentPixel(e[3], e[4], x, y)
setPixel(iterator, 0x000000, 0x000000, 0xFF, " ")
console("Ластик: клик на точку "..e[3].."x"..e[4]..", координаты в изображении: "..x.."x"..y..", индекс массива изображения: "..iterator)
--Текст
elseif currentInstrument == 5 then
elseif currentInstrument == 3 then
local limit = sizes.widthOfImage - x + 1
local text = inputText(e[3], e[4], limit)
saveTextToPixels(x, y, text)
mergeAllLayersToMasterPixels()
drawImage()
end
@ -617,24 +584,59 @@ while true do
end
end
for key in pairs(obj["Layers"]) do
if ecs.clickedAtArea(e[3], e[4], obj["Layers"][key][1], obj["Layers"][key][2], obj["Layers"][key][3], obj["Layers"][key][4]) then
currentLayer = key
drawLayers()
--Если кликнули на глазик отключения слоя
if ecs.clickedAtArea(e[3], e[4], obj["Layers"][key][1] + 1, obj["Layers"][key][2] + 1, obj["Layers"][key][1] + 2, obj["Layers"][key][4] + 1) then
layers[key].show = not layers[key].show
mergeAllLayersToMasterPixels()
drawLayers()
drawImage()
for key in pairs(obj["TopMenu"]) do
if ecs.clickedAtArea(e[3], e[4], obj["TopMenu"][key][1], obj["TopMenu"][key][2], obj["TopMenu"][key][3], obj["TopMenu"][key][4]) then
ecs.square(obj["TopMenu"][key][1] - 1, obj["TopMenu"][key][2], unicode.len(key) + 2, 1, ecs.colors.blue)
ecs.colorText(obj["TopMenu"][key][1], obj["TopMenu"][key][2], 0xffffff, key)
local action
if key == "Файл" then
action = context.menu(obj["TopMenu"][key][1] - 1, obj["TopMenu"][key][2] + 1, {"Новый"}, {"Открыть"}, "-", {"Сохранить"}, {"Сохранить как"}, "-", {"Выход"})
elseif key == "Изображение" then
action = context.menu(obj["TopMenu"][key][1] - 1, obj["TopMenu"][key][2] + 1, {"Отразить по горизонтали"}, {"Отразить по вертикали"}, {"Инвертировать цвета"}, {"Черно-белый фильтр"})
elseif key == "Инструменты" then
action = context.menu(obj["TopMenu"][key][1] - 1, obj["TopMenu"][key][2] + 1, {"Кисть"}, {"Ластик"}, {"Текст"})
elseif key == "О программе" then
ecs.universalWindow("auto", "auto", 36, 0xeeeeee, true, {"EmptyLine"}, {"CenterText", 0x880000, "Photoshop v3.0 (public beta)"}, {"EmptyLine"}, {"CenterText", 0x262626, "Авторы:"}, {"CenterText", 0x555555, "Тимофеев Игорь"}, {"CenterText", 0x656565, "vk.com/id7799889"}, {"CenterText", 0x656565, "Трифонов Глеб"}, {"CenterText", 0x656565, "vk.com/id88323331"}, {"EmptyLine"}, {"CenterText", 0x262626, "Тестеры:"}, {"CenterText", 0x656565, "Шестаков Тимофей"}, {"CenterText", 0x656565, "Вечтомов Роман"}, {"CenterText", 0x656565, "Омалаенко Максим"}, {"EmptyLine"},{"Button", {0xbbbbbb, 0xffffff, "OK"}})
end
if action == "Выход" then
ecs.prepareToExit()
return
elseif action == "Отразить по горизонтали" then
doFlip(true)
elseif action == "Отразить по вертикали" then
doFlip(false)
end
drawTopMenu()
break
end
end
for key in pairs(obj["TopBarInputs"]) do
if ecs.clickedAtArea(e[3], e[4], obj["TopBarInputs"][key][1], obj["TopBarInputs"][key][2], obj["TopBarInputs"][key][3], obj["TopBarInputs"][key][4]) then
local input = ecs.inputText(obj["TopBarInputs"][key][1], obj["TopBarInputs"][key][2], obj["TopBarInputs"][key][5], "", 0xffffff, 0x262626)
input = tonumber(input)
if input then
if key == 1 then
if input > 0 and input < 6 then currentBrushSize = input; topBarInputs[key][2] = input end
elseif key == 2 then
if input > 0 and input <= 100 then currentAlpha = input * 2.55; topBarInputs[key][2] = input end
end
end
drawTopBar()
break
end
end
else
--Если кликнули на рисовабельную зонку
if ecs.clickedAtArea(e[3], e[4], sizes.xStartOfImage, sizes.yStartOfImage, sizes.xEndOfImage, sizes.yEndOfImage) then
currentBrushSize, currentAlpha = table.unpack(ecs.universalWindow(e[3], e[4], 30, 0xeeeeee, true, {"EmptyLine"}, {"CenterText", 0x880000, "Параметры кисти"}, {"Slider", 0x262626, 0x880000, 1, 10, currentBrushSize, "Размер: ", " px"}, {"Slider", 0x262626, 0x880000, 0, 255, currentAlpha, "Прозрачность: ", ""}, {"EmptyLine"}, {"Button", {0xbbbbbb, 0xffffff, "OK"}}))
currentBrushSize, currentAlpha = table.unpack(ecs.universalWindow(e[3], e[4], 30, 0xeeeeee, true, {"EmptyLine"}, {"CenterText", 0x880000, "Параметры кисти"}, {"Slider", 0x262626, 0x880000, 1, 10, currentBrushSize, "Размер: ", " px"}, {"Slider", 0x262626, 0x880000, 0, 100, currentAlpha / 2.55, "Прозрачность: ", "%"}, {"EmptyLine"}, {"Button", {0xbbbbbb, 0xffffff, "OK"}}))
currentAlpha = currentAlpha * 2.55
end
end
@ -654,29 +656,27 @@ while true do
--X
elseif e[4] == 45 then
swapColors()
--N
elseif e[4] == 49 then
newLayer()
drawLayers()
--B
elseif e[4] == 48 then
currentInstrument = 1
drawInstruments()
--E
elseif e[4] == 18 then
currentInstrument = 2
drawInstruments()
--T
elseif e[4] == 20 then
currentInstrument = 3
drawInstruments()
elseif e[4] == 32 then
currentBackground = 0x000000
currentForeground = 0xFFFFFF
currentAlpha = 0x00
drawColors()
--1
elseif e[4] == 2 or e[4] == 3 or e[4] == 4 or e[4] == 5 or e[4] == 6 then
currentInstrument = e[4] - 1
drawInstruments()
end
elseif e[1] == "scroll" then
if ecs.clickedAtArea(e[3], e[4], sizes.xStartOfRightBar, sizes.yStartOfLayers, sizes.xSize, sizes.ySize - 1) then
if e[5] == 1 then
if drawLayersFrom > 1 then drawLayersFrom = drawLayersFrom - 1; drawLayers() end
else
if drawLayersFrom < #layers then drawLayersFrom = drawLayersFrom + 1; drawLayers() end
end
end
end
end