-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwindow.lua
More file actions
68 lines (61 loc) · 3.13 KB
/
window.lua
File metadata and controls
68 lines (61 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
---@author Klen_list <https://github.com/klen-list>
---Возвращает высоту окна приложения
---@return number w Высота окна
---@nodiscard
function ScrW()
return rl.GetScreenWidth()
end
---Возвращает ширину окна приложения
---@return number h Ширина окна
---@nodiscard
function ScrH()
return rl.GetScreenHeight()
end
---Проверяет что курсор находится в границе переданного прямоугольника
---@param rect Rectangle Прямоугольник для проверки
---@return boolean ok Нет пересечений границ
---@nodiscard
function gui.MouseInBounds(rect)
return rl.CheckCollisionPointRec(rl.GetMousePosition(), rect)
end
---Получает текущую позицию курсора
---@return number x Позиция по X
---@return number y Позиция по Y
function gui.MousePos()
local pos = rl.GetMousePosition()
return pos.x, pos.y
end
do
local codepoints do
local points = {
0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E,
0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D,
0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C,
0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x5B,
0x5C, 0x5D, 0x5E, 0x5F, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A,
0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
0x7A, 0x7B, 0x7C, 0x7D, 0x7E, 0x7F, 0xC2, 0xA2, 0xC2, 0xA3, 0xC2, 0xA5, 0xC2, 0xA7, 0xC2,
0xA9, 0xC2, 0xAB, 0xC2, 0xAD, 0xC2, 0xB0, 0xC2, 0xB1, 0xC2, 0xB5, 0xC2, 0xB6, 0xC2, 0xB7,
0xC3, 0x80, 0xC3, 0x81, 0xC3, 0x82, 0xC3, 0x83, 0xC3, 0x84, 0xC3, 0x85, 0xC3, 0x86, 0xC3,
0x87, 0xC3, 0x88, 0xC3, 0x89, 0xC3, 0x8A, 0xC3, 0x8B, 0xC3, 0x8C, 0xC3, 0x8D, 0xC3, 0x8E,
0xC3, 0x8F, 0xC3, 0x90, 0xC3, 0x91, 0xC3, 0x92, 0xC3, 0x93, 0xC3, 0x94, 0xC3, 0x95, 0xC3,
0x96, 0xC3, 0x97, 0xC3, 0x98, 0xC3, 0x99, 0xC3, 0x9A, 0xC3, 0x9B, 0xC3, 0x9C, 0xC3, 0x9D,
0xC3, 0x9E, 0xC3, 0x9F,
0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 0x0418, 0x0419, 0x041A,
0x041B, 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425,
0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F, 0x0430,
0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, 0x043B,
0x043C, 0x043D, 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446,
0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F
}
codepoints = ffi.new("int[?]", #points, points)
end
---Загружает шрифт по указанному пути.<br>
---**Шрифты нужно загружать строго ПОСЛЕ инициализации окна.**
---@param path string Путь к шрифту
---@return Font font Загруженный шрифт
---@nodiscard
function LoadFont(path, size)
return rl.LoadFontEx(path, size or 24, codepoints, 256)
end
end